@trii/components 2.0.99 → 2.0.100
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +9 -9
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/index.js +9 -9
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/types/components/ContactInfoPopup/components/ContactMethod/ContactMethod.d.ts +0 -1
- package/dist/types/components/EditContactModal/components/Section/ContactInformation/components/EditModal/EditModal.d.ts +0 -1
- package/dist/types/components/EditContactModal/context/EditContactApiContext.d.ts +38 -39
- package/dist/types/components/EditContactModal/context/EditContactViewContext.d.ts +0 -1
- package/dist/types/components/EditContactModal/context/EditEntityContext.d.ts +4 -3
- package/dist/types/components/EditContactModal/hooks/useEditBusiness/useEditBusiness.d.ts +2 -1
- package/dist/types/components/EditContactModal/hooks/useEditContact/useEditContact.d.ts +2 -1
- package/dist/types/components/EditContactModal/hooks/useEditContactMethods.d.ts +2 -1
- package/dist/types/components/EventsDialog/components/ConfirmDeleteDialog/ConfirmDeleteDialog.d.ts +0 -1
- package/dist/types/components/EventsDialog/components/DatePicker/styles.d.ts +4 -3
- package/dist/types/components/EventsDialog/components/DeleteRecurringEventDialog/DeleteRecurringEventDialog.d.ts +0 -1
- package/dist/types/components/EventsDialog/components/EditRecurringEventDialog/EditRecurringEventDialog.d.ts +0 -1
- package/dist/types/components/EventsDialog/components/LocationTextField/SendLocation/components/GoogleMap/components/LocationSearch/locationSearch.d.ts +0 -1
- package/dist/types/components/EventsDialog/components/ReminderNotifications/components/ReminderItem/style.d.ts +7 -10
- package/dist/types/components/EventsDialog/components/ReminderNotifications/styles.d.ts +3 -2
- package/dist/types/components/EventsDialog/context/CalendarContextProvider.d.ts +0 -1
- package/dist/types/components/EventsDialog/context/EventsDialogApiContext.d.ts +0 -1
- package/dist/types/components/EventsDialog/hooks/useCalendarEvents.d.ts +0 -1
- package/dist/types/components/EventsDialog/hooks/useCalendarTasks.d.ts +0 -1
- package/dist/types/components/EventsDialog/layout/BasicInputContainer/styles.d.ts +3 -2
- package/package.json +2 -2
- package/dist/cjs/types/USAGE_EXAMPLE.d.ts +0 -7
- package/dist/cjs/types/components/ContactInfoPopup/ContactInfoPopup.d.ts +0 -14
- package/dist/cjs/types/components/ContactInfoPopup/components/BusinessSection/BusinessSection.d.ts +0 -7
- package/dist/cjs/types/components/ContactInfoPopup/components/BusinessSection/index.d.ts +0 -1
- package/dist/cjs/types/components/ContactInfoPopup/components/ContactMethod/ContactMethod.d.ts +0 -10
- package/dist/cjs/types/components/ContactInfoPopup/components/ContactMethod/index.d.ts +0 -1
- package/dist/cjs/types/components/ContactInfoPopup/components/Header/Header.d.ts +0 -12
- package/dist/cjs/types/components/ContactInfoPopup/components/Header/index.d.ts +0 -1
- package/dist/cjs/types/components/ContactInfoPopup/components/LabelsSection/LabelsSection.d.ts +0 -7
- package/dist/cjs/types/components/ContactInfoPopup/components/LabelsSection/index.d.ts +0 -1
- package/dist/cjs/types/components/ContactInfoPopup/components/MembersSection/MembersSection.d.ts +0 -7
- package/dist/cjs/types/components/ContactInfoPopup/components/MembersSection/components/MemberItem/MemberItem.d.ts +0 -4
- package/dist/cjs/types/components/ContactInfoPopup/components/MembersSection/components/MemberItem/index.d.ts +0 -1
- package/dist/cjs/types/components/ContactInfoPopup/components/MembersSection/components/index.d.ts +0 -1
- package/dist/cjs/types/components/ContactInfoPopup/components/MembersSection/index.d.ts +0 -1
- package/dist/cjs/types/components/ContactInfoPopup/components/Properties/Properties.d.ts +0 -7
- package/dist/cjs/types/components/ContactInfoPopup/components/Properties/index.d.ts +0 -1
- package/dist/cjs/types/components/ContactInfoPopup/components/index.d.ts +0 -6
- package/dist/cjs/types/components/ContactInfoPopup/index.d.ts +0 -1
- package/dist/cjs/types/components/ContactInfoPopup/types/is-business.typeguard.d.ts +0 -7
- package/dist/cjs/types/components/ContactInfoPopup/types/is-contact.typeguard.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/ModalEvents.backup.d.ts +0 -23
- package/dist/cjs/types/components/ModalEvents/ModalEvents.d.ts +0 -9
- package/dist/cjs/types/components/ModalEvents/ModalEvents.refactored.d.ts +0 -9
- package/dist/cjs/types/components/ModalEvents/components/ActionButtons/ActionButtons.d.ts +0 -5
- package/dist/cjs/types/components/ModalEvents/components/ActionButtons/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/AllDayCheckbox/AllDayCheckbox.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/components/AllDayCheckbox/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/ColorPicker/ColorPicker.d.ts +0 -8
- package/dist/cjs/types/components/ModalEvents/components/ColorPicker/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/CreateTypeTabs/CreateTypeTabs.d.ts +0 -11
- package/dist/cjs/types/components/ModalEvents/components/CreateTypeTabs/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/DatePicker/DatePicker.d.ts +0 -13
- package/dist/cjs/types/components/ModalEvents/components/DatePicker/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/DatePicker/styles.d.ts +0 -10
- package/dist/cjs/types/components/ModalEvents/components/DescriptionTextField/DescriptionTextField.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/components/DescriptionTextField/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/IsPrivateCheckbox/IsPrivateCheckbox.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/components/IsPrivateCheckbox/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/LinkContactsSelect/LinkContactsSelect.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/components/LinkContactsSelect/components/ContactSearchBar/ContactSearchBar.d.ts +0 -6
- package/dist/cjs/types/components/ModalEvents/components/LinkContactsSelect/components/ContactSearchBar/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/LinkContactsSelect/components/ContactSearchResults/ContactsSearchResults.d.ts +0 -11
- package/dist/cjs/types/components/ModalEvents/components/LinkContactsSelect/components/ContactSearchResults/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/LinkContactsSelect/components/index.d.ts +0 -2
- package/dist/cjs/types/components/ModalEvents/components/LinkContactsSelect/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/LinkContactsSelect/styles.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/components/LocationTextField/LocationTextField.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/components/LocationTextField/MapLocationPicker.d.ts +0 -8
- package/dist/cjs/types/components/ModalEvents/components/LocationTextField/SendLocation/LocationSelectorModal.d.ts +0 -8
- package/dist/cjs/types/components/ModalEvents/components/LocationTextField/SendLocation/components/GoogleMap/GoogleMapStandalone.d.ts +0 -9
- package/dist/cjs/types/components/ModalEvents/components/LocationTextField/SendLocation/components/GoogleMap/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/LocationTextField/SendLocation/components/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/LocationTextField/SendLocation/index.d.ts +0 -3
- package/dist/cjs/types/components/ModalEvents/components/LocationTextField/SendLocation/types.d.ts +0 -15
- package/dist/cjs/types/components/ModalEvents/components/LocationTextField/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/RecurrenceSelect/RecurrenceSelect.d.ts +0 -8
- package/dist/cjs/types/components/ModalEvents/components/RecurrenceSelect/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/ReminderNotifications/ReminderNotifications.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/components/ReminderNotifications/components/ReminderItem/ReminderItem.d.ts +0 -12
- package/dist/cjs/types/components/ModalEvents/components/ReminderNotifications/components/ReminderItem/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/ReminderNotifications/components/ReminderItem/style.d.ts +0 -17
- package/dist/cjs/types/components/ModalEvents/components/ReminderNotifications/components/ReminderItem/utils/selectOptions.d.ts +0 -5
- package/dist/cjs/types/components/ModalEvents/components/ReminderNotifications/components/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/ReminderNotifications/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/ReminderNotifications/styles.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/components/ShareUsersSelect/ShareUsersSelect.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/components/ShareUsersSelect/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/ShareUsersSelect/styles.d.ts +0 -4
- package/dist/cjs/types/components/ModalEvents/components/SyncWithGoogleField/SyncWithGoogleField.d.ts +0 -5
- package/dist/cjs/types/components/ModalEvents/components/TaskCalendarSelect/TaskCalendarSelect.d.ts +0 -9
- package/dist/cjs/types/components/ModalEvents/components/TaskCalendarSelect/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/TaskDatePicker/TaskDatePicker.d.ts +0 -10
- package/dist/cjs/types/components/ModalEvents/components/TaskDatePicker/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/TitleTextField/TitleTextField.d.ts +0 -8
- package/dist/cjs/types/components/ModalEvents/components/TitleTextField/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/components/index.d.ts +0 -15
- package/dist/cjs/types/components/ModalEvents/context/CalendarContext.d.ts +0 -84
- package/dist/cjs/types/components/ModalEvents/context/CalendarContextProvider.d.ts +0 -6
- package/dist/cjs/types/components/ModalEvents/context/types/CalendarDialogMode.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/context/types/CalendarDialogState.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/context/types/DialogType.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/context/types/Mode.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/hooks/index.d.ts +0 -2
- package/dist/cjs/types/components/ModalEvents/hooks/useContactSearch.d.ts +0 -23
- package/dist/cjs/types/components/ModalEvents/hooks/useModalData.d.ts +0 -33
- package/dist/cjs/types/components/ModalEvents/index.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/layout/BasicInputContainer/BasicInputContainer.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/layout/BasicInputContainer/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/layout/BasicInputContainer/styles.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/layout/InputContainer/InputContainer.d.ts +0 -7
- package/dist/cjs/types/components/ModalEvents/layout/InputContainer/index.d.ts +0 -1
- package/dist/cjs/types/components/ModalEvents/layout/index.d.ts +0 -2
- package/dist/cjs/types/components/ModalEvents/sections/ActionButtonsSection.d.ts +0 -17
- package/dist/cjs/types/components/ModalEvents/sections/CalendarSection.d.ts +0 -18
- package/dist/cjs/types/components/ModalEvents/sections/ColorSection.d.ts +0 -16
- package/dist/cjs/types/components/ModalEvents/sections/DateTimeSection.d.ts +0 -19
- package/dist/cjs/types/components/ModalEvents/sections/DescriptionSection.d.ts +0 -17
- package/dist/cjs/types/components/ModalEvents/sections/LinkedContactsSection.d.ts +0 -22
- package/dist/cjs/types/components/ModalEvents/sections/LocationSection.d.ts +0 -17
- package/dist/cjs/types/components/ModalEvents/sections/ModalHeader.d.ts +0 -18
- package/dist/cjs/types/components/ModalEvents/sections/NotificationsSection.d.ts +0 -19
- package/dist/cjs/types/components/ModalEvents/sections/TitleSection.d.ts +0 -22
- package/dist/cjs/types/components/ModalEvents/sections/index.d.ts +0 -10
- package/dist/cjs/types/components/ModalEvents/types/index.d.ts +0 -376
- package/dist/cjs/types/components/TextBox/TestBox.d.ts +0 -8
- package/dist/cjs/types/components/TextBox/index.d.ts +0 -1
- package/dist/cjs/types/components/index.d.ts +0 -4
- package/dist/cjs/types/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/ContactInfoPopup.d.ts +0 -14
- package/dist/cjs/types/src/components/ContactInfoPopup/components/BusinessSection/BusinessSection.d.ts +0 -7
- package/dist/cjs/types/src/components/ContactInfoPopup/components/BusinessSection/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/components/ContactMethod/ContactMethod.d.ts +0 -10
- package/dist/cjs/types/src/components/ContactInfoPopup/components/ContactMethod/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/components/Header/Header.d.ts +0 -12
- package/dist/cjs/types/src/components/ContactInfoPopup/components/Header/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/components/LabelsSection/LabelsSection.d.ts +0 -7
- package/dist/cjs/types/src/components/ContactInfoPopup/components/LabelsSection/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/components/MembersSection/MembersSection.d.ts +0 -7
- package/dist/cjs/types/src/components/ContactInfoPopup/components/MembersSection/components/MemberItem/MemberItem.d.ts +0 -4
- package/dist/cjs/types/src/components/ContactInfoPopup/components/MembersSection/components/MemberItem/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/components/MembersSection/components/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/components/MembersSection/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/components/Properties/Properties.d.ts +0 -7
- package/dist/cjs/types/src/components/ContactInfoPopup/components/Properties/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/components/index.d.ts +0 -6
- package/dist/cjs/types/src/components/ContactInfoPopup/index.d.ts +0 -1
- package/dist/cjs/types/src/components/ContactInfoPopup/types/is-business.typeguard.d.ts +0 -7
- package/dist/cjs/types/src/components/ContactInfoPopup/types/is-contact.typeguard.d.ts +0 -7
- package/dist/cjs/types/src/components/ModalEvents/ModalEvents.d.ts +0 -23
- package/dist/cjs/types/src/components/ModalEvents/index.d.ts +0 -7
- package/dist/cjs/types/src/components/ModalEvents/types/index.d.ts +0 -352
- package/dist/cjs/types/src/components/TextBox/TestBox.d.ts +0 -8
- package/dist/cjs/types/src/components/TextBox/index.d.ts +0 -1
- package/dist/cjs/types/src/components/index.d.ts +0 -4
- package/dist/cjs/types/src/index.d.ts +0 -1
- package/dist/esm/types/USAGE_EXAMPLE.d.ts +0 -7
- package/dist/esm/types/components/ContactInfoPopup/ContactInfoPopup.d.ts +0 -14
- package/dist/esm/types/components/ContactInfoPopup/components/BusinessSection/BusinessSection.d.ts +0 -7
- package/dist/esm/types/components/ContactInfoPopup/components/BusinessSection/index.d.ts +0 -1
- package/dist/esm/types/components/ContactInfoPopup/components/ContactMethod/ContactMethod.d.ts +0 -10
- package/dist/esm/types/components/ContactInfoPopup/components/ContactMethod/index.d.ts +0 -1
- package/dist/esm/types/components/ContactInfoPopup/components/Header/Header.d.ts +0 -12
- package/dist/esm/types/components/ContactInfoPopup/components/Header/index.d.ts +0 -1
- package/dist/esm/types/components/ContactInfoPopup/components/LabelsSection/LabelsSection.d.ts +0 -7
- package/dist/esm/types/components/ContactInfoPopup/components/LabelsSection/index.d.ts +0 -1
- package/dist/esm/types/components/ContactInfoPopup/components/MembersSection/MembersSection.d.ts +0 -7
- package/dist/esm/types/components/ContactInfoPopup/components/MembersSection/components/MemberItem/MemberItem.d.ts +0 -4
- package/dist/esm/types/components/ContactInfoPopup/components/MembersSection/components/MemberItem/index.d.ts +0 -1
- package/dist/esm/types/components/ContactInfoPopup/components/MembersSection/components/index.d.ts +0 -1
- package/dist/esm/types/components/ContactInfoPopup/components/MembersSection/index.d.ts +0 -1
- package/dist/esm/types/components/ContactInfoPopup/components/Properties/Properties.d.ts +0 -7
- package/dist/esm/types/components/ContactInfoPopup/components/Properties/index.d.ts +0 -1
- package/dist/esm/types/components/ContactInfoPopup/components/index.d.ts +0 -6
- package/dist/esm/types/components/ContactInfoPopup/index.d.ts +0 -1
- package/dist/esm/types/components/ContactInfoPopup/types/is-business.typeguard.d.ts +0 -7
- package/dist/esm/types/components/ContactInfoPopup/types/is-contact.typeguard.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/ModalEvents.backup.d.ts +0 -23
- package/dist/esm/types/components/ModalEvents/ModalEvents.d.ts +0 -9
- package/dist/esm/types/components/ModalEvents/ModalEvents.refactored.d.ts +0 -9
- package/dist/esm/types/components/ModalEvents/components/ActionButtons/ActionButtons.d.ts +0 -5
- package/dist/esm/types/components/ModalEvents/components/ActionButtons/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/AllDayCheckbox/AllDayCheckbox.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/components/AllDayCheckbox/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/ColorPicker/ColorPicker.d.ts +0 -8
- package/dist/esm/types/components/ModalEvents/components/ColorPicker/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/CreateTypeTabs/CreateTypeTabs.d.ts +0 -11
- package/dist/esm/types/components/ModalEvents/components/CreateTypeTabs/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/DatePicker/DatePicker.d.ts +0 -13
- package/dist/esm/types/components/ModalEvents/components/DatePicker/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/DatePicker/styles.d.ts +0 -10
- package/dist/esm/types/components/ModalEvents/components/DescriptionTextField/DescriptionTextField.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/components/DescriptionTextField/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/IsPrivateCheckbox/IsPrivateCheckbox.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/components/IsPrivateCheckbox/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/LinkContactsSelect/LinkContactsSelect.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/components/LinkContactsSelect/components/ContactSearchBar/ContactSearchBar.d.ts +0 -6
- package/dist/esm/types/components/ModalEvents/components/LinkContactsSelect/components/ContactSearchBar/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/LinkContactsSelect/components/ContactSearchResults/ContactsSearchResults.d.ts +0 -11
- package/dist/esm/types/components/ModalEvents/components/LinkContactsSelect/components/ContactSearchResults/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/LinkContactsSelect/components/index.d.ts +0 -2
- package/dist/esm/types/components/ModalEvents/components/LinkContactsSelect/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/LinkContactsSelect/styles.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/components/LocationTextField/LocationTextField.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/components/LocationTextField/MapLocationPicker.d.ts +0 -8
- package/dist/esm/types/components/ModalEvents/components/LocationTextField/SendLocation/LocationSelectorModal.d.ts +0 -8
- package/dist/esm/types/components/ModalEvents/components/LocationTextField/SendLocation/components/GoogleMap/GoogleMapStandalone.d.ts +0 -9
- package/dist/esm/types/components/ModalEvents/components/LocationTextField/SendLocation/components/GoogleMap/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/LocationTextField/SendLocation/components/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/LocationTextField/SendLocation/index.d.ts +0 -3
- package/dist/esm/types/components/ModalEvents/components/LocationTextField/SendLocation/types.d.ts +0 -15
- package/dist/esm/types/components/ModalEvents/components/LocationTextField/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/RecurrenceSelect/RecurrenceSelect.d.ts +0 -8
- package/dist/esm/types/components/ModalEvents/components/RecurrenceSelect/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/ReminderNotifications/ReminderNotifications.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/components/ReminderNotifications/components/ReminderItem/ReminderItem.d.ts +0 -12
- package/dist/esm/types/components/ModalEvents/components/ReminderNotifications/components/ReminderItem/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/ReminderNotifications/components/ReminderItem/style.d.ts +0 -17
- package/dist/esm/types/components/ModalEvents/components/ReminderNotifications/components/ReminderItem/utils/selectOptions.d.ts +0 -5
- package/dist/esm/types/components/ModalEvents/components/ReminderNotifications/components/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/ReminderNotifications/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/ReminderNotifications/styles.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/components/ShareUsersSelect/ShareUsersSelect.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/components/ShareUsersSelect/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/ShareUsersSelect/styles.d.ts +0 -4
- package/dist/esm/types/components/ModalEvents/components/SyncWithGoogleField/SyncWithGoogleField.d.ts +0 -5
- package/dist/esm/types/components/ModalEvents/components/TaskCalendarSelect/TaskCalendarSelect.d.ts +0 -9
- package/dist/esm/types/components/ModalEvents/components/TaskCalendarSelect/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/TaskDatePicker/TaskDatePicker.d.ts +0 -10
- package/dist/esm/types/components/ModalEvents/components/TaskDatePicker/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/TitleTextField/TitleTextField.d.ts +0 -8
- package/dist/esm/types/components/ModalEvents/components/TitleTextField/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/components/index.d.ts +0 -15
- package/dist/esm/types/components/ModalEvents/context/CalendarContext.d.ts +0 -84
- package/dist/esm/types/components/ModalEvents/context/CalendarContextProvider.d.ts +0 -6
- package/dist/esm/types/components/ModalEvents/context/types/CalendarDialogMode.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/context/types/CalendarDialogState.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/context/types/DialogType.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/context/types/Mode.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/hooks/index.d.ts +0 -2
- package/dist/esm/types/components/ModalEvents/hooks/useContactSearch.d.ts +0 -23
- package/dist/esm/types/components/ModalEvents/hooks/useModalData.d.ts +0 -33
- package/dist/esm/types/components/ModalEvents/index.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/layout/BasicInputContainer/BasicInputContainer.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/layout/BasicInputContainer/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/layout/BasicInputContainer/styles.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/layout/InputContainer/InputContainer.d.ts +0 -7
- package/dist/esm/types/components/ModalEvents/layout/InputContainer/index.d.ts +0 -1
- package/dist/esm/types/components/ModalEvents/layout/index.d.ts +0 -2
- package/dist/esm/types/components/ModalEvents/sections/ActionButtonsSection.d.ts +0 -17
- package/dist/esm/types/components/ModalEvents/sections/CalendarSection.d.ts +0 -18
- package/dist/esm/types/components/ModalEvents/sections/ColorSection.d.ts +0 -16
- package/dist/esm/types/components/ModalEvents/sections/DateTimeSection.d.ts +0 -19
- package/dist/esm/types/components/ModalEvents/sections/DescriptionSection.d.ts +0 -17
- package/dist/esm/types/components/ModalEvents/sections/LinkedContactsSection.d.ts +0 -22
- package/dist/esm/types/components/ModalEvents/sections/LocationSection.d.ts +0 -17
- package/dist/esm/types/components/ModalEvents/sections/ModalHeader.d.ts +0 -18
- package/dist/esm/types/components/ModalEvents/sections/NotificationsSection.d.ts +0 -19
- package/dist/esm/types/components/ModalEvents/sections/TitleSection.d.ts +0 -22
- package/dist/esm/types/components/ModalEvents/sections/index.d.ts +0 -10
- package/dist/esm/types/components/ModalEvents/types/index.d.ts +0 -376
- package/dist/esm/types/components/TextBox/TestBox.d.ts +0 -8
- package/dist/esm/types/components/TextBox/index.d.ts +0 -1
- package/dist/esm/types/components/index.d.ts +0 -4
- package/dist/esm/types/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/ContactInfoPopup.d.ts +0 -14
- package/dist/esm/types/src/components/ContactInfoPopup/components/BusinessSection/BusinessSection.d.ts +0 -7
- package/dist/esm/types/src/components/ContactInfoPopup/components/BusinessSection/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/components/ContactMethod/ContactMethod.d.ts +0 -10
- package/dist/esm/types/src/components/ContactInfoPopup/components/ContactMethod/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/components/Header/Header.d.ts +0 -12
- package/dist/esm/types/src/components/ContactInfoPopup/components/Header/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/components/LabelsSection/LabelsSection.d.ts +0 -7
- package/dist/esm/types/src/components/ContactInfoPopup/components/LabelsSection/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/components/MembersSection/MembersSection.d.ts +0 -7
- package/dist/esm/types/src/components/ContactInfoPopup/components/MembersSection/components/MemberItem/MemberItem.d.ts +0 -4
- package/dist/esm/types/src/components/ContactInfoPopup/components/MembersSection/components/MemberItem/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/components/MembersSection/components/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/components/MembersSection/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/components/Properties/Properties.d.ts +0 -7
- package/dist/esm/types/src/components/ContactInfoPopup/components/Properties/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/components/index.d.ts +0 -6
- package/dist/esm/types/src/components/ContactInfoPopup/index.d.ts +0 -1
- package/dist/esm/types/src/components/ContactInfoPopup/types/is-business.typeguard.d.ts +0 -7
- package/dist/esm/types/src/components/ContactInfoPopup/types/is-contact.typeguard.d.ts +0 -7
- package/dist/esm/types/src/components/ModalEvents/ModalEvents.d.ts +0 -23
- package/dist/esm/types/src/components/ModalEvents/index.d.ts +0 -7
- package/dist/esm/types/src/components/ModalEvents/types/index.d.ts +0 -352
- package/dist/esm/types/src/components/TextBox/TestBox.d.ts +0 -8
- package/dist/esm/types/src/components/TextBox/index.d.ts +0 -1
- package/dist/esm/types/src/components/index.d.ts +0 -4
- package/dist/esm/types/src/index.d.ts +0 -1
- package/dist/types/components/ContactInfoPopup/ContactInfoPopup.stories.d.ts +0 -9
- package/dist/types/components/EditContactModal/EditContactModal.stories.d.ts +0 -9
- package/dist/types/components/EditContactModal/services/contactsSlice.d.ts +0 -697
- package/dist/types/components/EditContactModal/services/contactsSliceService.d.ts +0 -25
- package/dist/types/components/EventsDialog/components/IsPrivateCheckbox/IsPrivateCheckbox.d.ts +0 -7
- package/dist/types/components/EventsDialog/components/IsPrivateCheckbox/index.d.ts +0 -1
- package/dist/types/components/EventsDialog/components/LinkContactsSelect/styles.d.ts +0 -7
- package/dist/types/components/EventsDialog/components/LocationTextField/MapLocationPicker.d.ts +0 -8
- package/dist/types/components/EventsDialog/components/LocationTextField/SendLocation/components/GoogleMap/index.d.ts +0 -1
- package/dist/types/components/EventsDialog/components/LocationTextField/SendLocation/components/index.d.ts +0 -1
- package/dist/types/components/EventsDialog/components/LocationTextField/SendLocation/index.d.ts +0 -3
- package/dist/types/components/EventsDialog/components/ShareUsersSelect/ShareUsersSelect.d.ts +0 -7
- package/dist/types/components/EventsDialog/components/ShareUsersSelect/index.d.ts +0 -1
- package/dist/types/components/EventsDialog/components/ShareUsersSelect/styles.d.ts +0 -4
- package/dist/types/components/EventsDialog/components/SyncWithGoogleField/SyncWithGoogleField.d.ts +0 -5
- package/dist/types/components/EventsDialog/context/types/CalendarContextType.d.ts +0 -0
- package/dist/types/components/EventsDialog/hooks/index.d.ts +0 -9
- package/dist/types/components/EventsDialog/hooks/useAppDispatch.d.ts +0 -17
- package/dist/types/components/EventsDialog/hooks/useSelect.d.ts +0 -14
- package/dist/types/components/EventsDialog/redux/features/activitiesSlice/activitiesSlice.d.ts +0 -27
- package/dist/types/components/EventsDialog/redux/features/activitiesSlice/types/ActivitiesSlice.d.ts +0 -12
- package/dist/types/components/EventsDialog/redux/features/activitiesSlice/types/ActivitiesTableColumnName.d.ts +0 -1
- package/dist/types/components/EventsDialog/redux/features/activitiesSlice/types/AddActivityRequestData.d.ts +0 -19
- package/dist/types/components/EventsDialog/redux/features/activitiesSlice/types/EventNotificationFront.d.ts +0 -2
- package/dist/types/components/EventsDialog/redux/features/activitiesSlice/types/UpdateActivityRequestData.d.ts +0 -6
- package/dist/types/components/EventsDialog/redux/features/activitiesSlice/utils/activitiesSliceService.d.ts +0 -12
- package/dist/types/components/EventsDialog/redux/features/activitiesSlice/utils/selectors.d.ts +0 -132
- package/dist/types/components/EventsDialog/redux/features/calendarsSlice/calendarsSlice.d.ts +0 -12
- package/dist/types/components/EventsDialog/redux/features/calendarsSlice/types/AddCalendarResquestData.d.ts +0 -5
- package/dist/types/components/EventsDialog/redux/features/calendarsSlice/types/CalendarSlice.d.ts +0 -10
- package/dist/types/components/EventsDialog/redux/features/calendarsSlice/utils/calendarsSliceService.d.ts +0 -9
- package/dist/types/components/EventsDialog/redux/features/calendarsSlice/utils/selectors.d.ts +0 -106
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/contactInfoService.d.ts +0 -22
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/contactInfoSlice.d.ts +0 -519
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/ContactData.d.ts +0 -7
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/ContactFile.d.ts +0 -7
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/ContactInfoState.d.ts +0 -20
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/ContactNotes.d.ts +0 -5
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/ConvertContact.d.ts +0 -4
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/FieldsData.d.ts +0 -7
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/Filter.d.ts +0 -5
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/Order.d.ts +0 -1
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/Pagination.d.ts +0 -14
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/PaginationInfo.d.ts +0 -7
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/TableItemFormat.d.ts +0 -2
- package/dist/types/components/EventsDialog/redux/features/contactInfoSlice/types/UpdateField.d.ts +0 -5
- package/dist/types/components/EventsDialog/redux/features/poolSlice/poolSlice.d.ts +0 -5
- package/dist/types/components/EventsDialog/redux/features/poolSlice/types/PoolSliceState.d.ts +0 -5
- package/dist/types/components/EventsDialog/redux/features/sessionSlice/sessionSlice.d.ts +0 -30
- package/dist/types/components/EventsDialog/redux/features/sessionSlice/utils/sessionHelper.d.ts +0 -5
- package/dist/types/components/EventsDialog/redux/features/spaceSlice/spaceSlice.d.ts +0 -45
- package/dist/types/components/EventsDialog/redux/features/spaceSlice/spaceSliceService.d.ts +0 -4
- package/dist/types/components/EventsDialog/redux/features/spaceSlice/types/SpaceSliceState.d.ts +0 -17
- package/dist/types/components/EventsDialog/redux/features/spacesSlice/spacesSlice.d.ts +0 -80
- package/dist/types/components/EventsDialog/redux/features/spacesSlice/spacesSliceService.d.ts +0 -4
- package/dist/types/components/EventsDialog/redux/features/spacesSlice/types/SpacesSliceState.d.ts +0 -8
- package/dist/types/components/EventsDialog/redux/features/tasksSlice/tasksSlice.d.ts +0 -26
- package/dist/types/components/EventsDialog/redux/features/tasksSlice/types/AddTaskRequestData.d.ts +0 -7
- package/dist/types/components/EventsDialog/redux/features/tasksSlice/types/TasksSlice.d.ts +0 -14
- package/dist/types/components/EventsDialog/redux/features/tasksSlice/types/UpdateTaskRequestData.d.ts +0 -10
- package/dist/types/components/EventsDialog/redux/features/tasksSlice/utils/selectors.d.ts +0 -111
- package/dist/types/components/EventsDialog/redux/features/tasksSlice/utils/tasksSliceService.d.ts +0 -16
- package/dist/types/components/EventsDialog/redux/features/userSlice/types/UserSliceState.d.ts +0 -11
- package/dist/types/components/EventsDialog/redux/features/userSlice/userSliceService.d.ts +0 -7
- package/dist/types/components/EventsDialog/redux/functions/getRequestConfig.d.ts +0 -13
- package/dist/types/components/EventsDialog/redux/functions/initRequestData.d.ts +0 -12
- package/dist/types/components/EventsDialog/redux/rootReducer.d.ts +0 -35
- package/dist/types/components/EventsDialog/redux/store.d.ts +0 -39
- package/dist/types/components/EventsDialog/redux/types/AddPermissionAction.d.ts +0 -4
- package/dist/types/components/EventsDialog/redux/types/BasicRequests.d.ts +0 -11
- package/dist/types/components/EventsDialog/redux/types/ChangePermissionReadMessagesAction.d.ts +0 -4
- package/dist/types/components/EventsDialog/redux/types/ChangePermissionStartConversationsAction.d.ts +0 -4
- package/dist/types/components/EventsDialog/redux/types/ChangeScheduleFn.d.ts +0 -3
- package/dist/types/components/EventsDialog/redux/types/Gif.d.ts +0 -41
- package/dist/types/components/EventsDialog/redux/types/InitRequestDataReturn.d.ts +0 -10
- package/dist/types/components/EventsDialog/redux/types/PermissionReadMessagesPayload.d.ts +0 -4
- package/dist/types/components/EventsDialog/redux/types/PermissionStartConversationsPayload.d.ts +0 -4
- package/dist/types/components/EventsDialog/redux/types/RemovePermissionAction.d.ts +0 -3
- package/dist/types/components/EventsDialog/redux/types/RequestStatus.d.ts +0 -1
- package/dist/types/components/EventsDialog/redux/types/SearchBy.d.ts +0 -4
- package/dist/types/components/EventsDialog/redux/types/SortOrder.d.ts +0 -1
- package/dist/types/components/EventsDialog/redux/types/UpdateChannelThunk.d.ts +0 -6
- package/dist/types/components/EventsDialog/utils/eventValidation.d.ts +0 -37
- package/dist/types/components/EventsDialog/utils/googleMapsUtils.d.ts +0 -5
- package/dist/types/components/EventsDialog/utils/keyboardNavigation.d.ts +0 -24
package/dist/cjs/index.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
"use strict";var l=require("react"),s=require("@mui/material"),
|
|
2
|
-
`+
|
|
3
|
-
`),
|
|
4
|
-
`),
|
|
5
|
-
`+
|
|
1
|
+
"use strict";var l=require("react"),s=require("@mui/material"),Me=require("@mui/icons-material"),Ur=require("@mui/icons-material/ArrowForward"),Rr=require("@mui/icons-material/Message"),Je=require("react-i18next"),K=require("@trii/types/dist/Contacts"),xt=require("moment"),Nr=require("i18next"),Mt=require("@trii/types"),Da=require("@mui/icons-material/Close"),Lr=require("@mui/icons-material/ExpandMore"),ra=require("@mui/icons-material/ArrowBack"),ft=require("@mui/icons-material/Save"),tt=require("@mui/lab"),bt=require("@mui/icons-material/Edit"),zr=require("@mui/icons-material/AddLocationAlt"),Or=require("@mui/icons-material/Label"),$t=require("@mui/icons-material/Delete"),_r=require("@mui/icons-material/PhotoCamera"),Wr=require("@mui/material/Popper"),vt=require("@trii/types/dist/Common/Channels"),Q=require("dayjs"),Pt=require("@mui/x-date-pickers/AdapterDayjs"),Ut=require("@mui/x-date-pickers/LocalizationProvider"),Qa=require("@mui/x-date-pickers"),Rt=require("@mui/material/Box"),Za=require("@mui/icons-material/Cancel"),Vr=require("@mui/x-date-pickers/TimePicker"),Xe=require("@mui/x-date-pickers-pro"),sa=require("@mui/icons-material/Add"),Hr=require("@mui/icons-material/InfoOutlined"),Ie=require("@mui/system"),Gr=require("@mui/icons-material/LocalPhone"),en=require("google-libphonenumber"),qr=require("@mui/icons-material/MoreVert"),Yr=require("@mui/icons-material/WhatsApp"),Kr=require("@mui/icons-material/Mms"),Jr=require("@mui/icons-material/CheckRounded"),Xr=require("@mui/icons-material/CloseRounded"),Qr=require("@mui/material/CircularProgress"),Zr=require("@mui/material/InputAdornment"),es=require("@mui/material/Typography"),ts=require("@mui/icons-material/Warning"),as=require("@mui/material/Chip"),oa=require("@trii/types/dist/Calendar"),tn=require("@mui/x-date-pickers-pro/AdapterDayjs"),an=require("@mui/icons-material/Place"),nn=require("@mui/icons-material/Person"),ns=require("@mui/icons-material/CalendarMonth"),Fa=require("@mui/icons-material/Repeat"),rs=require("@mui/icons-material/WarningAmber"),ss=require("@mui/icons-material/ContentCopy"),os=require("@mui/icons-material/AccessTime"),rn=require("@reduxjs/toolkit"),is=require("axios");function ls(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ba={exports:{}},Nt={},sn;function ds(){if(sn)return Nt;sn=1;var e=l,a=Symbol.for("react.element"),n=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,o=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function d(c,u,p){var h,y={},m=null,f=null;p!==void 0&&(m=""+p),u.key!==void 0&&(m=""+u.key),u.ref!==void 0&&(f=u.ref);for(h in u)r.call(u,h)&&!i.hasOwnProperty(h)&&(y[h]=u[h]);if(c&&c.defaultProps)for(h in u=c.defaultProps,u)y[h]===void 0&&(y[h]=u[h]);return{$$typeof:a,type:c,key:m,ref:f,props:y,_owner:o.current}}return Nt.Fragment=n,Nt.jsx=d,Nt.jsxs=d,Nt}var Lt={},on;function cs(){return on||(on=1,process.env.NODE_ENV!=="production"&&(function(){var e=l,a=Symbol.for("react.element"),n=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),d=Symbol.for("react.provider"),c=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),h=Symbol.for("react.suspense_list"),y=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),f=Symbol.for("react.offscreen"),v=Symbol.iterator,C="@@iterator";function x(g){if(g===null||typeof g!="object")return null;var N=v&&g[v]||g[C];return typeof N=="function"?N:null}var k=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function w(g){{for(var N=arguments.length,H=new Array(N>1?N-1:0),ee=1;ee<N;ee++)H[ee-1]=arguments[ee];A("error",g,H)}}function A(g,N,H){{var ee=k.ReactDebugCurrentFrame,ie=ee.getStackAddendum();ie!==""&&(N+="%s",H=H.concat([ie]));var ue=H.map(function(se){return String(se)});ue.unshift("Warning: "+N),Function.prototype.apply.call(console[g],console,ue)}}var S=!1,T=!1,D=!1,$=!1,B=!1,I;I=Symbol.for("react.module.reference");function U(g){return!!(typeof g=="string"||typeof g=="function"||g===r||g===i||B||g===o||g===p||g===h||$||g===f||S||T||D||typeof g=="object"&&g!==null&&(g.$$typeof===m||g.$$typeof===y||g.$$typeof===d||g.$$typeof===c||g.$$typeof===u||g.$$typeof===I||g.getModuleId!==void 0))}function P(g,N,H){var ee=g.displayName;if(ee)return ee;var ie=N.displayName||N.name||"";return ie!==""?H+"("+ie+")":H}function _(g){return g.displayName||"Context"}function V(g){if(g==null)return null;if(typeof g.tag=="number"&&w("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof g=="function")return g.displayName||g.name||null;if(typeof g=="string")return g;switch(g){case r:return"Fragment";case n:return"Portal";case i:return"Profiler";case o:return"StrictMode";case p:return"Suspense";case h:return"SuspenseList"}if(typeof g=="object")switch(g.$$typeof){case c:var N=g;return _(N)+".Consumer";case d:var H=g;return _(H._context)+".Provider";case u:return P(g,g.render,"ForwardRef");case y:var ee=g.displayName||null;return ee!==null?ee:V(g.type)||"Memo";case m:{var ie=g,ue=ie._payload,se=ie._init;try{return V(se(ue))}catch{return null}}}return null}var R=Object.assign,O=0,q,ae,de,he,L,j,F;function E(){}E.__reactDisabledLog=!0;function M(){{if(O===0){q=console.log,ae=console.info,de=console.warn,he=console.error,L=console.group,j=console.groupCollapsed,F=console.groupEnd;var g={configurable:!0,enumerable:!0,value:E,writable:!0};Object.defineProperties(console,{info:g,log:g,warn:g,error:g,group:g,groupCollapsed:g,groupEnd:g})}O++}}function Y(){{if(O--,O===0){var g={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:R({},g,{value:q}),info:R({},g,{value:ae}),warn:R({},g,{value:de}),error:R({},g,{value:he}),group:R({},g,{value:L}),groupCollapsed:R({},g,{value:j}),groupEnd:R({},g,{value:F})})}O<0&&w("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var ye=k.ReactCurrentDispatcher,le;function ge(g,N,H){{if(le===void 0)try{throw Error()}catch(ie){var ee=ie.stack.trim().match(/\n( *(at )?)/);le=ee&&ee[1]||""}return`
|
|
2
|
+
`+le+g}}var xe=!1,Se;{var G=typeof WeakMap=="function"?WeakMap:Map;Se=new G}function ne(g,N){if(!g||xe)return"";{var H=Se.get(g);if(H!==void 0)return H}var ee;xe=!0;var ie=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var ue;ue=ye.current,ye.current=null,M();try{if(N){var se=function(){throw Error()};if(Object.defineProperty(se.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(se,[])}catch(Ne){ee=Ne}Reflect.construct(g,[],se)}else{try{se.call()}catch(Ne){ee=Ne}g.call(se.prototype)}}else{try{throw Error()}catch(Ne){ee=Ne}g()}}catch(Ne){if(Ne&&ee&&typeof Ne.stack=="string"){for(var re=Ne.stack.split(`
|
|
3
|
+
`),Be=ee.stack.split(`
|
|
4
|
+
`),be=re.length-1,ve=Be.length-1;be>=1&&ve>=0&&re[be]!==Be[ve];)ve--;for(;be>=1&&ve>=0;be--,ve--)if(re[be]!==Be[ve]){if(be!==1||ve!==1)do if(be--,ve--,ve<0||re[be]!==Be[ve]){var He=`
|
|
5
|
+
`+re[be].replace(" at new "," at ");return g.displayName&&He.includes("<anonymous>")&&(He=He.replace("<anonymous>",g.displayName)),typeof g=="function"&&Se.set(g,He),He}while(be>=1&&ve>=0);break}}}finally{xe=!1,ye.current=ue,Y(),Error.prepareStackTrace=ie}var lt=g?g.displayName||g.name:"",et=lt?ge(lt):"";return typeof g=="function"&&Se.set(g,et),et}function je(g,N,H){return ne(g,!1)}function Ae(g){var N=g.prototype;return!!(N&&N.isReactComponent)}function Ge(g,N,H){if(g==null)return"";if(typeof g=="function")return ne(g,Ae(g));if(typeof g=="string")return ge(g);switch(g){case p:return ge("Suspense");case h:return ge("SuspenseList")}if(typeof g=="object")switch(g.$$typeof){case u:return je(g.render);case y:return Ge(g.type,N,H);case m:{var ee=g,ie=ee._payload,ue=ee._init;try{return Ge(ue(ie),N,H)}catch{}}}return""}var J=Object.prototype.hasOwnProperty,Ye={},ze=k.ReactDebugCurrentFrame;function Ve(g){if(g){var N=g._owner,H=Ge(g.type,g._source,N?N.type:null);ze.setExtraStackFrame(H)}else ze.setExtraStackFrame(null)}function fe(g,N,H,ee,ie){{var ue=Function.call.bind(J);for(var se in g)if(ue(g,se)){var re=void 0;try{if(typeof g[se]!="function"){var Be=Error((ee||"React class")+": "+H+" type `"+se+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof g[se]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Be.name="Invariant Violation",Be}re=g[se](N,se,ee,H,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(be){re=be}re&&!(re instanceof Error)&&(Ve(ie),w("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",ee||"React class",H,se,typeof re),Ve(null)),re instanceof Error&&!(re.message in Ye)&&(Ye[re.message]=!0,Ve(ie),w("Failed %s type: %s",H,re.message),Ve(null))}}}var mt=Array.isArray;function Qe(g){return mt(g)}function va(g){{var N=typeof Symbol=="function"&&Symbol.toStringTag,H=N&&g[Symbol.toStringTag]||g.constructor.name||"Object";return H}}function Xt(g){try{return Qt(g),!1}catch{return!0}}function Qt(g){return""+g}function Ue(g){if(Xt(g))return w("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",va(g)),Qt(g)}var Ze=k.ReactCurrentOwner,oe={key:!0,ref:!0,__self:!0,__source:!0},ce,Ke,De;De={};function Zt(g){if(J.call(g,"ref")){var N=Object.getOwnPropertyDescriptor(g,"ref").get;if(N&&N.isReactWarning)return!1}return g.ref!==void 0}function Oe(g){if(J.call(g,"key")){var N=Object.getOwnPropertyDescriptor(g,"key").get;if(N&&N.isReactWarning)return!1}return g.key!==void 0}function Ca(g,N){if(typeof g.ref=="string"&&Ze.current&&N&&Ze.current.stateNode!==N){var H=V(Ze.current.type);De[H]||(w('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',V(Ze.current.type),g.ref),De[H]=!0)}}function Sa(g,N){{var H=function(){ce||(ce=!0,w("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",N))};H.isReactWarning=!0,Object.defineProperty(g,"key",{get:H,configurable:!0})}}function ea(g,N){{var H=function(){Ke||(Ke=!0,w("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",N))};H.isReactWarning=!0,Object.defineProperty(g,"ref",{get:H,configurable:!0})}}var ja=function(g,N,H,ee,ie,ue,se){var re={$$typeof:a,type:g,key:N,ref:H,props:se,_owner:ue};return re._store={},Object.defineProperty(re._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(re,"_self",{configurable:!1,enumerable:!1,writable:!1,value:ee}),Object.defineProperty(re,"_source",{configurable:!1,enumerable:!1,writable:!1,value:ie}),Object.freeze&&(Object.freeze(re.props),Object.freeze(re)),re};function wa(g,N,H,ee,ie){{var ue,se={},re=null,Be=null;H!==void 0&&(Ue(H),re=""+H),Oe(N)&&(Ue(N.key),re=""+N.key),Zt(N)&&(Be=N.ref,Ca(N,ie));for(ue in N)J.call(N,ue)&&!oe.hasOwnProperty(ue)&&(se[ue]=N[ue]);if(g&&g.defaultProps){var be=g.defaultProps;for(ue in be)se[ue]===void 0&&(se[ue]=be[ue])}if(re||Be){var ve=typeof g=="function"?g.displayName||g.name||"Unknown":g;re&&Sa(se,ve),Be&&ea(se,ve)}return ja(g,re,Be,ie,ee,Ze.current,se)}}var ct=k.ReactCurrentOwner,ta=k.ReactDebugCurrentFrame;function rt(g){if(g){var N=g._owner,H=Ge(g.type,g._source,N?N.type:null);ta.setExtraStackFrame(H)}else ta.setExtraStackFrame(null)}var Re;Re=!1;function ut(g){return typeof g=="object"&&g!==null&&g.$$typeof===a}function ht(){{if(ct.current){var g=V(ct.current.type);if(g)return`
|
|
6
6
|
|
|
7
|
-
Check the render method of \``+g+"`."}return""}}function Et(g){{if(g!==void 0){var
|
|
7
|
+
Check the render method of \``+g+"`."}return""}}function Et(g){{if(g!==void 0){var N=g.fileName.replace(/^.*[\\\/]/,""),H=g.lineNumber;return`
|
|
8
8
|
|
|
9
|
-
Check your code at `+
|
|
9
|
+
Check your code at `+N+":"+H+"."}return""}}var aa={};function st(g){{var N=ht();if(!N){var H=typeof g=="string"?g:g.displayName||g.name;H&&(N=`
|
|
10
10
|
|
|
11
|
-
Check the top-level render call using <`+
|
|
11
|
+
Check the top-level render call using <`+H+">.")}return N}}function At(g,N){{if(!g._store||g._store.validated||g.key!=null)return;g._store.validated=!0;var H=st(N);if(aa[H])return;aa[H]=!0;var ee="";g&&g._owner&&g._owner!==ct.current&&(ee=" It was passed a child from "+V(g._owner.type)+"."),rt(g),w('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',H,ee),rt(null)}}function ot(g,N){{if(typeof g!="object")return;if(Qe(g))for(var H=0;H<g.length;H++){var ee=g[H];ut(ee)&&At(ee,N)}else if(ut(g))g._store&&(g._store.validated=!0);else if(g){var ie=x(g);if(typeof ie=="function"&&ie!==g.entries)for(var ue=ie.call(g),se;!(se=ue.next()).done;)ut(se.value)&&At(se.value,N)}}}function Ta(g){{var N=g.type;if(N==null||typeof N=="string")return;var H;if(typeof N=="function")H=N.propTypes;else if(typeof N=="object"&&(N.$$typeof===u||N.$$typeof===y))H=N.propTypes;else return;if(H){var ee=V(N);fe(H,g.props,"prop",ee,g)}else if(N.PropTypes!==void 0&&!Re){Re=!0;var ie=V(N);w("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",ie||"Unknown")}typeof N.getDefaultProps=="function"&&!N.getDefaultProps.isReactClassApproved&&w("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function yt(g){{for(var N=Object.keys(g.props),H=0;H<N.length;H++){var ee=N[H];if(ee!=="children"&&ee!=="key"){rt(g),w("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",ee),rt(null);break}}g.ref!==null&&(rt(g),w("Invalid attribute `ref` supplied to `React.Fragment`."),rt(null))}}var it={};function jt(g,N,H,ee,ie,ue){{var se=U(g);if(!se){var re="";(g===void 0||typeof g=="object"&&g!==null&&Object.keys(g).length===0)&&(re+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Be=Et(ie);Be?re+=Be:re+=ht();var be;g===null?be="null":Qe(g)?be="array":g!==void 0&&g.$$typeof===a?(be="<"+(V(g.type)||"Unknown")+" />",re=" Did you accidentally export a JSX literal instead of a component?"):be=typeof g,w("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",be,re)}var ve=wa(g,N,H,ie,ue);if(ve==null)return ve;if(se){var He=N.children;if(He!==void 0)if(ee)if(Qe(He)){for(var lt=0;lt<He.length;lt++)ot(He[lt],g);Object.freeze&&Object.freeze(He)}else w("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else ot(He,g)}if(J.call(N,"key")){var et=V(g),Ne=Object.keys(N).filter(function(Aa){return Aa!=="key"}),Bt=Ne.length>0?"{key: someKey, "+Ne.join(": ..., ")+": ...}":"{key: someKey}";if(!it[et+Bt]){var Ea=Ne.length>0?"{"+Ne.join(": ..., ")+": ...}":"{}";w(`A props object containing a "key" prop is being spread into JSX:
|
|
12
12
|
let props = %s;
|
|
13
13
|
<%s {...props} />
|
|
14
14
|
React keys must be passed directly to JSX without using spread:
|
|
15
15
|
let props = %s;
|
|
16
|
-
<%s key={someKey} {...props} />`,Bt,Qe,Ea,Qe),ot[Qe+Bt]=!0}}return g===r?mt(Ce):Ta(Ce),Ce}}function Dt(g,R,V){return Ct(g,R,V,!0)}function Ft(g,R,V){return Ct(g,R,V,!1)}var Ia=Ft,ka=Dt;Lt.Fragment=r,Lt.jsx=Ia,Lt.jsxs=ka})()),Lt}process.env.NODE_ENV==="production"?Ba.exports=ds():Ba.exports=cs();var t=Ba.exports;ls(t);const us=s.styled(s.Box)(({theme:e})=>({position:"absolute",top:8,right:8,display:"flex",flexDirection:"column",gap:4,zIndex:1,backgroundColor:e.palette.background.panel})),ln=s.styled(s.IconButton)({padding:4}),ps=s.styled(s.Box)({display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"16px",position:"relative"}),fs=s.styled(s.Avatar)({width:60,height:60,marginBottom:8}),gs=s.styled(s.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:200,textAlign:"center"}),ms=s.styled(s.Box)({display:"flex",justifyContent:"center",alignItems:"center",width:60,height:60,marginBottom:8}),hs=({imgUrl:e,name:a,contactId:n,navigate:r,isLoading:o=!1,onError:i,onClose:d,isBusiness:c=!1})=>{const u=l.useCallback(v=>x=>{try{if(x.preventDefault(),x.stopPropagation(),!v)throw new Error("Navigation URL is required");x.ctrlKey||x.metaKey||x.button===1?window.open(v,"_blank","noopener,noreferrer"):r(v)}catch(j){i?.(j instanceof Error?j:new Error("Navigation failed"))}},[r,i]),{t:p}=Ke.useTranslation(),m=u(c?`/a/contacts/business/${n}`:`/a/contacts/contacts/${n}`),h=u(`/a/conversations/conversations?contactId=${n}`),y=!!a,f=a||p("contactName.noName"),C=`Avatar for ${f}`;return t.jsxs(ps,{children:[t.jsxs(us,{children:[t.jsx(ln,{color:"info",size:"small",onClick:v=>{m(v),d()},onMouseDown:v=>{v.button===1&&(m(v),d())},disabled:!n,"aria-label":"View contact details",children:t.jsx(Rr,{fontSize:"small"})}),t.jsx(ln,{color:"info",size:"small",onClick:v=>{h(v),d()},onMouseDown:v=>{v.button===1&&(h(v),d())},"aria-label":"Go to conversations",children:t.jsx(Ur,{fontSize:"small"})})]}),o?t.jsx(ms,{children:t.jsx(s.CircularProgress,{size:24})}):t.jsx(fs,{src:e,alt:C,onError:()=>i?.(new Error("Failed to load avatar"))}),t.jsx(gs,{variant:"h6",title:f,sx:y?void 0:{color:"text.disabled",fontStyle:"italic"},children:f})]})},ys=s.styled(s.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),xs=s.styled(s.Box)({width:"100%",borderBottom:"1px solid lightgray"}),bs=s.styled(s.Box)({display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:1,minHeight:"50px",position:"relative",maxWidth:"inherit"}),vs=s.styled(s.Box)(({theme:e})=>({marginTop:"-20px",padding:0,color:e.palette.primary.main})),Cs=s.styled(s.Box)({display:"flex",maxWidth:"90%",gap:"10px",width:"100%",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",alignItems:"center"}),Ss=s.styled(s.Box)({display:"flex",flexDirection:"column",height:"50px",maxWidth:"90%",minWidth:0,overflow:"hidden"}),js=s.styled(s.Typography)({whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",maxWidth:"90%",position:"absolute",bottom:16,left:40}),ws=({icon:e,contactList:a,title:n,showTitle:r=!0})=>{const o=i=>t.jsx(bs,{children:t.jsxs(Cs,{children:[t.jsx(vs,{children:e}),t.jsxs(Ss,{children:[t.jsx(s.Tooltip,{title:i.address,arrow:!0,placement:"top",children:t.jsx(s.Typography,{variant:"subtitle1",fontWeight:"semi-bold",fontSize:14,color:"text.primary",sx:{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",cursor:"default"},children:i.address})}),i.profileName&&t.jsx(s.Typography,{variant:"body2",fontSize:10,color:"text.disabled",sx:{marginLeft:"5px",marginTop:"10px"},children:i.profileName})]}),i.note&&t.jsx(js,{variant:"body2",fontSize:12,color:"text.secondary",children:i.note})]})},i.id);return t.jsxs(ys,{children:[r&&t.jsx(xs,{children:t.jsx(s.Typography,{variant:"subtitle1",fontWeight:"bold",gutterBottom:!0,mt:2,children:n})}),a?.map(o)]})},Ts=s.styled(s.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),Is=s.styled(s.Typography)({borderBottom:"1px solid lightgray",width:"100%"}),ks=s.styled(s.Box)({display:"flex",alignItems:"center",gap:8,width:"100%",minWidth:0}),Es=s.styled(s.Typography)({fontSize:14,wordBreak:"break-word",overflowWrap:"anywhere",minWidth:0}),As=s.styled(Be.Handyman)(({theme:e})=>({color:e.palette.primary.main,fontSize:16})),Ds=({properties:e,title:a})=>{const n=o=>o.replace(/-/g," "),r=(o,i)=>{if(!o||Array.isArray(o)&&o.length===0)return"";if(Array.isArray(o))return o.map(d=>r(d,i)).join(", ");if(typeof o=="string"){const d=ht(o,ht.ISO_8601).isValid(),c=u=>ht(o).format(u);switch(i){case J.ContactField_type.TIME:return d?c("HH:mm"):o;case J.ContactField_type.DATE:return d?c("DD/MM/YYYY"):o;case J.ContactField_type.TIMERANGE:case J.ContactField_type.DATERANGE:if(d)return i===J.ContactField_type.TIMERANGE?c("HH:mm"):c("DD/MM/YYYY");const u=o.split(" ");if(u.length===2){const[p,m]=u,h=i===J.ContactField_type.TIMERANGE?ht(p).format("HH:mm"):ht(p).format("DD/MM/YYYY"),y=i===J.ContactField_type.TIMERANGE?ht(m).format("HH:mm"):ht(m).format("DD/MM/YYYY");return`${h} - ${y}`}return o;default:return o}}return o};return t.jsxs(Ts,{children:[t.jsx(Is,{fontWeight:"bold",gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.map((o,i)=>o.value?.length>0&&t.jsxs(ks,{children:[t.jsx(As,{}),t.jsxs(Es,{children:[n(o.nameKey),":"," ",r(o.value,o.type)]})]},i))]})},Fs=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Bs=s.styled(s.Box)({marginBottom:16}),Ms=s.styled(s.Chip)(({theme:e})=>({marginRight:8,marginBottom:8,backgroundColor:`${e.palette.primary.main}b3`})),$s=({contactData:e,title:a})=>!e||!e.tags?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(Fs,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(Bs,{children:e?.tags?.filter(n=>n.name?.trim()).map(n=>t.jsx(Ms,{label:n.name,color:"primary",size:"small"},n.id))})]});function dn(e){return e?.isBusiness===!0?!1:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&typeof e.firstName=="string"&&typeof e.lastName=="string"&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&"origin"in e&&typeof e.isSpam=="boolean"&&(!e.businessId||typeof e.businessId=="string")}const Ps=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Rs=({contactData:e,title:a})=>!e||!dn(e)?null:t.jsxs(t.Fragment,{children:[t.jsx(Ps,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(s.Typography,{variant:"body2",color:"text.secondary",children:e?.businessName})]});function cn(e){return e?.isBusiness===!0?!0:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&Array.isArray(e.membersId)&&Array.isArray(e.members)&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&typeof e.imageUrl=="string"&&!("firstName"in e)&&!("lastName"in e)}const Us=({name:e,memberId:a,navigate:n})=>{const r=`/a/conversations/conversations?contactId=${a}`,o=i=>{i.preventDefault(),i.stopPropagation(),i.ctrlKey||i.metaKey||i.button===1?window.open(r,"_blank","noopener,noreferrer"):n(r)};return t.jsx(s.Typography,{variant:"body2",color:"text.secondary",role:"link",tabIndex:0,sx:{cursor:"pointer","&:hover":{textDecoration:"underline"}},onClick:o,onMouseDown:i=>{i.button===1&&o(i)},onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&o(i)},children:e})},Ns=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Ls=({contactData:e,title:a,navigate:n})=>!e||!cn(e)||!e.members?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(Ns,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.members.map(r=>t.jsx(Us,{memberId:String(r.id),name:r.name,navigate:n},r.id))]});var zs="Labels",Os="Phone",_s="Business",Ws="Business Members",Vs="Properties",Hs="View",Gs="Email",qs={label:"Tags",add:"Add",edit:"Edit"},Ys={add:"Add",note:"Note",number:"Number",email:"Email",phones:"Phones",close:"Close",back:"Back",createNew:"Create new",delete:"Delete",cancel:"Cancel",save:"Save",noOptions:"No options",noValue:"No value",birthdate:"Birthdate",country:"Country",searchLocation:"Search location",date:"Date",from:"From",to:"To",time:"Time",title:"Title",addTitle:"Add title",description:"Description",location:"Location",addLocation:"Add location",selectLocation:"Select location",color:"Color",allDay:"All day",calendar:"Calendar",selectCalendar:"Select calendar",recurrence:"Recurrence",noRepeat:"Does not repeat",edit:"Edit",duplicate:"Duplicate",event:"Event",task:"Task",editEvent:"Edit event",editTask:"Edit task",saveEvent:"Save event",saveTask:"Save task",createEvent:"Create event",createTask:"Create task",finalizeEvent:"Finalize event",markAsCompleted:"Mark as completed",markAsIncomplete:"Mark as incomplete",linkContacts:"Linked contacts",searchContacts:"Search contacts",errorSavingChanges:"Error saving changes",savingChanges:"Saving changes...",changesSaved:"Changes saved",nameRequired:"Name is required",calendarCreatedSuccess:"Calendar created successfully",calendarUpdatedSuccess:"Calendar updated successfully",eventAlreadyDeleted:"Event has already been deleted",taskAlreadyDeleted:"Task has already been deleted",deleting:"Deleting...",confirm:"Confirm",name:"Name",create:"Create",showEvent:"Show Event",finalizeTask:"Finalize Task",showTask:"Show Task",createCalendar:"Create Calendar",editCalendar:"Edit Calendar",calendarInfo:"Calendar Information",deleteCalendar:"Delete Calendar",deleteConfirm:'Are you sure you want to delete the calendar "{{title}}"?',day:"Day",week:"Week",month:"Month",today:"Today",next:"Next",reminders:"Reminders",addReminder:"Add Reminder",shareWithUsers:"Share with Users",noSharedUsers:"No shared users",loading:"Loading...",moreActions:"More Actions",createdBy:"Created by",private:"Private",everyDay:"Every day",everyWeek:"Every week",everyMonth:"Every month",everyYear:"Every year",everyTwoDays:"Every 2 days",everyTwoWeeks:"Every 2 weeks",everyWeekday:"Weekdays (M-F)",seeMore:"See more",accept:"Accept",noResults:"No results found",calendarNotFound:"Calendar not available"},Ks={searchAddress:"Search address",enterLocation:"Enter a location",city:"City",state:"State",postalCode:"Postal code",country:"Country",saveMainAddress:"Save main address",saveSecondaryAddress:"Save secondary address",loadingGoogleMaps:"Loading Google Maps...",googleMapsUnavailable:"Google Maps unavailable",googleMapsNotLoaded:"Google Maps not loaded",selectedPlaceNoLocation:"Selected place has no location data"},Js={noName:"No name"},Xs={100101:"The number length seems too short",100102:"It seems to be already associated with another contact",100103:"Incorrect format",100104:"WhatsApp account not found",100105:"RCS account not found"},Qs={verifyWspAccount:"Verify WhatsApp account",verifyRcsAccount:"Verify RCS account",wspAccountFound:"WhatsApp account found",wantToLinkContact:"Do you want to link this contact with the found WhatsApp account?",yesLink:"Yes, link",noWspAccountFound:"No WhatsApp account found"},Zs={upload:"Upload photo",delete:"Delete photo"},eo={businessMembers:{title:"Members",edit:"Edit members",empty:"No members",searchLabel:"Members",searchPlaceholder:"Search contacts",searchPrompt:"Search contacts",noOptions:"No contacts found"}},to={from:"From",to:"To"},ao={contactDetails:{contactOwner:"Contact Owner",business:"Business",createdBy:"Created By",modifiedBy:"Modified By",street:"Street",city:"City",state:"State",postcode:"Postcode",country:"Country",addressInformation:"Address Information",primaryAddress:"Primary Address",secondaryAddress:"Secondary Address",contactInformation:"Contact Information",phones:"Phones",contactInfo:{emptySelection:"No selection"}},businessDetails:{businessOwner:"Business Owner"},sidebar:{events:{errorDate:"End date must be after start date"}}},no={reminders:{title:"Reminders",addReminder:"Add Reminder",errorDate:"The 'To' date must be greater than the 'From' date",searchContact:"Search Contact",sendReminder:{pt1:"Send reminder",pt2:"before."},timePeriod:{minute:"minute/s",hour:"hour/s",day:"day/s"},sendReminderToContact:"Send reminder to external contact"},shortcuts:{title:"Keyboard Shortcuts",advice:"Tip: You can use these shortcuts to speed up event creation and editing"},myCalendars:"My calendars",noCalendar:"No calendar",othersCalendars:"Other calendars"},ro={verifyWspAccount:"Verify WhatsApp account",verifyRCSAccount:"Verify RCS account",wspAccountFound:"WhatsApp account found",wantToLinkContact:"Do you want to link this contact with the found WhatsApp account?",yesLink:"Yes, link",noWspAccountFound:"No WhatsApp account found"},so={deleteEvent:"Delete event",deleteTask:"Delete task",confirmDeleteEvent:"Are you sure you want to delete this event?",confirmDeleteTask:"Are you sure you want to delete this task?",deleteRecurringEvent:"Delete recurring event",deleteThisEvent:"This event",deleteAllEvents:"All events",editRecurringEvent:"Edit recurring event",editThisEvent:"This event",editAllEvents:"All events"},oo={labels:zs,phone:Os,business:_s,businessMembers:Ws,properties:Vs,view:Hs,email:Gs,tags:qs,global:Ys,searchLocationModal:Ks,contactName:Js,contactAddressError:Xs,optionMenu:Qs,avatar:Zs,editContactModal:eo,contactEdit:to,conversations:ao,calendarView:no,optionsMenu:ro,calendar:so},io="Etiquetas",lo="Tel\xE9fono",co="Empresa",uo="Miembros de la empresa",po="Propiedades",fo="Ver",go="Correo electr\xF3nico",mo={label:"Etiquetas",add:"Agregar",edit:"Editar"},ho={add:"Agregar",note:"Nota",number:"N\xFAmero",email:"Correo electr\xF3nico",phones:"Tel\xE9fonos",close:"Cerrar",back:"Volver",createNew:"Crear nuevo",delete:"Eliminar",cancel:"Cancelar",save:"Guardar",noOptions:"Sin opciones",noValue:"Sin valor",birthdate:"Fecha de nacimiento",country:"Pa\xEDs",searchLocation:"Buscar ubicaci\xF3n",date:"Fecha",from:"Desde",to:"Hasta",time:"Hora",title:"T\xEDtulo",addTitle:"Agregar t\xEDtulo",description:"Descripci\xF3n",location:"Ubicaci\xF3n",addLocation:"Agregar ubicaci\xF3n",selectLocation:"Seleccionar ubicaci\xF3n",color:"Color",allDay:"Todo el d\xEDa",calendar:"Calendario",selectCalendar:"Seleccionar calendario",recurrence:"Recurrencia",noRepeat:"No se repite",edit:"Editar",duplicate:"Duplicar",event:"Evento",task:"Tarea",editEvent:"Editar evento",editTask:"Editar tarea",saveEvent:"Guardar evento",saveTask:"Guardar tarea",createEvent:"Crear evento",createTask:"Crear tarea",finalizeEvent:"Finalizar evento",markAsCompleted:"Marcar como completado",markAsIncomplete:"Marcar como incompleto",linkContacts:"Contactos vinculados",searchContacts:"Buscar contactos",errorSavingChanges:"Error al guardar los cambios",savingChanges:"Guardando cambios...",changesSaved:"Cambios guardados",nameRequired:"El nombre es obligatorio",calendarCreatedSuccess:"Calendario creado con \xE9xito",calendarUpdatedSuccess:"Calendario actualizado con \xE9xito",eventAlreadyDeleted:"l evento ya ha sido eliminado",taskAlreadyDeleted:"La tarea ya ha sido eliminada",deleting:"Eliminando...",confirm:"Confirmar",name:"Nombre",create:"Crear",showEvent:"Mostrar evento",finalizeTask:"Finalizar tarea",showTask:"Mostrar tarea",createCalendar:"Crear calendario",editCalendar:"Editar calendario",calendarInfo:"Informaci\xF3n del calendario",deleteCalendar:"Eliminar calendario",deleteConfirm:'\xBFEst\xE1 seguro de que desea eliminar el calendario "{{title}}"?',day:"\xEDa",week:"Semana",month:"Mes",today:"Hoy",next:"Siguiente",reminders:"Recordatorios",addReminder:"Agregar recordatorio",shareWithUsers:"Compartir con usuarios",noSharedUsers:"Sin usuarios compartidos",loading:"Cargando...",moreActions:"M\xE1s acciones",createdBy:"Creado por",private:"Privado",everyDay:"Cada d\xEDa",everyWeek:"Cada semana",everyMonth:"Cada mes",everyYear:"Cada a\xF1o",everyTwoDays:"Cada 2 d\xEDas",everyTwoWeeks:"Cada 2 semanas",everyWeekday:"D\xEDas laborables (L-V)",seeMore:"Ver m\xE1s",accept:"Aceptar",noResults:"No se encontraron resultados",calendarNotFound:"Calendario no disponible"},yo={searchAddress:"Buscar direcci\xF3n",enterLocation:"Ingres\xE1 una ubicaci\xF3n",city:"Ciudad",state:"Estado",postalCode:"C\xF3digo postal",country:"Pa\xEDs",saveMainAddress:"Guardar como direcci\xF3n principal",saveSecondaryAddress:"Guardar como direcci\xF3n secundaria",loadingGoogleMaps:"Cargando Google Maps...",googleMapsUnavailable:"Google Maps no disponible",googleMapsNotLoaded:"Google Maps no est\xE1 cargado",selectedPlaceNoLocation:"La ubicaci\xF3n seleccionada no tiene coordenadas"},xo={noName:"Sin nombre"},bo={100101:"La longitud del n\xFAmero parece demasiado corta",100102:"Parece que ya est\xE1 asociado a otro contacto",100103:"Formato incorrecto",100104:"Cuenta de WhatsApp no encontrada",100105:"Cuenta de RCS no encontrada"},vo={verifyWspAccount:"Verificar cuenta de WhatsApp",verifyRcsAccount:"Verificar cuenta de RCS",wspAccountFound:"Cuenta de WhatsApp encontrada",wantToLinkContact:"\xBFDesea vincular este contacto con la cuenta de WhatsApp encontrada?",yesLink:"S\xED, vincular",noWspAccountFound:"No se encontr\xF3 una cuenta de WhatsApp"},Co={upload:"Subir foto",delete:"Eliminar foto"},So={businessMembers:{title:"Miembros",edit:"Editar miembros",empty:"Sin miembros",searchLabel:"Miembros",searchPlaceholder:"Buscar contactos",searchPrompt:"Buscar contactos",noOptions:"No se encontraron contactos"}},jo={from:"Desde",to:"Hasta"},wo={contactDetails:{contactOwner:"Propietario del contacto",business:"Empresa",createdBy:"Creado por",modifiedBy:"Modificado por",street:"Calle",city:"Ciudad",state:"Estado",postcode:"C\xF3digo postal",country:"Pa\xEDs",addressInformation:"Informaci\xF3n de direcci\xF3n",primaryAddress:"Direcci\xF3n principal",secondaryAddress:"Direcci\xF3n secundaria",contactInformation:"Informaci\xF3n de contacto",phones:"Tel\xE9fonos",contactInfo:{emptySelection:"Sin selecci\xF3n"}},businessDetails:{businessOwner:"Propietario de la empresa"},sidebar:{events:{errorDate:"La fecha de finalizaci\xF3n debe ser posterior a la fecha de inicio"}}},To={reminders:{title:"Recordatorios",addReminder:"Agregar recordatorio",errorDate:"La fecha 'Hasta' debe ser mayor que la fecha 'Desde'",searchContact:"Buscar contacto",sendReminder:{pt1:"Enviar recordatorio",pt2:"antes."},timePeriod:{minute:"minuto/s",hour:"hora/s",day:"d\xEDa/s"},sendReminderToContact:"Enviar recordatorio al contacto externo"},shortcuts:{title:"Atajos de teclado",advice:"Consejo: Puedes usar estos atajos para acelerar la creaci\xF3n y edici\xF3n de eventos"},myCalendars:"Mis calendarios",noCalendar:"Sin calendario",othersCalendars:"Otros calendarios"},Io={verifyWspAccount:"Verificar cuenta de WhatsApp",verifyRCSAccount:"Verificar cuenta de RCS",wspAccountFound:"Cuenta de WhatsApp encontrada",wantToLinkContact:"\xBFDesea vincular este contacto con la cuenta de WhatsApp encontrada?",yesLink:"S\xED, vincular",noWspAccountFound:"No se encontr\xF3 una cuenta de WhatsApp"},ko={deleteEvent:"Eliminar evento",deleteTask:"Eliminar tarea",confirmDeleteEvent:"\xBFEst\xE1s seguro de que quer\xE9s eliminar este evento?",confirmDeleteTask:"\xBFEst\xE1s seguro de que quer\xE9s eliminar esta tarea?",deleteRecurringEvent:"Borrar evento recurrente",deleteThisEvent:"Este evento",deleteAllEvents:"Todos los eventos",editRecurringEvent:"Editar evento recurrente",editThisEvent:"Este evento",editAllEvents:"Todos los eventos"},Eo={labels:io,phone:lo,business:co,businessMembers:uo,properties:po,view:fo,email:go,tags:mo,global:ho,searchLocationModal:yo,contactName:xo,contactAddressError:bo,optionMenu:vo,avatar:Co,editContactModal:So,contactEdit:jo,conversations:wo,calendarView:To,optionsMenu:Io,calendar:ko};const Ao={en:{translation:oo},es:{translation:Eo}},jt=Nr.createInstance();jt.use(Ke.initReactI18next).init({resources:Ao,lng:"en",fallbackLng:"en",interpolation:{escapeValue:!1},react:{useSuspense:!1}});const un=(e="",a="",n=Mt.Spaces.nameFormat.FIRST_LAST)=>{const r=e?.trim()||"",o=a?.trim()||"";switch(n){case Mt.Spaces.nameFormat.FIRST_LAST:return`${r} ${o}`.trim();case Mt.Spaces.nameFormat.LAST_FIRST:return`${o} ${r}`.trim();case Mt.Spaces.nameFormat.FIRST_COMMA_LAST:return r&&o?`${r}, ${o}`:r||o;case Mt.Spaces.nameFormat.LAST_COMMA_FIRST:return r&&o?`${o}, ${r}`:o||r;default:return`${r} ${o}`.trim()}},Do=s.styled(s.Box)(({theme:e})=>({backgroundColor:e.palette.background.panel,boxShadow:"0px 4px 10px rgba(0, 0, 0, 0.1)",borderRadius:"8px",width:300,maxWidth:300,boxSizing:"border-box",maxHeight:"calc(100vh - 500px)",overflowY:"auto",overflowX:"hidden",wordBreak:"break-word",overflowWrap:"anywhere",transition:"opacity 0.3s ease, transform 0.3s ease",padding:"8px",zIndex:1300,"&::-webkit-scrollbar":{width:5},"&::-webkit-scrollbar-track":{background:"#E0E0E0",borderRadius:10},"&::-webkit-scrollbar-thumb":{background:"#9E9E9E",borderRadius:10,transition:"background 0.3s"},"&::-webkit-scrollbar-thumb:hover":{background:"#616161"}})),Fo=({open:e,anchorEl:a,onClose:n,contactData:r,avatarImgUrl:o,navigate:i,language:d="en",contactNameFormat:c})=>{const{t:u,i18n:p}=Ke.useTranslation();l.useEffect(()=>{d&&p.changeLanguage(d)},[d,p]);const m=u,h=cn(r),y=dn(r),f=r?y?un(r.firstName,r.lastName,c):r.name:void 0,C=[{icon:t.jsx(Be.PhoneEnabled,{fontSize:"small"}),title:m("phone"),contactList:r?.phones||[],showTitle:!0},{icon:t.jsx(Be.Email,{fontSize:"small"}),title:m("email"),contactList:r?.emails||[],showTitle:!0},{icon:t.jsx(Be.WhatsApp,{fontSize:"small"}),title:"IM",contactList:r?.ims_whatsapp||[],showTitle:!0},{icon:t.jsx(Be.Facebook,{fontSize:"small"}),contactList:r?.ims_facebook||[],showTitle:!1},{icon:t.jsx(Be.Instagram,{fontSize:"small"}),contactList:r?.ims_instagram||[],showTitle:!1},{icon:t.jsx(Be.ThreeP,{fontSize:"small"}),contactList:r?.ims_webchat||[],showTitle:!1}];return l.useEffect(()=>{const v=x=>{x.key==="Escape"&&n()};return e&&window.addEventListener("keydown",v),()=>{window.removeEventListener("keydown",v)}},[e,n]),t.jsx(s.Popper,{sx:{zIndex:1300},open:e,anchorEl:a,placement:"bottom-start","data-popper-child":"true",children:t.jsx(s.ClickAwayListener,{onClickAway:n,children:t.jsx(Do,{children:t.jsxs(s.CardContent,{children:[t.jsx(hs,{navigate:i,contactId:r?.id,imgUrl:o,name:f,onClose:n,isBusiness:h}),t.jsx($s,{contactData:r,title:m("labels")}),y&&t.jsx(Rs,{contactData:r,title:m("business")}),h&&t.jsx(Ls,{contactData:r,title:m("businessMembers"),navigate:i}),C.map((v,x)=>t.jsx(ws,{icon:v.icon,title:v.title,contactList:v.contactList,showTitle:v.showTitle},x)),t.jsx(Ds,{properties:r?.properties,title:m("properties")})]})})})})},Ma=e=>t.jsx(Ke.I18nextProvider,{i18n:jt,children:t.jsx(Fo,{...e})}),pn=l.createContext(null),Bo=pn.Provider,et=()=>l.useContext(pn),fn=e=>e,gn=l.createContext(fn),Mo=({t:e,children:a})=>t.jsx(gn.Provider,{value:e,children:a}),he=()=>{const e=l.useContext(gn);return e?(...a)=>{const[n,...r]=a;return e(n,...r)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),fn)};var $o=Object.defineProperty,Po=(e,a,n)=>a in e?$o(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,mn=(e,a,n)=>Po(e,typeof a!="symbol"?a+"":a,n);let hn=class extends Error{constructor(a,n,r){super(a),mn(this,"status"),mn(this,"body"),this.name="ApiError",this.status=n,this.body=r}};async function Oe({url:e,method:a="GET",headers:n,body:r,signal:o}){const i=await globalThis.fetch(e,{method:a,headers:{...r?{"Content-Type":"application/json"}:{},...n??{}},body:r?JSON.stringify(r):void 0,signal:o}),d=(i.headers.get("content-type")||"").includes("application/json")?await i.json().catch(()=>null):await i.text().catch(()=>null);if(!i.ok){const c=typeof d=="object"&&d&&"message"in d?String(d.message):`Request failed with status ${i.status}`;throw new hn(c,i.status,d)}return d}async function Ro({url:e,method:a="POST",headers:n,formData:r,signal:o}){const i=await globalThis.fetch(e,{method:a,headers:{...n??{}},body:r,signal:o}),d=(i.headers.get("content-type")||"").includes("application/json")?await i.json().catch(()=>null):await i.text().catch(()=>null);if(!i.ok){const c=typeof d=="object"&&d&&"message"in d?String(d.message):`Request failed with status ${i.status}`;throw new hn(c,i.status,d)}return d}function Ie(e,a){const n=e.endsWith("/")?e.slice(0,-1):e,r=a.startsWith("/")?a:`/${a}`;return`${n}${r}`}function Le(e,a){const n=encodeURIComponent(a);return{CONTACTS:Ie(e,`/contacts/${n}`),MEDIA:Ie(e,`/media/${n}`),SETTINGS:Ie(e,`/settings/${n}`)}}async function Uo({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=Ie(r.CONTACTS,"/labels");return Oe({url:o,signal:n})}async function yn({baseUrl:e,spaceId:a,name:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/labels");return Oe({url:i,method:"POST",body:{name:n},signal:r})}async function No({baseUrl:e,spaceId:a,contactId:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return Oe({url:i,signal:r})}async function Lo({baseUrl:e,spaceId:a,businessId:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,`/business/${encodeURIComponent(n)}`);return Oe({url:i,signal:r})}async function zo({baseUrl:e,spaceId:a,forType:n,signal:r}){const o=Le(e,a),i=`${Ie(o.CONTACTS,"/ContactFields")}?filter=custom&for=${encodeURIComponent(n)}`;return Oe({url:i,signal:r})}async function tt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:o,signal:i}){const d=n==="business"?`/business/${encodeURIComponent(r)}`:`/contacts/${encodeURIComponent(r)}`,c=Le(e,a),u=Ie(c.CONTACTS,d);return Oe({url:u,method:"PUT",body:o,signal:i})}async function Oo({baseUrl:e,spaceId:a,pagination:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/Search");return Oe({url:i,method:"POST",body:n,signal:r})}async function _o({baseUrl:e,spaceId:a,business:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/business");return Oe({url:i,method:"POST",body:n,signal:r})}async function ia({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/contactAddresses");return Oe({url:i,method:"DELETE",body:n,signal:r})}async function Wo({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/contactAddresses/check");return Oe({url:i,method:"POST",body:n,signal:r})}async function Vo({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/contactAddresses/set");return Oe({url:i,method:"POST",body:n,signal:r})}async function Ho({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,`/contactAddresses/${encodeURIComponent(n.contactAddressId)}`);return Oe({url:i,method:"PUT",body:n,signal:r})}async function xn({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=Ie(r.SETTINGS,"/user");return Oe({url:o,signal:n})}async function Go({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=Ie(r.SETTINGS,"/users");return Oe({url:o,signal:n})}async function qo({baseUrl:e,spaceId:a,signal:n,userId:r}){const o=Le(e,a),i=Ie(o.SETTINGS,`/usersInfo/${r}`);return Oe({url:i,signal:n})}async function bn({baseUrl:e,spaceId:a,contactId:n,file:r,signal:o}){const i=Le(e,a),d=new FormData;d.append("file",r,r.name);const c=Ie(i.MEDIA,`/upload?module=contacts&folderType=avatars&contactId=${encodeURIComponent(n)}`);return Ro({url:c,formData:d,signal:o})}const vn=(e,a)=>({fetchLabels:({signal:n}={})=>Uo({baseUrl:e,spaceId:a,signal:n}),createLabel:({name:n,signal:r})=>yn({baseUrl:e,spaceId:a,name:n,signal:r}),fetchContact:({contactId:n,signal:r})=>No({baseUrl:e,spaceId:a,contactId:n,signal:r}),fetchBusiness:({businessId:n,signal:r})=>Lo({baseUrl:e,spaceId:a,businessId:n,signal:r}),fetchBusinessTableData:({pagination:n,signal:r})=>Oo({baseUrl:e,spaceId:a,pagination:n,signal:r}),createBusiness:({business:n,signal:r})=>_o({baseUrl:e,spaceId:a,business:n,signal:r}),fetchContactFields:({forType:n,signal:r})=>zo({baseUrl:e,spaceId:a,forType:n,signal:r}),updateEntity:({entityType:n,entityId:r,body:o,signal:i})=>tt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:o,signal:i}),deleteAddress:({data:n,signal:r})=>ia({baseUrl:e,spaceId:a,data:n,signal:r}),deleteAddres:({data:n,signal:r})=>ia({baseUrl:e,spaceId:a,data:n,signal:r}),checkContactAddress:({data:n,signal:r})=>Wo({baseUrl:e,spaceId:a,data:n,signal:r}),setContactAddress:({data:n,signal:r})=>Vo({baseUrl:e,spaceId:a,data:n,signal:r}),updateContactAddress:({data:n,signal:r})=>Ho({baseUrl:e,spaceId:a,data:n,signal:r}),fetchUserTrii:({signal:n}={})=>xn({baseUrl:e,spaceId:a,signal:n}),fetchUsers:({signal:n}={})=>Go({baseUrl:e,spaceId:a,signal:n}),fetchUserTriiById:({userId:n,signal:r})=>qo({baseUrl:e,spaceId:a,userId:n,signal:r}),uploadAvatar:({contactId:n,file:r,signal:o})=>bn({baseUrl:e,spaceId:a,contactId:n,file:r,signal:o})}),Yo={format:"IBusiness",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"},Ko=({baseUrl:e,spaceId:a,contactId:n,initialBusiness:r,onBack:o,onEntityUpdated:i,currentUser:d})=>{const c=he(),u=et(),p=l.useRef(null),m=l.useRef(null),[h,y]=l.useState(()=>r?.businessName??""),[f,C]=l.useState(!1),[v,x]=l.useState(!1),[j,T]=l.useState(!1),[E,S]=l.useState([]),[I,A]=l.useState(r??null),[B,F]=l.useState(1),[k,$]=l.useState(!1),[M,O]=l.useState(!1),W=l.useMemo(()=>{const z=d?.display_name,H=d?.email;return String(z||H||"").trim()},[d]);l.useEffect(()=>()=>{p.current&&(clearTimeout(p.current),p.current=null),m.current?.abort()},[]),l.useEffect(()=>{A(r??null),y(r?.businessName??"")},[r]);const P=()=>{m.current?.abort(),m.current=null,p.current&&(clearTimeout(p.current),p.current=null),C(!1),O(!1),F(1),$(!1),S([])},N=z=>z.filter(H=>!!H?.id).map(H=>({businessId:String(H.id),businessName:String(H.name??"")})),Y=async({query:z,page:H})=>{if(!u)return;m.current?.abort();const K=new AbortController;m.current=K,x(!0);try{const ye={...Yo,currentPage:H,filter:[{value:z,column:"name",condition:""}]},ue=await u.fetchBusinessTableData({pagination:ye,signal:K.signal});if(K.signal.aborted)return;const xe=N(ue?.contactos??[]);C(!0);const ae=ue?.paginacion?.total??0;S(De=>{const X=H===1?xe:(()=>{const pe=new Map;for(const be of De)pe.set(be.businessId,be);for(const be of xe)pe.set(be.businessId,be);return Array.from(pe.values())})();return ae&&X.length>=ae&&O(!0),X})}finally{x(!1),T(!1),$(!1)}},re=z=>{P(),z&&(p.current&&(clearTimeout(p.current),p.current=null),T(!0),p.current=setTimeout(()=>{Y({query:z,page:1})},800))},q=z=>{const H=z.target;if(!(H.scrollHeight-H.scrollTop-H.clientHeight<1)||M||v||!h)return;const K=B+1;$(!0),F(K),Y({query:h,page:K})},G=async()=>{if(!u||!W)return;const z=String(h??"").trim();if(z){x(!0);try{const H={name:z,owner:W,imageUrl:"",members:[],tags:[],properties:[],address1:{street:"",city:"",state:"",zipcode:"",country:""},address2:{street:"",city:"",state:"",zipcode:"",country:""}},K=await u.createBusiness({business:H}),ye={businessId:String(K.id??""),businessName:String(K.name??z)};S([ye]),A(ye),C(!0)}finally{x(!1)}}},L=async()=>{if(!e||!a||!n)return;const z=I?.businessId??"",H=await tt({baseUrl:e,spaceId:a,entityType:"contact",entityId:n,body:{businessId:z}});i?.(H),o()},w=f&&E.length===0&&h?t.jsxs(s.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",sx:{px:1,py:.5},children:[t.jsx(s.Typography,{variant:"body2",children:c("global.noOptions")}),t.jsx(Ze.LoadingButton,{size:"small",variant:"contained",onClick:G,loading:v,disabled:v||!W,children:c("global.createNew")})]}):t.jsx(s.Typography,{variant:"body2",children:c("global.noOptions")}),D=!n||!e||!a;return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(s.IconButton,{size:"small",onClick:o,"aria-label":c("global.back"),children:t.jsx(ra,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:c("conversations.contactDetails.business")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(Ze.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(pt,{}),onClick:L,loading:!1,disabled:D,children:c("global.save")})]}),t.jsxs(s.Box,{sx:{position:"relative"},children:[v||j||k?t.jsx(s.Box,{sx:{position:"absolute",left:0,right:0,top:0},children:t.jsx(s.LinearProgress,{sx:{borderRadius:1}})}):null,t.jsx(s.Autocomplete,{fullWidth:!0,disablePortal:!0,value:I,onChange:(z,H)=>{A(H)},inputValue:h,onInputChange:(z,H,K)=>{y(H),K==="input"&&re(H)},options:E,getOptionLabel:z=>z?.businessName??"",isOptionEqualToValue:(z,H)=>z.businessId===H.businessId,noOptionsText:w,renderInput:z=>t.jsx(s.TextField,{...z,size:"small",label:c("conversations.contactDetails.business"),placeholder:c("global.noValue"),InputProps:{...z.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[v||j?t.jsx(s.CircularProgress,{size:18,sx:{mr:1}}):null,z.InputProps.endAdornment]})}}),ListboxProps:{sx:{maxHeight:240,overflowY:"auto"},onScroll:q}})]})]})},Jo={format:"IContactInfo",total:0,lastPage:1,perPage:10,order:"DESC",orderColumn:"name"},Cn=e=>String(e.name||e.profileName||e.address||""),Xo=({business:e,onBack:a,onEntityUpdated:n})=>{const r=he(),o=et(),i=l.useRef(null),d=l.useRef(null),[c,u]=l.useState([]),[p,m]=l.useState(""),[h,y]=l.useState([]),[f,C]=l.useState(!1),[v,x]=l.useState(!1),[j,T]=l.useState(!1),[E,S]=l.useState(!1),[I,A]=l.useState(1),[B,F]=l.useState(!1);l.useEffect(()=>{u(e?.members??[])},[e]),l.useEffect(()=>()=>{i.current&&clearTimeout(i.current),d.current?.abort()},[]);const k=()=>{d.current?.abort(),d.current=null,i.current&&(clearTimeout(i.current),i.current=null),C(!1),F(!1),A(1),y([])},$=async({query:N,page:Y})=>{if(!o)return;d.current?.abort();const re=new AbortController;d.current=re,x(!0);try{const q={...Jo,currentPage:Y,filter:[{column:"Name",condition:"",value:N}]},G=await o.fetchBusinessTableData({pagination:q,signal:re.signal});if(re.signal.aborted)return;const L=G?.contactos??[],w=G?.paginacion?.total??0;C(!0),y(D=>{const z=Y===1?L:(()=>{const H=new Map;for(const K of D)H.set(K.id,K);for(const K of L)H.set(K.id,K);return Array.from(H.values())})();return w&&z.length>=w&&F(!0),z})}finally{x(!1),T(!1)}},M=N=>{k(),N&&(T(!0),i.current=setTimeout(()=>{$({query:N,page:1})},800))},O=N=>{const Y=N.target;if(!(Y.scrollHeight-Y.scrollTop-Y.clientHeight<1)||B||v||!p)return;const re=I+1;A(re),$({query:p,page:re})},W=async()=>{if(!(!o||!e?.id||E)){S(!0);try{const N=await o.updateEntity({entityType:"business",entityId:e.id,body:{members:c}});n?.(N),a()}finally{S(!1)}}},P=f&&p?t.jsx(s.Typography,{variant:"body2",children:r("editContactModal.businessMembers.noOptions")}):t.jsx(s.Typography,{variant:"body2",children:r("editContactModal.businessMembers.searchPrompt")});return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(s.IconButton,{size:"small",onClick:a,"aria-label":r("global.back"),children:t.jsx(ra,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:r("editContactModal.businessMembers.edit")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(Ze.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(pt,{}),onClick:W,loading:E,disabled:!o||!e?.id,children:r("global.save")})]}),t.jsxs(s.Box,{sx:{position:"relative"},children:[v||j?t.jsx(s.Box,{sx:{position:"absolute",left:0,right:0,top:0},children:t.jsx(s.LinearProgress,{sx:{borderRadius:1}})}):null,t.jsx(s.Autocomplete,{multiple:!0,fullWidth:!0,disablePortal:!0,disableCloseOnSelect:!0,value:c,onChange:(N,Y)=>{u(Y)},inputValue:p,onInputChange:(N,Y,re)=>{m(Y),re==="input"&&M(Y)},options:h,filterOptions:N=>N,getOptionLabel:Cn,isOptionEqualToValue:(N,Y)=>N.id===Y.id,noOptionsText:P,renderTags:(N,Y)=>N.map((re,q)=>l.createElement(s.Chip,{label:Cn(re),size:"small",...Y({index:q}),key:re.id})),renderInput:N=>t.jsx(s.TextField,{...N,size:"small",label:r("editContactModal.businessMembers.searchLabel"),placeholder:r("editContactModal.businessMembers.searchPlaceholder"),InputProps:{...N.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[v||j?t.jsx(s.CircularProgress,{size:18,sx:{mr:1}}):null,N.InputProps.endAdornment]})},InputLabelProps:{shrink:!0}}),ListboxProps:{sx:{maxHeight:240,overflowY:"auto"},onScroll:O}})]})]})},Sn=()=>{},jn=l.createContext(Sn),Qo=({navigate:e,children:a})=>t.jsx(jn.Provider,{value:e,children:a}),wn=()=>l.useContext(jn)||(console.warn("[useNavigateContext] using noop, context value is falsy"),Sn),zt=({title:e,children:a,enableDirectionSearch:n=!1,onDirectionSearchClick:r,action:o})=>{const i=he();return t.jsxs(s.Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:2,p:2,mb:2},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",children:[t.jsx(s.Typography,{variant:"subtitle1",children:e}),t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,children:[o,n&&t.jsx(s.Button,{startIcon:t.jsx(zr,{sx:{color:"primary.main",height:18,width:18}}),size:"small",variant:"outlined",color:"primary",onClick:()=>r&&r(),children:i("global.searchLocation")})]})]}),t.jsx(s.Divider,{sx:{my:1.5}}),a]})},Tn=({children:e,...a})=>t.jsx(s.Box,{display:"grid",gridTemplateColumns:{xs:"1fr",md:"repeat(2, minmax(0, 1fr))"},gap:2,...a,children:e});function $a(e){return e?.isBusiness===!0?!1:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&typeof e.firstName=="string"&&typeof e.lastName=="string"&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&"origin"in e&&typeof e.isSpam=="boolean"&&(!e.businessId||typeof e.businessId=="string")}const Zo=e=>String(e.name||e.profileName||e.address||"-"),ei=({business:e,onEdit:a,language:n,contactNameFormat:r})=>{const o=he(),i=et(),d=wn(),[c,u]=l.useState(null),[p,m]=l.useState(null),[h,y]=l.useState(""),[f,C]=l.useState(null),v=e.members??[],x=j=>async T=>{const E=T.currentTarget;if(!(!i||!j?.id)){C(j.id);try{const S=await i.fetchContact({contactId:j.id});$a(S)&&(m(S),y(String(j.imageUrl||S.imageUrl||"")),u(E))}finally{C(null)}}};return t.jsxs(zt,{title:o("editContactModal.businessMembers.title"),action:t.jsx(s.IconButton,{"aria-label":o("editContactModal.businessMembers.edit"),size:"small",onClick:a,children:t.jsx(yt,{sx:{fontSize:18}})}),children:[v.length>0?t.jsx(s.Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))"},gap:1.5},children:v.map(j=>{const T=Zo(j),E=String(j.imageUrl||""),S=f===j.id;return t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1.5,sx:{minWidth:0,py:.5},children:[t.jsx(s.Avatar,{src:E,alt:T,onClick:x(j),sx:{width:32,height:32,cursor:i?"pointer":"default",bgcolor:I=>I.palette.background.default,color:I=>I.palette.text.secondary}}),t.jsx(s.Typography,{variant:"body2",fontWeight:600,noWrap:!0,sx:{minWidth:0,flex:1},children:T}),S?t.jsx(s.CircularProgress,{size:18}):null]},j.id)})}):t.jsx(s.Typography,{variant:"body2",color:"text.secondary",children:o("editContactModal.businessMembers.empty")}),t.jsx(Ma,{contactData:p??void 0,open:!!c,anchorEl:c,onClose:()=>u(null),navigate:d,avatarImgUrl:h,language:n,contactNameFormat:r})]})},ti=({tags:e,onEditTags:a})=>{const n=he(),[r,o]=l.useState(null),i=l.useMemo(()=>e??[],[e]),d=i.slice(0,4),c=Math.max(i.length-d.length,0),u=h=>{o(h.currentTarget)},p=()=>{o(null)},m=!!r;return t.jsxs(s.Box,{sx:{mt:1,display:"flex",justifyContent:"center"},children:[t.jsxs(s.Box,{sx:{maxWidth:320,position:"relative"},children:[t.jsxs(s.Stack,{direction:"row",spacing:1,useFlexGap:!0,flexWrap:"wrap",justifyContent:"center",children:[d.map(h=>t.jsx(s.Chip,{label:h.name,size:"small",variant:"outlined",sx:{borderRadius:999,maxWidth:140,"& .MuiChip-label":{overflow:"hidden",textOverflow:"ellipsis"}}},h.id)),c>0?t.jsx(s.Chip,{label:`+${c}`,size:"small",variant:"outlined",onClick:u,sx:{borderRadius:999}}):null]}),t.jsx(s.IconButton,{className:"tags-action",size:"small","aria-label":i.length?n("tags.edit"):n("tags.add"),onClick:a,sx:{position:"absolute",left:"100%",ml:1,top:"50%",transform:"translateY(-50%)",color:"text.secondary",bgcolor:h=>h.palette.background.panel,transition:"background-color 0.2s ease-in-out, color 0.2s ease-in-out","&:hover":{bgcolor:"action.selected",color:"text.primary"}},children:i.length?t.jsx(yt,{fontSize:"small"}):t.jsx(Or,{fontSize:"small"})})]}),t.jsx(s.Popover,{open:m,anchorEl:r,onClose:p,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:t.jsxs(s.Box,{sx:{p:1.5,maxWidth:320,maxHeight:240,overflowY:"auto"},children:[t.jsx(s.Typography,{variant:"subtitle2",sx:{mb:1},children:n("tags.label")}),t.jsx(s.Stack,{direction:"row",spacing:1,useFlexGap:!0,flexWrap:"wrap",children:i.map(h=>t.jsx(s.Chip,{label:h.name,size:"small",variant:"outlined",sx:{borderRadius:999,maxWidth:160,"& .MuiChip-label":{overflow:"hidden",textOverflow:"ellipsis"}}},h.id))})]})})]})},ai=s.styled(s.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:360,textAlign:"center"}),ni=s.styled(s.Box)({display:"flex",alignItems:"center",justifyContent:"center",width:"100%"}),ri=s.styled(s.Box)({position:"relative",display:"flex",justifyContent:"center",maxWidth:"100%","&:hover .edit-icon":{opacity:1,visibility:"visible"}}),si=s.styled(s.IconButton)(({alwaysVisible:e})=>({opacity:e?1:0,visibility:e?"visible":"hidden",transition:"all 0.2s",position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)"})),oi=({displayName:e,contactType:a,firstName:n,lastName:r,name:o,entityId:i,onEntityUpdated:d})=>{const c=et(),u=he(),[p,m]=l.useState(!1),[h,y]=l.useState(!1),[f,C]=l.useState({firstName:n||"",lastName:r||"",name:o||""});l.useEffect(()=>{C({firstName:n||"",lastName:r||"",name:o||""})},[n,r,o]);const v=async()=>{if(!(!c||!i||!a||a==="unknown")){y(!0);try{let j={};a==="contact"?j={firstName:f.firstName,lastName:f.lastName}:a==="business"&&(j={name:f.name});const T=await c.updateEntity({entityType:a,entityId:i,body:j});T&&d&&d(T),m(!1)}catch(j){console.error("Failed to update name",j)}finally{y(!1)}}},x=a==="contact"||a==="business";return p?t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,mt:1},children:[a==="contact"?t.jsxs(t.Fragment,{children:[t.jsx(s.TextField,{value:f.firstName,onChange:j=>C({...f,firstName:j.target.value}),size:"small",placeholder:"First Name",sx:{width:140}}),t.jsx(s.TextField,{value:f.lastName,onChange:j=>C({...f,lastName:j.target.value}),size:"small",placeholder:"Last Name",sx:{width:140}})]}):t.jsx(s.TextField,{value:f.name,onChange:j=>C({...f,name:j.target.value}),size:"small",placeholder:"Name",sx:{width:280}}),t.jsx(s.IconButton,{onClick:v,disabled:h,color:"primary",children:h?t.jsx(s.CircularProgress,{size:24}):t.jsx(Be.Save,{})})]}):t.jsx(ni,{children:t.jsxs(ri,{children:[t.jsx(ai,{variant:"h6",title:e||u("contactName.noName"),sx:e?void 0:{color:"text.disabled",fontStyle:"italic"},children:e||u("contactName.noName")}),x&&t.jsx(si,{size:"small",onClick:()=>m(!0),className:"edit-icon",alwaysVisible:!e,sx:{ml:1},children:t.jsx(Be.Edit,{fontSize:"small"})})]})})},ii=({src:e,alt:a,onError:n,onUpload:r,onDelete:o,isUploading:i,isDeleting:d})=>{const c=he();return t.jsxs(s.Box,{sx:{width:60,height:60,mb:1,position:"relative","&:hover .avatar-actions, &:focus-within .avatar-actions":{opacity:1,pointerEvents:"auto"}},children:[t.jsx(s.Avatar,{src:e,alt:a,onError:n,sx:{width:60,height:60}}),t.jsxs(s.Box,{className:"avatar-actions",sx:{position:"absolute",inset:0,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",gap:.5,bgcolor:"rgba(0, 0, 0, 0.35)",opacity:0,pointerEvents:"none",transition:"opacity 0.2s ease-in-out"},children:[t.jsx(s.IconButton,{size:"small","aria-label":c("avatar.upload"),onClick:r,disabled:!!i,sx:{color:"common.white",bgcolor:"rgba(0, 0, 0, 0.25)","&:hover":{bgcolor:"rgba(0, 0, 0, 0.35)"}},children:t.jsx(_r,{fontSize:"small"})}),t.jsx(s.IconButton,{size:"small","aria-label":c("avatar.delete"),onClick:o,disabled:!!d,sx:{color:"common.white",bgcolor:"rgba(0, 0, 0, 0.25)","&:hover":{bgcolor:"rgba(0, 0, 0, 0.35)"}},children:t.jsx($t,{fontSize:"small"})})]})]})},li=s.styled(s.Box)({display:"flex",flexDirection:"column",alignItems:"center",gap:"4px",marginBottom:"20px",position:"relative"}),di=({imgUrl:e,displayName:a,onError:n,tags:r,onEditTags:o,onUploadPhoto:i,onPhotoFileChange:d,photoInputRef:c,isUploadingPhoto:u,onDeletePhoto:p,isDeletingPhoto:m,contactType:h,firstName:y,lastName:f,name:C,entityId:v,onEntityUpdated:x})=>{const j=`Avatar for ${a}`;return t.jsxs(li,{children:[t.jsx("input",{ref:c,type:"file",accept:"image/*",onChange:d,style:{display:"none"}}),t.jsx(ii,{src:e,alt:j,onError:()=>n?.(new Error("Failed to load avatar")),onUpload:i,isUploading:u,onDelete:p,isDeleting:m}),t.jsx(oi,{displayName:a,contactType:h,firstName:y,lastName:f,name:C,entityId:v,onEntityUpdated:x}),t.jsx(ti,{tags:r,onEditTags:o})]})},Pa=20,ci=e=>{const{popperContainer:a,...n}=e;return t.jsx(Wr,{...n,container:a??n.container,style:{...n.style??{},zIndex:2e4}})},ui=({value:e,options:a,onChange:n,onBack:r,onSave:o,isSaving:i,onCreateNew:d,isCreatingNew:c,popperContainer:u})=>{const p=he(),[m,h]=l.useState(""),[y,f]=l.useState(Pa),C=l.useDeferredValue(m),v=l.useMemo(()=>a??[],[a]),x=l.useMemo(()=>{const A=String(C??"").trim().toLowerCase();return A?v.filter(B=>String(B?.name??"").toLowerCase().includes(A)):v},[v,C]),j=l.useMemo(()=>x.slice(0,y),[x,y]),T=l.useMemo(()=>{const A=new Map;for(const B of e??[])B?.id&&A.set(String(B.id),B);for(const B of j??[])B?.id&&(A.has(String(B.id))||A.set(String(B.id),B));return Array.from(A.values())},[e,j]),E=(A,B)=>{h(B??""),f(Pa)},S=A=>{const B=A;B.scrollTop+B.clientHeight>=B.scrollHeight-24&&f(F=>F+Pa)},I=()=>{const A=String(m??"").trim(),B=!A||i||c;return t.jsxs(s.Box,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[p("global.noOptions"),t.jsx(Ze.LoadingButton,{onClick:()=>d(A),loading:c,disabled:B,variant:"contained",size:"small",sx:{marginTop:1.3},children:p("global.createNew")})]})};return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(s.IconButton,{size:"small",onClick:r,"aria-label":p("global.back"),disabled:i,children:t.jsx(ra,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:p("tags.label")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(Ze.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(pt,{}),onClick:o,loading:i,disabled:i,children:p("global.save")})]}),t.jsx(s.Autocomplete,{multiple:!0,disablePortal:!1,value:e,onChange:(A,B)=>n(B),options:T,filterOptions:A=>A,inputValue:m,onInputChange:E,getOptionLabel:A=>A?.name??"",isOptionEqualToValue:(A,B)=>String(A?.id)===String(B?.id),PopperComponent:A=>t.jsx(ci,{...A,popperContainer:u}),renderOption:(A,B)=>{const{key:F,...k}=A;return l.createElement("li",{...k,key:B?.id?String(B.id):String(F??B?.name??"")},B.name??"")},renderTags:(A,B)=>A.map((F,k)=>{const $=B({index:k}),{key:M,...O}=$;return t.jsx(s.Chip,{label:F.name??"",...O},F?.id?String(F.id):String(M??F?.name??k))}),size:"small",renderInput:A=>t.jsx(s.TextField,{...A,size:"small"}),ListboxProps:{onScroll:S,sx:{maxHeight:280,overflowY:"auto"}},noOptionsText:t.jsx(I,{}),sx:{width:"100%"}})]})},In=()=>!!window?.google?.maps?.places?.Autocomplete,pi=(e=1e4)=>new Promise(a=>{if(In()){a(!0);return}const n=Date.now(),r=window.setInterval(()=>{if(In()){window.clearInterval(r),a(!0);return}Date.now()-n>e&&(window.clearInterval(r),a(!1))},100)}),fi=()=>{const[e,a]=l.useState(!1),[n,r]=l.useState(!0),[o,i]=l.useState(null);return l.useEffect(()=>{(async()=>{try{const d=await pi(1e4);a(d),d||i("Google Maps API failed to load")}catch{i("Error loading Google Maps API"),a(!1)}finally{r(!1)}})()},[]),{isLoaded:e,isLoading:n,error:o}},gi=({onPlaceSelected:e,onError:a,placeholder:n})=>{const r=he(),o=l.useRef(null),i=l.useRef(null),d=l.useRef(e),c=l.useRef(a),{isLoaded:u,isLoading:p,error:m}=fi(),h=l.useMemo(()=>p?r("searchLocationModal.loadingGoogleMaps"):m?r("searchLocationModal.googleMapsUnavailable"):u?n??r("searchLocationModal.enterLocation"):r("searchLocationModal.googleMapsNotLoaded"),[u,p,m,n,r]);return l.useEffect(()=>{d.current=e},[e]),l.useEffect(()=>{c.current=a},[a]),l.useEffect(()=>{if(!u||!o.current||i.current)return;const y=window?.google;if(!y?.maps?.places?.Autocomplete){c.current?.(r("searchLocationModal.googleMapsUnavailable"));return}o.current.focus();let f=null;const C=()=>{document.querySelectorAll(".pac-container").forEach(x=>{const j=x;j.style.zIndex="20000",j.style.position="fixed"})};f=new MutationObserver(x=>{for(const j of x)for(const T of Array.from(j.addedNodes)){if(T.nodeType!==Node.ELEMENT_NODE)continue;const E=T;E.classList?.contains("pac-container")&&(E.style.zIndex="20000",E.style.position="fixed")}}),f.observe(document.body,{childList:!0,subtree:!0}),C(),window.setTimeout(C,100),i.current=new y.maps.places.Autocomplete(o.current,{types:["geocode"],componentRestrictions:{country:"ar"}});const v=i.current.addListener?.("place_changed",()=>{const x=i.current?.getPlace?.();if(!x?.geometry?.location){c.current?.(r("searchLocationModal.selectedPlaceNoLocation"));return}let j="",T="",E="",S="",I="",A="";const B=x.address_components??[];for(const M of B){const O=M?.types??[];if(O.includes("locality")||O.includes("administrative_area_level_2")){j=M.long_name;continue}if(O.includes("administrative_area_level_1")){T=M.long_name;continue}if(O.includes("country")){E=M.long_name;continue}if(O.includes("postal_code")){S=M.long_name;continue}if(O.includes("route")){I=M.long_name;continue}O.includes("street_number")&&(A=M.long_name)}const F=typeof x.geometry.location.lat=="function"?x.geometry.location.lat():0,k=typeof x.geometry.location.lng=="function"?x.geometry.location.lng():0,$={location:{lat:F,lng:k},address:x.formatted_address??"",city:j,state:T,country:E,postalCode:S,streetName:I,streetNumber:A,shortAddress:[I,A].filter(Boolean).join(" ")};d.current($)});return()=>{f&&f.disconnect(),v?.remove&&v.remove(),i.current=null}},[u,r]),t.jsx(s.TextField,{fullWidth:!0,size:"small",inputRef:o,placeholder:h,disabled:p||!u||!!m,error:!!m})},mi={street:"",city:"",state:"",zipcode:"",country:""},hi=({baseUrl:e,spaceId:a,entityType:n,entityId:r,onBack:o,onEntityUpdated:i})=>{const d=he(),[c,u]=l.useState(mi),[p,m]=l.useState(""),[h,y]=l.useState(""),[f,C]=l.useState(!1),[v,x]=l.useState(!1),j=l.useMemo(()=>!!(String(c.street??"").trim()||String(c.city??"").trim()||String(c.state??"").trim()||String(c.zipcode??"").trim()||String(c.country??"").trim()),[c]),T=F=>{m(F.address??"");const k=String(F.shortAddress??"").trim()||[F.streetName,F.streetNumber].filter(Boolean).join(" ").trim();u({street:k,city:F.city??"",state:F.state??"",zipcode:F.postalCode??"",country:F.country??""}),y("")},E=F=>{y(String(F??""))},S=F=>k=>{const $=k.target.value;u(M=>({...M,[F]:$}))},I=async()=>{if(!f&&!(!e||!a)&&r){C(!0);try{const F=await tt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{address1:{street:String(c.street??""),city:String(c.city??""),state:String(c.state??""),zipcode:String(c.zipcode??""),country:String(c.country??"")}}});i?.(F),o()}finally{C(!1)}}},A=async()=>{if(!v&&!(!e||!a)&&r){x(!0);try{const F=await tt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{address2:{street:String(c.street??""),city:String(c.city??""),state:String(c.state??""),zipcode:String(c.zipcode??""),country:String(c.country??"")}}});i?.(F),o()}finally{x(!1)}}},B=!j||f||v;return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:3},children:[t.jsx(s.IconButton,{size:"small",onClick:o,"aria-label":d("global.back"),children:t.jsx(ra,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"h6",children:d("searchLocationModal.searchAddress")})]}),t.jsxs(s.Stack,{spacing:3,children:[t.jsxs(s.Box,{sx:{position:"relative",zIndex:1400},children:[t.jsx(gi,{onPlaceSelected:T,onError:E,placeholder:d("searchLocationModal.enterLocation")}),h?t.jsx(s.Typography,{variant:"caption",color:"error",sx:{mt:.5,display:"block"},children:h}):null]}),t.jsx(s.TextField,{label:d("conversations.contactDetails.street"),value:c.street,onChange:S("street"),fullWidth:!0,size:"medium"}),t.jsxs(s.Stack,{direction:{xs:"column",sm:"row"},spacing:2,children:[t.jsx(s.TextField,{label:d("searchLocationModal.city"),value:c.city,onChange:S("city"),fullWidth:!0,size:"medium"}),t.jsx(s.TextField,{label:d("searchLocationModal.state"),value:c.state,onChange:S("state"),fullWidth:!0,size:"medium"})]}),t.jsxs(s.Stack,{direction:{xs:"column",sm:"row"},spacing:2,children:[t.jsx(s.TextField,{label:d("searchLocationModal.postalCode"),value:c.zipcode,onChange:S("zipcode"),fullWidth:!0,size:"medium"}),t.jsx(s.TextField,{label:d("searchLocationModal.country"),value:c.country,onChange:S("country"),fullWidth:!0,size:"medium"})]}),p?t.jsx(s.Typography,{variant:"caption",sx:{opacity:.7},children:p}):null,t.jsxs(s.Stack,{direction:"row",spacing:2,justifyContent:"flex-end",sx:{pt:2},children:[t.jsx(Ze.LoadingButton,{variant:"contained",size:"large",startIcon:t.jsx(pt,{}),onClick:I,loading:f,disabled:B,children:d("searchLocationModal.saveMainAddress")}),t.jsx(Ze.LoadingButton,{variant:"outlined",size:"large",startIcon:t.jsx(pt,{}),onClick:A,loading:v,disabled:B,children:d("searchLocationModal.saveSecondaryAddress")})]})]})]})},Se=(e,a)=>{const[n,r]=l.useState(a||""),[o,i]=l.useState(!1),[d,c]=l.useState("");return l.useEffect(()=>{r(a||"")},[a]),{actions:{onError:u=>{i(!0),c(u)},onSuccess:()=>{i(!1),c("")},resetValue:()=>{r(a||"")},changeValue:u=>{r(u)}},attributes:{error:o,helperText:d,type:e,value:n,onChange:u=>{r(u.target.value)}}}},Ot=({baseUrl:e,spaceId:a,entityType:n,entityId:r,initialImageUrl:o,onEntityUpdated:i})=>{const[d,c]=l.useState(o??""),[u,p]=l.useState(null),[m,h]=l.useState(!1),[y,f]=l.useState(!1),C=l.useRef(null),v=l.useMemo(()=>!!(e&&a&&n&&r),[e,a,n,r]);function x(k){return k.split("?sv=")[0]}function j(k){return k.split("&cacheId=")[0]}function T(k){let $=x(k);return!$||($=j($),!$)?"":$}const E=async()=>{if(!e||!a)return null;const k=await xn({baseUrl:e,spaceId:a});return p(k),k},S=async k=>{const $=(u??await E())?.storageAzureSAS,M=$?.expireAt,O=M?new Date(M):null;let W=$?.sas??"";if((!W||O&&O<new Date)&&(W=(await E())?.storageAzureSAS?.sas??""),!W)return k;const P=`${Date.now()}`;return`${k}${W}&cacheId=${P}`},I=async k=>{if(!k){c("");return}const $=x(k);if(!$)return;const M=await S($);c(M)},A=async k=>{const $=k.target.files?.[0];if($&&v){C.current&&(C.current.value=""),h(!0);try{const M=await bn({baseUrl:e,spaceId:a,contactId:r,file:$}),O=await tt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{imageUrl:M}});i?.(O),await I(M)}finally{h(!1)}}},B=()=>{C.current?.click()},F=async()=>{if(v&&!y){f(!0);try{await tt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{imageUrl:""}}),i?.({imageUrl:""}),c("")}finally{f(!1)}}};return l.useEffect(()=>{if(!o){c("");return}I(o)},[o]),{inputAtributes:{onChange:A,ref:C,type:"file",accept:"image/*"},action:{uploadImage:B,deleteImage:F},imageUrl:d,removeParams:T,isUploading:m,isDeleting:y}},kn=(e="")=>{const[a,n]=l.useState(e),r=d=>{n(d.target.value)},o=d=>{n(d)},i=()=>{n(e??"")};return l.useEffect(()=>{n(e)},[e]),{actions:{resetValue:i,changeValue:o},attributes:{value:a,onChange:r}}};let la;const yi=new Uint8Array(16);function xi(){if(!la&&(la=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!la))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return la(yi)}const Me=[];for(let e=0;e<256;++e)Me.push((e+256).toString(16).slice(1));function bi(e,a=0){return Me[e[a+0]]+Me[e[a+1]]+Me[e[a+2]]+Me[e[a+3]]+"-"+Me[e[a+4]]+Me[e[a+5]]+"-"+Me[e[a+6]]+Me[e[a+7]]+"-"+Me[e[a+8]]+Me[e[a+9]]+"-"+Me[e[a+10]]+Me[e[a+11]]+Me[e[a+12]]+Me[e[a+13]]+Me[e[a+14]]+Me[e[a+15]]}const vi=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var En={randomUUID:vi};function _t(e,a,n){if(En.randomUUID&&!a&&!e)return En.randomUUID();e=e||{};const r=e.random||(e.rng||xi)();if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,a){n=n||0;for(let o=0;o<16;++o)a[n+o]=r[o];return a}return bi(r)}function Ci(e){return{id:_t(),address:"",note:"",channelType:e,isSaved:!1}}var da={createNewAddress:Ci};const Si=(e,a,n)=>{if(a!==n&&!(a===null&&n==="")){const r={};return r[e]=n,r}return null},ji=(e,a,n)=>n.map(r=>r.id===a?{...r,address:e}:r);var wt={getEditedField:Si,getAddressesWithUpdatedValues:ji};const An=({entityId:e,initial:a,dispatch:n,deleteAddress:r})=>{const[o,i]=l.useState(!1),[d,c]=l.useState(()=>a),[u,p]=l.useState(a?.ims_facebook||[]),[m,h]=l.useState(a?.ims_mercadolibre||[]),[y,f]=l.useState(a?.ims_webchat||[]),[C,v]=l.useState(a?.ims_instagram||[]),[x,j]=l.useState(a?.ims_whatsapp||[]),[T,E]=l.useState(a?.emails||[]),[S,I]=l.useState(a?.phones||[]),[A,B]=l.useState(a?.ims_rcs||[]),F=()=>{const q=da.createNewAddress(St.ChannelType.PHONE),G=[...S,q];I(G)},k=()=>{const q=da.createNewAddress(St.ChannelType.EMAIL),G=[...T,q];E(G)},$=()=>{const q=da.createNewAddress(St.ChannelType.WHATSAPP),G=[...x,q];j(G)},M=()=>{const q=da.createNewAddress(St.ChannelType.RCS),G=[...A,q];B(G)},O=q=>{const G=[...x,q];j(G),c(L=>({...L??{},ims_whatsapp:G}))},W=(q,G)=>{if(G){if(G.channelType===3){const L=T.map(w=>w.id===q?G:w);E(L),c(w=>({...w??{},emails:L}))}if(G.channelType===5){const L=S.map(w=>w.id===q?G:w);I(L),c(w=>({...w??{},phones:L}))}if(G.channelType===13){const L=x.map(w=>w.id===q?G:w);j(L),c(w=>({...w??{},ims_whatsapp:L}))}if(G.channelType===21){const L=A.map(w=>w.id===q?G:w);B(L),c(w=>({...w??{},ims_rcs:L}))}if(G.channelType===41){const L=m.map(w=>w.id===q?G:w);h(L),c(w=>({...w??{},ims_mercadolibre:L}))}}},P=async(q,G,L)=>{const w=q.target.value;if(L===3){const D=wt.getAddressesWithUpdatedValues(w,G,T);E(D)}else if(L===5){const D=wt.getAddressesWithUpdatedValues(w,G,S);I(D)}else if(L===13){const D=wt.getAddressesWithUpdatedValues(w,G,x);j(D)}else if(L===21){const D=wt.getAddressesWithUpdatedValues(w,G,A);B(D)}else if(L===41){const D=wt.getAddressesWithUpdatedValues(w,G,m);h(D)}},N=(q,G,L)=>{if(L===14){const w=u.map(D=>D.id===G?{...D,note:q.target.value}:D);p(w)}if(L===20){const w=y.map(D=>D.id===G?{...D,note:q.target.value}:D);f(w)}if(L===16){const w=C.map(D=>D.id===G?{...D,note:q.target.value}:D);v(w)}if(L===3){const w=T.map(D=>D.id===G?{...D,note:q.target.value}:D);E(w)}if(L===5){const w=S.map(D=>D.id===G?{...D,note:q.target.value}:D);I(w)}if(L===13){const w=x.map(D=>D.id===G?{...D,note:q.target.value}:D);j(w)}if(L===21){const w=A.map(D=>D.id===G?{...D,note:q.target.value}:D);B(w)}if(L===41){const w=m.map(D=>D.id===G?{...D,note:q.target.value}:D);h(w)}},Y=async(q,G)=>{if(e&&(G===3||G===5||G===13||G===14||G===20||G===16||G===21||G===41)){i(q);const L={contactId:e,contactAddressId:q,type:G};switch(n?await n(r(L)):await r(L),i(!1),G){case 3:const w=T.filter(ae=>ae.id!==q);E(w),c(ae=>({...ae??{},emails:w}));break;case 5:const D=S.filter(ae=>ae.id!==q);I(D),c(ae=>({...ae??{},phones:D}));break;case 13:const z=x.filter(ae=>ae.id!==q);j(z),c(ae=>({...ae??{},ims_whatsapp:z}));break;case 21:const H=A.filter(ae=>ae.id!==q);B(H),c(ae=>({...ae??{},ims_rcs:H}));break;case 41:const K=m.filter(ae=>ae.id!==q);h(K),c(ae=>({...ae??{},ims_mercadolibre:K}));break;case 14:const ye=u.filter(ae=>ae.id!==q);p(ye),c(ae=>({...ae??{},ims_facebook:ye}));break;case 20:const ue=y.filter(ae=>ae.id!==q);f(ue),c(ae=>({...ae??{},ims_webchat:ue}));break;case 16:const xe=C.filter(ae=>ae.id!==q);v(xe),c(ae=>({...ae??{},ims_instagram:xe}));break}}};function re(){p(d?.ims_facebook||[]),h(d?.ims_mercadolibre||[]),f(d?.ims_webchat||[]),v(d?.ims_instagram||[]),j(d?.ims_whatsapp||[]),B(d?.ims_rcs||[]),E(d?.emails||[]),I(d?.phones||[])}return l.useEffect(()=>{c(a),a?.emails&&a?.phones&&(E(a.emails),I(a.phones)),j(a?.ims_whatsapp||[]),B(a?.ims_rcs||[]),p(a?.ims_facebook||[]),f(a?.ims_webchat||[]),v(a?.ims_instagram||[]),h(a?.ims_mercadolibre||[])},[a]),{field:{imsWhatsapp:x,imsRCS:A,imsMercadolibre:m,imsFacebooks:u,imsWebchats:y,imsInstagrams:C,emails:T,phoneNumbers:S},action:{handleAddressFieldChange:P,handleNoteFieldChange:N,handleDeleteAddress:Y,addPhone:F,addEmail:k,addWhatsapp:$,addRCS:M,replaceAddress:W,addWhatsappVerified:O,resetToInitialContactInformation:re},state:{isDeletingAddress:o}}},Dn=({initialState:e=[]}={})=>{const[a,n]=l.useState(e);return{attributes:{value:a,onChange:(r,o)=>{const i=o.some(d=>!a.some(c=>d.id===c.id));(a.filter(d=>!o.some(c=>c.id===d.id)).length>0||i)&&n(o)}},actions:{addValue:r=>{n(o=>o.concat(r))},setValue:r=>{n(r)}}}},wi=({business:e,customContactFields:a,baseUrl:n,spaceId:r})=>{const o=l.useMemo(()=>async X=>{!n||!r||await ia({baseUrl:n,spaceId:r,data:X})},[n,r]),i=async X=>X,[d,c]=l.useState([]),u=Se("text",e?.name||""),p=Ot({baseUrl:n,spaceId:r,entityType:"business",entityId:e?.id,initialImageUrl:e?.imageUrl||""}),m=kn(e?.owner),h=Dn({initialState:e?.tags??[]}),[y,f]=l.useState([]),{field:{imsFacebooks:C,imsMercadolibre:v,imsWebchats:x,imsInstagrams:j,imsWhatsapp:T,emails:E,phoneNumbers:S,imsRCS:I},action:{addPhone:A,addEmail:B,addWhatsapp:F,addRCS:k,addWhatsappVerified:$,replaceAddress:M,handleAddressFieldChange:O,handleNoteFieldChange:W,handleDeleteAddress:P,resetToInitialContactInformation:N},state:{isDeletingAddress:Y}}=An({entityId:e?.id,initial:e,dispatch:i,deleteAddress:o}),re=Se("text",e?.address1?.street||""),q=Se("text",e?.address2?.street||""),G=Se("text",e?.address1?.city||""),L=Se("text",e?.address2?.city||""),w=Se("text",e?.address1?.state||""),D=Se("text",e?.address2?.state||""),z=Se("text",e?.address1?.zipcode||""),H=Se("text",e?.address2?.zipcode||""),K=Se("text",e?.address1?.country||""),ye=Se("text",e?.address2?.country||""),ue=(X,pe,be)=>pe!==be&&!(pe===null&&be==="")?{[X]:be}:{},xe=()=>{if(!e)return null;const X={street:re.attributes.value,city:G.attributes.value,state:w.attributes.value,zipcode:z.attributes.value,country:K.attributes.value},pe={street:q.attributes.value,city:L.attributes.value,state:D.attributes.value,zipcode:H.attributes.value,country:ye.attributes.value};return{id:e.id,...ue("owner",e.owner,m.attributes.value),...ue("name",e.name,u.attributes.value),imageUrl:p.imageUrl?p.removeParams(p.imageUrl):null,tags:h.attributes.value,properties:d,members:y,phoneNumbers:S,emails:E,address1:X,address2:pe}};function ae(X){if(!e)return;const pe=ee=>ee.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),be=e.properties.find(ee=>ee.nameKey===X)??e.properties.find(ee=>pe(ee.nameKey)===pe(X));if(!be){console.error(`No se encontr\xF3 una propiedad con nameKey: ${X}`);return}const Ye=d.map(ee=>ee.nameKey===X?{...ee,value:be.value}:ee);c(Ye)}const De=()=>e?a.map(X=>{const pe=ee=>ee.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),be=e.properties.find(ee=>ee.nameKey===X.nameKey)??e.properties.find(ee=>pe(ee.nameKey)===pe(X.nameKey));if(be)return{...be,nameKey:X.nameKey,type:be.type??X.type,value:be.value};const Ye=d.find(ee=>ee.nameKey===X.nameKey);return{nameKey:X.nameKey,type:X.type,value:Ye?Ye.value:""}}):[];return l.useEffect(()=>{e&&a&&c(De())},[e,a]),l.useEffect(()=>{e&&h.actions.setValue(e.tags??[])},[e]),{field:{name:u,imsWhatsapp:T,imsRCS:I,contactImage:p,contactPropietary:m,imsMercadolibre:v,imsFacebooks:C,imsWebchats:x,imsInstagrams:j,emails:E,phoneNumbers:S,homeAddress:re,secondaryHomeAddress:q,city:G,secondaryCity:L,state:w,secondaryState:D,postalCode:z,secondaryPostalCode:H,country:K,secondaryCountry:ye,customProperties:d,labelMultipleSelect:h},action:{setCustomProperties:c,addWhatsapp:F,addRCS:k,getEditedBusiness:xe,handleAddressFieldChange:O,handleNoteFieldChange:W,handleDeleteAddress:P,addPhone:A,addEmail:B,replaceAddress:M,addWhatsappVerified:$,resetToInitialContactInformation:N,resetCustomProperty:ae},state:{isDeletingAddress:Y},selectedContacts:y,setSelectedContacts:f}},Ti=({contact:e,customContactFields:a,baseUrl:n,spaceId:r})=>{const o=l.useMemo(()=>async ee=>{!n||!r||await ia({baseUrl:n,spaceId:r,data:ee})},[n,r]),i=async ee=>ee,{getEditedField:d}=wt,[c,u]=l.useState([]),p=Se("text",e?.firstName||""),m=Se("text",e?.lastName||""),h=Ot({baseUrl:n,spaceId:r,entityType:"contact",entityId:e?.id?String(e.id):void 0,initialImageUrl:e?.imageUrl}),[y,f]=l.useState(e?.birthDate?Z(e.birthDate):null),C=An({entityId:e?.id,initial:e,dispatch:i,deleteAddress:o}),{field:{imsFacebooks:v,imsMercadolibre:x,imsWebchats:j,imsInstagrams:T,imsWhatsapp:E,emails:S,phoneNumbers:I,imsRCS:A},action:{addPhone:B,addEmail:F,addWhatsapp:k,addRCS:$,addWhatsappVerified:M,replaceAddress:O,handleAddressFieldChange:W,handleNoteFieldChange:P,handleDeleteAddress:N,resetToInitialContactInformation:Y},state:{isDeletingAddress:re}}=C,q=Dn({initialState:e?.tags}),G=kn(e?.owner),L=Se("text",e?.address1?.street),w=Se("text",e?.address2?.street),D=Se("text",e?.address1?.city),z=Se("text",e?.address2?.city),H=Se("text",e?.address1?.state),K=Se("text",e?.address2?.state),ye=Se("text",e?.address1?.zipcode),ue=Se("text",e?.address2?.zipcode),xe=Se("text",e?.address1?.country),ae=Se("text",e?.address2?.country),De=()=>{if(!e)return null;const ee=e,Pe=q.attributes.value.map(ce=>({id:ce.id,name:ce.name})),We=I.map(ce=>{const{id:kt,...at}=ce;return at}),Ge=S.map(ce=>{const{id:kt,...at}=ce;return at});return{id:ee.id,owner:G.attributes.value,firstName:p.attributes.value,lastName:m.attributes.value,address1:{...d("street",ee.address1?.street,L.attributes.value),...d("city",ee.address1?.street,D.attributes.value),...d("state",ee.address1?.street,H.attributes.value),...d("zipcode",ee.address1?.street,ye.attributes.value),...d("country",ee.address1?.street,xe.attributes.value)},address2:{...d("street",ee.address2?.street,w.attributes.value),...d("city",ee.address2?.street,z.attributes.value),...d("state",ee.address2?.street,K.attributes.value),...d("zipcode",ee.address2?.street,ue.attributes.value),...d("country",ee.address2?.street,ae.attributes.value)},emails:Ge,phones:We,tags:Pe,imageUrl:h.imageUrl?h.removeParams(h.imageUrl):null,properties:c,birthDate:y?.toDate()}};function X(){e&&(!e.businessId||e.businessName)}function pe(){f(e?.birthDate?Z(e.birthDate):null)}function be(ee){if(!e)return;const Pe=ce=>ce.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),We=e.properties.find(ce=>ce.nameKey===ee)??e.properties.find(ce=>Pe(ce.nameKey)===Pe(ee));if(!We){console.error(`No se encontr\xF3 una propiedad con nameKey: ${ee}`);return}const Ge=c.map(ce=>ce.nameKey===ee?{...ce,value:We.value}:ce);u(Ge)}const Ye=()=>e?a.map(ee=>{const Pe=ce=>ce.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),We=e.properties.find(ce=>ce.nameKey===ee.nameKey)??e.properties.find(ce=>Pe(ce.nameKey)===Pe(ee.nameKey));if(We)return{...We,nameKey:ee.nameKey,type:We.type??ee.type,value:We.value};const Ge=c.find(ce=>ce.nameKey===ee.nameKey);return{nameKey:ee.nameKey,type:ee.type,value:Ge?Ge.value:""}}):[];return l.useEffect(()=>{e&&a&&u(Ye())},[e,a]),l.useEffect(()=>{e?.tags&&q.actions.setValue(e.tags),e?.businessId&&e.businessName},[e]),{field:{birthDate:y,imsWhatsapp:E,imsRCS:A,contactFirstname:p,contactLastname:m,contactImage:h,contactPropietary:G,imsMercadolibre:x,imsFacebooks:v,imsWebchats:j,imsInstagrams:T,emails:S,phoneNumbers:I,homeAddress:L,secondaryHomeAddress:w,city:D,secondaryCity:z,state:H,secondaryState:K,postalCode:ye,secondaryPostalCode:ue,country:xe,secondaryCountry:ae,customProperties:c,labelMultipleSelect:q},action:{setBirthDate:f,setCustomProperties:u,getEditedContact:De,handleAddressFieldChange:W,handleNoteFieldChange:P,handleDeleteAddress:N,addPhone:B,addEmail:F,addWhatsapp:k,addRCS:$,replaceAddress:O,addWhatsappVerified:M,resetToInitialContactInformation:Y,resetSelectedBusiness:X,resetBirthDate:pe,resetCustomProperty:be},state:{isDeletingAddress:re}}},Ra=l.createContext(null),Ii=({children:e,contact:a,customContactFields:n,baseUrl:r,spaceId:o})=>{const i=Ti({contact:a,customContactFields:n,baseUrl:r,spaceId:o});return t.jsx(Ra.Provider,{value:{entityType:"contact",editEntity:i,entityId:String(a.id)},children:e})},ki=({children:e,business:a,customContactFields:n,baseUrl:r,spaceId:o})=>{const i=wi({business:a,customContactFields:n,baseUrl:r,spaceId:o});return t.jsx(Ra.Provider,{value:{entityType:"business",editEntity:i,entityId:String(a.id)},children:e})},Ei=({children:e,entityType:a,entityData:n,customContactFields:r,baseUrl:o,spaceId:i})=>a==="contact"?t.jsx(Ii,{contact:n,customContactFields:r,baseUrl:o,spaceId:i,children:e}):t.jsx(ki,{business:n,customContactFields:r,baseUrl:o,spaceId:i,children:e}),lt=()=>{const e=l.useContext(Ra);if(!e)throw new Error("useEditEntity must be used within EditEntityProvider");return e},Tt=({userId:e,users:a,currentUser:n})=>{if(!e)return null;if(n?.uid&&n.uid===e)return n.display_name||n.email||null;const r=a.find(o=>o?.id===e);return r?.name?.trim()||r?.email||null},Ai=({birthDate:e,setBirthDate:a,dateFormat:n})=>{const r=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Rt.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Ut,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Qa.DatePicker,{value:e,onChange:o=>a(o),slotProps:{textField:{size:"small"}},format:r})})})},Di={view:"main",setView:()=>{}},Fn=l.createContext(null),Fi=Fn.Provider,Bi=()=>l.useContext(Fn)||(console.warn("[useEditContactView] using noop, context value is missing"),Di);function Ua(e){return e?.isBusiness===!0?!0:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&Array.isArray(e.membersId)&&Array.isArray(e.members)&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&typeof e.imageUrl=="string"&&!("firstName"in e)&&!("lastName"in e)}function Mi({value:e,displayValue:a,businessId:n}){const r=et(),o=wn(),[i,d]=l.useState(null),c=Ot({initialImageUrl:i?.imageUrl,entityType:"business",entityId:n}),[u,p]=l.useState(null),[m,h]=l.useState(!1);return t.jsxs(s.Box,{display:"flex",alignItems:"center",children:[t.jsx(s.Typography,{onClick:async y=>{const f=y.currentTarget;if(h(!0),!r){console.error("API is null");return}const C=await r.fetchBusiness({businessId:n});if(C&&Ua(C)&&d(C),h(!1),!f){console.error("Target element is null");return}p(f)},variant:"body2",fontWeight:"600",sx:{padding:1,cursor:"pointer"},color:y=>y.palette.text.primary,children:a||typeof e=="string"&&e||"-"}),i&&t.jsx(Ma,{contactData:i,open:!!u,anchorEl:u,onClose:()=>p(null),navigate:o,avatarImgUrl:c.imageUrl}),m&&t.jsx(s.Box,{display:"flex",alignItems:"center",justifyContent:"center",p:1,children:t.jsx(s.CircularProgress,{size:20})})]})}const $i=e=>"email"in e,Na=e=>e.entityType==="contact"&&e.inputType==="birthday",Pi=s.styled(s.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),Bn=s.styled(s.IconButton)({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}}),ft=e=>{const{title:a,value:n,isNotEditable:r,displayValue:o,baseUrl:i,spaceId:d,minWidth:c,onEntityUpdated:u}=e,p=he(),{setView:m}=Bi(),h=e.inputType??"text",[y,f]=l.useState(!1),[C,v]=l.useState(!1),x=l.useRef(null),[j,T]=l.useState(!1),[E,S]=l.useState(()=>e.entityType==="business"||typeof n=="string"?n:void 0);l.useEffect(()=>{const P=x.current;if(!P)return;const N=()=>{const Y=P.scrollWidth>P.clientWidth;T(re=>re===Y?re:Y)};if(N(),typeof ResizeObserver<"u"){let Y=0;const re=new ResizeObserver(()=>{if(typeof window>"u"){N();return}Y&&window.cancelAnimationFrame(Y),Y=window.requestAnimationFrame(()=>{N()})});return re.observe(P),()=>{typeof window<"u"&&Y&&window.cancelAnimationFrame(Y),re.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",N),()=>{window.removeEventListener("resize",N)}},[a]),l.useEffect(()=>{e.entityType==="business"?S(n):S(typeof n=="string"?n:void 0)},[n,e.entityType]);const I=()=>{if(e.entityType==="contact"&&h==="selectBusiness"){m("businessSelect");return}f(P=>!P)},A=P=>{S(P.target.value)},B=P=>{const N=P.target.value;S(N)},F=()=>{Na(e)&&e.contact.action.resetBirthDate(),f(!1)},k=async()=>{if(!e.constructUpdateObject){f(!1);return}if(e.entityType==="business"&&E===void 0){f(!1);return}v(!0);try{if(!i||!d)throw new Error("Missing baseUrl or spaceId for updateEntity");if(e.entityType==="contact"){let P=E===void 0?null:E;if(Na(e)){const q=Z(e.contact.field.birthDate);q.isValid()&&(P=q.toISOString())}const N=e.constructUpdateObject(P),Y=e.entityId??N?.id;if(!Y)throw new Error("Missing contactId for updateEntity");const re=await tt({baseUrl:i,spaceId:d,entityType:"contact",entityId:Y,body:N});u?.(re)}else{const P=e.constructUpdateObject(E),N=e.entityId??P?.id;if(!N)throw new Error("Missing businessId for updateEntity");const Y=await tt({baseUrl:i,spaceId:d,entityType:"business",entityId:N,body:P});u?.(Y)}}finally{v(!1),f(!1)}},$=typeof E=="string"?E:"",M=E instanceof Date?E.toISOString():typeof E=="string"?E:"",O=c??(e.entityType==="contact"?"45%":"200px"),W=e.options??[];return t.jsxs(s.Box,{className:"fadein col-5",sx:{display:"flex",backgroundColor:P=>P.palette.mode==="dark"?"1e1e1e":P.palette.background.default,flexDirection:"column",borderRadius:1,minWidth:O,"&:hover .edit-icon":{opacity:1}},children:[t.jsxs(s.Box,{display:"flex",position:"relative",minHeight:"25px",children:[j?t.jsx(s.Tooltip,{title:a,arrow:!0,children:t.jsx(s.Typography,{ref:x,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:y?1:0,color:P=>P.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a})}):t.jsx(s.Typography,{ref:x,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:y?1:0,color:P=>P.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a}),r?null:y?t.jsxs(t.Fragment,{children:[t.jsx(Bn,{size:"small",onClick:k,children:C?t.jsx(s.CircularProgress,{size:24}):t.jsx(pt,{})}),t.jsx(Bn,{size:"small",onClick:F,children:t.jsx(Za,{})})]}):t.jsx(Pi,{className:"edit-icon",size:"small",onClick:I,children:t.jsx(yt,{})})]}),t.jsx(s.Box,{width:y?"100%":"50%",position:"relative",children:y&&h==="text"?t.jsx(s.TextField,{value:M,onChange:A,variant:"standard",size:"small",sx:{width:"100%"}}):y&&(h==="select"||h==="selectMembers")?t.jsxs(s.Select,{value:$,onChange:B,variant:"standard",size:"small",sx:{width:"100%"},children:[e.entityType==="contact"?t.jsx(s.MenuItem,{value:"",children:p("conversations.contactDetails.contactInfo.emptySelection")}):null,W.map((P,N)=>t.jsx(s.MenuItem,{value:P.id,children:e.entityType==="contact"?P.name?.trim()||($i(P)?P.email:"")||"Sin nombre":P.name?.trim()||P.email||"Sin nombre"},N))]}):y&&Na(e)?t.jsx(Ai,{birthDate:e.contact.field.birthDate,setBirthDate:e.contact.action.setBirthDate,dateFormat:e.dateFormat}):!y&&e.entityType==="contact"&&h==="selectBusiness"&&e.businessId?t.jsx(Mi,{value:String(n??""),displayValue:String(o??""),businessId:e.businessId}):t.jsx(s.Typography,{variant:"body2",fontWeight:"400",sx:{padding:"2.5px 14px 8.5px 0px"},color:P=>P.palette.text.primary,children:o||typeof n=="string"&&n||"-"})})]})},Wt=e=>{const{title:a,value:n,isNotEditable:r,options:o=[],displayValue:i,constructUpdateObject:d,businessId:c,baseUrl:u,spaceId:p,contactId:m,onEntityUpdated:h}=e;if(e.inputType==="birthday")return t.jsx(ft,{entityType:"contact",entityId:m,title:a,value:n,isNotEditable:r,inputType:"birthday",options:o,displayValue:i,constructUpdateObject:d,contact:e.contact,businessId:c,baseUrl:u,spaceId:p,dateFormat:e.dateFormat,onEntityUpdated:h});const y=e.inputType??"text";return t.jsx(ft,{entityType:"contact",entityId:m,title:a,value:n,isNotEditable:r,inputType:y,options:o,displayValue:i,constructUpdateObject:d,businessId:c,baseUrl:u,spaceId:p,onEntityUpdated:h})},Ri=({nameKey:e,value:a,onChange:n,type:r,min:o,max:i})=>{const d=f=>{r===J.ContactField_type.NUMBER_ACCOUNTING||r===J.ContactField_type.NUMBER_DECIMAL||r===J.ContactField_type.NUMBER_CURRENCY||r===J.ContactField_type.CURRENCY?u(f):r===J.ContactField_type.NUMBER_INTEGER?p(f):(r===J.ContactField_type.LONGTEXT||r===J.ContactField_type.TEXT||r===J.ContactField_type.ADDRESS)&&c(f)},c=f=>{n(e,f.target.value)},u=f=>{const C=f.target.value.replace(/[^0-9.-]/g,"");if(C===""||C==="-"){n(e,C);return}const v=Number(C);Number.isNaN(v)||n(e,C)},p=f=>{const C=f.target.value;if(C===""){n(e,C);return}/^\d*$/.test(C)&&n(e,C)},m=()=>r===J.ContactField_type.CURRENCY||r===J.ContactField_type.NUMBER_ACCOUNTING||r===J.ContactField_type.NUMBER_DECIMAL||r===J.ContactField_type.NUMBER_INTEGER||r===J.ContactField_type.NUMBER_CURRENCY,h=()=>{if(!m()||a===""||a==null)return!1;const f=Number(a);return Number.isNaN(f)?!1:o!=null&&f<o||i!=null&&f>i},y=()=>{if(m()){if(o!=null&&i!=null)return`${o} - ${i}`;if(o!=null)return`min: ${o}`;if(i!=null)return`max: ${i}`}};return t.jsx(s.TextField,{size:"small",variant:"standard",value:a,onChange:d,error:h(),helperText:y(),inputProps:{pattern:"[0-9]*"},multiline:r===J.ContactField_type.LONGTEXT,rows:r===J.ContactField_type.LONGTEXT?4:1,sx:{width:"100%"}})},Ui=({value:e,handleChange:a,dateFormat:n})=>{const r=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Rt.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Ut,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Qa.DatePicker,{value:e?Z(e):null,onChange:o=>a(o),format:r,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},Ni=({handleChange:e,value:a,options:n})=>{const r=he();return t.jsx(s.FormControl,{className:"fadein",sx:{width:"100%"},children:t.jsxs(s.Select,{value:a,onChange:o=>e(o.target.value),size:"small",variant:"standard",children:[t.jsx(s.MenuItem,{value:"",children:r("global.noValue")}),n.map((o,i)=>t.jsx(s.MenuItem,{value:o,children:o},i))]})})},Li=({value:e,handleChange:a,userTimeFormat:n})=>{const r=n==="24"?"HH:mm":"hh:mm";return t.jsx(Rt.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Ut,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Vr.TimePicker,{value:e?Z(e):null,onChange:o=>a(o),format:r,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},zi=({value:e,handleChange:a,userTimeFormat:n})=>{const r=he(),o=[Z().set("hour",0).set("minute",0),Z().set("hour",0).set("minute",0)],i=n==="24"?"HH:mm":"hh:mm";return t.jsx(Rt.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Ut,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Je.MultiInputTimeRangeField,{slotProps:{textField:({position:d})=>({label:r(d==="start"?"contactEdit.from":"contactEdit.to"),size:"small",variant:"standard",inputProps:{placeholder:i}})},value:e||o,onChange:d=>a(d),format:i})})})},Oi=({value:e,handleChange:a,userDateFormat:n})=>{const r=he(),o=[Z(),Z()],i=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Rt.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Ut,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Je.MultiInputDateRangeField,{slotProps:{textField:({position:d})=>({label:r(d==="start"?"contactEdit.from":"contactEdit.to"),size:"small",sx:{width:"100%"},variant:"standard",inputProps:{placeholder:i}})},value:e||o,onChange:d=>a(d),format:i})})})},ca=({label:e,description:a})=>a?t.jsxs(s.Box,{component:"span",sx:{display:"inline-flex",alignItems:"center",gap:.5},children:[e,t.jsx(s.Tooltip,{title:a,placement:"top",arrow:!0,children:t.jsx(Hr,{sx:{fontSize:16,mt:"-2px"}})})]}):t.jsx(t.Fragment,{children:e}),_i=({nameKey:e,name:a,value:n,onChange:r,required:o,description:i,placeholder:d})=>{const[c,u]=l.useState(""),p=Array.isArray(n)?n:[],m=()=>{const y=c.trim();y&&(r(e,[...p,y]),u(""))},h=y=>{r(e,p.filter((f,C)=>C!==y))};return t.jsxs(s.Box,{sx:{width:"100%",mt:"10px"},children:[t.jsx(s.TextField,{size:"small",variant:"standard",label:t.jsx(ca,{label:a??e,description:i}),value:c,placeholder:d||"",fullWidth:!0,required:o&&p.length===0,InputLabelProps:{shrink:!0},onChange:y=>u(y.target.value),onKeyDown:y=>{y.key==="Enter"&&(y.preventDefault(),m())},InputProps:{endAdornment:t.jsx(s.IconButton,{size:"small",onClick:m,disabled:!c.trim(),children:t.jsx(sa,{fontSize:"small"})})}}),p.length>0&&t.jsx(s.Box,{sx:{display:"flex",flexWrap:"wrap",gap:.5,mt:.5},children:p.map((y,f)=>t.jsx(s.Chip,{label:y,size:"small",onDelete:()=>h(f)},f))})]})},La=e=>e.reduce((a,n)=>({...a,[n.key]:""}),{}),Wi=({nameKey:e,name:a,value:n,schema:r,onChange:o,required:i,description:d})=>{const c=he(),u=Array.isArray(n)?n:[],p=r??[],[m,h]=l.useState(La(p)),[y,f]=l.useState(!1),[C,v]=l.useState(null),[x,j]=l.useState({}),T=k=>{o(e,u.filter(($,M)=>M!==k))},E=()=>{o(e,[...u,m]),h(La(p)),f(!1)},S=()=>{h(La(p)),f(!1)},I=k=>{v(k),j({...u[k]}),f(!1)},A=()=>{const k=u.map(($,M)=>M===C?x:$);o(e,k),v(null),j({})},B=()=>{v(null),j({})},F=(k,$=!1)=>{const M=$?x:m,O=$?j:h;return k.type===J.ContactField_Item_Type.OPTIONS&&k.options?.length?t.jsxs(s.FormControl,{size:"small",fullWidth:!0,variant:"standard",children:[t.jsx(s.InputLabel,{shrink:!0,children:k.label}),t.jsx(s.Select,{label:k.label,variant:"standard",value:M[k.key]??"",onChange:W=>O(P=>({...P,[k.key]:W.target.value})),children:k.options.map(W=>t.jsx(s.MenuItem,{value:W,children:W},W))})]},k.key):t.jsx(s.TextField,{size:"small",fullWidth:!0,label:k.label,variant:"standard",required:k.required,InputLabelProps:{shrink:!0},value:M[k.key]??"",type:k.type===J.ContactField_Item_Type.NUMBER_INTEGER||k.type===J.ContactField_Item_Type.NUMBER_CURRENCY?"number":"text",onChange:W=>O(P=>({...P,[k.key]:W.target.value}))},k.key)};return t.jsxs(s.Box,{sx:{width:"100%",display:"flex",flexDirection:"column",gap:1},children:[t.jsxs(s.Typography,{variant:"caption",sx:{color:"text.secondary",display:"inline-flex",alignItems:"center",gap:.5},children:[t.jsx(ca,{label:a??e,description:d}),i&&u.length===0?" *":""]}),u.map((k,$)=>C===$?t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",gap:1,mb:1,p:1,border:"1px solid",borderColor:"primary.main",borderRadius:1},children:[p.map(M=>F(M,!0)),t.jsxs(s.Box,{sx:{display:"flex",gap:1,justifyContent:"flex-end"},children:[t.jsx(s.Button,{size:"small",onClick:B,children:c("global.cancel")}),t.jsx(s.Button,{size:"small",variant:"contained",onClick:A,children:c("global.accept")})]})]},$):t.jsx(s.Card,{variant:"outlined",sx:{mb:1,position:"relative"},children:t.jsxs(s.CardContent,{sx:{p:1,"&:last-child":{pb:1},pr:8},children:[t.jsxs(s.Box,{sx:{position:"absolute",top:4,right:4,display:"flex",gap:.5},children:[t.jsx(s.IconButton,{size:"small",onClick:()=>I($),children:t.jsx(yt,{fontSize:"small"})}),t.jsx(s.IconButton,{size:"small",onClick:()=>T($),children:t.jsx($t,{fontSize:"small"})})]}),p.map(M=>t.jsxs(s.Typography,{variant:"body2",sx:{color:"text.primary",fontSize:12},children:[t.jsxs("strong",{children:[M.label,":"]})," ",k[M.key]??"\u2014"]},M.key))]})},$)),!y&&C===null&&t.jsx(s.Button,{size:"small",startIcon:t.jsx(sa,{}),onClick:()=>f(!0),variant:"outlined",sx:{alignSelf:"end"},children:c("global.add")}),y&&t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",gap:1,p:1,border:"1px solid",borderColor:"divider",borderRadius:1},children:[p.map(k=>F(k,!1)),t.jsxs(s.Box,{sx:{display:"flex",gap:1,justifyContent:"flex-end"},children:[t.jsx(s.Button,{size:"small",onClick:S,children:c("global.cancel")}),t.jsx(s.Button,{size:"small",variant:"contained",onClick:E,children:c("global.accept")})]})]})]})},Vi=s.styled(s.IconButton)(()=>({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"})),Mn=s.styled(s.IconButton)(()=>({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}})),Hi=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",borderRadius:e.shape.borderRadius,minWidth:"45%","&:hover .edit-icon":{opacity:1}})),$n=s.styled(s.Typography)(({theme:e})=>({fontWeight:600,fontSize:"0.875rem",alignSelf:"center",color:e.palette.text.primary,letterSpacing:-.5,padding:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:0})),za=s.styled(s.Typography)(({theme:e})=>({fontWeight:400,fontSize:"0.875rem",padding:"2.5px 14px 8.5px 0px",color:e.palette.text.primary,wordWrap:"break-word",maxHeight:"80px",overflow:"auto",whiteSpace:"break-spaces"})),Pn=({property:e,entity:a,entityType:n,entityId:r,customContactFields:o,userTrii:i,baseUrl:d,spaceId:c,onEntityUpdated:u})=>{const{customProperties:p}=a.field,{setCustomProperties:m}=a.action,[h,y]=l.useState(!1),[f,C]=l.useState(!1),v=l.useRef(null),[x,j]=l.useState(!1),T=(i?.regCon_dateFormat||"YYYY/MM/DD").toUpperCase(),E=i?.regCon_timeFormat||"24",S=w=>w===J.ContactField_type.NUMBER_INTEGER||w===J.ContactField_type.NUMBER_DECIMAL||w===J.ContactField_type.NUMBER_CURRENCY||w===J.ContactField_type.NUMBER_ACCOUNTING||w===J.ContactField_type.CURRENCY,I=(w,D)=>w.toLowerCase()==="dni"?!0:S(D),A=(w,D,z)=>{if(z===""||z===null||z===void 0)return null;if(I(w,D)){const H=Number(z);return Number.isNaN(H)?z:H}return z},B=w=>{if(Array.isArray(w))return w;if(typeof w=="string"&&w.trim().startsWith("["))try{const D=JSON.parse(w);return Array.isArray(D)?D:[]}catch{return[]}return[]},F=()=>y(w=>!w),k=()=>{y(!1),a.action.resetCustomProperty(e.nameKey)},$=async()=>{if(!d||!c||!r)return;C(!0);const w=p.find(ue=>ue.nameKey===e.nameKey)||e,{nameKey:D,value:z}=w,H=o.find(ue=>ue.nameKey===D)?.type??w.type;let K;if(H===J.ContactField_type.TIME){const ue=Z(z);ue.isValid()?K=ue.format(E==="24"?"HH:mm":"hh:mm"):K=z}else if(H===J.ContactField_type.DATE){const ue=Z(z);ue.isValid()?K=ue.toISOString():K=z}else H===J.ContactField_type.LIST_SINGLE||H===J.ContactField_type.LIST_OBJECT?K=Array.isArray(z)?JSON.stringify(z):z:K=A(D,H,z);const ye={properties:[{nameKey:D,type:H,value:K}]};try{const ue=await tt({baseUrl:d,spaceId:c,entityType:n,entityId:r,body:ye}),xe=p.map(ae=>ae.nameKey===D?{...ae,type:H,value:K}:ae);m(xe),u?.(ue)}finally{C(!1),y(!1)}},M=w=>o.find(D=>D.nameKey===w)?.name||w;l.useEffect(()=>{const w=v.current;if(!w)return;const D=()=>{const z=w.scrollWidth>w.clientWidth;j(H=>H===z?H:z)};if(D(),typeof ResizeObserver<"u"){let z=0;const H=new ResizeObserver(()=>{if(typeof window>"u"){D();return}z&&window.cancelAnimationFrame(z),z=window.requestAnimationFrame(()=>{D()})});return H.observe(w),()=>{typeof window<"u"&&z&&window.cancelAnimationFrame(z),H.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",D),()=>{window.removeEventListener("resize",D)}},[o,e.nameKey]);const O=(w,D)=>{const z=e.type===J.ContactField_type.DATERANGE?Array.isArray(D)&&D[0]&&D[1]?`${Z(D[0]).toISOString()} - ${Z(D[1]).toISOString()}`:"":e.type===J.ContactField_type.DATE?Z(D).isValid()?Z(D).toISOString():"Invalid Date":e.type===J.ContactField_type.TIME?Z(D).isValid()?Z(D).toISOString():"Invalid Time":D,H=p.map(K=>K.nameKey===w?{...K,value:z}:K);m(H)},{type:W,nameKey:P,value:N}=e,Y=w=>w==null?!1:typeof w=="string"?w.trim().length>0:!0,re=(o.find(w=>w.nameKey===e.nameKey)?.requiredField??!1)&&!Y(N),q=[J.ContactField_type.NUMBER_INTEGER,J.ContactField_type.NUMBER_DECIMAL,J.ContactField_type.NUMBER_CURRENCY,J.ContactField_type.NUMBER_ACCOUNTING,J.ContactField_type.CURRENCY],G=()=>{const w=o.find(K=>K.nameKey===P);if(!w)return!1;const{min:D,max:z}=w;if(D==null&&z==null||!q.includes(W)||N===""||N==null)return!1;const H=Number(N);return Number.isNaN(H)?!1:D!=null&&H<D||z!=null&&H>z},L=()=>W===J.ContactField_type.DATE?t.jsx(Ui,{value:N?Z(N):null,handleChange:w=>O(P,w?.toDate()),dateFormat:T}):W===J.ContactField_type.TIME?t.jsx(Li,{value:e?.valueDate?Z(e.valueDate):N?Z(N):null,handleChange:w=>O(P,w),userTimeFormat:E}):W===J.ContactField_type.DATERANGE?t.jsx(Oi,{value:N&&typeof N=="string"&&N.includes(" - ")?[Z(N.split(" - ")[0]),Z(N.split(" - ")[1])]:null,handleChange:w=>O(P,[w[0]?.toDate?.(),w[1]?.toDate?.()]),userDateFormat:T}):W===J.ContactField_type.TIMERANGE?t.jsx(zi,{value:Array.isArray(N)&&N.length===2?[Z(N[0]),Z(N[1])]:null,handleChange:w=>O(P,[w[0]?.toDate?.(),w[1]?.toDate?.()]),userTimeFormat:E}):W===J.ContactField_type.OPTIONS?t.jsx(Ni,{value:typeof N=="string"?N:"",handleChange:w=>O(P,w),options:o.find(w=>w.nameKey===P)?.typeOptions??[]}):W===J.ContactField_type.LIST_SINGLE?t.jsx(_i,{nameKey:P,name:M(P),value:B(N),onChange:O,description:o.find(w=>w.nameKey===P)?.description}):W===J.ContactField_type.LIST_OBJECT?t.jsx(Wi,{nameKey:P,name:M(P),value:B(N),schema:o.find(w=>w.nameKey===P)?.listItemSchema??[],onChange:O,description:o.find(w=>w.nameKey===P)?.description}):t.jsx(Ri,{type:W,nameKey:P,value:N,onChange:O,min:o.find(w=>w.nameKey===P)?.min,max:o.find(w=>w.nameKey===P)?.max});return t.jsxs(Hi,{className:`fadein ${e.type===J.ContactField_type.LONGTEXT||e.type===J.ContactField_type.LIST_OBJECT?"col-12":"col-5"}`,children:[t.jsxs(s.Box,{display:"flex",position:"relative",minHeight:"25px",alignItems:"center",children:[x?t.jsx(s.Tooltip,{title:M(e.nameKey),arrow:!0,children:t.jsxs($n,{ref:v,flexGrow:h?1:0,noWrap:!0,children:[t.jsx(ca,{label:M(e.nameKey),description:o.find(w=>w.nameKey===e.nameKey)?.description}),re&&t.jsx(s.Box,{component:"span",sx:{color:"error.main",ml:.5},children:"*"})]})}):t.jsxs($n,{ref:v,flexGrow:h?1:0,noWrap:!0,children:[t.jsx(ca,{label:M(e.nameKey),description:o.find(w=>w.nameKey===e.nameKey)?.description}),re&&t.jsx(s.Box,{component:"span",sx:{color:"error.main",ml:.5},children:"*"})]}),h?t.jsxs(t.Fragment,{children:[t.jsx(Mn,{size:"small",onClick:$,disabled:f||G(),children:f?t.jsx(s.CircularProgress,{size:24}):t.jsx(pt,{})}),t.jsx(Mn,{size:"small",onClick:k,children:t.jsx(Za,{})})]}):t.jsx(Vi,{className:"edit-icon",size:"small",onClick:F,children:t.jsx(yt,{})})]}),t.jsx(s.Box,{width:h||e.type===J.ContactField_type.LONGTEXT||e.type===J.ContactField_type.LIST_OBJECT?"100%":"50%",position:"relative",children:h?f?null:L():e.type===J.ContactField_type.LIST_SINGLE?(()=>{const w=B(e.value);return w.length>0?t.jsx(s.Box,{sx:{display:"flex",flexWrap:"wrap",gap:.5,py:"2.5px"},children:w.map((D,z)=>t.jsx(s.Chip,{label:D,size:"small"},z))}):t.jsx(za,{children:"-"})})():e.type===J.ContactField_type.LIST_OBJECT?(()=>{const w=B(e.value),D=o.find(z=>z.nameKey===P)?.listItemSchema??[];return w.length>0?t.jsx(s.Box,{sx:{pt:"2.5px",pb:"8.5px"},children:w.map((z,H)=>t.jsx(s.Card,{variant:"outlined",sx:{mb:1},children:t.jsx(s.CardContent,{sx:{p:1,"&:last-child":{pb:1}},children:D.map(K=>t.jsx(s.TextField,{size:"small",variant:"standard",label:K.label,value:z[K.key]??"",InputProps:{readOnly:!0,disableUnderline:!0},InputLabelProps:{shrink:!0},fullWidth:!0,sx:{mb:.5,"& .MuiInputBase-input":{cursor:"default"}}},K.key))})},H))}):t.jsx(za,{children:"-"})})():t.jsx(za,{children:Y(e?.value)?e.type===J.ContactField_type.DATERANGE?(()=>{if(typeof e.value=="string"){const w=e.value.split(" - ");if(w.length===2){const[D,z]=w,H=Z(D),K=Z(z);return`${H.isValid()?H.format(T):"-"} - ${K.isValid()?K.format(T):"-"}`}}else if(Array.isArray(e.value)&&e.value.length===2)return`${Z(e.value[0]).format(T)} - ${Z(e.value[1]).format(T)}`;return`${e.value}`})():e.type===J.ContactField_type.TIMERANGE?Array.isArray(e.value)&&e.value.length===2?`${Z(e.value[0]).format(E==="24"?"HH:mm":"hh:mm")} - ${Z(e.value[1]).format(E==="24"?"HH:mm":"hh:mm")}`:`${e.value}`:e.type===J.ContactField_type.TIME?(()=>{try{const w=e.valueDate||e.value;return`${Z(w).format(E==="24"?"HH:mm":"hh:mm A")}`}catch{return`${e.value}`}})():e.type===J.ContactField_type.DATE?(()=>{try{return`${Z(e.value).format(T)}`}catch{return`${e.value}`}})():`${e?.value}`:null})})]})},Gi=e=>{const{dateFormat:a,entityData:n,customContactFields:r,baseUrl:o,spaceId:i,currentUser:d,onEntityUpdated:c}=e,u=he(),{entityType:p,editEntity:m}=lt(),h=et();if(p!=="contact")return null;const[y,f]=l.useState([]),[C,v]=l.useState(null),[x,j]=l.useState(null),[T,E]=l.useState(null),S=m;l.useEffect(()=>{if(!h)return;const k=new AbortController;return h.fetchUsers({signal:k.signal}).then($=>{k.signal.aborted||f($??[])}).catch(()=>{k.signal.aborted||f([])}),()=>{k.abort()}},[h]),l.useEffect(()=>{const k=new AbortController,$=async M=>{if(!M||!h)return null;try{const O=await h.fetchUserTriiById({userId:M,signal:k.signal});return O?.display_name||O?.email||null}catch{return null}};return(async()=>{const M=Tt({userId:n.owner,users:y,currentUser:d})??(n.owner?await $(n.owner):null),O=Tt({userId:n.createdBy??void 0,users:y,currentUser:d})??(n.createdBy?await $(n.createdBy):null),W=Tt({userId:n.updatedBy??void 0,users:y,currentUser:d})??(n.updatedBy?await $(n.updatedBy):null);k.signal.aborted||(v(M),E(O),j(W))})(),()=>{k.abort()}},[h,n,y,d]);const I=(a||"YYYY/MM/DD").toUpperCase(),A=S.field.birthDate,B=A?.isValid()?A.format(I):null,F=k=>{const $=new Date;let M=$.getFullYear()-k.getFullYear();const O=$.getMonth()-k.getMonth();return(O<0||O===0&&$.getDate()<k.getDate())&&M--,M};return t.jsx(zt,{title:"General",children:t.jsxs(Tn,{children:[t.jsx(Wt,{title:u("conversations.contactDetails.contactOwner"),displayValue:C||"-",value:n.owner,inputType:"select",options:y,constructUpdateObject:k=>({owner:typeof k=="string"?k:""}),contact:S,baseUrl:o,spaceId:i,contactId:n.id,onEntityUpdated:c}),t.jsx(Wt,{title:u("conversations.contactDetails.business"),displayValue:n.businessName||"-",value:n.businessId,inputType:"selectBusiness",businessId:n.businessId,contact:S,baseUrl:o,spaceId:i,contactId:n.id,onEntityUpdated:c}),t.jsx(Wt,{title:u("conversations.contactDetails.createdBy"),value:T||"-",isNotEditable:!0,contact:S,baseUrl:o,spaceId:i,contactId:n.id}),t.jsx(Wt,{title:u("conversations.contactDetails.modifiedBy"),value:x||"-",isNotEditable:!0,contact:S,baseUrl:o,spaceId:i,contactId:n.id}),t.jsx(Wt,{title:u("global.birthdate"),inputType:"birthday",displayValue:A?`${B} (${F(A.toDate())})`:"-",value:A?A.toISOString():"",constructUpdateObject:k=>({birthDate:k}),contact:S,baseUrl:o,spaceId:i,contactId:n.id,dateFormat:a,onEntityUpdated:c}),S.field.customProperties.map(k=>t.jsx(Pn,{property:k,entity:S,entityType:"contact",entityId:String(n.id),customContactFields:r,userTrii:d,baseUrl:o,spaceId:i,onEntityUpdated:c},k.nameKey))]})})},Oa=({title:e,value:a,isNotEditable:n,inputType:r="text",options:o=[],displayValue:i,constructUpdateObject:d,baseUrl:c,spaceId:u,businessId:p,onEntityUpdated:m})=>t.jsx(ft,{entityType:"business",entityId:p,title:e,value:a,isNotEditable:n,inputType:r,options:o,displayValue:i,constructUpdateObject:d,baseUrl:c,spaceId:u,onEntityUpdated:m}),qi=e=>{const a=he(),{entityData:n,customContactFields:r,baseUrl:o,spaceId:i,currentUser:d,onEntityUpdated:c}=e,{entityType:u,editEntity:p}=lt(),m=et();if(u!=="business")return null;const[h,y]=l.useState([]),[f,C]=l.useState(null),[v,x]=l.useState(null),[j,T]=l.useState(null),E=p;return l.useEffect(()=>{if(!m)return;const S=new AbortController;return m.fetchUsers({signal:S.signal}).then(I=>{S.signal.aborted||y(I??[])}).catch(()=>{S.signal.aborted||y([])}),()=>{S.abort()}},[m]),l.useEffect(()=>{const S=new AbortController,I=async A=>{if(!A||!m)return null;try{const B=await m.fetchUserTriiById({userId:A,signal:S.signal});return B?.display_name||B?.email||null}catch{return null}};return(async()=>{const A=Tt({userId:n.owner,users:h,currentUser:d})??(n.owner?await I(n.owner):null),B=Tt({userId:n.createdBy??void 0,users:h,currentUser:d})??(n.createdBy?await I(n.createdBy):null),F=Tt({userId:n.updatedBy??void 0,users:h,currentUser:d})??(n.updatedBy?await I(n.updatedBy):null);S.signal.aborted||(C(A),T(B),x(F))})(),()=>{S.abort()}},[m,n,h,d]),t.jsx(zt,{title:"General",children:t.jsxs(Tn,{children:[t.jsx(Oa,{title:a("conversations.businessDetails.businessOwner"),value:n.owner,displayValue:f||"-",inputType:"select",options:h,constructUpdateObject:S=>({owner:typeof S=="string"?S:""}),baseUrl:o,spaceId:i,businessId:n.id,onEntityUpdated:c}),t.jsx(Oa,{title:a("conversations.contactDetails.createdBy"),value:j||"-",isNotEditable:!0}),t.jsx(Oa,{title:a("conversations.contactDetails.modifiedBy"),value:v||"-",isNotEditable:!0}),E.field.customProperties.map(S=>t.jsx(Pn,{property:S,entity:E,entityType:"business",entityId:String(n.id),customContactFields:r,userTrii:d,baseUrl:o,spaceId:i,onEntityUpdated:c},S.nameKey))]})})},Yi=e=>{const{entityType:a,entityData:n}=e;return l.useMemo(()=>a==="contact"||a==="business"?a:"contact",[a])==="contact"?t.jsx(Gi,{...e,entityData:n,entityType:"contact"}):t.jsx(qi,{...e,entityData:n,entityType:"business"})},Ki=()=>{const[e,a]=l.useState(!1),[n,r]=l.useState("");return{isOpen:e,title:n,openModal:o=>{r(o),a(!0)},closeModal:()=>{a(!1),r("")}}},Ji=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",justifyContent:"space-between",padding:e.spacing(1),backgroundColor:e.palette.background.dropdownMenu,borderRadius:e.shape.borderRadius,color:e.palette.text.primary,width:"50%",paddingBottom:"3px",minHeight:"50px",position:"relative"})),Xi=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),overflow:"hidden",maxWidth:"80%"})),Qi=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),Zi=Te.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",alignItems:"flex-start",gap:e.spacing(.5),overflow:"hidden",flexFlow:"nowrap",flexWrap:"wrap",marginTop:"-5px"})),el=Te.styled(s.Avatar)(({})=>({width:32,height:32,cursor:"pointer"})),_a=Te.styled(s.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),tl=Te.styled(_a)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),al=Te.styled(_a)(({})=>({fontSize:14,fontWeight:500})),nl=Te.styled(_a)(({})=>({fontSize:14,fontWeight:500})),rl=({item:e})=>{const a=e.profileUrl,{imageUrl:n}=Ot({initialImageUrl:a});return t.jsx(t.Fragment,{children:t.jsxs(Ji,{children:[t.jsx(Xi,{children:t.jsxs(Zi,{children:[t.jsx(s.Tooltip,{title:e.address||"",arrow:!0,children:t.jsx(al,{children:e.address})}),t.jsx(s.Tooltip,{title:e.profileName||"",arrow:!0,children:t.jsx(nl,{sx:{marginTop:"-10px",marginLeft:"5px",fontSize:"10px"},children:e.profileName})}),t.jsx(s.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(tl,{children:e.note})})]})}),t.jsxs(Qi,{children:[a!==""&&t.jsx(el,{src:n,alt:e.profileName,style:{cursor:"pointer"},children:e?.profileName?.charAt(0).toUpperCase()}),t.jsx(s.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:t.jsx(s.IconButton,{size:"small",sx:{marginTop:"-5px",padding:0},children:e.isFavorite?t.jsx(Be.Star,{sx:{color:"#fcac34"}}):t.jsx(Be.StarBorder,{sx:{color:"#fcac34"}})})})]})]})})},Wa=en.PhoneNumberUtil.getInstance(),sl=e=>{if(!e||!e.trim())return e;try{const a=Wa.parse(e,void 0);return Wa.isValidNumber(a)?Wa.format(a,en.PhoneNumberFormat.INTERNATIONAL):e}catch{return e}},ol=Te.styled(s.IconButton)(({theme:e})=>({padding:e.spacing(.5),marginTop:"-5px"})),il=Te.styled(Gr)(({theme:e})=>({height:16,width:16,color:e.palette.secondary.main})),ll=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",justifyContent:"space-between",padding:e.spacing(1),backgroundColor:e.palette.background.dropdownMenu,borderRadius:e.shape.borderRadius,color:e.palette.text.primary,width:"50%",paddingBottom:"3px",minHeight:"50px",position:"relative"})),dl=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),maxWidth:"80%"})),cl=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),ul=Te.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",alignItems:"flex-start",gap:e.spacing(.5),overflow:"hidden",flexFlow:"nowrap",flexWrap:"wrap",marginTop:"-5px"})),Rn=Te.styled(s.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),pl=Te.styled(Rn)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),fl=Te.styled(Rn)(({})=>({fontSize:14,fontWeight:500})),gl=({item:e})=>{const a=()=>{const r=e.address;if(!r)return;const o=new CustomEvent("call-contact-header",{detail:{phoneAddress:r}});window.dispatchEvent(o)},n=l.useMemo(()=>sl(e.address||""),[e.address]);return t.jsx(t.Fragment,{children:t.jsxs(ll,{children:[t.jsxs(dl,{children:[t.jsx(ol,{onClick:a,color:"primary",size:"small",children:t.jsx(il,{})}),t.jsxs(ul,{children:[t.jsx(s.Tooltip,{title:n||"",arrow:!0,children:t.jsx(fl,{children:n})}),t.jsx(s.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(pl,{children:e.note})})]})]}),t.jsx(cl,{children:t.jsx(s.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:t.jsx(s.IconButton,{size:"small",sx:{marginTop:"-5px",padding:0},children:e.isFavorite?t.jsx(Be.Star,{sx:{color:"#fcac34"}}):t.jsx(Be.StarBorder,{sx:{color:"#fcac34"}})})})})]})})},ml=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",padding:e.spacing(1,0,2,0),width:"100%",gap:e.spacing(1),"&:hover .edit-icon":{opacity:1}})),hl=s.styled(s.Typography)(({})=>({letterSpacing:-.5,fontSize:14})),yl=s.styled(s.Box)(({})=>({display:"flex",alignItems:"center"})),xl=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",gap:e.spacing(1),width:"100%"})),bl=s.styled(s.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),vl=({title:e,methodItems:a,isPhone:n,handleEdit:r,owner:o})=>t.jsxs(ml,{children:[t.jsxs(yl,{children:[t.jsx(hl,{children:e}),t.jsx(bl,{className:"edit-icon",size:"small",onClick:r,children:t.jsx(yt,{fontSize:"small",sx:{color:i=>i.palette.secondary.main}})})]}),t.jsx(xl,{children:a.map((i,d)=>n?t.jsx(gl,{item:i},d):t.jsx(rl,{item:i,owner:o},d))})]}),Cl=({title:e})=>t.jsx(s.Box,{children:t.jsx(s.Typography,{variant:"subtitle2",children:e})}),Sl={container:{display:"flex",justifyContent:"space-between",alignItems:"center"}},ua=({title:e,handleAdd:a})=>{const n=he();return t.jsxs(s.Box,{sx:Sl.container,children:[t.jsx(s.Typography,{variant:"subtitle2",children:e}),t.jsx(s.Button,{onClick:a,size:"small",startIcon:t.jsx(sa,{}),variant:"text",color:"primary",children:n("global.add")})]})},jl={container:{border:"1px solid lightgray",borderRadius:1,p:2,width:"100%",display:"flex",flexDirection:"column",gap:1}},Vt=({children:e})=>t.jsx(s.Box,{sx:jl.container,children:e}),Un={container:{display:"flex",width:"50%",alignItems:"center",justifyContent:"end"},noteTextField:{width:"100%",marginRight:"15px"}},wl=({onDelete:e,addressData:a,handleLinkAccountSave:n,checked:r,onCheckContactAddress:o})=>{const i=he(),[d,c]=l.useState(null),u=!!d,{channelType:p,address:m}=a,[h,y]=l.useState(!1),[f,C]=l.useState(null),[v,x]=l.useState(!1),j=F=>{c(F.currentTarget)},T=()=>{c(null)},E=()=>{x(!1)},S=()=>{e(),T()},I=async()=>{y(!0);try{if(!o)return;const F=await o(13);if(!F)return;C(F),x(!0)}catch(F){console.error("Error verifying WhatsApp account:",F)}finally{y(!1)}T()},A=async()=>{y(!0);try{if(!o)return;const F=await o(21);if(!F)return;C(F),x(!0)}catch(F){console.error("Error verifying RCS account:",F)}finally{y(!1)}T()},B=async()=>{await n(),x(!1)};return t.jsxs(s.Box,{children:[t.jsx(s.IconButton,{"aria-controls":u?"basic-menu":void 0,"aria-haspopup":"true","aria-expanded":u?"true":void 0,onClick:j,children:t.jsx(qr,{})}),t.jsxs(s.Menu,{id:"basic-menu",anchorEl:d,open:u,onClose:T,MenuListProps:{"aria-labelledby":"basic-button"},children:[t.jsxs(s.MenuItem,{onClick:S,children:[t.jsx(s.ListItemIcon,{children:t.jsx($t,{color:"error"})}),t.jsx(s.ListItemText,{children:i("global.delete")})]}),p===5&&t.jsxs(s.MenuItem,{onClick:I,disabled:!r,children:[t.jsx(s.ListItemIcon,{children:h?t.jsx(s.CircularProgress,{size:24}):t.jsx(Yr,{sx:{color:"green"}})}),t.jsx(s.ListItemText,{children:i("optionsMenu.verifyWspAccount")})]}),p===21&&t.jsxs(s.MenuItem,{onClick:A,disabled:!r,children:[t.jsx(s.ListItemIcon,{children:h?t.jsx(s.CircularProgress,{size:24}):t.jsx(Kr,{})}),t.jsx(s.ListItemText,{children:i("optionsMenu.verifyRCSAccount")})]})]}),t.jsx(s.Modal,{open:v,onClose:E,"aria-labelledby":"modal-modal-title","aria-describedby":"modal-modal-description",children:t.jsx(s.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:400,boxShadow:24,p:4,backgroundColor:F=>F.palette.background.default},children:f?.success?t.jsxs(t.Fragment,{children:[t.jsxs(s.Typography,{id:"modal-modal-title",variant:"h6",component:"h2",children:[i("optionsMenu.wspAccountFound")," ",m]}),t.jsx(s.Typography,{id:"modal-modal-description",sx:{mt:2},children:i("optionsMenu.wantToLinkContact")}),t.jsxs(s.Box,{sx:{marginTop:"10px"},children:[t.jsx(s.Button,{onClick:B,color:"primary",children:i("optionsMenu.yesLink")}),t.jsx(s.Button,{onClick:E,color:"secondary",children:"No"})]})]}):t.jsxs(s.Box,{sx:{position:"relative"},children:[t.jsxs(s.Typography,{id:"modal-modal-title",variant:"h6",component:"h2",children:[i("optionsMenu.noWspAccountFound")," ",m]}),t.jsx(s.Button,{onClick:E,color:"secondary",sx:{position:"absolute",bottom:-25,right:0},children:i("global.cancel")})]})})})]})},Ht=e=>{const a=he(),n=et(),{editEntity:r,entityId:o}=lt(),[i,d]=l.useState(!1),c=e.checked??!0,u=e.entityId??o,{note:p,channelType:m,id:h,address:y}=e.addressData,f=!e.addressData.hasOwnProperty("isSaved"),C=e.replaceAddress??r.action.replaceAddress,v=e.addWhatsappVerified||(typeof r.action?.addWhatsappVerified=="function"?r.action.addWhatsappVerified:void 0),x=async S=>{if(!n||!u)return null;const I=await n.setContactAddress({data:{address:y,contactId:u,type:S}});return C(h,I),I},j=async()=>{if(!n||!u)return;const S=await n.updateContactAddress({data:{contactAddressId:h,contactId:u,note:p??""}});C(h,S)},T=async()=>{d(!0),f?(await j(),d(!1)):await x(m)&&d(!1)},E=async()=>{d(!0);const S=await x(13);S&&v&&v(S),S&&d(!1)};return t.jsxs(s.Box,{sx:{...Un.container},children:[f&&t.jsx(s.TextField,{size:"small",label:a("global.note"),variant:"outlined",onChange:S=>e.handleNoteFieldChange(S,h,m),value:p,fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",sx:Un.noteTextField}),t.jsx(s.IconButton,{onClick:T,children:i?t.jsx(s.CircularProgress,{size:24}):t.jsx(pt,{color:"primary"})}),t.jsx(wl,{onDelete:()=>e.handleDeleteAddress(h,m),addressData:e.addressData,handleLinkAccountSave:E,checked:c&&!i,onCheckContactAddress:async S=>{if(!n)return null;try{return await n.checkContactAddress({data:{address:y,type:S}})}catch{return null}}})]})},Tl={container:{display:"flex",gap:"100px",alignItems:"center"}},Gt=({children:e})=>t.jsx(s.Box,{sx:Tl.container,children:e}),Il={container:{width:"100%",borderRadius:1,px:1.5,py:2,display:"flex",flexDirection:"column",gap:2,overflow:"auto",maxHeight:"calc(100vh - 250px)"}},qt=({children:e})=>t.jsx(s.Box,{sx:{...Il.container},children:e}),kl=({status:e})=>{switch(e){case"idle":return null;case"loading":return t.jsx(Qr,{size:20});case"available":return t.jsx(Jr,{style:{height:27,width:27},color:"success"});case"unavailable":return t.jsx(Xr,{style:{height:27,width:27},color:"error"});default:return null}},Nn=({status:e,text:a})=>t.jsxs(Zr,{position:"end",children:[a?t.jsx(es,{marginRight:.5,children:a}):null,t.jsx("div",{style:{width:30,display:"flex",justifyContent:"center"},children:t.jsx(kl,{status:e})})]}),El={code:{width:"60%",color:"gray"}},Al=({data:e,editEntity:a})=>{const n=a.action;return t.jsx(Vt,{children:t.jsxs(Gt,{children:[t.jsx(s.Typography,{sx:El.code,variant:"body2",children:e.address}),t.jsx(Ht,{addressData:e,handleNoteFieldChange:n.handleNoteFieldChange,handleDeleteAddress:n.handleDeleteAddress})]})})},Dl=({IMSs:e,editEntity:a})=>t.jsx(qt,{children:e?.map(n=>t.jsx(Al,{data:n,editEntity:a},n.id))}),pa=({editEntity:e,title:a,IMSs:n})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(Cl,{title:a}),t.jsx(Dl,{IMSs:n,editEntity:e})]}),Fl={addressField:{}},Va=({data:e,onChange:a,setWarnings:n})=>{const{id:r,channelType:o,address:i}=e,d=he(),c=et(),[u,p]=l.useState("idle"),[m,h]=l.useState(i),y=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let f=setTimeout(async()=>{if(i!==""&&i!==m){if(!c)return;p("loading"),h(i);const C={address:i,type:o};try{const v=await c.checkContactAddress({data:C}),{success:x,warnings:j}=v;n(j),p(x?"available":"unavailable")}catch{n([]),p("unavailable")}}},1700);return()=>clearTimeout(f)},[c,e,i,o,m,n]),t.jsx(t.Fragment,{children:t.jsx(s.TextField,{disabled:y,sx:Fl.addressField,size:"small",label:o===St.ChannelType.WHATSAPP||o===St.ChannelType.RCS?d?d("global.number"):"Number":d?d("global.email"):"Email",value:i,onChange:f=>{a(f,r,o)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx(Nn,{status:u})})}})})},Bl={addressField:{}},Ml=({data:e,onChange:a,setWarnings:n})=>{const r=et(),o=he(),{id:i,channelType:d,address:c}=e,[u,p]=l.useState("idle"),[m,h]=l.useState(c),y=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let f=setTimeout(async()=>{if(c!==""&&c!==m){if(!r)return;p("loading"),h(c);const C={address:c,type:d};try{const{success:v,warnings:x}=await r.checkContactAddress({data:C});n(x),p(v?"available":"unavailable")}catch{n([]),p("unavailable")}}},1700);return()=>clearTimeout(f)},[e]),t.jsx(t.Fragment,{children:t.jsx(s.TextField,{disabled:y,sx:Bl.addressField,size:"small",label:o("global.number"),value:c,onChange:f=>{a(f,i,d)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx(Nn,{status:u})})}})})},Ha={secondaryContainer:{display:"flex",alignItems:"baseline",height:"100%",gap:.5},icon:{height:15},chip:{borderRadius:"6px",height:"22px"}},$l=({text:e})=>t.jsx(s.Grid,{item:!0,children:t.jsx(s.Box,{sx:Ha.secondaryContainer,children:t.jsx(as,{icon:t.jsx(ts,{sx:Ha.icon}),sx:Ha.chip,label:e,color:"error",variant:"outlined"})})}),fa=({warnings:e})=>{const a=he();return t.jsx(s.Box,{children:t.jsx(s.Grid,{container:!0,children:e?.map((n,r)=>t.jsx($l,{text:a(`contactAddressError.${n}`)},r))})})},Pl={numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{marginTop:"10px"},adressInputBox:{position:"relative",width:"45%"}},Rl=({data:e})=>{const a="edit",{editEntity:n}=lt(),r=n.action,o=n.state,[i,d]=l.useState([]),[c,u]=l.useState(!0);return l.useEffect(()=>{u(i.length===0&&(e.address??"")!=="")},[i,e.address]),t.jsx(Vt,{children:t.jsxs(Gt,{children:[t.jsxs(s.Box,{sx:{...Pl.numberCountryContainer,flexDirection:"column"},children:[t.jsx(Ml,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange}),i.length>0&&t.jsx(fa,{warnings:i})]}),t.jsx(Ht,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress,addWhatsappVerified:r.addWhatsappVerified,checked:c})]})})},Ul=({phoneNumbers:e})=>t.jsx(qt,{variant:"large",children:e?.map(a=>t.jsx(Rl,{data:a},a.id))}),Nl=({phoneNumbers:e,handleAdd:a})=>{const n=he();return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(ua,{handleAdd:a,title:n("global.phones")}),t.jsx(Ul,{phoneNumbers:e})]})},Ln={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Ll=({data:e})=>{const a="edit",{editEntity:n}=lt(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(Vt,{children:[t.jsxs(Gt,{children:[t.jsx(s.Box,{sx:Ln.numberCountryContainer,children:t.jsx(s.Box,{sx:Ln.adressInputBox,children:t.jsx(Va,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Ht,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(fa,{warnings:i})]})},zl=({emails:e})=>t.jsx(qt,{variant:"large",children:e?.map(a=>t.jsx(Ll,{data:a},a.id))}),Ol=({emails:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(ua,{handleAdd:a,title:"Emails"}),t.jsx(zl,{emails:e})]}),zn={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},_l=({data:e})=>{const a="edit",{editEntity:n}=lt(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(Vt,{children:[t.jsxs(Gt,{children:[t.jsx(s.Box,{sx:zn.numberCountryContainer,children:t.jsx(s.Box,{sx:zn.adressInputBox,children:t.jsx(Va,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Ht,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(fa,{warnings:i})]})},Wl=({whatsapps:e})=>t.jsx(qt,{variant:"large",children:e?.map(a=>t.jsx(_l,{data:a},a.id))}),Vl=({whatsapps:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(ua,{handleAdd:a,title:"WhatsApp"}),t.jsx(Wl,{whatsapps:e})]}),On={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Hl=({data:e})=>{const a="edit",{editEntity:n}=lt(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(Vt,{children:[t.jsxs(Gt,{children:[t.jsx(s.Box,{sx:On.numberCountryContainer,children:t.jsx(s.Box,{sx:On.adressInputBox,children:t.jsx(Va,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Ht,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(fa,{warnings:i})]})},Gl=({RCSs:e})=>t.jsx(qt,{variant:"large",children:e?.map(a=>t.jsx(Hl,{data:a},a.id))}),ql=({RCSs:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(ua,{handleAdd:a,title:"RCS"}),t.jsx(Gl,{RCSs:e})]}),Yl=Te.styled(s.Box)(({theme:e})=>({position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:1e3,backgroundColor:e.palette.background.panel,padding:e.spacing(4),borderRadius:e.shape.borderRadius})),Kl=({open:e,onClose:a,title:n})=>{const r=he(),{editEntity:o}=lt(),{emails:i,phoneNumbers:d,imsWhatsapp:c,imsRCS:u}=o.field,{addEmail:p,addPhone:m,addWhatsapp:h,resetToInitialContactInformation:y,addRCS:f}=o.action;function C(){a(),y()}return t.jsx(s.Modal,{open:e,onClose:a,children:t.jsxs(Yl,{children:[(()=>{switch(n){case"Phones":return t.jsx(Nl,{handleAdd:m,phoneNumbers:d});case"Emails":return t.jsx(Ol,{handleAdd:p,emails:i});case"Whatsapp":return t.jsx(Vl,{handleAdd:h,whatsapps:c});case"RCS":return t.jsx(ql,{handleAdd:f,RCSs:u});case"Facebook":return t.jsx(pa,{title:"Facebook",IMSs:o.field.imsFacebooks,editEntity:o});case"Webchat":return t.jsx(pa,{title:"Webchat",IMSs:o.field.imsWebchats,editEntity:o});case"Instagram":return t.jsx(pa,{title:"Instagram",IMSs:o.field.imsInstagrams,editEntity:o});case"Mercado libre":return t.jsx(pa,{title:"Mercado Libre",IMSs:o.field.imsMercadolibre,editEntity:o});default:return t.jsx(s.Typography,{children:"No information available for this section."})}})(),t.jsx(s.Box,{mt:2,display:"flex",justifyContent:"flex-end",children:t.jsx(s.Button,{variant:"contained",color:"primary",onClick:C,children:r("global.close")})})]})})},Jl=({ownerData:e})=>{const{isOpen:a,title:n,openModal:r,closeModal:o}=Ki(),{editEntity:i}=lt(),d=he(),c=i.field.phoneNumbers,u=i.field.emails,p=i.field.imsFacebooks,m=i.field.imsWhatsapp,h=i.field.imsMercadolibre,y=i.field.imsWebchats,f=i.field.imsInstagrams,C=i.field.imsRCS,v=[{key:"phones",title:d("conversations.contactDetails.phones"),items:c,isPhone:!0,modalTitle:"Phones",visible:!0},{key:"emails",title:"Emails",items:u,modalTitle:"Emails",visible:!0},{key:"facebook",title:"Facebook",items:p,modalTitle:"Facebook",visible:!0},{key:"whatsapp",title:"Whatsapp",items:m,modalTitle:"Whatsapp",visible:!0},{key:"rcs",title:"RCS",items:C,modalTitle:"RCS",visible:C.length>0},{key:"mercado-libre",title:"Mercado libre",items:h,modalTitle:"Mercado libre",visible:!0},{key:"webchat",title:"Webchat",items:y,modalTitle:"Webchat",visible:!0},{key:"instagram",title:"Instagram",items:f,modalTitle:"Instagram",visible:!0}];return t.jsxs(t.Fragment,{children:[t.jsx(zt,{title:d("conversations.contactDetails.contactInformation"),children:t.jsx("div",{className:"grid grid-cols-1 gap-3",children:v.filter(x=>x.visible).map(x=>t.jsx(vl,{handleEdit:()=>r(x.modalTitle),title:x.title,methodItems:x.items,isPhone:x.isPhone,owner:e},x.key))})}),t.jsx(Kl,{open:a,onClose:o,title:n})]})},Xl=({entityType:e,entityData:a,baseUrl:n,spaceId:r,onEntityUpdated:o,onDirectionSearchClick:i})=>{const d={baseUrl:n,spaceId:r,entityId:String(a.id),onEntityUpdated:o},c=he(),u=({addressNumber:p,title:m})=>t.jsxs("div",{className:"flex flex-col gap-4 rounded-xl p-4",children:[t.jsx(s.Typography,{variant:"body2",children:m}),t.jsxs("div",{className:"grid grid-cols-2 gap-x-4 gap-y-3",children:[t.jsx("div",{className:"col-span-2",children:t.jsx(ft,{entityType:e,title:c("conversations.contactDetails.street"),value:a[p]?.street??"",...d,constructUpdateObject:h=>({[p]:{street:h}}),minWidth:"100%"})}),t.jsx(ft,{entityType:e,title:c("conversations.contactDetails.city"),value:a[p]?.city??"",...d,constructUpdateObject:h=>({[p]:{city:h}}),minWidth:"100%"}),t.jsx(ft,{entityType:e,title:c("conversations.contactDetails.state"),value:a[p]?.state??"",...d,constructUpdateObject:h=>({[p]:{state:h}}),minWidth:"100%"}),t.jsx(ft,{entityType:e,title:c("conversations.contactDetails.postcode"),value:a[p]?.zipcode??"",...d,constructUpdateObject:h=>({[p]:{zipcode:h}}),minWidth:"100%"}),t.jsx(ft,{entityType:e,title:c("conversations.contactDetails.country"),value:a[p]?.country??"",...d,constructUpdateObject:h=>({[p]:{country:h}}),minWidth:"100%"})]})]});return t.jsx(zt,{title:c("conversations.contactDetails.addressInformation"),enableDirectionSearch:!0,onDirectionSearchClick:i,children:t.jsxs("div",{className:"flex flex-col gap-4",children:[t.jsx(u,{addressNumber:"address1",title:c("conversations.contactDetails.primaryAddress")}),t.jsx(u,{addressNumber:"address2",title:c("conversations.contactDetails.secondaryAddress")})]})})};function Ql({open:e,baseUrl:a,spaceId:n,contactId:r,entityId:o,entityType:i,initialContactData:d,initialEntityData:c,contactNameFormat:u,resetOnClose:p=!0}){const m=l.useRef(null),h=l.useMemo(()=>!a||!n?null:vn(a,n),[a,n]),[y,f]=l.useState({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}),C=o??r,v=c??d,x=l.useMemo(()=>!!(e&&h&&C&&!v),[e,h,C,v]);l.useEffect(()=>{!e||!v||f(S=>({...S,isLoading:!1,error:null,contactData:v}))},[e,v]),l.useEffect(()=>{e||p&&(m.current?.abort(),f({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}))},[e,p]);const j=l.useMemo(()=>!!(e&&h),[e,h]);l.useEffect(()=>{if(!j||!h)return;const S=new AbortController;return f(I=>({...I,labelsLoading:!0,labelsError:null})),h.fetchLabels({signal:S.signal}).then(I=>{f(A=>({...A,labels:I,labelsLoading:!1,labelsError:null}))}).catch(I=>{S.signal.aborted||f(A=>({...A,labelsLoading:!1,labelsError:I}))}),()=>{S.abort()}},[h,j]),l.useEffect(()=>{if(!x||!h)return;m.current?.abort();const S=new AbortController;return m.current=S,f(I=>({...I,isLoading:!0,error:null,contactData:null})),(i==="business"?h.fetchBusiness({businessId:C,signal:S.signal}):h.fetchContact({contactId:C,signal:S.signal})).then(I=>{f(A=>({...A,isLoading:!1,error:null,contactData:I}))}).catch(I=>{S.signal.aborted||f(A=>({...A,isLoading:!1,error:I}))}),()=>{S.abort()}},[h,x,C,i]);const T=l.useMemo(()=>!!(e&&h),[e,h]);l.useEffect(()=>{if(!T||!h)return;const S=new AbortController;return f(I=>({...I,userLoading:!0,userError:null})),h.fetchUserTrii({signal:S.signal}).then(I=>{f(A=>({...A,userLoading:!1,userError:null,userTrii:I}))}).catch(I=>{S.signal.aborted||f(A=>({...A,userLoading:!1,userError:I}))}),()=>{S.abort()}},[h,T]);const E=l.useMemo(()=>{const S=y.contactData,I=Ua(S),A=$a(S);let B="unknown";I&&(B="business"),A&&(B="contact");let F="Unknown Contact";I?F=S.name:A&&(F=un(S.firstName,S.lastName,u));const k=S?.tags??[];return{isBusiness:I,isContact:A,contactType:B,displayName:F,tags:k,labels:y.labels,contactFields:y.contactFields,userTrii:y.userTrii,userLoading:y.userLoading,userError:y.userError}},[y.contactData,y.labels,y.contactFields,y.userTrii,y.userLoading,y.userError,u]);return l.useEffect(()=>{if(!e||!h)return;const S=y.contactData,I=Ua(S),A=$a(S),B=I?"business":A?"contact":null;if(!B)return;const F=new AbortController;return f(k=>({...k,contactFieldsLoading:!0,contactFieldsError:null})),h.fetchContactFields({forType:B,signal:F.signal}).then(k=>{f($=>({...$,contactFields:k,contactFieldsLoading:!1,contactFieldsError:null}))}).catch(k=>{F.signal.aborted||f($=>({...$,contactFieldsLoading:!1,contactFieldsError:k}))}),()=>{F.abort()}},[h,e,y.contactData]),{state:y,selectors:E,actions:{setContactData:S=>f(I=>({...I,contactData:S??null})),clearError:()=>f(S=>({...S,error:null}))}}}const Zl=({entity:e,setEntity:a})=>l.useCallback(n=>{if(!n||typeof n!="object")return;const r=n;if("id"in r){a(n);return}if(!e)return;const o={...e,...r};a(o)},[e,a]),ed=({onClose:e})=>l.useCallback((a,n)=>{n!=="escapeKeyDown"&&e()},[e]),td=({open:e,baseUrl:a,spaceId:n,contactData:r,contactType:o,labels:i,selectedTags:d,onTagsUpdated:c})=>{const[u,p]=l.useState("main"),[m,h]=l.useState([]),[y,f]=l.useState(!1),[C,v]=l.useState(!1),[x,j]=l.useState([]),[T,E]=l.useState(!1),S=l.useMemo(()=>{const F=i??[],k=x??[],$=new Map;for(const M of F)M?.id&&$.set(String(M.id),M);for(const M of k)M?.id&&$.set(String(M.id),M);return Array.from($.values())},[i,x]),I=l.useCallback(()=>{p("main"),h([]),f(!1),v(!1),j([]),E(!1)},[]);l.useEffect(()=>{e||I()},[e,I]),l.useEffect(()=>{if(u!=="tags"){f(!1);return}if(y||!S.length)return;const F=new Set(d.map($=>String($.id))),k=S.filter($=>F.has(String($?.id)));h(k),f(!0)},[u,y,S,d]);const A=l.useCallback(async F=>{if(T||!a||!n)return;const k=String(F??"").trim();if(!k)return;const $=k.toLowerCase(),M=S.find(O=>String(O?.name??"").trim().toLowerCase()===$);if(M?.id){h(O=>{const W=O??[];return W.some(P=>String(P?.id)===String(M.id))?W:[...W,M]});return}E(!0);try{const O=await yn({baseUrl:a,spaceId:n,name:k});j(W=>{const P=W??[];return!O?.id||P.some(N=>String(N?.id)===String(O.id))?P:[...P,O]}),h(W=>{const P=W??[];return!O?.id||P.some(N=>String(N?.id)===String(O.id))?P:[...P,O]})}finally{E(!1)}},[T,a,n,S]),B=l.useCallback(async()=>{if(C||!a||!n||!r||o!=="contact"&&o!=="business")return;const F=m.filter(k=>k?.id&&k?.name).map(k=>({id:String(k.id),name:String(k.name)}));v(!0);try{await tt({baseUrl:a,spaceId:n,entityType:o,entityId:String(r.id),body:{tags:F}}),c(F),p("main")}finally{v(!1)}},[C,a,n,r,o,m,c]);return{view:u,setView:p,draftLabels:m,setDraftLabels:h,labelsOptions:S,isSaving:C,isCreatingLabel:T,handleCreateLabel:A,handleSaveTags:B}},ad=e=>e.palette.background.panel??e.palette.background.paper,nd=e=>e.palette.background.accordionHeader??e.palette.background.panel??e.palette.background.paper,_n=(e,a)=>Array.isArray(a)?[e,...a]:a?[e,a]:e,rd=({title:e="Details",expanded:a,onExpandedChange:n,children:r})=>{const o={m:2,border:"1px solid",borderColor:"divider",overflow:"hidden"};return a!==void 0?t.jsx(s.Card,{sx:o,id:"details",children:t.jsxs(s.Accordion,{expanded:a,onChange:()=>n?.(!a),sx:{boxShadow:"none","&:before":{display:"none"}},children:[t.jsx(s.AccordionSummary,{expandIcon:t.jsx(Lr,{}),children:t.jsx(s.Box,{sx:{width:"100%",py:1,px:2,display:"flex",justifyContent:"space-between",alignItems:"center",color:i=>i.palette.text.primary},children:t.jsx(s.Typography,{variant:"subtitle2",children:e})})}),t.jsx(s.AccordionDetails,{sx:{p:2,borderTop:"1px solid rgba(0, 0, 0, .125)"},children:r})]})}):t.jsxs(s.Card,{sx:o,id:"details",children:[t.jsx(s.Box,{sx:{backgroundColor:nd,px:2,py:1.5,display:"flex",justifyContent:"space-between",alignItems:"center"},children:t.jsx(s.Typography,{variant:"subtitle2",sx:{fontWeight:600},children:e})}),t.jsx(s.Box,{sx:{p:2},children:r})]})},sd=({active:e,mode:a,children:n})=>a==="card"?e?t.jsx(s.Fade,{in:!0,timeout:200,children:t.jsx(s.Box,{sx:{pt:.5},children:n})}):null:t.jsx(s.Fade,{in:e,timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:n})}),od=({open:e,mode:a,baseUrl:n,spaceId:r,contactId:o,language:i,googleMapsApiKey:d,onEntityUpdated:c,contactNameFormat:u,entityType:p,entityId:m,initialEntityData:h,contentRef:y})=>{l.useEffect(()=>{if(window.google?.maps||document.querySelector('script[src^="https://maps.googleapis.com/maps/api/js"]'))return;if(!d){console.warn("Google Maps API key is missing. The location search feature will not work.");return}const W=document.createElement("script");return W.src=`https://maps.googleapis.com/maps/api/js?key=${d}&libraries=places`,W.async=!0,W.defer=!0,document.body.appendChild(W),()=>{}},[d]);const{state:f,selectors:C,actions:v}=Ql({open:e,baseUrl:n,spaceId:r,contactId:o,contactNameFormat:u,entityType:p,entityId:m,initialEntityData:h,resetOnClose:a==="modal"}),x=Zl({entity:f.contactData,setEntity:W=>{v.setContactData(W??void 0),W&&c&&c(W)}}),{view:j,setView:T,draftLabels:E,setDraftLabels:S,labelsOptions:I,isSaving:A,isCreatingLabel:B,handleCreateLabel:F,handleSaveTags:k}=td({open:e,baseUrl:n,spaceId:r,contactData:f.contactData,contactType:C.contactType,labels:C.labels,selectedTags:C.tags,onTagsUpdated:W=>{if(!f.contactData)return;const P={...f.contactData,tags:W};v.setContactData(P),c&&c(P)}}),$=Ot({baseUrl:n,spaceId:r,entityType:C.contactType==="business"||C.contactType==="contact"?C.contactType:void 0,entityId:f.contactData?String(f.contactData.id):void 0,initialImageUrl:f.contactData?.imageUrl,onEntityUpdated:x});if(f.isLoading&&!f.contactData)return t.jsx(s.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:220},children:t.jsx(s.CircularProgress,{})});if(f.error)return t.jsx(s.Box,{sx:{mb:2},children:"Failed to load contact"});if(!f.contactData)return null;const M=C.contactType==="business"?"business":"contact",O=(W,P)=>t.jsx(sd,{active:j===W,mode:a,children:P});return t.jsx(Fi,{value:{view:j,setView:T},children:t.jsx(Ei,{entityType:M,entityData:f.contactData,customContactFields:C.contactFields,baseUrl:n,spaceId:r,children:t.jsxs(s.Box,{sx:{position:"relative",height:a==="modal"?"100%":"auto"},children:[O("main",t.jsxs(t.Fragment,{children:[a==="modal"?t.jsx(di,{imgUrl:$.imageUrl,displayName:C.displayName,tags:C.tags,onEditTags:()=>{T("tags")},onUploadPhoto:$.action.uploadImage,onPhotoFileChange:$.inputAtributes.onChange,photoInputRef:$.inputAtributes.ref,isUploadingPhoto:$.isUploading,onDeletePhoto:$.action.deleteImage,isDeletingPhoto:$.isDeleting,contactType:C.contactType,entityId:String(f.contactData.id),firstName:C.isContact?String(f.contactData.firstName??""):void 0,lastName:C.isContact?String(f.contactData.lastName??""):void 0,name:C.isBusiness?String(f.contactData.name??""):void 0,onEntityUpdated:x}):null,t.jsxs(s.Box,{sx:a==="modal"?{px:1,pb:2}:void 0,children:[t.jsx(Yi,{dateFormat:C.userTrii?.regCon_dateFormat||"MM/dd/yyyy",entityType:M,entityData:f.contactData,customContactFields:C.contactFields,baseUrl:n,spaceId:r,onEntityUpdated:x,currentUser:C.userTrii}),a==="card"&&C.isBusiness?t.jsx(ei,{business:f.contactData,onEdit:()=>T("businessMembers"),language:i,contactNameFormat:u}):null,t.jsx(Xl,{entityType:M,entityData:f.contactData,baseUrl:n,spaceId:r,onEntityUpdated:x,onDirectionSearchClick:()=>T("searchLocation")}),t.jsx(Jl,{ownerData:f.contactData})]})]})),O("searchLocation",t.jsx(hi,{baseUrl:n,spaceId:r,entityType:M,entityId:String(f.contactData.id),onBack:()=>T("main"),onEntityUpdated:x})),O("tags",t.jsx(ui,{value:E,options:I,onChange:S,onBack:()=>T("main"),onSave:k,isSaving:A,onCreateNew:F,isCreatingNew:B,popperContainer:y.current})),O("businessSelect",t.jsx(Ko,{baseUrl:n,spaceId:r,contactId:String(f.contactData.id),initialBusiness:C.isContact&&f.contactData?.businessId?{businessId:String(f.contactData.businessId),businessName:String(f.contactData.businessName??"")}:null,onBack:()=>T("main"),onEntityUpdated:x,currentUser:C.userTrii})),O("businessMembers",t.jsx(Xo,{business:C.isBusiness?f.contactData:null,onBack:()=>T("main"),onEntityUpdated:x}))]})})})},id=({mode:e="modal",open:a,onClose:n,baseUrl:r,spaceId:o,contactId:i,sx:d,language:c="en",navigate:u,googleMapsApiKey:p,onEntityUpdated:m,contactNameFormat:h,title:y,expanded:f,onExpandedChange:C,entityType:v,entityId:x,initialEntityData:j})=>{const T=l.useRef(null),E=e==="card"?!0:!!a,S=n??(()=>{}),I=l.useMemo(()=>{const k=jt.getFixedT(c);return $=>k($)},[c]),A=l.useMemo(()=>!r||!o?null:vn(r,o),[r,o]),B=ed({onClose:S}),F=t.jsx(od,{mode:e,open:E,baseUrl:r,spaceId:o,contactId:i,language:c,googleMapsApiKey:p,onEntityUpdated:m,contactNameFormat:h,entityType:v,entityId:x,initialEntityData:j,contentRef:T});return t.jsx(Bo,{value:A,children:t.jsx(Mo,{t:I,children:t.jsx(Qo,{navigate:u,children:e==="card"?t.jsx(rd,{title:y,expanded:f,onExpandedChange:C,children:t.jsx(s.Box,{ref:T,sx:_n({minHeight:0},d),children:F})}):t.jsx(s.Modal,{open:E,onClose:B,closeAfterTransition:!0,slots:{backdrop:s.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(s.Fade,{in:E,timeout:200,children:t.jsxs(s.Box,{sx:_n({position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:ad,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"},d),ref:T,children:[t.jsx(s.IconButton,{"aria-label":"close",onClick:B,sx:{position:"absolute",right:5,top:5,color:k=>k.palette.grey[500],zIndex:1},size:"small",children:t.jsx(Da,{sx:{fontSize:20}})}),F]})})})})})})},ld=e=>t.jsx(Ke.I18nextProvider,{i18n:jt,children:t.jsx(id,{...e})}),Wn=l.createContext(null),dd=Wn.Provider,Vn=()=>l.useContext(Wn),cd={events:[],setEvents:()=>{},filteredEvents:[]},ud=(e,a)=>{const[n,r]=l.useState([]);l.useEffect(()=>{if(!a?.length){r([]);return}const i=a.map(d=>({id:d.id,title:d.title||"",start:new Date(d.startAt),end:new Date(d.endAt||d.startAt),startAt:d.startAt,endAt:d.endAt,allDay:d.allDay||!1,color:d.color,calendarId:d.calendarId,details:d.details,location:d.location,isPrivate:d.isPrivate,rule:d.rule,relatedContact:d.relatedContact,sharedWith:d.sharedWith,finalized:d.finalized,kind:"event",originalOccurrenceDate:d.originalOccurrenceDate,parentId:d.parentId}));r(i)},[a]);const o=l.useMemo(()=>e?.length?n.filter(i=>i.calendarId&&e.includes(i.calendarId)):n,[n,e]);return l.useMemo(()=>({events:n,setEvents:r,filteredEvents:o}),[n,o])},Hn={open:!1,handleOpen:()=>{},handleClose:()=>{}},Gn=()=>{const[e,a]=l.useState(!1),n=l.useCallback(()=>{a(!0)},[]),r=l.useCallback(()=>{a(!1)},[]);return l.useMemo(()=>({open:e,handleOpen:n,handleClose:r}),[e,n,r])},xt={actions:{onError:()=>{},onSuccess:()=>{},resetValue:()=>{},changeValue:()=>{}},attributes:{error:!1,helperText:"",type:"",value:"",onChange:()=>{}}},bt=(e,a)=>{const[n,r]=l.useState(a||""),[o,i]=l.useState(!1),[d,c]=l.useState("");l.useEffect(()=>{r(a||"")},[a]);const u=l.useCallback(v=>{i(!0),c(v)},[]),p=l.useCallback(()=>{i(!1),c("")},[]),m=l.useCallback(v=>{r(v.target.value)},[]),h=l.useCallback(v=>{r(v)},[]),y=l.useCallback(()=>{r(a||"")},[a]),f=l.useMemo(()=>({onError:u,onSuccess:p,resetValue:y,changeValue:h}),[u,p,y,h]),C=l.useMemo(()=>({error:o,helperText:d,type:e,value:n,onChange:m}),[o,d,e,n,m]);return{actions:f,attributes:C}};function qn(e){return typeof e=="number"}const pd={notifications:[],action:{addNotification:()=>{},deleteNotification:e=>{},handleTimeFieldChange:(e,a)=>{},handleTimePeriodChange:(e,a)=>{},handleReminderChange:(e,a)=>{},resetNotifications:()=>{}}};function fd(e){const[a,n]=l.useState(e||[]),r=l.useCallback(()=>{const m={id:_t(),timeValue:15,timePeriod:oa.EventNotificationPeriod.MINUTE,sendToContact:!1};n(h=>h.concat(m))},[]),o=l.useCallback(m=>{n(h=>h.filter(y=>y.id!==m))},[]),i=l.useCallback((m,h)=>{const y=Number(m.target.value);qn(y)&&n(f=>f.map(C=>C.id===h?{...C,timeValue:y}:C))},[]),d=l.useCallback((m,h)=>{if(!qn(m.target.value))return;const y=m.target.value;n(f=>f.map(C=>C.id===h?{...C,timePeriod:y}:C))},[]),c=l.useCallback((m,h)=>{const y=m.target.checked;n(f=>f.map(C=>C.id===h?{...C,sendToContact:y}:C))},[]),u=l.useCallback(()=>{n([])},[]);l.useEffect(()=>{if(e){const m=e.map(h=>({...h,id:h.id||_t()}));n(m)}},[e]);const p=l.useMemo(()=>({addNotification:r,deleteNotification:o,handleTimeFieldChange:i,handleTimePeriodChange:d,handleReminderChange:c,resetNotifications:u}),[r,o,i,d,c,u]);return{notifications:a,action:p}}const gd={state:{selectedStartDate:Z(),selectedEndDate:Z().add(30,"minute"),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},md={state:{search:"",selectedContact:null},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},hd={titleField:xt,descriptionField:xt,locationField:xt,colorField:xt,date:gd,allDay:!1,setAllDay:()=>{},isPrivate:!1,setIsPrivate:()=>{},recurrenceRule:"",setRecurrenceRule:()=>{},notifications:pd,linkContact:md,create:()=>({title:"",details:"",location:"",allDay:!1,isPrivate:!1,color:"",startAt:"",endAt:"",notifications:[],rule:"",contactId:null}),resetFields:()=>{}},yd=(e,a)=>{const[n,r]=l.useState(e??Z()),[o,i]=l.useState(a??Z().add(30,"minute")),[d,c]=l.useState(!1),u=l.useCallback(h=>y=>{h(y)},[]),p=l.useMemo(()=>({selectedStartDate:n,selectedEndDate:o,error:d}),[n,o,d]),m=l.useMemo(()=>({setSelectedStartDate:r,setSelectedEndDate:i,setError:c,handleSelect:u}),[u]);return{state:p,action:m}},xd=e=>{const[a,n]=l.useState(""),[r,o]=l.useState(e?.id?{id:e.id,name:e.name}:null),i=e?`${e.id}|${e.name}`:"";l.useEffect(()=>{o(e?.id?{id:e.id,name:e.name}:null)},[i,e]);const d=l.useCallback(y=>{o({id:y.id,name:y.name??""}),n("")},[]),c=l.useCallback(()=>{o(null)},[]),u=l.useCallback(y=>{n(y)},[]),p=l.useCallback(()=>{n(""),o(e?.id?{id:e.id,name:e.name}:null)},[e]),m=l.useMemo(()=>({search:a,selectedContact:r}),[a,r]),h=l.useMemo(()=>({handleSelectContact:d,handleRemoveContact:c,handleSearchChange:u,resetField:p}),[d,c,u,p]);return{state:m,action:h}},bd=e=>{const a=l.useRef(null),n=bt("text",e?.title??""),r=bt("text",e?.details??e?.description??""),o=bt("text",e?.location??""),i=bt("text",e?.color??"#1976d2"),d=yd(e?.startAt?Z(e.startAt):void 0,e?.endAt?Z(e.endAt):void 0),[c,u]=l.useState(e?.allDay??!1),[p,m]=l.useState(e?.isPrivate??!1),[h,y]=l.useState(e?.rule??""),f=fd(e?.notifications),C=xd(e?.relatedContact??e?.raw?.relatedContact),v=l.useCallback(()=>({title:n.attributes.value,details:r.attributes.value,location:o.attributes.value,allDay:c,isPrivate:p,color:i.attributes.value,startAt:d.state.selectedStartDate.toISOString(),endAt:d.state.selectedEndDate.toISOString(),notifications:f.notifications.filter(j=>j.timeValue>0).map(j=>({id:j.id,timePeriod:j.timePeriod,timeValue:j.timeValue,sendToContact:j.sendToContact})),rule:h,contactId:C.state.selectedContact?.id||null}),[n.attributes.value,r.attributes.value,o.attributes.value,c,p,i.attributes.value,d.state.selectedStartDate,d.state.selectedEndDate,f.notifications,h,C.state.selectedContact]),x=l.useCallback(()=>{n.actions.resetValue(),r.actions.resetValue(),o.actions.resetValue(),i.actions.changeValue("#1976d2"),u(!1),m(!1),y(""),f.action.resetNotifications(),C.action.resetField(),d.action.setError(!1),a.current=null},[n.actions,r.actions,o.actions,i.actions,f.action,C.action,d.action]);return l.useEffect(()=>{const j=e?.id;!e||a.current===j||(a.current=j,u(e.allDay??!1),m(e.isPrivate??!1),y(e.rule??""),n.actions.changeValue(e.title??""),r.actions.changeValue(e.details??e.description??""),o.actions.changeValue(e.location??""),i.actions.changeValue(e.color??"#1976d2"),e.startAt&&d.action.setSelectedStartDate(Z(e.startAt)),e.endAt&&d.action.setSelectedEndDate(Z(e.endAt)))},[e?.id]),l.useMemo(()=>({titleField:n,descriptionField:r,locationField:o,colorField:i,date:d,allDay:c,setAllDay:u,isPrivate:p,setIsPrivate:m,recurrenceRule:h,setRecurrenceRule:y,notifications:f,linkContact:C,create:v,resetFields:x}),[n,r,o,i,d,c,p,h,f,C,v,x])},vd={field:{userIds:[]},action:{setUserIds:()=>{},resetField:()=>{}}},Cd={nameField:xt,color:"#ffffff",handleColorChange:()=>{},shareWithUsers:vd,googleCalendar:null,handleGoogleCalendarChange:()=>{}},Sd=()=>{const[e,a]=l.useState([]),n=l.useCallback(()=>{a([])},[]),r=l.useMemo(()=>({userIds:e}),[e]),o=l.useMemo(()=>({setUserIds:a,resetField:n}),[n]);return{field:r,action:o}},jd=()=>{const e=bt("text",""),[a,n]=l.useState("#ffffff"),[r,o]=l.useState(null),i=Sd(),d=l.useCallback(u=>{n(u)},[]),c=l.useCallback(u=>{o(u)},[]);return l.useMemo(()=>({nameField:e,color:a,handleColorChange:d,shareWithUsers:i,googleCalendar:r,handleGoogleCalendarChange:c}),[e,a,d,i,r,c])},wd={tasks:[],setTasks:()=>{},filteredTasks:[]},Td=e=>{const[a,n]=l.useState([]),r=l.useMemo(()=>e?.length?a.filter(o=>o.calendarId&&e.includes(o.calendarId)):a,[a,e]);return l.useMemo(()=>({tasks:a,setTasks:n,filteredTasks:r}),[a,r])},Id={state:{selectedStartDate:Z(),selectedEndDate:Z(),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},kd={state:{search:"",selectedContact:null},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},Ed={titleField:xt,descriptionField:xt,date:Id,linkContact:kd,create:()=>({title:"",description:"",startAt:"",endAt:"",contactId:null}),resetFields:()=>{}},Ad=(e,a)=>{const[n,r]=l.useState(e??Z()),[o,i]=l.useState(a??Z()),[d,c]=l.useState(!1),u=l.useCallback(h=>y=>{h(y)},[]),p=l.useMemo(()=>({selectedStartDate:n,selectedEndDate:o,error:d}),[n,o,d]),m=l.useMemo(()=>({setSelectedStartDate:r,setSelectedEndDate:i,setError:c,handleSelect:u}),[u]);return{state:p,action:m}},Dd=e=>{const[a,n]=l.useState(""),[r,o]=l.useState(e?.id?{id:e.id,name:e.name}:null),i=e?`${e.id}|${e.name}`:"";l.useEffect(()=>{o(e?.id?{id:e.id,name:e.name}:null)},[i,e]);const d=l.useCallback(y=>{o({id:y.id,name:y.name??""}),n("")},[]),c=l.useCallback(()=>{o(null)},[]),u=l.useCallback(y=>{n(y)},[]),p=l.useCallback(()=>{n(""),o(e?.id?{id:e.id,name:e.name}:null)},[e]),m=l.useMemo(()=>({search:a,selectedContact:r}),[a,r]),h=l.useMemo(()=>({handleSelectContact:d,handleRemoveContact:c,handleSearchChange:u,resetField:p}),[d,c,u,p]);return{state:m,action:h}},Fd=e=>{const a=l.useRef(null),n=bt("text",e?.title??""),r=bt("text",e?.description??""),o=Ad(e?.startAt?Z(e.startAt):void 0,e?.startAt?Z(e.startAt):void 0),i=Dd(e?.relatedContact??e?.raw?.relatedContact),d=l.useCallback(()=>({title:n.attributes.value,description:r.attributes.value,startAt:o.state.selectedStartDate.toISOString(),endAt:o.state.selectedStartDate.toISOString(),contactId:i.state.selectedContact?.id||null}),[n.attributes.value,r.attributes.value,o.state.selectedStartDate,i.state.selectedContact]),c=l.useCallback(()=>{n.actions.resetValue(),r.actions.resetValue(),i.action.resetField(),o.action.setError(!1),a.current=null},[n.actions,r.actions,i.action,o.action]);return l.useEffect(()=>{const u=e?.id;if(!(!e||a.current===u)&&(a.current=u,console.log("[useTask] Sincronizando tarea:",{id:e.id,title:e.title,description:e.description,startAt:e.startAt,relatedContact:e.relatedContact}),n.actions.changeValue(e.title??""),r.actions.changeValue(e.description??""),e.startAt)){const p=Z(e.startAt);o.action.setSelectedStartDate(p),o.action.setSelectedEndDate(p)}},[e?.id]),l.useEffect(()=>{if(!e)return;const u=e.relatedContact??e.raw?.relatedContact,p=i.state.selectedContact?.id,m=u?.id;p!==m&&(m?i.action.handleSelectContact({id:m,name:u.name??""}):i.action.resetField())},[e?.relatedContact,e?.raw?.relatedContact]),l.useMemo(()=>({titleField:n,descriptionField:r,date:o,linkContact:i,create:d,resetFields:c}),[n,r,o,i,d,c])},Ga=l.createContext({eventDialog:Hn,createCalendarDialog:Hn,event:hd,events:cd,calendar:Cd,dialogMode:"view",handleCreateEvent:()=>{},handleSelectEvent:()=>{},handleOpenEventCreate:()=>{},handleStartEditingEvent:()=>{},handleSaveUpdatedEvent:()=>{},handleEndEvent:()=>{},handleDeleteEvent:()=>{},handleResizeEvent:()=>{},selectedEvent:{},savingSnackbar:{open:!1,message:"",severity:"info"},handleCloseSnackbar:()=>{},dialogType:"event",setDialogType:()=>{},handleOpenTaskCreate:()=>{},handleOpenCreateFromSlot:()=>{},handleCloseCreateCalendarDialog:()=>{},calendarDialogMode:"create",editingCalendar:null,handleOpenCreateCalendarDialog:()=>{},handleOpenEditCalendarDialog:()=>{},handleSubmitCalendar:async()=>{},tasks:wd,activeCalendarIds:[],setActiveCalendarIds:()=>{},handleCreateTask:()=>{},task:Ed,selectedTask:null,taskCalendarId:"",setTaskCalendarId:()=>{},eventCalendarId:"",setEventCalendarId:()=>{},userManuallyChangedColor:!1,setUserManuallyChangedColor:()=>{},myCalendars:[],otherCalendars:[],isLoadingCalendars:!1,isCreatingEvent:!1,isUpdatingEvent:!1,isCreatingTask:!1,isUpdatingTask:!1,handleSaveUpdatedTask:()=>{},handleDeleteTask:()=>{},handleToggleTaskCompleted:()=>{},handleDuplicateItem:()=>{},calendarView:"month",setCalendarView:()=>{},calendarDate:new Date,setCalendarDate:()=>{},navigateToDate:()=>{},confirmDeleteDialog:{open:!1,handleClose:()=>{},itemType:"event"},handleConfirmDelete:()=>{},deleteRecurringDialog:{open:!1,handleClose:()=>{}},handleConfirmDeleteRecurring:()=>{},editRecurringDialog:{open:!1,handleClose:()=>{}},handleConfirmEditRecurring:()=>{},hiddenTabs:!1}),Yn=e=>e,Kn=l.createContext(Yn),Bd=({t:e,children:a})=>t.jsx(Kn.Provider,{value:e,children:a}),$e=()=>{const e=l.useContext(Kn);return e?(...a)=>{const[n,...r]=a;return e(n,...r)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),Yn)};var Md=Object.defineProperty,$d=(e,a,n)=>a in e?Md(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,Jn=(e,a,n)=>$d(e,typeof a!="symbol"?a+"":a,n);class Pd extends Error{constructor(a,n,r){super(a),Jn(this,"status"),Jn(this,"body"),this.name="ApiError",this.status=n,this.body=r}}async function Ae({url:e,method:a="GET",headers:n,body:r,signal:o}){const i=await globalThis.fetch(e,{method:a,headers:{...r?{"Content-Type":"application/json"}:{},...n??{}},body:r?JSON.stringify(r):void 0,signal:o}),d=(i.headers.get("content-type")||"").includes("application/json")?await i.json().catch(()=>null):await i.text().catch(()=>null);if(!i.ok){const c=typeof d=="object"&&d&&"message"in d?String(d.message):`Request failed with status ${i.status}`;throw new Pd(c,i.status,d)}return d}function ke(e,a){const n=e.endsWith("/")?e.slice(0,-1):e,r=a.startsWith("/")?a:`/${a}`;return`${n}${r}`}function ga(e,a){const n=encodeURIComponent(a);return{CONTACTS:ke(e,`/contacts/${n}`),MEDIA:ke(e,`/media/${n}`),SETTINGS:ke(e,`/settings/${n}`),CALENDAR:ke(e,`/calendar/${n}`)}}function He(e){return ga(e.baseUrl,e.spaceId).CALENDAR}async function Rd(e){const a=ga(e.baseUrl,e.spaceId);return Ae({url:ke(a.SETTINGS,"/user")})}async function Ud(e,a,n){const r=`${He(e)}/Events?start=${encodeURIComponent(a)}&end=${encodeURIComponent(n)}`;return Ae({url:r})}async function Nd(e,a){const n=He(e);return Ae({url:ke(n,"/events"),method:"POST",body:a})}async function Xn(e,a){const n=He(e),{activityId:r,updatedActivity:o,originalOccurrenceDate:i}=a;if(i){const d=i instanceof Date?i.toISOString():i,c=`${n}/events/occurrence/${r}?occurrence=${d}`;return Ae({url:c,method:"PUT",body:o})}return Ae({url:ke(n,`/events/${r}`),method:"PUT",body:o})}async function qa(e,a,n){const r=He(e);if(n){const o=n instanceof Date?n.toISOString():n,i=`${r}/events/${a}?occurrence=${o}`;await Ae({url:i,method:"DELETE"})}else await Ae({url:ke(r,`/events/${a}`),method:"DELETE"})}async function Ld(e,a){const n=He(e);return Ae({url:ke(n,`/events/${a}`),method:"PUT",body:{finalized:!0}})}async function zd(e,a){const n=He(e);return Ae({url:ke(n,`/Task/${a}`)})}async function Od(e,a){const n=He(e);return Ae({url:ke(n,"/Task"),method:"POST",body:a})}async function Qn(e,a,n){const r=He(e);return Ae({url:ke(r,`/Task/${a}`),method:"PUT",body:n})}async function _d(e,a){const n=He(e);await Ae({url:ke(n,`/Task/${a}`),method:"DELETE"})}async function Wd(e,a,n){const r=He(e);return Ae({url:ke(r,`/Task/${a}`),method:"PUT",body:{isCompleted:n}})}async function Vd(e){const a=He(e);return Ae({url:ke(a,"/Calendar")})}async function Hd(e,a){const n=He(e);return Ae({url:ke(n,"/Calendar"),method:"POST",body:a})}async function Gd(e,a,n){const r=He(e);return Ae({url:ke(r,`/Calendar/${a}`),method:"PUT",body:n})}async function qd({baseUrl:e,spaceId:a,contactId:n,signal:r}){const o=ga(e,a),i=ke(o.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return Ae({url:i,signal:r})}async function Yd({baseUrl:e,spaceId:a,pagination:n,signal:r}){const o=ga(e,a),i=ke(o.CONTACTS,"/Search");return Ae({url:i,method:"POST",body:n,signal:r})}function ma(e){const a=Z(e),n=a.minute();return n===0||n===30?a.second(0).millisecond(0):n>0&&n<30?a.minute(30).second(0).millisecond(0):a.add(1,"hour").minute(0).second(0).millisecond(0)}const Yt=e=>{if(!e)return e;const a=e.indexOf("_");if(a===-1)return e;const n=e.substring(0,a),r=e.substring(a+1);return/^\d{14}$/.test(r)?n:e},Kt=e=>e?e.parentId?e.parentId:Yt(e.id):"",Kd=({children:e,externalOpen:a,externalOnClose:n,externalMode:r="create",externalType:o="event",externalEventCalendarId:i,externalTaskCalendarId:d,externalSelectedEvent:c,externalSelectedTask:u,hiddenTabs:p=!1,externalContactId:m,externalOnActionComplete:h,externalInitialStartDate:y,externalInitialEndDate:f})=>{const{t:C}=Ke.useTranslation(),v=Vn(),x=(b,..._)=>C(b,..._),[j,T]=l.useState(o),[E,S]=l.useState(null),[I,A]=l.useState(null),[B,F]=l.useState(r),[k,$]=l.useState(d||""),[M,O]=l.useState(i||""),[W,P]=l.useState(!1),[N,Y]=l.useState("create"),[re,q]=l.useState(null),[G,L]=l.useState({open:!1,message:"",severity:"info"}),[w,D]=l.useState(!1),[z,H]=l.useState("event"),[K,ye]=l.useState(!1),[ue,xe]=l.useState(!1),[ae,De]=l.useState(null),[X,pe]=l.useState(!1),[be,Ye]=l.useState(!1),[ee,Pe]=l.useState(!1),[We,Ge]=l.useState(!1),ce="trii_calendar_last_view",kt=b=>b==="month"||b==="week"||b==="day",[at,vt]=l.useState(()=>{try{const b=localStorage.getItem(ce);return kt(b)?b:"month"}catch{return"month"}}),[va,Xt]=l.useState(new Date),Qt=b=>{Xt(b),vt("day")},Re=Gn(),Xe=Gn(),le=bd(E??void 0),fe=Fd(I??void 0);l.useEffect(()=>{r!==void 0&&F(r)},[r]),l.useEffect(()=>{o!==void 0&&T(o)},[o]),l.useEffect(()=>{i!==void 0&&O(i)},[i]),l.useEffect(()=>{d!==void 0&&$(d)},[d]),l.useEffect(()=>{c!==void 0&&(S(c),c?.calendarId&&O(c.calendarId))},[c]),l.useEffect(()=>{u!==void 0&&(console.log("[CalendarContextProvider] Sincronizando externalSelectedTask:",u),A(u),u?.calendarId&&$(u.calendarId))},[u]),l.useEffect(()=>{if(!m||!v||r!=="create"||!Re.open)return;let b=!1;return qd({baseUrl:v.baseUrl,spaceId:v.spaceId,contactId:m}).then(_=>{b||!_||(le.linkContact.action.resetField(),le.linkContact.action.handleSelectContact(_),fe.linkContact.action.resetField(),fe.linkContact.action.handleSelectContact(_))}).catch(()=>{}),()=>{b=!0}},[m,Re.open]),l.useEffect(()=>{if(a!==void 0)if(a&&!Re.open){if(r==="create"){le.resetFields(),fe.resetFields(),P(!1),S(null),A(null),le.date.action.setError(!1),fe.date.action.setError(!1);const b=ma(y??new Date),_=f?ma(f):b.add(30,"minute");if(o==="task"?(fe.date.action.setSelectedStartDate(b),fe.date.action.setSelectedEndDate(b)):(le.date.action.setSelectedStartDate(b),le.date.action.setSelectedEndDate(_)),!i){const U=Ue?.[0]??st?.[0]?.id??ze?.[0]?.id??"";U&&O(U)}if(!d){const U=Ue?.[0]??ze?.[0]?.id??"";U&&$(U)}}Re.handleOpen()}else!a&&Re.open&&Re.handleClose()},[a]);const qe=()=>{le.resetFields(),fe.resetFields(),le.date.action.setError(!1),fe.date.action.setError(!1),n?n():Re.handleClose()},Ee=jd(),Zt=N==="create",[ze,Ca]=l.useState([]),[Sa,ea]=l.useState(!1),[ja,wa]=l.useState([]),[dt,ta]=l.useState(""),nt="calendar_selected_ids",[Ue,ct]=l.useState(()=>{try{const b=localStorage.getItem(nt);return b?JSON.parse(b):[]}catch{return[]}}),gt=ud(Ue,ja),Et=Td(Ue),aa=()=>{L(b=>({...b,open:!1}))},rt=l.useCallback((b,_,U)=>{h?.(b,_,U)},[h]);function At(b){const _=b?.startAt??b?.start,U=b?.endAt??b?.end??_;return{startAt:_,endAt:U}}const{myCalendars:st,otherCalendars:Ta}=l.useMemo(()=>{const b=ze??[];if(!dt)return{myCalendars:b,otherCalendars:[]};const _=b.filter(te=>te.userId===dt),U=b.filter(te=>te.userId!==dt);return _.length===0&&b.length>0?{myCalendars:b,otherCalendars:[]}:{myCalendars:_,otherCalendars:U}},[ze,dt]),mt=l.useCallback(async()=>{if(v)try{const b=new Date,_=b.getUTCFullYear(),U=b.getUTCMonth(),te=new Date(Date.UTC(_,U-1,1,0,0,0)).toISOString(),Q=new Date(Date.UTC(_,U+2,1,0,0,0)).toISOString(),me=await Ud(v,te,Q);wa(me)}catch(b){console.error("Error fetching activities:",b)}},[v]),ot=l.useCallback(async b=>{if(v)try{const _=await zd(v,b);Et.setTasks(_.map(U=>({id:U.id,title:U.title||"",start:new Date(U.startAt),end:new Date(U.endAt||U.startAt),startAt:U.startAt,endAt:U.endAt,description:U.description,calendarId:U.calendarId,isCompleted:U.isCompleted||!1,relatedContact:U.relatedContact,kind:"task"})))}catch(_){console.error("Error fetching tasks:",_)}},[v]),Ct=l.useCallback(async()=>{if(v){ea(!0);try{const b=await Vd(v);Ca(b)}catch(b){console.error("Error fetching calendars:",b)}finally{ea(!1)}}},[v]);l.useEffect(()=>{const b=st?.[0]?.id??ze?.[0]?.id??"";b&&Re.open&&B==="create"&&(M||O(b),k||$(b))},[Re.open,B]);const Dt=l.useRef(!1);l.useEffect(()=>{a||(Dt.current=!1)},[a]),l.useEffect(()=>{if(!v||!a||Dt.current||(Dt.current=!0,Ct(),r==="create"))return;let b=!1;return Rd(v).then(_=>{b||ta(_.uid)}).catch(()=>{}),()=>{b=!0}},[v,a,r,Ct]);function Ft(b,_,U){T(b),F("create"),S(null),A(null),le.resetFields(),fe.resetFields(),P(!1);const te=ma(_??new Date),Q=U?ma(U):te.add(30,"minute"),me=Q.isAfter(te)?Q:te.add(30,"minute");if(b==="task"){fe.date.action.setSelectedStartDate(te),fe.date.action.setSelectedEndDate(te),fe.date.action.setError(!1);const we=Ue?.[0]??ze?.[0]?.id??"";$(we)}else{le.date.action.setSelectedStartDate(te),le.date.action.setSelectedEndDate(me),le.date.action.setError(!1);const we=Ue?.[0]??st?.[0]?.id??ze?.[0]?.id??"";O(we);const se=st?.find(je=>je.id===we)??ze?.find(je=>je.id===we);se?.color&&le.colorField.actions.changeValue(se.color)}Re.handleOpen()}function Ia(){Ft("event")}function ka(){le.date.action.setError(!1),fe.date.action.setError(!1),F("edit")}function g(b){const{startAt:_,endAt:U}=At(b),te={...b,kind:"event",startAt:_,endAt:U,details:b?.details??""};T("event"),S(te),A(null);const Q=te.calendarId||st?.[0]?.id||ze?.[0]?.id||"";O(Q),F("view"),le.date.action.setError(!1),fe.date.action.setError(!1),Re.handleOpen()}async function R(b){if(!v)return;let _;if(b)_={title:b.title,details:b.description||b.details||"",startAt:new Date(b.startAt),endAt:new Date(b.endAt),allDay:b.allDay,location:b.location||"",isPrivate:b.isPrivate||!1,color:b.color||"",rule:b.rule||"",contactId:b.relatedContactId||m||null,notifications:(b.notifications||[]).map(Q=>({id:_t(),timeValue:Q.value,timePeriod:Q.type,sendToContact:Q.sendToContact||!1})),eventTypeId:"",repeatId:""};else{const Q=le.create();if(!Q.title){L({open:!0,message:x("global.nameRequired"),severity:"error"});return}_={...Q,startAt:new Date(Q.startAt),endAt:new Date(Q.endAt),contactId:Q.contactId||m||null,eventTypeId:"",repeatId:"",notifications:Q.notifications.map(me=>({...me,id:me.id||_t()}))}}const U=M;if(!U){L({open:!0,message:x("global.errorSavingChanges"),severity:"error"});return}const te={..._,calendarId:U};pe(!0);try{L({open:!0,message:x("global.savingChanges"),severity:"info"});const Q=await Nd(v,te);Ue.includes(U)||ct(me=>[...me,U]),L({open:!0,message:x("global.changesSaved"),severity:"success"}),rt("created","event",Q),le.resetFields(),qe(),setTimeout(()=>{mt()},500)}catch(Q){console.error("Error creando evento:",Q);const me=Q?.response?.data?.message||Q?.message||x("global.errorSavingChanges");L({open:!0,message:me,severity:"error"})}finally{pe(!1)}}async function V(){if(!E?.id)return;const b=le.create(),_=M||E.calendarId||"";if(!_){L({open:!0,message:x("global.errorSavingChanges"),severity:"error"});return}E.originalOccurrenceDate!=null?(De(()=>async U=>{await ne(b,_,U)}),xe(!0)):await ne(b,_,!1)}async function ne(b,_,U){const te=E?.originalOccurrenceDate!=null,Q={title:b.title,details:b.details,startAt:b.startAt,endAt:b.endAt,allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:_,notifications:b.notifications,contactId:b.contactId??null};(U||!te)&&(Q.rule=b.rule);const me=Kt(E),we={updatedActivity:Q,activityId:me};te&&!U&&(we.originalOccurrenceDate=E.originalOccurrenceDate),Ye(!0);try{const se=await Xn(v,we);if(se){const je={...se,relatedContact:se.relatedContact??E.relatedContact};S(je),se.calendarId&&O(se.calendarId),gt.setEvents(na=>na.map(ut=>ut.id===E?.id?{...ut,...se,relatedContact:se.relatedContact??ut.relatedContact,start:new Date(se.startAt),end:new Date(se.endAt||se.startAt),originalOccurrenceDate:se.originalOccurrenceDate?typeof se.originalOccurrenceDate=="string"?se.originalOccurrenceDate:se.originalOccurrenceDate.toISOString():ut.originalOccurrenceDate}:ut))}L({open:!0,message:x("global.changesSaved"),severity:"success"}),rt("updated","event",se),qe(),setTimeout(()=>{mt()},500)}catch(se){console.error("Error actualizando evento:",se);const je=se?.response?.data?.message||se?.message||x("global.errorSavingChanges");L({open:!0,message:je,severity:"error"})}finally{Ye(!1)}}async function de(b){xe(!1),ae&&(await ae(b),De(null))}async function ge(){E?.originalOccurrenceDate!=null?ye(!0):(H("event"),D(!0))}async function ie(){if(v)if(D(!1),z==="event")try{const b=Kt(E);qe(),await qa(v,b),L({open:!0,message:x("global.changesSaved"),severity:"success"}),rt("deleted","event",{id:b}),setTimeout(()=>{mt()},500)}catch(b){console.error("Error deleting event:",b);const _=b?.message?.includes("duplicate key")?x("global.eventAlreadyDeleted","El evento ya fue eliminado"):x("global.errorSavingChanges");L({open:!0,message:_,severity:"error"})}else{if(!I?.id)return;try{const b=Yt(I.id),_=I.calendarId;qe(),await _d(v,b),A(null),fe.resetFields(),L({open:!0,message:x("global.changesSaved"),severity:"success"}),rt("deleted","task",{id:b}),_&&setTimeout(()=>{ot(_)},500)}catch(b){console.error("Error deleting task:",b);const _=b?.message?.includes("duplicate key")?x("global.taskAlreadyDeleted","La tarea ya fue eliminada"):x("global.errorSavingChanges");L({open:!0,message:_,severity:"error"})}}}async function oe(b){ye(!1);const _=Kt(E);qe();try{b?await qa(v,_):await qa(v,_,E.originalOccurrenceDate),L({open:!0,message:x("global.changesSaved"),severity:"success"}),rt("deleted","event",{id:_}),setTimeout(()=>{mt()},500)}catch(U){console.error("Error deleting recurring event:",U);const te=U?.message?.includes("duplicate key")?x("global.eventAlreadyDeleted","El evento ya fue eliminado"):x("global.errorSavingChanges");L({open:!0,message:te,severity:"error"})}}async function Fe(){if(!v)return;const b=Kt(E);await Ld(v,b),qe()}async function ve(b,_,U){const te=_ instanceof Date?_:new Date(_),Q=U instanceof Date?U:new Date(U),me=te.toISOString(),we=Q.toISOString(),se=b.kind==="task";!se&&b.originalOccurrenceDate!=null?(S(b),De(()=>async je=>{await Ce(b,me,we,te,Q,se,je)}),xe(!0)):await Ce(b,me,we,te,Q,se,!1)}async function Ce(b,_,U,te,Q,me,we){me||gt.setEvents(se=>se.map(je=>je.id===b.id?{...je,start:te,end:Q,startAt:te,endAt:Q}:je)),L({open:!0,message:x("global.savingChanges"),severity:"info"});try{if(me){const se=Yt(b.id),je={title:b.title,description:b.description,startAt:_,endAt:U,calendarId:b.calendarId,allDay:b.allDay||!1,isCompleted:b.isCompleted||!1};await Qn(v,se,je),await ot(b.calendarId)}else{const se=Kt(b),je=b.originalOccurrenceDate!=null,na={title:b.title,details:b.details,startAt:new Date(_),endAt:new Date(U),allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:b.calendarId};(we||!je)&&(na.rule=b.rule);const ut={updatedActivity:na,activityId:se};je&&!we&&(ut.originalOccurrenceDate=b.originalOccurrenceDate),await Xn(v,ut)}L({open:!0,message:x("global.changesSaved"),severity:"success"}),setTimeout(()=>{mt()},500)}catch{me||gt.setEvents(se=>se.map(je=>je.id===b.id?{...je,start:b.start,end:b.end}:je)),L({open:!0,message:x("global.errorSavingChanges"),severity:"error"})}}function Ve(b,_){Ft("event",b,_)}function it(){Ee.nameField.actions.resetValue(),Ee.handleColorChange("#ffffff"),Ee.shareWithUsers.action.resetField(),Ee.handleGoogleCalendarChange(null)}function Qe(){it(),q(null),Y("create"),Xe.handleClose()}function Ne(b){Ee.nameField.actions.changeValue(b.title??""),Ee.nameField.actions.onSuccess(),Ee.handleColorChange(b.color??"#ffffff"),Ee.shareWithUsers.action.setUserIds(b.sharedWith??[]),Ee.handleGoogleCalendarChange(b.googleCalendar??null)}function Bt(){Y("create"),q(null),it(),Xe.handleOpen()}function Ea(b){Y("edit"),q(b),Ne(b),Xe.handleOpen()}async function Aa(){if(!v)return;const b=(Ee.nameField.attributes.value??"").trim();if(!b){L({open:!0,message:x("global.nameRequired"),severity:"error"});return}const _=Ee.shareWithUsers.field.userIds,U={title:b,color:Ee.color,sharedWith:_.length?_:void 0,googleCalendar:Ee.googleCalendar};try{if(Zt)await Hd(v,U);else{const te=re?.id;if(!te)return;await Gd(v,te,U)}Qe(),L({open:!0,message:x(Zt?"global.calendarCreatedSuccess":"global.calendarUpdatedSuccess"),severity:"success"}),Ct()}catch{L({open:!0,message:x("global.errorSavingChanges"),severity:"error"})}}async function kr(b){if(!v)return;let _;if(b?_={title:b.title,description:b.description||"",startAt:b.startAt,contactId:b.relatedContactId||null}:_=fe.create(),!_.title){L({open:!0,message:x("global.nameRequired"),severity:"error"});return}const U=k;if(!U){L({open:!0,message:x("global.errorSavingChanges"),severity:"error"});return}const te={..._,calendarId:U,contactId:_.contactId||m||null};Pe(!0);try{L({open:!0,message:x("global.savingChanges"),severity:"info"});const Q=await Od(v,te);Ue.includes(U)||ct(me=>[...me,U]),L({open:!0,message:x("global.changesSaved"),severity:"success"}),rt("created","task",Q),fe.resetFields(),qe(),setTimeout(()=>{ot(U)},500)}catch(Q){console.error("Error creando tarea:",Q);const me=Q?.response?.data?.message||Q?.message||x("global.errorSavingChanges");L({open:!0,message:me,severity:"error"})}finally{Pe(!1)}}function Er(){Ft("task")}async function Ar(){if(!v||!I?.id)return;const b=fe.create();if(!b.title){L({open:!0,message:x("global.nameRequired"),severity:"error"});return}const _=k||I.calendarId;if(!_){L({open:!0,message:x("global.errorSavingChanges"),severity:"error"});return}const U={title:b.title,description:b.description,startAt:b.startAt,endAt:b.endAt,calendarId:_,contactId:b.contactId??null};Ge(!0);try{const te=Yt(I.id),Q=await Qn(v,te,U);if(Q){const me={...Q,relatedContact:Q.relatedContact??I.relatedContact};A(me),Q.calendarId&&$(Q.calendarId),Et.setTasks(we=>we.map(se=>se.id===I?.id?{...se,...Q,relatedContact:Q.relatedContact??se.relatedContact,start:Q.startAt?new Date(Q.startAt):se.start,end:Q.startAt?new Date(Q.startAt):se.end}:se))}L({open:!0,message:x("global.changesSaved"),severity:"success"}),rt("updated","task",Q),qe(),setTimeout(()=>{const me=I.calendarId,we=Q?.calendarId||_;ot(we),me&&me!==we&&ot(me)},500)}catch(te){console.error("Error actualizando tarea:",te);const Q=te?.response?.data?.message||te?.message||x("global.errorSavingChanges");L({open:!0,message:Q,severity:"error"})}finally{Ge(!1)}}async function Dr(){I?.id&&(H("task"),D(!0))}async function Fr(){if(!v||!I?.id)return;const b=!I.isCompleted;try{const _=Yt(I.id),U=I.calendarId,te=await Wd(v,_,b);te&&A(te),L({open:!0,message:x("global.changesSaved"),severity:"success"}),U&&setTimeout(()=>{ot(U)},500)}catch{L({open:!0,message:x("global.errorSavingChanges"),severity:"error"})}}function Br(){const b=j==="event",_=b?E:I;if(!_)return;const U={..._};b?(S(null),F("create"),P(!0),setTimeout(()=>{le.titleField.actions.changeValue(U.title??""),le.descriptionField.actions.changeValue(U.details??U.description??""),le.locationField.actions.changeValue(U.location??""),le.colorField.actions.changeValue(U.color??""),le.setAllDay(U.allDay??!1),le.setIsPrivate(U.isPrivate??!1),le.setRecurrenceRule(U.rule??""),le.date.action.setSelectedStartDate(Z(U.startAt)),le.date.action.setSelectedEndDate(Z(U.endAt)),le.date.action.setError(!1),le.notifications.action.resetNotifications(),U.relatedContact?.id&&le.linkContact.action.handleSelectContact(U.relatedContact),O(U.calendarId??M)},50)):(A(null),F("create"),setTimeout(()=>{fe.titleField.actions.changeValue(U.title??""),fe.descriptionField.actions.changeValue(U.description??""),fe.date.action.setSelectedStartDate(Z(U.startAt)),fe.date.action.setSelectedEndDate(Z(U.startAt)),fe.date.action.setError(!1),U.relatedContact?.id&&fe.linkContact.action.handleSelectContact(U.relatedContact),$(U.calendarId??k)},50))}function Mr(b){const{startAt:_,endAt:U}=At(b),te={...b,kind:"task",startAt:_,endAt:U,description:b?.description??""};T("task"),A(te),$(te.calendarId??""),O(te.calendarId??""),S(null),F("view"),le.date.action.setError(!1),fe.date.action.setError(!1),Re.handleOpen()}function $r(b){return b?.kind==="task"?Mr(b):g(b)}l.useEffect(()=>{try{Ue&&localStorage.setItem(nt,JSON.stringify(Ue))}catch{}},[Ue]),l.useEffect(()=>{ze?.length&&ct(b=>{const _=new Set(ze.map(te=>te.id)),U=(b??[]).filter(te=>_.has(te));return U.length?U:ze.map(te=>te.id)})},[ze]),l.useEffect(()=>{try{localStorage.setItem(ce,at)}catch{}},[at]);const Pr={eventDialog:{...Re,handleClose:qe},dialogMode:B,createCalendarDialog:Xe,event:le,calendar:Ee,events:gt,handleCreateEvent:R,handleSelectEvent:$r,handleOpenEventCreate:Ia,handleStartEditingEvent:ka,handleSaveUpdatedEvent:V,handleEndEvent:Fe,handleDeleteEvent:ge,handleResizeEvent:ve,selectedEvent:E,savingSnackbar:G,handleCloseSnackbar:aa,dialogType:j,setDialogType:T,handleOpenTaskCreate:Er,handleOpenCreateFromSlot:Ve,handleCloseCreateCalendarDialog:Qe,calendarDialogMode:N,editingCalendar:re,handleOpenCreateCalendarDialog:Bt,handleOpenEditCalendarDialog:Ea,handleSubmitCalendar:Aa,tasks:Et,activeCalendarIds:Ue,setActiveCalendarIds:ct,handleCreateTask:kr,task:fe,selectedTask:I,taskCalendarId:k,setTaskCalendarId:$,eventCalendarId:M,setEventCalendarId:O,userManuallyChangedColor:W,setUserManuallyChangedColor:P,myCalendars:st,otherCalendars:Ta,isLoadingCalendars:Sa,isCreatingEvent:X,isUpdatingEvent:be,isCreatingTask:ee,isUpdatingTask:We,handleSaveUpdatedTask:Ar,handleDeleteTask:Dr,handleToggleTaskCompleted:Fr,handleDuplicateItem:Br,calendarView:at,setCalendarView:vt,calendarDate:va,setCalendarDate:Xt,navigateToDate:Qt,confirmDeleteDialog:{open:w,handleClose:()=>D(!1),itemType:z},handleConfirmDelete:ie,deleteRecurringDialog:{open:K,handleClose:()=>ye(!1)},handleConfirmDeleteRecurring:oe,editRecurringDialog:{open:ue,handleClose:()=>{xe(!1),De(null)}},handleConfirmEditRecurring:de,hiddenTabs:p};return t.jsx(Bd,{t:x,children:t.jsx(Ga.Provider,{value:Pr,children:e})})},ha=s.styled(s.Box)(()=>({display:"flex",flexDirection:"column",gap:.5})),Ya=s.styled(s.Box)(()=>({display:"flex",alignItems:"baseline",gap:1})),Ka=s.styled(s.Typography)(()=>({marginX:"8px",marginTop:"-15px",color:"text.primary"})),It="DD/MM/YYYY",ya="HH:mm",Jd=({selectedStartDate:e,selectedEndDate:a,handleSelectStart:n,handleSelectEnd:r,isError:o,disabled:i,hideLabel:d=!1,allDay:c=!1})=>{const u=$e(),p=l.useMemo(()=>a.diff(e,"minute"),[e,a]),m=l.useMemo(()=>{if(p===0)return"0 min";const x=Math.floor(p/60),j=p%60;return x===0?`${j} min`:j===0?`${x} h`:`${x}.${Math.round(j/60*10)} h`},[p]),h=x=>{if(!x)return;const j=x.hour(e.hour()).minute(e.minute()).second(0).millisecond(0),T=x.hour(a.hour()).minute(a.minute()).second(0).millisecond(0);n(j),r(T)},y=x=>{if(!x)return;const j=x.hour(0).minute(0).second(0).millisecond(0);n(j)},f=x=>{if(!x)return;const j=x.hour(23).minute(59).second(59).millisecond(999);r(j)},C=x=>{if(!x)return;const j=e.hour(x.hour()).minute(x.minute()).second(0).millisecond(0),T=j.add(p,"minute");n(j),r(T)},v=x=>{if(!x)return;let j=e.hour(x.hour()).minute(x.minute()).second(0).millisecond(0);(j.isBefore(e)||j.isSame(e))&&(j=j.add(1,"day")),r(j)};return i?t.jsxs(ha,{children:[!d&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),c?t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,marginTop:"10px"},children:[t.jsx(s.Typography,{variant:"body1",children:e.format(It)}),t.jsx(s.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(s.Typography,{variant:"body1",children:a.format(It)})]}):t.jsxs(s.Box,{children:[t.jsx(s.Typography,{variant:"body1",sx:{mb:1},children:e.format(It)}),t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(s.Typography,{variant:"body1",children:e.format(ya)}),t.jsx(s.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(s.Typography,{variant:"body1",children:a.format(ya)}),p>0&&t.jsxs(s.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1},children:["(",m,")"]})]})]})]}):t.jsxs(ha,{children:[!d&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),t.jsx(Je.LocalizationProvider,{dateAdapter:tn.AdapterDayjs,children:c?t.jsxs(Ya,{children:[t.jsx(Je.DatePicker,{disabled:i,format:It,label:u("global.from"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:e,onChange:y,minDate:Z(),sx:{flex:1}}),t.jsx(Ka,{variant:"body1",children:"\u2013"}),t.jsx(Je.DatePicker,{disabled:i,format:It,label:u("global.to"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:a,onChange:f,minDate:e,sx:{flex:1}})]}):t.jsxs(t.Fragment,{children:[t.jsx(s.Box,{sx:{mb:1},children:t.jsx(Je.DatePicker,{disabled:i,format:It,slotProps:{textField:()=>({size:"small",fullWidth:!0}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:e,onChange:h,minDate:Z()})}),t.jsxs(Ya,{children:[t.jsx(Je.TimePicker,{disabled:i,format:ya,ampm:!1,slotProps:{textField:()=>({label:u("global.from"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:e,onChange:C,sx:{alignSelf:"baseline",flex:1}}),t.jsx(Ka,{variant:"body1",children:"\u2013"}),t.jsxs(s.Box,{sx:{flex:1,display:"flex",flexDirection:"column",gap:.5},children:[t.jsx(Je.TimePicker,{disabled:i,format:ya,ampm:!1,slotProps:{textField:()=>({label:u("global.to"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:a,onChange:v,sx:{alignSelf:"baseline",width:"100%"}}),p>0&&t.jsxs(s.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1.5},children:["(",m,")"]})]})]})]})}),o&&t.jsx(s.Fade,{in:o,children:t.jsx(s.Typography,{color:"red",variant:"caption",sx:{mt:1,ml:"10px"},children:u("calendarView.reminders.errorDate")})})]})};s.styled(s.Box)(()=>({display:"flex",gap:2,alignItems:"center"})),s.styled(s.Box)(({theme:e})=>({width:"15%",userSelect:"none",color:e.palette.text.secondary}));const _e=({children:e,title:a})=>t.jsxs(s.Box,{children:[t.jsx(s.Typography,{variant:"subtitle2",sx:{mb:1,userSelect:"none"},children:a}),e]}),Ja=({titleField:e,disabled:a,variantMode:n="default"})=>{const r=$e(),{value:o,type:i,...d}=e.attributes,c=o||"";return n==="inline"?t.jsx(s.TextField,{...d,value:c,disabled:a,autoFocus:!0,fullWidth:!0,placeholder:r("global.addTitle"),variant:"standard",InputProps:{disableUnderline:!1,sx:{fontSize:22,fontWeight:500}},sx:{"& .MuiInput-underline:before":{borderBottomColor:"divider"},"& .MuiInput-underline:hover:before":{borderBottomColor:"text.secondary"},"& .MuiInput-underline:after":{borderBottomWidth:2}}}):a?t.jsx(_e,{title:r("global.title"),children:t.jsx(s.Typography,{variant:"body1",sx:{py:.5,color:u=>u.palette.text.secondary,fontSize:"0.9rem"},children:c||"-"})}):t.jsx(_e,{title:r("global.title"),children:t.jsx(s.TextField,{...d,value:c,disabled:a,autoFocus:!0,fullWidth:!0,variant:"standard",size:"small",type:i})})},Xd=s.styled(s.Box)(()=>({marginBottom:"6px",padding:"8px 16px",border:"1px solid lightgray",borderRadius:"3px"})),Qd=s.styled(s.Box)(()=>({marginBottom:"6px",padding:"4px 0px"})),Zn=s.styled(s.Box)(()=>({display:"flex",gap:"8px",alignItems:"center",userSelect:"none"})),Zd=s.styled(s.TextField)(()=>({width:"13%"})),ec=s.styled(s.Select)(()=>({width:"23%"})),tc=s.styled(s.Box)(()=>({display:"flex",gap:1,width:"100%",alignItems:"center"})),ac=s.styled(s.IconButton)(()=>({ml:"auto",color:"error"})),er=[{title:"minute",value:oa.EventNotificationPeriod.MINUTE},{title:"hour",value:oa.EventNotificationPeriod.HOUR},{title:"day",value:oa.EventNotificationPeriod.DAY}],nc=({data:e,timeValueHandler:a,timePeriodHandler:n,sendToContactHandler:r,deleteHandler:o,disabled:i=!1})=>{const d=$e(),c=e.timeValue??0;return i?t.jsxs(Qd,{children:[t.jsx(Zn,{children:t.jsxs(s.Typography,{variant:"body1",sx:{color:"text.secondary"},children:[d("calendarView.reminders.sendReminder.pt1")," ",c," ",d(`calendarView.reminders.timePeriod.${er.find(u=>u.value===e.timePeriod)?.title||"minutes"}`)," ",d("calendarView.reminders.sendReminder.pt2")]})}),e.sendToContact&&t.jsxs(s.Typography,{variant:"body1",sx:{mt:.5,fontSize:"0.875rem",color:"text.secondary"},children:["*",d("calendarView.reminders.sendReminderToContact")]})]}):t.jsxs(Xd,{children:[t.jsxs(Zn,{children:[t.jsx(s.Typography,{variant:"body2",sx:{userSelect:"none"},children:d("calendarView.reminders.sendReminder.pt1")}),t.jsx(Zd,{disabled:i,onChange:u=>a(u,e.id),value:c,type:"text",variant:"outlined",size:"small"}),t.jsx(ec,{disabled:i,onChange:u=>n(u,e.id),value:e.timePeriod,variant:"outlined",size:"small",MenuProps:{PaperProps:{sx:{backgroundColor:u=>u.palette.background.panel}}},children:er.map(u=>t.jsx(s.MenuItem,{value:u.value,children:d(`calendarView.reminders.timePeriod.${u.title}`)},u.value))}),t.jsx(s.Typography,{variant:"body2",sx:{userSelect:"none"},children:d("calendarView.reminders.sendReminder.pt2")})]}),t.jsxs(tc,{children:[t.jsx(s.FormControlLabel,{sx:{display:"flex",alignItems:"center"},disabled:i,label:d("calendarView.reminders.sendReminderToContact"),control:t.jsx(s.Checkbox,{checked:e.sendToContact,onChange:u=>r(u,e.id),color:"secondary",disabled:i})}),t.jsx(ac,{disabled:i,onClick:()=>o(e.id),sx:{ml:"auto"},children:t.jsx($t,{})})]})]})},rc=s.styled(s.Box)(()=>({display:"flex",flexDirection:"column",gap:1})),sc=s.styled(s.Box)(()=>({display:"flex",justifyContent:"space-between",alignItems:"baseline",userSelect:"none"})),oc=({notificationsField:e,disabled:a})=>{const n=$e(),{addNotification:r,deleteNotification:o,handleReminderChange:i,handleTimeFieldChange:d,handleTimePeriodChange:c}=e.action,u=e.notifications.length>0;return t.jsxs(rc,{children:[t.jsxs(sc,{children:[t.jsx(s.Typography,{variant:"subtitle2",sx:{userSelect:"none"},children:n("calendarView.reminders.title")}),!a&&t.jsx(s.Button,{disabled:a,startIcon:t.jsx(sa,{}),size:"small",variant:"outlined",onClick:r,color:"secondary",children:n("calendarView.reminders.addReminder")})]}),t.jsx(s.Box,{sx:{pt:1},children:u?e.notifications.map(p=>t.jsx(nc,{data:p,deleteHandler:o,sendToContactHandler:i,timePeriodHandler:c,timeValueHandler:d,disabled:a},p.id)):a?t.jsx(s.Typography,{variant:"body1",sx:{py:.5},children:"-"}):null})]})},tr=({descriptionField:e,disabled:a})=>{const n=$e(),{value:r,type:o,...i}=e.attributes,d=r||"";return a?t.jsx(_e,{title:n("global.description"),children:t.jsx(s.Typography,{variant:"body2",sx:{py:.5,whiteSpace:"pre-wrap",color:c=>c.palette.text.secondary,fontSize:"0.9rem"},children:d||"-"})}):t.jsx(_e,{title:n("global.description"),children:t.jsx(s.TextField,{...i,value:d,disabled:a,size:"small",multiline:!0,maxRows:5,fullWidth:!0,variant:"outlined"})})},ic=({onPlaceSelected:e})=>{const a=l.useRef(null),n=l.useRef(null),r=l.useRef(null),o=l.useRef(null),[i,d]=l.useState([]),[c,u]=l.useState(!1),p=$e();l.useEffect(()=>{if(!a.current)return;const y=()=>{if(!window.google?.maps?.places)return console.warn("Google Places API no est\xE1 disponible a\xFAn"),!1;n.current=new window.google.maps.places.AutocompleteService;const f=document.createElement("div");return r.current=new window.google.maps.places.PlacesService(f),o.current=new window.google.maps.places.AutocompleteSessionToken,!0};if(!y()){const f=setTimeout(()=>{y()},500);return()=>clearTimeout(f)}},[]);const m=y=>{const f=y.target.value;if(!f||f.length<3||!n.current){d([]),u(!1);return}n.current.getPlacePredictions({input:f,types:["geocode"],sessionToken:o.current||void 0},(C,v)=>{v===window.google.maps.places.PlacesServiceStatus.OK&&C?(d(C),u(!0)):(d([]),u(!1))})},h=(y,f)=>{r.current&&r.current.getDetails({placeId:y,fields:["geometry","formatted_address"],sessionToken:o.current||void 0},(C,v)=>{if(v===window.google.maps.places.PlacesServiceStatus.OK&&C?.geometry?.location){const x=C.geometry.location.lat(),j=C.geometry.location.lng(),T=C.formatted_address??f;e({lat:x,lng:j},T),a.current&&(a.current.value=T),u(!1),d([]),o.current=new window.google.maps.places.AutocompleteSessionToken}})};return l.useEffect(()=>{const y=f=>{a.current&&!a.current.contains(f.target)&&u(!1)};return document.addEventListener("mousedown",y),()=>document.removeEventListener("mousedown",y)},[]),t.jsxs("div",{style:{position:"absolute",width:"100%",maxWidth:300,margin:"0 auto",zIndex:13e3,top:"10px",left:"10px"},children:[t.jsx("input",{ref:a,placeholder:p("global.searchLocation","Buscar en Google Maps"),onChange:m,onFocus:()=>i.length>0&&u(!0),style:{width:"100%",padding:"12px 16px 5px",borderRadius:"24px",border:"1px solid #ccc",backgroundColor:"white",fontSize:"15px",boxShadow:"0 1px 4px rgba(0,0,0,0.3)",outline:"none",position:"relative",zIndex:13e3}}),c&&i.length>0&&t.jsx("div",{style:{position:"absolute",top:"100%",left:0,right:0,backgroundColor:"white",borderRadius:"8px",boxShadow:"0 2px 8px rgba(0,0,0,0.15)",marginTop:"4px",maxHeight:"300px",overflowY:"auto",zIndex:13001},children:i.map(y=>t.jsxs("div",{onClick:()=>h(y.place_id,y.description),style:{padding:"12px 16px",cursor:"pointer",borderBottom:"1px solid #f0f0f0",fontSize:"14px",transition:"background-color 0.2s"},onMouseEnter:f=>{f.currentTarget.style.backgroundColor="#f5f5f5"},onMouseLeave:f=>{f.currentTarget.style.backgroundColor="white"},children:[t.jsx("div",{style:{fontWeight:500},children:y.structured_formatting.main_text}),t.jsx("div",{style:{fontSize:"12px",color:"#666",marginTop:"2px"},children:y.structured_formatting.secondary_text})]},y.place_id))})]})},ar="AIzaSyAQ1bUt3y6UoAhbi5-HAwYwaFx71pAiaKU",nr=["places"],Xa={apiKey:ar,libraries:nr,loading:"async"},xa=()=>!!(window.google?.maps?.Map&&window.google?.maps?.Marker&&window.google?.maps?.Geocoder&&window.google?.maps?.places),rr=(e=ar,a=nr)=>{if(xa())return Promise.resolve();const n=()=>{document.querySelectorAll('script[src*="maps.googleapis.com"]').forEach(r=>{r.parentNode?.removeChild(r)})};return document.getElementById("google-maps-script")?new Promise((r,o)=>{let i=0;const d=100,c=setInterval(()=>{i++,xa()?(clearInterval(c),r()):i>=d&&(clearInterval(c),n(),rr(e,a).then(r).catch(o))},100)}):new Promise((r,o)=>{try{n();const i="initGoogleMaps";window[i]=()=>{xa()?r():setTimeout(()=>{xa()||console.warn("Google Maps API se carg\xF3 pero algunos componentes no est\xE1n disponibles"),r()},500)};const d=document.createElement("script");d.id="google-maps-script",d.type="text/javascript";const c=Array.isArray(a)?a.join(","):a;d.src=`https://maps.googleapis.com/maps/api/js?key=${e}&libraries=${c}&callback=${i}&loading=async`,d.async=!0,d.defer=!0,d.onerror=()=>{delete window[i],o(new Error("Error al cargar Google Maps API"))},document.head.appendChild(d)}catch(i){o(i)}})},Jt=(e,a,n=18,r=400,o=400,i="red",d=Xa.apiKey)=>`https://maps.googleapis.com/maps/api/staticmap?center=${e},${a}&zoom=${n}&size=${r}x${o}&markers=color:${i}%7Clabel:A%7C${e},${a}&key=${d}`,lc=({onLocationChange:e,initialLocation:a})=>{const n=l.useRef(null),r=l.useRef(null),o=l.useRef(null),i=l.useRef(null),[d,c]=l.useState(!0),[u,p]=l.useState(!1),[m,h]=l.useState(a||null),y=18,f=l.useCallback(T=>{h(T),e(T)},[e]);l.useEffect(()=>{let T=!0;(async()=>{try{if(await rr(Xa.apiKey,Xa.libraries),!window.google?.maps?.Map||!window.google?.maps?.Geocoder){console.error("Google Maps APIs no est\xE1n completamente disponibles"),c(!1);return}window.google?.maps?.Geocoder&&(i.current=new window.google.maps.Geocoder),c(!1)}catch(E){console.error("Error al cargar Google Maps:",E),c(!1)}})(),a||navigator.geolocation.getCurrentPosition(E=>{const S=E.coords.latitude,I=E.coords.longitude,A=S.toString(),B=I.toString(),F=Jt(S,I,y);f({lat:A,lng:B,title:"",description:"",url:F})},E=>{console.error("Error getting location:",E);const S=-34.6037,I=-58.3816;f({lat:S.toString(),lng:I.toString(),title:"",description:"",url:Jt(S,I,y)})})},[a,f,y]),l.useEffect(()=>{if(d||r.current)return;const T=setTimeout(()=>{r.current||C()},50);return()=>clearTimeout(T)},[d]),l.useEffect(()=>{u&&m&&x()},[u,m]),l.useEffect(()=>()=>{o.current&&(o.current.setMap(null),o.current=null)},[]);const C=()=>{if(!n.current){console.warn("Contenedor del mapa no disponible");return}if(!window.google?.maps){console.warn("Google Maps API no disponible a\xFAn");return}try{const T={zoom:y,disableDefaultUI:!1,zoomControl:!0,mapTypeControl:!1,streetViewControl:!1,fullscreenControl:!1};r.current=new window.google.maps.Map(n.current,T),r.current.addListener("click",E=>{v(E)}),p(!0)}catch(T){console.error("Error inicializando mapa:",T)}},v=T=>{if(!T.latLng||!i.current)return;const E={lat:T.latLng.lat(),lng:T.latLng.lng()};o.current?o.current.setPosition(E):r.current&&(o.current=new window.google.maps.Marker({position:E,map:r.current})),i.current.geocode({location:E},(S,I)=>{if(I==="OK"&&S&&S[0]){const A=S[0].formatted_address,B=Jt(E.lat,E.lng,y);f({lat:E.lat.toString(),lng:E.lng.toString(),title:A||"",description:"",url:B})}else{const A=Jt(E.lat,E.lng,y);f({lat:E.lat.toString(),lng:E.lng.toString(),title:`${E.lat.toFixed(6)}, ${E.lng.toFixed(6)}`,description:"",url:A})}})},x=()=>{if(!(!r.current||!m))try{const T={lat:parseFloat(m.lat),lng:parseFloat(m.lng)};r.current.setCenter(T),o.current?o.current.setPosition(T):o.current=new window.google.maps.Marker({position:T,map:r.current})}catch(T){console.error("Error actualizando mapa:",T)}},j=(T,E)=>{const S=Jt(T.lat,T.lng,y);f({lat:T.lat.toString(),lng:T.lng.toString(),title:E||"",description:"",url:S})};return d?t.jsx(s.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:t.jsx(s.CircularProgress,{})}):t.jsxs(s.Box,{sx:{position:"relative",height:"calc(100vh - 305px)"},children:[t.jsx(ic,{onPlaceSelected:j}),t.jsx("div",{style:{height:"100%"},ref:n})]})},dc=({open:e,onClose:a,onSelectLocation:n,initialAddress:r})=>{const o=$e(),[i,d]=l.useState(null),c=l.useRef(null);l.useEffect(()=>{e||d(null)},[e]),l.useEffect(()=>{c.current&&i&&(c.current.scrollTop=c.current.scrollHeight/4)},[i]);const u=l.useCallback(m=>{d(m)},[]),p=l.useCallback(()=>{i&&(n(i.title||`${i.lat}, ${i.lng}`,i.lat,i.lng),a())},[i,n,a]);return t.jsxs(s.Dialog,{open:e,onClose:a,maxWidth:"md",fullWidth:!0,disableEnforceFocus:!0,disableAutoFocus:!0,PaperProps:{sx:{maxHeight:"80vh",height:"80vh"}},sx:{"& .MuiDialog-paper":{backgroundColor:m=>m.palette.background.panel}},children:[t.jsxs(s.Box,{sx:{position:"relative",display:"flex",alignItems:"center",p:2},children:[t.jsx(s.Typography,{variant:"body1",sx:{flex:1},children:o("global.selectLocation","Seleccionar ubicaci\xF3n")}),t.jsx(s.IconButton,{"aria-label":"close",onClick:a,size:"small",children:t.jsx(Da,{fontSize:"small"})})]}),t.jsx(s.DialogContent,{sx:{p:0,display:"flex",flexDirection:"column",height:"100%"},children:t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",overflow:"hidden",width:"100%",height:"100%",position:"relative"},children:[t.jsx(s.Box,{ref:c,sx:{width:"100%",flex:1,overflow:"auto",zIndex:1},children:t.jsx(lc,{onLocationChange:u,initialLocation:void 0})}),t.jsx(s.Divider,{sx:{width:"100%",padding:0}}),t.jsxs(s.Box,{sx:{width:"100%",display:"flex",justifyContent:"flex-end",gap:".5rem",p:2},children:[t.jsx(s.Button,{variant:"outlined",color:"error",size:"small",sx:{borderRadius:"0.5rem"},onClick:a,children:o("global.cancel","Cancelar")}),t.jsx(s.Button,{variant:"outlined",color:"secondary",size:"small",sx:{borderRadius:"0.5rem"},onClick:p,disabled:!i,children:o("global.selectLocation","Seleccionar ubicaci\xF3n")})]})]})})]})},cc=({locationField:e,disabled:a})=>{const n=$e(),[r,o]=l.useState(!1),{value:i,type:d,...c}=e.attributes,u=i||"",p=()=>{a||o(!0)},m=()=>{o(!1)},h=y=>{e.actions.changeValue(y)};return a?t.jsx(s.Box,{children:t.jsx(_e,{title:n("global.location","Ubicaci\xF3n"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[u&&t.jsx(an,{sx:{opacity:.5,color:y=>y.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"body1",sx:{color:y=>y.palette.text.secondary,fontSize:"0.9rem"},children:u||"-"})]})})}):t.jsxs(s.Box,{children:[t.jsx(_e,{title:n("global.location","Ubicaci\xF3n"),children:t.jsx(s.TextField,{...c,value:u,disabled:a,size:"small",fullWidth:!0,variant:"outlined",placeholder:n("global.addLocation","Agregar ubicaci\xF3n"),onClick:p,InputProps:{startAdornment:t.jsx(an,{sx:{mr:1,opacity:.5},fontSize:"small"}),readOnly:!0},sx:{cursor:a?"default":"pointer","& .MuiInputBase-input":{cursor:a?"default":"pointer"}}})}),t.jsx(dc,{open:r,onClose:m,onSelectLocation:h,initialAddress:u})]})},uc=({handleScroll:e,contactList:a,handleSelectContact:n,selectedContactIds:r,search:o})=>{const i=$e(),d=s.useTheme();return t.jsx(s.List,{sx:{width:"100%",height:"100%",overflow:"auto",border:`1px solid ${d.palette.divider}`,borderTop:"none",backgroundColor:d.palette.background.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.12))"},onScroll:e,children:o&&a?.map(c=>t.jsxs(s.ListItemButton,{sx:{width:"100%"},onClick:()=>n(c),selected:r.includes(c.id),children:[t.jsx(s.ListItemIcon,{children:t.jsx(Be.Person,{sx:{color:u=>u.palette.text.disabled}})}),t.jsx(s.ListItemText,{primary:i(c.name),secondary:c?.phone})]},c.id))})},pc={format:"IContact",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"};function fc(e){const a=l.useRef(null),n=l.useRef(null),[r,o]=l.useState([]),[i,d]=l.useState(!1),[c,u]=l.useState(!1),[p,m]=l.useState(!1),[h,y]=l.useState(!1),[f,C]=l.useState(1),[v,x]=l.useState(!1),j=l.useCallback(()=>{n.current?.abort(),n.current=null,a.current&&(clearTimeout(a.current),a.current=null),d(!1),x(!1),C(1),y(!1),o([])},[]),T=A=>A.filter(B=>!!B?.id),E=l.useCallback(async({query:A,page:B})=>{if(!e)return;n.current?.abort();const F=new AbortController;n.current=F,u(!0);try{const k={...pc,currentPage:B,filter:[{value:A,column:"name",condition:""}]},$=await Yd({baseUrl:e.baseUrl,spaceId:e.spaceId,pagination:k,signal:F.signal});if(F.signal.aborted)return;const M=T($?.contactos??[]);d(!0);const O=$?.paginacion?.total??0;o(W=>{const P=B===1?M:(()=>{const N=new Map;for(const Y of W)N.set(Y.id,Y);for(const Y of M)N.set(Y.id,Y);return Array.from(N.values())})();return O&&P.length>=O&&x(!0),P})}finally{u(!1),m(!1),y(!1)}},[e]),S=l.useCallback(A=>{j(),A&&(a.current&&(clearTimeout(a.current),a.current=null),m(!0),a.current=setTimeout(()=>{E({query:A,page:1})},800))},[E,j]),I=l.useCallback((A,B)=>{const F=A.target;if(!(F.scrollHeight-F.scrollTop-F.clientHeight<1)||v||c||!B)return;const k=f+1;y(!0),C(k),E({query:B,page:k})},[v,c,f,E]);return{contactList:r,hasSearched:i,isLoading:c,isLoadingTimer:p,isNextPage:h,handleQueryChanged:S,handleScroll:I,resetSearchState:j}}const sr=({linkContactsHandler:e,disabled:a=!1})=>{const n=$e(),r=Vn(),o=l.useRef(null),[i,d]=l.useState(null),[c,u]=l.useState(""),{action:{handleSearchChange:p,handleSelectContact:m,handleRemoveContact:h},state:{search:y,selectedContact:f}}=e,{contactList:C,hasSearched:v,isLoading:x,isLoadingTimer:j,handleQueryChanged:T,handleScroll:E,resetSearchState:S}=fc(r),I=y||"",A=!!i&&I.length>0&&!a&&!f;l.useEffect(()=>{u(f?f.name:I)},[f?.id,f?.name,I]),l.useEffect(()=>{I?T(I):S()},[I,T,S]);const B=M=>{u(M),f&&M!==f.name&&h(),p(M),M&&!i?d(o.current):M||d(null)},F=M=>{u(M.name),m(M),d(null),S()},k=()=>{u(""),h()},$=()=>{d(null)};return a?t.jsx(_e,{title:n("global.linkContacts"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[f&&t.jsx(nn,{sx:{opacity:.5,color:M=>M.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"body1",sx:{color:M=>M.palette.text.secondary,fontSize:"0.9rem"},children:c||"-"})]})}):t.jsx(s.ClickAwayListener,{onClickAway:$,children:t.jsxs(s.Box,{children:[t.jsx(_e,{title:n("global.linkContacts"),children:t.jsx(s.TextField,{ref:o,fullWidth:!0,size:"small",placeholder:n("global.searchContacts"),value:c,onChange:M=>B(M.target.value),onFocus:()=>{c&&!f&&d(o.current)},InputProps:{startAdornment:t.jsx(s.InputAdornment,{position:"start",children:t.jsx(nn,{sx:{opacity:.5},fontSize:"small"})}),endAdornment:f?t.jsx(s.InputAdornment,{position:"end",children:t.jsx(s.IconButton,{size:"small",edge:"end",onClick:k,children:t.jsx(Da,{fontSize:"small"})})}):x||j?t.jsx(s.InputAdornment,{position:"end",children:t.jsx(s.CircularProgress,{size:18})}):null}})}),t.jsx(s.Popper,{open:A,anchorEl:i,placement:"bottom-start",style:{width:i?.offsetWidth||"auto",zIndex:1300},children:t.jsxs(s.Paper,{elevation:8,sx:{mt:.5,maxHeight:300,overflow:"hidden"},children:[v&&C.length>0&&t.jsx(uc,{handleScroll:M=>E(M,I),contactList:C,handleSelectContact:F,selectedContactIds:[],search:I}),v&&C.length===0&&t.jsx(s.Box,{sx:{p:2,textAlign:"center",color:"text.secondary"},children:t.jsx(s.Typography,{variant:"body2",children:n("global.noResults","No se encontraron resultados")})})]})})]})})},gc=({isFinalized:e})=>{const{eventDialog:{handleClose:a},handleCreateEvent:n,dialogMode:r,handleStartEditingEvent:o,handleSaveUpdatedEvent:i,handleEndEvent:d,dialogType:c,handleCreateTask:u,handleSaveUpdatedTask:p,selectedTask:m,handleToggleTaskCompleted:h,event:y,task:f,eventCalendarId:C,taskCalendarId:v,isCreatingEvent:x,isUpdatingEvent:j,isCreatingTask:T,isUpdatingTask:E}=l.useContext(Ga),S=$e(),I=c==="event",A=x,B=j,F=!1,k=T,$=E,M=()=>{I?n():u()},O=(()=>{if(r==="view")return o;if(r==="edit")return I?()=>i?.():()=>p?.();if(r==="create")return M})(),W=S(r==="view"?I?"global.editEvent":"global.editTask":r==="edit"?I?"global.saveEvent":"global.saveTask":I?"global.createEvent":"global.createTask"),P=I?A||B:k||$,N=()=>{if(r==="view")return!0;const G=I?y:f,L=I?C:v;return G?.titleField?.attributes?.value?.trim().length>0&&!!L},Y=I?A||B||e||!N():k||$||e||!N(),re=!I&&r==="view",q=m?.isCompleted||!1;return re?t.jsx(s.DialogActions,{children:t.jsx(Ze.LoadingButton,{startIcon:t.jsx(Be.CheckCircleOutline,{}),size:"small",loading:$,disabled:$,onClick:h,variant:"contained",color:q?"inherit":"primary",children:q?S("global.markAsIncomplete","Marcar como incompleta"):S("global.markAsCompleted","Marcar como completada")})}):t.jsxs(s.DialogActions,{children:[t.jsx(s.Button,{variant:"outlined",size:"small",onClick:a,color:"secondary",children:S("global.cancel")}),I&&(r==="edit"||r==="view")&&t.jsx(Ze.LoadingButton,{startIcon:t.jsx(Be.EventAvailable,{}),size:"small",disabled:e,loading:F,onClick:d,variant:"contained",children:S("global.finalizeEvent")}),t.jsx(Ze.LoadingButton,{startIcon:t.jsx(Be.EditCalendar,{}),size:"small",loading:P,disabled:Y,onClick:O,variant:"contained",children:W})]})},or={textTransform:"none",borderRadius:2,minHeight:34,px:1.5,fontSize:13,fontWeight:500,lineHeight:1.1},mc=({value:e,onChange:a,labels:n})=>t.jsxs(s.Box,{sx:{display:"flex",gap:1},children:[t.jsx(s.Button,{size:"small",onClick:()=>a("event"),variant:e==="event"?"contained":"text",disableElevation:!0,color:"primary",sx:{...or},children:n.event}),t.jsx(s.Button,{size:"small",onClick:()=>a("task"),variant:e==="task"?"contained":"text",disableElevation:!0,sx:{...or},color:"primary",children:n.task})]}),hc="DD/MM/YYYY",yc="HH:mm",xc=({selectedDateTime:e,handleSelect:a,disabled:n,isError:r=!1,hideLabel:o=!1})=>{const i=$e(),d=u=>{if(!u)return;const p=u.hour(e.hour()).minute(e.minute());a(p)},c=u=>{if(!u)return;const p=e.hour(u.hour()).minute(u.minute());a(p)};return n?t.jsxs(ha,{children:[!o&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:i("global.date")}),t.jsxs(s.Box,{children:[t.jsx(s.Typography,{variant:"body1",sx:{mb:1},children:e.format(hc)}),t.jsx(s.Typography,{variant:"body1",children:e.format(yc)})]})]}):t.jsxs(ha,{children:[!o&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:i("global.date")}),t.jsx(Ya,{children:t.jsxs(Je.LocalizationProvider,{dateAdapter:tn.AdapterDayjs,children:[t.jsx(Je.DatePicker,{disabled:n,value:e,onChange:d,slotProps:{textField:()=>({label:i("global.date"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:u=>u.palette.background.panel}}}},sx:{alignSelf:"baseline",flex:1},minDate:Z()}),t.jsx(Ka,{variant:"body1",children:"_"}),t.jsx(Je.TimePicker,{disabled:n,value:e,onChange:c,ampm:!1,slotProps:{textField:()=>({label:i("global.time"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:u=>u.palette.background.panel}}}},sx:{alignSelf:"baseline",flex:1}})]})}),t.jsx(s.Fade,{in:r,children:t.jsx(s.Typography,{color:"red",variant:"caption",children:i("conversations.sidebar.events.errorDate")})})]})},ir=({disabled:e,calendars:a,userId:n,value:r,onChange:o,loading:i=!1})=>{const d=$e(),c=l.useMemo(()=>a??[],[a]),u=l.useMemo(()=>{const p=c.find(m=>m.id===r);return e&&r&&!p&&!i&&console.warn("TaskCalendarSelect: Calendario no encontrado",{calendarId:r,availableCalendars:c.map(m=>({id:m.id,title:m.title})),totalCalendars:c.length}),p??null},[c,r,e,i]);if(e){if(i)return t.jsx(_e,{title:d("global.calendar"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[t.jsx(s.CircularProgress,{size:16,sx:{opacity:.5}}),t.jsx(s.Typography,{variant:"subtitle2",sx:{color:m=>m.palette.text.secondary,fontSize:"0.9rem"},children:d("global.loading","Cargando...")})]})});const p=u?u.title:r?d("global.calendarNotFound","Calendario no disponible"):"-";return t.jsx(_e,{title:d("global.calendar"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[u&&t.jsx(ns,{sx:{opacity:.5,color:m=>m.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"subtitle2",sx:{color:m=>m.palette.text.secondary,fontSize:"0.9rem"},children:p})]})})}return t.jsx(_e,{title:d("global.calendar"),children:t.jsx(s.Autocomplete,{disabled:e||i,size:"small",fullWidth:!0,options:c,value:u,onChange:(p,m)=>o(m?.id??""),getOptionLabel:p=>p?.title??"",isOptionEqualToValue:(p,m)=>p.id===m.id,loading:i,groupBy:n?p=>p.userId===n?d("calendarView.myCalendars"):d("calendarView.othersCalendars"):void 0,renderGroup:p=>t.jsxs("li",{children:[t.jsx(s.ListSubheader,{component:"div",sx:{lineHeight:"32px",fontSize:"0.75rem",fontWeight:600,color:"text.secondary",backgroundColor:m=>m.palette.background.panel},children:p.group}),t.jsx("ul",{style:{padding:0},children:p.children})]},p.key),slotProps:{popper:{sx:{zIndex:1400}},paper:{sx:{backgroundColor:p=>p.palette.background.panel}}},renderInput:p=>t.jsx(s.TextField,{...p,placeholder:d("global.selectCalendar"),InputProps:{...p.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[i?t.jsx(s.CircularProgress,{color:"inherit",size:20}):null,p.InputProps.endAdornment]})}})})})},bc=({checked:e,onChange:a,disabled:n})=>{const r=$e();return t.jsx(s.Box,{sx:{display:"flex",alignItems:"center"},children:t.jsx(s.FormControlLabel,{control:t.jsx(s.Checkbox,{checked:e,onChange:o=>a(o.target.checked),disabled:n,color:"secondary"}),label:r("global.allDay","Todo el d\xEDa")})})},vc=({colorField:e,disabled:a,onColorChange:n})=>{const r=$e(),o=e.attributes.value||"#1976d2",i=(c=>{if(c.startsWith("#"))return c;const u=c.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);if(u&&u[1]&&u[2]&&u[3]){const p=parseInt(u[1]),m=parseInt(u[2]),h=parseInt(u[3]),y=f=>{const C=f.toString(16);return C.length===1?"0"+C:C};return`#${y(p)}${y(m)}${y(h)}`}return"#1976d2"})(o),d=c=>{const u=c.target.value;n?n(u):e.actions.changeValue(u)};return a?t.jsx(_e,{title:r("global.color","Color"),children:t.jsxs(s.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:[t.jsx(s.Box,{sx:{width:40,height:40,backgroundColor:i,border:"1px solid rgba(0, 0, 0, 0.23)",borderRadius:1}}),t.jsx(s.Typography,{variant:"body2",sx:{color:"text.secondary"},children:i})]})}):t.jsx(_e,{title:r("global.color","Color"),children:t.jsx(s.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:t.jsx("input",{type:"color",value:i,onChange:d,disabled:a,style:{width:60,height:40,border:"1px solid rgba(0, 0, 0, 0.23)",borderRadius:4,cursor:a?"not-allowed":"pointer"}})})})},lr=[{value:"",label:"global.noRepeat"},{value:"FREQ=DAILY",label:"global.everyDay"},{value:"FREQ=WEEKLY",label:"global.everyWeek"},{value:"FREQ=MONTHLY",label:"global.everyMonth"},{value:"FREQ=YEARLY",label:"global.everyYear"},{value:"FREQ=DAILY;INTERVAL=2",label:"global.everyTwoDays"},{value:"FREQ=WEEKLY;INTERVAL=2",label:"global.everyTwoWeeks"},{value:"FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR",label:"global.everyWeekday"}],Cc=({value:e,onChange:a,disabled:n,hideLabel:r=!1})=>{const o=$e(),i=p=>{a(p.target.value)},d=l.useMemo(()=>lr.map(p=>t.jsx(s.MenuItem,{value:p.value,children:o(p.label,p.label)},p.value)),[o]),c=l.useMemo(()=>{const p=lr.find(m=>m.value===e);return p?o(p.label,p.label):o("global.noRepeat")},[e,o]);if(n)return r?t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(Fa,{sx:{opacity:.5,color:p=>p.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"body2",children:c})]}):t.jsx(_e,{title:o("global.recurrence","Recurrencia"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[t.jsx(Fa,{sx:{opacity:.5,color:p=>p.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"body1",children:c})]})});const u=t.jsx(s.Select,{disabled:n,size:"small",variant:"outlined",fullWidth:!0,value:e||"",onChange:i,startAdornment:t.jsx(Fa,{sx:{mr:1,ml:1,opacity:.5},fontSize:"small"}),MenuProps:{PaperProps:{sx:{backgroundColor:p=>p.palette.background.panel}}},children:d});return r?u:t.jsx(_e,{title:o("global.recurrence","Recurrencia"),children:u})},Sc=({open:e,onClose:a,onConfirm:n,itemTitle:r,itemType:o})=>{const{t:i}=Ke.useTranslation(),d=()=>{n(),a()},c=o==="event"?i("calendar.deleteEvent","Eliminar evento"):i("calendar.deleteTask","Eliminar tarea"),u=o==="event"?i("calendar.confirmDeleteEvent","\xBFEst\xE1s seguro de que quer\xE9s eliminar este evento?"):i("calendar.confirmDeleteTask","\xBFEst\xE1s seguro de que quer\xE9s eliminar esta tarea?");return t.jsxs(s.Dialog,{open:e,onClose:a,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:p=>p.palette.background.panel}},children:[t.jsxs(s.DialogTitle,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(rs,{color:"warning"}),c]}),t.jsxs(s.DialogContent,{children:[t.jsx(s.Typography,{variant:"body2",sx:{mb:2},children:u}),r&&t.jsx(s.Box,{sx:{p:1.5,bgcolor:"action.hover",borderRadius:1,borderLeft:3,borderColor:"warning.main"},children:t.jsxs(s.Typography,{variant:"body2",sx:{fontWeight:500},children:['"',r,'"']})})]}),t.jsxs(s.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(s.Button,{onClick:a,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:i("global.cancel","Cancelar")}),t.jsx(s.Button,{onClick:d,variant:"contained",color:"error",sx:{borderRadius:"8px"},children:i("global.delete","Eliminar")})]})]})},jc=({open:e,onClose:a,onConfirm:n,eventTitle:r})=>{const{t:o}=Ke.useTranslation(),[i,d]=l.useState("single"),c=()=>{n(i==="all"),a()},u=()=>{d("single"),a()};return t.jsxs(s.Dialog,{open:e,onClose:u,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:p=>p.palette.background.panel}},children:[t.jsx(s.DialogTitle,{children:o("calendar.deleteRecurringEvent","Borrar evento recurrente")}),t.jsxs(s.DialogContent,{children:[r&&t.jsxs(s.Box,{sx:{mb:2,color:"text.secondary",fontSize:"0.875rem"},children:['"',r,'"']}),t.jsx(s.FormControl,{component:"fieldset",fullWidth:!0,children:t.jsxs(s.RadioGroup,{value:i,onChange:p=>d(p.target.value),children:[t.jsx(s.FormControlLabel,{value:"single",control:t.jsx(s.Radio,{color:"secondary"}),label:o("calendar.deleteThisEvent","Este evento"),sx:{mb:1}}),t.jsx(s.FormControlLabel,{value:"all",control:t.jsx(s.Radio,{color:"secondary"}),label:o("calendar.deleteAllEvents","Todos los eventos")})]})})]}),t.jsxs(s.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(s.Button,{onClick:u,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:o("global.cancel","Cancelar")}),t.jsx(s.Button,{onClick:c,variant:"contained",color:"error",sx:{borderRadius:"8px"},children:o("global.delete","Eliminar")})]})]})},wc=({open:e,onClose:a,onConfirm:n,eventTitle:r})=>{const{t:o}=Ke.useTranslation(),[i,d]=l.useState("single"),c=()=>{n(i==="all"),a()},u=()=>{d("single"),a()};return t.jsxs(s.Dialog,{open:e,onClose:u,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:p=>p.palette.background.panel}},children:[t.jsx(s.DialogTitle,{children:o("calendar.editRecurringEvent","Editar evento recurrente")}),t.jsxs(s.DialogContent,{children:[r&&t.jsxs(s.Box,{sx:{mb:2,color:"text.secondary",fontSize:"0.875rem"},children:['"',r,'"']}),t.jsx(s.FormControl,{component:"fieldset",fullWidth:!0,children:t.jsxs(s.RadioGroup,{value:i,onChange:p=>d(p.target.value),children:[t.jsx(s.FormControlLabel,{value:"single",control:t.jsx(s.Radio,{color:"secondary"}),label:o("calendar.editThisEvent","Este evento"),sx:{mb:1}}),t.jsx(s.FormControlLabel,{value:"all",control:t.jsx(s.Radio,{color:"secondary"}),label:o("calendar.editAllEvents","Todos los eventos")})]})})]}),t.jsxs(s.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(s.Button,{onClick:u,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:o("global.cancel","Cancelar")}),t.jsx(s.Button,{onClick:c,variant:"contained",color:"secondary",sx:{borderRadius:"8px"},children:o("global.save","Guardar")})]})]})},Tc=()=>{const e=$e(),{event:a,task:n,dialogMode:r,selectedEvent:o,handleDeleteEvent:i,handleStartEditingEvent:d,handleDuplicateItem:c,dialogType:u,setDialogType:p,selectedTask:m,taskCalendarId:h,setTaskCalendarId:y,eventCalendarId:f,setEventCalendarId:C,myCalendars:v,otherCalendars:x,isLoadingCalendars:j,handleDeleteTask:T,userManuallyChangedColor:E,setUserManuallyChangedColor:S,eventDialog:{open:I,handleClose:A},confirmDeleteDialog:B,handleConfirmDelete:F,deleteRecurringDialog:k,handleConfirmDeleteRecurring:$,editRecurringDialog:M,handleConfirmEditRecurring:O,hiddenTabs:W,savingSnackbar:P,handleCloseSnackbar:N}=l.useContext(Ga);if(!a||!n)return t.jsx(s.Modal,{open:I,onClose:A,closeAfterTransition:!0,slots:{backdrop:s.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(s.Fade,{in:I,timeout:200,children:t.jsx(s.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:X=>X.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"}})})});const Y=u==="event",re=Y?a:n,q=Y?o:m,G=l.useRef(null);l.useEffect(()=>{I||(G.current=null)},[I]);const{titleField:L,descriptionField:w,date:D,linkContact:z}=re,H=Y?a.notifications:null,K=Y?{locationField:a.locationField,colorField:a.colorField,allDay:a.allDay,setAllDay:a.setAllDay,isPrivate:a.isPrivate,setIsPrivate:a.setIsPrivate,recurrenceRule:a.recurrenceRule,setRecurrenceRule:a.setRecurrenceRule}:null,ye=e(r==="edit"?Y?"global.editEvent":"global.editTask":r==="create"?Y?"global.createEvent":"global.createTask":Y?"global.showEvent":"global.showTask"),ue=(r==="edit"||r==="view")&&!!q?.id,xe=r==="view";l.useEffect(()=>{if(r!=="create"||u!=="event"||!I||E||!f)return;const X=v.find(pe=>pe.id===f);X?.color&&a.colorField.actions.changeValue(X.color)},[r,u,I,f,E,v]),l.useEffect(()=>{if(!I||u!=="event"||r!=="edit")return;const X=D.state.selectedStartDate.isAfter(D.state.selectedEndDate)&&!D.state.selectedStartDate.isSame(D.state.selectedEndDate,"minute");G.current!==X&&(G.current=X,D.action.setError(X))},[I,u,r,D.state.selectedStartDate.valueOf(),D.state.selectedEndDate.valueOf()]);const ae=X=>{if(X==="task"){const pe=a.date.state.selectedStartDate;n.date.action.setSelectedStartDate(pe),n.date.action.setSelectedEndDate(pe),n.date.action.setError(!1),a.date.action.setError(!1)}else{const pe=n.date.state.selectedStartDate;a.date.action.setSelectedStartDate(pe),a.date.action.setError(!1),n.date.action.setError(!1)}p(X)},De=X=>{a.colorField.actions.changeValue(X),S(!0)};return t.jsxs(t.Fragment,{children:[t.jsx(s.Modal,{open:I,onClose:A,closeAfterTransition:!0,slots:{backdrop:s.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(s.Fade,{in:I,timeout:200,children:t.jsxs(s.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",maxHeight:"calc(100vh - 64px)",bgcolor:X=>X.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:[t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",gap:2,p:3,pt:4,overflowY:"auto",flex:1},children:[t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",justifyContent:r==="create"?"flex-end":"space-between",gap:1,mb:.5},children:[r!=="create"&&t.jsx(s.Typography,{sx:{fontWeight:600},children:ye}),t.jsxs(s.Box,{sx:{display:"flex",gap:1},children:[xe&&t.jsx(s.IconButton,{size:"small",onClick:d,"aria-label":e("global.edit","Editar"),children:t.jsx(yt,{fontSize:"small"})}),ue&&t.jsx(s.IconButton,{size:"small",onClick:Y?i:T,color:"error","aria-label":e("global.delete","Eliminar"),children:t.jsx($t,{fontSize:"small"})}),xe&&t.jsx(s.IconButton,{size:"small",onClick:c,"aria-label":e("global.duplicate","Duplicar"),children:t.jsx(ss,{fontSize:"small"})})]})]}),r==="create"&&t.jsxs(t.Fragment,{children:[t.jsx(Ja,{disabled:!1,titleField:L,variantMode:"inline"}),!W&&t.jsx(mc,{value:u,onChange:ae,labels:{event:e("global.event","Evento"),task:e("global.task","Tarea")}})]}),u==="event"?t.jsxs(t.Fragment,{children:[r!=="create"&&t.jsx(Ja,{disabled:r==="view",titleField:L}),t.jsx(tr,{disabled:r==="view",descriptionField:w}),t.jsx(ir,{disabled:r==="view",calendars:[...v,...x],userId:v[0]?.userId,value:f,onChange:X=>C(X),loading:j}),t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,borderRadius:1,padding:"15px",bgcolor:X=>X.palette.mode==="dark"?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.02)"},children:[t.jsx(s.Box,{sx:{display:"flex",gap:1.5,alignItems:"flex-start"},children:t.jsx(s.Box,{sx:{flex:1},children:t.jsx(Jd,{disabled:r==="view",selectedStartDate:D.state.selectedStartDate,selectedEndDate:D.state.selectedEndDate,handleSelectStart:D.action.handleSelect(D.action.setSelectedStartDate),handleSelectEnd:D.action.handleSelect(D.action.setSelectedEndDate),isError:D.state.error,hideLabel:!0,allDay:K?.allDay??!1})})}),K&&t.jsxs(s.Box,{sx:{display:"flex",gap:2,alignItems:"center"},children:[t.jsx(bc,{checked:K.allDay,onChange:K.setAllDay,disabled:r==="view"}),t.jsx(s.Box,{sx:{flex:1},children:t.jsx(Cc,{disabled:r==="view",value:K.recurrenceRule,onChange:K.setRecurrenceRule,hideLabel:!0})})]})]}),K&&t.jsx(t.Fragment,{children:t.jsx(vc,{disabled:r==="view",colorField:K.colorField,onColorChange:r==="create"?De:void 0})}),H&&t.jsx(oc,{disabled:r==="view",notificationsField:H}),t.jsx(sr,{linkContactsHandler:z,disabled:r==="view"}),K&&t.jsx(cc,{disabled:r==="view",locationField:K.locationField})]}):t.jsxs(t.Fragment,{children:[r!=="create"&&t.jsx(Ja,{disabled:r==="view",titleField:L}),t.jsx(tr,{disabled:r==="view",descriptionField:w}),t.jsx(ir,{disabled:r==="view",calendars:[...v,...x],userId:v[0]?.userId,value:h,onChange:X=>y(X),loading:j}),t.jsx(s.Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,p:2,borderRadius:1,bgcolor:X=>X.palette.mode==="dark"?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.02)"},children:t.jsxs(s.Box,{sx:{display:"flex",gap:1.5,alignItems:"flex-start"},children:[t.jsx(os,{sx:{mt:.5,color:"text.secondary",fontSize:"1.25rem"}}),t.jsx(s.Box,{sx:{flex:1},children:t.jsx(xc,{disabled:r==="view",selectedDateTime:D.state.selectedStartDate,handleSelect:X=>{D.action.setSelectedStartDate(X),D.action.setSelectedEndDate(X),D.action.setError(!1)},isError:D.state.error,hideLabel:!0})})]})}),t.jsx(sr,{linkContactsHandler:z,disabled:r==="view"})]})]}),t.jsx(s.Box,{sx:{borderTop:1,borderColor:"divider",p:2},children:t.jsx(gc,{isFinalized:o?.finalized})})]})})}),t.jsx(Sc,{open:B.open,onClose:B.handleClose,onConfirm:F,itemTitle:B.itemType==="event"?o?.title:m?.title,itemType:B.itemType}),t.jsx(jc,{open:k.open,onClose:k.handleClose,onConfirm:$,eventTitle:o?.title}),t.jsx(wc,{open:M.open,onClose:M.handleClose,onConfirm:O,eventTitle:o?.title}),t.jsx(s.Snackbar,{open:P.open,autoHideDuration:6e3,onClose:N,anchorOrigin:{vertical:"bottom",horizontal:"center"},children:t.jsx(s.Alert,{onClose:N,severity:P.severity,sx:{width:"100%"},variant:"filled",children:P.message})})]})},dr=e=>{const a=e.palette.background;return s.createTheme({...e,components:{MuiSelect:{defaultProps:{MenuProps:{PaperProps:{sx:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}}}},MuiAutocomplete:{styleOverrides:{popper:{zIndex:11,"& div":{backgroundColor:a.panel}}}},MuiPaper:{styleOverrides:{root:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}},MuiMenu:{styleOverrides:{paper:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}},MuiList:{styleOverrides:{root:{padding:0}}},MuiModal:{styleOverrides:{root:{}}},MuiTypography:{styleOverrides:{root:{color:e.palette.text.primary}}},MuiChip:{styleOverrides:{root:{color:e.palette.text.primary,border:"1px solid rgba(0, 0, 0, 0.1)",borderRadius:"4px",height:"20px",fontSize:"0.7125rem"}}},MuiListSubheader:{styleOverrides:{root:{backgroundColor:a.accordionHeader}}},MuiButton:{styleOverrides:{outlined:{color:e.palette.mode==="light"?e.palette.primary.dark:e.palette.info.dark,borderColor:e.palette.mode==="light"?e.palette.primary.dark:e.palette.info.dark,"&:hover":{borderColor:e.palette.mode==="light"?e.palette.primary.main:e.palette.info.main,color:e.palette.mode==="light"?e.palette.primary.main:e.palette.info.main}}}}}})},Ic=e=>{const{open:a,onClose:n,baseUrl:r,spaceId:o,language:i="en",mode:d="create",type:c="event",eventCalendarId:u,taskCalendarId:p,selectedEvent:m,selectedTask:h,hiddenTabs:y=!1,onActionComplete:f,contactId:C,initialStartDate:v,initialEndDate:x}=e,{i18n:j}=Ke.useTranslation();l.useEffect(()=>{i&&j.changeLanguage(i)},[i,j]);const T=l.useMemo(()=>({baseUrl:r,spaceId:o}),[r,o]);return t.jsx(dd,{value:T,children:t.jsx(Kd,{externalOpen:a,externalOnClose:n,externalMode:d,externalType:c,externalEventCalendarId:u,externalTaskCalendarId:p,externalSelectedEvent:m,externalSelectedTask:h,hiddenTabs:y,externalOnActionComplete:f,externalContactId:C,externalInitialStartDate:v,externalInitialEndDate:x,children:t.jsx(Tc,{})})})},kc=e=>{const a=s.useTheme(),n=a?.palette?a:s.createTheme(),r=dr(n);return t.jsx(s.ThemeProvider,{theme:r,children:t.jsx(Ke.I18nextProvider,{i18n:jt,children:t.jsx(Ic,{...e})})})},ba=s.createTheme({name:"lightBlueIndigo",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#ebf6fd",mainGradient:"linear-gradient(270deg, #215c97, #1976d2)",navMenu:"#1976d2",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#1976d2",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#1976d2",light:"#42a5f5",dark:"#1565c0",contrastText:"#fff"},secondary:{main:"#1976d2",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#ebf6fd",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#1976d2"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#1976d2"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),cr=s.createTheme({name:"lightBlue",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#e3f2fd",mainGradient:"linear-gradient(270deg, #005cb2, #1e88e5)",navMenu:"#4fc354",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#1e88e5",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#1e88e5",light:"#6ab7ff",dark:"#005cb2",contrastText:"#fff"},secondary:{main:"#1e88e5",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#e3f2fd",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#1e88e5"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#1e88e5"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),ur=s.createTheme({name:"lightRed",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#ffebee",mainGradient:"linear-gradient(270deg, #b61827, #ef5350)",navMenu:"#f44336",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#ef5350",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#ef5350",light:"#ff867c",dark:"#b61827",contrastText:"#fff"},secondary:{main:"#ef5350",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#ffebee",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#ef5350"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#ef5350"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),pr=s.createTheme({name:"lightGreen",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#e8f5e9",mainGradient:"linear-gradient(270deg, #087f23, #4caf50)",navMenu:"#4fc354",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#4caf50",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#4caf50",light:"#80e27e",dark:"#087f23",contrastText:"#fff"},secondary:{main:"#4caf50",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#e8f5e9",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#4caf50"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#4caf50"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),fr=s.createTheme({name:"lightPink",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fce4ec",mainGradient:"linear-gradient(270deg, #b0003a, #e91e63)",navMenu:"#e91e63",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#e91e63",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#e91e63",light:"#ff6090",dark:"#b0003a",contrastText:"#fff"},secondary:{main:"#9c27b0",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fce4ec",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#e91e63"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#e91e63"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),gr=s.createTheme({name:"lightPurple",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#f3e5f5",mainGradient:"linear-gradient(270deg, #6a0080, #9c27b0)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#9c27b0",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#9c27b0",light:"#d05ce3",dark:"#6a0080",contrastText:"#fff"},secondary:{main:"#9c27b0",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#f3e5f5",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#9c27b0"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#9c27b0"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),mr=s.createTheme({name:"lightTeal",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#e0f2f1",mainGradient:"linear-gradient(270deg, #00675b, #009688)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#009688",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#009688",light:"#52c7b8",dark:"#00675b",contrastText:"#fff"},secondary:{main:"#009688",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#e0f2f1",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#009688"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#009688"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),hr=s.createTheme({name:"lightLime",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#f9fbe7",mainGradient:"linear-gradient(270deg, #99aa00, #cddc39)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#cddc39",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#cddc39",light:"#ffff6e",dark:"#99aa00",contrastText:"#fff"},secondary:{main:"#cddc39",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#f9fbe7",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#cddc39"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#cddc39"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),yr=s.createTheme({name:"lightYellow",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fffde7",mainGradient:"linear-gradient(270deg, #c8b900, #ffeb3b)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#ffeb3b",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#ffeb3b",light:"#ffff72",dark:"#c8b900",contrastText:"#fff"},secondary:{main:"#ffeb3b",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fffde7",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#ffeb3b"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#ffeb3b"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),xr=s.createTheme({name:"lightAmber",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fff8e1",mainGradient:"linear-gradient(270deg, #c68400, #ffb300)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#ffb300",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#ffb300",light:"#ffe54c",dark:"#c68400",contrastText:"#fff"},secondary:{main:"#ffb300",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fff8e1",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#ffb300"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#ffb300"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),br=s.createTheme({name:"lightOrange",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fff3e0",mainGradient:"linear-gradient(270deg, #c66900, #ff9800)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#ff9800",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#ff9800",light:"#ffc947",dark:"#c66900",contrastText:"#fff"},secondary:{main:"#ff9800",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fff3e0",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#ff9800"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#ff9800"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),vr=s.createTheme({name:"lightBrown",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#efebe9",mainGradient:"linear-gradient(270deg, #4b2c20, #795548)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#795548",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#795548",light:"#a98274",dark:"#4b2c20",contrastText:"#fff"},secondary:{main:"#795548",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#efebe9",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#795548"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#795548"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),Cr=s.createTheme({name:"lightGray",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fafafa",mainGradient:"linear-gradient(270deg, #707070, #9e9e9e)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#9e9e9e",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#9e9e9e",light:"#cfcfcf",dark:"#707070",contrastText:"#fff"},secondary:{main:"#9e9e9e",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fafafa",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#9e9e9e"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#9e9e9e"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),Sr=s.createTheme({name:"darkBlue",palette:{mode:"dark",primary:{main:"#1f5c8e",light:"#2196f3",dark:"#0d47a1",contrastText:"#fff"},secondary:{light:"#FFEA41",main:"#90caf9",dark:"#DBBE01",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#f44336",light:"#e57373",dark:"#d32f2f"},warning:{main:"#ffa726",light:"#ffb74d",dark:"#f57c00"},info:{main:"#29b6f6",light:"#4fc3f7",dark:"#0288d1"},success:{main:"#66bb6a",light:"#81c784",dark:"#388e3c"},background:{default:"#222B45",mainGradient:"linear-gradient(270deg, #222B45, #222B45)",mainCenter:"#28324e",navMenu:"#222B45",panel:"#2d364e",dropdownMenu:"#484f65",tooltip:"#484f65",accordionHeader:"#2a3249e3",panelHeader:"#2a3249e3",panelCenter:"#484f65",panelGradient:"#384057",paper:"#2d364e"},containerBox:{default:"#2d354e",main:"#2d354e"},action:{active:"rgba(255, 255, 255, 0.2)",hover:"rgba(255, 255, 255, 0.08)",selected:"rgba(255, 255, 255, 0.16)",disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"#EEEEEF",secondary:"#AEB0B4",disabled:"rgba(255, 255, 255, 0.5)",colorMain:"#EEEEEF"},divider:"rgba(255, 255, 255, 0.12)",dropdownBox:"#2d354e",color:{icons:"#fff"},cellHeader:"#505050",Skeleton:{bg:"#f5f5f5"},messageBox:"#1f5c8e",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),jr=s.createTheme({name:"darkBlack",palette:{mode:"dark",background:{default:"#201f1e",mainGradient:"linear-gradient(270deg, #201f1e, #201f1e)",mainCenter:"#252423",navMenu:"#201f1e",panel:"#3B3A39",dropdownMenu:"#585858",tooltip:"#616161eb",accordionHeader:"#25242369",panelHeader:"#3b3a39ba",panelCenter:"#585858",panelGradient:"#454443",paper:"#3B3A39"},primary:{main:"#1976d2",light:"#2196f3",dark:"#42a5f5",contrastText:"#fff"},secondary:{light:"#FFEA41",main:"#90caf9",dark:"#DBBE01",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#f44336",light:"#e57373",dark:"#d32f2f"},warning:{main:"#ffa726",light:"#ffb74d",dark:"#f57c00"},info:{main:"#29b6f6",light:"#4fc3f7",dark:"#0288d1"},success:{main:"#66bb6a",light:"#81c784",dark:"#388e3c"},containerBox:{main:"#ffffffb3",default:"#3B3A39"},action:{active:"rgba(255, 255, 255, 0.2)",hover:"rgba(255, 255, 255, 0.08)",selected:"rgba(255, 255, 255, 0.16)",disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"#EEEEEF",secondary:"#AEB0B4",disabled:"rgba(255, 255, 255, 0.5)",colorMain:"#EEEEEF"},divider:"rgba(255, 255, 255, 0.12)",dropdownBox:"#3B3A39",color:{icons:"#fff"},cellHeader:"#505050",Skeleton:{bg:"#f5f5f5"},messageBox:"#1f5c8e",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),Ec="https://agent-api.trii.app/api/v1/settings/user/setTheme",Ac={themeSelected:ba,darkMode:!1,toggleStatus:"idle"},wr=rn.createAsyncThunk("Theme/updateTheme",async(e,{getState:a})=>{const{uid:n}=a().User.user,r=JSON.stringify({theme:e,uid:n});return(await is.put(Ec,r)).data}),Tr=rn.createSlice({name:"Theme",initialState:Ac,reducers:{toggleTheme:(e,a)=>{const n=Ir(a.payload);Object.assign(e,{themeSelected:n,toggleStatus:"toggled"})},toggleModeTheme:e=>{e.darkMode=!e.darkMode}},extraReducers:e=>{e.addCase(wr.fulfilled,(a,n)=>{const r=Ir(n.payload.theme);Object.assign(a,{themeSelected:r})})}}),Ir=e=>{switch(e){case"lightBlueIndigo":return ba;case"darkBlack":return jr;case"darkBlue":return Sr;case"lightAmber":return xr;case"lightBlue":return cr;case"lightBrown":return vr;case"lightGray":return Cr;case"lightGreen":return pr;case"lightLime":return hr;case"lightOrange":return br;case"lightPink":return fr;case"lightPurple":return gr;case"lightRed":return ur;case"lightTeal":return mr;case"lightYellow":return yr;default:return ba}},Dc=e=>["lightBlueIndigo","darkBlack","darkBlue","lightAmber","lightBlue","lightBrown","lightGray","lightGreen","lightLime","lightOrange","lightPink","lightPurple","lightRed","lightTeal","lightYellow"].includes(e),{toggleTheme:Fc,toggleModeTheme:Bc}=Tr.actions,Mc=e=>e.Theme.toggleStatus,$c=e=>e.Theme.themeSelected,Pc=e=>e.Theme.darkMode;Tr.reducer,exports.ContactInfoPopup=Ma,exports.EditContactModal=ld,exports.EventsDialog=kc,exports.MuiComponentsConfig=dr,exports.darkBlack=jr,exports.darkBlue=Sr,exports.i18n=jt,exports.isValidThemeName=Dc,exports.lightAmber=xr,exports.lightBlue=cr,exports.lightBlueIndigo=ba,exports.lightBrown=vr,exports.lightGray=Cr,exports.lightGreen=pr,exports.lightLime=hr,exports.lightOrange=br,exports.lightPink=fr,exports.lightPurple=gr,exports.lightRed=ur,exports.lightTeal=mr,exports.lightYellow=yr,exports.selectThemeToggleStatus=Mc,exports.selectedDarkTheme=Pc,exports.selectedTheme=$c,exports.toggleModeTheme=Bc,exports.toggleTheme=Fc,exports.updateTheme=wr;
|
|
16
|
+
<%s key={someKey} {...props} />`,Bt,et,Ea,et),it[et+Bt]=!0}}return g===r?yt(ve):Ta(ve),ve}}function Dt(g,N,H){return jt(g,N,H,!0)}function Ft(g,N,H){return jt(g,N,H,!1)}var Ia=Ft,ka=Dt;Lt.Fragment=r,Lt.jsx=Ia,Lt.jsxs=ka})()),Lt}process.env.NODE_ENV==="production"?Ba.exports=ds():Ba.exports=cs();var t=Ba.exports;ls(t);const us=s.styled(s.Box)(({theme:e})=>({position:"absolute",top:8,right:8,display:"flex",flexDirection:"column",gap:4,zIndex:1,backgroundColor:e.palette.background.panel})),ln=s.styled(s.IconButton)({padding:4}),ps=s.styled(s.Box)({display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"16px",position:"relative"}),fs=s.styled(s.Avatar)({width:60,height:60,marginBottom:8}),gs=s.styled(s.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:200,textAlign:"center"}),ms=s.styled(s.Box)({display:"flex",justifyContent:"center",alignItems:"center",width:60,height:60,marginBottom:8}),hs=({imgUrl:e,name:a,contactId:n,navigate:r,isLoading:o=!1,onError:i,onClose:d,isBusiness:c=!1})=>{const u=l.useCallback(C=>x=>{try{if(x.preventDefault(),x.stopPropagation(),!C)throw new Error("Navigation URL is required");x.ctrlKey||x.metaKey||x.button===1?window.open(C,"_blank","noopener,noreferrer"):r(C)}catch(k){i?.(k instanceof Error?k:new Error("Navigation failed"))}},[r,i]),{t:p}=Je.useTranslation(),h=u(c?`/a/contacts/business/${n}`:`/a/contacts/contacts/${n}`),y=u(`/a/conversations/conversations?contactId=${n}`),m=!!a,f=a||p("contactName.noName"),v=`Avatar for ${f}`;return t.jsxs(ps,{children:[t.jsxs(us,{children:[t.jsx(ln,{color:"info",size:"small",onClick:C=>{h(C),d()},onMouseDown:C=>{C.button===1&&(h(C),d())},disabled:!n,"aria-label":"View contact details",children:t.jsx(Ur,{fontSize:"small"})}),t.jsx(ln,{color:"info",size:"small",onClick:C=>{y(C),d()},onMouseDown:C=>{C.button===1&&(y(C),d())},"aria-label":"Go to conversations",children:t.jsx(Rr,{fontSize:"small"})})]}),o?t.jsx(ms,{children:t.jsx(s.CircularProgress,{size:24})}):t.jsx(fs,{src:e,alt:v,onError:()=>i?.(new Error("Failed to load avatar"))}),t.jsx(gs,{variant:"h6",title:f,sx:m?void 0:{color:"text.disabled",fontStyle:"italic"},children:f})]})},ys=s.styled(s.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),xs=s.styled(s.Box)({width:"100%",borderBottom:"1px solid lightgray"}),bs=s.styled(s.Box)({display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:1,minHeight:"50px",position:"relative",maxWidth:"inherit"}),vs=s.styled(s.Box)(({theme:e})=>({marginTop:"-20px",padding:0,color:e.palette.primary.main})),Cs=s.styled(s.Box)({display:"flex",maxWidth:"90%",gap:"10px",width:"100%",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",alignItems:"center"}),Ss=s.styled(s.Box)({display:"flex",flexDirection:"column",height:"50px",maxWidth:"90%",minWidth:0,overflow:"hidden"}),js=s.styled(s.Typography)({whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",maxWidth:"90%",position:"absolute",bottom:16,left:40}),ws=({icon:e,contactList:a,title:n,showTitle:r=!0})=>{const o=i=>t.jsx(bs,{children:t.jsxs(Cs,{children:[t.jsx(vs,{children:e}),t.jsxs(Ss,{children:[t.jsx(s.Tooltip,{title:i.address,arrow:!0,placement:"top",children:t.jsx(s.Typography,{variant:"subtitle1",fontWeight:"semi-bold",fontSize:14,color:"text.primary",sx:{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",cursor:"default"},children:i.address})}),i.profileName&&t.jsx(s.Typography,{variant:"body2",fontSize:10,color:"text.disabled",sx:{marginLeft:"5px",marginTop:"10px"},children:i.profileName})]}),i.note&&t.jsx(js,{variant:"body2",fontSize:12,color:"text.secondary",children:i.note})]})},i.id);return t.jsxs(ys,{children:[r&&t.jsx(xs,{children:t.jsx(s.Typography,{variant:"subtitle1",fontWeight:"bold",gutterBottom:!0,mt:2,children:n})}),a?.map(o)]})},Ts=s.styled(s.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),Is=s.styled(s.Typography)({borderBottom:"1px solid lightgray",width:"100%"}),ks=s.styled(s.Box)({display:"flex",alignItems:"center",gap:8,width:"100%",minWidth:0}),Es=s.styled(s.Typography)({fontSize:14,wordBreak:"break-word",overflowWrap:"anywhere",minWidth:0}),As=s.styled(Me.Handyman)(({theme:e})=>({color:e.palette.primary.main,fontSize:16})),Ds=({properties:e,title:a})=>{const n=o=>o.replace(/-/g," "),r=(o,i)=>{if(!o||Array.isArray(o)&&o.length===0)return"";if(Array.isArray(o))return o.map(d=>r(d,i)).join(", ");if(typeof o=="string"){const d=xt(o,xt.ISO_8601).isValid(),c=u=>xt(o).format(u);switch(i){case K.ContactField_type.TIME:return d?c("HH:mm"):o;case K.ContactField_type.DATE:return d?c("DD/MM/YYYY"):o;case K.ContactField_type.TIMERANGE:case K.ContactField_type.DATERANGE:if(d)return i===K.ContactField_type.TIMERANGE?c("HH:mm"):c("DD/MM/YYYY");const u=o.split(" ");if(u.length===2){const[p,h]=u,y=i===K.ContactField_type.TIMERANGE?xt(p).format("HH:mm"):xt(p).format("DD/MM/YYYY"),m=i===K.ContactField_type.TIMERANGE?xt(h).format("HH:mm"):xt(h).format("DD/MM/YYYY");return`${y} - ${m}`}return o;default:return o}}return o};return t.jsxs(Ts,{children:[t.jsx(Is,{fontWeight:"bold",gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.map((o,i)=>o.value?.length>0&&t.jsxs(ks,{children:[t.jsx(As,{}),t.jsxs(Es,{children:[n(o.nameKey),":"," ",r(o.value,o.type)]})]},i))]})},Fs=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Bs=s.styled(s.Box)({marginBottom:16}),Ms=s.styled(s.Chip)(({theme:e})=>({marginRight:8,marginBottom:8,backgroundColor:`${e.palette.primary.main}b3`})),$s=({contactData:e,title:a})=>!e||!e.tags?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(Fs,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(Bs,{children:e?.tags?.filter(n=>n.name?.trim()).map(n=>t.jsx(Ms,{label:n.name,color:"primary",size:"small"},n.id))})]});function dn(e){return e?.isBusiness===!0?!1:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&typeof e.firstName=="string"&&typeof e.lastName=="string"&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&"origin"in e&&typeof e.isSpam=="boolean"&&(!e.businessId||typeof e.businessId=="string")}const Ps=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Us=({contactData:e,title:a})=>!e||!dn(e)?null:t.jsxs(t.Fragment,{children:[t.jsx(Ps,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(s.Typography,{variant:"body2",color:"text.secondary",children:e?.businessName})]});function cn(e){return e?.isBusiness===!0?!0:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&Array.isArray(e.membersId)&&Array.isArray(e.members)&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&typeof e.imageUrl=="string"&&!("firstName"in e)&&!("lastName"in e)}const Rs=({name:e,memberId:a,navigate:n})=>{const r=`/a/conversations/conversations?contactId=${a}`,o=i=>{i.preventDefault(),i.stopPropagation(),i.ctrlKey||i.metaKey||i.button===1?window.open(r,"_blank","noopener,noreferrer"):n(r)};return t.jsx(s.Typography,{variant:"body2",color:"text.secondary",role:"link",tabIndex:0,sx:{cursor:"pointer","&:hover":{textDecoration:"underline"}},onClick:o,onMouseDown:i=>{i.button===1&&o(i)},onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&o(i)},children:e})},Ns=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Ls=({contactData:e,title:a,navigate:n})=>!e||!cn(e)||!e.members?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(Ns,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.members.map(r=>t.jsx(Rs,{memberId:String(r.id),name:r.name,navigate:n},r.id))]});var zs="Labels",Os="Phone",_s="Business",Ws="Business Members",Vs="Properties",Hs="View",Gs="Email",qs={label:"Tags",add:"Add",edit:"Edit"},Ys={add:"Add",note:"Note",number:"Number",email:"Email",phones:"Phones",close:"Close",back:"Back",createNew:"Create new",delete:"Delete",cancel:"Cancel",save:"Save",noOptions:"No options",noValue:"No value",birthdate:"Birthdate",country:"Country",searchLocation:"Search location",date:"Date",from:"From",to:"To",time:"Time",title:"Title",addTitle:"Add title",description:"Description",location:"Location",addLocation:"Add location",selectLocation:"Select location",color:"Color",allDay:"All day",calendar:"Calendar",selectCalendar:"Select calendar",recurrence:"Recurrence",noRepeat:"Does not repeat",edit:"Edit",duplicate:"Duplicate",event:"Event",task:"Task",editEvent:"Edit event",editTask:"Edit task",saveEvent:"Save event",saveTask:"Save task",createEvent:"Create event",createTask:"Create task",finalizeEvent:"Finalize event",markAsCompleted:"Mark as completed",markAsIncomplete:"Mark as incomplete",linkContacts:"Linked contacts",searchContacts:"Search contacts",errorSavingChanges:"Error saving changes",savingChanges:"Saving changes...",changesSaved:"Changes saved",nameRequired:"Name is required",calendarCreatedSuccess:"Calendar created successfully",calendarUpdatedSuccess:"Calendar updated successfully",eventAlreadyDeleted:"Event has already been deleted",taskAlreadyDeleted:"Task has already been deleted",deleting:"Deleting...",confirm:"Confirm",name:"Name",create:"Create",showEvent:"Show Event",finalizeTask:"Finalize Task",showTask:"Show Task",createCalendar:"Create Calendar",editCalendar:"Edit Calendar",calendarInfo:"Calendar Information",deleteCalendar:"Delete Calendar",deleteConfirm:'Are you sure you want to delete the calendar "{{title}}"?',day:"Day",week:"Week",month:"Month",today:"Today",next:"Next",reminders:"Reminders",addReminder:"Add Reminder",shareWithUsers:"Share with Users",noSharedUsers:"No shared users",loading:"Loading...",moreActions:"More Actions",createdBy:"Created by",private:"Private",everyDay:"Every day",everyWeek:"Every week",everyMonth:"Every month",everyYear:"Every year",everyTwoDays:"Every 2 days",everyTwoWeeks:"Every 2 weeks",everyWeekday:"Weekdays (M-F)",seeMore:"See more",accept:"Accept",noResults:"No results found",calendarNotFound:"Calendar not available"},Ks={searchAddress:"Search address",enterLocation:"Enter a location",city:"City",state:"State",postalCode:"Postal code",country:"Country",saveMainAddress:"Save main address",saveSecondaryAddress:"Save secondary address",loadingGoogleMaps:"Loading Google Maps...",googleMapsUnavailable:"Google Maps unavailable",googleMapsNotLoaded:"Google Maps not loaded",selectedPlaceNoLocation:"Selected place has no location data"},Js={noName:"No name"},Xs={100101:"The number length seems too short",100102:"It seems to be already associated with another contact",100103:"Incorrect format",100104:"WhatsApp account not found",100105:"RCS account not found"},Qs={verifyWspAccount:"Verify WhatsApp account",verifyRcsAccount:"Verify RCS account",wspAccountFound:"WhatsApp account found",wantToLinkContact:"Do you want to link this contact with the found WhatsApp account?",yesLink:"Yes, link",noWspAccountFound:"No WhatsApp account found"},Zs={upload:"Upload photo",delete:"Delete photo"},eo={businessMembers:{title:"Members",edit:"Edit members",empty:"No members",searchLabel:"Members",searchPlaceholder:"Search contacts",searchPrompt:"Search contacts",noOptions:"No contacts found"}},to={from:"From",to:"To"},ao={contactDetails:{contactOwner:"Contact Owner",business:"Business",createdBy:"Created By",modifiedBy:"Modified By",street:"Street",city:"City",state:"State",postcode:"Postcode",country:"Country",addressInformation:"Address Information",primaryAddress:"Primary Address",secondaryAddress:"Secondary Address",contactInformation:"Contact Information",phones:"Phones",contactInfo:{emptySelection:"No selection"}},businessDetails:{businessOwner:"Business Owner"},sidebar:{events:{errorDate:"End date must be after start date"}}},no={reminders:{title:"Reminders",addReminder:"Add Reminder",errorDate:"The 'To' date must be greater than the 'From' date",searchContact:"Search Contact",sendReminder:{pt1:"Send reminder",pt2:"before."},timePeriod:{minute:"minute/s",hour:"hour/s",day:"day/s"},sendReminderToContact:"Send reminder to external contact"},shortcuts:{title:"Keyboard Shortcuts",advice:"Tip: You can use these shortcuts to speed up event creation and editing"},myCalendars:"My calendars",noCalendar:"No calendar",othersCalendars:"Other calendars"},ro={verifyWspAccount:"Verify WhatsApp account",verifyRCSAccount:"Verify RCS account",wspAccountFound:"WhatsApp account found",wantToLinkContact:"Do you want to link this contact with the found WhatsApp account?",yesLink:"Yes, link",noWspAccountFound:"No WhatsApp account found"},so={deleteEvent:"Delete event",deleteTask:"Delete task",confirmDeleteEvent:"Are you sure you want to delete this event?",confirmDeleteTask:"Are you sure you want to delete this task?",deleteRecurringEvent:"Delete recurring event",deleteThisEvent:"This event",deleteAllEvents:"All events",editRecurringEvent:"Edit recurring event",editThisEvent:"This event",editAllEvents:"All events"},oo={labels:zs,phone:Os,business:_s,businessMembers:Ws,properties:Vs,view:Hs,email:Gs,tags:qs,global:Ys,searchLocationModal:Ks,contactName:Js,contactAddressError:Xs,optionMenu:Qs,avatar:Zs,editContactModal:eo,contactEdit:to,conversations:ao,calendarView:no,optionsMenu:ro,calendar:so},io="Etiquetas",lo="Tel\xE9fono",co="Empresa",uo="Miembros de la empresa",po="Propiedades",fo="Ver",go="Correo electr\xF3nico",mo={label:"Etiquetas",add:"Agregar",edit:"Editar"},ho={add:"Agregar",note:"Nota",number:"N\xFAmero",email:"Correo electr\xF3nico",phones:"Tel\xE9fonos",close:"Cerrar",back:"Volver",createNew:"Crear nuevo",delete:"Eliminar",cancel:"Cancelar",save:"Guardar",noOptions:"Sin opciones",noValue:"Sin valor",birthdate:"Fecha de nacimiento",country:"Pa\xEDs",searchLocation:"Buscar ubicaci\xF3n",date:"Fecha",from:"Desde",to:"Hasta",time:"Hora",title:"T\xEDtulo",addTitle:"Agregar t\xEDtulo",description:"Descripci\xF3n",location:"Ubicaci\xF3n",addLocation:"Agregar ubicaci\xF3n",selectLocation:"Seleccionar ubicaci\xF3n",color:"Color",allDay:"Todo el d\xEDa",calendar:"Calendario",selectCalendar:"Seleccionar calendario",recurrence:"Recurrencia",noRepeat:"No se repite",edit:"Editar",duplicate:"Duplicar",event:"Evento",task:"Tarea",editEvent:"Editar evento",editTask:"Editar tarea",saveEvent:"Guardar evento",saveTask:"Guardar tarea",createEvent:"Crear evento",createTask:"Crear tarea",finalizeEvent:"Finalizar evento",markAsCompleted:"Marcar como completado",markAsIncomplete:"Marcar como incompleto",linkContacts:"Contactos vinculados",searchContacts:"Buscar contactos",errorSavingChanges:"Error al guardar los cambios",savingChanges:"Guardando cambios...",changesSaved:"Cambios guardados",nameRequired:"El nombre es obligatorio",calendarCreatedSuccess:"Calendario creado con \xE9xito",calendarUpdatedSuccess:"Calendario actualizado con \xE9xito",eventAlreadyDeleted:"l evento ya ha sido eliminado",taskAlreadyDeleted:"La tarea ya ha sido eliminada",deleting:"Eliminando...",confirm:"Confirmar",name:"Nombre",create:"Crear",showEvent:"Mostrar evento",finalizeTask:"Finalizar tarea",showTask:"Mostrar tarea",createCalendar:"Crear calendario",editCalendar:"Editar calendario",calendarInfo:"Informaci\xF3n del calendario",deleteCalendar:"Eliminar calendario",deleteConfirm:'\xBFEst\xE1 seguro de que desea eliminar el calendario "{{title}}"?',day:"\xEDa",week:"Semana",month:"Mes",today:"Hoy",next:"Siguiente",reminders:"Recordatorios",addReminder:"Agregar recordatorio",shareWithUsers:"Compartir con usuarios",noSharedUsers:"Sin usuarios compartidos",loading:"Cargando...",moreActions:"M\xE1s acciones",createdBy:"Creado por",private:"Privado",everyDay:"Cada d\xEDa",everyWeek:"Cada semana",everyMonth:"Cada mes",everyYear:"Cada a\xF1o",everyTwoDays:"Cada 2 d\xEDas",everyTwoWeeks:"Cada 2 semanas",everyWeekday:"D\xEDas laborables (L-V)",seeMore:"Ver m\xE1s",accept:"Aceptar",noResults:"No se encontraron resultados",calendarNotFound:"Calendario no disponible"},yo={searchAddress:"Buscar direcci\xF3n",enterLocation:"Ingres\xE1 una ubicaci\xF3n",city:"Ciudad",state:"Estado",postalCode:"C\xF3digo postal",country:"Pa\xEDs",saveMainAddress:"Guardar como direcci\xF3n principal",saveSecondaryAddress:"Guardar como direcci\xF3n secundaria",loadingGoogleMaps:"Cargando Google Maps...",googleMapsUnavailable:"Google Maps no disponible",googleMapsNotLoaded:"Google Maps no est\xE1 cargado",selectedPlaceNoLocation:"La ubicaci\xF3n seleccionada no tiene coordenadas"},xo={noName:"Sin nombre"},bo={100101:"La longitud del n\xFAmero parece demasiado corta",100102:"Parece que ya est\xE1 asociado a otro contacto",100103:"Formato incorrecto",100104:"Cuenta de WhatsApp no encontrada",100105:"Cuenta de RCS no encontrada"},vo={verifyWspAccount:"Verificar cuenta de WhatsApp",verifyRcsAccount:"Verificar cuenta de RCS",wspAccountFound:"Cuenta de WhatsApp encontrada",wantToLinkContact:"\xBFDesea vincular este contacto con la cuenta de WhatsApp encontrada?",yesLink:"S\xED, vincular",noWspAccountFound:"No se encontr\xF3 una cuenta de WhatsApp"},Co={upload:"Subir foto",delete:"Eliminar foto"},So={businessMembers:{title:"Miembros",edit:"Editar miembros",empty:"Sin miembros",searchLabel:"Miembros",searchPlaceholder:"Buscar contactos",searchPrompt:"Buscar contactos",noOptions:"No se encontraron contactos"}},jo={from:"Desde",to:"Hasta"},wo={contactDetails:{contactOwner:"Propietario del contacto",business:"Empresa",createdBy:"Creado por",modifiedBy:"Modificado por",street:"Calle",city:"Ciudad",state:"Estado",postcode:"C\xF3digo postal",country:"Pa\xEDs",addressInformation:"Informaci\xF3n de direcci\xF3n",primaryAddress:"Direcci\xF3n principal",secondaryAddress:"Direcci\xF3n secundaria",contactInformation:"Informaci\xF3n de contacto",phones:"Tel\xE9fonos",contactInfo:{emptySelection:"Sin selecci\xF3n"}},businessDetails:{businessOwner:"Propietario de la empresa"},sidebar:{events:{errorDate:"La fecha de finalizaci\xF3n debe ser posterior a la fecha de inicio"}}},To={reminders:{title:"Recordatorios",addReminder:"Agregar recordatorio",errorDate:"La fecha 'Hasta' debe ser mayor que la fecha 'Desde'",searchContact:"Buscar contacto",sendReminder:{pt1:"Enviar recordatorio",pt2:"antes."},timePeriod:{minute:"minuto/s",hour:"hora/s",day:"d\xEDa/s"},sendReminderToContact:"Enviar recordatorio al contacto externo"},shortcuts:{title:"Atajos de teclado",advice:"Consejo: Puedes usar estos atajos para acelerar la creaci\xF3n y edici\xF3n de eventos"},myCalendars:"Mis calendarios",noCalendar:"Sin calendario",othersCalendars:"Otros calendarios"},Io={verifyWspAccount:"Verificar cuenta de WhatsApp",verifyRCSAccount:"Verificar cuenta de RCS",wspAccountFound:"Cuenta de WhatsApp encontrada",wantToLinkContact:"\xBFDesea vincular este contacto con la cuenta de WhatsApp encontrada?",yesLink:"S\xED, vincular",noWspAccountFound:"No se encontr\xF3 una cuenta de WhatsApp"},ko={deleteEvent:"Eliminar evento",deleteTask:"Eliminar tarea",confirmDeleteEvent:"\xBFEst\xE1s seguro de que quer\xE9s eliminar este evento?",confirmDeleteTask:"\xBFEst\xE1s seguro de que quer\xE9s eliminar esta tarea?",deleteRecurringEvent:"Borrar evento recurrente",deleteThisEvent:"Este evento",deleteAllEvents:"Todos los eventos",editRecurringEvent:"Editar evento recurrente",editThisEvent:"Este evento",editAllEvents:"Todos los eventos"},Eo={labels:io,phone:lo,business:co,businessMembers:uo,properties:po,view:fo,email:go,tags:mo,global:ho,searchLocationModal:yo,contactName:xo,contactAddressError:bo,optionMenu:vo,avatar:Co,editContactModal:So,contactEdit:jo,conversations:wo,calendarView:To,optionsMenu:Io,calendar:ko};const Ao={en:{translation:oo},es:{translation:Eo}},wt=Nr.createInstance();wt.use(Je.initReactI18next).init({resources:Ao,lng:"en",fallbackLng:"en",interpolation:{escapeValue:!1},react:{useSuspense:!1}});const un=(e="",a="",n=Mt.Spaces.nameFormat.FIRST_LAST)=>{const r=e?.trim()||"",o=a?.trim()||"";switch(n){case Mt.Spaces.nameFormat.FIRST_LAST:return`${r} ${o}`.trim();case Mt.Spaces.nameFormat.LAST_FIRST:return`${o} ${r}`.trim();case Mt.Spaces.nameFormat.FIRST_COMMA_LAST:return r&&o?`${r}, ${o}`:r||o;case Mt.Spaces.nameFormat.LAST_COMMA_FIRST:return r&&o?`${o}, ${r}`:o||r;default:return`${r} ${o}`.trim()}},Do=s.styled(s.Box)(({theme:e})=>({backgroundColor:e.palette.background.panel,boxShadow:"0px 4px 10px rgba(0, 0, 0, 0.1)",borderRadius:"8px",width:300,maxWidth:300,boxSizing:"border-box",maxHeight:"calc(100vh - 500px)",overflowY:"auto",overflowX:"hidden",wordBreak:"break-word",overflowWrap:"anywhere",transition:"opacity 0.3s ease, transform 0.3s ease",padding:"8px",zIndex:1300,"&::-webkit-scrollbar":{width:5},"&::-webkit-scrollbar-track":{background:"#E0E0E0",borderRadius:10},"&::-webkit-scrollbar-thumb":{background:"#9E9E9E",borderRadius:10,transition:"background 0.3s"},"&::-webkit-scrollbar-thumb:hover":{background:"#616161"}})),Fo=({open:e,anchorEl:a,onClose:n,contactData:r,avatarImgUrl:o,navigate:i,language:d="en",contactNameFormat:c})=>{const{t:u,i18n:p}=Je.useTranslation();l.useEffect(()=>{d&&p.changeLanguage(d)},[d,p]);const h=u,y=cn(r),m=dn(r),f=r?m?un(r.firstName,r.lastName,c):r.name:void 0,v=[{icon:t.jsx(Me.PhoneEnabled,{fontSize:"small"}),title:h("phone"),contactList:r?.phones||[],showTitle:!0},{icon:t.jsx(Me.Email,{fontSize:"small"}),title:h("email"),contactList:r?.emails||[],showTitle:!0},{icon:t.jsx(Me.WhatsApp,{fontSize:"small"}),title:"IM",contactList:r?.ims_whatsapp||[],showTitle:!0},{icon:t.jsx(Me.Facebook,{fontSize:"small"}),contactList:r?.ims_facebook||[],showTitle:!1},{icon:t.jsx(Me.Instagram,{fontSize:"small"}),contactList:r?.ims_instagram||[],showTitle:!1},{icon:t.jsx(Me.ThreeP,{fontSize:"small"}),contactList:r?.ims_webchat||[],showTitle:!1}];return l.useEffect(()=>{const C=x=>{x.key==="Escape"&&n()};return e&&window.addEventListener("keydown",C),()=>{window.removeEventListener("keydown",C)}},[e,n]),t.jsx(s.Popper,{sx:{zIndex:1300},open:e,anchorEl:a,placement:"bottom-start","data-popper-child":"true",children:t.jsx(s.ClickAwayListener,{onClickAway:n,children:t.jsx(Do,{children:t.jsxs(s.CardContent,{children:[t.jsx(hs,{navigate:i,contactId:r?.id,imgUrl:o,name:f,onClose:n,isBusiness:y}),t.jsx($s,{contactData:r,title:h("labels")}),m&&t.jsx(Us,{contactData:r,title:h("business")}),y&&t.jsx(Ls,{contactData:r,title:h("businessMembers"),navigate:i}),v.map((C,x)=>t.jsx(ws,{icon:C.icon,title:C.title,contactList:C.contactList,showTitle:C.showTitle},x)),t.jsx(Ds,{properties:r?.properties,title:h("properties")})]})})})})},Ma=e=>t.jsx(Je.I18nextProvider,{i18n:wt,children:t.jsx(Fo,{...e})}),pn=l.createContext(null),Bo=pn.Provider,at=()=>l.useContext(pn),fn=e=>e,gn=l.createContext(fn),Mo=({t:e,children:a})=>t.jsx(gn.Provider,{value:e,children:a}),me=()=>{const e=l.useContext(gn);return e?(...a)=>{const[n,...r]=a;return e(n,...r)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),fn)};var $o=Object.defineProperty,Po=(e,a,n)=>a in e?$o(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,mn=(e,a,n)=>Po(e,typeof a!="symbol"?a+"":a,n);let hn=class extends Error{constructor(a,n,r){super(a),mn(this,"status"),mn(this,"body"),this.name="ApiError",this.status=n,this.body=r}};async function _e({url:e,method:a="GET",headers:n,body:r,signal:o}){const i=await globalThis.fetch(e,{method:a,headers:{...r?{"Content-Type":"application/json"}:{},...n??{}},body:r?JSON.stringify(r):void 0,signal:o}),d=(i.headers.get("content-type")||"").includes("application/json")?await i.json().catch(()=>null):await i.text().catch(()=>null);if(!i.ok){const c=typeof d=="object"&&d&&"message"in d?String(d.message):`Request failed with status ${i.status}`;throw new hn(c,i.status,d)}return d}async function Uo({url:e,method:a="POST",headers:n,formData:r,signal:o}){const i=await globalThis.fetch(e,{method:a,headers:{...n??{}},body:r,signal:o}),d=(i.headers.get("content-type")||"").includes("application/json")?await i.json().catch(()=>null):await i.text().catch(()=>null);if(!i.ok){const c=typeof d=="object"&&d&&"message"in d?String(d.message):`Request failed with status ${i.status}`;throw new hn(c,i.status,d)}return d}function ke(e,a){const n=e.endsWith("/")?e.slice(0,-1):e,r=a.startsWith("/")?a:`/${a}`;return`${n}${r}`}function Le(e,a){const n=encodeURIComponent(a);return{CONTACTS:ke(e,`/contacts/${n}`),MEDIA:ke(e,`/media/${n}`),SETTINGS:ke(e,`/settings/${n}`)}}async function Ro({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=ke(r.CONTACTS,"/labels");return _e({url:o,signal:n})}async function yn({baseUrl:e,spaceId:a,name:n,signal:r}){const o=Le(e,a),i=ke(o.CONTACTS,"/labels");return _e({url:i,method:"POST",body:{name:n},signal:r})}async function No({baseUrl:e,spaceId:a,contactId:n,signal:r}){const o=Le(e,a),i=ke(o.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return _e({url:i,signal:r})}async function Lo({baseUrl:e,spaceId:a,businessId:n,signal:r}){const o=Le(e,a),i=ke(o.CONTACTS,`/business/${encodeURIComponent(n)}`);return _e({url:i,signal:r})}async function zo({baseUrl:e,spaceId:a,forType:n,signal:r}){const o=Le(e,a),i=`${ke(o.CONTACTS,"/ContactFields")}?filter=custom&for=${encodeURIComponent(n)}`;return _e({url:i,signal:r})}async function nt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:o,signal:i}){const d=n==="business"?`/business/${encodeURIComponent(r)}`:`/contacts/${encodeURIComponent(r)}`,c=Le(e,a),u=ke(c.CONTACTS,d);return _e({url:u,method:"PUT",body:o,signal:i})}async function Oo({baseUrl:e,spaceId:a,pagination:n,signal:r}){const o=Le(e,a),i=ke(o.CONTACTS,"/Search");return _e({url:i,method:"POST",body:n,signal:r})}async function _o({baseUrl:e,spaceId:a,business:n,signal:r}){const o=Le(e,a),i=ke(o.CONTACTS,"/business");return _e({url:i,method:"POST",body:n,signal:r})}async function ia({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=ke(o.CONTACTS,"/contactAddresses");return _e({url:i,method:"DELETE",body:n,signal:r})}async function Wo({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=ke(o.CONTACTS,"/contactAddresses/check");return _e({url:i,method:"POST",body:n,signal:r})}async function Vo({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=ke(o.CONTACTS,"/contactAddresses/set");return _e({url:i,method:"POST",body:n,signal:r})}async function Ho({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=ke(o.CONTACTS,`/contactAddresses/${encodeURIComponent(n.contactAddressId)}`);return _e({url:i,method:"PUT",body:n,signal:r})}async function xn({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=ke(r.SETTINGS,"/user");return _e({url:o,signal:n})}async function Go({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=ke(r.SETTINGS,"/users");return _e({url:o,signal:n})}async function qo({baseUrl:e,spaceId:a,signal:n,userId:r}){const o=Le(e,a),i=ke(o.SETTINGS,`/usersInfo/${r}`);return _e({url:i,signal:n})}async function bn({baseUrl:e,spaceId:a,contactId:n,file:r,signal:o}){const i=Le(e,a),d=new FormData;d.append("file",r,r.name);const c=ke(i.MEDIA,`/upload?module=contacts&folderType=avatars&contactId=${encodeURIComponent(n)}`);return Uo({url:c,formData:d,signal:o})}const vn=(e,a)=>({fetchLabels:({signal:n}={})=>Ro({baseUrl:e,spaceId:a,signal:n}),createLabel:({name:n,signal:r})=>yn({baseUrl:e,spaceId:a,name:n,signal:r}),fetchContact:({contactId:n,signal:r})=>No({baseUrl:e,spaceId:a,contactId:n,signal:r}),fetchBusiness:({businessId:n,signal:r})=>Lo({baseUrl:e,spaceId:a,businessId:n,signal:r}),fetchBusinessTableData:({pagination:n,signal:r})=>Oo({baseUrl:e,spaceId:a,pagination:n,signal:r}),createBusiness:({business:n,signal:r})=>_o({baseUrl:e,spaceId:a,business:n,signal:r}),fetchContactFields:({forType:n,signal:r})=>zo({baseUrl:e,spaceId:a,forType:n,signal:r}),updateEntity:({entityType:n,entityId:r,body:o,signal:i})=>nt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:o,signal:i}),deleteAddress:({data:n,signal:r})=>ia({baseUrl:e,spaceId:a,data:n,signal:r}),deleteAddres:({data:n,signal:r})=>ia({baseUrl:e,spaceId:a,data:n,signal:r}),checkContactAddress:({data:n,signal:r})=>Wo({baseUrl:e,spaceId:a,data:n,signal:r}),setContactAddress:({data:n,signal:r})=>Vo({baseUrl:e,spaceId:a,data:n,signal:r}),updateContactAddress:({data:n,signal:r})=>Ho({baseUrl:e,spaceId:a,data:n,signal:r}),fetchUserTrii:({signal:n}={})=>xn({baseUrl:e,spaceId:a,signal:n}),fetchUsers:({signal:n}={})=>Go({baseUrl:e,spaceId:a,signal:n}),fetchUserTriiById:({userId:n,signal:r})=>qo({baseUrl:e,spaceId:a,userId:n,signal:r}),uploadAvatar:({contactId:n,file:r,signal:o})=>bn({baseUrl:e,spaceId:a,contactId:n,file:r,signal:o})}),Yo={format:"IBusiness",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"},Ko=({baseUrl:e,spaceId:a,contactId:n,initialBusiness:r,onBack:o,onEntityUpdated:i,currentUser:d})=>{const c=me(),u=at(),p=l.useRef(null),h=l.useRef(null),[y,m]=l.useState(()=>r?.businessName??""),[f,v]=l.useState(!1),[C,x]=l.useState(!1),[k,w]=l.useState(!1),[A,S]=l.useState([]),[T,D]=l.useState(r??null),[$,B]=l.useState(1),[I,U]=l.useState(!1),[P,_]=l.useState(!1),V=l.useMemo(()=>{const E=d?.display_name,M=d?.email;return String(E||M||"").trim()},[d]);l.useEffect(()=>()=>{p.current&&(clearTimeout(p.current),p.current=null),h.current?.abort()},[]),l.useEffect(()=>{D(r??null),m(r?.businessName??"")},[r]);const R=()=>{h.current?.abort(),h.current=null,p.current&&(clearTimeout(p.current),p.current=null),v(!1),_(!1),B(1),U(!1),S([])},O=E=>E.filter(M=>!!M?.id).map(M=>({businessId:String(M.id),businessName:String(M.name??"")})),q=async({query:E,page:M})=>{if(!u)return;h.current?.abort();const Y=new AbortController;h.current=Y,x(!0);try{const ye={...Yo,currentPage:M,filter:[{value:E,column:"name",condition:""}]},le=await u.fetchBusinessTableData({pagination:ye,signal:Y.signal});if(Y.signal.aborted)return;const ge=O(le?.contactos??[]);v(!0);const xe=le?.paginacion?.total??0;S(Se=>{const G=M===1?ge:(()=>{const ne=new Map;for(const je of Se)ne.set(je.businessId,je);for(const je of ge)ne.set(je.businessId,je);return Array.from(ne.values())})();return xe&&G.length>=xe&&_(!0),G})}finally{x(!1),w(!1),U(!1)}},ae=E=>{R(),E&&(p.current&&(clearTimeout(p.current),p.current=null),w(!0),p.current=setTimeout(()=>{q({query:E,page:1})},800))},de=E=>{const M=E.target;if(!(M.scrollHeight-M.scrollTop-M.clientHeight<1)||P||C||!y)return;const Y=$+1;U(!0),B(Y),q({query:y,page:Y})},he=async()=>{if(!u||!V)return;const E=String(y??"").trim();if(E){x(!0);try{const M={name:E,owner:V,imageUrl:"",members:[],tags:[],properties:[],address1:{street:"",city:"",state:"",zipcode:"",country:""},address2:{street:"",city:"",state:"",zipcode:"",country:""}},Y=await u.createBusiness({business:M}),ye={businessId:String(Y.id??""),businessName:String(Y.name??E)};S([ye]),D(ye),v(!0)}finally{x(!1)}}},L=async()=>{if(!e||!a||!n)return;const E=T?.businessId??"",M=await nt({baseUrl:e,spaceId:a,entityType:"contact",entityId:n,body:{businessId:E}});i?.(M),o()},j=f&&A.length===0&&y?t.jsxs(s.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",sx:{px:1,py:.5},children:[t.jsx(s.Typography,{variant:"body2",children:c("global.noOptions")}),t.jsx(tt.LoadingButton,{size:"small",variant:"contained",onClick:he,loading:C,disabled:C||!V,children:c("global.createNew")})]}):t.jsx(s.Typography,{variant:"body2",children:c("global.noOptions")}),F=!n||!e||!a;return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(s.IconButton,{size:"small",onClick:o,"aria-label":c("global.back"),children:t.jsx(ra,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:c("conversations.contactDetails.business")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(tt.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(ft,{}),onClick:L,loading:!1,disabled:F,children:c("global.save")})]}),t.jsxs(s.Box,{sx:{position:"relative"},children:[C||k||I?t.jsx(s.Box,{sx:{position:"absolute",left:0,right:0,top:0},children:t.jsx(s.LinearProgress,{sx:{borderRadius:1}})}):null,t.jsx(s.Autocomplete,{fullWidth:!0,disablePortal:!0,value:T,onChange:(E,M)=>{D(M)},inputValue:y,onInputChange:(E,M,Y)=>{m(M),Y==="input"&&ae(M)},options:A,getOptionLabel:E=>E?.businessName??"",isOptionEqualToValue:(E,M)=>E.businessId===M.businessId,noOptionsText:j,renderInput:E=>t.jsx(s.TextField,{...E,size:"small",label:c("conversations.contactDetails.business"),placeholder:c("global.noValue"),InputProps:{...E.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[C||k?t.jsx(s.CircularProgress,{size:18,sx:{mr:1}}):null,E.InputProps.endAdornment]})}}),ListboxProps:{sx:{maxHeight:240,overflowY:"auto"},onScroll:de}})]})]})},Jo={format:"IContactInfo",total:0,lastPage:1,perPage:10,order:"DESC",orderColumn:"name"},Cn=e=>String(e.name||e.profileName||e.address||""),Xo=({business:e,onBack:a,onEntityUpdated:n})=>{const r=me(),o=at(),i=l.useRef(null),d=l.useRef(null),[c,u]=l.useState([]),[p,h]=l.useState(""),[y,m]=l.useState([]),[f,v]=l.useState(!1),[C,x]=l.useState(!1),[k,w]=l.useState(!1),[A,S]=l.useState(!1),[T,D]=l.useState(1),[$,B]=l.useState(!1);l.useEffect(()=>{u(e?.members??[])},[e]),l.useEffect(()=>()=>{i.current&&clearTimeout(i.current),d.current?.abort()},[]);const I=()=>{d.current?.abort(),d.current=null,i.current&&(clearTimeout(i.current),i.current=null),v(!1),B(!1),D(1),m([])},U=async({query:O,page:q})=>{if(!o)return;d.current?.abort();const ae=new AbortController;d.current=ae,x(!0);try{const de={...Jo,currentPage:q,filter:[{column:"Name",condition:"",value:O}]},he=await o.fetchBusinessTableData({pagination:de,signal:ae.signal});if(ae.signal.aborted)return;const L=he?.contactos??[],j=he?.paginacion?.total??0;v(!0),m(F=>{const E=q===1?L:(()=>{const M=new Map;for(const Y of F)M.set(Y.id,Y);for(const Y of L)M.set(Y.id,Y);return Array.from(M.values())})();return j&&E.length>=j&&B(!0),E})}finally{x(!1),w(!1)}},P=O=>{I(),O&&(w(!0),i.current=setTimeout(()=>{U({query:O,page:1})},800))},_=O=>{const q=O.target;if(!(q.scrollHeight-q.scrollTop-q.clientHeight<1)||$||C||!p)return;const ae=T+1;D(ae),U({query:p,page:ae})},V=async()=>{if(!(!o||!e?.id||A)){S(!0);try{const O=await o.updateEntity({entityType:"business",entityId:e.id,body:{members:c}});n?.(O),a()}finally{S(!1)}}},R=f&&p?t.jsx(s.Typography,{variant:"body2",children:r("editContactModal.businessMembers.noOptions")}):t.jsx(s.Typography,{variant:"body2",children:r("editContactModal.businessMembers.searchPrompt")});return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(s.IconButton,{size:"small",onClick:a,"aria-label":r("global.back"),children:t.jsx(ra,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:r("editContactModal.businessMembers.edit")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(tt.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(ft,{}),onClick:V,loading:A,disabled:!o||!e?.id,children:r("global.save")})]}),t.jsxs(s.Box,{sx:{position:"relative"},children:[C||k?t.jsx(s.Box,{sx:{position:"absolute",left:0,right:0,top:0},children:t.jsx(s.LinearProgress,{sx:{borderRadius:1}})}):null,t.jsx(s.Autocomplete,{multiple:!0,fullWidth:!0,disablePortal:!0,disableCloseOnSelect:!0,value:c,onChange:(O,q)=>{u(q)},inputValue:p,onInputChange:(O,q,ae)=>{h(q),ae==="input"&&P(q)},options:y,filterOptions:O=>O,getOptionLabel:Cn,isOptionEqualToValue:(O,q)=>O.id===q.id,noOptionsText:R,renderTags:(O,q)=>O.map((ae,de)=>l.createElement(s.Chip,{label:Cn(ae),size:"small",...q({index:de}),key:ae.id})),renderInput:O=>t.jsx(s.TextField,{...O,size:"small",label:r("editContactModal.businessMembers.searchLabel"),placeholder:r("editContactModal.businessMembers.searchPlaceholder"),InputProps:{...O.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[C||k?t.jsx(s.CircularProgress,{size:18,sx:{mr:1}}):null,O.InputProps.endAdornment]})},InputLabelProps:{shrink:!0}}),ListboxProps:{sx:{maxHeight:240,overflowY:"auto"},onScroll:_}})]})]})},Sn=()=>{},jn=l.createContext(Sn),Qo=({navigate:e,children:a})=>t.jsx(jn.Provider,{value:e,children:a}),wn=()=>l.useContext(jn)||(console.warn("[useNavigateContext] using noop, context value is falsy"),Sn),zt=({title:e,children:a,enableDirectionSearch:n=!1,onDirectionSearchClick:r,action:o})=>{const i=me();return t.jsxs(s.Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:2,p:2,mb:2},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",children:[t.jsx(s.Typography,{variant:"subtitle1",children:e}),t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,children:[o,n&&t.jsx(s.Button,{startIcon:t.jsx(zr,{sx:{color:"primary.main",height:18,width:18}}),size:"small",variant:"outlined",color:"primary",onClick:()=>r&&r(),children:i("global.searchLocation")})]})]}),t.jsx(s.Divider,{sx:{my:1.5}}),a]})},Tn=({children:e,...a})=>t.jsx(s.Box,{display:"grid",gridTemplateColumns:{xs:"1fr",md:"repeat(2, minmax(0, 1fr))"},gap:2,...a,children:e});function $a(e){return e?.isBusiness===!0?!1:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&typeof e.firstName=="string"&&typeof e.lastName=="string"&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&"origin"in e&&typeof e.isSpam=="boolean"&&(!e.businessId||typeof e.businessId=="string")}const Zo=e=>String(e.name||e.profileName||e.address||"-"),ei=({business:e,onEdit:a,language:n,contactNameFormat:r})=>{const o=me(),i=at(),d=wn(),[c,u]=l.useState(null),[p,h]=l.useState(null),[y,m]=l.useState(""),[f,v]=l.useState(null),C=e.members??[],x=k=>async w=>{const A=w.currentTarget;if(!(!i||!k?.id)){v(k.id);try{const S=await i.fetchContact({contactId:k.id});$a(S)&&(h(S),m(String(k.imageUrl||S.imageUrl||"")),u(A))}finally{v(null)}}};return t.jsxs(zt,{title:o("editContactModal.businessMembers.title"),action:t.jsx(s.IconButton,{"aria-label":o("editContactModal.businessMembers.edit"),size:"small",onClick:a,children:t.jsx(bt,{sx:{fontSize:18}})}),children:[C.length>0?t.jsx(s.Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))"},gap:1.5},children:C.map(k=>{const w=Zo(k),A=String(k.imageUrl||""),S=f===k.id;return t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1.5,sx:{minWidth:0,py:.5},children:[t.jsx(s.Avatar,{src:A,alt:w,onClick:x(k),sx:{width:32,height:32,cursor:i?"pointer":"default",bgcolor:T=>T.palette.background.default,color:T=>T.palette.text.secondary}}),t.jsx(s.Typography,{variant:"body2",fontWeight:600,noWrap:!0,sx:{minWidth:0,flex:1},children:w}),S?t.jsx(s.CircularProgress,{size:18}):null]},k.id)})}):t.jsx(s.Typography,{variant:"body2",color:"text.secondary",children:o("editContactModal.businessMembers.empty")}),t.jsx(Ma,{contactData:p??void 0,open:!!c,anchorEl:c,onClose:()=>u(null),navigate:d,avatarImgUrl:y,language:n,contactNameFormat:r})]})},ti=({tags:e,onEditTags:a})=>{const n=me(),[r,o]=l.useState(null),i=l.useMemo(()=>e??[],[e]),d=i.slice(0,4),c=Math.max(i.length-d.length,0),u=y=>{o(y.currentTarget)},p=()=>{o(null)},h=!!r;return t.jsxs(s.Box,{sx:{mt:1,display:"flex",justifyContent:"center"},children:[t.jsxs(s.Box,{sx:{maxWidth:320,position:"relative"},children:[t.jsxs(s.Stack,{direction:"row",spacing:1,useFlexGap:!0,flexWrap:"wrap",justifyContent:"center",children:[d.map(y=>t.jsx(s.Chip,{label:y.name,size:"small",variant:"outlined",sx:{borderRadius:999,maxWidth:140,"& .MuiChip-label":{overflow:"hidden",textOverflow:"ellipsis"}}},y.id)),c>0?t.jsx(s.Chip,{label:`+${c}`,size:"small",variant:"outlined",onClick:u,sx:{borderRadius:999}}):null]}),t.jsx(s.IconButton,{className:"tags-action",size:"small","aria-label":i.length?n("tags.edit"):n("tags.add"),onClick:a,sx:{position:"absolute",left:"100%",ml:1,top:"50%",transform:"translateY(-50%)",color:"text.secondary",bgcolor:y=>y.palette.background.panel,transition:"background-color 0.2s ease-in-out, color 0.2s ease-in-out","&:hover":{bgcolor:"action.selected",color:"text.primary"}},children:i.length?t.jsx(bt,{fontSize:"small"}):t.jsx(Or,{fontSize:"small"})})]}),t.jsx(s.Popover,{open:h,anchorEl:r,onClose:p,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:t.jsxs(s.Box,{sx:{p:1.5,maxWidth:320,maxHeight:240,overflowY:"auto"},children:[t.jsx(s.Typography,{variant:"subtitle2",sx:{mb:1},children:n("tags.label")}),t.jsx(s.Stack,{direction:"row",spacing:1,useFlexGap:!0,flexWrap:"wrap",children:i.map(y=>t.jsx(s.Chip,{label:y.name,size:"small",variant:"outlined",sx:{borderRadius:999,maxWidth:160,"& .MuiChip-label":{overflow:"hidden",textOverflow:"ellipsis"}}},y.id))})]})})]})},ai=s.styled(s.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:360,textAlign:"center"}),ni=s.styled(s.Box)({display:"flex",alignItems:"center",justifyContent:"center",width:"100%"}),ri=s.styled(s.Box)({position:"relative",display:"flex",justifyContent:"center",maxWidth:"100%","&:hover .edit-icon":{opacity:1,visibility:"visible"}}),si=s.styled(s.IconButton)(({alwaysVisible:e})=>({opacity:e?1:0,visibility:e?"visible":"hidden",transition:"all 0.2s",position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)"})),oi=({displayName:e,contactType:a,firstName:n,lastName:r,name:o,entityId:i,onEntityUpdated:d})=>{const c=at(),u=me(),[p,h]=l.useState(!1),[y,m]=l.useState(!1),[f,v]=l.useState({firstName:n||"",lastName:r||"",name:o||""});l.useEffect(()=>{v({firstName:n||"",lastName:r||"",name:o||""})},[n,r,o]);const C=async()=>{if(!(!c||!i||!a||a==="unknown")){m(!0);try{let k={};a==="contact"?k={firstName:f.firstName,lastName:f.lastName}:a==="business"&&(k={name:f.name});const w=await c.updateEntity({entityType:a,entityId:i,body:k});w&&d&&d(w),h(!1)}catch(k){console.error("Failed to update name",k)}finally{m(!1)}}},x=a==="contact"||a==="business";return p?t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,mt:1},children:[a==="contact"?t.jsxs(t.Fragment,{children:[t.jsx(s.TextField,{value:f.firstName,onChange:k=>v({...f,firstName:k.target.value}),size:"small",placeholder:"First Name",sx:{width:140}}),t.jsx(s.TextField,{value:f.lastName,onChange:k=>v({...f,lastName:k.target.value}),size:"small",placeholder:"Last Name",sx:{width:140}})]}):t.jsx(s.TextField,{value:f.name,onChange:k=>v({...f,name:k.target.value}),size:"small",placeholder:"Name",sx:{width:280}}),t.jsx(s.IconButton,{onClick:C,disabled:y,color:"primary",children:y?t.jsx(s.CircularProgress,{size:24}):t.jsx(Me.Save,{})})]}):t.jsx(ni,{children:t.jsxs(ri,{children:[t.jsx(ai,{variant:"h6",title:e||u("contactName.noName"),sx:e?void 0:{color:"text.disabled",fontStyle:"italic"},children:e||u("contactName.noName")}),x&&t.jsx(si,{size:"small",onClick:()=>h(!0),className:"edit-icon",alwaysVisible:!e,sx:{ml:1},children:t.jsx(Me.Edit,{fontSize:"small"})})]})})},ii=({src:e,alt:a,onError:n,onUpload:r,onDelete:o,isUploading:i,isDeleting:d})=>{const c=me();return t.jsxs(s.Box,{sx:{width:60,height:60,mb:1,position:"relative","&:hover .avatar-actions, &:focus-within .avatar-actions":{opacity:1,pointerEvents:"auto"}},children:[t.jsx(s.Avatar,{src:e,alt:a,onError:n,sx:{width:60,height:60}}),t.jsxs(s.Box,{className:"avatar-actions",sx:{position:"absolute",inset:0,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",gap:.5,bgcolor:"rgba(0, 0, 0, 0.35)",opacity:0,pointerEvents:"none",transition:"opacity 0.2s ease-in-out"},children:[t.jsx(s.IconButton,{size:"small","aria-label":c("avatar.upload"),onClick:r,disabled:!!i,sx:{color:"common.white",bgcolor:"rgba(0, 0, 0, 0.25)","&:hover":{bgcolor:"rgba(0, 0, 0, 0.35)"}},children:t.jsx(_r,{fontSize:"small"})}),t.jsx(s.IconButton,{size:"small","aria-label":c("avatar.delete"),onClick:o,disabled:!!d,sx:{color:"common.white",bgcolor:"rgba(0, 0, 0, 0.25)","&:hover":{bgcolor:"rgba(0, 0, 0, 0.35)"}},children:t.jsx($t,{fontSize:"small"})})]})]})},li=s.styled(s.Box)({display:"flex",flexDirection:"column",alignItems:"center",gap:"4px",marginBottom:"20px",position:"relative"}),di=({imgUrl:e,displayName:a,onError:n,tags:r,onEditTags:o,onUploadPhoto:i,onPhotoFileChange:d,photoInputRef:c,isUploadingPhoto:u,onDeletePhoto:p,isDeletingPhoto:h,contactType:y,firstName:m,lastName:f,name:v,entityId:C,onEntityUpdated:x})=>{const k=`Avatar for ${a}`;return t.jsxs(li,{children:[t.jsx("input",{ref:c,type:"file",accept:"image/*",onChange:d,style:{display:"none"}}),t.jsx(ii,{src:e,alt:k,onError:()=>n?.(new Error("Failed to load avatar")),onUpload:i,isUploading:u,onDelete:p,isDeleting:h}),t.jsx(oi,{displayName:a,contactType:y,firstName:m,lastName:f,name:v,entityId:C,onEntityUpdated:x}),t.jsx(ti,{tags:r,onEditTags:o})]})},Pa=20,ci=e=>{const{popperContainer:a,...n}=e;return t.jsx(Wr,{...n,container:a??n.container,style:{...n.style??{},zIndex:2e4}})},ui=({value:e,options:a,onChange:n,onBack:r,onSave:o,isSaving:i,onCreateNew:d,isCreatingNew:c,popperContainer:u})=>{const p=me(),[h,y]=l.useState(""),[m,f]=l.useState(Pa),v=l.useDeferredValue(h),C=l.useMemo(()=>a??[],[a]),x=l.useMemo(()=>{const D=String(v??"").trim().toLowerCase();return D?C.filter($=>String($?.name??"").toLowerCase().includes(D)):C},[C,v]),k=l.useMemo(()=>x.slice(0,m),[x,m]),w=l.useMemo(()=>{const D=new Map;for(const $ of e??[])$?.id&&D.set(String($.id),$);for(const $ of k??[])$?.id&&(D.has(String($.id))||D.set(String($.id),$));return Array.from(D.values())},[e,k]),A=(D,$)=>{y($??""),f(Pa)},S=D=>{const $=D;$.scrollTop+$.clientHeight>=$.scrollHeight-24&&f(B=>B+Pa)},T=()=>{const D=String(h??"").trim(),$=!D||i||c;return t.jsxs(s.Box,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[p("global.noOptions"),t.jsx(tt.LoadingButton,{onClick:()=>d(D),loading:c,disabled:$,variant:"contained",size:"small",sx:{marginTop:1.3},children:p("global.createNew")})]})};return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(s.IconButton,{size:"small",onClick:r,"aria-label":p("global.back"),disabled:i,children:t.jsx(ra,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:p("tags.label")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(tt.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(ft,{}),onClick:o,loading:i,disabled:i,children:p("global.save")})]}),t.jsx(s.Autocomplete,{multiple:!0,disablePortal:!1,value:e,onChange:(D,$)=>n($),options:w,filterOptions:D=>D,inputValue:h,onInputChange:A,getOptionLabel:D=>D?.name??"",isOptionEqualToValue:(D,$)=>String(D?.id)===String($?.id),PopperComponent:D=>t.jsx(ci,{...D,popperContainer:u}),renderOption:(D,$)=>{const{key:B,...I}=D;return l.createElement("li",{...I,key:$?.id?String($.id):String(B??$?.name??"")},$.name??"")},renderTags:(D,$)=>D.map((B,I)=>{const U=$({index:I}),{key:P,..._}=U;return t.jsx(s.Chip,{label:B.name??"",..._},B?.id?String(B.id):String(P??B?.name??I))}),size:"small",renderInput:D=>t.jsx(s.TextField,{...D,size:"small"}),ListboxProps:{onScroll:S,sx:{maxHeight:280,overflowY:"auto"}},noOptionsText:t.jsx(T,{}),sx:{width:"100%"}})]})},In=()=>!!window?.google?.maps?.places?.Autocomplete,pi=(e=1e4)=>new Promise(a=>{if(In()){a(!0);return}const n=Date.now(),r=window.setInterval(()=>{if(In()){window.clearInterval(r),a(!0);return}Date.now()-n>e&&(window.clearInterval(r),a(!1))},100)}),fi=()=>{const[e,a]=l.useState(!1),[n,r]=l.useState(!0),[o,i]=l.useState(null);return l.useEffect(()=>{(async()=>{try{const d=await pi(1e4);a(d),d||i("Google Maps API failed to load")}catch{i("Error loading Google Maps API"),a(!1)}finally{r(!1)}})()},[]),{isLoaded:e,isLoading:n,error:o}},gi=({onPlaceSelected:e,onError:a,placeholder:n})=>{const r=me(),o=l.useRef(null),i=l.useRef(null),d=l.useRef(e),c=l.useRef(a),{isLoaded:u,isLoading:p,error:h}=fi(),y=l.useMemo(()=>p?r("searchLocationModal.loadingGoogleMaps"):h?r("searchLocationModal.googleMapsUnavailable"):u?n??r("searchLocationModal.enterLocation"):r("searchLocationModal.googleMapsNotLoaded"),[u,p,h,n,r]);return l.useEffect(()=>{d.current=e},[e]),l.useEffect(()=>{c.current=a},[a]),l.useEffect(()=>{if(!u||!o.current||i.current)return;const m=window?.google;if(!m?.maps?.places?.Autocomplete){c.current?.(r("searchLocationModal.googleMapsUnavailable"));return}o.current.focus();let f=null;const v=()=>{document.querySelectorAll(".pac-container").forEach(x=>{const k=x;k.style.zIndex="20000",k.style.position="fixed"})};f=new MutationObserver(x=>{for(const k of x)for(const w of Array.from(k.addedNodes)){if(w.nodeType!==Node.ELEMENT_NODE)continue;const A=w;A.classList?.contains("pac-container")&&(A.style.zIndex="20000",A.style.position="fixed")}}),f.observe(document.body,{childList:!0,subtree:!0}),v(),window.setTimeout(v,100),i.current=new m.maps.places.Autocomplete(o.current,{types:["geocode"],componentRestrictions:{country:"ar"}});const C=i.current.addListener?.("place_changed",()=>{const x=i.current?.getPlace?.();if(!x?.geometry?.location){c.current?.(r("searchLocationModal.selectedPlaceNoLocation"));return}let k="",w="",A="",S="",T="",D="";const $=x.address_components??[];for(const P of $){const _=P?.types??[];if(_.includes("locality")||_.includes("administrative_area_level_2")){k=P.long_name;continue}if(_.includes("administrative_area_level_1")){w=P.long_name;continue}if(_.includes("country")){A=P.long_name;continue}if(_.includes("postal_code")){S=P.long_name;continue}if(_.includes("route")){T=P.long_name;continue}_.includes("street_number")&&(D=P.long_name)}const B=typeof x.geometry.location.lat=="function"?x.geometry.location.lat():0,I=typeof x.geometry.location.lng=="function"?x.geometry.location.lng():0,U={location:{lat:B,lng:I},address:x.formatted_address??"",city:k,state:w,country:A,postalCode:S,streetName:T,streetNumber:D,shortAddress:[T,D].filter(Boolean).join(" ")};d.current(U)});return()=>{f&&f.disconnect(),C?.remove&&C.remove(),i.current=null}},[u,r]),t.jsx(s.TextField,{fullWidth:!0,size:"small",inputRef:o,placeholder:y,disabled:p||!u||!!h,error:!!h})},mi={street:"",city:"",state:"",zipcode:"",country:""},hi=({baseUrl:e,spaceId:a,entityType:n,entityId:r,onBack:o,onEntityUpdated:i})=>{const d=me(),[c,u]=l.useState(mi),[p,h]=l.useState(""),[y,m]=l.useState(""),[f,v]=l.useState(!1),[C,x]=l.useState(!1),k=l.useMemo(()=>!!(String(c.street??"").trim()||String(c.city??"").trim()||String(c.state??"").trim()||String(c.zipcode??"").trim()||String(c.country??"").trim()),[c]),w=B=>{h(B.address??"");const I=String(B.shortAddress??"").trim()||[B.streetName,B.streetNumber].filter(Boolean).join(" ").trim();u({street:I,city:B.city??"",state:B.state??"",zipcode:B.postalCode??"",country:B.country??""}),m("")},A=B=>{m(String(B??""))},S=B=>I=>{const U=I.target.value;u(P=>({...P,[B]:U}))},T=async()=>{if(!f&&!(!e||!a)&&r){v(!0);try{const B=await nt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{address1:{street:String(c.street??""),city:String(c.city??""),state:String(c.state??""),zipcode:String(c.zipcode??""),country:String(c.country??"")}}});i?.(B),o()}finally{v(!1)}}},D=async()=>{if(!C&&!(!e||!a)&&r){x(!0);try{const B=await nt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{address2:{street:String(c.street??""),city:String(c.city??""),state:String(c.state??""),zipcode:String(c.zipcode??""),country:String(c.country??"")}}});i?.(B),o()}finally{x(!1)}}},$=!k||f||C;return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsxs(s.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:3},children:[t.jsx(s.IconButton,{size:"small",onClick:o,"aria-label":d("global.back"),children:t.jsx(ra,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"h6",children:d("searchLocationModal.searchAddress")})]}),t.jsxs(s.Stack,{spacing:3,children:[t.jsxs(s.Box,{sx:{position:"relative",zIndex:1400},children:[t.jsx(gi,{onPlaceSelected:w,onError:A,placeholder:d("searchLocationModal.enterLocation")}),y?t.jsx(s.Typography,{variant:"caption",color:"error",sx:{mt:.5,display:"block"},children:y}):null]}),t.jsx(s.TextField,{label:d("conversations.contactDetails.street"),value:c.street,onChange:S("street"),fullWidth:!0,size:"medium"}),t.jsxs(s.Stack,{direction:{xs:"column",sm:"row"},spacing:2,children:[t.jsx(s.TextField,{label:d("searchLocationModal.city"),value:c.city,onChange:S("city"),fullWidth:!0,size:"medium"}),t.jsx(s.TextField,{label:d("searchLocationModal.state"),value:c.state,onChange:S("state"),fullWidth:!0,size:"medium"})]}),t.jsxs(s.Stack,{direction:{xs:"column",sm:"row"},spacing:2,children:[t.jsx(s.TextField,{label:d("searchLocationModal.postalCode"),value:c.zipcode,onChange:S("zipcode"),fullWidth:!0,size:"medium"}),t.jsx(s.TextField,{label:d("searchLocationModal.country"),value:c.country,onChange:S("country"),fullWidth:!0,size:"medium"})]}),p?t.jsx(s.Typography,{variant:"caption",sx:{opacity:.7},children:p}):null,t.jsxs(s.Stack,{direction:"row",spacing:2,justifyContent:"flex-end",sx:{pt:2},children:[t.jsx(tt.LoadingButton,{variant:"contained",size:"large",startIcon:t.jsx(ft,{}),onClick:T,loading:f,disabled:$,children:d("searchLocationModal.saveMainAddress")}),t.jsx(tt.LoadingButton,{variant:"outlined",size:"large",startIcon:t.jsx(ft,{}),onClick:D,loading:C,disabled:$,children:d("searchLocationModal.saveSecondaryAddress")})]})]})]})},Ce=(e,a)=>{const[n,r]=l.useState(a||""),[o,i]=l.useState(!1),[d,c]=l.useState("");return l.useEffect(()=>{r(a||"")},[a]),{actions:{onError:u=>{i(!0),c(u)},onSuccess:()=>{i(!1),c("")},resetValue:()=>{r(a||"")},changeValue:u=>{r(u)}},attributes:{error:o,helperText:d,type:e,value:n,onChange:u=>{r(u.target.value)}}}},Ot=({baseUrl:e,spaceId:a,entityType:n,entityId:r,initialImageUrl:o,onEntityUpdated:i})=>{const[d,c]=l.useState(o??""),[u,p]=l.useState(null),[h,y]=l.useState(!1),[m,f]=l.useState(!1),v=l.useRef(null),C=l.useMemo(()=>!!(e&&a&&n&&r),[e,a,n,r]);function x(I){return I.split("?sv=")[0]}function k(I){return I.split("&cacheId=")[0]}function w(I){let U=x(I);return!U||(U=k(U),!U)?"":U}const A=async()=>{if(!e||!a)return null;const I=await xn({baseUrl:e,spaceId:a});return p(I),I},S=async I=>{const U=(u??await A())?.storageAzureSAS,P=U?.expireAt,_=P?new Date(P):null;let V=U?.sas??"";if((!V||_&&_<new Date)&&(V=(await A())?.storageAzureSAS?.sas??""),!V)return I;const R=`${Date.now()}`;return`${I}${V}&cacheId=${R}`},T=async I=>{if(!I){c("");return}const U=x(I);if(!U)return;const P=await S(U);c(P)},D=async I=>{const U=I.target.files?.[0];if(U&&C){v.current&&(v.current.value=""),y(!0);try{const P=await bn({baseUrl:e,spaceId:a,contactId:r,file:U}),_=await nt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{imageUrl:P}});i?.(_),await T(P)}finally{y(!1)}}},$=()=>{v.current?.click()},B=async()=>{if(C&&!m){f(!0);try{await nt({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{imageUrl:""}}),i?.({imageUrl:""}),c("")}finally{f(!1)}}};return l.useEffect(()=>{if(!o){c("");return}T(o)},[o]),{inputAtributes:{onChange:D,ref:v,type:"file",accept:"image/*"},action:{uploadImage:$,deleteImage:B},imageUrl:d,removeParams:w,isUploading:h,isDeleting:m}},kn=(e="")=>{const[a,n]=l.useState(e),r=d=>{n(d.target.value)},o=d=>{n(d)},i=()=>{n(e??"")};return l.useEffect(()=>{n(e)},[e]),{actions:{resetValue:i,changeValue:o},attributes:{value:a,onChange:r}}};let la;const yi=new Uint8Array(16);function xi(){if(!la&&(la=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!la))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return la(yi)}const $e=[];for(let e=0;e<256;++e)$e.push((e+256).toString(16).slice(1));function bi(e,a=0){return $e[e[a+0]]+$e[e[a+1]]+$e[e[a+2]]+$e[e[a+3]]+"-"+$e[e[a+4]]+$e[e[a+5]]+"-"+$e[e[a+6]]+$e[e[a+7]]+"-"+$e[e[a+8]]+$e[e[a+9]]+"-"+$e[e[a+10]]+$e[e[a+11]]+$e[e[a+12]]+$e[e[a+13]]+$e[e[a+14]]+$e[e[a+15]]}const vi=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var En={randomUUID:vi};function _t(e,a,n){if(En.randomUUID&&!a&&!e)return En.randomUUID();e=e||{};const r=e.random||(e.rng||xi)();if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,a){n=n||0;for(let o=0;o<16;++o)a[n+o]=r[o];return a}return bi(r)}function Ci(e){return{id:_t(),address:"",note:"",channelType:e,isSaved:!1}}var da={createNewAddress:Ci};const Si=(e,a,n)=>{if(a!==n&&!(a===null&&n==="")){const r={};return r[e]=n,r}return null},ji=(e,a,n)=>n.map(r=>r.id===a?{...r,address:e}:r);var Tt={getEditedField:Si,getAddressesWithUpdatedValues:ji};const wi={3:"emails",5:"phones",13:"ims_whatsapp",14:"ims_facebook",16:"ims_instagram",20:"ims_webchat",21:"ims_rcs",41:"ims_mercadolibre"},An=({entityId:e,initial:a,dispatch:n,deleteAddress:r,onEntityUpdated:o})=>{const i=(L,j)=>{if(!o)return;const F=wi[L];if(!F)return;const E=j.filter(M=>M?.isSaved!==!1);o({[F]:E})},[d,c]=l.useState(!1),[u,p]=l.useState(()=>a),[h,y]=l.useState(a?.ims_facebook||[]),[m,f]=l.useState(a?.ims_mercadolibre||[]),[v,C]=l.useState(a?.ims_webchat||[]),[x,k]=l.useState(a?.ims_instagram||[]),[w,A]=l.useState(a?.ims_whatsapp||[]),[S,T]=l.useState(a?.emails||[]),[D,$]=l.useState(a?.phones||[]),[B,I]=l.useState(a?.ims_rcs||[]),U=()=>{const L=da.createNewAddress(vt.ChannelType.PHONE),j=[...D,L];$(j)},P=()=>{const L=da.createNewAddress(vt.ChannelType.EMAIL),j=[...S,L];T(j)},_=()=>{const L=da.createNewAddress(vt.ChannelType.WHATSAPP),j=[...w,L];A(j)},V=()=>{const L=da.createNewAddress(vt.ChannelType.RCS),j=[...B,L];I(j)},R=L=>{const j=[...w,L];A(j),p(F=>({...F??{},ims_whatsapp:j})),i(vt.ChannelType.WHATSAPP,j)},O=(L,j)=>{if(j){if(j.channelType===3){const F=S.map(E=>E.id===L?j:E);T(F),p(E=>({...E??{},emails:F})),i(j.channelType,F)}if(j.channelType===5){const F=D.map(E=>E.id===L?j:E);$(F),p(E=>({...E??{},phones:F})),i(j.channelType,F)}if(j.channelType===13){const F=w.map(E=>E.id===L?j:E);A(F),p(E=>({...E??{},ims_whatsapp:F})),i(j.channelType,F)}if(j.channelType===21){const F=B.map(E=>E.id===L?j:E);I(F),p(E=>({...E??{},ims_rcs:F})),i(j.channelType,F)}if(j.channelType===41){const F=m.map(E=>E.id===L?j:E);f(F),p(E=>({...E??{},ims_mercadolibre:F})),i(j.channelType,F)}}},q=async(L,j,F)=>{const E=L.target.value;if(F===3){const M=Tt.getAddressesWithUpdatedValues(E,j,S);T(M)}else if(F===5){const M=Tt.getAddressesWithUpdatedValues(E,j,D);$(M)}else if(F===13){const M=Tt.getAddressesWithUpdatedValues(E,j,w);A(M)}else if(F===21){const M=Tt.getAddressesWithUpdatedValues(E,j,B);I(M)}else if(F===41){const M=Tt.getAddressesWithUpdatedValues(E,j,m);f(M)}},ae=(L,j,F)=>{if(F===14){const E=h.map(M=>M.id===j?{...M,note:L.target.value}:M);y(E)}if(F===20){const E=v.map(M=>M.id===j?{...M,note:L.target.value}:M);C(E)}if(F===16){const E=x.map(M=>M.id===j?{...M,note:L.target.value}:M);k(E)}if(F===3){const E=S.map(M=>M.id===j?{...M,note:L.target.value}:M);T(E)}if(F===5){const E=D.map(M=>M.id===j?{...M,note:L.target.value}:M);$(E)}if(F===13){const E=w.map(M=>M.id===j?{...M,note:L.target.value}:M);A(E)}if(F===21){const E=B.map(M=>M.id===j?{...M,note:L.target.value}:M);I(E)}if(F===41){const E=m.map(M=>M.id===j?{...M,note:L.target.value}:M);f(E)}},de=async(L,j)=>{if(e&&(j===3||j===5||j===13||j===14||j===20||j===16||j===21||j===41)){c(L);const F={contactId:e,contactAddressId:L,type:j};switch(n?await n(r(F)):await r(F),c(!1),j){case 3:const E=S.filter(G=>G.id!==L);T(E),p(G=>({...G??{},emails:E})),i(j,E);break;case 5:const M=D.filter(G=>G.id!==L);$(M),p(G=>({...G??{},phones:M})),i(j,M);break;case 13:const Y=w.filter(G=>G.id!==L);A(Y),p(G=>({...G??{},ims_whatsapp:Y})),i(j,Y);break;case 21:const ye=B.filter(G=>G.id!==L);I(ye),p(G=>({...G??{},ims_rcs:ye})),i(j,ye);break;case 41:const le=m.filter(G=>G.id!==L);f(le),p(G=>({...G??{},ims_mercadolibre:le})),i(j,le);break;case 14:const ge=h.filter(G=>G.id!==L);y(ge),p(G=>({...G??{},ims_facebook:ge})),i(j,ge);break;case 20:const xe=v.filter(G=>G.id!==L);C(xe),p(G=>({...G??{},ims_webchat:xe})),i(j,xe);break;case 16:const Se=x.filter(G=>G.id!==L);k(Se),p(G=>({...G??{},ims_instagram:Se})),i(j,Se);break}}};function he(){y(u?.ims_facebook||[]),f(u?.ims_mercadolibre||[]),C(u?.ims_webchat||[]),k(u?.ims_instagram||[]),A(u?.ims_whatsapp||[]),I(u?.ims_rcs||[]),T(u?.emails||[]),$(u?.phones||[])}return l.useEffect(()=>{p(a),a?.emails&&a?.phones&&(T(a.emails),$(a.phones)),A(a?.ims_whatsapp||[]),I(a?.ims_rcs||[]),y(a?.ims_facebook||[]),C(a?.ims_webchat||[]),k(a?.ims_instagram||[]),f(a?.ims_mercadolibre||[])},[a]),{field:{imsWhatsapp:w,imsRCS:B,imsMercadolibre:m,imsFacebooks:h,imsWebchats:v,imsInstagrams:x,emails:S,phoneNumbers:D},action:{handleAddressFieldChange:q,handleNoteFieldChange:ae,handleDeleteAddress:de,addPhone:U,addEmail:P,addWhatsapp:_,addRCS:V,replaceAddress:O,addWhatsappVerified:R,resetToInitialContactInformation:he},state:{isDeletingAddress:d}}},Dn=({initialState:e=[]}={})=>{const[a,n]=l.useState(e);return{attributes:{value:a,onChange:(r,o)=>{const i=o.some(d=>!a.some(c=>d.id===c.id));(a.filter(d=>!o.some(c=>c.id===d.id)).length>0||i)&&n(o)}},actions:{addValue:r=>{n(o=>o.concat(r))},setValue:r=>{n(r)}}}},Ti=({business:e,customContactFields:a,baseUrl:n,spaceId:r,onEntityUpdated:o})=>{const i=l.useMemo(()=>async ne=>{!n||!r||await ia({baseUrl:n,spaceId:r,data:ne})},[n,r]),d=async ne=>ne,[c,u]=l.useState([]),p=Ce("text",e?.name||""),h=Ot({baseUrl:n,spaceId:r,entityType:"business",entityId:e?.id,initialImageUrl:e?.imageUrl||""}),y=kn(e?.owner),m=Dn({initialState:e?.tags??[]}),[f,v]=l.useState([]),{field:{imsFacebooks:C,imsMercadolibre:x,imsWebchats:k,imsInstagrams:w,imsWhatsapp:A,emails:S,phoneNumbers:T,imsRCS:D},action:{addPhone:$,addEmail:B,addWhatsapp:I,addRCS:U,addWhatsappVerified:P,replaceAddress:_,handleAddressFieldChange:V,handleNoteFieldChange:R,handleDeleteAddress:O,resetToInitialContactInformation:q},state:{isDeletingAddress:ae}}=An({entityId:e?.id,initial:e,dispatch:d,deleteAddress:i,onEntityUpdated:o}),de=Ce("text",e?.address1?.street||""),he=Ce("text",e?.address2?.street||""),L=Ce("text",e?.address1?.city||""),j=Ce("text",e?.address2?.city||""),F=Ce("text",e?.address1?.state||""),E=Ce("text",e?.address2?.state||""),M=Ce("text",e?.address1?.zipcode||""),Y=Ce("text",e?.address2?.zipcode||""),ye=Ce("text",e?.address1?.country||""),le=Ce("text",e?.address2?.country||""),ge=(ne,je,Ae)=>je!==Ae&&!(je===null&&Ae==="")?{[ne]:Ae}:{},xe=()=>{if(!e)return null;const ne={street:de.attributes.value,city:L.attributes.value,state:F.attributes.value,zipcode:M.attributes.value,country:ye.attributes.value},je={street:he.attributes.value,city:j.attributes.value,state:E.attributes.value,zipcode:Y.attributes.value,country:le.attributes.value};return{id:e.id,...ge("owner",e.owner,y.attributes.value),...ge("name",e.name,p.attributes.value),imageUrl:h.imageUrl?h.removeParams(h.imageUrl):null,tags:m.attributes.value,properties:c,members:f,phoneNumbers:T,emails:S,address1:ne,address2:je}};function Se(ne){if(!e)return;const je=J=>J.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),Ae=e.properties.find(J=>J.nameKey===ne)??e.properties.find(J=>je(J.nameKey)===je(ne));if(!Ae){console.error(`No se encontr\xF3 una propiedad con nameKey: ${ne}`);return}const Ge=c.map(J=>J.nameKey===ne?{...J,value:Ae.value}:J);u(Ge)}const G=()=>e?a.map(ne=>{const je=J=>J.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),Ae=e.properties.find(J=>J.nameKey===ne.nameKey)??e.properties.find(J=>je(J.nameKey)===je(ne.nameKey));if(Ae)return{...Ae,nameKey:ne.nameKey,type:Ae.type??ne.type,value:Ae.value};const Ge=c.find(J=>J.nameKey===ne.nameKey);return{nameKey:ne.nameKey,type:ne.type,value:Ge?Ge.value:""}}):[];return l.useEffect(()=>{e&&a&&u(G())},[e,a]),l.useEffect(()=>{e&&m.actions.setValue(e.tags??[])},[e]),{field:{name:p,imsWhatsapp:A,imsRCS:D,contactImage:h,contactPropietary:y,imsMercadolibre:x,imsFacebooks:C,imsWebchats:k,imsInstagrams:w,emails:S,phoneNumbers:T,homeAddress:de,secondaryHomeAddress:he,city:L,secondaryCity:j,state:F,secondaryState:E,postalCode:M,secondaryPostalCode:Y,country:ye,secondaryCountry:le,customProperties:c,labelMultipleSelect:m},action:{setCustomProperties:u,addWhatsapp:I,addRCS:U,getEditedBusiness:xe,handleAddressFieldChange:V,handleNoteFieldChange:R,handleDeleteAddress:O,addPhone:$,addEmail:B,replaceAddress:_,addWhatsappVerified:P,resetToInitialContactInformation:q,resetCustomProperty:Se},state:{isDeletingAddress:ae},selectedContacts:f,setSelectedContacts:v}},Ii=({contact:e,customContactFields:a,baseUrl:n,spaceId:r,onEntityUpdated:o})=>{const i=l.useMemo(()=>async J=>{!n||!r||await ia({baseUrl:n,spaceId:r,data:J})},[n,r]),d=async J=>J,{getEditedField:c}=Tt,[u,p]=l.useState([]),h=Ce("text",e?.firstName||""),y=Ce("text",e?.lastName||""),m=Ot({baseUrl:n,spaceId:r,entityType:"contact",entityId:e?.id?String(e.id):void 0,initialImageUrl:e?.imageUrl}),[f,v]=l.useState(e?.birthDate?Q(e.birthDate):null),C=An({entityId:e?.id,initial:e,dispatch:d,deleteAddress:i,onEntityUpdated:o}),{field:{imsFacebooks:x,imsMercadolibre:k,imsWebchats:w,imsInstagrams:A,imsWhatsapp:S,emails:T,phoneNumbers:D,imsRCS:$},action:{addPhone:B,addEmail:I,addWhatsapp:U,addRCS:P,addWhatsappVerified:_,replaceAddress:V,handleAddressFieldChange:R,handleNoteFieldChange:O,handleDeleteAddress:q,resetToInitialContactInformation:ae},state:{isDeletingAddress:de}}=C,he=Dn({initialState:e?.tags}),L=kn(e?.owner),j=Ce("text",e?.address1?.street),F=Ce("text",e?.address2?.street),E=Ce("text",e?.address1?.city),M=Ce("text",e?.address2?.city),Y=Ce("text",e?.address1?.state),ye=Ce("text",e?.address2?.state),le=Ce("text",e?.address1?.zipcode),ge=Ce("text",e?.address2?.zipcode),xe=Ce("text",e?.address1?.country),Se=Ce("text",e?.address2?.country),G=()=>{if(!e)return null;const J=e,Ye=he.attributes.value.map(fe=>({id:fe.id,name:fe.name})),ze=D.map(fe=>{const{id:mt,...Qe}=fe;return Qe}),Ve=T.map(fe=>{const{id:mt,...Qe}=fe;return Qe});return{id:J.id,owner:L.attributes.value,firstName:h.attributes.value,lastName:y.attributes.value,address1:{...c("street",J.address1?.street,j.attributes.value),...c("city",J.address1?.street,E.attributes.value),...c("state",J.address1?.street,Y.attributes.value),...c("zipcode",J.address1?.street,le.attributes.value),...c("country",J.address1?.street,xe.attributes.value)},address2:{...c("street",J.address2?.street,F.attributes.value),...c("city",J.address2?.street,M.attributes.value),...c("state",J.address2?.street,ye.attributes.value),...c("zipcode",J.address2?.street,ge.attributes.value),...c("country",J.address2?.street,Se.attributes.value)},emails:Ve,phones:ze,tags:Ye,imageUrl:m.imageUrl?m.removeParams(m.imageUrl):null,properties:u,birthDate:f?.toDate()}};function ne(){e&&(!e.businessId||e.businessName)}function je(){v(e?.birthDate?Q(e.birthDate):null)}function Ae(J){if(!e)return;const Ye=fe=>fe.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),ze=e.properties.find(fe=>fe.nameKey===J)??e.properties.find(fe=>Ye(fe.nameKey)===Ye(J));if(!ze){console.error(`No se encontr\xF3 una propiedad con nameKey: ${J}`);return}const Ve=u.map(fe=>fe.nameKey===J?{...fe,value:ze.value}:fe);p(Ve)}const Ge=()=>e?a.map(J=>{const Ye=fe=>fe.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),ze=e.properties.find(fe=>fe.nameKey===J.nameKey)??e.properties.find(fe=>Ye(fe.nameKey)===Ye(J.nameKey));if(ze)return{...ze,nameKey:J.nameKey,type:ze.type??J.type,value:ze.value};const Ve=u.find(fe=>fe.nameKey===J.nameKey);return{nameKey:J.nameKey,type:J.type,value:Ve?Ve.value:""}}):[];return l.useEffect(()=>{e&&a&&p(Ge())},[e,a]),l.useEffect(()=>{e?.tags&&he.actions.setValue(e.tags),e?.businessId&&e.businessName},[e]),{field:{birthDate:f,imsWhatsapp:S,imsRCS:$,contactFirstname:h,contactLastname:y,contactImage:m,contactPropietary:L,imsMercadolibre:k,imsFacebooks:x,imsWebchats:w,imsInstagrams:A,emails:T,phoneNumbers:D,homeAddress:j,secondaryHomeAddress:F,city:E,secondaryCity:M,state:Y,secondaryState:ye,postalCode:le,secondaryPostalCode:ge,country:xe,secondaryCountry:Se,customProperties:u,labelMultipleSelect:he},action:{setBirthDate:v,setCustomProperties:p,getEditedContact:G,handleAddressFieldChange:R,handleNoteFieldChange:O,handleDeleteAddress:q,addPhone:B,addEmail:I,addWhatsapp:U,addRCS:P,replaceAddress:V,addWhatsappVerified:_,resetToInitialContactInformation:ae,resetSelectedBusiness:ne,resetBirthDate:je,resetCustomProperty:Ae},state:{isDeletingAddress:de}}},Ua=l.createContext(null),ki=({children:e,contact:a,customContactFields:n,baseUrl:r,spaceId:o,onEntityUpdated:i})=>{const d=Ii({contact:a,customContactFields:n,baseUrl:r,spaceId:o,onEntityUpdated:i});return t.jsx(Ua.Provider,{value:{entityType:"contact",editEntity:d,entityId:String(a.id)},children:e})},Ei=({children:e,business:a,customContactFields:n,baseUrl:r,spaceId:o,onEntityUpdated:i})=>{const d=Ti({business:a,customContactFields:n,baseUrl:r,spaceId:o,onEntityUpdated:i});return t.jsx(Ua.Provider,{value:{entityType:"business",editEntity:d,entityId:String(a.id)},children:e})},Ai=({children:e,entityType:a,entityData:n,customContactFields:r,baseUrl:o,spaceId:i,onEntityUpdated:d})=>a==="contact"?t.jsx(ki,{contact:n,customContactFields:r,baseUrl:o,spaceId:i,onEntityUpdated:d,children:e}):t.jsx(Ei,{business:n,customContactFields:r,baseUrl:o,spaceId:i,onEntityUpdated:d,children:e}),dt=()=>{const e=l.useContext(Ua);if(!e)throw new Error("useEditEntity must be used within EditEntityProvider");return e},It=({userId:e,users:a,currentUser:n})=>{if(!e)return null;if(n?.uid&&n.uid===e)return n.display_name||n.email||null;const r=a.find(o=>o?.id===e);return r?.name?.trim()||r?.email||null},Di=({birthDate:e,setBirthDate:a,dateFormat:n})=>{const r=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Ut.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Rt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Qa.DatePicker,{value:e,onChange:o=>a(o),slotProps:{textField:{size:"small"}},format:r})})})},Fi={view:"main",setView:()=>{}},Fn=l.createContext(null),Bi=Fn.Provider,Mi=()=>l.useContext(Fn)||(console.warn("[useEditContactView] using noop, context value is missing"),Fi);function Ra(e){return e?.isBusiness===!0?!0:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&Array.isArray(e.membersId)&&Array.isArray(e.members)&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&typeof e.imageUrl=="string"&&!("firstName"in e)&&!("lastName"in e)}function $i({value:e,displayValue:a,businessId:n}){const r=at(),o=wn(),[i,d]=l.useState(null),c=Ot({initialImageUrl:i?.imageUrl,entityType:"business",entityId:n}),[u,p]=l.useState(null),[h,y]=l.useState(!1);return t.jsxs(s.Box,{display:"flex",alignItems:"center",children:[t.jsx(s.Typography,{onClick:async m=>{const f=m.currentTarget;if(y(!0),!r){console.error("API is null");return}const v=await r.fetchBusiness({businessId:n});if(v&&Ra(v)&&d(v),y(!1),!f){console.error("Target element is null");return}p(f)},variant:"body2",fontWeight:"600",sx:{padding:1,cursor:"pointer"},color:m=>m.palette.text.primary,children:a||typeof e=="string"&&e||"-"}),i&&t.jsx(Ma,{contactData:i,open:!!u,anchorEl:u,onClose:()=>p(null),navigate:o,avatarImgUrl:c.imageUrl}),h&&t.jsx(s.Box,{display:"flex",alignItems:"center",justifyContent:"center",p:1,children:t.jsx(s.CircularProgress,{size:20})})]})}const Pi=e=>"email"in e,Na=e=>e.entityType==="contact"&&e.inputType==="birthday",Ui=s.styled(s.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),Bn=s.styled(s.IconButton)({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}}),gt=e=>{const{title:a,value:n,isNotEditable:r,displayValue:o,baseUrl:i,spaceId:d,minWidth:c,onEntityUpdated:u}=e,p=me(),{setView:h}=Mi(),y=e.inputType??"text",[m,f]=l.useState(!1),[v,C]=l.useState(!1),x=l.useRef(null),[k,w]=l.useState(!1),[A,S]=l.useState(()=>e.entityType==="business"||typeof n=="string"?n:void 0);l.useEffect(()=>{const R=x.current;if(!R)return;const O=()=>{const q=R.scrollWidth>R.clientWidth;w(ae=>ae===q?ae:q)};if(O(),typeof ResizeObserver<"u"){let q=0;const ae=new ResizeObserver(()=>{if(typeof window>"u"){O();return}q&&window.cancelAnimationFrame(q),q=window.requestAnimationFrame(()=>{O()})});return ae.observe(R),()=>{typeof window<"u"&&q&&window.cancelAnimationFrame(q),ae.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",O),()=>{window.removeEventListener("resize",O)}},[a]),l.useEffect(()=>{e.entityType==="business"?S(n):S(typeof n=="string"?n:void 0)},[n,e.entityType]);const T=()=>{if(e.entityType==="contact"&&y==="selectBusiness"){h("businessSelect");return}f(R=>!R)},D=R=>{S(R.target.value)},$=R=>{const O=R.target.value;S(O)},B=()=>{Na(e)&&e.contact.action.resetBirthDate(),f(!1)},I=async()=>{if(!e.constructUpdateObject){f(!1);return}if(e.entityType==="business"&&A===void 0){f(!1);return}C(!0);try{if(!i||!d)throw new Error("Missing baseUrl or spaceId for updateEntity");if(e.entityType==="contact"){let R=A===void 0?null:A;if(Na(e)){const de=Q(e.contact.field.birthDate);de.isValid()&&(R=de.toISOString())}const O=e.constructUpdateObject(R),q=e.entityId??O?.id;if(!q)throw new Error("Missing contactId for updateEntity");const ae=await nt({baseUrl:i,spaceId:d,entityType:"contact",entityId:q,body:O});u?.(ae)}else{const R=e.constructUpdateObject(A),O=e.entityId??R?.id;if(!O)throw new Error("Missing businessId for updateEntity");const q=await nt({baseUrl:i,spaceId:d,entityType:"business",entityId:O,body:R});u?.(q)}}finally{C(!1),f(!1)}},U=typeof A=="string"?A:"",P=A instanceof Date?A.toISOString():typeof A=="string"?A:"",_=c??(e.entityType==="contact"?"45%":"200px"),V=e.options??[];return t.jsxs(s.Box,{className:"fadein col-5",sx:{display:"flex",backgroundColor:R=>R.palette.mode==="dark"?"1e1e1e":R.palette.background.default,flexDirection:"column",borderRadius:1,minWidth:_,"&:hover .edit-icon":{opacity:1}},children:[t.jsxs(s.Box,{display:"flex",position:"relative",minHeight:"25px",children:[k?t.jsx(s.Tooltip,{title:a,arrow:!0,children:t.jsx(s.Typography,{ref:x,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:m?1:0,color:R=>R.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a})}):t.jsx(s.Typography,{ref:x,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:m?1:0,color:R=>R.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a}),r?null:m?t.jsxs(t.Fragment,{children:[t.jsx(Bn,{size:"small",onClick:I,children:v?t.jsx(s.CircularProgress,{size:24}):t.jsx(ft,{})}),t.jsx(Bn,{size:"small",onClick:B,children:t.jsx(Za,{})})]}):t.jsx(Ui,{className:"edit-icon",size:"small",onClick:T,children:t.jsx(bt,{})})]}),t.jsx(s.Box,{width:m?"100%":"50%",position:"relative",children:m&&y==="text"?t.jsx(s.TextField,{value:P,onChange:D,variant:"standard",size:"small",sx:{width:"100%"}}):m&&(y==="select"||y==="selectMembers")?t.jsxs(s.Select,{value:U,onChange:$,variant:"standard",size:"small",sx:{width:"100%"},children:[e.entityType==="contact"?t.jsx(s.MenuItem,{value:"",children:p("conversations.contactDetails.contactInfo.emptySelection")}):null,V.map((R,O)=>t.jsx(s.MenuItem,{value:R.id,children:e.entityType==="contact"?R.name?.trim()||(Pi(R)?R.email:"")||"Sin nombre":R.name?.trim()||R.email||"Sin nombre"},O))]}):m&&Na(e)?t.jsx(Di,{birthDate:e.contact.field.birthDate,setBirthDate:e.contact.action.setBirthDate,dateFormat:e.dateFormat}):!m&&e.entityType==="contact"&&y==="selectBusiness"&&e.businessId?t.jsx($i,{value:String(n??""),displayValue:String(o??""),businessId:e.businessId}):t.jsx(s.Typography,{variant:"body2",fontWeight:"400",sx:{padding:"2.5px 14px 8.5px 0px"},color:R=>R.palette.text.primary,children:o||typeof n=="string"&&n||"-"})})]})},Wt=e=>{const{title:a,value:n,isNotEditable:r,options:o=[],displayValue:i,constructUpdateObject:d,businessId:c,baseUrl:u,spaceId:p,contactId:h,onEntityUpdated:y}=e;if(e.inputType==="birthday")return t.jsx(gt,{entityType:"contact",entityId:h,title:a,value:n,isNotEditable:r,inputType:"birthday",options:o,displayValue:i,constructUpdateObject:d,contact:e.contact,businessId:c,baseUrl:u,spaceId:p,dateFormat:e.dateFormat,onEntityUpdated:y});const m=e.inputType??"text";return t.jsx(gt,{entityType:"contact",entityId:h,title:a,value:n,isNotEditable:r,inputType:m,options:o,displayValue:i,constructUpdateObject:d,businessId:c,baseUrl:u,spaceId:p,onEntityUpdated:y})},Ri=({nameKey:e,value:a,onChange:n,type:r,min:o,max:i})=>{const d=f=>{r===K.ContactField_type.NUMBER_ACCOUNTING||r===K.ContactField_type.NUMBER_DECIMAL||r===K.ContactField_type.NUMBER_CURRENCY||r===K.ContactField_type.CURRENCY?u(f):r===K.ContactField_type.NUMBER_INTEGER?p(f):(r===K.ContactField_type.LONGTEXT||r===K.ContactField_type.TEXT||r===K.ContactField_type.ADDRESS)&&c(f)},c=f=>{n(e,f.target.value)},u=f=>{const v=f.target.value.replace(/[^0-9.-]/g,"");if(v===""||v==="-"){n(e,v);return}const C=Number(v);Number.isNaN(C)||n(e,v)},p=f=>{const v=f.target.value;if(v===""){n(e,v);return}/^\d*$/.test(v)&&n(e,v)},h=()=>r===K.ContactField_type.CURRENCY||r===K.ContactField_type.NUMBER_ACCOUNTING||r===K.ContactField_type.NUMBER_DECIMAL||r===K.ContactField_type.NUMBER_INTEGER||r===K.ContactField_type.NUMBER_CURRENCY,y=()=>{if(!h()||a===""||a==null)return!1;const f=Number(a);return Number.isNaN(f)?!1:o!=null&&f<o||i!=null&&f>i},m=()=>{if(h()){if(o!=null&&i!=null)return`${o} - ${i}`;if(o!=null)return`min: ${o}`;if(i!=null)return`max: ${i}`}};return t.jsx(s.TextField,{size:"small",variant:"standard",value:a,onChange:d,error:y(),helperText:m(),inputProps:{pattern:"[0-9]*"},multiline:r===K.ContactField_type.LONGTEXT,rows:r===K.ContactField_type.LONGTEXT?4:1,sx:{width:"100%"}})},Ni=({value:e,handleChange:a,dateFormat:n})=>{const r=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Ut.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Rt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Qa.DatePicker,{value:e?Q(e):null,onChange:o=>a(o),format:r,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},Li=({handleChange:e,value:a,options:n})=>{const r=me();return t.jsx(s.FormControl,{className:"fadein",sx:{width:"100%"},children:t.jsxs(s.Select,{value:a,onChange:o=>e(o.target.value),size:"small",variant:"standard",children:[t.jsx(s.MenuItem,{value:"",children:r("global.noValue")}),n.map((o,i)=>t.jsx(s.MenuItem,{value:o,children:o},i))]})})},zi=({value:e,handleChange:a,userTimeFormat:n})=>{const r=n==="24"?"HH:mm":"hh:mm";return t.jsx(Ut.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Rt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Vr.TimePicker,{value:e?Q(e):null,onChange:o=>a(o),format:r,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},Oi=({value:e,handleChange:a,userTimeFormat:n})=>{const r=me(),o=[Q().set("hour",0).set("minute",0),Q().set("hour",0).set("minute",0)],i=n==="24"?"HH:mm":"hh:mm";return t.jsx(Ut.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Rt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Xe.MultiInputTimeRangeField,{slotProps:{textField:({position:d})=>({label:r(d==="start"?"contactEdit.from":"contactEdit.to"),size:"small",variant:"standard",inputProps:{placeholder:i}})},value:e||o,onChange:d=>a(d),format:i})})})},_i=({value:e,handleChange:a,userDateFormat:n})=>{const r=me(),o=[Q(),Q()],i=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Ut.LocalizationProvider,{dateAdapter:Pt.AdapterDayjs,children:t.jsx(Rt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Xe.MultiInputDateRangeField,{slotProps:{textField:({position:d})=>({label:r(d==="start"?"contactEdit.from":"contactEdit.to"),size:"small",sx:{width:"100%"},variant:"standard",inputProps:{placeholder:i}})},value:e||o,onChange:d=>a(d),format:i})})})},ca=({label:e,description:a})=>a?t.jsxs(s.Box,{component:"span",sx:{display:"inline-flex",alignItems:"center",gap:.5},children:[e,t.jsx(s.Tooltip,{title:a,placement:"top",arrow:!0,children:t.jsx(Hr,{sx:{fontSize:16,mt:"-2px"}})})]}):t.jsx(t.Fragment,{children:e}),Wi=({nameKey:e,name:a,value:n,onChange:r,required:o,description:i,placeholder:d})=>{const[c,u]=l.useState(""),p=Array.isArray(n)?n:[],h=()=>{const m=c.trim();m&&(r(e,[...p,m]),u(""))},y=m=>{r(e,p.filter((f,v)=>v!==m))};return t.jsxs(s.Box,{sx:{width:"100%",mt:"10px"},children:[t.jsx(s.TextField,{size:"small",variant:"standard",label:t.jsx(ca,{label:a??e,description:i}),value:c,placeholder:d||"",fullWidth:!0,required:o&&p.length===0,InputLabelProps:{shrink:!0},onChange:m=>u(m.target.value),onKeyDown:m=>{m.key==="Enter"&&(m.preventDefault(),h())},InputProps:{endAdornment:t.jsx(s.IconButton,{size:"small",onClick:h,disabled:!c.trim(),children:t.jsx(sa,{fontSize:"small"})})}}),p.length>0&&t.jsx(s.Box,{sx:{display:"flex",flexWrap:"wrap",gap:.5,mt:.5},children:p.map((m,f)=>t.jsx(s.Chip,{label:m,size:"small",onDelete:()=>y(f)},f))})]})},La=e=>e.reduce((a,n)=>({...a,[n.key]:""}),{}),Vi=({nameKey:e,name:a,value:n,schema:r,onChange:o,required:i,description:d})=>{const c=me(),u=Array.isArray(n)?n:[],p=r??[],[h,y]=l.useState(La(p)),[m,f]=l.useState(!1),[v,C]=l.useState(null),[x,k]=l.useState({}),w=I=>{o(e,u.filter((U,P)=>P!==I))},A=()=>{o(e,[...u,h]),y(La(p)),f(!1)},S=()=>{y(La(p)),f(!1)},T=I=>{C(I),k({...u[I]}),f(!1)},D=()=>{const I=u.map((U,P)=>P===v?x:U);o(e,I),C(null),k({})},$=()=>{C(null),k({})},B=(I,U=!1)=>{const P=U?x:h,_=U?k:y;return I.type===K.ContactField_Item_Type.OPTIONS&&I.options?.length?t.jsxs(s.FormControl,{size:"small",fullWidth:!0,variant:"standard",children:[t.jsx(s.InputLabel,{shrink:!0,children:I.label}),t.jsx(s.Select,{label:I.label,variant:"standard",value:P[I.key]??"",onChange:V=>_(R=>({...R,[I.key]:V.target.value})),children:I.options.map(V=>t.jsx(s.MenuItem,{value:V,children:V},V))})]},I.key):t.jsx(s.TextField,{size:"small",fullWidth:!0,label:I.label,variant:"standard",required:I.required,InputLabelProps:{shrink:!0},value:P[I.key]??"",type:I.type===K.ContactField_Item_Type.NUMBER_INTEGER||I.type===K.ContactField_Item_Type.NUMBER_CURRENCY?"number":"text",onChange:V=>_(R=>({...R,[I.key]:V.target.value}))},I.key)};return t.jsxs(s.Box,{sx:{width:"100%",display:"flex",flexDirection:"column",gap:1},children:[t.jsxs(s.Typography,{variant:"caption",sx:{color:"text.secondary",display:"inline-flex",alignItems:"center",gap:.5},children:[t.jsx(ca,{label:a??e,description:d}),i&&u.length===0?" *":""]}),u.map((I,U)=>v===U?t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",gap:1,mb:1,p:1,border:"1px solid",borderColor:"primary.main",borderRadius:1},children:[p.map(P=>B(P,!0)),t.jsxs(s.Box,{sx:{display:"flex",gap:1,justifyContent:"flex-end"},children:[t.jsx(s.Button,{size:"small",onClick:$,children:c("global.cancel")}),t.jsx(s.Button,{size:"small",variant:"contained",onClick:D,children:c("global.accept")})]})]},U):t.jsx(s.Card,{variant:"outlined",sx:{mb:1,position:"relative"},children:t.jsxs(s.CardContent,{sx:{p:1,"&:last-child":{pb:1},pr:8},children:[t.jsxs(s.Box,{sx:{position:"absolute",top:4,right:4,display:"flex",gap:.5},children:[t.jsx(s.IconButton,{size:"small",onClick:()=>T(U),children:t.jsx(bt,{fontSize:"small"})}),t.jsx(s.IconButton,{size:"small",onClick:()=>w(U),children:t.jsx($t,{fontSize:"small"})})]}),p.map(P=>t.jsxs(s.Typography,{variant:"body2",sx:{color:"text.primary",fontSize:12},children:[t.jsxs("strong",{children:[P.label,":"]})," ",I[P.key]??"\u2014"]},P.key))]})},U)),!m&&v===null&&t.jsx(s.Button,{size:"small",startIcon:t.jsx(sa,{}),onClick:()=>f(!0),variant:"outlined",sx:{alignSelf:"end"},children:c("global.add")}),m&&t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",gap:1,p:1,border:"1px solid",borderColor:"divider",borderRadius:1},children:[p.map(I=>B(I,!1)),t.jsxs(s.Box,{sx:{display:"flex",gap:1,justifyContent:"flex-end"},children:[t.jsx(s.Button,{size:"small",onClick:S,children:c("global.cancel")}),t.jsx(s.Button,{size:"small",variant:"contained",onClick:A,children:c("global.accept")})]})]})]})},Hi=s.styled(s.IconButton)(()=>({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"})),Mn=s.styled(s.IconButton)(()=>({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}})),Gi=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",borderRadius:e.shape.borderRadius,minWidth:"45%","&:hover .edit-icon":{opacity:1}})),$n=s.styled(s.Typography)(({theme:e})=>({fontWeight:600,fontSize:"0.875rem",alignSelf:"center",color:e.palette.text.primary,letterSpacing:-.5,padding:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:0})),za=s.styled(s.Typography)(({theme:e})=>({fontWeight:400,fontSize:"0.875rem",padding:"2.5px 14px 8.5px 0px",color:e.palette.text.primary,wordWrap:"break-word",maxHeight:"80px",overflow:"auto",whiteSpace:"break-spaces"})),Pn=({property:e,entity:a,entityType:n,entityId:r,customContactFields:o,userTrii:i,baseUrl:d,spaceId:c,onEntityUpdated:u})=>{const{customProperties:p}=a.field,{setCustomProperties:h}=a.action,[y,m]=l.useState(!1),[f,v]=l.useState(!1),C=l.useRef(null),[x,k]=l.useState(!1),w=(i?.regCon_dateFormat||"YYYY/MM/DD").toUpperCase(),A=i?.regCon_timeFormat||"24",S=j=>j===K.ContactField_type.NUMBER_INTEGER||j===K.ContactField_type.NUMBER_DECIMAL||j===K.ContactField_type.NUMBER_CURRENCY||j===K.ContactField_type.NUMBER_ACCOUNTING||j===K.ContactField_type.CURRENCY,T=(j,F)=>j.toLowerCase()==="dni"?!0:S(F),D=(j,F,E)=>{if(E===""||E===null||E===void 0)return null;if(T(j,F)){const M=Number(E);return Number.isNaN(M)?E:M}return E},$=j=>{if(Array.isArray(j))return j;if(typeof j=="string"&&j.trim().startsWith("["))try{const F=JSON.parse(j);return Array.isArray(F)?F:[]}catch{return[]}return[]},B=()=>m(j=>!j),I=()=>{m(!1),a.action.resetCustomProperty(e.nameKey)},U=async()=>{if(!d||!c||!r)return;v(!0);const j=p.find(le=>le.nameKey===e.nameKey)||e,{nameKey:F,value:E}=j,M=o.find(le=>le.nameKey===F)?.type??j.type;let Y;if(M===K.ContactField_type.TIME){const le=Q(E);le.isValid()?Y=le.format(A==="24"?"HH:mm":"hh:mm"):Y=E}else if(M===K.ContactField_type.DATE){const le=Q(E);le.isValid()?Y=le.toISOString():Y=E}else M===K.ContactField_type.LIST_SINGLE||M===K.ContactField_type.LIST_OBJECT?Y=Array.isArray(E)?JSON.stringify(E):E:Y=D(F,M,E);const ye={properties:[{nameKey:F,type:M,value:Y}]};try{const le=await nt({baseUrl:d,spaceId:c,entityType:n,entityId:r,body:ye}),ge=p.map(xe=>xe.nameKey===F?{...xe,type:M,value:Y}:xe);h(ge),u?.(le)}finally{v(!1),m(!1)}},P=j=>o.find(F=>F.nameKey===j)?.name||j;l.useEffect(()=>{const j=C.current;if(!j)return;const F=()=>{const E=j.scrollWidth>j.clientWidth;k(M=>M===E?M:E)};if(F(),typeof ResizeObserver<"u"){let E=0;const M=new ResizeObserver(()=>{if(typeof window>"u"){F();return}E&&window.cancelAnimationFrame(E),E=window.requestAnimationFrame(()=>{F()})});return M.observe(j),()=>{typeof window<"u"&&E&&window.cancelAnimationFrame(E),M.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",F),()=>{window.removeEventListener("resize",F)}},[o,e.nameKey]);const _=(j,F)=>{const E=e.type===K.ContactField_type.DATERANGE?Array.isArray(F)&&F[0]&&F[1]?`${Q(F[0]).toISOString()} - ${Q(F[1]).toISOString()}`:"":e.type===K.ContactField_type.DATE?Q(F).isValid()?Q(F).toISOString():"Invalid Date":e.type===K.ContactField_type.TIME?Q(F).isValid()?Q(F).toISOString():"Invalid Time":F,M=p.map(Y=>Y.nameKey===j?{...Y,value:E}:Y);h(M)},{type:V,nameKey:R,value:O}=e,q=j=>j==null?!1:typeof j=="string"?j.trim().length>0:!0,ae=(o.find(j=>j.nameKey===e.nameKey)?.requiredField??!1)&&!q(O),de=[K.ContactField_type.NUMBER_INTEGER,K.ContactField_type.NUMBER_DECIMAL,K.ContactField_type.NUMBER_CURRENCY,K.ContactField_type.NUMBER_ACCOUNTING,K.ContactField_type.CURRENCY],he=()=>{const j=o.find(Y=>Y.nameKey===R);if(!j)return!1;const{min:F,max:E}=j;if(F==null&&E==null||!de.includes(V)||O===""||O==null)return!1;const M=Number(O);return Number.isNaN(M)?!1:F!=null&&M<F||E!=null&&M>E},L=()=>V===K.ContactField_type.DATE?t.jsx(Ni,{value:O?Q(O):null,handleChange:j=>_(R,j?.toDate()),dateFormat:w}):V===K.ContactField_type.TIME?t.jsx(zi,{value:e?.valueDate?Q(e.valueDate):O?Q(O):null,handleChange:j=>_(R,j),userTimeFormat:A}):V===K.ContactField_type.DATERANGE?t.jsx(_i,{value:O&&typeof O=="string"&&O.includes(" - ")?[Q(O.split(" - ")[0]),Q(O.split(" - ")[1])]:null,handleChange:j=>_(R,[j[0]?.toDate?.(),j[1]?.toDate?.()]),userDateFormat:w}):V===K.ContactField_type.TIMERANGE?t.jsx(Oi,{value:Array.isArray(O)&&O.length===2?[Q(O[0]),Q(O[1])]:null,handleChange:j=>_(R,[j[0]?.toDate?.(),j[1]?.toDate?.()]),userTimeFormat:A}):V===K.ContactField_type.OPTIONS?t.jsx(Li,{value:typeof O=="string"?O:"",handleChange:j=>_(R,j),options:o.find(j=>j.nameKey===R)?.typeOptions??[]}):V===K.ContactField_type.LIST_SINGLE?t.jsx(Wi,{nameKey:R,name:P(R),value:$(O),onChange:_,description:o.find(j=>j.nameKey===R)?.description}):V===K.ContactField_type.LIST_OBJECT?t.jsx(Vi,{nameKey:R,name:P(R),value:$(O),schema:o.find(j=>j.nameKey===R)?.listItemSchema??[],onChange:_,description:o.find(j=>j.nameKey===R)?.description}):t.jsx(Ri,{type:V,nameKey:R,value:O,onChange:_,min:o.find(j=>j.nameKey===R)?.min,max:o.find(j=>j.nameKey===R)?.max});return t.jsxs(Gi,{className:`fadein ${e.type===K.ContactField_type.LONGTEXT||e.type===K.ContactField_type.LIST_OBJECT?"col-12":"col-5"}`,children:[t.jsxs(s.Box,{display:"flex",position:"relative",minHeight:"25px",alignItems:"center",children:[x?t.jsx(s.Tooltip,{title:P(e.nameKey),arrow:!0,children:t.jsxs($n,{ref:C,flexGrow:y?1:0,noWrap:!0,children:[t.jsx(ca,{label:P(e.nameKey),description:o.find(j=>j.nameKey===e.nameKey)?.description}),ae&&t.jsx(s.Box,{component:"span",sx:{color:"error.main",ml:.5},children:"*"})]})}):t.jsxs($n,{ref:C,flexGrow:y?1:0,noWrap:!0,children:[t.jsx(ca,{label:P(e.nameKey),description:o.find(j=>j.nameKey===e.nameKey)?.description}),ae&&t.jsx(s.Box,{component:"span",sx:{color:"error.main",ml:.5},children:"*"})]}),y?t.jsxs(t.Fragment,{children:[t.jsx(Mn,{size:"small",onClick:U,disabled:f||he(),children:f?t.jsx(s.CircularProgress,{size:24}):t.jsx(ft,{})}),t.jsx(Mn,{size:"small",onClick:I,children:t.jsx(Za,{})})]}):t.jsx(Hi,{className:"edit-icon",size:"small",onClick:B,children:t.jsx(bt,{})})]}),t.jsx(s.Box,{width:y||e.type===K.ContactField_type.LONGTEXT||e.type===K.ContactField_type.LIST_OBJECT?"100%":"50%",position:"relative",children:y?f?null:L():e.type===K.ContactField_type.LIST_SINGLE?(()=>{const j=$(e.value);return j.length>0?t.jsx(s.Box,{sx:{display:"flex",flexWrap:"wrap",gap:.5,py:"2.5px"},children:j.map((F,E)=>t.jsx(s.Chip,{label:F,size:"small"},E))}):t.jsx(za,{children:"-"})})():e.type===K.ContactField_type.LIST_OBJECT?(()=>{const j=$(e.value),F=o.find(E=>E.nameKey===R)?.listItemSchema??[];return j.length>0?t.jsx(s.Box,{sx:{pt:"2.5px",pb:"8.5px"},children:j.map((E,M)=>t.jsx(s.Card,{variant:"outlined",sx:{mb:1},children:t.jsx(s.CardContent,{sx:{p:1,"&:last-child":{pb:1}},children:F.map(Y=>t.jsx(s.TextField,{size:"small",variant:"standard",label:Y.label,value:E[Y.key]??"",InputProps:{readOnly:!0,disableUnderline:!0},InputLabelProps:{shrink:!0},fullWidth:!0,sx:{mb:.5,"& .MuiInputBase-input":{cursor:"default"}}},Y.key))})},M))}):t.jsx(za,{children:"-"})})():t.jsx(za,{children:q(e?.value)?e.type===K.ContactField_type.DATERANGE?(()=>{if(typeof e.value=="string"){const j=e.value.split(" - ");if(j.length===2){const[F,E]=j,M=Q(F),Y=Q(E);return`${M.isValid()?M.format(w):"-"} - ${Y.isValid()?Y.format(w):"-"}`}}else if(Array.isArray(e.value)&&e.value.length===2)return`${Q(e.value[0]).format(w)} - ${Q(e.value[1]).format(w)}`;return`${e.value}`})():e.type===K.ContactField_type.TIMERANGE?Array.isArray(e.value)&&e.value.length===2?`${Q(e.value[0]).format(A==="24"?"HH:mm":"hh:mm")} - ${Q(e.value[1]).format(A==="24"?"HH:mm":"hh:mm")}`:`${e.value}`:e.type===K.ContactField_type.TIME?(()=>{try{const j=e.valueDate||e.value;return`${Q(j).format(A==="24"?"HH:mm":"hh:mm A")}`}catch{return`${e.value}`}})():e.type===K.ContactField_type.DATE?(()=>{try{return`${Q(e.value).format(w)}`}catch{return`${e.value}`}})():`${e?.value}`:null})})]})},qi=e=>{const{dateFormat:a,entityData:n,customContactFields:r,baseUrl:o,spaceId:i,currentUser:d,onEntityUpdated:c}=e,u=me(),{entityType:p,editEntity:h}=dt(),y=at();if(p!=="contact")return null;const[m,f]=l.useState([]),[v,C]=l.useState(null),[x,k]=l.useState(null),[w,A]=l.useState(null),S=h;l.useEffect(()=>{if(!y)return;const I=new AbortController;return y.fetchUsers({signal:I.signal}).then(U=>{I.signal.aborted||f(U??[])}).catch(()=>{I.signal.aborted||f([])}),()=>{I.abort()}},[y]),l.useEffect(()=>{const I=new AbortController,U=async P=>{if(!P||!y)return null;try{const _=await y.fetchUserTriiById({userId:P,signal:I.signal});return _?.display_name||_?.email||null}catch{return null}};return(async()=>{const P=It({userId:n.owner,users:m,currentUser:d})??(n.owner?await U(n.owner):null),_=It({userId:n.createdBy??void 0,users:m,currentUser:d})??(n.createdBy?await U(n.createdBy):null),V=It({userId:n.updatedBy??void 0,users:m,currentUser:d})??(n.updatedBy?await U(n.updatedBy):null);I.signal.aborted||(C(P),A(_),k(V))})(),()=>{I.abort()}},[y,n,m,d]);const T=(a||"YYYY/MM/DD").toUpperCase(),D=S.field.birthDate,$=D?.isValid()?D.format(T):null,B=I=>{const U=new Date;let P=U.getFullYear()-I.getFullYear();const _=U.getMonth()-I.getMonth();return(_<0||_===0&&U.getDate()<I.getDate())&&P--,P};return t.jsx(zt,{title:"General",children:t.jsxs(Tn,{children:[t.jsx(Wt,{title:u("conversations.contactDetails.contactOwner"),displayValue:v||"-",value:n.owner,inputType:"select",options:m,constructUpdateObject:I=>({owner:typeof I=="string"?I:""}),contact:S,baseUrl:o,spaceId:i,contactId:n.id,onEntityUpdated:c}),t.jsx(Wt,{title:u("conversations.contactDetails.business"),displayValue:n.businessName||"-",value:n.businessId,inputType:"selectBusiness",businessId:n.businessId,contact:S,baseUrl:o,spaceId:i,contactId:n.id,onEntityUpdated:c}),t.jsx(Wt,{title:u("conversations.contactDetails.createdBy"),value:w||"-",isNotEditable:!0,contact:S,baseUrl:o,spaceId:i,contactId:n.id}),t.jsx(Wt,{title:u("conversations.contactDetails.modifiedBy"),value:x||"-",isNotEditable:!0,contact:S,baseUrl:o,spaceId:i,contactId:n.id}),t.jsx(Wt,{title:u("global.birthdate"),inputType:"birthday",displayValue:D?`${$} (${B(D.toDate())})`:"-",value:D?D.toISOString():"",constructUpdateObject:I=>({birthDate:I}),contact:S,baseUrl:o,spaceId:i,contactId:n.id,dateFormat:a,onEntityUpdated:c}),S.field.customProperties.map(I=>t.jsx(Pn,{property:I,entity:S,entityType:"contact",entityId:String(n.id),customContactFields:r,userTrii:d,baseUrl:o,spaceId:i,onEntityUpdated:c},I.nameKey))]})})},Oa=({title:e,value:a,isNotEditable:n,inputType:r="text",options:o=[],displayValue:i,constructUpdateObject:d,baseUrl:c,spaceId:u,businessId:p,onEntityUpdated:h})=>t.jsx(gt,{entityType:"business",entityId:p,title:e,value:a,isNotEditable:n,inputType:r,options:o,displayValue:i,constructUpdateObject:d,baseUrl:c,spaceId:u,onEntityUpdated:h}),Yi=e=>{const a=me(),{entityData:n,customContactFields:r,baseUrl:o,spaceId:i,currentUser:d,onEntityUpdated:c}=e,{entityType:u,editEntity:p}=dt(),h=at();if(u!=="business")return null;const[y,m]=l.useState([]),[f,v]=l.useState(null),[C,x]=l.useState(null),[k,w]=l.useState(null),A=p;return l.useEffect(()=>{if(!h)return;const S=new AbortController;return h.fetchUsers({signal:S.signal}).then(T=>{S.signal.aborted||m(T??[])}).catch(()=>{S.signal.aborted||m([])}),()=>{S.abort()}},[h]),l.useEffect(()=>{const S=new AbortController,T=async D=>{if(!D||!h)return null;try{const $=await h.fetchUserTriiById({userId:D,signal:S.signal});return $?.display_name||$?.email||null}catch{return null}};return(async()=>{const D=It({userId:n.owner,users:y,currentUser:d})??(n.owner?await T(n.owner):null),$=It({userId:n.createdBy??void 0,users:y,currentUser:d})??(n.createdBy?await T(n.createdBy):null),B=It({userId:n.updatedBy??void 0,users:y,currentUser:d})??(n.updatedBy?await T(n.updatedBy):null);S.signal.aborted||(v(D),w($),x(B))})(),()=>{S.abort()}},[h,n,y,d]),t.jsx(zt,{title:"General",children:t.jsxs(Tn,{children:[t.jsx(Oa,{title:a("conversations.businessDetails.businessOwner"),value:n.owner,displayValue:f||"-",inputType:"select",options:y,constructUpdateObject:S=>({owner:typeof S=="string"?S:""}),baseUrl:o,spaceId:i,businessId:n.id,onEntityUpdated:c}),t.jsx(Oa,{title:a("conversations.contactDetails.createdBy"),value:k||"-",isNotEditable:!0}),t.jsx(Oa,{title:a("conversations.contactDetails.modifiedBy"),value:C||"-",isNotEditable:!0}),A.field.customProperties.map(S=>t.jsx(Pn,{property:S,entity:A,entityType:"business",entityId:String(n.id),customContactFields:r,userTrii:d,baseUrl:o,spaceId:i,onEntityUpdated:c},S.nameKey))]})})},Ki=e=>{const{entityType:a,entityData:n}=e;return l.useMemo(()=>a==="contact"||a==="business"?a:"contact",[a])==="contact"?t.jsx(qi,{...e,entityData:n,entityType:"contact"}):t.jsx(Yi,{...e,entityData:n,entityType:"business"})},Ji=()=>{const[e,a]=l.useState(!1),[n,r]=l.useState("");return{isOpen:e,title:n,openModal:o=>{r(o),a(!0)},closeModal:()=>{a(!1),r("")}}},Xi=Ie.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",justifyContent:"space-between",padding:e.spacing(1),backgroundColor:e.palette.background.dropdownMenu,borderRadius:e.shape.borderRadius,color:e.palette.text.primary,width:"50%",paddingBottom:"3px",minHeight:"50px",position:"relative"})),Qi=Ie.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),overflow:"hidden",maxWidth:"80%"})),Zi=Ie.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),el=Ie.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",alignItems:"flex-start",gap:e.spacing(.5),overflow:"hidden",flexFlow:"nowrap",flexWrap:"wrap",marginTop:"-5px"})),tl=Ie.styled(s.Avatar)(({})=>({width:32,height:32,cursor:"pointer"})),_a=Ie.styled(s.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),al=Ie.styled(_a)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),nl=Ie.styled(_a)(({})=>({fontSize:14,fontWeight:500})),rl=Ie.styled(_a)(({})=>({fontSize:14,fontWeight:500})),sl=({item:e})=>{const a=e.profileUrl,{imageUrl:n}=Ot({initialImageUrl:a});return t.jsx(t.Fragment,{children:t.jsxs(Xi,{children:[t.jsx(Qi,{children:t.jsxs(el,{children:[t.jsx(s.Tooltip,{title:e.address||"",arrow:!0,children:t.jsx(nl,{children:e.address})}),t.jsx(s.Tooltip,{title:e.profileName||"",arrow:!0,children:t.jsx(rl,{sx:{marginTop:"-10px",marginLeft:"5px",fontSize:"10px"},children:e.profileName})}),t.jsx(s.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(al,{children:e.note})})]})}),t.jsxs(Zi,{children:[a!==""&&t.jsx(tl,{src:n,alt:e.profileName,style:{cursor:"pointer"},children:e?.profileName?.charAt(0).toUpperCase()}),t.jsx(s.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:t.jsx(s.IconButton,{size:"small",sx:{marginTop:"-5px",padding:0},children:e.isFavorite?t.jsx(Me.Star,{sx:{color:"#fcac34"}}):t.jsx(Me.StarBorder,{sx:{color:"#fcac34"}})})})]})]})})},Wa=en.PhoneNumberUtil.getInstance(),ol=e=>{if(!e||!e.trim())return e;try{const a=Wa.parse(e,void 0);return Wa.isValidNumber(a)?Wa.format(a,en.PhoneNumberFormat.INTERNATIONAL):e}catch{return e}},il=Ie.styled(s.IconButton)(({theme:e})=>({padding:e.spacing(.5),marginTop:"-5px"})),ll=Ie.styled(Gr)(({theme:e})=>({height:16,width:16,color:e.palette.secondary.main})),dl=Ie.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",justifyContent:"space-between",padding:e.spacing(1),backgroundColor:e.palette.background.dropdownMenu,borderRadius:e.shape.borderRadius,color:e.palette.text.primary,width:"50%",paddingBottom:"3px",minHeight:"50px",position:"relative"})),cl=Ie.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),maxWidth:"80%"})),ul=Ie.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),pl=Ie.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",alignItems:"flex-start",gap:e.spacing(.5),overflow:"hidden",flexFlow:"nowrap",flexWrap:"wrap",marginTop:"-5px"})),Un=Ie.styled(s.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),fl=Ie.styled(Un)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),gl=Ie.styled(Un)(({})=>({fontSize:14,fontWeight:500})),ml=({item:e})=>{const a=()=>{const r=e.address;if(!r)return;const o=new CustomEvent("call-contact-header",{detail:{phoneAddress:r}});window.dispatchEvent(o)},n=l.useMemo(()=>ol(e.address||""),[e.address]);return t.jsx(t.Fragment,{children:t.jsxs(dl,{children:[t.jsxs(cl,{children:[t.jsx(il,{onClick:a,color:"primary",size:"small",children:t.jsx(ll,{})}),t.jsxs(pl,{children:[t.jsx(s.Tooltip,{title:n||"",arrow:!0,children:t.jsx(gl,{children:n})}),t.jsx(s.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(fl,{children:e.note})})]})]}),t.jsx(ul,{children:t.jsx(s.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:t.jsx(s.IconButton,{size:"small",sx:{marginTop:"-5px",padding:0},children:e.isFavorite?t.jsx(Me.Star,{sx:{color:"#fcac34"}}):t.jsx(Me.StarBorder,{sx:{color:"#fcac34"}})})})})]})})},hl=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",padding:e.spacing(1,0,2,0),width:"100%",gap:e.spacing(1),"&:hover .edit-icon":{opacity:1}})),yl=s.styled(s.Typography)(({})=>({letterSpacing:-.5,fontSize:14})),xl=s.styled(s.Box)(({})=>({display:"flex",alignItems:"center"})),bl=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",gap:e.spacing(1),width:"100%"})),vl=s.styled(s.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),Cl=({title:e,methodItems:a,isPhone:n,handleEdit:r,owner:o})=>t.jsxs(hl,{children:[t.jsxs(xl,{children:[t.jsx(yl,{children:e}),t.jsx(vl,{className:"edit-icon",size:"small",onClick:r,children:t.jsx(bt,{fontSize:"small",sx:{color:i=>i.palette.secondary.main}})})]}),t.jsx(bl,{children:a.map((i,d)=>n?t.jsx(ml,{item:i},d):t.jsx(sl,{item:i,owner:o},d))})]}),Sl=({title:e})=>t.jsx(s.Box,{children:t.jsx(s.Typography,{variant:"subtitle2",children:e})}),jl={container:{display:"flex",justifyContent:"space-between",alignItems:"center"}},ua=({title:e,handleAdd:a})=>{const n=me();return t.jsxs(s.Box,{sx:jl.container,children:[t.jsx(s.Typography,{variant:"subtitle2",children:e}),t.jsx(s.Button,{onClick:a,size:"small",startIcon:t.jsx(sa,{}),variant:"text",color:"primary",children:n("global.add")})]})},wl={container:{border:"1px solid lightgray",borderRadius:1,p:2,width:"100%",display:"flex",flexDirection:"column",gap:1}},Vt=({children:e})=>t.jsx(s.Box,{sx:wl.container,children:e}),Rn={container:{display:"flex",width:"50%",alignItems:"center",justifyContent:"end"},noteTextField:{width:"100%",marginRight:"15px"}},Tl=({onDelete:e,addressData:a,handleLinkAccountSave:n,checked:r,onCheckContactAddress:o})=>{const i=me(),[d,c]=l.useState(null),u=!!d,{channelType:p,address:h}=a,[y,m]=l.useState(!1),[f,v]=l.useState(null),[C,x]=l.useState(!1),k=B=>{c(B.currentTarget)},w=()=>{c(null)},A=()=>{x(!1)},S=()=>{e(),w()},T=async()=>{m(!0);try{if(!o)return;const B=await o(13);if(!B)return;v(B),x(!0)}catch(B){console.error("Error verifying WhatsApp account:",B)}finally{m(!1)}w()},D=async()=>{m(!0);try{if(!o)return;const B=await o(21);if(!B)return;v(B),x(!0)}catch(B){console.error("Error verifying RCS account:",B)}finally{m(!1)}w()},$=async()=>{await n(),x(!1)};return t.jsxs(s.Box,{children:[t.jsx(s.IconButton,{"aria-controls":u?"basic-menu":void 0,"aria-haspopup":"true","aria-expanded":u?"true":void 0,onClick:k,children:t.jsx(qr,{})}),t.jsxs(s.Menu,{id:"basic-menu",anchorEl:d,open:u,onClose:w,MenuListProps:{"aria-labelledby":"basic-button"},children:[t.jsxs(s.MenuItem,{onClick:S,children:[t.jsx(s.ListItemIcon,{children:t.jsx($t,{color:"error"})}),t.jsx(s.ListItemText,{children:i("global.delete")})]}),p===5&&t.jsxs(s.MenuItem,{onClick:T,disabled:!r,children:[t.jsx(s.ListItemIcon,{children:y?t.jsx(s.CircularProgress,{size:24}):t.jsx(Yr,{sx:{color:"green"}})}),t.jsx(s.ListItemText,{children:i("optionsMenu.verifyWspAccount")})]}),p===21&&t.jsxs(s.MenuItem,{onClick:D,disabled:!r,children:[t.jsx(s.ListItemIcon,{children:y?t.jsx(s.CircularProgress,{size:24}):t.jsx(Kr,{})}),t.jsx(s.ListItemText,{children:i("optionsMenu.verifyRCSAccount")})]})]}),t.jsx(s.Modal,{open:C,onClose:A,"aria-labelledby":"modal-modal-title","aria-describedby":"modal-modal-description",children:t.jsx(s.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:400,boxShadow:24,p:4,backgroundColor:B=>B.palette.background.default},children:f?.success?t.jsxs(t.Fragment,{children:[t.jsxs(s.Typography,{id:"modal-modal-title",variant:"h6",component:"h2",children:[i("optionsMenu.wspAccountFound")," ",h]}),t.jsx(s.Typography,{id:"modal-modal-description",sx:{mt:2},children:i("optionsMenu.wantToLinkContact")}),t.jsxs(s.Box,{sx:{marginTop:"10px"},children:[t.jsx(s.Button,{onClick:$,color:"primary",children:i("optionsMenu.yesLink")}),t.jsx(s.Button,{onClick:A,color:"secondary",children:"No"})]})]}):t.jsxs(s.Box,{sx:{position:"relative"},children:[t.jsxs(s.Typography,{id:"modal-modal-title",variant:"h6",component:"h2",children:[i("optionsMenu.noWspAccountFound")," ",h]}),t.jsx(s.Button,{onClick:A,color:"secondary",sx:{position:"absolute",bottom:-25,right:0},children:i("global.cancel")})]})})})]})},Ht=e=>{const a=me(),n=at(),{editEntity:r,entityId:o}=dt(),[i,d]=l.useState(!1),c=e.checked??!0,u=e.entityId??o,{note:p,channelType:h,id:y,address:m}=e.addressData,f=!e.addressData.hasOwnProperty("isSaved"),v=e.replaceAddress??r.action.replaceAddress,C=e.addWhatsappVerified||(typeof r.action?.addWhatsappVerified=="function"?r.action.addWhatsappVerified:void 0),x=async S=>{if(!n||!u)return null;const T=await n.setContactAddress({data:{address:m,contactId:u,type:S}});return v(y,T),T},k=async()=>{if(!n||!u)return;const S=await n.updateContactAddress({data:{contactAddressId:y,contactId:u,note:p??""}});v(y,S)},w=async()=>{d(!0),f?(await k(),d(!1)):await x(h)&&d(!1)},A=async()=>{d(!0);const S=await x(13);S&&C&&C(S),S&&d(!1)};return t.jsxs(s.Box,{sx:{...Rn.container},children:[f&&t.jsx(s.TextField,{size:"small",label:a("global.note"),variant:"outlined",onChange:S=>e.handleNoteFieldChange(S,y,h),value:p,fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",sx:Rn.noteTextField}),t.jsx(s.IconButton,{onClick:w,children:i?t.jsx(s.CircularProgress,{size:24}):t.jsx(ft,{color:"primary"})}),t.jsx(Tl,{onDelete:()=>e.handleDeleteAddress(y,h),addressData:e.addressData,handleLinkAccountSave:A,checked:c&&!i,onCheckContactAddress:async S=>{if(!n)return null;try{return await n.checkContactAddress({data:{address:m,type:S}})}catch{return null}}})]})},Il={container:{display:"flex",gap:"100px",alignItems:"center"}},Gt=({children:e})=>t.jsx(s.Box,{sx:Il.container,children:e}),kl={container:{width:"100%",borderRadius:1,px:1.5,py:2,display:"flex",flexDirection:"column",gap:2,overflow:"auto",maxHeight:"calc(100vh - 250px)"}},qt=({children:e})=>t.jsx(s.Box,{sx:{...kl.container},children:e}),El=({status:e})=>{switch(e){case"idle":return null;case"loading":return t.jsx(Qr,{size:20});case"available":return t.jsx(Jr,{style:{height:27,width:27},color:"success"});case"unavailable":return t.jsx(Xr,{style:{height:27,width:27},color:"error"});default:return null}},Nn=({status:e,text:a})=>t.jsxs(Zr,{position:"end",children:[a?t.jsx(es,{marginRight:.5,children:a}):null,t.jsx("div",{style:{width:30,display:"flex",justifyContent:"center"},children:t.jsx(El,{status:e})})]}),Al={code:{width:"60%",color:"gray"}},Dl=({data:e,editEntity:a})=>{const n=a.action;return t.jsx(Vt,{children:t.jsxs(Gt,{children:[t.jsx(s.Typography,{sx:Al.code,variant:"body2",children:e.address}),t.jsx(Ht,{addressData:e,handleNoteFieldChange:n.handleNoteFieldChange,handleDeleteAddress:n.handleDeleteAddress})]})})},Fl=({IMSs:e,editEntity:a})=>t.jsx(qt,{children:e?.map(n=>t.jsx(Dl,{data:n,editEntity:a},n.id))}),pa=({editEntity:e,title:a,IMSs:n})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(Sl,{title:a}),t.jsx(Fl,{IMSs:n,editEntity:e})]}),Bl={addressField:{}},Va=({data:e,onChange:a,setWarnings:n})=>{const{id:r,channelType:o,address:i}=e,d=me(),c=at(),[u,p]=l.useState("idle"),[h,y]=l.useState(i),m=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let f=setTimeout(async()=>{if(i!==""&&i!==h){if(!c)return;p("loading"),y(i);const v={address:i,type:o};try{const C=await c.checkContactAddress({data:v}),{success:x,warnings:k}=C;n(k),p(x?"available":"unavailable")}catch{n([]),p("unavailable")}}},1700);return()=>clearTimeout(f)},[c,e,i,o,h,n]),t.jsx(t.Fragment,{children:t.jsx(s.TextField,{disabled:m,sx:Bl.addressField,size:"small",label:o===vt.ChannelType.WHATSAPP||o===vt.ChannelType.RCS?d?d("global.number"):"Number":d?d("global.email"):"Email",value:i,onChange:f=>{a(f,r,o)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx(Nn,{status:u})})}})})},Ml={addressField:{}},$l=({data:e,onChange:a,setWarnings:n})=>{const r=at(),o=me(),{id:i,channelType:d,address:c}=e,[u,p]=l.useState("idle"),[h,y]=l.useState(c),m=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let f=setTimeout(async()=>{if(c!==""&&c!==h){if(!r)return;p("loading"),y(c);const v={address:c,type:d};try{const{success:C,warnings:x}=await r.checkContactAddress({data:v});n(x),p(C?"available":"unavailable")}catch{n([]),p("unavailable")}}},1700);return()=>clearTimeout(f)},[e]),t.jsx(t.Fragment,{children:t.jsx(s.TextField,{disabled:m,sx:Ml.addressField,size:"small",label:o("global.number"),value:c,onChange:f=>{a(f,i,d)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx(Nn,{status:u})})}})})},Ha={secondaryContainer:{display:"flex",alignItems:"baseline",height:"100%",gap:.5},icon:{height:15},chip:{borderRadius:"6px",height:"22px"}},Pl=({text:e})=>t.jsx(s.Grid,{item:!0,children:t.jsx(s.Box,{sx:Ha.secondaryContainer,children:t.jsx(as,{icon:t.jsx(ts,{sx:Ha.icon}),sx:Ha.chip,label:e,color:"error",variant:"outlined"})})}),fa=({warnings:e})=>{const a=me();return t.jsx(s.Box,{children:t.jsx(s.Grid,{container:!0,children:e?.map((n,r)=>t.jsx(Pl,{text:a(`contactAddressError.${n}`)},r))})})},Ul={numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{marginTop:"10px"},adressInputBox:{position:"relative",width:"45%"}},Rl=({data:e})=>{const a="edit",{editEntity:n}=dt(),r=n.action,o=n.state,[i,d]=l.useState([]),[c,u]=l.useState(!0);return l.useEffect(()=>{u(i.length===0&&(e.address??"")!=="")},[i,e.address]),t.jsx(Vt,{children:t.jsxs(Gt,{children:[t.jsxs(s.Box,{sx:{...Ul.numberCountryContainer,flexDirection:"column"},children:[t.jsx($l,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange}),i.length>0&&t.jsx(fa,{warnings:i})]}),t.jsx(Ht,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress,addWhatsappVerified:r.addWhatsappVerified,checked:c})]})})},Nl=({phoneNumbers:e})=>t.jsx(qt,{variant:"large",children:e?.map(a=>t.jsx(Rl,{data:a},a.id))}),Ll=({phoneNumbers:e,handleAdd:a})=>{const n=me();return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(ua,{handleAdd:a,title:n("global.phones")}),t.jsx(Nl,{phoneNumbers:e})]})},Ln={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},zl=({data:e})=>{const a="edit",{editEntity:n}=dt(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(Vt,{children:[t.jsxs(Gt,{children:[t.jsx(s.Box,{sx:Ln.numberCountryContainer,children:t.jsx(s.Box,{sx:Ln.adressInputBox,children:t.jsx(Va,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Ht,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(fa,{warnings:i})]})},Ol=({emails:e})=>t.jsx(qt,{variant:"large",children:e?.map(a=>t.jsx(zl,{data:a},a.id))}),_l=({emails:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(ua,{handleAdd:a,title:"Emails"}),t.jsx(Ol,{emails:e})]}),zn={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Wl=({data:e})=>{const a="edit",{editEntity:n}=dt(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(Vt,{children:[t.jsxs(Gt,{children:[t.jsx(s.Box,{sx:zn.numberCountryContainer,children:t.jsx(s.Box,{sx:zn.adressInputBox,children:t.jsx(Va,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Ht,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(fa,{warnings:i})]})},Vl=({whatsapps:e})=>t.jsx(qt,{variant:"large",children:e?.map(a=>t.jsx(Wl,{data:a},a.id))}),Hl=({whatsapps:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(ua,{handleAdd:a,title:"WhatsApp"}),t.jsx(Vl,{whatsapps:e})]}),On={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Gl=({data:e})=>{const a="edit",{editEntity:n}=dt(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(Vt,{children:[t.jsxs(Gt,{children:[t.jsx(s.Box,{sx:On.numberCountryContainer,children:t.jsx(s.Box,{sx:On.adressInputBox,children:t.jsx(Va,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Ht,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(fa,{warnings:i})]})},ql=({RCSs:e})=>t.jsx(qt,{variant:"large",children:e?.map(a=>t.jsx(Gl,{data:a},a.id))}),Yl=({RCSs:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(ua,{handleAdd:a,title:"RCS"}),t.jsx(ql,{RCSs:e})]}),Kl=Ie.styled(s.Box)(({theme:e})=>({position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:1e3,backgroundColor:e.palette.background.panel,padding:e.spacing(4),borderRadius:e.shape.borderRadius})),Jl=({open:e,onClose:a,title:n})=>{const r=me(),{editEntity:o}=dt(),{emails:i,phoneNumbers:d,imsWhatsapp:c,imsRCS:u}=o.field,{addEmail:p,addPhone:h,addWhatsapp:y,resetToInitialContactInformation:m,addRCS:f}=o.action;function v(){a(),m()}return t.jsx(s.Modal,{open:e,onClose:a,children:t.jsxs(Kl,{children:[(()=>{switch(n){case"Phones":return t.jsx(Ll,{handleAdd:h,phoneNumbers:d});case"Emails":return t.jsx(_l,{handleAdd:p,emails:i});case"Whatsapp":return t.jsx(Hl,{handleAdd:y,whatsapps:c});case"RCS":return t.jsx(Yl,{handleAdd:f,RCSs:u});case"Facebook":return t.jsx(pa,{title:"Facebook",IMSs:o.field.imsFacebooks,editEntity:o});case"Webchat":return t.jsx(pa,{title:"Webchat",IMSs:o.field.imsWebchats,editEntity:o});case"Instagram":return t.jsx(pa,{title:"Instagram",IMSs:o.field.imsInstagrams,editEntity:o});case"Mercado libre":return t.jsx(pa,{title:"Mercado Libre",IMSs:o.field.imsMercadolibre,editEntity:o});default:return t.jsx(s.Typography,{children:"No information available for this section."})}})(),t.jsx(s.Box,{mt:2,display:"flex",justifyContent:"flex-end",children:t.jsx(s.Button,{variant:"contained",color:"primary",onClick:v,children:r("global.close")})})]})})},Xl=({ownerData:e})=>{const{isOpen:a,title:n,openModal:r,closeModal:o}=Ji(),{editEntity:i}=dt(),d=me(),c=i.field.phoneNumbers,u=i.field.emails,p=i.field.imsFacebooks,h=i.field.imsWhatsapp,y=i.field.imsMercadolibre,m=i.field.imsWebchats,f=i.field.imsInstagrams,v=i.field.imsRCS,C=[{key:"phones",title:d("conversations.contactDetails.phones"),items:c,isPhone:!0,modalTitle:"Phones",visible:!0},{key:"emails",title:"Emails",items:u,modalTitle:"Emails",visible:!0},{key:"facebook",title:"Facebook",items:p,modalTitle:"Facebook",visible:!0},{key:"whatsapp",title:"Whatsapp",items:h,modalTitle:"Whatsapp",visible:!0},{key:"rcs",title:"RCS",items:v,modalTitle:"RCS",visible:v.length>0},{key:"mercado-libre",title:"Mercado libre",items:y,modalTitle:"Mercado libre",visible:!0},{key:"webchat",title:"Webchat",items:m,modalTitle:"Webchat",visible:!0},{key:"instagram",title:"Instagram",items:f,modalTitle:"Instagram",visible:!0}];return t.jsxs(t.Fragment,{children:[t.jsx(zt,{title:d("conversations.contactDetails.contactInformation"),children:t.jsx("div",{className:"grid grid-cols-1 gap-3",children:C.filter(x=>x.visible).map(x=>t.jsx(Cl,{handleEdit:()=>r(x.modalTitle),title:x.title,methodItems:x.items,isPhone:x.isPhone,owner:e},x.key))})}),t.jsx(Jl,{open:a,onClose:o,title:n})]})},Ql=({entityType:e,entityData:a,baseUrl:n,spaceId:r,onEntityUpdated:o,onDirectionSearchClick:i})=>{const d={baseUrl:n,spaceId:r,entityId:String(a.id),onEntityUpdated:o},c=me(),u=({addressNumber:p,title:h})=>t.jsxs("div",{className:"flex flex-col gap-4 rounded-xl p-4",children:[t.jsx(s.Typography,{variant:"body2",children:h}),t.jsxs("div",{className:"grid grid-cols-2 gap-x-4 gap-y-3",children:[t.jsx("div",{className:"col-span-2",children:t.jsx(gt,{entityType:e,title:c("conversations.contactDetails.street"),value:a[p]?.street??"",...d,constructUpdateObject:y=>({[p]:{street:y}}),minWidth:"100%"})}),t.jsx(gt,{entityType:e,title:c("conversations.contactDetails.city"),value:a[p]?.city??"",...d,constructUpdateObject:y=>({[p]:{city:y}}),minWidth:"100%"}),t.jsx(gt,{entityType:e,title:c("conversations.contactDetails.state"),value:a[p]?.state??"",...d,constructUpdateObject:y=>({[p]:{state:y}}),minWidth:"100%"}),t.jsx(gt,{entityType:e,title:c("conversations.contactDetails.postcode"),value:a[p]?.zipcode??"",...d,constructUpdateObject:y=>({[p]:{zipcode:y}}),minWidth:"100%"}),t.jsx(gt,{entityType:e,title:c("conversations.contactDetails.country"),value:a[p]?.country??"",...d,constructUpdateObject:y=>({[p]:{country:y}}),minWidth:"100%"})]})]});return t.jsx(zt,{title:c("conversations.contactDetails.addressInformation"),enableDirectionSearch:!0,onDirectionSearchClick:i,children:t.jsxs("div",{className:"flex flex-col gap-4",children:[t.jsx(u,{addressNumber:"address1",title:c("conversations.contactDetails.primaryAddress")}),t.jsx(u,{addressNumber:"address2",title:c("conversations.contactDetails.secondaryAddress")})]})})};function Zl({open:e,baseUrl:a,spaceId:n,contactId:r,entityId:o,entityType:i,initialContactData:d,initialEntityData:c,contactNameFormat:u,resetOnClose:p=!0}){const h=l.useRef(null),y=l.useMemo(()=>!a||!n?null:vn(a,n),[a,n]),[m,f]=l.useState({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}),v=o??r,C=c??d,x=l.useMemo(()=>!!(e&&y&&v&&!C),[e,y,v,C]);l.useEffect(()=>{!e||!C||f(S=>({...S,isLoading:!1,error:null,contactData:C}))},[e,C]),l.useEffect(()=>{e||p&&(h.current?.abort(),f({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}))},[e,p]);const k=l.useMemo(()=>!!(e&&y),[e,y]);l.useEffect(()=>{if(!k||!y)return;const S=new AbortController;return f(T=>({...T,labelsLoading:!0,labelsError:null})),y.fetchLabels({signal:S.signal}).then(T=>{f(D=>({...D,labels:T,labelsLoading:!1,labelsError:null}))}).catch(T=>{S.signal.aborted||f(D=>({...D,labelsLoading:!1,labelsError:T}))}),()=>{S.abort()}},[y,k]),l.useEffect(()=>{if(!x||!y)return;h.current?.abort();const S=new AbortController;return h.current=S,f(T=>({...T,isLoading:!0,error:null,contactData:null})),(i==="business"?y.fetchBusiness({businessId:v,signal:S.signal}):y.fetchContact({contactId:v,signal:S.signal})).then(T=>{f(D=>({...D,isLoading:!1,error:null,contactData:T}))}).catch(T=>{S.signal.aborted||f(D=>({...D,isLoading:!1,error:T}))}),()=>{S.abort()}},[y,x,v,i]);const w=l.useMemo(()=>!!(e&&y),[e,y]);l.useEffect(()=>{if(!w||!y)return;const S=new AbortController;return f(T=>({...T,userLoading:!0,userError:null})),y.fetchUserTrii({signal:S.signal}).then(T=>{f(D=>({...D,userLoading:!1,userError:null,userTrii:T}))}).catch(T=>{S.signal.aborted||f(D=>({...D,userLoading:!1,userError:T}))}),()=>{S.abort()}},[y,w]);const A=l.useMemo(()=>{const S=m.contactData,T=Ra(S),D=$a(S);let $="unknown";T&&($="business"),D&&($="contact");let B="Unknown Contact";T?B=S.name:D&&(B=un(S.firstName,S.lastName,u));const I=S?.tags??[];return{isBusiness:T,isContact:D,contactType:$,displayName:B,tags:I,labels:m.labels,contactFields:m.contactFields,userTrii:m.userTrii,userLoading:m.userLoading,userError:m.userError}},[m.contactData,m.labels,m.contactFields,m.userTrii,m.userLoading,m.userError,u]);return l.useEffect(()=>{if(!e||!y)return;const S=m.contactData,T=Ra(S),D=$a(S),$=T?"business":D?"contact":null;if(!$)return;const B=new AbortController;return f(I=>({...I,contactFieldsLoading:!0,contactFieldsError:null})),y.fetchContactFields({forType:$,signal:B.signal}).then(I=>{f(U=>({...U,contactFields:I,contactFieldsLoading:!1,contactFieldsError:null}))}).catch(I=>{B.signal.aborted||f(U=>({...U,contactFieldsLoading:!1,contactFieldsError:I}))}),()=>{B.abort()}},[y,e,m.contactData]),{state:m,selectors:A,actions:{setContactData:S=>f(T=>({...T,contactData:S??null})),clearError:()=>f(S=>({...S,error:null}))}}}const ed=({entity:e,setEntity:a})=>l.useCallback(n=>{if(!n||typeof n!="object")return;const r=n;if("id"in r){a(n);return}if(!e)return;const o={...e,...r};a(o)},[e,a]),td=({onClose:e})=>l.useCallback((a,n)=>{n!=="escapeKeyDown"&&e()},[e]),ad=({open:e,baseUrl:a,spaceId:n,contactData:r,contactType:o,labels:i,selectedTags:d,onTagsUpdated:c})=>{const[u,p]=l.useState("main"),[h,y]=l.useState([]),[m,f]=l.useState(!1),[v,C]=l.useState(!1),[x,k]=l.useState([]),[w,A]=l.useState(!1),S=l.useMemo(()=>{const B=i??[],I=x??[],U=new Map;for(const P of B)P?.id&&U.set(String(P.id),P);for(const P of I)P?.id&&U.set(String(P.id),P);return Array.from(U.values())},[i,x]),T=l.useCallback(()=>{p("main"),y([]),f(!1),C(!1),k([]),A(!1)},[]);l.useEffect(()=>{e||T()},[e,T]),l.useEffect(()=>{if(u!=="tags"){f(!1);return}if(m||!S.length)return;const B=new Set(d.map(U=>String(U.id))),I=S.filter(U=>B.has(String(U?.id)));y(I),f(!0)},[u,m,S,d]);const D=l.useCallback(async B=>{if(w||!a||!n)return;const I=String(B??"").trim();if(!I)return;const U=I.toLowerCase(),P=S.find(_=>String(_?.name??"").trim().toLowerCase()===U);if(P?.id){y(_=>{const V=_??[];return V.some(R=>String(R?.id)===String(P.id))?V:[...V,P]});return}A(!0);try{const _=await yn({baseUrl:a,spaceId:n,name:I});k(V=>{const R=V??[];return!_?.id||R.some(O=>String(O?.id)===String(_.id))?R:[...R,_]}),y(V=>{const R=V??[];return!_?.id||R.some(O=>String(O?.id)===String(_.id))?R:[...R,_]})}finally{A(!1)}},[w,a,n,S]),$=l.useCallback(async()=>{if(v||!a||!n||!r||o!=="contact"&&o!=="business")return;const B=h.filter(I=>I?.id&&I?.name).map(I=>({id:String(I.id),name:String(I.name)}));C(!0);try{await nt({baseUrl:a,spaceId:n,entityType:o,entityId:String(r.id),body:{tags:B}}),c(B),p("main")}finally{C(!1)}},[v,a,n,r,o,h,c]);return{view:u,setView:p,draftLabels:h,setDraftLabels:y,labelsOptions:S,isSaving:v,isCreatingLabel:w,handleCreateLabel:D,handleSaveTags:$}},nd=e=>e.palette.background.panel??e.palette.background.paper,rd=e=>e.palette.background.accordionHeader??e.palette.background.panel??e.palette.background.paper,_n=(e,a)=>Array.isArray(a)?[e,...a]:a?[e,a]:e,sd=({title:e="Details",expanded:a,onExpandedChange:n,children:r})=>{const o={m:2,border:"1px solid",borderColor:"divider",overflow:"hidden"};return a!==void 0?t.jsx(s.Card,{sx:o,id:"details",children:t.jsxs(s.Accordion,{expanded:a,onChange:()=>n?.(!a),sx:{boxShadow:"none","&:before":{display:"none"}},children:[t.jsx(s.AccordionSummary,{expandIcon:t.jsx(Lr,{}),children:t.jsx(s.Box,{sx:{width:"100%",py:1,px:2,display:"flex",justifyContent:"space-between",alignItems:"center",color:i=>i.palette.text.primary},children:t.jsx(s.Typography,{variant:"subtitle2",children:e})})}),t.jsx(s.AccordionDetails,{sx:{p:2,borderTop:"1px solid rgba(0, 0, 0, .125)"},children:r})]})}):t.jsxs(s.Card,{sx:o,id:"details",children:[t.jsx(s.Box,{sx:{backgroundColor:rd,px:2,py:1.5,display:"flex",justifyContent:"space-between",alignItems:"center"},children:t.jsx(s.Typography,{variant:"subtitle2",sx:{fontWeight:600},children:e})}),t.jsx(s.Box,{sx:{p:2},children:r})]})},od=({active:e,mode:a,children:n})=>a==="card"?e?t.jsx(s.Fade,{in:!0,timeout:200,children:t.jsx(s.Box,{sx:{pt:.5},children:n})}):null:t.jsx(s.Fade,{in:e,timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:n})}),id=({open:e,mode:a,baseUrl:n,spaceId:r,contactId:o,language:i,googleMapsApiKey:d,onEntityUpdated:c,contactNameFormat:u,entityType:p,entityId:h,initialEntityData:y,contentRef:m})=>{l.useEffect(()=>{if(window.google?.maps||document.querySelector('script[src^="https://maps.googleapis.com/maps/api/js"]'))return;if(!d){console.warn("Google Maps API key is missing. The location search feature will not work.");return}const V=document.createElement("script");return V.src=`https://maps.googleapis.com/maps/api/js?key=${d}&libraries=places`,V.async=!0,V.defer=!0,document.body.appendChild(V),()=>{}},[d]);const{state:f,selectors:v,actions:C}=Zl({open:e,baseUrl:n,spaceId:r,contactId:o,contactNameFormat:u,entityType:p,entityId:h,initialEntityData:y,resetOnClose:a==="modal"}),x=ed({entity:f.contactData,setEntity:V=>{C.setContactData(V??void 0),V&&c&&c(V)}}),{view:k,setView:w,draftLabels:A,setDraftLabels:S,labelsOptions:T,isSaving:D,isCreatingLabel:$,handleCreateLabel:B,handleSaveTags:I}=ad({open:e,baseUrl:n,spaceId:r,contactData:f.contactData,contactType:v.contactType,labels:v.labels,selectedTags:v.tags,onTagsUpdated:V=>{if(!f.contactData)return;const R={...f.contactData,tags:V};C.setContactData(R),c&&c(R)}}),U=Ot({baseUrl:n,spaceId:r,entityType:v.contactType==="business"||v.contactType==="contact"?v.contactType:void 0,entityId:f.contactData?String(f.contactData.id):void 0,initialImageUrl:f.contactData?.imageUrl,onEntityUpdated:x});if(f.isLoading&&!f.contactData)return t.jsx(s.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:220},children:t.jsx(s.CircularProgress,{})});if(f.error)return t.jsx(s.Box,{sx:{mb:2},children:"Failed to load contact"});if(!f.contactData)return null;const P=v.contactType==="business"?"business":"contact",_=(V,R)=>t.jsx(od,{active:k===V,mode:a,children:R});return t.jsx(Bi,{value:{view:k,setView:w},children:t.jsx(Ai,{entityType:P,entityData:f.contactData,customContactFields:v.contactFields,baseUrl:n,spaceId:r,onEntityUpdated:x,children:t.jsxs(s.Box,{sx:{position:"relative",height:a==="modal"?"100%":"auto"},children:[_("main",t.jsxs(t.Fragment,{children:[a==="modal"?t.jsx(di,{imgUrl:U.imageUrl,displayName:v.displayName,tags:v.tags,onEditTags:()=>{w("tags")},onUploadPhoto:U.action.uploadImage,onPhotoFileChange:U.inputAtributes.onChange,photoInputRef:U.inputAtributes.ref,isUploadingPhoto:U.isUploading,onDeletePhoto:U.action.deleteImage,isDeletingPhoto:U.isDeleting,contactType:v.contactType,entityId:String(f.contactData.id),firstName:v.isContact?String(f.contactData.firstName??""):void 0,lastName:v.isContact?String(f.contactData.lastName??""):void 0,name:v.isBusiness?String(f.contactData.name??""):void 0,onEntityUpdated:x}):null,t.jsxs(s.Box,{sx:a==="modal"?{px:1,pb:2}:void 0,children:[t.jsx(Ki,{dateFormat:v.userTrii?.regCon_dateFormat||"MM/dd/yyyy",entityType:P,entityData:f.contactData,customContactFields:v.contactFields,baseUrl:n,spaceId:r,onEntityUpdated:x,currentUser:v.userTrii}),a==="card"&&v.isBusiness?t.jsx(ei,{business:f.contactData,onEdit:()=>w("businessMembers"),language:i,contactNameFormat:u}):null,t.jsx(Ql,{entityType:P,entityData:f.contactData,baseUrl:n,spaceId:r,onEntityUpdated:x,onDirectionSearchClick:()=>w("searchLocation")}),t.jsx(Xl,{ownerData:f.contactData})]})]})),_("searchLocation",t.jsx(hi,{baseUrl:n,spaceId:r,entityType:P,entityId:String(f.contactData.id),onBack:()=>w("main"),onEntityUpdated:x})),_("tags",t.jsx(ui,{value:A,options:T,onChange:S,onBack:()=>w("main"),onSave:I,isSaving:D,onCreateNew:B,isCreatingNew:$,popperContainer:m.current})),_("businessSelect",t.jsx(Ko,{baseUrl:n,spaceId:r,contactId:String(f.contactData.id),initialBusiness:v.isContact&&f.contactData?.businessId?{businessId:String(f.contactData.businessId),businessName:String(f.contactData.businessName??"")}:null,onBack:()=>w("main"),onEntityUpdated:x,currentUser:v.userTrii})),_("businessMembers",t.jsx(Xo,{business:v.isBusiness?f.contactData:null,onBack:()=>w("main"),onEntityUpdated:x}))]})})})},ld=({mode:e="modal",open:a,onClose:n,baseUrl:r,spaceId:o,contactId:i,sx:d,language:c="en",navigate:u,googleMapsApiKey:p,onEntityUpdated:h,contactNameFormat:y,title:m,expanded:f,onExpandedChange:v,entityType:C,entityId:x,initialEntityData:k})=>{const w=l.useRef(null),A=e==="card"?!0:!!a,S=n??(()=>{}),T=l.useMemo(()=>{const I=wt.getFixedT(c);return U=>I(U)},[c]),D=l.useMemo(()=>!r||!o?null:vn(r,o),[r,o]),$=td({onClose:S}),B=t.jsx(id,{mode:e,open:A,baseUrl:r,spaceId:o,contactId:i,language:c,googleMapsApiKey:p,onEntityUpdated:h,contactNameFormat:y,entityType:C,entityId:x,initialEntityData:k,contentRef:w});return t.jsx(Bo,{value:D,children:t.jsx(Mo,{t:T,children:t.jsx(Qo,{navigate:u,children:e==="card"?t.jsx(sd,{title:m,expanded:f,onExpandedChange:v,children:t.jsx(s.Box,{ref:w,sx:_n({minHeight:0},d),children:B})}):t.jsx(s.Modal,{open:A,onClose:$,closeAfterTransition:!0,slots:{backdrop:s.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(s.Fade,{in:A,timeout:200,children:t.jsxs(s.Box,{sx:_n({position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:nd,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"},d),ref:w,children:[t.jsx(s.IconButton,{"aria-label":"close",onClick:$,sx:{position:"absolute",right:5,top:5,color:I=>I.palette.grey[500],zIndex:1},size:"small",children:t.jsx(Da,{sx:{fontSize:20}})}),B]})})})})})})},dd=e=>t.jsx(Je.I18nextProvider,{i18n:wt,children:t.jsx(ld,{...e})}),Wn=l.createContext(null),cd=Wn.Provider,Vn=()=>l.useContext(Wn),ud={events:[],setEvents:()=>{},filteredEvents:[]},pd=(e,a)=>{const[n,r]=l.useState([]);l.useEffect(()=>{if(!a?.length){r([]);return}const i=a.map(d=>({id:d.id,title:d.title||"",start:new Date(d.startAt),end:new Date(d.endAt||d.startAt),startAt:d.startAt,endAt:d.endAt,allDay:d.allDay||!1,color:d.color,calendarId:d.calendarId,details:d.details,location:d.location,isPrivate:d.isPrivate,rule:d.rule,relatedContact:d.relatedContact,sharedWith:d.sharedWith,finalized:d.finalized,kind:"event",originalOccurrenceDate:d.originalOccurrenceDate,parentId:d.parentId}));r(i)},[a]);const o=l.useMemo(()=>e?.length?n.filter(i=>i.calendarId&&e.includes(i.calendarId)):n,[n,e]);return l.useMemo(()=>({events:n,setEvents:r,filteredEvents:o}),[n,o])},Hn={open:!1,handleOpen:()=>{},handleClose:()=>{}},Gn=()=>{const[e,a]=l.useState(!1),n=l.useCallback(()=>{a(!0)},[]),r=l.useCallback(()=>{a(!1)},[]);return l.useMemo(()=>({open:e,handleOpen:n,handleClose:r}),[e,n,r])},Ct={actions:{onError:()=>{},onSuccess:()=>{},resetValue:()=>{},changeValue:()=>{}},attributes:{error:!1,helperText:"",type:"",value:"",onChange:()=>{}}},St=(e,a)=>{const[n,r]=l.useState(a||""),[o,i]=l.useState(!1),[d,c]=l.useState("");l.useEffect(()=>{r(a||"")},[a]);const u=l.useCallback(C=>{i(!0),c(C)},[]),p=l.useCallback(()=>{i(!1),c("")},[]),h=l.useCallback(C=>{r(C.target.value)},[]),y=l.useCallback(C=>{r(C)},[]),m=l.useCallback(()=>{r(a||"")},[a]),f=l.useMemo(()=>({onError:u,onSuccess:p,resetValue:m,changeValue:y}),[u,p,m,y]),v=l.useMemo(()=>({error:o,helperText:d,type:e,value:n,onChange:h}),[o,d,e,n,h]);return{actions:f,attributes:v}};function qn(e){return typeof e=="number"}const fd={notifications:[],action:{addNotification:()=>{},deleteNotification:e=>{},handleTimeFieldChange:(e,a)=>{},handleTimePeriodChange:(e,a)=>{},handleReminderChange:(e,a)=>{},resetNotifications:()=>{}}};function gd(e){const[a,n]=l.useState(e||[]),r=l.useCallback(()=>{const h={id:_t(),timeValue:15,timePeriod:oa.EventNotificationPeriod.MINUTE,sendToContact:!1};n(y=>y.concat(h))},[]),o=l.useCallback(h=>{n(y=>y.filter(m=>m.id!==h))},[]),i=l.useCallback((h,y)=>{const m=Number(h.target.value);qn(m)&&n(f=>f.map(v=>v.id===y?{...v,timeValue:m}:v))},[]),d=l.useCallback((h,y)=>{if(!qn(h.target.value))return;const m=h.target.value;n(f=>f.map(v=>v.id===y?{...v,timePeriod:m}:v))},[]),c=l.useCallback((h,y)=>{const m=h.target.checked;n(f=>f.map(v=>v.id===y?{...v,sendToContact:m}:v))},[]),u=l.useCallback(()=>{n([])},[]);l.useEffect(()=>{if(e){const h=e.map(y=>({...y,id:y.id||_t()}));n(h)}},[e]);const p=l.useMemo(()=>({addNotification:r,deleteNotification:o,handleTimeFieldChange:i,handleTimePeriodChange:d,handleReminderChange:c,resetNotifications:u}),[r,o,i,d,c,u]);return{notifications:a,action:p}}const md={state:{selectedStartDate:Q(),selectedEndDate:Q().add(30,"minute"),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},hd={state:{search:"",selectedContact:null},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},yd={titleField:Ct,descriptionField:Ct,locationField:Ct,colorField:Ct,date:md,allDay:!1,setAllDay:()=>{},isPrivate:!1,setIsPrivate:()=>{},recurrenceRule:"",setRecurrenceRule:()=>{},notifications:fd,linkContact:hd,create:()=>({title:"",details:"",location:"",allDay:!1,isPrivate:!1,color:"",startAt:"",endAt:"",notifications:[],rule:"",contactId:null}),resetFields:()=>{}},xd=(e,a)=>{const[n,r]=l.useState(e??Q()),[o,i]=l.useState(a??Q().add(30,"minute")),[d,c]=l.useState(!1),u=l.useCallback(y=>m=>{y(m)},[]),p=l.useMemo(()=>({selectedStartDate:n,selectedEndDate:o,error:d}),[n,o,d]),h=l.useMemo(()=>({setSelectedStartDate:r,setSelectedEndDate:i,setError:c,handleSelect:u}),[u]);return{state:p,action:h}},bd=e=>{const[a,n]=l.useState(""),[r,o]=l.useState(e?.id?{id:e.id,name:e.name}:null),i=e?`${e.id}|${e.name}`:"";l.useEffect(()=>{o(e?.id?{id:e.id,name:e.name}:null)},[i,e]);const d=l.useCallback(m=>{o({id:m.id,name:m.name??""}),n("")},[]),c=l.useCallback(()=>{o(null)},[]),u=l.useCallback(m=>{n(m)},[]),p=l.useCallback(()=>{n(""),o(e?.id?{id:e.id,name:e.name}:null)},[e]),h=l.useMemo(()=>({search:a,selectedContact:r}),[a,r]),y=l.useMemo(()=>({handleSelectContact:d,handleRemoveContact:c,handleSearchChange:u,resetField:p}),[d,c,u,p]);return{state:h,action:y}},vd=e=>{const a=l.useRef(null),n=St("text",e?.title??""),r=St("text",e?.details??e?.description??""),o=St("text",e?.location??""),i=St("text",e?.color??"#1976d2"),d=xd(e?.startAt?Q(e.startAt):void 0,e?.endAt?Q(e.endAt):void 0),[c,u]=l.useState(e?.allDay??!1),[p,h]=l.useState(e?.isPrivate??!1),[y,m]=l.useState(e?.rule??""),f=gd(e?.notifications),v=bd(e?.relatedContact??e?.raw?.relatedContact),C=l.useCallback(()=>({title:n.attributes.value,details:r.attributes.value,location:o.attributes.value,allDay:c,isPrivate:p,color:i.attributes.value,startAt:d.state.selectedStartDate.toISOString(),endAt:d.state.selectedEndDate.toISOString(),notifications:f.notifications.filter(k=>k.timeValue>0).map(k=>({id:k.id,timePeriod:k.timePeriod,timeValue:k.timeValue,sendToContact:k.sendToContact})),rule:y,contactId:v.state.selectedContact?.id||null}),[n.attributes.value,r.attributes.value,o.attributes.value,c,p,i.attributes.value,d.state.selectedStartDate,d.state.selectedEndDate,f.notifications,y,v.state.selectedContact]),x=l.useCallback(()=>{n.actions.resetValue(),r.actions.resetValue(),o.actions.resetValue(),i.actions.changeValue("#1976d2"),u(!1),h(!1),m(""),f.action.resetNotifications(),v.action.resetField(),d.action.setError(!1),a.current=null},[n.actions,r.actions,o.actions,i.actions,f.action,v.action,d.action]);return l.useEffect(()=>{const k=e?.id;!e||a.current===k||(a.current=k,u(e.allDay??!1),h(e.isPrivate??!1),m(e.rule??""),n.actions.changeValue(e.title??""),r.actions.changeValue(e.details??e.description??""),o.actions.changeValue(e.location??""),i.actions.changeValue(e.color??"#1976d2"),e.startAt&&d.action.setSelectedStartDate(Q(e.startAt)),e.endAt&&d.action.setSelectedEndDate(Q(e.endAt)))},[e?.id]),l.useMemo(()=>({titleField:n,descriptionField:r,locationField:o,colorField:i,date:d,allDay:c,setAllDay:u,isPrivate:p,setIsPrivate:h,recurrenceRule:y,setRecurrenceRule:m,notifications:f,linkContact:v,create:C,resetFields:x}),[n,r,o,i,d,c,p,y,f,v,C,x])},Cd={field:{userIds:[]},action:{setUserIds:()=>{},resetField:()=>{}}},Sd={nameField:Ct,color:"#ffffff",handleColorChange:()=>{},shareWithUsers:Cd,googleCalendar:null,handleGoogleCalendarChange:()=>{}},jd=()=>{const[e,a]=l.useState([]),n=l.useCallback(()=>{a([])},[]),r=l.useMemo(()=>({userIds:e}),[e]),o=l.useMemo(()=>({setUserIds:a,resetField:n}),[n]);return{field:r,action:o}},wd=()=>{const e=St("text",""),[a,n]=l.useState("#ffffff"),[r,o]=l.useState(null),i=jd(),d=l.useCallback(u=>{n(u)},[]),c=l.useCallback(u=>{o(u)},[]);return l.useMemo(()=>({nameField:e,color:a,handleColorChange:d,shareWithUsers:i,googleCalendar:r,handleGoogleCalendarChange:c}),[e,a,d,i,r,c])},Td={tasks:[],setTasks:()=>{},filteredTasks:[]},Id=e=>{const[a,n]=l.useState([]),r=l.useMemo(()=>e?.length?a.filter(o=>o.calendarId&&e.includes(o.calendarId)):a,[a,e]);return l.useMemo(()=>({tasks:a,setTasks:n,filteredTasks:r}),[a,r])},kd={state:{selectedStartDate:Q(),selectedEndDate:Q(),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},Ed={state:{search:"",selectedContact:null},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},Ad={titleField:Ct,descriptionField:Ct,date:kd,linkContact:Ed,create:()=>({title:"",description:"",startAt:"",endAt:"",contactId:null}),resetFields:()=>{}},Dd=(e,a)=>{const[n,r]=l.useState(e??Q()),[o,i]=l.useState(a??Q()),[d,c]=l.useState(!1),u=l.useCallback(y=>m=>{y(m)},[]),p=l.useMemo(()=>({selectedStartDate:n,selectedEndDate:o,error:d}),[n,o,d]),h=l.useMemo(()=>({setSelectedStartDate:r,setSelectedEndDate:i,setError:c,handleSelect:u}),[u]);return{state:p,action:h}},Fd=e=>{const[a,n]=l.useState(""),[r,o]=l.useState(e?.id?{id:e.id,name:e.name}:null),i=e?`${e.id}|${e.name}`:"";l.useEffect(()=>{o(e?.id?{id:e.id,name:e.name}:null)},[i,e]);const d=l.useCallback(m=>{o({id:m.id,name:m.name??""}),n("")},[]),c=l.useCallback(()=>{o(null)},[]),u=l.useCallback(m=>{n(m)},[]),p=l.useCallback(()=>{n(""),o(e?.id?{id:e.id,name:e.name}:null)},[e]),h=l.useMemo(()=>({search:a,selectedContact:r}),[a,r]),y=l.useMemo(()=>({handleSelectContact:d,handleRemoveContact:c,handleSearchChange:u,resetField:p}),[d,c,u,p]);return{state:h,action:y}},Bd=e=>{const a=l.useRef(null),n=St("text",e?.title??""),r=St("text",e?.description??""),o=Dd(e?.startAt?Q(e.startAt):void 0,e?.startAt?Q(e.startAt):void 0),i=Fd(e?.relatedContact??e?.raw?.relatedContact),d=l.useCallback(()=>({title:n.attributes.value,description:r.attributes.value,startAt:o.state.selectedStartDate.toISOString(),endAt:o.state.selectedStartDate.toISOString(),contactId:i.state.selectedContact?.id||null}),[n.attributes.value,r.attributes.value,o.state.selectedStartDate,i.state.selectedContact]),c=l.useCallback(()=>{n.actions.resetValue(),r.actions.resetValue(),i.action.resetField(),o.action.setError(!1),a.current=null},[n.actions,r.actions,i.action,o.action]);return l.useEffect(()=>{const u=e?.id;if(!(!e||a.current===u)&&(a.current=u,console.log("[useTask] Sincronizando tarea:",{id:e.id,title:e.title,description:e.description,startAt:e.startAt,relatedContact:e.relatedContact}),n.actions.changeValue(e.title??""),r.actions.changeValue(e.description??""),e.startAt)){const p=Q(e.startAt);o.action.setSelectedStartDate(p),o.action.setSelectedEndDate(p)}},[e?.id]),l.useEffect(()=>{if(!e)return;const u=e.relatedContact??e.raw?.relatedContact,p=i.state.selectedContact?.id,h=u?.id;p!==h&&(h?i.action.handleSelectContact({id:h,name:u.name??""}):i.action.resetField())},[e?.relatedContact,e?.raw?.relatedContact]),l.useMemo(()=>({titleField:n,descriptionField:r,date:o,linkContact:i,create:d,resetFields:c}),[n,r,o,i,d,c])},Ga=l.createContext({eventDialog:Hn,createCalendarDialog:Hn,event:yd,events:ud,calendar:Sd,dialogMode:"view",handleCreateEvent:()=>{},handleSelectEvent:()=>{},handleOpenEventCreate:()=>{},handleStartEditingEvent:()=>{},handleSaveUpdatedEvent:()=>{},handleEndEvent:()=>{},handleDeleteEvent:()=>{},handleResizeEvent:()=>{},selectedEvent:{},savingSnackbar:{open:!1,message:"",severity:"info"},handleCloseSnackbar:()=>{},dialogType:"event",setDialogType:()=>{},handleOpenTaskCreate:()=>{},handleOpenCreateFromSlot:()=>{},handleCloseCreateCalendarDialog:()=>{},calendarDialogMode:"create",editingCalendar:null,handleOpenCreateCalendarDialog:()=>{},handleOpenEditCalendarDialog:()=>{},handleSubmitCalendar:async()=>{},tasks:Td,activeCalendarIds:[],setActiveCalendarIds:()=>{},handleCreateTask:()=>{},task:Ad,selectedTask:null,taskCalendarId:"",setTaskCalendarId:()=>{},eventCalendarId:"",setEventCalendarId:()=>{},userManuallyChangedColor:!1,setUserManuallyChangedColor:()=>{},myCalendars:[],otherCalendars:[],isLoadingCalendars:!1,isCreatingEvent:!1,isUpdatingEvent:!1,isCreatingTask:!1,isUpdatingTask:!1,handleSaveUpdatedTask:()=>{},handleDeleteTask:()=>{},handleToggleTaskCompleted:()=>{},handleDuplicateItem:()=>{},calendarView:"month",setCalendarView:()=>{},calendarDate:new Date,setCalendarDate:()=>{},navigateToDate:()=>{},confirmDeleteDialog:{open:!1,handleClose:()=>{},itemType:"event"},handleConfirmDelete:()=>{},deleteRecurringDialog:{open:!1,handleClose:()=>{}},handleConfirmDeleteRecurring:()=>{},editRecurringDialog:{open:!1,handleClose:()=>{}},handleConfirmEditRecurring:()=>{},hiddenTabs:!1}),Yn=e=>e,Kn=l.createContext(Yn),Md=({t:e,children:a})=>t.jsx(Kn.Provider,{value:e,children:a}),Pe=()=>{const e=l.useContext(Kn);return e?(...a)=>{const[n,...r]=a;return e(n,...r)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),Yn)};var $d=Object.defineProperty,Pd=(e,a,n)=>a in e?$d(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,Jn=(e,a,n)=>Pd(e,typeof a!="symbol"?a+"":a,n);class Ud extends Error{constructor(a,n,r){super(a),Jn(this,"status"),Jn(this,"body"),this.name="ApiError",this.status=n,this.body=r}}async function Fe({url:e,method:a="GET",headers:n,body:r,signal:o}){const i=await globalThis.fetch(e,{method:a,headers:{...r?{"Content-Type":"application/json"}:{},...n??{}},body:r?JSON.stringify(r):void 0,signal:o}),d=(i.headers.get("content-type")||"").includes("application/json")?await i.json().catch(()=>null):await i.text().catch(()=>null);if(!i.ok){const c=typeof d=="object"&&d&&"message"in d?String(d.message):`Request failed with status ${i.status}`;throw new Ud(c,i.status,d)}return d}function Ee(e,a){const n=e.endsWith("/")?e.slice(0,-1):e,r=a.startsWith("/")?a:`/${a}`;return`${n}${r}`}function ga(e,a){const n=encodeURIComponent(a);return{CONTACTS:Ee(e,`/contacts/${n}`),MEDIA:Ee(e,`/media/${n}`),SETTINGS:Ee(e,`/settings/${n}`),CALENDAR:Ee(e,`/calendar/${n}`)}}function qe(e){return ga(e.baseUrl,e.spaceId).CALENDAR}async function Rd(e){const a=ga(e.baseUrl,e.spaceId);return Fe({url:Ee(a.SETTINGS,"/user")})}async function Nd(e,a,n){const r=`${qe(e)}/Events?start=${encodeURIComponent(a)}&end=${encodeURIComponent(n)}`;return Fe({url:r})}async function Ld(e,a){const n=qe(e);return Fe({url:Ee(n,"/events"),method:"POST",body:a})}async function Xn(e,a){const n=qe(e),{activityId:r,updatedActivity:o,originalOccurrenceDate:i}=a;if(i){const d=i instanceof Date?i.toISOString():i,c=`${n}/events/occurrence/${r}?occurrence=${d}`;return Fe({url:c,method:"PUT",body:o})}return Fe({url:Ee(n,`/events/${r}`),method:"PUT",body:o})}async function qa(e,a,n){const r=qe(e);if(n){const o=n instanceof Date?n.toISOString():n,i=`${r}/events/${a}?occurrence=${o}`;await Fe({url:i,method:"DELETE"})}else await Fe({url:Ee(r,`/events/${a}`),method:"DELETE"})}async function zd(e,a){const n=qe(e);return Fe({url:Ee(n,`/events/${a}`),method:"PUT",body:{finalized:!0}})}async function Od(e,a){const n=qe(e);return Fe({url:Ee(n,`/Task/${a}`)})}async function _d(e,a){const n=qe(e);return Fe({url:Ee(n,"/Task"),method:"POST",body:a})}async function Qn(e,a,n){const r=qe(e);return Fe({url:Ee(r,`/Task/${a}`),method:"PUT",body:n})}async function Wd(e,a){const n=qe(e);await Fe({url:Ee(n,`/Task/${a}`),method:"DELETE"})}async function Vd(e,a,n){const r=qe(e);return Fe({url:Ee(r,`/Task/${a}`),method:"PUT",body:{isCompleted:n}})}async function Hd(e){const a=qe(e);return Fe({url:Ee(a,"/Calendar")})}async function Gd(e,a){const n=qe(e);return Fe({url:Ee(n,"/Calendar"),method:"POST",body:a})}async function qd(e,a,n){const r=qe(e);return Fe({url:Ee(r,`/Calendar/${a}`),method:"PUT",body:n})}async function Yd({baseUrl:e,spaceId:a,contactId:n,signal:r}){const o=ga(e,a),i=Ee(o.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return Fe({url:i,signal:r})}async function Kd({baseUrl:e,spaceId:a,pagination:n,signal:r}){const o=ga(e,a),i=Ee(o.CONTACTS,"/Search");return Fe({url:i,method:"POST",body:n,signal:r})}function ma(e){const a=Q(e),n=a.minute();return n===0||n===30?a.second(0).millisecond(0):n>0&&n<30?a.minute(30).second(0).millisecond(0):a.add(1,"hour").minute(0).second(0).millisecond(0)}const Yt=e=>{if(!e)return e;const a=e.indexOf("_");if(a===-1)return e;const n=e.substring(0,a),r=e.substring(a+1);return/^\d{14}$/.test(r)?n:e},Kt=e=>e?e.parentId?e.parentId:Yt(e.id):"",Jd=({children:e,externalOpen:a,externalOnClose:n,externalMode:r="create",externalType:o="event",externalEventCalendarId:i,externalTaskCalendarId:d,externalSelectedEvent:c,externalSelectedTask:u,hiddenTabs:p=!1,externalContactId:h,externalOnActionComplete:y,externalInitialStartDate:m,externalInitialEndDate:f})=>{const{t:v}=Je.useTranslation(),C=Vn(),x=(b,...W)=>v(b,...W),[k,w]=l.useState(o),[A,S]=l.useState(null),[T,D]=l.useState(null),[$,B]=l.useState(r),[I,U]=l.useState(d||""),[P,_]=l.useState(i||""),[V,R]=l.useState(!1),[O,q]=l.useState("create"),[ae,de]=l.useState(null),[he,L]=l.useState({open:!1,message:"",severity:"info"}),[j,F]=l.useState(!1),[E,M]=l.useState("event"),[Y,ye]=l.useState(!1),[le,ge]=l.useState(!1),[xe,Se]=l.useState(null),[G,ne]=l.useState(!1),[je,Ae]=l.useState(!1),[Ge,J]=l.useState(!1),[Ye,ze]=l.useState(!1),Ve="trii_calendar_last_view",fe=b=>b==="month"||b==="week"||b==="day",[mt,Qe]=l.useState(()=>{try{const b=localStorage.getItem(Ve);return fe(b)?b:"month"}catch{return"month"}}),[va,Xt]=l.useState(new Date),Qt=b=>{Xt(b),Qe("day")},Ue=Gn(),Ze=Gn(),oe=vd(A??void 0),ce=Bd(T??void 0);l.useEffect(()=>{r!==void 0&&B(r)},[r]),l.useEffect(()=>{o!==void 0&&w(o)},[o]),l.useEffect(()=>{i!==void 0&&_(i)},[i]),l.useEffect(()=>{d!==void 0&&U(d)},[d]),l.useEffect(()=>{c!==void 0&&(S(c),c?.calendarId&&_(c.calendarId))},[c]),l.useEffect(()=>{u!==void 0&&(console.log("[CalendarContextProvider] Sincronizando externalSelectedTask:",u),D(u),u?.calendarId&&U(u.calendarId))},[u]),l.useEffect(()=>{if(!h||!C||r!=="create"||!Ue.open)return;let b=!1;return Yd({baseUrl:C.baseUrl,spaceId:C.spaceId,contactId:h}).then(W=>{b||!W||(oe.linkContact.action.resetField(),oe.linkContact.action.handleSelectContact(W),ce.linkContact.action.resetField(),ce.linkContact.action.handleSelectContact(W))}).catch(()=>{}),()=>{b=!0}},[h,Ue.open]),l.useEffect(()=>{if(a!==void 0)if(a&&!Ue.open){if(r==="create"){oe.resetFields(),ce.resetFields(),R(!1),S(null),D(null),oe.date.action.setError(!1),ce.date.action.setError(!1);const b=ma(m??new Date),W=f?ma(f):b.add(30,"minute");if(o==="task"?(ce.date.action.setSelectedStartDate(b),ce.date.action.setSelectedEndDate(b)):(oe.date.action.setSelectedStartDate(b),oe.date.action.setSelectedEndDate(W)),!i){const z=Re?.[0]??ot?.[0]?.id??Oe?.[0]?.id??"";z&&_(z)}if(!d){const z=Re?.[0]??Oe?.[0]?.id??"";z&&U(z)}}Ue.handleOpen()}else!a&&Ue.open&&Ue.handleClose()},[a]);const Ke=()=>{oe.resetFields(),ce.resetFields(),oe.date.action.setError(!1),ce.date.action.setError(!1),n?n():Ue.handleClose()},De=wd(),Zt=O==="create",[Oe,Ca]=l.useState([]),[Sa,ea]=l.useState(!1),[ja,wa]=l.useState([]),[ct,ta]=l.useState(""),rt="calendar_selected_ids",[Re,ut]=l.useState(()=>{try{const b=localStorage.getItem(rt);return b?JSON.parse(b):[]}catch{return[]}}),ht=pd(Re,ja),Et=Id(Re),aa=()=>{L(b=>({...b,open:!1}))},st=l.useCallback((b,W,z)=>{y?.(b,W,z)},[y]);function At(b){const W=b?.startAt??b?.start,z=b?.endAt??b?.end??W;return{startAt:W,endAt:z}}const{myCalendars:ot,otherCalendars:Ta}=l.useMemo(()=>{const b=Oe??[];if(!ct)return{myCalendars:b,otherCalendars:[]};const W=b.filter(Z=>Z.userId===ct),z=b.filter(Z=>Z.userId!==ct);return W.length===0&&b.length>0?{myCalendars:b,otherCalendars:[]}:{myCalendars:W,otherCalendars:z}},[Oe,ct]),yt=l.useCallback(async()=>{if(C)try{const b=new Date,W=b.getUTCFullYear(),z=b.getUTCMonth(),Z=new Date(Date.UTC(W,z-1,1,0,0,0)).toISOString(),X=new Date(Date.UTC(W,z+2,1,0,0,0)).toISOString(),pe=await Nd(C,Z,X);wa(pe)}catch(b){console.error("Error fetching activities:",b)}},[C]),it=l.useCallback(async b=>{if(C)try{const W=await Od(C,b);Et.setTasks(W.map(z=>({id:z.id,title:z.title||"",start:new Date(z.startAt),end:new Date(z.endAt||z.startAt),startAt:z.startAt,endAt:z.endAt,description:z.description,calendarId:z.calendarId,isCompleted:z.isCompleted||!1,relatedContact:z.relatedContact,kind:"task"})))}catch(W){console.error("Error fetching tasks:",W)}},[C]),jt=l.useCallback(async()=>{if(C){ea(!0);try{const b=await Hd(C);Ca(b)}catch(b){console.error("Error fetching calendars:",b)}finally{ea(!1)}}},[C]);l.useEffect(()=>{const b=ot?.[0]?.id??Oe?.[0]?.id??"";b&&Ue.open&&$==="create"&&(P||_(b),I||U(b))},[Ue.open,$]);const Dt=l.useRef(!1);l.useEffect(()=>{a||(Dt.current=!1)},[a]),l.useEffect(()=>{if(!C||!a||Dt.current||(Dt.current=!0,jt(),r==="create"))return;let b=!1;return Rd(C).then(W=>{b||ta(W.uid)}).catch(()=>{}),()=>{b=!0}},[C,a,r,jt]);function Ft(b,W,z){w(b),B("create"),S(null),D(null),oe.resetFields(),ce.resetFields(),R(!1);const Z=ma(W??new Date),X=z?ma(z):Z.add(30,"minute"),pe=X.isAfter(Z)?X:Z.add(30,"minute");if(b==="task"){ce.date.action.setSelectedStartDate(Z),ce.date.action.setSelectedEndDate(Z),ce.date.action.setError(!1);const Te=Re?.[0]??Oe?.[0]?.id??"";U(Te)}else{oe.date.action.setSelectedStartDate(Z),oe.date.action.setSelectedEndDate(pe),oe.date.action.setError(!1);const Te=Re?.[0]??ot?.[0]?.id??Oe?.[0]?.id??"";_(Te);const te=ot?.find(we=>we.id===Te)??Oe?.find(we=>we.id===Te);te?.color&&oe.colorField.actions.changeValue(te.color)}Ue.handleOpen()}function Ia(){Ft("event")}function ka(){oe.date.action.setError(!1),ce.date.action.setError(!1),B("edit")}function g(b){const{startAt:W,endAt:z}=At(b),Z={...b,kind:"event",startAt:W,endAt:z,details:b?.details??""};w("event"),S(Z),D(null);const X=Z.calendarId||ot?.[0]?.id||Oe?.[0]?.id||"";_(X),B("view"),oe.date.action.setError(!1),ce.date.action.setError(!1),Ue.handleOpen()}async function N(b){if(!C)return;let W;if(b)W={title:b.title,details:b.description||b.details||"",startAt:new Date(b.startAt),endAt:new Date(b.endAt),allDay:b.allDay,location:b.location||"",isPrivate:b.isPrivate||!1,color:b.color||"",rule:b.rule||"",contactId:b.relatedContactId||h||null,notifications:(b.notifications||[]).map(X=>({id:_t(),timeValue:X.value,timePeriod:X.type,sendToContact:X.sendToContact||!1})),eventTypeId:"",repeatId:""};else{const X=oe.create();if(!X.title){L({open:!0,message:x("global.nameRequired"),severity:"error"});return}W={...X,startAt:new Date(X.startAt),endAt:new Date(X.endAt),contactId:X.contactId||h||null,eventTypeId:"",repeatId:"",notifications:X.notifications.map(pe=>({...pe,id:pe.id||_t()}))}}const z=P;if(!z){L({open:!0,message:x("global.errorSavingChanges"),severity:"error"});return}const Z={...W,calendarId:z};ne(!0);try{L({open:!0,message:x("global.savingChanges"),severity:"info"});const X=await Ld(C,Z);Re.includes(z)||ut(pe=>[...pe,z]),L({open:!0,message:x("global.changesSaved"),severity:"success"}),st("created","event",X),oe.resetFields(),Ke(),setTimeout(()=>{yt()},500)}catch(X){console.error("Error creando evento:",X);const pe=X?.response?.data?.message||X?.message||x("global.errorSavingChanges");L({open:!0,message:pe,severity:"error"})}finally{ne(!1)}}async function H(){if(!A?.id)return;const b=oe.create(),W=P||A.calendarId||"";if(!W){L({open:!0,message:x("global.errorSavingChanges"),severity:"error"});return}A.originalOccurrenceDate!=null?(Se(()=>async z=>{await ee(b,W,z)}),ge(!0)):await ee(b,W,!1)}async function ee(b,W,z){const Z=A?.originalOccurrenceDate!=null,X={title:b.title,details:b.details,startAt:b.startAt,endAt:b.endAt,allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:W,notifications:b.notifications,contactId:b.contactId??null};(z||!Z)&&(X.rule=b.rule);const pe=Kt(A),Te={updatedActivity:X,activityId:pe};Z&&!z&&(Te.originalOccurrenceDate=A.originalOccurrenceDate),Ae(!0);try{const te=await Xn(C,Te);if(te){const we={...te,relatedContact:te.relatedContact??A.relatedContact};S(we),te.calendarId&&_(te.calendarId),ht.setEvents(na=>na.map(pt=>pt.id===A?.id?{...pt,...te,relatedContact:te.relatedContact??pt.relatedContact,start:new Date(te.startAt),end:new Date(te.endAt||te.startAt),originalOccurrenceDate:te.originalOccurrenceDate?typeof te.originalOccurrenceDate=="string"?te.originalOccurrenceDate:te.originalOccurrenceDate.toISOString():pt.originalOccurrenceDate}:pt))}L({open:!0,message:x("global.changesSaved"),severity:"success"}),st("updated","event",te),Ke(),setTimeout(()=>{yt()},500)}catch(te){console.error("Error actualizando evento:",te);const we=te?.response?.data?.message||te?.message||x("global.errorSavingChanges");L({open:!0,message:we,severity:"error"})}finally{Ae(!1)}}async function ie(b){ge(!1),xe&&(await xe(b),Se(null))}async function ue(){A?.originalOccurrenceDate!=null?ye(!0):(M("event"),F(!0))}async function se(){if(C)if(F(!1),E==="event")try{const b=Kt(A);Ke(),await qa(C,b),L({open:!0,message:x("global.changesSaved"),severity:"success"}),st("deleted","event",{id:b}),setTimeout(()=>{yt()},500)}catch(b){console.error("Error deleting event:",b);const W=b?.message?.includes("duplicate key")?x("global.eventAlreadyDeleted","El evento ya fue eliminado"):x("global.errorSavingChanges");L({open:!0,message:W,severity:"error"})}else{if(!T?.id)return;try{const b=Yt(T.id),W=T.calendarId;Ke(),await Wd(C,b),D(null),ce.resetFields(),L({open:!0,message:x("global.changesSaved"),severity:"success"}),st("deleted","task",{id:b}),W&&setTimeout(()=>{it(W)},500)}catch(b){console.error("Error deleting task:",b);const W=b?.message?.includes("duplicate key")?x("global.taskAlreadyDeleted","La tarea ya fue eliminada"):x("global.errorSavingChanges");L({open:!0,message:W,severity:"error"})}}}async function re(b){ye(!1);const W=Kt(A);Ke();try{b?await qa(C,W):await qa(C,W,A.originalOccurrenceDate),L({open:!0,message:x("global.changesSaved"),severity:"success"}),st("deleted","event",{id:W}),setTimeout(()=>{yt()},500)}catch(z){console.error("Error deleting recurring event:",z);const Z=z?.message?.includes("duplicate key")?x("global.eventAlreadyDeleted","El evento ya fue eliminado"):x("global.errorSavingChanges");L({open:!0,message:Z,severity:"error"})}}async function Be(){if(!C)return;const b=Kt(A);await zd(C,b),Ke()}async function be(b,W,z){const Z=W instanceof Date?W:new Date(W),X=z instanceof Date?z:new Date(z),pe=Z.toISOString(),Te=X.toISOString(),te=b.kind==="task";!te&&b.originalOccurrenceDate!=null?(S(b),Se(()=>async we=>{await ve(b,pe,Te,Z,X,te,we)}),ge(!0)):await ve(b,pe,Te,Z,X,te,!1)}async function ve(b,W,z,Z,X,pe,Te){pe||ht.setEvents(te=>te.map(we=>we.id===b.id?{...we,start:Z,end:X,startAt:Z,endAt:X}:we)),L({open:!0,message:x("global.savingChanges"),severity:"info"});try{if(pe){const te=Yt(b.id),we={title:b.title,description:b.description,startAt:W,endAt:z,calendarId:b.calendarId,allDay:b.allDay||!1,isCompleted:b.isCompleted||!1};await Qn(C,te,we),await it(b.calendarId)}else{const te=Kt(b),we=b.originalOccurrenceDate!=null,na={title:b.title,details:b.details,startAt:new Date(W),endAt:new Date(z),allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:b.calendarId};(Te||!we)&&(na.rule=b.rule);const pt={updatedActivity:na,activityId:te};we&&!Te&&(pt.originalOccurrenceDate=b.originalOccurrenceDate),await Xn(C,pt)}L({open:!0,message:x("global.changesSaved"),severity:"success"}),setTimeout(()=>{yt()},500)}catch{pe||ht.setEvents(te=>te.map(we=>we.id===b.id?{...we,start:b.start,end:b.end}:we)),L({open:!0,message:x("global.errorSavingChanges"),severity:"error"})}}function He(b,W){Ft("event",b,W)}function lt(){De.nameField.actions.resetValue(),De.handleColorChange("#ffffff"),De.shareWithUsers.action.resetField(),De.handleGoogleCalendarChange(null)}function et(){lt(),de(null),q("create"),Ze.handleClose()}function Ne(b){De.nameField.actions.changeValue(b.title??""),De.nameField.actions.onSuccess(),De.handleColorChange(b.color??"#ffffff"),De.shareWithUsers.action.setUserIds(b.sharedWith??[]),De.handleGoogleCalendarChange(b.googleCalendar??null)}function Bt(){q("create"),de(null),lt(),Ze.handleOpen()}function Ea(b){q("edit"),de(b),Ne(b),Ze.handleOpen()}async function Aa(){if(!C)return;const b=(De.nameField.attributes.value??"").trim();if(!b){L({open:!0,message:x("global.nameRequired"),severity:"error"});return}const W=De.shareWithUsers.field.userIds,z={title:b,color:De.color,sharedWith:W.length?W:void 0,googleCalendar:De.googleCalendar};try{if(Zt)await Gd(C,z);else{const Z=ae?.id;if(!Z)return;await qd(C,Z,z)}et(),L({open:!0,message:x(Zt?"global.calendarCreatedSuccess":"global.calendarUpdatedSuccess"),severity:"success"}),jt()}catch{L({open:!0,message:x("global.errorSavingChanges"),severity:"error"})}}async function kr(b){if(!C)return;let W;if(b?W={title:b.title,description:b.description||"",startAt:b.startAt,contactId:b.relatedContactId||null}:W=ce.create(),!W.title){L({open:!0,message:x("global.nameRequired"),severity:"error"});return}const z=I;if(!z){L({open:!0,message:x("global.errorSavingChanges"),severity:"error"});return}const Z={...W,calendarId:z,contactId:W.contactId||h||null};J(!0);try{L({open:!0,message:x("global.savingChanges"),severity:"info"});const X=await _d(C,Z);Re.includes(z)||ut(pe=>[...pe,z]),L({open:!0,message:x("global.changesSaved"),severity:"success"}),st("created","task",X),ce.resetFields(),Ke(),setTimeout(()=>{it(z)},500)}catch(X){console.error("Error creando tarea:",X);const pe=X?.response?.data?.message||X?.message||x("global.errorSavingChanges");L({open:!0,message:pe,severity:"error"})}finally{J(!1)}}function Er(){Ft("task")}async function Ar(){if(!C||!T?.id)return;const b=ce.create();if(!b.title){L({open:!0,message:x("global.nameRequired"),severity:"error"});return}const W=I||T.calendarId;if(!W){L({open:!0,message:x("global.errorSavingChanges"),severity:"error"});return}const z={title:b.title,description:b.description,startAt:b.startAt,endAt:b.endAt,calendarId:W,contactId:b.contactId??null};ze(!0);try{const Z=Yt(T.id),X=await Qn(C,Z,z);if(X){const pe={...X,relatedContact:X.relatedContact??T.relatedContact};D(pe),X.calendarId&&U(X.calendarId),Et.setTasks(Te=>Te.map(te=>te.id===T?.id?{...te,...X,relatedContact:X.relatedContact??te.relatedContact,start:X.startAt?new Date(X.startAt):te.start,end:X.startAt?new Date(X.startAt):te.end}:te))}L({open:!0,message:x("global.changesSaved"),severity:"success"}),st("updated","task",X),Ke(),setTimeout(()=>{const pe=T.calendarId,Te=X?.calendarId||W;it(Te),pe&&pe!==Te&&it(pe)},500)}catch(Z){console.error("Error actualizando tarea:",Z);const X=Z?.response?.data?.message||Z?.message||x("global.errorSavingChanges");L({open:!0,message:X,severity:"error"})}finally{ze(!1)}}async function Dr(){T?.id&&(M("task"),F(!0))}async function Fr(){if(!C||!T?.id)return;const b=!T.isCompleted;try{const W=Yt(T.id),z=T.calendarId,Z=await Vd(C,W,b);Z&&D(Z),L({open:!0,message:x("global.changesSaved"),severity:"success"}),z&&setTimeout(()=>{it(z)},500)}catch{L({open:!0,message:x("global.errorSavingChanges"),severity:"error"})}}function Br(){const b=k==="event",W=b?A:T;if(!W)return;const z={...W};b?(S(null),B("create"),R(!0),setTimeout(()=>{oe.titleField.actions.changeValue(z.title??""),oe.descriptionField.actions.changeValue(z.details??z.description??""),oe.locationField.actions.changeValue(z.location??""),oe.colorField.actions.changeValue(z.color??""),oe.setAllDay(z.allDay??!1),oe.setIsPrivate(z.isPrivate??!1),oe.setRecurrenceRule(z.rule??""),oe.date.action.setSelectedStartDate(Q(z.startAt)),oe.date.action.setSelectedEndDate(Q(z.endAt)),oe.date.action.setError(!1),oe.notifications.action.resetNotifications(),z.relatedContact?.id&&oe.linkContact.action.handleSelectContact(z.relatedContact),_(z.calendarId??P)},50)):(D(null),B("create"),setTimeout(()=>{ce.titleField.actions.changeValue(z.title??""),ce.descriptionField.actions.changeValue(z.description??""),ce.date.action.setSelectedStartDate(Q(z.startAt)),ce.date.action.setSelectedEndDate(Q(z.startAt)),ce.date.action.setError(!1),z.relatedContact?.id&&ce.linkContact.action.handleSelectContact(z.relatedContact),U(z.calendarId??I)},50))}function Mr(b){const{startAt:W,endAt:z}=At(b),Z={...b,kind:"task",startAt:W,endAt:z,description:b?.description??""};w("task"),D(Z),U(Z.calendarId??""),_(Z.calendarId??""),S(null),B("view"),oe.date.action.setError(!1),ce.date.action.setError(!1),Ue.handleOpen()}function $r(b){return b?.kind==="task"?Mr(b):g(b)}l.useEffect(()=>{try{Re&&localStorage.setItem(rt,JSON.stringify(Re))}catch{}},[Re]),l.useEffect(()=>{Oe?.length&&ut(b=>{const W=new Set(Oe.map(Z=>Z.id)),z=(b??[]).filter(Z=>W.has(Z));return z.length?z:Oe.map(Z=>Z.id)})},[Oe]),l.useEffect(()=>{try{localStorage.setItem(Ve,mt)}catch{}},[mt]);const Pr={eventDialog:{...Ue,handleClose:Ke},dialogMode:$,createCalendarDialog:Ze,event:oe,calendar:De,events:ht,handleCreateEvent:N,handleSelectEvent:$r,handleOpenEventCreate:Ia,handleStartEditingEvent:ka,handleSaveUpdatedEvent:H,handleEndEvent:Be,handleDeleteEvent:ue,handleResizeEvent:be,selectedEvent:A,savingSnackbar:he,handleCloseSnackbar:aa,dialogType:k,setDialogType:w,handleOpenTaskCreate:Er,handleOpenCreateFromSlot:He,handleCloseCreateCalendarDialog:et,calendarDialogMode:O,editingCalendar:ae,handleOpenCreateCalendarDialog:Bt,handleOpenEditCalendarDialog:Ea,handleSubmitCalendar:Aa,tasks:Et,activeCalendarIds:Re,setActiveCalendarIds:ut,handleCreateTask:kr,task:ce,selectedTask:T,taskCalendarId:I,setTaskCalendarId:U,eventCalendarId:P,setEventCalendarId:_,userManuallyChangedColor:V,setUserManuallyChangedColor:R,myCalendars:ot,otherCalendars:Ta,isLoadingCalendars:Sa,isCreatingEvent:G,isUpdatingEvent:je,isCreatingTask:Ge,isUpdatingTask:Ye,handleSaveUpdatedTask:Ar,handleDeleteTask:Dr,handleToggleTaskCompleted:Fr,handleDuplicateItem:Br,calendarView:mt,setCalendarView:Qe,calendarDate:va,setCalendarDate:Xt,navigateToDate:Qt,confirmDeleteDialog:{open:j,handleClose:()=>F(!1),itemType:E},handleConfirmDelete:se,deleteRecurringDialog:{open:Y,handleClose:()=>ye(!1)},handleConfirmDeleteRecurring:re,editRecurringDialog:{open:le,handleClose:()=>{ge(!1),Se(null)}},handleConfirmEditRecurring:ie,hiddenTabs:p};return t.jsx(Md,{t:x,children:t.jsx(Ga.Provider,{value:Pr,children:e})})},ha=s.styled(s.Box)(()=>({display:"flex",flexDirection:"column",gap:.5})),Ya=s.styled(s.Box)(()=>({display:"flex",alignItems:"baseline",gap:1})),Ka=s.styled(s.Typography)(()=>({marginX:"8px",marginTop:"-15px",color:"text.primary"})),kt="DD/MM/YYYY",ya="HH:mm",Xd=({selectedStartDate:e,selectedEndDate:a,handleSelectStart:n,handleSelectEnd:r,isError:o,disabled:i,hideLabel:d=!1,allDay:c=!1})=>{const u=Pe(),p=l.useMemo(()=>a.diff(e,"minute"),[e,a]),h=l.useMemo(()=>{if(p===0)return"0 min";const x=Math.floor(p/60),k=p%60;return x===0?`${k} min`:k===0?`${x} h`:`${x}.${Math.round(k/60*10)} h`},[p]),y=x=>{if(!x)return;const k=x.hour(e.hour()).minute(e.minute()).second(0).millisecond(0),w=x.hour(a.hour()).minute(a.minute()).second(0).millisecond(0);n(k),r(w)},m=x=>{if(!x)return;const k=x.hour(0).minute(0).second(0).millisecond(0);n(k)},f=x=>{if(!x)return;const k=x.hour(23).minute(59).second(59).millisecond(999);r(k)},v=x=>{if(!x)return;const k=e.hour(x.hour()).minute(x.minute()).second(0).millisecond(0),w=k.add(p,"minute");n(k),r(w)},C=x=>{if(!x)return;let k=e.hour(x.hour()).minute(x.minute()).second(0).millisecond(0);(k.isBefore(e)||k.isSame(e))&&(k=k.add(1,"day")),r(k)};return i?t.jsxs(ha,{children:[!d&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),c?t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,marginTop:"10px"},children:[t.jsx(s.Typography,{variant:"body1",children:e.format(kt)}),t.jsx(s.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(s.Typography,{variant:"body1",children:a.format(kt)})]}):t.jsxs(s.Box,{children:[t.jsx(s.Typography,{variant:"body1",sx:{mb:1},children:e.format(kt)}),t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(s.Typography,{variant:"body1",children:e.format(ya)}),t.jsx(s.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(s.Typography,{variant:"body1",children:a.format(ya)}),p>0&&t.jsxs(s.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1},children:["(",h,")"]})]})]})]}):t.jsxs(ha,{children:[!d&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),t.jsx(Xe.LocalizationProvider,{dateAdapter:tn.AdapterDayjs,children:c?t.jsxs(Ya,{children:[t.jsx(Xe.DatePicker,{disabled:i,format:kt,label:u("global.from"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:e,onChange:m,minDate:Q(),sx:{flex:1}}),t.jsx(Ka,{variant:"body1",children:"\u2013"}),t.jsx(Xe.DatePicker,{disabled:i,format:kt,label:u("global.to"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:a,onChange:f,minDate:e,sx:{flex:1}})]}):t.jsxs(t.Fragment,{children:[t.jsx(s.Box,{sx:{mb:1},children:t.jsx(Xe.DatePicker,{disabled:i,format:kt,slotProps:{textField:()=>({size:"small",fullWidth:!0}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:e,onChange:y,minDate:Q()})}),t.jsxs(Ya,{children:[t.jsx(Xe.TimePicker,{disabled:i,format:ya,ampm:!1,slotProps:{textField:()=>({label:u("global.from"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:e,onChange:v,sx:{alignSelf:"baseline",flex:1}}),t.jsx(Ka,{variant:"body1",children:"\u2013"}),t.jsxs(s.Box,{sx:{flex:1,display:"flex",flexDirection:"column",gap:.5},children:[t.jsx(Xe.TimePicker,{disabled:i,format:ya,ampm:!1,slotProps:{textField:()=>({label:u("global.to"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:x=>x.palette.background.panel}}}},value:a,onChange:C,sx:{alignSelf:"baseline",width:"100%"}}),p>0&&t.jsxs(s.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1.5},children:["(",h,")"]})]})]})]})}),o&&t.jsx(s.Fade,{in:o,children:t.jsx(s.Typography,{color:"red",variant:"caption",sx:{mt:1,ml:"10px"},children:u("calendarView.reminders.errorDate")})})]})};s.styled(s.Box)(()=>({display:"flex",gap:2,alignItems:"center"})),s.styled(s.Box)(({theme:e})=>({width:"15%",userSelect:"none",color:e.palette.text.secondary}));const We=({children:e,title:a})=>t.jsxs(s.Box,{children:[t.jsx(s.Typography,{variant:"subtitle2",sx:{mb:1,userSelect:"none"},children:a}),e]}),Ja=({titleField:e,disabled:a,variantMode:n="default"})=>{const r=Pe(),{value:o,type:i,...d}=e.attributes,c=o||"";return n==="inline"?t.jsx(s.TextField,{...d,value:c,disabled:a,autoFocus:!0,fullWidth:!0,placeholder:r("global.addTitle"),variant:"standard",InputProps:{disableUnderline:!1,sx:{fontSize:22,fontWeight:500}},sx:{"& .MuiInput-underline:before":{borderBottomColor:"divider"},"& .MuiInput-underline:hover:before":{borderBottomColor:"text.secondary"},"& .MuiInput-underline:after":{borderBottomWidth:2}}}):a?t.jsx(We,{title:r("global.title"),children:t.jsx(s.Typography,{variant:"body1",sx:{py:.5,color:u=>u.palette.text.secondary,fontSize:"0.9rem"},children:c||"-"})}):t.jsx(We,{title:r("global.title"),children:t.jsx(s.TextField,{...d,value:c,disabled:a,autoFocus:!0,fullWidth:!0,variant:"standard",size:"small",type:i})})},Qd=s.styled(s.Box)(()=>({marginBottom:"6px",padding:"8px 16px",border:"1px solid lightgray",borderRadius:"3px"})),Zd=s.styled(s.Box)(()=>({marginBottom:"6px",padding:"4px 0px"})),Zn=s.styled(s.Box)(()=>({display:"flex",gap:"8px",alignItems:"center",userSelect:"none"})),ec=s.styled(s.TextField)(()=>({width:"13%"})),tc=s.styled(s.Select)(()=>({width:"23%"})),ac=s.styled(s.Box)(()=>({display:"flex",gap:1,width:"100%",alignItems:"center"})),nc=s.styled(s.IconButton)(()=>({ml:"auto",color:"error"})),er=[{title:"minute",value:oa.EventNotificationPeriod.MINUTE},{title:"hour",value:oa.EventNotificationPeriod.HOUR},{title:"day",value:oa.EventNotificationPeriod.DAY}],rc=({data:e,timeValueHandler:a,timePeriodHandler:n,sendToContactHandler:r,deleteHandler:o,disabled:i=!1})=>{const d=Pe(),c=e.timeValue??0;return i?t.jsxs(Zd,{children:[t.jsx(Zn,{children:t.jsxs(s.Typography,{variant:"body1",sx:{color:"text.secondary"},children:[d("calendarView.reminders.sendReminder.pt1")," ",c," ",d(`calendarView.reminders.timePeriod.${er.find(u=>u.value===e.timePeriod)?.title||"minutes"}`)," ",d("calendarView.reminders.sendReminder.pt2")]})}),e.sendToContact&&t.jsxs(s.Typography,{variant:"body1",sx:{mt:.5,fontSize:"0.875rem",color:"text.secondary"},children:["*",d("calendarView.reminders.sendReminderToContact")]})]}):t.jsxs(Qd,{children:[t.jsxs(Zn,{children:[t.jsx(s.Typography,{variant:"body2",sx:{userSelect:"none"},children:d("calendarView.reminders.sendReminder.pt1")}),t.jsx(ec,{disabled:i,onChange:u=>a(u,e.id),value:c,type:"text",variant:"outlined",size:"small"}),t.jsx(tc,{disabled:i,onChange:u=>n(u,e.id),value:e.timePeriod,variant:"outlined",size:"small",MenuProps:{PaperProps:{sx:{backgroundColor:u=>u.palette.background.panel}}},children:er.map(u=>t.jsx(s.MenuItem,{value:u.value,children:d(`calendarView.reminders.timePeriod.${u.title}`)},u.value))}),t.jsx(s.Typography,{variant:"body2",sx:{userSelect:"none"},children:d("calendarView.reminders.sendReminder.pt2")})]}),t.jsxs(ac,{children:[t.jsx(s.FormControlLabel,{sx:{display:"flex",alignItems:"center"},disabled:i,label:d("calendarView.reminders.sendReminderToContact"),control:t.jsx(s.Checkbox,{checked:e.sendToContact,onChange:u=>r(u,e.id),color:"secondary",disabled:i})}),t.jsx(nc,{disabled:i,onClick:()=>o(e.id),sx:{ml:"auto"},children:t.jsx($t,{})})]})]})},sc=s.styled(s.Box)(()=>({display:"flex",flexDirection:"column",gap:1})),oc=s.styled(s.Box)(()=>({display:"flex",justifyContent:"space-between",alignItems:"baseline",userSelect:"none"})),ic=({notificationsField:e,disabled:a})=>{const n=Pe(),{addNotification:r,deleteNotification:o,handleReminderChange:i,handleTimeFieldChange:d,handleTimePeriodChange:c}=e.action,u=e.notifications.length>0;return t.jsxs(sc,{children:[t.jsxs(oc,{children:[t.jsx(s.Typography,{variant:"subtitle2",sx:{userSelect:"none"},children:n("calendarView.reminders.title")}),!a&&t.jsx(s.Button,{disabled:a,startIcon:t.jsx(sa,{}),size:"small",variant:"outlined",onClick:r,color:"secondary",children:n("calendarView.reminders.addReminder")})]}),t.jsx(s.Box,{sx:{pt:1},children:u?e.notifications.map(p=>t.jsx(rc,{data:p,deleteHandler:o,sendToContactHandler:i,timePeriodHandler:c,timeValueHandler:d,disabled:a},p.id)):a?t.jsx(s.Typography,{variant:"body1",sx:{py:.5},children:"-"}):null})]})},tr=({descriptionField:e,disabled:a})=>{const n=Pe(),{value:r,type:o,...i}=e.attributes,d=r||"";return a?t.jsx(We,{title:n("global.description"),children:t.jsx(s.Typography,{variant:"body2",sx:{py:.5,whiteSpace:"pre-wrap",color:c=>c.palette.text.secondary,fontSize:"0.9rem"},children:d||"-"})}):t.jsx(We,{title:n("global.description"),children:t.jsx(s.TextField,{...i,value:d,disabled:a,size:"small",multiline:!0,maxRows:5,fullWidth:!0,variant:"outlined"})})},lc=({onPlaceSelected:e})=>{const a=l.useRef(null),n=l.useRef(null),r=l.useRef(null),o=l.useRef(null),[i,d]=l.useState([]),[c,u]=l.useState(!1),p=Pe();l.useEffect(()=>{if(!a.current)return;const m=()=>{if(!window.google?.maps?.places)return console.warn("Google Places API no est\xE1 disponible a\xFAn"),!1;n.current=new window.google.maps.places.AutocompleteService;const f=document.createElement("div");return r.current=new window.google.maps.places.PlacesService(f),o.current=new window.google.maps.places.AutocompleteSessionToken,!0};if(!m()){const f=setTimeout(()=>{m()},500);return()=>clearTimeout(f)}},[]);const h=m=>{const f=m.target.value;if(!f||f.length<3||!n.current){d([]),u(!1);return}n.current.getPlacePredictions({input:f,types:["geocode"],sessionToken:o.current||void 0},(v,C)=>{C===window.google.maps.places.PlacesServiceStatus.OK&&v?(d(v),u(!0)):(d([]),u(!1))})},y=(m,f)=>{r.current&&r.current.getDetails({placeId:m,fields:["geometry","formatted_address"],sessionToken:o.current||void 0},(v,C)=>{if(C===window.google.maps.places.PlacesServiceStatus.OK&&v?.geometry?.location){const x=v.geometry.location.lat(),k=v.geometry.location.lng(),w=v.formatted_address??f;e({lat:x,lng:k},w),a.current&&(a.current.value=w),u(!1),d([]),o.current=new window.google.maps.places.AutocompleteSessionToken}})};return l.useEffect(()=>{const m=f=>{a.current&&!a.current.contains(f.target)&&u(!1)};return document.addEventListener("mousedown",m),()=>document.removeEventListener("mousedown",m)},[]),t.jsxs("div",{style:{position:"absolute",width:"100%",maxWidth:300,margin:"0 auto",zIndex:13e3,top:"10px",left:"10px"},children:[t.jsx("input",{ref:a,placeholder:p("global.searchLocation","Buscar en Google Maps"),onChange:h,onFocus:()=>i.length>0&&u(!0),style:{width:"100%",padding:"12px 16px 5px",borderRadius:"24px",border:"1px solid #ccc",backgroundColor:"white",fontSize:"15px",boxShadow:"0 1px 4px rgba(0,0,0,0.3)",outline:"none",position:"relative",zIndex:13e3}}),c&&i.length>0&&t.jsx("div",{style:{position:"absolute",top:"100%",left:0,right:0,backgroundColor:"white",borderRadius:"8px",boxShadow:"0 2px 8px rgba(0,0,0,0.15)",marginTop:"4px",maxHeight:"300px",overflowY:"auto",zIndex:13001},children:i.map(m=>t.jsxs("div",{onClick:()=>y(m.place_id,m.description),style:{padding:"12px 16px",cursor:"pointer",borderBottom:"1px solid #f0f0f0",fontSize:"14px",transition:"background-color 0.2s"},onMouseEnter:f=>{f.currentTarget.style.backgroundColor="#f5f5f5"},onMouseLeave:f=>{f.currentTarget.style.backgroundColor="white"},children:[t.jsx("div",{style:{fontWeight:500},children:m.structured_formatting.main_text}),t.jsx("div",{style:{fontSize:"12px",color:"#666",marginTop:"2px"},children:m.structured_formatting.secondary_text})]},m.place_id))})]})},ar="AIzaSyAQ1bUt3y6UoAhbi5-HAwYwaFx71pAiaKU",nr=["places"],Xa={apiKey:ar,libraries:nr,loading:"async"},xa=()=>!!(window.google?.maps?.Map&&window.google?.maps?.Marker&&window.google?.maps?.Geocoder&&window.google?.maps?.places),rr=(e=ar,a=nr)=>{if(xa())return Promise.resolve();const n=()=>{document.querySelectorAll('script[src*="maps.googleapis.com"]').forEach(r=>{r.parentNode?.removeChild(r)})};return document.getElementById("google-maps-script")?new Promise((r,o)=>{let i=0;const d=100,c=setInterval(()=>{i++,xa()?(clearInterval(c),r()):i>=d&&(clearInterval(c),n(),rr(e,a).then(r).catch(o))},100)}):new Promise((r,o)=>{try{n();const i="initGoogleMaps";window[i]=()=>{xa()?r():setTimeout(()=>{xa()||console.warn("Google Maps API se carg\xF3 pero algunos componentes no est\xE1n disponibles"),r()},500)};const d=document.createElement("script");d.id="google-maps-script",d.type="text/javascript";const c=Array.isArray(a)?a.join(","):a;d.src=`https://maps.googleapis.com/maps/api/js?key=${e}&libraries=${c}&callback=${i}&loading=async`,d.async=!0,d.defer=!0,d.onerror=()=>{delete window[i],o(new Error("Error al cargar Google Maps API"))},document.head.appendChild(d)}catch(i){o(i)}})},Jt=(e,a,n=18,r=400,o=400,i="red",d=Xa.apiKey)=>`https://maps.googleapis.com/maps/api/staticmap?center=${e},${a}&zoom=${n}&size=${r}x${o}&markers=color:${i}%7Clabel:A%7C${e},${a}&key=${d}`,dc=({onLocationChange:e,initialLocation:a})=>{const n=l.useRef(null),r=l.useRef(null),o=l.useRef(null),i=l.useRef(null),[d,c]=l.useState(!0),[u,p]=l.useState(!1),[h,y]=l.useState(a||null),m=18,f=l.useCallback(w=>{y(w),e(w)},[e]);l.useEffect(()=>{let w=!0;(async()=>{try{if(await rr(Xa.apiKey,Xa.libraries),!window.google?.maps?.Map||!window.google?.maps?.Geocoder){console.error("Google Maps APIs no est\xE1n completamente disponibles"),c(!1);return}window.google?.maps?.Geocoder&&(i.current=new window.google.maps.Geocoder),c(!1)}catch(A){console.error("Error al cargar Google Maps:",A),c(!1)}})(),a||navigator.geolocation.getCurrentPosition(A=>{const S=A.coords.latitude,T=A.coords.longitude,D=S.toString(),$=T.toString(),B=Jt(S,T,m);f({lat:D,lng:$,title:"",description:"",url:B})},A=>{console.error("Error getting location:",A);const S=-34.6037,T=-58.3816;f({lat:S.toString(),lng:T.toString(),title:"",description:"",url:Jt(S,T,m)})})},[a,f,m]),l.useEffect(()=>{if(d||r.current)return;const w=setTimeout(()=>{r.current||v()},50);return()=>clearTimeout(w)},[d]),l.useEffect(()=>{u&&h&&x()},[u,h]),l.useEffect(()=>()=>{o.current&&(o.current.setMap(null),o.current=null)},[]);const v=()=>{if(!n.current){console.warn("Contenedor del mapa no disponible");return}if(!window.google?.maps){console.warn("Google Maps API no disponible a\xFAn");return}try{const w={zoom:m,disableDefaultUI:!1,zoomControl:!0,mapTypeControl:!1,streetViewControl:!1,fullscreenControl:!1};r.current=new window.google.maps.Map(n.current,w),r.current.addListener("click",A=>{C(A)}),p(!0)}catch(w){console.error("Error inicializando mapa:",w)}},C=w=>{if(!w.latLng||!i.current)return;const A={lat:w.latLng.lat(),lng:w.latLng.lng()};o.current?o.current.setPosition(A):r.current&&(o.current=new window.google.maps.Marker({position:A,map:r.current})),i.current.geocode({location:A},(S,T)=>{if(T==="OK"&&S&&S[0]){const D=S[0].formatted_address,$=Jt(A.lat,A.lng,m);f({lat:A.lat.toString(),lng:A.lng.toString(),title:D||"",description:"",url:$})}else{const D=Jt(A.lat,A.lng,m);f({lat:A.lat.toString(),lng:A.lng.toString(),title:`${A.lat.toFixed(6)}, ${A.lng.toFixed(6)}`,description:"",url:D})}})},x=()=>{if(!(!r.current||!h))try{const w={lat:parseFloat(h.lat),lng:parseFloat(h.lng)};r.current.setCenter(w),o.current?o.current.setPosition(w):o.current=new window.google.maps.Marker({position:w,map:r.current})}catch(w){console.error("Error actualizando mapa:",w)}},k=(w,A)=>{const S=Jt(w.lat,w.lng,m);f({lat:w.lat.toString(),lng:w.lng.toString(),title:A||"",description:"",url:S})};return d?t.jsx(s.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:t.jsx(s.CircularProgress,{})}):t.jsxs(s.Box,{sx:{position:"relative",height:"calc(100vh - 305px)"},children:[t.jsx(lc,{onPlaceSelected:k}),t.jsx("div",{style:{height:"100%"},ref:n})]})},cc=({open:e,onClose:a,onSelectLocation:n,initialAddress:r})=>{const o=Pe(),[i,d]=l.useState(null),c=l.useRef(null);l.useEffect(()=>{e||d(null)},[e]),l.useEffect(()=>{c.current&&i&&(c.current.scrollTop=c.current.scrollHeight/4)},[i]);const u=l.useCallback(h=>{d(h)},[]),p=l.useCallback(()=>{i&&(n(i.title||`${i.lat}, ${i.lng}`,i.lat,i.lng),a())},[i,n,a]);return t.jsxs(s.Dialog,{open:e,onClose:a,maxWidth:"md",fullWidth:!0,disableEnforceFocus:!0,disableAutoFocus:!0,PaperProps:{sx:{maxHeight:"80vh",height:"80vh"}},sx:{"& .MuiDialog-paper":{backgroundColor:h=>h.palette.background.panel}},children:[t.jsxs(s.Box,{sx:{position:"relative",display:"flex",alignItems:"center",p:2},children:[t.jsx(s.Typography,{variant:"body1",sx:{flex:1},children:o("global.selectLocation","Seleccionar ubicaci\xF3n")}),t.jsx(s.IconButton,{"aria-label":"close",onClick:a,size:"small",children:t.jsx(Da,{fontSize:"small"})})]}),t.jsx(s.DialogContent,{sx:{p:0,display:"flex",flexDirection:"column",height:"100%"},children:t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",overflow:"hidden",width:"100%",height:"100%",position:"relative"},children:[t.jsx(s.Box,{ref:c,sx:{width:"100%",flex:1,overflow:"auto",zIndex:1},children:t.jsx(dc,{onLocationChange:u,initialLocation:void 0})}),t.jsx(s.Divider,{sx:{width:"100%",padding:0}}),t.jsxs(s.Box,{sx:{width:"100%",display:"flex",justifyContent:"flex-end",gap:".5rem",p:2},children:[t.jsx(s.Button,{variant:"outlined",color:"error",size:"small",sx:{borderRadius:"0.5rem"},onClick:a,children:o("global.cancel","Cancelar")}),t.jsx(s.Button,{variant:"outlined",color:"secondary",size:"small",sx:{borderRadius:"0.5rem"},onClick:p,disabled:!i,children:o("global.selectLocation","Seleccionar ubicaci\xF3n")})]})]})})]})},uc=({locationField:e,disabled:a})=>{const n=Pe(),[r,o]=l.useState(!1),{value:i,type:d,...c}=e.attributes,u=i||"",p=()=>{a||o(!0)},h=()=>{o(!1)},y=m=>{e.actions.changeValue(m)};return a?t.jsx(s.Box,{children:t.jsx(We,{title:n("global.location","Ubicaci\xF3n"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[u&&t.jsx(an,{sx:{opacity:.5,color:m=>m.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"body1",sx:{color:m=>m.palette.text.secondary,fontSize:"0.9rem"},children:u||"-"})]})})}):t.jsxs(s.Box,{children:[t.jsx(We,{title:n("global.location","Ubicaci\xF3n"),children:t.jsx(s.TextField,{...c,value:u,disabled:a,size:"small",fullWidth:!0,variant:"outlined",placeholder:n("global.addLocation","Agregar ubicaci\xF3n"),onClick:p,InputProps:{startAdornment:t.jsx(an,{sx:{mr:1,opacity:.5},fontSize:"small"}),readOnly:!0},sx:{cursor:a?"default":"pointer","& .MuiInputBase-input":{cursor:a?"default":"pointer"}}})}),t.jsx(cc,{open:r,onClose:h,onSelectLocation:y,initialAddress:u})]})},pc=({handleScroll:e,contactList:a,handleSelectContact:n,selectedContactIds:r,search:o})=>{const i=Pe(),d=s.useTheme();return t.jsx(s.List,{sx:{width:"100%",height:"100%",overflow:"auto",border:`1px solid ${d.palette.divider}`,borderTop:"none",backgroundColor:d.palette.background.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.12))"},onScroll:e,children:o&&a?.map(c=>t.jsxs(s.ListItemButton,{sx:{width:"100%"},onClick:()=>n(c),selected:r.includes(c.id),children:[t.jsx(s.ListItemIcon,{children:t.jsx(Me.Person,{sx:{color:u=>u.palette.text.disabled}})}),t.jsx(s.ListItemText,{primary:i(c.name),secondary:c?.phone})]},c.id))})},fc={format:"IContact",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"};function gc(e){const a=l.useRef(null),n=l.useRef(null),[r,o]=l.useState([]),[i,d]=l.useState(!1),[c,u]=l.useState(!1),[p,h]=l.useState(!1),[y,m]=l.useState(!1),[f,v]=l.useState(1),[C,x]=l.useState(!1),k=l.useCallback(()=>{n.current?.abort(),n.current=null,a.current&&(clearTimeout(a.current),a.current=null),d(!1),x(!1),v(1),m(!1),o([])},[]),w=D=>D.filter($=>!!$?.id),A=l.useCallback(async({query:D,page:$})=>{if(!e)return;n.current?.abort();const B=new AbortController;n.current=B,u(!0);try{const I={...fc,currentPage:$,filter:[{value:D,column:"name",condition:""}]},U=await Kd({baseUrl:e.baseUrl,spaceId:e.spaceId,pagination:I,signal:B.signal});if(B.signal.aborted)return;const P=w(U?.contactos??[]);d(!0);const _=U?.paginacion?.total??0;o(V=>{const R=$===1?P:(()=>{const O=new Map;for(const q of V)O.set(q.id,q);for(const q of P)O.set(q.id,q);return Array.from(O.values())})();return _&&R.length>=_&&x(!0),R})}finally{u(!1),h(!1),m(!1)}},[e]),S=l.useCallback(D=>{k(),D&&(a.current&&(clearTimeout(a.current),a.current=null),h(!0),a.current=setTimeout(()=>{A({query:D,page:1})},800))},[A,k]),T=l.useCallback((D,$)=>{const B=D.target;if(!(B.scrollHeight-B.scrollTop-B.clientHeight<1)||C||c||!$)return;const I=f+1;m(!0),v(I),A({query:$,page:I})},[C,c,f,A]);return{contactList:r,hasSearched:i,isLoading:c,isLoadingTimer:p,isNextPage:y,handleQueryChanged:S,handleScroll:T,resetSearchState:k}}const sr=({linkContactsHandler:e,disabled:a=!1})=>{const n=Pe(),r=Vn(),o=l.useRef(null),[i,d]=l.useState(null),[c,u]=l.useState(""),{action:{handleSearchChange:p,handleSelectContact:h,handleRemoveContact:y},state:{search:m,selectedContact:f}}=e,{contactList:v,hasSearched:C,isLoading:x,isLoadingTimer:k,handleQueryChanged:w,handleScroll:A,resetSearchState:S}=gc(r),T=m||"",D=!!i&&T.length>0&&!a&&!f;l.useEffect(()=>{u(f?f.name:T)},[f?.id,f?.name,T]),l.useEffect(()=>{T?w(T):S()},[T,w,S]);const $=P=>{u(P),f&&P!==f.name&&y(),p(P),P&&!i?d(o.current):P||d(null)},B=P=>{u(P.name),h(P),d(null),S()},I=()=>{u(""),y()},U=()=>{d(null)};return a?t.jsx(We,{title:n("global.linkContacts"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[f&&t.jsx(nn,{sx:{opacity:.5,color:P=>P.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"body1",sx:{color:P=>P.palette.text.secondary,fontSize:"0.9rem"},children:c||"-"})]})}):t.jsx(s.ClickAwayListener,{onClickAway:U,children:t.jsxs(s.Box,{children:[t.jsx(We,{title:n("global.linkContacts"),children:t.jsx(s.TextField,{ref:o,fullWidth:!0,size:"small",placeholder:n("global.searchContacts"),value:c,onChange:P=>$(P.target.value),onFocus:()=>{c&&!f&&d(o.current)},InputProps:{startAdornment:t.jsx(s.InputAdornment,{position:"start",children:t.jsx(nn,{sx:{opacity:.5},fontSize:"small"})}),endAdornment:f?t.jsx(s.InputAdornment,{position:"end",children:t.jsx(s.IconButton,{size:"small",edge:"end",onClick:I,children:t.jsx(Da,{fontSize:"small"})})}):x||k?t.jsx(s.InputAdornment,{position:"end",children:t.jsx(s.CircularProgress,{size:18})}):null}})}),t.jsx(s.Popper,{open:D,anchorEl:i,placement:"bottom-start",style:{width:i?.offsetWidth||"auto",zIndex:1300},children:t.jsxs(s.Paper,{elevation:8,sx:{mt:.5,maxHeight:300,overflow:"hidden"},children:[C&&v.length>0&&t.jsx(pc,{handleScroll:P=>A(P,T),contactList:v,handleSelectContact:B,selectedContactIds:[],search:T}),C&&v.length===0&&t.jsx(s.Box,{sx:{p:2,textAlign:"center",color:"text.secondary"},children:t.jsx(s.Typography,{variant:"body2",children:n("global.noResults","No se encontraron resultados")})})]})})]})})},mc=({isFinalized:e})=>{const{eventDialog:{handleClose:a},handleCreateEvent:n,dialogMode:r,handleStartEditingEvent:o,handleSaveUpdatedEvent:i,handleEndEvent:d,dialogType:c,handleCreateTask:u,handleSaveUpdatedTask:p,selectedTask:h,handleToggleTaskCompleted:y,event:m,task:f,eventCalendarId:v,taskCalendarId:C,isCreatingEvent:x,isUpdatingEvent:k,isCreatingTask:w,isUpdatingTask:A}=l.useContext(Ga),S=Pe(),T=c==="event",D=x,$=k,B=!1,I=w,U=A,P=()=>{T?n():u()},_=(()=>{if(r==="view")return o;if(r==="edit")return T?()=>i?.():()=>p?.();if(r==="create")return P})(),V=S(r==="view"?T?"global.editEvent":"global.editTask":r==="edit"?T?"global.saveEvent":"global.saveTask":T?"global.createEvent":"global.createTask"),R=T?D||$:I||U,O=()=>{if(r==="view")return!0;const he=T?m:f,L=T?v:C;return he?.titleField?.attributes?.value?.trim().length>0&&!!L},q=T?D||$||e||!O():I||U||e||!O(),ae=!T&&r==="view",de=h?.isCompleted||!1;return ae?t.jsx(s.DialogActions,{children:t.jsx(tt.LoadingButton,{startIcon:t.jsx(Me.CheckCircleOutline,{}),size:"small",loading:U,disabled:U,onClick:y,variant:"contained",color:de?"inherit":"primary",children:de?S("global.markAsIncomplete","Marcar como incompleta"):S("global.markAsCompleted","Marcar como completada")})}):t.jsxs(s.DialogActions,{children:[t.jsx(s.Button,{variant:"outlined",size:"small",onClick:a,color:"secondary",children:S("global.cancel")}),T&&(r==="edit"||r==="view")&&t.jsx(tt.LoadingButton,{startIcon:t.jsx(Me.EventAvailable,{}),size:"small",disabled:e,loading:B,onClick:d,variant:"contained",children:S("global.finalizeEvent")}),t.jsx(tt.LoadingButton,{startIcon:t.jsx(Me.EditCalendar,{}),size:"small",loading:R,disabled:q,onClick:_,variant:"contained",children:V})]})},or={textTransform:"none",borderRadius:2,minHeight:34,px:1.5,fontSize:13,fontWeight:500,lineHeight:1.1},hc=({value:e,onChange:a,labels:n})=>t.jsxs(s.Box,{sx:{display:"flex",gap:1},children:[t.jsx(s.Button,{size:"small",onClick:()=>a("event"),variant:e==="event"?"contained":"text",disableElevation:!0,color:"primary",sx:{...or},children:n.event}),t.jsx(s.Button,{size:"small",onClick:()=>a("task"),variant:e==="task"?"contained":"text",disableElevation:!0,sx:{...or},color:"primary",children:n.task})]}),yc="DD/MM/YYYY",xc="HH:mm",bc=({selectedDateTime:e,handleSelect:a,disabled:n,isError:r=!1,hideLabel:o=!1})=>{const i=Pe(),d=u=>{if(!u)return;const p=u.hour(e.hour()).minute(e.minute());a(p)},c=u=>{if(!u)return;const p=e.hour(u.hour()).minute(u.minute());a(p)};return n?t.jsxs(ha,{children:[!o&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:i("global.date")}),t.jsxs(s.Box,{children:[t.jsx(s.Typography,{variant:"body1",sx:{mb:1},children:e.format(yc)}),t.jsx(s.Typography,{variant:"body1",children:e.format(xc)})]})]}):t.jsxs(ha,{children:[!o&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:i("global.date")}),t.jsx(Ya,{children:t.jsxs(Xe.LocalizationProvider,{dateAdapter:tn.AdapterDayjs,children:[t.jsx(Xe.DatePicker,{disabled:n,value:e,onChange:d,slotProps:{textField:()=>({label:i("global.date"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:u=>u.palette.background.panel}}}},sx:{alignSelf:"baseline",flex:1},minDate:Q()}),t.jsx(Ka,{variant:"body1",children:"_"}),t.jsx(Xe.TimePicker,{disabled:n,value:e,onChange:c,ampm:!1,slotProps:{textField:()=>({label:i("global.time"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:u=>u.palette.background.panel}}}},sx:{alignSelf:"baseline",flex:1}})]})}),t.jsx(s.Fade,{in:r,children:t.jsx(s.Typography,{color:"red",variant:"caption",children:i("conversations.sidebar.events.errorDate")})})]})},ir=({disabled:e,calendars:a,userId:n,value:r,onChange:o,loading:i=!1})=>{const d=Pe(),c=l.useMemo(()=>a??[],[a]),u=l.useMemo(()=>{const p=c.find(h=>h.id===r);return e&&r&&!p&&!i&&console.warn("TaskCalendarSelect: Calendario no encontrado",{calendarId:r,availableCalendars:c.map(h=>({id:h.id,title:h.title})),totalCalendars:c.length}),p??null},[c,r,e,i]);if(e){if(i)return t.jsx(We,{title:d("global.calendar"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[t.jsx(s.CircularProgress,{size:16,sx:{opacity:.5}}),t.jsx(s.Typography,{variant:"subtitle2",sx:{color:h=>h.palette.text.secondary,fontSize:"0.9rem"},children:d("global.loading","Cargando...")})]})});const p=u?u.title:r?d("global.calendarNotFound","Calendario no disponible"):"-";return t.jsx(We,{title:d("global.calendar"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[u&&t.jsx(ns,{sx:{opacity:.5,color:h=>h.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"subtitle2",sx:{color:h=>h.palette.text.secondary,fontSize:"0.9rem"},children:p})]})})}return t.jsx(We,{title:d("global.calendar"),children:t.jsx(s.Autocomplete,{disabled:e||i,size:"small",fullWidth:!0,options:c,value:u,onChange:(p,h)=>o(h?.id??""),getOptionLabel:p=>p?.title??"",isOptionEqualToValue:(p,h)=>p.id===h.id,loading:i,groupBy:n?p=>p.userId===n?d("calendarView.myCalendars"):d("calendarView.othersCalendars"):void 0,renderGroup:p=>t.jsxs("li",{children:[t.jsx(s.ListSubheader,{component:"div",sx:{lineHeight:"32px",fontSize:"0.75rem",fontWeight:600,color:"text.secondary",backgroundColor:h=>h.palette.background.panel},children:p.group}),t.jsx("ul",{style:{padding:0},children:p.children})]},p.key),slotProps:{popper:{sx:{zIndex:1400}},paper:{sx:{backgroundColor:p=>p.palette.background.panel}}},renderInput:p=>t.jsx(s.TextField,{...p,placeholder:d("global.selectCalendar"),InputProps:{...p.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[i?t.jsx(s.CircularProgress,{color:"inherit",size:20}):null,p.InputProps.endAdornment]})}})})})},vc=({checked:e,onChange:a,disabled:n})=>{const r=Pe();return t.jsx(s.Box,{sx:{display:"flex",alignItems:"center"},children:t.jsx(s.FormControlLabel,{control:t.jsx(s.Checkbox,{checked:e,onChange:o=>a(o.target.checked),disabled:n,color:"secondary"}),label:r("global.allDay","Todo el d\xEDa")})})},Cc=({colorField:e,disabled:a,onColorChange:n})=>{const r=Pe(),o=e.attributes.value||"#1976d2",i=(c=>{if(c.startsWith("#"))return c;const u=c.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);if(u&&u[1]&&u[2]&&u[3]){const p=parseInt(u[1]),h=parseInt(u[2]),y=parseInt(u[3]),m=f=>{const v=f.toString(16);return v.length===1?"0"+v:v};return`#${m(p)}${m(h)}${m(y)}`}return"#1976d2"})(o),d=c=>{const u=c.target.value;n?n(u):e.actions.changeValue(u)};return a?t.jsx(We,{title:r("global.color","Color"),children:t.jsxs(s.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:[t.jsx(s.Box,{sx:{width:40,height:40,backgroundColor:i,border:"1px solid rgba(0, 0, 0, 0.23)",borderRadius:1}}),t.jsx(s.Typography,{variant:"body2",sx:{color:"text.secondary"},children:i})]})}):t.jsx(We,{title:r("global.color","Color"),children:t.jsx(s.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:t.jsx("input",{type:"color",value:i,onChange:d,disabled:a,style:{width:60,height:40,border:"1px solid rgba(0, 0, 0, 0.23)",borderRadius:4,cursor:a?"not-allowed":"pointer"}})})})},lr=[{value:"",label:"global.noRepeat"},{value:"FREQ=DAILY",label:"global.everyDay"},{value:"FREQ=WEEKLY",label:"global.everyWeek"},{value:"FREQ=MONTHLY",label:"global.everyMonth"},{value:"FREQ=YEARLY",label:"global.everyYear"},{value:"FREQ=DAILY;INTERVAL=2",label:"global.everyTwoDays"},{value:"FREQ=WEEKLY;INTERVAL=2",label:"global.everyTwoWeeks"},{value:"FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR",label:"global.everyWeekday"}],Sc=({value:e,onChange:a,disabled:n,hideLabel:r=!1})=>{const o=Pe(),i=p=>{a(p.target.value)},d=l.useMemo(()=>lr.map(p=>t.jsx(s.MenuItem,{value:p.value,children:o(p.label,p.label)},p.value)),[o]),c=l.useMemo(()=>{const p=lr.find(h=>h.value===e);return p?o(p.label,p.label):o("global.noRepeat")},[e,o]);if(n)return r?t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(Fa,{sx:{opacity:.5,color:p=>p.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"body2",children:c})]}):t.jsx(We,{title:o("global.recurrence","Recurrencia"),children:t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[t.jsx(Fa,{sx:{opacity:.5,color:p=>p.palette.text.secondary},fontSize:"small"}),t.jsx(s.Typography,{variant:"body1",children:c})]})});const u=t.jsx(s.Select,{disabled:n,size:"small",variant:"outlined",fullWidth:!0,value:e||"",onChange:i,startAdornment:t.jsx(Fa,{sx:{mr:1,ml:1,opacity:.5},fontSize:"small"}),MenuProps:{PaperProps:{sx:{backgroundColor:p=>p.palette.background.panel}}},children:d});return r?u:t.jsx(We,{title:o("global.recurrence","Recurrencia"),children:u})},jc=({open:e,onClose:a,onConfirm:n,itemTitle:r,itemType:o})=>{const{t:i}=Je.useTranslation(),d=()=>{n(),a()},c=o==="event"?i("calendar.deleteEvent","Eliminar evento"):i("calendar.deleteTask","Eliminar tarea"),u=o==="event"?i("calendar.confirmDeleteEvent","\xBFEst\xE1s seguro de que quer\xE9s eliminar este evento?"):i("calendar.confirmDeleteTask","\xBFEst\xE1s seguro de que quer\xE9s eliminar esta tarea?");return t.jsxs(s.Dialog,{open:e,onClose:a,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:p=>p.palette.background.panel}},children:[t.jsxs(s.DialogTitle,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(rs,{color:"warning"}),c]}),t.jsxs(s.DialogContent,{children:[t.jsx(s.Typography,{variant:"body2",sx:{mb:2},children:u}),r&&t.jsx(s.Box,{sx:{p:1.5,bgcolor:"action.hover",borderRadius:1,borderLeft:3,borderColor:"warning.main"},children:t.jsxs(s.Typography,{variant:"body2",sx:{fontWeight:500},children:['"',r,'"']})})]}),t.jsxs(s.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(s.Button,{onClick:a,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:i("global.cancel","Cancelar")}),t.jsx(s.Button,{onClick:d,variant:"contained",color:"error",sx:{borderRadius:"8px"},children:i("global.delete","Eliminar")})]})]})},wc=({open:e,onClose:a,onConfirm:n,eventTitle:r})=>{const{t:o}=Je.useTranslation(),[i,d]=l.useState("single"),c=()=>{n(i==="all"),a()},u=()=>{d("single"),a()};return t.jsxs(s.Dialog,{open:e,onClose:u,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:p=>p.palette.background.panel}},children:[t.jsx(s.DialogTitle,{children:o("calendar.deleteRecurringEvent","Borrar evento recurrente")}),t.jsxs(s.DialogContent,{children:[r&&t.jsxs(s.Box,{sx:{mb:2,color:"text.secondary",fontSize:"0.875rem"},children:['"',r,'"']}),t.jsx(s.FormControl,{component:"fieldset",fullWidth:!0,children:t.jsxs(s.RadioGroup,{value:i,onChange:p=>d(p.target.value),children:[t.jsx(s.FormControlLabel,{value:"single",control:t.jsx(s.Radio,{color:"secondary"}),label:o("calendar.deleteThisEvent","Este evento"),sx:{mb:1}}),t.jsx(s.FormControlLabel,{value:"all",control:t.jsx(s.Radio,{color:"secondary"}),label:o("calendar.deleteAllEvents","Todos los eventos")})]})})]}),t.jsxs(s.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(s.Button,{onClick:u,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:o("global.cancel","Cancelar")}),t.jsx(s.Button,{onClick:c,variant:"contained",color:"error",sx:{borderRadius:"8px"},children:o("global.delete","Eliminar")})]})]})},Tc=({open:e,onClose:a,onConfirm:n,eventTitle:r})=>{const{t:o}=Je.useTranslation(),[i,d]=l.useState("single"),c=()=>{n(i==="all"),a()},u=()=>{d("single"),a()};return t.jsxs(s.Dialog,{open:e,onClose:u,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:p=>p.palette.background.panel}},children:[t.jsx(s.DialogTitle,{children:o("calendar.editRecurringEvent","Editar evento recurrente")}),t.jsxs(s.DialogContent,{children:[r&&t.jsxs(s.Box,{sx:{mb:2,color:"text.secondary",fontSize:"0.875rem"},children:['"',r,'"']}),t.jsx(s.FormControl,{component:"fieldset",fullWidth:!0,children:t.jsxs(s.RadioGroup,{value:i,onChange:p=>d(p.target.value),children:[t.jsx(s.FormControlLabel,{value:"single",control:t.jsx(s.Radio,{color:"secondary"}),label:o("calendar.editThisEvent","Este evento"),sx:{mb:1}}),t.jsx(s.FormControlLabel,{value:"all",control:t.jsx(s.Radio,{color:"secondary"}),label:o("calendar.editAllEvents","Todos los eventos")})]})})]}),t.jsxs(s.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(s.Button,{onClick:u,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:o("global.cancel","Cancelar")}),t.jsx(s.Button,{onClick:c,variant:"contained",color:"secondary",sx:{borderRadius:"8px"},children:o("global.save","Guardar")})]})]})},Ic=()=>{const e=Pe(),{event:a,task:n,dialogMode:r,selectedEvent:o,handleDeleteEvent:i,handleStartEditingEvent:d,handleDuplicateItem:c,dialogType:u,setDialogType:p,selectedTask:h,taskCalendarId:y,setTaskCalendarId:m,eventCalendarId:f,setEventCalendarId:v,myCalendars:C,otherCalendars:x,isLoadingCalendars:k,handleDeleteTask:w,userManuallyChangedColor:A,setUserManuallyChangedColor:S,eventDialog:{open:T,handleClose:D},confirmDeleteDialog:$,handleConfirmDelete:B,deleteRecurringDialog:I,handleConfirmDeleteRecurring:U,editRecurringDialog:P,handleConfirmEditRecurring:_,hiddenTabs:V,savingSnackbar:R,handleCloseSnackbar:O}=l.useContext(Ga);if(!a||!n)return t.jsx(s.Modal,{open:T,onClose:D,closeAfterTransition:!0,slots:{backdrop:s.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(s.Fade,{in:T,timeout:200,children:t.jsx(s.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:G=>G.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"}})})});const q=u==="event",ae=q?a:n,de=q?o:h,he=l.useRef(null);l.useEffect(()=>{T||(he.current=null)},[T]);const{titleField:L,descriptionField:j,date:F,linkContact:E}=ae,M=q?a.notifications:null,Y=q?{locationField:a.locationField,colorField:a.colorField,allDay:a.allDay,setAllDay:a.setAllDay,isPrivate:a.isPrivate,setIsPrivate:a.setIsPrivate,recurrenceRule:a.recurrenceRule,setRecurrenceRule:a.setRecurrenceRule}:null,ye=e(r==="edit"?q?"global.editEvent":"global.editTask":r==="create"?q?"global.createEvent":"global.createTask":q?"global.showEvent":"global.showTask"),le=(r==="edit"||r==="view")&&!!de?.id,ge=r==="view";l.useEffect(()=>{if(r!=="create"||u!=="event"||!T||A||!f)return;const G=C.find(ne=>ne.id===f);G?.color&&a.colorField.actions.changeValue(G.color)},[r,u,T,f,A,C]),l.useEffect(()=>{if(!T||u!=="event"||r!=="edit")return;const G=F.state.selectedStartDate.isAfter(F.state.selectedEndDate)&&!F.state.selectedStartDate.isSame(F.state.selectedEndDate,"minute");he.current!==G&&(he.current=G,F.action.setError(G))},[T,u,r,F.state.selectedStartDate.valueOf(),F.state.selectedEndDate.valueOf()]);const xe=G=>{if(G==="task"){const ne=a.date.state.selectedStartDate;n.date.action.setSelectedStartDate(ne),n.date.action.setSelectedEndDate(ne),n.date.action.setError(!1),a.date.action.setError(!1)}else{const ne=n.date.state.selectedStartDate;a.date.action.setSelectedStartDate(ne),a.date.action.setError(!1),n.date.action.setError(!1)}p(G)},Se=G=>{a.colorField.actions.changeValue(G),S(!0)};return t.jsxs(t.Fragment,{children:[t.jsx(s.Modal,{open:T,onClose:D,closeAfterTransition:!0,slots:{backdrop:s.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(s.Fade,{in:T,timeout:200,children:t.jsxs(s.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",maxHeight:"calc(100vh - 64px)",bgcolor:G=>G.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:[t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",gap:2,p:3,pt:4,overflowY:"auto",flex:1},children:[t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",justifyContent:r==="create"?"flex-end":"space-between",gap:1,mb:.5},children:[r!=="create"&&t.jsx(s.Typography,{sx:{fontWeight:600},children:ye}),t.jsxs(s.Box,{sx:{display:"flex",gap:1},children:[ge&&t.jsx(s.IconButton,{size:"small",onClick:d,"aria-label":e("global.edit","Editar"),children:t.jsx(bt,{fontSize:"small"})}),le&&t.jsx(s.IconButton,{size:"small",onClick:q?i:w,color:"error","aria-label":e("global.delete","Eliminar"),children:t.jsx($t,{fontSize:"small"})}),ge&&t.jsx(s.IconButton,{size:"small",onClick:c,"aria-label":e("global.duplicate","Duplicar"),children:t.jsx(ss,{fontSize:"small"})})]})]}),r==="create"&&t.jsxs(t.Fragment,{children:[t.jsx(Ja,{disabled:!1,titleField:L,variantMode:"inline"}),!V&&t.jsx(hc,{value:u,onChange:xe,labels:{event:e("global.event","Evento"),task:e("global.task","Tarea")}})]}),u==="event"?t.jsxs(t.Fragment,{children:[r!=="create"&&t.jsx(Ja,{disabled:r==="view",titleField:L}),t.jsx(tr,{disabled:r==="view",descriptionField:j}),t.jsx(ir,{disabled:r==="view",calendars:[...C,...x],userId:C[0]?.userId,value:f,onChange:G=>v(G),loading:k}),t.jsxs(s.Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,borderRadius:1,padding:"15px",bgcolor:G=>G.palette.mode==="dark"?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.02)"},children:[t.jsx(s.Box,{sx:{display:"flex",gap:1.5,alignItems:"flex-start"},children:t.jsx(s.Box,{sx:{flex:1},children:t.jsx(Xd,{disabled:r==="view",selectedStartDate:F.state.selectedStartDate,selectedEndDate:F.state.selectedEndDate,handleSelectStart:F.action.handleSelect(F.action.setSelectedStartDate),handleSelectEnd:F.action.handleSelect(F.action.setSelectedEndDate),isError:F.state.error,hideLabel:!0,allDay:Y?.allDay??!1})})}),Y&&t.jsxs(s.Box,{sx:{display:"flex",gap:2,alignItems:"center"},children:[t.jsx(vc,{checked:Y.allDay,onChange:Y.setAllDay,disabled:r==="view"}),t.jsx(s.Box,{sx:{flex:1},children:t.jsx(Sc,{disabled:r==="view",value:Y.recurrenceRule,onChange:Y.setRecurrenceRule,hideLabel:!0})})]})]}),Y&&t.jsx(t.Fragment,{children:t.jsx(Cc,{disabled:r==="view",colorField:Y.colorField,onColorChange:r==="create"?Se:void 0})}),M&&t.jsx(ic,{disabled:r==="view",notificationsField:M}),t.jsx(sr,{linkContactsHandler:E,disabled:r==="view"}),Y&&t.jsx(uc,{disabled:r==="view",locationField:Y.locationField})]}):t.jsxs(t.Fragment,{children:[r!=="create"&&t.jsx(Ja,{disabled:r==="view",titleField:L}),t.jsx(tr,{disabled:r==="view",descriptionField:j}),t.jsx(ir,{disabled:r==="view",calendars:[...C,...x],userId:C[0]?.userId,value:y,onChange:G=>m(G),loading:k}),t.jsx(s.Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,p:2,borderRadius:1,bgcolor:G=>G.palette.mode==="dark"?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.02)"},children:t.jsxs(s.Box,{sx:{display:"flex",gap:1.5,alignItems:"flex-start"},children:[t.jsx(os,{sx:{mt:.5,color:"text.secondary",fontSize:"1.25rem"}}),t.jsx(s.Box,{sx:{flex:1},children:t.jsx(bc,{disabled:r==="view",selectedDateTime:F.state.selectedStartDate,handleSelect:G=>{F.action.setSelectedStartDate(G),F.action.setSelectedEndDate(G),F.action.setError(!1)},isError:F.state.error,hideLabel:!0})})]})}),t.jsx(sr,{linkContactsHandler:E,disabled:r==="view"})]})]}),t.jsx(s.Box,{sx:{borderTop:1,borderColor:"divider",p:2},children:t.jsx(mc,{isFinalized:o?.finalized})})]})})}),t.jsx(jc,{open:$.open,onClose:$.handleClose,onConfirm:B,itemTitle:$.itemType==="event"?o?.title:h?.title,itemType:$.itemType}),t.jsx(wc,{open:I.open,onClose:I.handleClose,onConfirm:U,eventTitle:o?.title}),t.jsx(Tc,{open:P.open,onClose:P.handleClose,onConfirm:_,eventTitle:o?.title}),t.jsx(s.Snackbar,{open:R.open,autoHideDuration:6e3,onClose:O,anchorOrigin:{vertical:"bottom",horizontal:"center"},children:t.jsx(s.Alert,{onClose:O,severity:R.severity,sx:{width:"100%"},variant:"filled",children:R.message})})]})},dr=e=>{const a=e.palette.background;return s.createTheme({...e,components:{MuiSelect:{defaultProps:{MenuProps:{PaperProps:{sx:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}}}},MuiAutocomplete:{styleOverrides:{popper:{zIndex:11,"& div":{backgroundColor:a.panel}}}},MuiPaper:{styleOverrides:{root:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}},MuiMenu:{styleOverrides:{paper:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}},MuiList:{styleOverrides:{root:{padding:0}}},MuiModal:{styleOverrides:{root:{}}},MuiTypography:{styleOverrides:{root:{color:e.palette.text.primary}}},MuiChip:{styleOverrides:{root:{color:e.palette.text.primary,border:"1px solid rgba(0, 0, 0, 0.1)",borderRadius:"4px",height:"20px",fontSize:"0.7125rem"}}},MuiListSubheader:{styleOverrides:{root:{backgroundColor:a.accordionHeader}}},MuiButton:{styleOverrides:{outlined:{color:e.palette.mode==="light"?e.palette.primary.dark:e.palette.info.dark,borderColor:e.palette.mode==="light"?e.palette.primary.dark:e.palette.info.dark,"&:hover":{borderColor:e.palette.mode==="light"?e.palette.primary.main:e.palette.info.main,color:e.palette.mode==="light"?e.palette.primary.main:e.palette.info.main}}}}}})},kc=e=>{const{open:a,onClose:n,baseUrl:r,spaceId:o,language:i="en",mode:d="create",type:c="event",eventCalendarId:u,taskCalendarId:p,selectedEvent:h,selectedTask:y,hiddenTabs:m=!1,onActionComplete:f,contactId:v,initialStartDate:C,initialEndDate:x}=e,{i18n:k}=Je.useTranslation();l.useEffect(()=>{i&&k.changeLanguage(i)},[i,k]);const w=l.useMemo(()=>({baseUrl:r,spaceId:o}),[r,o]);return t.jsx(cd,{value:w,children:t.jsx(Jd,{externalOpen:a,externalOnClose:n,externalMode:d,externalType:c,externalEventCalendarId:u,externalTaskCalendarId:p,externalSelectedEvent:h,externalSelectedTask:y,hiddenTabs:m,externalOnActionComplete:f,externalContactId:v,externalInitialStartDate:C,externalInitialEndDate:x,children:t.jsx(Ic,{})})})},Ec=e=>{const a=s.useTheme(),n=a?.palette?a:s.createTheme(),r=dr(n);return t.jsx(s.ThemeProvider,{theme:r,children:t.jsx(Je.I18nextProvider,{i18n:wt,children:t.jsx(kc,{...e})})})},ba=s.createTheme({name:"lightBlueIndigo",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#ebf6fd",mainGradient:"linear-gradient(270deg, #215c97, #1976d2)",navMenu:"#1976d2",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#1976d2",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#1976d2",light:"#42a5f5",dark:"#1565c0",contrastText:"#fff"},secondary:{main:"#1976d2",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#ebf6fd",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#1976d2"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#1976d2"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),cr=s.createTheme({name:"lightBlue",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#e3f2fd",mainGradient:"linear-gradient(270deg, #005cb2, #1e88e5)",navMenu:"#4fc354",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#1e88e5",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#1e88e5",light:"#6ab7ff",dark:"#005cb2",contrastText:"#fff"},secondary:{main:"#1e88e5",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#e3f2fd",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#1e88e5"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#1e88e5"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),ur=s.createTheme({name:"lightRed",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#ffebee",mainGradient:"linear-gradient(270deg, #b61827, #ef5350)",navMenu:"#f44336",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#ef5350",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#ef5350",light:"#ff867c",dark:"#b61827",contrastText:"#fff"},secondary:{main:"#ef5350",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#ffebee",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#ef5350"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#ef5350"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),pr=s.createTheme({name:"lightGreen",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#e8f5e9",mainGradient:"linear-gradient(270deg, #087f23, #4caf50)",navMenu:"#4fc354",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#4caf50",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#4caf50",light:"#80e27e",dark:"#087f23",contrastText:"#fff"},secondary:{main:"#4caf50",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#e8f5e9",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#4caf50"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#4caf50"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),fr=s.createTheme({name:"lightPink",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fce4ec",mainGradient:"linear-gradient(270deg, #b0003a, #e91e63)",navMenu:"#e91e63",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#e91e63",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#e91e63",light:"#ff6090",dark:"#b0003a",contrastText:"#fff"},secondary:{main:"#9c27b0",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fce4ec",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#e91e63"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#e91e63"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),gr=s.createTheme({name:"lightPurple",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#f3e5f5",mainGradient:"linear-gradient(270deg, #6a0080, #9c27b0)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#9c27b0",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#9c27b0",light:"#d05ce3",dark:"#6a0080",contrastText:"#fff"},secondary:{main:"#9c27b0",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#f3e5f5",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#9c27b0"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#9c27b0"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),mr=s.createTheme({name:"lightTeal",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#e0f2f1",mainGradient:"linear-gradient(270deg, #00675b, #009688)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#009688",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#009688",light:"#52c7b8",dark:"#00675b",contrastText:"#fff"},secondary:{main:"#009688",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#e0f2f1",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#009688"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#009688"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),hr=s.createTheme({name:"lightLime",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#f9fbe7",mainGradient:"linear-gradient(270deg, #99aa00, #cddc39)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#cddc39",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#cddc39",light:"#ffff6e",dark:"#99aa00",contrastText:"#fff"},secondary:{main:"#cddc39",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#f9fbe7",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#cddc39"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#cddc39"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),yr=s.createTheme({name:"lightYellow",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fffde7",mainGradient:"linear-gradient(270deg, #c8b900, #ffeb3b)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#ffeb3b",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#ffeb3b",light:"#ffff72",dark:"#c8b900",contrastText:"#fff"},secondary:{main:"#ffeb3b",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fffde7",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#ffeb3b"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#ffeb3b"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),xr=s.createTheme({name:"lightAmber",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fff8e1",mainGradient:"linear-gradient(270deg, #c68400, #ffb300)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#ffb300",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#ffb300",light:"#ffe54c",dark:"#c68400",contrastText:"#fff"},secondary:{main:"#ffb300",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fff8e1",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#ffb300"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#ffb300"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),br=s.createTheme({name:"lightOrange",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fff3e0",mainGradient:"linear-gradient(270deg, #c66900, #ff9800)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#ff9800",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#ff9800",light:"#ffc947",dark:"#c66900",contrastText:"#fff"},secondary:{main:"#ff9800",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fff3e0",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#ff9800"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#ff9800"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),vr=s.createTheme({name:"lightBrown",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#efebe9",mainGradient:"linear-gradient(270deg, #4b2c20, #795548)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#795548",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#795548",light:"#a98274",dark:"#4b2c20",contrastText:"#fff"},secondary:{main:"#795548",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#efebe9",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#795548"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#795548"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),Cr=s.createTheme({name:"lightGray",palette:{mode:"light",background:{default:"#ffffff",mainCenter:"#fafafa",mainGradient:"linear-gradient(270deg, #707070, #9e9e9e)",navMenu:"#f8bbd0",dropdownMenu:"#f5f5f5",panel:"#ffffff",tooltip:"#9e9e9e",accordionHeader:"#F3F4F6",panelHeader:"#F3F4F6",panelCenter:"#ffffff",panelGradient:"#ffffff",paper:"#ffffff"},primary:{main:"#9e9e9e",light:"#cfcfcf",dark:"#707070",contrastText:"#fff"},secondary:{main:"#9e9e9e",light:"#ba68c8",dark:"#7b1fa2",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#d32f2f",light:"#ef5350",dark:"#c62828"},warning:{main:"#ed6c02",light:"#ff9800",dark:"#e65100"},info:{main:"#0288d1",light:"#03a9f4",dark:"#01579b"},success:{main:"#2e7d32",light:"#4caf50",dark:"#1b5e20"},containerBox:{default:"#ffffff",main:"#f5f5f5"},action:{active:"rgba(0, 0, 0, 0.10)",hover:"rgba(0, 0, 0, 0.05)",selected:"#fafafa",disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.58)",colorMain:"#9e9e9e"},divider:"rgba(0, 0, 0, 0.12)",dropdownBox:"#ffffff",color:{icons:"#9e9e9e"},cellHeader:"#d3d3d3",Skeleton:{bg:"#f5f5f5"},messageBox:"#d3e6fd",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),Sr=s.createTheme({name:"darkBlue",palette:{mode:"dark",primary:{main:"#1f5c8e",light:"#2196f3",dark:"#0d47a1",contrastText:"#fff"},secondary:{light:"#FFEA41",main:"#90caf9",dark:"#DBBE01",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#f44336",light:"#e57373",dark:"#d32f2f"},warning:{main:"#ffa726",light:"#ffb74d",dark:"#f57c00"},info:{main:"#29b6f6",light:"#4fc3f7",dark:"#0288d1"},success:{main:"#66bb6a",light:"#81c784",dark:"#388e3c"},background:{default:"#222B45",mainGradient:"linear-gradient(270deg, #222B45, #222B45)",mainCenter:"#28324e",navMenu:"#222B45",panel:"#2d364e",dropdownMenu:"#484f65",tooltip:"#484f65",accordionHeader:"#2a3249e3",panelHeader:"#2a3249e3",panelCenter:"#484f65",panelGradient:"#384057",paper:"#2d364e"},containerBox:{default:"#2d354e",main:"#2d354e"},action:{active:"rgba(255, 255, 255, 0.2)",hover:"rgba(255, 255, 255, 0.08)",selected:"rgba(255, 255, 255, 0.16)",disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"#EEEEEF",secondary:"#AEB0B4",disabled:"rgba(255, 255, 255, 0.5)",colorMain:"#EEEEEF"},divider:"rgba(255, 255, 255, 0.12)",dropdownBox:"#2d354e",color:{icons:"#fff"},cellHeader:"#505050",Skeleton:{bg:"#f5f5f5"},messageBox:"#1f5c8e",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),jr=s.createTheme({name:"darkBlack",palette:{mode:"dark",background:{default:"#201f1e",mainGradient:"linear-gradient(270deg, #201f1e, #201f1e)",mainCenter:"#252423",navMenu:"#201f1e",panel:"#3B3A39",dropdownMenu:"#585858",tooltip:"#616161eb",accordionHeader:"#25242369",panelHeader:"#3b3a39ba",panelCenter:"#585858",panelGradient:"#454443",paper:"#3B3A39"},primary:{main:"#1976d2",light:"#2196f3",dark:"#42a5f5",contrastText:"#fff"},secondary:{light:"#FFEA41",main:"#90caf9",dark:"#DBBE01",contrastText:"rgba(0, 0, 0, 0.87)"},error:{main:"#f44336",light:"#e57373",dark:"#d32f2f"},warning:{main:"#ffa726",light:"#ffb74d",dark:"#f57c00"},info:{main:"#29b6f6",light:"#4fc3f7",dark:"#0288d1"},success:{main:"#66bb6a",light:"#81c784",dark:"#388e3c"},containerBox:{main:"#ffffffb3",default:"#3B3A39"},action:{active:"rgba(255, 255, 255, 0.2)",hover:"rgba(255, 255, 255, 0.08)",selected:"rgba(255, 255, 255, 0.16)",disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)"},text:{primary:"#EEEEEF",secondary:"#AEB0B4",disabled:"rgba(255, 255, 255, 0.5)",colorMain:"#EEEEEF"},divider:"rgba(255, 255, 255, 0.12)",dropdownBox:"#3B3A39",color:{icons:"#fff"},cellHeader:"#505050",Skeleton:{bg:"#f5f5f5"},messageBox:"#1f5c8e",boxShadow:"rgba(0, 0, 0, 0.1)",disabled:"rgba(0, 0, 0, 0.26)"}}),Ac="https://agent-api.trii.app/api/v1/settings/user/setTheme",Dc={themeSelected:ba,darkMode:!1,toggleStatus:"idle"},wr=rn.createAsyncThunk("Theme/updateTheme",async(e,{getState:a})=>{const{uid:n}=a().User.user,r=JSON.stringify({theme:e,uid:n});return(await is.put(Ac,r)).data}),Tr=rn.createSlice({name:"Theme",initialState:Dc,reducers:{toggleTheme:(e,a)=>{const n=Ir(a.payload);Object.assign(e,{themeSelected:n,toggleStatus:"toggled"})},toggleModeTheme:e=>{e.darkMode=!e.darkMode}},extraReducers:e=>{e.addCase(wr.fulfilled,(a,n)=>{const r=Ir(n.payload.theme);Object.assign(a,{themeSelected:r})})}}),Ir=e=>{switch(e){case"lightBlueIndigo":return ba;case"darkBlack":return jr;case"darkBlue":return Sr;case"lightAmber":return xr;case"lightBlue":return cr;case"lightBrown":return vr;case"lightGray":return Cr;case"lightGreen":return pr;case"lightLime":return hr;case"lightOrange":return br;case"lightPink":return fr;case"lightPurple":return gr;case"lightRed":return ur;case"lightTeal":return mr;case"lightYellow":return yr;default:return ba}},Fc=e=>["lightBlueIndigo","darkBlack","darkBlue","lightAmber","lightBlue","lightBrown","lightGray","lightGreen","lightLime","lightOrange","lightPink","lightPurple","lightRed","lightTeal","lightYellow"].includes(e),{toggleTheme:Bc,toggleModeTheme:Mc}=Tr.actions,$c=e=>e.Theme.toggleStatus,Pc=e=>e.Theme.themeSelected,Uc=e=>e.Theme.darkMode;Tr.reducer,exports.ContactInfoPopup=Ma,exports.EditContactModal=dd,exports.EventsDialog=Ec,exports.MuiComponentsConfig=dr,exports.darkBlack=jr,exports.darkBlue=Sr,exports.i18n=wt,exports.isValidThemeName=Fc,exports.lightAmber=xr,exports.lightBlue=cr,exports.lightBlueIndigo=ba,exports.lightBrown=vr,exports.lightGray=Cr,exports.lightGreen=pr,exports.lightLime=hr,exports.lightOrange=br,exports.lightPink=fr,exports.lightPurple=gr,exports.lightRed=ur,exports.lightTeal=mr,exports.lightYellow=yr,exports.selectThemeToggleStatus=$c,exports.selectedDarkTheme=Uc,exports.selectedTheme=Pc,exports.toggleModeTheme=Mc,exports.toggleTheme=Bc,exports.updateTheme=wr;
|
|
17
17
|
//# sourceMappingURL=index.js.map
|