@trii/components 2.0.91 → 2.0.92
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 +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/package.json +1 -1
- 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/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
|
@@ -13,7 +13,7 @@ Check the top-level render call using <`+z+">.")}return $}}function kt(f,$){{if(
|
|
|
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} />`,At,Qe,Ta,Qe),rt[Qe+At]=!0}}return f===r?gt(ve):Sa(ve),ve}}function Et(f,$,z){return vt(f,$,z,!0)}function Dt(f,$,z){return vt(f,$,z,!1)}var ja=Dt,wa=Et;Rt.Fragment=r,Rt.jsx=ja,Rt.jsxs=wa})()),Rt}process.env.NODE_ENV==="production"?Aa.exports=ts():Aa.exports=as();var t=Aa.exports;es(t);const ns=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})),an=s.styled(s.IconButton)({padding:4}),rs=s.styled(s.Box)({display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"16px",position:"relative"}),ss=s.styled(s.Avatar)({width:60,height:60,marginBottom:8}),os=s.styled(s.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:200,textAlign:"center"}),is=s.styled(s.Box)({display:"flex",justifyContent:"center",alignItems:"center",width:60,height:60,marginBottom:8}),ls=({imgUrl:e,name:a,contactId:n,navigate:r,isLoading:o=!1,onError:i,onClose:d,isBusiness:c=!1})=>{const u=l.useCallback(v=>g=>{try{if(g.preventDefault(),g.stopPropagation(),!v)throw new Error("Navigation URL is required");g.ctrlKey||g.metaKey||g.button===1?window.open(v,"_blank","noopener,noreferrer"):r(v)}catch(S){i?.(S instanceof Error?S:new Error("Navigation failed"))}},[r,i]),{t:p}=Ye.useTranslation(),m=u(c?`/a/contacts/business/${n}`:`/a/contacts/contacts/${n}`),y=u(`/a/conversations/conversations?contactId=${n}`),x=!!a,h=a||p("contactName.noName"),C=`Avatar for ${h}`;return t.jsxs(rs,{children:[t.jsxs(ns,{children:[t.jsx(an,{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(Ar,{fontSize:"small"})}),t.jsx(an,{color:"info",size:"small",onClick:v=>{y(v),d()},onMouseDown:v=>{v.button===1&&(y(v),d())},"aria-label":"Go to conversations",children:t.jsx(Fr,{fontSize:"small"})})]}),o?t.jsx(is,{children:t.jsx(s.CircularProgress,{size:24})}):t.jsx(ss,{src:e,alt:C,onError:()=>i?.(new Error("Failed to load avatar"))}),t.jsx(os,{variant:"h6",title:h,sx:x?void 0:{color:"text.disabled",fontStyle:"italic"},children:h})]})},ds=s.styled(s.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),cs=s.styled(s.Box)({width:"100%",borderBottom:"1px solid lightgray"}),us=s.styled(s.Box)({display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:1,minHeight:"50px",position:"relative",maxWidth:"inherit"}),ps=s.styled(s.Box)(({theme:e})=>({marginTop:"-20px",padding:0,color:e.palette.primary.main})),fs=s.styled(s.Box)({display:"flex",maxWidth:"90%",gap:"10px",width:"100%",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",alignItems:"center"}),gs=s.styled(s.Box)({display:"flex",flexDirection:"column",height:"50px",maxWidth:"90%",minWidth:0,overflow:"hidden"}),ms=s.styled(s.Typography)({whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",maxWidth:"90%",position:"absolute",bottom:16,left:40}),hs=({icon:e,contactList:a,title:n,showTitle:r=!0})=>{const o=i=>t.jsx(us,{children:t.jsxs(fs,{children:[t.jsx(ps,{children:e}),t.jsxs(gs,{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(ms,{variant:"body2",fontSize:12,color:"text.secondary",children:i.note})]})},i.id);return t.jsxs(ds,{children:[r&&t.jsx(cs,{children:t.jsx(s.Typography,{variant:"subtitle1",fontWeight:"bold",gutterBottom:!0,mt:2,children:n})}),a?.map(o)]})},ys=s.styled(s.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),xs=s.styled(s.Typography)({borderBottom:"1px solid lightgray",width:"100%"}),bs=s.styled(s.Box)({display:"flex",alignItems:"center",gap:8,width:"100%",minWidth:0}),vs=s.styled(s.Typography)({fontSize:14,wordBreak:"break-word",overflowWrap:"anywhere",minWidth:0}),Cs=s.styled(Be.Handyman)(({theme:e})=>({color:e.palette.primary.main,fontSize:16})),Ss=({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=mt(o,mt.ISO_8601).isValid(),c=u=>mt(o).format(u);switch(i){case ae.ContactField_type.TIME:return d?c("HH:mm"):o;case ae.ContactField_type.DATE:return d?c("DD/MM/YYYY"):o;case ae.ContactField_type.TIMERANGE:case ae.ContactField_type.DATERANGE:if(d)return i===ae.ContactField_type.TIMERANGE?c("HH:mm"):c("DD/MM/YYYY");const u=o.split(" ");if(u.length===2){const[p,m]=u,y=i===ae.ContactField_type.TIMERANGE?mt(p).format("HH:mm"):mt(p).format("DD/MM/YYYY"),x=i===ae.ContactField_type.TIMERANGE?mt(m).format("HH:mm"):mt(m).format("DD/MM/YYYY");return`${y} - ${x}`}return o;default:return o}}return o};return t.jsxs(ys,{children:[t.jsx(xs,{fontWeight:"bold",gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.map((o,i)=>o.value?.length>0&&t.jsxs(bs,{children:[t.jsx(Cs,{}),t.jsxs(vs,{children:[n(o.nameKey),":"," ",r(o.value,o.type)]})]},i))]})},js=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),ws=s.styled(s.Box)({marginBottom:16}),Ts=s.styled(s.Chip)(({theme:e})=>({marginRight:8,marginBottom:8,backgroundColor:`${e.palette.primary.main}b3`})),Is=({contactData:e,title:a})=>!e||!e.tags?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(js,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(ws,{children:e?.tags?.filter(n=>n.name?.trim()).map(n=>t.jsx(Ts,{label:n.name,color:"primary",size:"small"},n.id))})]});function nn(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 ks=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Es=({contactData:e,title:a})=>!e||!nn(e)?null:t.jsxs(t.Fragment,{children:[t.jsx(ks,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(s.Typography,{variant:"body2",color:"text.secondary",children:e?.businessName})]});function rn(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 Ds=({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})},As=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Fs=({contactData:e,title:a,navigate:n})=>!e||!rn(e)||!e.members?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(As,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.members.map(r=>t.jsx(Ds,{memberId:String(r.id),name:r.name,navigate:n},r.id))]});var Bs="Labels",$s="Phone",Ms="Business",Ps="Business Members",Us="Properties",Rs="View",Ns="Tags",Ls={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"},Os={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"},zs={noName:"No name"},_s={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"},Ws={upload:"Upload photo",delete:"Delete photo"},Vs={from:"From",to:"To"},Hs={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"}}},Gs={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"},qs={labels:Bs,phone:$s,business:Ms,businessMembers:Ps,properties:Us,view:Rs,tags:Ns,global:Ls,searchLocationModal:Os,contactName:zs,contactAddressError:_s,avatar:Ws,contactEdit:Vs,conversations:Hs,calendarView:Gs},Ys="Etiquetas",Ks="Tel\xE9fono",Js="Empresa",Xs="Miembros de la empresa",Qs="Propiedades",Zs="Ver",eo="Etiquetas",to={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"},ao={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"},no={noName:"Sin nombre"},ro={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"},so={upload:"Subir foto",delete:"Eliminar foto"},oo={from:"Desde",to:"Hasta"},io={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"}}},lo={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"},co={labels:Ys,phone:Ks,business:Js,businessMembers:Xs,properties:Qs,view:Zs,tags:eo,global:to,searchLocationModal:ao,contactName:no,contactAddressError:ro,avatar:so,contactEdit:oo,conversations:io,calendarView:lo};const uo={en:{translation:qs},es:{translation:co}},Nt=Br.createInstance();Nt.use(Ye.initReactI18next).init({resources:uo,lng:"en",fallbackLng:"en",interpolation:{escapeValue:!1},react:{useSuspense:!1}});const sn=(e="",a="",n=Ft.Spaces.nameFormat.FIRST_LAST)=>{const r=e?.trim()||"",o=a?.trim()||"";switch(n){case Ft.Spaces.nameFormat.FIRST_LAST:return`${r} ${o}`.trim();case Ft.Spaces.nameFormat.LAST_FIRST:return`${o} ${r}`.trim();case Ft.Spaces.nameFormat.FIRST_COMMA_LAST:return r&&o?`${r}, ${o}`:r||o;case Ft.Spaces.nameFormat.LAST_COMMA_FIRST:return r&&o?`${o}, ${r}`:o||r;default:return`${r} ${o}`.trim()}},po=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}=Ye.useTranslation();l.useEffect(()=>{d&&p.changeLanguage(d)},[d,p]);const m=u,y=rn(r),x=nn(r),h=r?x?sn(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=g=>{g.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(po,{children:t.jsxs(s.CardContent,{children:[t.jsx(ls,{navigate:i,contactId:r?.id,imgUrl:o,name:h,onClose:n,isBusiness:y}),t.jsx(Is,{contactData:r,title:m("labels")}),x&&t.jsx(Es,{contactData:r,title:m("business")}),y&&t.jsx(Fs,{contactData:r,title:m("businessMembers"),navigate:i}),C.map((v,g)=>t.jsx(hs,{icon:v.icon,title:v.title,contactList:v.contactList,showTitle:v.showTitle},g)),t.jsx(Ss,{properties:r?.properties,title:m("properties")})]})})})})},on=e=>t.jsx(Ye.I18nextProvider,{i18n:Nt,children:t.jsx(fo,{...e})}),ln=e=>e,dn=l.createContext(ln),go=({t:e,children:a})=>t.jsx(dn.Provider,{value:e,children:a}),ye=()=>{const e=l.useContext(dn);return e?(...a)=>{const[n,...r]=a;return e(n,...r)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),ln)},mo=({tags:e,onEditTags:a})=>{const n=ye(),[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)},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(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($r,{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")}),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))})]})})]})},cn=l.createContext(null),ho=cn.Provider,ut=()=>l.useContext(cn),yo=s.styled(s.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:360,textAlign:"center"}),xo=s.styled(s.Box)({display:"flex",alignItems:"center",justifyContent:"center",width:"100%"}),bo=s.styled(s.Box)({position:"relative",display:"flex",justifyContent:"center",maxWidth:"100%","&:hover .edit-icon":{opacity:1,visibility:"visible"}}),vo=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%)"})),Co=({displayName:e,contactType:a,firstName:n,lastName:r,name:o,entityId:i,onEntityUpdated:d})=>{const c=ut(),u=ye(),[p,m]=l.useState(!1),[y,x]=l.useState(!1),[h,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")){x(!0);try{let S={};a==="contact"?S={firstName:h.firstName,lastName:h.lastName}:a==="business"&&(S={name:h.name});const w=await c.updateEntity({entityType:a,entityId:i,body:S});w&&d&&d(w),m(!1)}catch(S){console.error("Failed to update name",S)}finally{x(!1)}}},g=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:h.firstName,onChange:S=>C({...h,firstName:S.target.value}),size:"small",placeholder:"First Name",sx:{width:140}}),t.jsx(s.TextField,{value:h.lastName,onChange:S=>C({...h,lastName:S.target.value}),size:"small",placeholder:"Last Name",sx:{width:140}})]}):t.jsx(s.TextField,{value:h.name,onChange:S=>C({...h,name:S.target.value}),size:"small",placeholder:"Name",sx:{width:280}}),t.jsx(s.IconButton,{onClick:v,disabled:y,color:"primary",children:y?t.jsx(s.CircularProgress,{size:24}):t.jsx(Be.Save,{})})]}):t.jsx(xo,{children:t.jsxs(bo,{children:[t.jsx(yo,{variant:"h6",title:e||u("contactName.noName"),sx:e?void 0:{color:"text.disabled",fontStyle:"italic"},children:e||u("contactName.noName")}),g&&t.jsx(vo,{size:"small",onClick:()=>m(!0),className:"edit-icon",alwaysVisible:!e,sx:{ml:1},children:t.jsx(Be.Edit,{fontSize:"small"})})]})})},So=({src:e,alt:a,onError:n,onUpload:r,onDelete:o,isUploading:i,isDeleting:d})=>{const c=ye();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(Mr,{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(aa,{fontSize:"small"})})]})]})},jo=s.styled(s.Box)({display:"flex",flexDirection:"column",alignItems:"center",gap:"4px",marginBottom:"20px",position:"relative"}),wo=({imgUrl:e,displayName:a,onError:n,tags:r,onEditTags:o,onUploadPhoto:i,onPhotoFileChange:d,photoInputRef:c,isUploadingPhoto:u,onDeletePhoto:p,isDeletingPhoto:m,contactType:y,firstName:x,lastName:h,name:C,entityId:v,onEntityUpdated:g})=>{const S=`Avatar for ${a}`;return t.jsxs(jo,{children:[t.jsx("input",{ref:c,type:"file",accept:"image/*",onChange:d,style:{display:"none"}}),t.jsx(So,{src:e,alt:S,onError:()=>n?.(new Error("Failed to load avatar")),onUpload:i,isUploading:u,onDelete:p,isDeleting:m}),t.jsx(Co,{displayName:a,contactType:y,firstName:x,lastName:h,name:C,entityId:v,onEntityUpdated:g}),t.jsx(mo,{tags:r,onEditTags:o})]})},Fa=20,To=e=>{const{popperContainer:a,...n}=e;return t.jsx(Pr,{...n,container:a??n.container,style:{...n.style??{},zIndex:2e4}})},Io=({value:e,options:a,onChange:n,onBack:r,onSave:o,isSaving:i,onCreateNew:d,isCreatingNew:c,popperContainer:u})=>{const p=ye(),[m,y]=l.useState(""),[x,h]=l.useState(Fa),C=l.useDeferredValue(m),v=l.useMemo(()=>a??[],[a]),g=l.useMemo(()=>{const D=String(C??"").trim().toLowerCase();return D?v.filter(P=>String(P?.name??"").toLowerCase().includes(D)):v},[v,C]),S=l.useMemo(()=>g.slice(0,x),[g,x]),w=l.useMemo(()=>{const D=new Map;for(const P of e??[])P?.id&&D.set(String(P.id),P);for(const P of S??[])P?.id&&(D.has(String(P.id))||D.set(String(P.id),P));return Array.from(D.values())},[e,S]),T=(D,P)=>{y(P??""),h(Fa)},I=D=>{const P=D;P.scrollTop+P.clientHeight>=P.scrollHeight-24&&h(M=>M+Fa)},k=()=>{const D=String(m??"").trim(),P=!D||i||c;return t.jsxs(s.Box,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[p("global.noOptions"),t.jsx(ot.LoadingButton,{onClick:()=>d(D),loading:c,disabled:P,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(Ea,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:p("tags")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(ot.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(ht,{}),onClick:o,loading:i,disabled:i,children:p("global.save")})]}),t.jsx(s.Autocomplete,{multiple:!0,disablePortal:!1,value:e,onChange:(D,P)=>n(P),options:w,filterOptions:D=>D,inputValue:m,onInputChange:T,getOptionLabel:D=>D?.name??"",isOptionEqualToValue:(D,P)=>String(D?.id)===String(P?.id),PopperComponent:D=>t.jsx(To,{...D,popperContainer:u}),renderOption:(D,P)=>{const{key:M,...F}=D;return l.createElement("li",{...F,key:P?.id?String(P.id):String(M??P?.name??"")},P.name??"")},renderTags:(D,P)=>D.map((M,F)=>{const N=P({index:F}),{key:U,...O}=N;return t.jsx(s.Chip,{label:M.name??"",...O},M?.id?String(M.id):String(U??M?.name??F))}),size:"small",renderInput:D=>t.jsx(s.TextField,{...D,size:"small"}),ListboxProps:{onScroll:I,sx:{maxHeight:280,overflowY:"auto"}},noOptionsText:t.jsx(k,{}),sx:{width:"100%"}})]})};var ko=Object.defineProperty,Eo=(e,a,n)=>a in e?ko(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,un=(e,a,n)=>Eo(e,typeof a!="symbol"?a+"":a,n);let pn=class extends Error{constructor(a,n,r){super(a),un(this,"status"),un(this,"body"),this.name="ApiError",this.status=n,this.body=r}};async function ze({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 pn(c,i.status,d)}return d}async function Do({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 pn(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 Ao({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=Ie(r.CONTACTS,"/labels");return ze({url:o,signal:n})}async function fn({baseUrl:e,spaceId:a,name:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/labels");return ze({url:i,method:"POST",body:{name:n},signal:r})}async function Fo({baseUrl:e,spaceId:a,contactId:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return ze({url:i,signal:r})}async function Bo({baseUrl:e,spaceId:a,businessId:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,`/business/${encodeURIComponent(n)}`);return ze({url:i,signal:r})}async function $o({baseUrl:e,spaceId:a,forType:n,signal:r}){const o=Le(e,a),i=`${Ie(o.CONTACTS,"/ContactFields")}?filter=custom&for=${encodeURIComponent(n)}`;return ze({url:i,signal:r})}async function Ze({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 ze({url:u,method:"PUT",body:o,signal:i})}async function Mo({baseUrl:e,spaceId:a,pagination:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/Search");return ze({url:i,method:"POST",body:n,signal:r})}async function Po({baseUrl:e,spaceId:a,business:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/business");return ze({url:i,method:"POST",body:n,signal:r})}async function ra({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/contactAddresses");return ze({url:i,method:"DELETE",body:n,signal:r})}async function Uo({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/contactAddresses/check");return ze({url:i,method:"POST",body:n,signal:r})}async function Ro({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/contactAddresses/set");return ze({url:i,method:"POST",body:n,signal:r})}async function No({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,`/contactAddresses/${encodeURIComponent(n.contactAddressId)}`);return ze({url:i,method:"PUT",body:n,signal:r})}async function gn({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=Ie(r.SETTINGS,"/user");return ze({url:o,signal:n})}async function Lo({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=Ie(r.SETTINGS,"/users");return ze({url:o,signal:n})}async function Oo({baseUrl:e,spaceId:a,signal:n,userId:r}){const o=Le(e,a),i=Ie(o.SETTINGS,`/usersInfo/${r}`);return ze({url:i,signal:n})}async function mn({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 Do({url:c,formData:d,signal:o})}const hn=(e,a)=>({fetchLabels:({signal:n}={})=>Ao({baseUrl:e,spaceId:a,signal:n}),createLabel:({name:n,signal:r})=>fn({baseUrl:e,spaceId:a,name:n,signal:r}),fetchContact:({contactId:n,signal:r})=>Fo({baseUrl:e,spaceId:a,contactId:n,signal:r}),fetchBusiness:({businessId:n,signal:r})=>Bo({baseUrl:e,spaceId:a,businessId:n,signal:r}),fetchBusinessTableData:({pagination:n,signal:r})=>Mo({baseUrl:e,spaceId:a,pagination:n,signal:r}),createBusiness:({business:n,signal:r})=>Po({baseUrl:e,spaceId:a,business:n,signal:r}),fetchContactFields:({forType:n,signal:r})=>$o({baseUrl:e,spaceId:a,forType:n,signal:r}),updateEntity:({entityType:n,entityId:r,body:o,signal:i})=>Ze({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:o,signal:i}),deleteAddress:({data:n,signal:r})=>ra({baseUrl:e,spaceId:a,data:n,signal:r}),deleteAddres:({data:n,signal:r})=>ra({baseUrl:e,spaceId:a,data:n,signal:r}),checkContactAddress:({data:n,signal:r})=>Uo({baseUrl:e,spaceId:a,data:n,signal:r}),setContactAddress:({data:n,signal:r})=>Ro({baseUrl:e,spaceId:a,data:n,signal:r}),updateContactAddress:({data:n,signal:r})=>No({baseUrl:e,spaceId:a,data:n,signal:r}),fetchUserTrii:({signal:n}={})=>gn({baseUrl:e,spaceId:a,signal:n}),fetchUsers:({signal:n}={})=>Lo({baseUrl:e,spaceId:a,signal:n}),fetchUserTriiById:({userId:n,signal:r})=>Oo({baseUrl:e,spaceId:a,userId:n,signal:r}),uploadAvatar:({contactId:n,file:r,signal:o})=>mn({baseUrl:e,spaceId:a,contactId:n,file:r,signal:o})}),yn=()=>!!window?.google?.maps?.places?.Autocomplete,zo=(e=1e4)=>new Promise(a=>{if(yn()){a(!0);return}const n=Date.now(),r=window.setInterval(()=>{if(yn()){window.clearInterval(r),a(!0);return}Date.now()-n>e&&(window.clearInterval(r),a(!1))},100)}),_o=()=>{const[e,a]=l.useState(!1),[n,r]=l.useState(!0),[o,i]=l.useState(null);return l.useEffect(()=>{(async()=>{try{const d=await zo(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}},Wo=({onPlaceSelected:e,onError:a,placeholder:n})=>{const r=ye(),o=l.useRef(null),i=l.useRef(null),d=l.useRef(e),c=l.useRef(a),{isLoaded:u,isLoading:p,error:m}=_o(),y=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 x=window?.google;if(!x?.maps?.places?.Autocomplete){c.current?.(r("searchLocationModal.googleMapsUnavailable"));return}o.current.focus();let h=null;const C=()=>{document.querySelectorAll(".pac-container").forEach(g=>{const S=g;S.style.zIndex="20000",S.style.position="fixed"})};h=new MutationObserver(g=>{for(const S of g)for(const w of Array.from(S.addedNodes)){if(w.nodeType!==Node.ELEMENT_NODE)continue;const T=w;T.classList?.contains("pac-container")&&(T.style.zIndex="20000",T.style.position="fixed")}}),h.observe(document.body,{childList:!0,subtree:!0}),C(),window.setTimeout(C,100),i.current=new x.maps.places.Autocomplete(o.current,{types:["geocode"],componentRestrictions:{country:"ar"}});const v=i.current.addListener?.("place_changed",()=>{const g=i.current?.getPlace?.();if(!g?.geometry?.location){c.current?.(r("searchLocationModal.selectedPlaceNoLocation"));return}let S="",w="",T="",I="",k="",D="";const P=g.address_components??[];for(const U of P){const O=U?.types??[];if(O.includes("locality")||O.includes("administrative_area_level_2")){S=U.long_name;continue}if(O.includes("administrative_area_level_1")){w=U.long_name;continue}if(O.includes("country")){T=U.long_name;continue}if(O.includes("postal_code")){I=U.long_name;continue}if(O.includes("route")){k=U.long_name;continue}O.includes("street_number")&&(D=U.long_name)}const M=typeof g.geometry.location.lat=="function"?g.geometry.location.lat():0,F=typeof g.geometry.location.lng=="function"?g.geometry.location.lng():0,N={location:{lat:M,lng:F},address:g.formatted_address??"",city:S,state:w,country:T,postalCode:I,streetName:k,streetNumber:D,shortAddress:[k,D].filter(Boolean).join(" ")};d.current(N)});return()=>{h&&h.disconnect(),v?.remove&&v.remove(),i.current=null}},[u,r]),t.jsx(s.TextField,{fullWidth:!0,size:"small",inputRef:o,placeholder:y,disabled:p||!u||!!m,error:!!m})},Vo={street:"",city:"",state:"",zipcode:"",country:""},Ho=({baseUrl:e,spaceId:a,entityType:n,entityId:r,onBack:o,onEntityUpdated:i})=>{const d=ye(),[c,u]=l.useState(Vo),[p,m]=l.useState(""),[y,x]=l.useState(""),[h,C]=l.useState(!1),[v,g]=l.useState(!1),S=l.useMemo(()=>!!(String(c.street??"").trim()||String(c.city??"").trim()||String(c.state??"").trim()||String(c.zipcode??"").trim()||String(c.country??"").trim()),[c]),w=M=>{m(M.address??"");const F=String(M.shortAddress??"").trim()||[M.streetName,M.streetNumber].filter(Boolean).join(" ").trim();u({street:F,city:M.city??"",state:M.state??"",zipcode:M.postalCode??"",country:M.country??""}),x("")},T=M=>{x(String(M??""))},I=M=>F=>{const N=F.target.value;u(U=>({...U,[M]:N}))},k=async()=>{if(!h&&!(!e||!a)&&r){C(!0);try{const M=await Ze({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?.(M),o()}finally{C(!1)}}},D=async()=>{if(!v&&!(!e||!a)&&r){g(!0);try{const M=await Ze({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?.(M),o()}finally{g(!1)}}},P=!S||h||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(Ea,{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(Wo,{onPlaceSelected:w,onError:T,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:I("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:I("city"),fullWidth:!0,size:"medium"}),t.jsx(s.TextField,{label:d("searchLocationModal.state"),value:c.state,onChange:I("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:I("zipcode"),fullWidth:!0,size:"medium"}),t.jsx(s.TextField,{label:d("searchLocationModal.country"),value:c.country,onChange:I("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(ot.LoadingButton,{variant:"contained",size:"large",startIcon:t.jsx(ht,{}),onClick:k,loading:h,disabled:P,children:d("searchLocationModal.saveMainAddress")}),t.jsx(ot.LoadingButton,{variant:"outlined",size:"large",startIcon:t.jsx(ht,{}),onClick:D,loading:v,disabled:P,children:d("searchLocationModal.saveSecondaryAddress")})]})]})]})};function Ba(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 xn(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")}function Go({open:e,baseUrl:a,spaceId:n,contactId:r,contactNameFormat:o}){const i=l.useRef(null),d=l.useMemo(()=>!a||!n?null:hn(a,n),[a,n]),[c,u]=l.useState({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}),p=l.useMemo(()=>!!(e&&d&&r),[e,d,r]);l.useEffect(()=>{e||(i.current?.abort(),u({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}))},[e]);const m=l.useMemo(()=>!!(e&&d),[e,d]);l.useEffect(()=>{if(!m||!d)return;const h=new AbortController;return u(C=>({...C,labelsLoading:!0,labelsError:null})),d.fetchLabels({signal:h.signal}).then(C=>{u(v=>({...v,labels:C,labelsLoading:!1,labelsError:null}))}).catch(C=>{h.signal.aborted||u(v=>({...v,labelsLoading:!1,labelsError:C}))}),()=>{h.abort()}},[d,m]),l.useEffect(()=>{if(!p||!d)return;i.current?.abort();const h=new AbortController;return i.current=h,u(C=>({...C,isLoading:!0,error:null,contactData:null})),d.fetchContact({contactId:r,signal:h.signal}).then(C=>{u(v=>({...v,isLoading:!1,error:null,contactData:C}))}).catch(C=>{h.signal.aborted||u(v=>({...v,isLoading:!1,error:C}))}),()=>{h.abort()}},[d,p,r]);const y=l.useMemo(()=>!!(e&&d),[e,d]);l.useEffect(()=>{if(!y||!d)return;const h=new AbortController;return u(C=>({...C,userLoading:!0,userError:null})),d.fetchUserTrii({signal:h.signal}).then(C=>{u(v=>({...v,userLoading:!1,userError:null,userTrii:C}))}).catch(C=>{h.signal.aborted||u(v=>({...v,userLoading:!1,userError:C}))}),()=>{h.abort()}},[d,y]);const x=l.useMemo(()=>{const h=c.contactData,C=Ba(h),v=xn(h);let g="unknown";C&&(g="business"),v&&(g="contact");let S="Unknown Contact";C?S=h.name:v&&(S=sn(h.firstName,h.lastName,o));const w=h?.tags??[];return{isBusiness:C,isContact:v,contactType:g,displayName:S,tags:w,labels:c.labels,contactFields:c.contactFields,userTrii:c.userTrii,userLoading:c.userLoading,userError:c.userError}},[c.contactData,c.labels,c.contactFields,c.userTrii,c.userLoading,c.userError,o]);return l.useEffect(()=>{if(!e||!d)return;const h=c.contactData,C=Ba(h),v=xn(h),g=C?"business":v?"contact":null;if(!g)return;const S=new AbortController;return u(w=>({...w,contactFieldsLoading:!0,contactFieldsError:null})),d.fetchContactFields({forType:g,signal:S.signal}).then(w=>{u(T=>({...T,contactFields:w,contactFieldsLoading:!1,contactFieldsError:null}))}).catch(w=>{S.signal.aborted||u(T=>({...T,contactFieldsLoading:!1,contactFieldsError:w}))}),()=>{S.abort()}},[d,e,c.contactData]),{state:c,selectors:x,actions:{setContactData:h=>u(C=>({...C,contactData:h??null})),clearError:()=>u(h=>({...h,error:null}))}}}const Lt=({baseUrl:e,spaceId:a,entityType:n,entityId:r,initialImageUrl:o,onEntityUpdated:i})=>{const[d,c]=l.useState(o??""),[u,p]=l.useState(null),[m,y]=l.useState(!1),[x,h]=l.useState(!1),C=l.useRef(null),v=l.useMemo(()=>!!(e&&a&&n&&r),[e,a,n,r]);function g(F){return F.split("?sv=")[0]}function S(F){return F.split("&cacheId=")[0]}function w(F){let N=g(F);return!N||(N=S(N),!N)?"":N}const T=async()=>{if(!e||!a)return null;const F=await gn({baseUrl:e,spaceId:a});return p(F),F},I=async F=>{const N=(u??await T())?.storageAzureSAS,U=N?.expireAt,O=U?new Date(U):null;let H=N?.sas??"";if((!H||O&&O<new Date)&&(H=(await T())?.storageAzureSAS?.sas??""),!H)return F;const B=`${Date.now()}`;return`${F}${H}&cacheId=${B}`},k=async F=>{if(!F){c("");return}const N=g(F);if(!N)return;const U=await I(N);c(U)},D=async F=>{const N=F.target.files?.[0];if(N&&v){C.current&&(C.current.value=""),y(!0);try{const U=await mn({baseUrl:e,spaceId:a,contactId:r,file:N}),O=await Ze({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{imageUrl:U}});i?.(O),await k(U)}finally{y(!1)}}},P=()=>{C.current?.click()},M=async()=>{if(v&&!x){h(!0);try{await Ze({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{imageUrl:""}}),i?.({imageUrl:""}),c("")}finally{h(!1)}}};return l.useEffect(()=>{if(!o){c("");return}k(o)},[o]),{inputAtributes:{onChange:D,ref:C,type:"file",accept:"image/*"},action:{uploadImage:P,deleteImage:M},imageUrl:d,removeParams:w,isUploading:m,isDeleting:x}},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)}}}},bn=(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 sa;const qo=new Uint8Array(16);function Yo(){if(!sa&&(sa=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!sa))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return sa(qo)}const $e=[];for(let e=0;e<256;++e)$e.push((e+256).toString(16).slice(1));function Ko(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 Jo=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var vn={randomUUID:Jo};function Ot(e,a,n){if(vn.randomUUID&&!a&&!e)return vn.randomUUID();e=e||{};const r=e.random||(e.rng||Yo)();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 Ko(r)}function Xo(e){return{id:Ot(),address:"",note:"",channelType:e,isSaved:!1}}var oa={createNewAddress:Xo};const Qo=(e,a,n)=>{if(a!==n&&!(a===null&&n==="")){const r={};return r[e]=n,r}return null},Zo=(e,a,n)=>n.map(r=>r.id===a?{...r,address:e}:r);var St={getEditedField:Qo,getAddressesWithUpdatedValues:Zo};const Cn=({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,y]=l.useState(a?.ims_mercadolibre||[]),[x,h]=l.useState(a?.ims_webchat||[]),[C,v]=l.useState(a?.ims_instagram||[]),[g,S]=l.useState(a?.ims_whatsapp||[]),[w,T]=l.useState(a?.emails||[]),[I,k]=l.useState(a?.phones||[]),[D,P]=l.useState(a?.ims_rcs||[]),M=()=>{const V=oa.createNewAddress(Ct.ChannelType.PHONE),_=[...I,V];k(_)},F=()=>{const V=oa.createNewAddress(Ct.ChannelType.EMAIL),_=[...w,V];T(_)},N=()=>{const V=oa.createNewAddress(Ct.ChannelType.WHATSAPP),_=[...g,V];S(_)},U=()=>{const V=oa.createNewAddress(Ct.ChannelType.RCS),_=[...D,V];P(_)},O=V=>{const _=[...g,V];S(_),c(j=>({...j??{},ims_whatsapp:_}))},H=(V,_)=>{if(_){if(_.channelType===3){const j=w.map(A=>A.id===V?_:A);T(j),c(A=>({...A??{},emails:j}))}if(_.channelType===5){const j=I.map(A=>A.id===V?_:A);k(j),c(A=>({...A??{},phones:j}))}if(_.channelType===13){const j=g.map(A=>A.id===V?_:A);S(j),c(A=>({...A??{},ims_whatsapp:j}))}if(_.channelType===21){const j=D.map(A=>A.id===V?_:A);P(j),c(A=>({...A??{},ims_rcs:j}))}if(_.channelType===41){const j=m.map(A=>A.id===V?_:A);y(j),c(A=>({...A??{},ims_mercadolibre:j}))}}},B=async(V,_,j)=>{const A=V.target.value;if(j===3){const E=St.getAddressesWithUpdatedValues(A,_,w);T(E)}else if(j===5){const E=St.getAddressesWithUpdatedValues(A,_,I);k(E)}else if(j===13){const E=St.getAddressesWithUpdatedValues(A,_,g);S(E)}else if(j===21){const E=St.getAddressesWithUpdatedValues(A,_,D);P(E)}else if(j===41){const E=St.getAddressesWithUpdatedValues(A,_,m);y(E)}},J=(V,_,j)=>{if(j===14){const A=u.map(E=>E.id===_?{...E,note:V.target.value}:E);p(A)}if(j===20){const A=x.map(E=>E.id===_?{...E,note:V.target.value}:E);h(A)}if(j===16){const A=C.map(E=>E.id===_?{...E,note:V.target.value}:E);v(A)}if(j===3){const A=w.map(E=>E.id===_?{...E,note:V.target.value}:E);T(A)}if(j===5){const A=I.map(E=>E.id===_?{...E,note:V.target.value}:E);k(A)}if(j===13){const A=g.map(E=>E.id===_?{...E,note:V.target.value}:E);S(A)}if(j===21){const A=D.map(E=>E.id===_?{...E,note:V.target.value}:E);P(A)}if(j===41){const A=m.map(E=>E.id===_?{...E,note:V.target.value}:E);y(A)}},Z=async(V,_)=>{if(e&&(_===3||_===5||_===13||_===14||_===20||_===16||_===21||_===41)){i(V);const j={contactId:e,contactAddressId:V,type:_};switch(n?await n(r(j)):await r(j),i(!1),_){case 3:const A=w.filter(te=>te.id!==V);T(A),c(te=>({...te??{},emails:A}));break;case 5:const E=I.filter(te=>te.id!==V);k(E),c(te=>({...te??{},phones:E}));break;case 13:const W=g.filter(te=>te.id!==V);S(W),c(te=>({...te??{},ims_whatsapp:W}));break;case 21:const G=D.filter(te=>te.id!==V);P(G),c(te=>({...te??{},ims_rcs:G}));break;case 41:const se=m.filter(te=>te.id!==V);y(se),c(te=>({...te??{},ims_mercadolibre:se}));break;case 14:const ie=u.filter(te=>te.id!==V);p(ie),c(te=>({...te??{},ims_facebook:ie}));break;case 20:const je=x.filter(te=>te.id!==V);h(je),c(te=>({...te??{},ims_webchat:je}));break;case 16:const he=C.filter(te=>te.id!==V);v(he),c(te=>({...te??{},ims_instagram:he}));break}}};function ne(){p(d?.ims_facebook||[]),y(d?.ims_mercadolibre||[]),h(d?.ims_webchat||[]),v(d?.ims_instagram||[]),S(d?.ims_whatsapp||[]),P(d?.ims_rcs||[]),T(d?.emails||[]),k(d?.phones||[])}return l.useEffect(()=>{c(a),a?.emails&&a?.phones&&(T(a.emails),k(a.phones)),S(a?.ims_whatsapp||[]),P(a?.ims_rcs||[]),p(a?.ims_facebook||[]),h(a?.ims_webchat||[]),v(a?.ims_instagram||[]),y(a?.ims_mercadolibre||[])},[a]),{field:{imsWhatsapp:g,imsRCS:D,imsMercadolibre:m,imsFacebooks:u,imsWebchats:x,imsInstagrams:C,emails:w,phoneNumbers:I},action:{handleAddressFieldChange:B,handleNoteFieldChange:J,handleDeleteAddress:Z,addPhone:M,addEmail:F,addWhatsapp:N,addRCS:U,replaceAddress:H,addWhatsappVerified:O,resetToInitialContactInformation:ne},state:{isDeletingAddress:o}}},Sn=({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)}}}},ei=({business:e,customContactFields:a,baseUrl:n,spaceId:r})=>{const o=l.useMemo(()=>async q=>{!n||!r||await ra({baseUrl:n,spaceId:r,data:q})},[n,r]),i=async q=>q,[d,c]=l.useState([]),u=Ce("text",e?.name||""),p=Lt({baseUrl:n,spaceId:r,entityType:"business",entityId:e?.id,initialImageUrl:e?.imageUrl||""}),m=bn(e?.owner),y=Sn({initialState:e?.tags??[]}),[x,h]=l.useState([]),{field:{imsFacebooks:C,imsMercadolibre:v,imsWebchats:g,imsInstagrams:S,imsWhatsapp:w,emails:T,phoneNumbers:I,imsRCS:k},action:{addPhone:D,addEmail:P,addWhatsapp:M,addRCS:F,addWhatsappVerified:N,replaceAddress:U,handleAddressFieldChange:O,handleNoteFieldChange:H,handleDeleteAddress:B,resetToInitialContactInformation:J},state:{isDeletingAddress:Z}}=Cn({entityId:e?.id,initial:e,dispatch:i,deleteAddress:o}),ne=Ce("text",e?.address1?.street||""),V=Ce("text",e?.address2?.street||""),_=Ce("text",e?.address1?.city||""),j=Ce("text",e?.address2?.city||""),A=Ce("text",e?.address1?.state||""),E=Ce("text",e?.address2?.state||""),W=Ce("text",e?.address1?.zipcode||""),G=Ce("text",e?.address2?.zipcode||""),se=Ce("text",e?.address1?.country||""),ie=Ce("text",e?.address2?.country||""),je=(q,pe,xe)=>pe!==xe&&!(pe===null&&xe==="")?{[q]:xe}:{},he=()=>{if(!e)return null;const q={street:ne.attributes.value,city:_.attributes.value,state:A.attributes.value,zipcode:W.attributes.value,country:se.attributes.value},pe={street:V.attributes.value,city:j.attributes.value,state:E.attributes.value,zipcode:G.attributes.value,country:ie.attributes.value};return{id:e.id,...je("owner",e.owner,m.attributes.value),...je("name",e.name,u.attributes.value),imageUrl:p.imageUrl?p.removeParams(p.imageUrl):null,tags:y.attributes.value,properties:d,members:x,phoneNumbers:I,emails:T,address1:q,address2:pe}};function te(q){if(!e)return;const pe=X=>X.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),xe=e.properties.find(X=>X.nameKey===q)??e.properties.find(X=>pe(X.nameKey)===pe(q));if(!xe){console.error(`No se encontr\xF3 una propiedad con nameKey: ${q}`);return}const Ke=d.map(X=>X.nameKey===q?{...X,value:xe.value}:X);c(Ke)}const Ae=()=>e?a.map(q=>{const pe=X=>X.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),xe=e.properties.find(X=>X.nameKey===q.nameKey)??e.properties.find(X=>pe(X.nameKey)===pe(q.nameKey));if(xe)return{...xe,nameKey:q.nameKey,type:xe.type??q.type,value:xe.value};const Ke=d.find(X=>X.nameKey===q.nameKey);return{nameKey:q.nameKey,type:q.type,value:Ke?Ke.value:""}}):[];return l.useEffect(()=>{e&&a&&c(Ae())},[e,a]),l.useEffect(()=>{e&&y.actions.setValue(e.tags??[])},[e]),{field:{name:u,imsWhatsapp:w,imsRCS:k,contactImage:p,contactPropietary:m,imsMercadolibre:v,imsFacebooks:C,imsWebchats:g,imsInstagrams:S,emails:T,phoneNumbers:I,homeAddress:ne,secondaryHomeAddress:V,city:_,secondaryCity:j,state:A,secondaryState:E,postalCode:W,secondaryPostalCode:G,country:se,secondaryCountry:ie,customProperties:d,labelMultipleSelect:y},action:{setCustomProperties:c,addWhatsapp:M,addRCS:F,getEditedBusiness:he,handleAddressFieldChange:O,handleNoteFieldChange:H,handleDeleteAddress:B,addPhone:D,addEmail:P,replaceAddress:U,addWhatsappVerified:N,resetToInitialContactInformation:J,resetCustomProperty:te},state:{isDeletingAddress:Z},selectedContacts:x,setSelectedContacts:h}},ti=({contact:e,customContactFields:a,baseUrl:n,spaceId:r})=>{const o=l.useMemo(()=>async X=>{!n||!r||await ra({baseUrl:n,spaceId:r,data:X})},[n,r]),i=async X=>X,{getEditedField:d}=St,[c,u]=l.useState([]),p=Ce("text",e?.firstName||""),m=Ce("text",e?.lastName||""),y=Lt({baseUrl:n,spaceId:r,entityType:"contact",entityId:e?.id?String(e.id):void 0,initialImageUrl:e?.imageUrl}),[x,h]=l.useState(e?.birthDate?K(e.birthDate):null),C=Cn({entityId:e?.id,initial:e,dispatch:i,deleteAddress:o}),{field:{imsFacebooks:v,imsMercadolibre:g,imsWebchats:S,imsInstagrams:w,imsWhatsapp:T,emails:I,phoneNumbers:k,imsRCS:D},action:{addPhone:P,addEmail:M,addWhatsapp:F,addRCS:N,addWhatsappVerified:U,replaceAddress:O,handleAddressFieldChange:H,handleNoteFieldChange:B,handleDeleteAddress:J,resetToInitialContactInformation:Z},state:{isDeletingAddress:ne}}=C,V=Sn({initialState:e?.tags}),_=bn(e?.owner),j=Ce("text",e?.address1?.street),A=Ce("text",e?.address2?.street),E=Ce("text",e?.address1?.city),W=Ce("text",e?.address2?.city),G=Ce("text",e?.address1?.state),se=Ce("text",e?.address2?.state),ie=Ce("text",e?.address1?.zipcode),je=Ce("text",e?.address2?.zipcode),he=Ce("text",e?.address1?.country),te=Ce("text",e?.address2?.country),Ae=()=>{if(!e)return null;const X=e,Pe=V.attributes.value.map(ue=>({id:ue.id,name:ue.name})),We=k.map(ue=>{const{id:Tt,...et}=ue;return et}),Ge=I.map(ue=>{const{id:Tt,...et}=ue;return et});return{id:X.id,owner:_.attributes.value,firstName:p.attributes.value,lastName:m.attributes.value,address1:{...d("street",X.address1?.street,j.attributes.value),...d("city",X.address1?.street,E.attributes.value),...d("state",X.address1?.street,G.attributes.value),...d("zipcode",X.address1?.street,ie.attributes.value),...d("country",X.address1?.street,he.attributes.value)},address2:{...d("street",X.address2?.street,A.attributes.value),...d("city",X.address2?.street,W.attributes.value),...d("state",X.address2?.street,se.attributes.value),...d("zipcode",X.address2?.street,je.attributes.value),...d("country",X.address2?.street,te.attributes.value)},emails:Ge,phones:We,tags:Pe,imageUrl:y.imageUrl?y.removeParams(y.imageUrl):null,properties:c,birthDate:x?.toDate()}};function q(){e&&(!e.businessId||e.businessName)}function pe(){h(e?.birthDate?K(e.birthDate):null)}function xe(X){if(!e)return;const Pe=ue=>ue.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),We=e.properties.find(ue=>ue.nameKey===X)??e.properties.find(ue=>Pe(ue.nameKey)===Pe(X));if(!We){console.error(`No se encontr\xF3 una propiedad con nameKey: ${X}`);return}const Ge=c.map(ue=>ue.nameKey===X?{...ue,value:We.value}:ue);u(Ge)}const Ke=()=>e?a.map(X=>{const Pe=ue=>ue.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),We=e.properties.find(ue=>ue.nameKey===X.nameKey)??e.properties.find(ue=>Pe(ue.nameKey)===Pe(X.nameKey));if(We)return{...We,nameKey:X.nameKey,type:We.type??X.type,value:We.value};const Ge=c.find(ue=>ue.nameKey===X.nameKey);return{nameKey:X.nameKey,type:X.type,value:Ge?Ge.value:""}}):[];return l.useEffect(()=>{e&&a&&u(Ke())},[e,a]),l.useEffect(()=>{e?.tags&&V.actions.setValue(e.tags),e?.businessId&&e.businessName},[e]),{field:{birthDate:x,imsWhatsapp:T,imsRCS:D,contactFirstname:p,contactLastname:m,contactImage:y,contactPropietary:_,imsMercadolibre:g,imsFacebooks:v,imsWebchats:S,imsInstagrams:w,emails:I,phoneNumbers:k,homeAddress:j,secondaryHomeAddress:A,city:E,secondaryCity:W,state:G,secondaryState:se,postalCode:ie,secondaryPostalCode:je,country:he,secondaryCountry:te,customProperties:c,labelMultipleSelect:V},action:{setBirthDate:h,setCustomProperties:u,getEditedContact:Ae,handleAddressFieldChange:H,handleNoteFieldChange:B,handleDeleteAddress:J,addPhone:P,addEmail:M,addWhatsapp:F,addRCS:N,replaceAddress:O,addWhatsappVerified:U,resetToInitialContactInformation:Z,resetSelectedBusiness:q,resetBirthDate:pe,resetCustomProperty:xe},state:{isDeletingAddress:ne}}},$a=l.createContext(null),ai=({children:e,contact:a,customContactFields:n,baseUrl:r,spaceId:o})=>{const i=ti({contact:a,customContactFields:n,baseUrl:r,spaceId:o});return t.jsx($a.Provider,{value:{entityType:"contact",editEntity:i,entityId:String(a.id)},children:e})},ni=({children:e,business:a,customContactFields:n,baseUrl:r,spaceId:o})=>{const i=ei({business:a,customContactFields:n,baseUrl:r,spaceId:o});return t.jsx($a.Provider,{value:{entityType:"business",editEntity:i,entityId:String(a.id)},children:e})},ri=({children:e,entityType:a,entityData:n,customContactFields:r,baseUrl:o,spaceId:i})=>a==="contact"?t.jsx(ai,{contact:n,customContactFields:r,baseUrl:o,spaceId:i,children:e}):t.jsx(ni,{business:n,customContactFields:r,baseUrl:o,spaceId:i,children:e}),it=()=>{const e=l.useContext($a);if(!e)throw new Error("useEditEntity must be used within EditEntityProvider");return e},jt=({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},ia=({title:e,children:a,enableDirectionSearch:n=!1,onDirectionSearchClick:r})=>{const o=ye();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}),n&&t.jsx(s.Button,{startIcon:t.jsx(Ur,{sx:{color:"primary.main",height:18,width:18}}),size:"small",variant:"outlined",color:"primary",onClick:()=>r&&r(),children:o("global.searchLocation")})]}),t.jsx(s.Divider,{sx:{my:1.5}}),a]})},jn=({children:e,...a})=>t.jsx(s.Box,{display:"grid",gridTemplateColumns:{xs:"1fr",md:"repeat(2, minmax(0, 1fr))"},gap:2,...a,children:e}),si=({birthDate:e,setBirthDate:a,dateFormat:n})=>{const r=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Ga.DatePicker,{value:e,onChange:o=>a(o),slotProps:{textField:{size:"small"}},format:r})})})},oi={view:"main",setView:()=>{}},wn=l.createContext(null),ii=wn.Provider,li=()=>l.useContext(wn)||(console.warn("[useEditContactView] using noop, context value is missing"),oi),Tn=()=>{},In=l.createContext(Tn),di=({navigate:e,children:a})=>t.jsx(In.Provider,{value:e,children:a}),ci=()=>l.useContext(In)||(console.warn("[useNavigateContext] using noop, context value is falsy"),Tn);function ui({value:e,displayValue:a,businessId:n}){const r=ut(),o=ci(),[i,d]=l.useState(null),c=Lt({initialImageUrl:i?.imageUrl,entityType:"business",entityId:n}),[u,p]=l.useState(null),[m,y]=l.useState(!1);return t.jsxs(s.Box,{display:"flex",alignItems:"center",children:[t.jsx(s.Typography,{onClick:async x=>{const h=x.currentTarget;if(y(!0),!r){console.error("API is null");return}const C=await r.fetchBusiness({businessId:n});if(C&&Ba(C)&&d(C),y(!1),!h){console.error("Target element is null");return}p(h)},variant:"body2",fontWeight:"600",sx:{padding:1,cursor:"pointer"},color:x=>x.palette.text.primary,children:a||typeof e=="string"&&e||"-"}),i&&t.jsx(on,{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 pi=e=>"email"in e,Ma=e=>e.entityType==="contact"&&e.inputType==="birthday",fi=s.styled(s.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),kn=s.styled(s.IconButton)({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}}),pt=e=>{const{title:a,value:n,isNotEditable:r,displayValue:o,baseUrl:i,spaceId:d,minWidth:c,onEntityUpdated:u}=e,p=ye(),{setView:m}=li(),y=e.inputType??"text",[x,h]=l.useState(!1),[C,v]=l.useState(!1),g=l.useRef(null),[S,w]=l.useState(!1),[T,I]=l.useState(()=>e.entityType==="business"||typeof n=="string"?n:void 0);l.useEffect(()=>{const B=g.current;if(!B)return;const J=()=>{const Z=B.scrollWidth>B.clientWidth;w(ne=>ne===Z?ne:Z)};if(J(),typeof ResizeObserver<"u"){let Z=0;const ne=new ResizeObserver(()=>{if(typeof window>"u"){J();return}Z&&window.cancelAnimationFrame(Z),Z=window.requestAnimationFrame(()=>{J()})});return ne.observe(B),()=>{typeof window<"u"&&Z&&window.cancelAnimationFrame(Z),ne.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",J),()=>{window.removeEventListener("resize",J)}},[a]),l.useEffect(()=>{e.entityType==="business"?I(n):I(typeof n=="string"?n:void 0)},[n,e.entityType]);const k=()=>{if(e.entityType==="contact"&&y==="selectBusiness"){m("businessSelect");return}h(B=>!B)},D=B=>{I(B.target.value)},P=B=>{const J=B.target.value;I(J)},M=()=>{Ma(e)&&e.contact.action.resetBirthDate(),h(!1)},F=async()=>{if(!e.constructUpdateObject){h(!1);return}if(e.entityType==="business"&&T===void 0){h(!1);return}v(!0);try{if(!i||!d)throw new Error("Missing baseUrl or spaceId for updateEntity");if(e.entityType==="contact"){let B=T===void 0?null:T;if(Ma(e)){const V=K(e.contact.field.birthDate);V.isValid()&&(B=V.toISOString())}const J=e.constructUpdateObject(B),Z=e.entityId??J?.id;if(!Z)throw new Error("Missing contactId for updateEntity");const ne=await Ze({baseUrl:i,spaceId:d,entityType:"contact",entityId:Z,body:J});u?.(ne)}else{const B=e.constructUpdateObject(T),J=e.entityId??B?.id;if(!J)throw new Error("Missing businessId for updateEntity");const Z=await Ze({baseUrl:i,spaceId:d,entityType:"business",entityId:J,body:B});u?.(Z)}}finally{v(!1),h(!1)}},N=typeof T=="string"?T:"",U=T instanceof Date?T.toISOString():typeof T=="string"?T:"",O=c??(e.entityType==="contact"?"45%":"200px"),H=e.options??[];return t.jsxs(s.Box,{className:"fadein col-5",sx:{display:"flex",backgroundColor:B=>B.palette.mode==="dark"?"1e1e1e":B.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:[S?t.jsx(s.Tooltip,{title:a,arrow:!0,children:t.jsx(s.Typography,{ref:g,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:x?1:0,color:B=>B.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a})}):t.jsx(s.Typography,{ref:g,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:x?1:0,color:B=>B.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a}),r?null:x?t.jsxs(t.Fragment,{children:[t.jsx(kn,{size:"small",onClick:F,children:C?t.jsx(s.CircularProgress,{size:24}):t.jsx(ht,{})}),t.jsx(kn,{size:"small",onClick:M,children:t.jsx(qa,{})})]}):t.jsx(fi,{className:"edit-icon",size:"small",onClick:k,children:t.jsx(Bt,{})})]}),t.jsx(s.Box,{width:x?"100%":"50%",position:"relative",children:x&&y==="text"?t.jsx(s.TextField,{value:U,onChange:D,variant:"standard",size:"small",sx:{width:"100%"}}):x&&(y==="select"||y==="selectMembers")?t.jsxs(s.Select,{value:N,onChange:P,variant:"standard",size:"small",sx:{width:"100%"},children:[e.entityType==="contact"?t.jsx(s.MenuItem,{value:"",children:p("conversations.contactDetails.contactInfo.emptySelection")}):null,H.map((B,J)=>t.jsx(s.MenuItem,{value:B.id,children:e.entityType==="contact"?B.name?.trim()||(pi(B)?B.email:"")||"Sin nombre":B.name?.trim()||B.email||"Sin nombre"},J))]}):x&&Ma(e)?t.jsx(si,{birthDate:e.contact.field.birthDate,setBirthDate:e.contact.action.setBirthDate,dateFormat:e.dateFormat}):!x&&e.entityType==="contact"&&y==="selectBusiness"&&e.businessId?t.jsx(ui,{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:B=>B.palette.text.primary,children:o||typeof n=="string"&&n||"-"})})]})},zt=e=>{const{title:a,value:n,isNotEditable:r,options:o=[],displayValue:i,constructUpdateObject:d,businessId:c,baseUrl:u,spaceId:p,contactId:m,onEntityUpdated:y}=e;if(e.inputType==="birthday")return t.jsx(pt,{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:y});const x=e.inputType??"text";return t.jsx(pt,{entityType:"contact",entityId:m,title:a,value:n,isNotEditable:r,inputType:x,options:o,displayValue:i,constructUpdateObject:d,businessId:c,baseUrl:u,spaceId:p,onEntityUpdated:y})},gi=({nameKey:e,value:a,onChange:n,type:r,min:o,max:i})=>{const d=h=>{r===ae.ContactField_type.NUMBER_ACCOUNTING||r===ae.ContactField_type.NUMBER_DECIMAL||r===ae.ContactField_type.NUMBER_CURRENCY||r===ae.ContactField_type.CURRENCY?u(h):r===ae.ContactField_type.NUMBER_INTEGER?p(h):(r===ae.ContactField_type.LONGTEXT||r===ae.ContactField_type.TEXT||r===ae.ContactField_type.ADDRESS)&&c(h)},c=h=>{n(e,h.target.value)},u=h=>{const C=h.target.value.replace(/[^0-9.-]/g,"");if(C===""||C==="-"){n(e,C);return}const v=Number(C);Number.isNaN(v)||n(e,C)},p=h=>{const C=h.target.value;if(C===""){n(e,C);return}/^\d*$/.test(C)&&n(e,C)},m=()=>r===ae.ContactField_type.CURRENCY||r===ae.ContactField_type.NUMBER_ACCOUNTING||r===ae.ContactField_type.NUMBER_DECIMAL||r===ae.ContactField_type.NUMBER_INTEGER||r===ae.ContactField_type.NUMBER_CURRENCY,y=()=>{if(!m()||a===""||a==null)return!1;const h=Number(a);return Number.isNaN(h)?!1:o!=null&&h<o||i!=null&&h>i},x=()=>{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:y(),helperText:x(),inputProps:{pattern:"[0-9]*"},multiline:r===ae.ContactField_type.LONGTEXT,rows:r===ae.ContactField_type.LONGTEXT?4:1,sx:{width:"100%"}})},mi=({value:e,handleChange:a,dateFormat:n})=>{const r=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Ga.DatePicker,{value:e?K(e):null,onChange:o=>a(o),format:r,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},hi=({handleChange:e,value:a,options:n})=>{const r=ye();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))]})})},yi=({value:e,handleChange:a,userTimeFormat:n})=>{const r=n==="24"?"HH:mm":"hh:mm";return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Rr.TimePicker,{value:e?K(e):null,onChange:o=>a(o),format:r,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},xi=({value:e,handleChange:a,userTimeFormat:n})=>{const r=ye(),o=[K().set("hour",0).set("minute",0),K().set("hour",0).set("minute",0)],i=n==="24"?"HH:mm":"hh:mm";return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{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})})})},bi=({value:e,handleChange:a,userDateFormat:n})=>{const r=ye(),o=[K(),K()],i=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{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})})})},vi=s.styled(s.IconButton)(()=>({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"})),En=s.styled(s.IconButton)(()=>({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}})),Ci=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",borderRadius:e.shape.borderRadius,minWidth:"45%","&:hover .edit-icon":{opacity:1}})),Dn=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})),Si=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"})),An=({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,[y,x]=l.useState(!1),[h,C]=l.useState(!1),v=l.useRef(null),[g,S]=l.useState(!1),w=(i?.regCon_dateFormat||"YYYY/MM/DD").toUpperCase(),T=i?.regCon_timeFormat||"24",I=j=>j===ae.ContactField_type.NUMBER_INTEGER||j===ae.ContactField_type.NUMBER_DECIMAL||j===ae.ContactField_type.NUMBER_CURRENCY||j===ae.ContactField_type.NUMBER_ACCOUNTING||j===ae.ContactField_type.CURRENCY,k=(j,A)=>j.toLowerCase()==="dni"?!0:I(A),D=(j,A,E)=>{if(E===""||E===null||E===void 0)return null;if(k(j,A)){const W=Number(E);return Number.isNaN(W)?E:W}return E},P=()=>x(j=>!j),M=()=>{x(!1),a.action.resetCustomProperty(e.nameKey)},F=async()=>{if(!d||!c||!r)return;C(!0);const j=p.find(ie=>ie.nameKey===e.nameKey)||e,{nameKey:A,value:E}=j,W=o.find(ie=>ie.nameKey===A)?.type??j.type;let G;if(W===ae.ContactField_type.TIME){const ie=K(E);ie.isValid()?G=ie.format(T==="24"?"HH:mm":"hh:mm"):G=E}else if(W===ae.ContactField_type.DATE){const ie=K(E);ie.isValid()?G=ie.toISOString():G=E}else G=D(A,W,E);const se={properties:[{nameKey:A,type:W,value:G}]};try{const ie=await Ze({baseUrl:d,spaceId:c,entityType:n,entityId:r,body:se}),je=p.map(he=>he.nameKey===A?{...he,type:W,value:G}:he);m(je),u?.(ie)}finally{C(!1),x(!1)}},N=j=>o.find(A=>A.nameKey===j)?.name||j;l.useEffect(()=>{const j=v.current;if(!j)return;const A=()=>{const E=j.scrollWidth>j.clientWidth;S(W=>W===E?W:E)};if(A(),typeof ResizeObserver<"u"){let E=0;const W=new ResizeObserver(()=>{if(typeof window>"u"){A();return}E&&window.cancelAnimationFrame(E),E=window.requestAnimationFrame(()=>{A()})});return W.observe(j),()=>{typeof window<"u"&&E&&window.cancelAnimationFrame(E),W.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",A),()=>{window.removeEventListener("resize",A)}},[o,e.nameKey]);const U=(j,A)=>{const E=e.type===ae.ContactField_type.DATERANGE?Array.isArray(A)&&A[0]&&A[1]?`${K(A[0]).toISOString()} - ${K(A[1]).toISOString()}`:"":e.type===ae.ContactField_type.DATE?K(A).isValid()?K(A).toISOString():"Invalid Date":e.type===ae.ContactField_type.TIME?K(A).isValid()?K(A).toISOString():"Invalid Time":A,W=p.map(G=>G.nameKey===j?{...G,value:E}:G);m(W)},{type:O,nameKey:H,value:B}=e,J=j=>j==null?!1:typeof j=="string"?j.trim().length>0:!0,Z=(o.find(j=>j.nameKey===e.nameKey)?.requiredField??!1)&&!J(B),ne=[ae.ContactField_type.NUMBER_INTEGER,ae.ContactField_type.NUMBER_DECIMAL,ae.ContactField_type.NUMBER_CURRENCY,ae.ContactField_type.NUMBER_ACCOUNTING,ae.ContactField_type.CURRENCY],V=()=>{const j=o.find(G=>G.nameKey===H);if(!j)return!1;const{min:A,max:E}=j;if(A==null&&E==null||!ne.includes(O)||B===""||B==null)return!1;const W=Number(B);return Number.isNaN(W)?!1:A!=null&&W<A||E!=null&&W>E},_=()=>O===ae.ContactField_type.DATE?t.jsx(mi,{value:B?K(B):null,handleChange:j=>U(H,j?.toDate()),dateFormat:w}):O===ae.ContactField_type.TIME?t.jsx(yi,{value:e?.valueDate?K(e.valueDate):B?K(B):null,handleChange:j=>U(H,j),userTimeFormat:T}):O===ae.ContactField_type.DATERANGE?t.jsx(bi,{value:B&&typeof B=="string"&&B.includes(" - ")?[K(B.split(" - ")[0]),K(B.split(" - ")[1])]:null,handleChange:j=>U(H,[j[0]?.toDate?.(),j[1]?.toDate?.()]),userDateFormat:w}):O===ae.ContactField_type.TIMERANGE?t.jsx(xi,{value:Array.isArray(B)&&B.length===2?[K(B[0]),K(B[1])]:null,handleChange:j=>U(H,[j[0]?.toDate?.(),j[1]?.toDate?.()]),userTimeFormat:T}):O===ae.ContactField_type.OPTIONS?t.jsx(hi,{value:typeof B=="string"?B:"",handleChange:j=>U(H,j),options:o.find(j=>j.nameKey===H)?.typeOptions??[]}):t.jsx(gi,{type:O,nameKey:H,value:B,onChange:U,min:o.find(j=>j.nameKey===H)?.min,max:o.find(j=>j.nameKey===H)?.max});return t.jsxs(Ci,{className:`fadein ${e.type===ae.ContactField_type.LONGTEXT?"col-12":"col-5"}`,children:[t.jsxs(s.Box,{display:"flex",position:"relative",minHeight:"25px",alignItems:"center",children:[g?t.jsx(s.Tooltip,{title:N(e.nameKey),arrow:!0,children:t.jsxs(Dn,{ref:v,flexGrow:1,noWrap:!0,children:[N(e.nameKey),Z&&t.jsx(s.Box,{component:"span",sx:{color:"error.main",ml:.5},children:"*"})]})}):t.jsxs(Dn,{ref:v,flexGrow:1,noWrap:!0,children:[N(e.nameKey),Z&&t.jsx(s.Box,{component:"span",sx:{color:"error.main",ml:.5},children:"*"})]}),y?t.jsxs(t.Fragment,{children:[t.jsx(En,{size:"small",onClick:F,disabled:h||V(),children:h?t.jsx(s.CircularProgress,{size:24}):t.jsx(ht,{})}),t.jsx(En,{size:"small",onClick:M,children:t.jsx(qa,{})})]}):t.jsx(vi,{className:"edit-icon",size:"small",onClick:P,children:t.jsx(Bt,{})})]}),t.jsx(s.Box,{width:y||e.type===ae.ContactField_type.LONGTEXT?"100%":"50%",position:"relative",children:y?h?null:_():t.jsx(Si,{children:J(e?.value)?e.type===ae.ContactField_type.DATERANGE?(()=>{if(typeof e.value=="string"){const j=e.value.split(" - ");if(j.length===2){const[A,E]=j,W=K(A),G=K(E);return`${W.isValid()?W.format(w):"-"} - ${G.isValid()?G.format(w):"-"}`}}else if(Array.isArray(e.value)&&e.value.length===2)return`${K(e.value[0]).format(w)} - ${K(e.value[1]).format(w)}`;return`${e.value}`})():e.type===ae.ContactField_type.TIMERANGE?Array.isArray(e.value)&&e.value.length===2?`${K(e.value[0]).format(T==="24"?"HH:mm":"hh:mm")} - ${K(e.value[1]).format(T==="24"?"HH:mm":"hh:mm")}`:`${e.value}`:e.type===ae.ContactField_type.TIME?(()=>{try{const j=e.valueDate||e.value;return`${K(j).format(T==="24"?"HH:mm":"hh:mm A")}`}catch{return`${e.value}`}})():e.type===ae.ContactField_type.DATE?(()=>{try{return`${K(e.value).format(w)}`}catch{return`${e.value}`}})():`${e?.value}`:null})})]})},ji=e=>{const{dateFormat:a,entityData:n,customContactFields:r,baseUrl:o,spaceId:i,currentUser:d,onEntityUpdated:c}=e,u=ye(),{entityType:p,editEntity:m}=it(),y=ut();if(p!=="contact")return null;const[x,h]=l.useState([]),[C,v]=l.useState(null),[g,S]=l.useState(null),[w,T]=l.useState(null),I=m;l.useEffect(()=>{if(!y)return;const F=new AbortController;return y.fetchUsers({signal:F.signal}).then(N=>{F.signal.aborted||h(N??[])}).catch(()=>{F.signal.aborted||h([])}),()=>{F.abort()}},[y]),l.useEffect(()=>{const F=new AbortController,N=async U=>{if(!U||!y)return null;try{const O=await y.fetchUserTriiById({userId:U,signal:F.signal});return O?.display_name||O?.email||null}catch{return null}};return(async()=>{const U=jt({userId:n.owner,users:x,currentUser:d})??(n.owner?await N(n.owner):null),O=jt({userId:n.createdBy??void 0,users:x,currentUser:d})??(n.createdBy?await N(n.createdBy):null),H=jt({userId:n.updatedBy??void 0,users:x,currentUser:d})??(n.updatedBy?await N(n.updatedBy):null);F.signal.aborted||(v(U),T(O),S(H))})(),()=>{F.abort()}},[y,n,x,d]);const k=(a||"YYYY/MM/DD").toUpperCase(),D=I.field.birthDate,P=D?.isValid()?D.format(k):null,M=F=>{const N=new Date;let U=N.getFullYear()-F.getFullYear();const O=N.getMonth()-F.getMonth();return(O<0||O===0&&N.getDate()<F.getDate())&&U--,U};return t.jsx(ia,{title:"General",children:t.jsxs(jn,{children:[t.jsx(zt,{title:u("conversations.contactDetails.contactOwner"),displayValue:C||"-",value:n.owner,inputType:"select",options:x,constructUpdateObject:F=>({owner:typeof F=="string"?F:""}),contact:I,baseUrl:o,spaceId:i,contactId:n.id,onEntityUpdated:c}),t.jsx(zt,{title:u("conversations.contactDetails.business"),displayValue:n.businessName||"-",value:n.businessId,inputType:"selectBusiness",businessId:n.businessId,contact:I,baseUrl:o,spaceId:i,contactId:n.id,onEntityUpdated:c}),t.jsx(zt,{title:u("conversations.contactDetails.createdBy"),value:w||"-",isNotEditable:!0,contact:I,baseUrl:o,spaceId:i,contactId:n.id}),t.jsx(zt,{title:u("conversations.contactDetails.modifiedBy"),value:g||"-",isNotEditable:!0,contact:I,baseUrl:o,spaceId:i,contactId:n.id}),t.jsx(zt,{title:u("global.birthdate"),inputType:"birthday",displayValue:D?`${P} (${M(D.toDate())})`:"-",value:D?D.toISOString():"",constructUpdateObject:F=>({birthDate:F}),contact:I,baseUrl:o,spaceId:i,contactId:n.id,dateFormat:a,onEntityUpdated:c}),I.field.customProperties.map(F=>t.jsx(An,{property:F,entity:I,entityType:"contact",entityId:String(n.id),customContactFields:r,userTrii:d,baseUrl:o,spaceId:i,onEntityUpdated:c},F.nameKey))]})})},Pa=({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(pt,{entityType:"business",entityId:p,title:e,value:a,isNotEditable:n,inputType:r,options:o,displayValue:i,constructUpdateObject:d,baseUrl:c,spaceId:u,onEntityUpdated:m}),wi=e=>{const a=ye(),{entityData:n,customContactFields:r,baseUrl:o,spaceId:i,currentUser:d,onEntityUpdated:c}=e,{entityType:u,editEntity:p}=it(),m=ut();if(u!=="business")return null;const[y,x]=l.useState([]),[h,C]=l.useState(null),[v,g]=l.useState(null),[S,w]=l.useState(null),T=p;return l.useEffect(()=>{if(!m)return;const I=new AbortController;return m.fetchUsers({signal:I.signal}).then(k=>{I.signal.aborted||x(k??[])}).catch(()=>{I.signal.aborted||x([])}),()=>{I.abort()}},[m]),l.useEffect(()=>{const I=new AbortController,k=async D=>{if(!D||!m)return null;try{const P=await m.fetchUserTriiById({userId:D,signal:I.signal});return P?.display_name||P?.email||null}catch{return null}};return(async()=>{const D=jt({userId:n.owner,users:y,currentUser:d})??(n.owner?await k(n.owner):null),P=jt({userId:n.createdBy??void 0,users:y,currentUser:d})??(n.createdBy?await k(n.createdBy):null),M=jt({userId:n.updatedBy??void 0,users:y,currentUser:d})??(n.updatedBy?await k(n.updatedBy):null);I.signal.aborted||(C(D),w(P),g(M))})(),()=>{I.abort()}},[m,n,y,d]),t.jsx(ia,{title:"General",children:t.jsxs(jn,{children:[t.jsx(Pa,{title:a("conversations.businessDetails.businessOwner"),value:n.owner,displayValue:h||"-",inputType:"select",options:y,constructUpdateObject:I=>({owner:typeof I=="string"?I:""}),baseUrl:o,spaceId:i,businessId:n.id,onEntityUpdated:c}),t.jsx(Pa,{title:a("conversations.contactDetails.createdBy"),value:S||"-",isNotEditable:!0}),t.jsx(Pa,{title:a("conversations.contactDetails.modifiedBy"),value:v||"-",isNotEditable:!0}),T.field.customProperties.map(I=>t.jsx(An,{property:I,entity:T,entityType:"business",entityId:String(n.id),customContactFields:r,userTrii:d,baseUrl:o,spaceId:i,onEntityUpdated:c},I.nameKey))]})})},Ti=e=>{const{entityType:a,entityData:n}=e;return l.useMemo(()=>a==="contact"||a==="business"?a:"contact",[a])==="contact"?t.jsx(ji,{...e,entityData:n,entityType:"contact"}):t.jsx(wi,{...e,entityData:n,entityType:"business"})},Ii=()=>{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("")}}},ki=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"})),Ei=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),overflow:"hidden",maxWidth:"80%"})),Di=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),Ai=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"})),Fi=Te.styled(s.Avatar)(({})=>({width:32,height:32,cursor:"pointer"})),Ua=Te.styled(s.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),Bi=Te.styled(Ua)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),$i=Te.styled(Ua)(({})=>({fontSize:14,fontWeight:500})),Mi=Te.styled(Ua)(({})=>({fontSize:14,fontWeight:500})),Pi=({item:e})=>{const a=e.profileUrl,{imageUrl:n}=Lt({initialImageUrl:a});return t.jsx(t.Fragment,{children:t.jsxs(ki,{children:[t.jsx(Ei,{children:t.jsxs(Ai,{children:[t.jsx(s.Tooltip,{title:e.address||"",arrow:!0,children:t.jsx($i,{children:e.address})}),t.jsx(s.Tooltip,{title:e.profileName||"",arrow:!0,children:t.jsx(Mi,{sx:{marginTop:"-10px",marginLeft:"5px",fontSize:"10px"},children:e.profileName})}),t.jsx(s.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(Bi,{children:e.note})})]})}),t.jsxs(Di,{children:[a!==""&&t.jsx(Fi,{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"}})})})]})]})})},Ra=Ya.PhoneNumberUtil.getInstance(),Ui=e=>{if(!e||!e.trim())return e;try{const a=Ra.parse(e,void 0);return Ra.isValidNumber(a)?Ra.format(a,Ya.PhoneNumberFormat.INTERNATIONAL):e}catch{return e}},Ri=Te.styled(s.IconButton)(({theme:e})=>({padding:e.spacing(.5),marginTop:"-5px"})),Ni=Te.styled(Nr)(({theme:e})=>({height:16,width:16,color:e.palette.secondary.main})),Li=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"})),Oi=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),maxWidth:"80%"})),zi=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),_i=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"})),Fn=Te.styled(s.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),Wi=Te.styled(Fn)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),Vi=Te.styled(Fn)(({})=>({fontSize:14,fontWeight:500})),Hi=({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(()=>Ui(e.address||""),[e.address]);return t.jsx(t.Fragment,{children:t.jsxs(Li,{children:[t.jsxs(Oi,{children:[t.jsx(Ri,{onClick:a,color:"primary",size:"small",children:t.jsx(Ni,{})}),t.jsxs(_i,{children:[t.jsx(s.Tooltip,{title:n||"",arrow:!0,children:t.jsx(Vi,{children:n})}),t.jsx(s.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(Wi,{children:e.note})})]})]}),t.jsx(zi,{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"}})})})})]})})},Gi=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}})),qi=s.styled(s.Typography)(({})=>({letterSpacing:-.5,fontSize:14})),Yi=s.styled(s.Box)(({})=>({display:"flex",alignItems:"center"})),Ki=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",gap:e.spacing(1),width:"100%"})),Ji=s.styled(s.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),Xi=({title:e,methodItems:a,isPhone:n,handleEdit:r,owner:o})=>t.jsxs(Gi,{children:[t.jsxs(Yi,{children:[t.jsx(qi,{children:e}),t.jsx(Ji,{className:"edit-icon",size:"small",onClick:r,children:t.jsx(Bt,{fontSize:"small",sx:{color:i=>i.palette.secondary.main}})})]}),t.jsx(Ki,{children:a.map((i,d)=>n?t.jsx(Hi,{item:i},d):t.jsx(Pi,{item:i,owner:o},d))})]}),Qi=({title:e})=>t.jsx(s.Box,{children:t.jsx(s.Typography,{variant:"subtitle2",children:e})}),Zi={container:{display:"flex",justifyContent:"space-between",alignItems:"center"}},la=({title:e,handleAdd:a})=>{const n=ye();return t.jsxs(s.Box,{sx:Zi.container,children:[t.jsx(s.Typography,{variant:"subtitle2",children:e}),t.jsx(s.Button,{onClick:a,size:"small",startIcon:t.jsx(Ka,{}),variant:"text",color:"primary",children:n("global.add")})]})},el={container:{border:"1px solid lightgray",borderRadius:1,p:2,width:"100%",display:"flex",flexDirection:"column",gap:1}},_t=({children:e})=>t.jsx(s.Box,{sx:el.container,children:e}),Bn={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=ye(),[d,c]=l.useState(null),u=!!d,{channelType:p,address:m}=a,[y,x]=l.useState(!1),[h,C]=l.useState(null),[v,g]=l.useState(!1),S=M=>{c(M.currentTarget)},w=()=>{c(null)},T=()=>{g(!1)},I=()=>{e(),w()},k=async()=>{x(!0);try{if(!o)return;const M=await o(13);if(!M)return;C(M),g(!0)}catch(M){console.error("Error verifying WhatsApp account:",M)}finally{x(!1)}w()},D=async()=>{x(!0);try{if(!o)return;const M=await o(21);if(!M)return;C(M),g(!0)}catch(M){console.error("Error verifying RCS account:",M)}finally{x(!1)}w()},P=async()=>{await n(),g(!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:S,children:t.jsx(Lr,{})}),t.jsxs(s.Menu,{id:"basic-menu",anchorEl:d,open:u,onClose:w,MenuListProps:{"aria-labelledby":"basic-button"},children:[t.jsxs(s.MenuItem,{onClick:I,children:[t.jsx(s.ListItemIcon,{children:t.jsx(aa,{color:"error"})}),t.jsx(s.ListItemText,{children:i("global.delete")})]}),p===5&&t.jsxs(s.MenuItem,{onClick:k,disabled:!r,children:[t.jsx(s.ListItemIcon,{children:y?t.jsx(s.CircularProgress,{size:24}):t.jsx(Or,{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(zr,{})}),t.jsx(s.ListItemText,{children:i("optionsMenu.verifyRCSAccount")})]})]}),t.jsx(s.Modal,{open:v,onClose:T,"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:M=>M.palette.background.default},children:h?.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:P,color:"primary",children:i("optionsMenu.yesLink")}),t.jsx(s.Button,{onClick:T,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:T,color:"secondary",sx:{position:"absolute",bottom:-25,right:0},children:i("global.cancel")})]})})})]})},Wt=e=>{const a=ye(),n=ut(),{editEntity:r,entityId:o}=it(),[i,d]=l.useState(!1),c=e.checked??!0,u=e.entityId??o,{note:p,channelType:m,id:y,address:x}=e.addressData,h=!e.addressData.hasOwnProperty("isSaved"),C=e.replaceAddress??r.action.replaceAddress,v=e.addWhatsappVerified||(typeof r.action?.addWhatsappVerified=="function"?r.action.addWhatsappVerified:void 0),g=async I=>{if(!n||!u)return null;const k=await n.setContactAddress({data:{address:x,contactId:u,type:I}});return C(y,k),k},S=async()=>{if(!n||!u)return;const I=await n.updateContactAddress({data:{contactAddressId:y,contactId:u,note:p??""}});C(y,I)},w=async()=>{d(!0),h?(await S(),d(!1)):await g(m)&&d(!1)},T=async()=>{d(!0);const I=await g(13);I&&v&&v(I),I&&d(!1)};return t.jsxs(s.Box,{sx:{...Bn.container},children:[h&&t.jsx(s.TextField,{size:"small",label:a("global.note"),variant:"outlined",onChange:I=>e.handleNoteFieldChange(I,y,m),value:p,fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",sx:Bn.noteTextField}),t.jsx(s.IconButton,{onClick:w,children:i?t.jsx(s.CircularProgress,{size:24}):t.jsx(ht,{color:"primary"})}),t.jsx(tl,{onDelete:()=>e.handleDeleteAddress(y,m),addressData:e.addressData,handleLinkAccountSave:T,checked:c&&!i,onCheckContactAddress:async I=>{if(!n)return null;try{return await n.checkContactAddress({data:{address:x,type:I}})}catch{return null}}})]})},al={container:{display:"flex",gap:"100px",alignItems:"center"}},Vt=({children:e})=>t.jsx(s.Box,{sx:al.container,children:e}),nl={container:{width:"100%",borderRadius:1,px:1.5,py:2,display:"flex",flexDirection:"column",gap:2,overflow:"auto",maxHeight:"calc(100vh - 250px)"}},Ht=({children:e})=>t.jsx(s.Box,{sx:{...nl.container},children:e}),rl=({status:e})=>{switch(e){case"idle":return null;case"loading":return t.jsx(Vr,{size:20});case"available":return t.jsx(_r,{style:{height:27,width:27},color:"success"});case"unavailable":return t.jsx(Wr,{style:{height:27,width:27},color:"error"});default:return null}},$n=({status:e,text:a})=>t.jsxs(Hr,{position:"end",children:[a?t.jsx(Gr,{marginRight:.5,children:a}):null,t.jsx("div",{style:{width:30,display:"flex",justifyContent:"center"},children:t.jsx(rl,{status:e})})]}),sl={code:{width:"60%",color:"gray"}},ol=({data:e,editEntity:a})=>{const n=a.action;return t.jsx(_t,{children:t.jsxs(Vt,{children:[t.jsx(s.Typography,{sx:sl.code,variant:"body2",children:e.address}),t.jsx(Wt,{addressData:e,handleNoteFieldChange:n.handleNoteFieldChange,handleDeleteAddress:n.handleDeleteAddress})]})})},il=({IMSs:e,editEntity:a})=>t.jsx(Ht,{children:e?.map(n=>t.jsx(ol,{data:n,editEntity:a},n.id))}),da=({editEntity:e,title:a,IMSs:n})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(Qi,{title:a}),t.jsx(il,{IMSs:n,editEntity:e})]}),ll={addressField:{}},Na=({data:e,onChange:a,setWarnings:n})=>{const{id:r,channelType:o,address:i}=e,d=ye(),c=ut(),[u,p]=l.useState("idle"),[m,y]=l.useState(i),x=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let h=setTimeout(async()=>{if(i!==""&&i!==m){if(!c)return;p("loading"),y(i);const C={address:i,type:o};try{const v=await c.checkContactAddress({data:C}),{success:g,warnings:S}=v;n(S),p(g?"available":"unavailable")}catch{n([]),p("unavailable")}}},1700);return()=>clearTimeout(h)},[c,e,i,o,m,n]),t.jsx(t.Fragment,{children:t.jsx(s.TextField,{disabled:x,sx:ll.addressField,size:"small",label:o===Ct.ChannelType.WHATSAPP||o===Ct.ChannelType.RCS?d?d("global.number"):"Number":d?d("global.email"):"Email",value:i,onChange:h=>{a(h,r,o)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx($n,{status:u})})}})})},dl={addressField:{}},cl=({data:e,onChange:a,setWarnings:n})=>{const r=ut(),o=ye(),{id:i,channelType:d,address:c}=e,[u,p]=l.useState("idle"),[m,y]=l.useState(c),x=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let h=setTimeout(async()=>{if(c!==""&&c!==m){if(!r)return;p("loading"),y(c);const C={address:c,type:d};try{const{success:v,warnings:g}=await r.checkContactAddress({data:C});n(g),p(v?"available":"unavailable")}catch{n([]),p("unavailable")}}},1700);return()=>clearTimeout(h)},[e]),t.jsx(t.Fragment,{children:t.jsx(s.TextField,{disabled:x,sx:dl.addressField,size:"small",label:o("global.number"),value:c,onChange:h=>{a(h,i,d)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx($n,{status:u})})}})})},La={secondaryContainer:{display:"flex",alignItems:"baseline",height:"100%",gap:.5},icon:{height:15},chip:{borderRadius:"6px",height:"22px"}},ul=({text:e})=>t.jsx(s.Grid,{item:!0,children:t.jsx(s.Box,{sx:La.secondaryContainer,children:t.jsx(Yr,{icon:t.jsx(qr,{sx:La.icon}),sx:La.chip,label:e,color:"error",variant:"outlined"})})}),ca=({warnings:e})=>{const a=ye();return t.jsx(s.Box,{children:t.jsx(s.Grid,{container:!0,children:e?.map((n,r)=>t.jsx(ul,{text:a(`contactAddressError.${n}`)},r))})})},pl={numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{marginTop:"10px"},adressInputBox:{position:"relative",width:"45%"}},fl=({data:e})=>{const a="edit",{editEntity:n}=it(),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(_t,{children:t.jsxs(Vt,{children:[t.jsxs(s.Box,{sx:{...pl.numberCountryContainer,flexDirection:"column"},children:[t.jsx(cl,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange}),i.length>0&&t.jsx(ca,{warnings:i})]}),t.jsx(Wt,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress,addWhatsappVerified:r.addWhatsappVerified,checked:c})]})})},gl=({phoneNumbers:e})=>t.jsx(Ht,{variant:"large",children:e?.map(a=>t.jsx(fl,{data:a},a.id))}),ml=({phoneNumbers:e,handleAdd:a})=>{const n=ye();return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(la,{handleAdd:a,title:n("global.phones")}),t.jsx(gl,{phoneNumbers:e})]})},Mn={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}=it(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(_t,{children:[t.jsxs(Vt,{children:[t.jsx(s.Box,{sx:Mn.numberCountryContainer,children:t.jsx(s.Box,{sx:Mn.adressInputBox,children:t.jsx(Na,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Wt,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(ca,{warnings:i})]})},yl=({emails:e})=>t.jsx(Ht,{variant:"large",children:e?.map(a=>t.jsx(hl,{data:a},a.id))}),xl=({emails:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(la,{handleAdd:a,title:"Emails"}),t.jsx(yl,{emails:e})]}),Pn={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},bl=({data:e})=>{const a="edit",{editEntity:n}=it(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(_t,{children:[t.jsxs(Vt,{children:[t.jsx(s.Box,{sx:Pn.numberCountryContainer,children:t.jsx(s.Box,{sx:Pn.adressInputBox,children:t.jsx(Na,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Wt,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(ca,{warnings:i})]})},vl=({whatsapps:e})=>t.jsx(Ht,{variant:"large",children:e?.map(a=>t.jsx(bl,{data:a},a.id))}),Cl=({whatsapps:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(la,{handleAdd:a,title:"WhatsApp"}),t.jsx(vl,{whatsapps:e})]}),Un={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Sl=({data:e})=>{const a="edit",{editEntity:n}=it(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(_t,{children:[t.jsxs(Vt,{children:[t.jsx(s.Box,{sx:Un.numberCountryContainer,children:t.jsx(s.Box,{sx:Un.adressInputBox,children:t.jsx(Na,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Wt,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(ca,{warnings:i})]})},jl=({RCSs:e})=>t.jsx(Ht,{variant:"large",children:e?.map(a=>t.jsx(Sl,{data:a},a.id))}),wl=({RCSs:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(la,{handleAdd:a,title:"RCS"}),t.jsx(jl,{RCSs:e})]}),Tl=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})),Il=({open:e,onClose:a,title:n})=>{const r=ye(),{editEntity:o}=it(),{emails:i,phoneNumbers:d,imsWhatsapp:c,imsRCS:u}=o.field,{addEmail:p,addPhone:m,addWhatsapp:y,resetToInitialContactInformation:x,addRCS:h}=o.action;function C(){a(),x()}return t.jsx(s.Modal,{open:e,onClose:a,children:t.jsxs(Tl,{children:[(()=>{switch(n){case"Phones":return t.jsx(ml,{handleAdd:m,phoneNumbers:d});case"Emails":return t.jsx(xl,{handleAdd:p,emails:i});case"Whatsapp":return t.jsx(Cl,{handleAdd:y,whatsapps:c});case"RCS":return t.jsx(wl,{handleAdd:h,RCSs:u});case"Facebook":return t.jsx(da,{title:"Facebook",IMSs:o.field.imsFacebooks,editEntity:o});case"Webchat":return t.jsx(da,{title:"Webchat",IMSs:o.field.imsWebchats,editEntity:o});case"Instagram":return t.jsx(da,{title:"Instagram",IMSs:o.field.imsInstagrams,editEntity:o});case"Mercado libre":return t.jsx(da,{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")})})]})})},kl=({ownerData:e})=>{const{isOpen:a,title:n,openModal:r,closeModal:o}=Ii(),{editEntity:i}=it(),d=ye(),c=i.field.phoneNumbers,u=i.field.emails,p=i.field.imsFacebooks,m=i.field.imsWhatsapp,y=i.field.imsMercadolibre,x=i.field.imsWebchats,h=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:y,modalTitle:"Mercado libre",visible:!0},{key:"webchat",title:"Webchat",items:x,modalTitle:"Webchat",visible:!0},{key:"instagram",title:"Instagram",items:h,modalTitle:"Instagram",visible:!0}];return t.jsxs(t.Fragment,{children:[t.jsx(ia,{title:d("conversations.contactDetails.contactInformation"),children:t.jsx("div",{className:"grid grid-cols-1 gap-3",children:v.filter(g=>g.visible).map(g=>t.jsx(Xi,{handleEdit:()=>r(g.modalTitle),title:g.title,methodItems:g.items,isPhone:g.isPhone,owner:e},g.key))})}),t.jsx(Il,{open:a,onClose:o,title:n})]})},El=({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=ye(),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(pt,{entityType:e,title:c("conversations.contactDetails.street"),value:a[p]?.street??"",...d,constructUpdateObject:y=>({[p]:{street:y}}),minWidth:"100%"})}),t.jsx(pt,{entityType:e,title:c("conversations.contactDetails.city"),value:a[p]?.city??"",...d,constructUpdateObject:y=>({[p]:{city:y}}),minWidth:"100%"}),t.jsx(pt,{entityType:e,title:c("conversations.contactDetails.state"),value:a[p]?.state??"",...d,constructUpdateObject:y=>({[p]:{state:y}}),minWidth:"100%"}),t.jsx(pt,{entityType:e,title:c("conversations.contactDetails.postcode"),value:a[p]?.zipcode??"",...d,constructUpdateObject:y=>({[p]:{zipcode:y}}),minWidth:"100%"}),t.jsx(pt,{entityType:e,title:c("conversations.contactDetails.country"),value:a[p]?.country??"",...d,constructUpdateObject:y=>({[p]:{country:y}}),minWidth:"100%"})]})]});return t.jsx(ia,{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")})]})})},Dl=({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]),Al=({open:e,baseUrl:a,spaceId:n,contactData:r,contactType:o,labels:i,selectedTags:d,onTagsUpdated:c})=>{const[u,p]=l.useState("main"),[m,y]=l.useState([]),[x,h]=l.useState(!1),[C,v]=l.useState(!1),[g,S]=l.useState([]),[w,T]=l.useState(!1),I=l.useMemo(()=>{const M=i??[],F=g??[],N=new Map;for(const U of M)U?.id&&N.set(String(U.id),U);for(const U of F)U?.id&&N.set(String(U.id),U);return Array.from(N.values())},[i,g]),k=l.useCallback(()=>{p("main"),y([]),h(!1),v(!1),S([]),T(!1)},[]);l.useEffect(()=>{e||k()},[e,k]),l.useEffect(()=>{if(u!=="tags"){h(!1);return}if(x||!I.length)return;const M=new Set(d.map(N=>String(N.id))),F=I.filter(N=>M.has(String(N?.id)));y(F),h(!0)},[u,x,I,d]);const D=l.useCallback(async M=>{if(w||!a||!n)return;const F=String(M??"").trim();if(!F)return;const N=F.toLowerCase(),U=I.find(O=>String(O?.name??"").trim().toLowerCase()===N);if(U?.id){y(O=>{const H=O??[];return H.some(B=>String(B?.id)===String(U.id))?H:[...H,U]});return}T(!0);try{const O=await fn({baseUrl:a,spaceId:n,name:F});S(H=>{const B=H??[];return!O?.id||B.some(J=>String(J?.id)===String(O.id))?B:[...B,O]}),y(H=>{const B=H??[];return!O?.id||B.some(J=>String(J?.id)===String(O.id))?B:[...B,O]})}finally{T(!1)}},[w,a,n,I]),P=l.useCallback(async()=>{if(C||!a||!n||!r||o!=="contact"&&o!=="business")return;const M=m.filter(F=>F?.id&&F?.name).map(F=>({id:String(F.id),name:String(F.name)}));v(!0);try{await Ze({baseUrl:a,spaceId:n,entityType:o,entityId:String(r.id),body:{tags:M}}),c(M),p("main")}finally{v(!1)}},[C,a,n,r,o,m,c]);return{view:u,setView:p,draftLabels:m,setDraftLabels:y,labelsOptions:I,isSaving:C,isCreatingLabel:w,handleCreateLabel:D,handleSaveTags:P}},Fl=({onClose:e})=>l.useCallback((a,n)=>{n!=="escapeKeyDown"&&e()},[e]),Bl={format:"IBusiness",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"},$l=({baseUrl:e,spaceId:a,contactId:n,initialBusiness:r,onBack:o,onEntityUpdated:i,currentUser:d})=>{const c=ye(),u=ut(),p=l.useRef(null),m=l.useRef(null),[y,x]=l.useState(()=>r?.businessName??""),[h,C]=l.useState(!1),[v,g]=l.useState(!1),[S,w]=l.useState(!1),[T,I]=l.useState([]),[k,D]=l.useState(r??null),[P,M]=l.useState(1),[F,N]=l.useState(!1),[U,O]=l.useState(!1),H=l.useMemo(()=>{const W=d?.display_name,G=d?.email;return String(W||G||"").trim()},[d]);l.useEffect(()=>()=>{p.current&&(clearTimeout(p.current),p.current=null),m.current?.abort()},[]),l.useEffect(()=>{D(r??null),x(r?.businessName??"")},[r]);const B=()=>{m.current?.abort(),m.current=null,p.current&&(clearTimeout(p.current),p.current=null),C(!1),O(!1),M(1),N(!1),I([])},J=W=>W.filter(G=>!!G?.id).map(G=>({businessId:String(G.id),businessName:String(G.name??"")})),Z=async({query:W,page:G})=>{if(!u)return;m.current?.abort();const se=new AbortController;m.current=se,g(!0);try{const ie={...Bl,currentPage:G,filter:[{value:W,column:"name",condition:""}]},je=await u.fetchBusinessTableData({pagination:ie,signal:se.signal});if(se.signal.aborted)return;const he=J(je?.contactos??[]);C(!0);const te=je?.paginacion?.total??0;I(Ae=>{const q=G===1?he:(()=>{const pe=new Map;for(const xe of Ae)pe.set(xe.businessId,xe);for(const xe of he)pe.set(xe.businessId,xe);return Array.from(pe.values())})();return te&&q.length>=te&&O(!0),q})}finally{g(!1),w(!1),N(!1)}},ne=W=>{B(),W&&(p.current&&(clearTimeout(p.current),p.current=null),w(!0),p.current=setTimeout(()=>{Z({query:W,page:1})},800))},V=W=>{const G=W.target;if(!(G.scrollHeight-G.scrollTop-G.clientHeight<1)||U||v||!y)return;const se=P+1;N(!0),M(se),Z({query:y,page:se})},_=async()=>{if(!u||!H)return;const W=String(y??"").trim();if(W){g(!0);try{const G={name:W,owner:H,imageUrl:"",members:[],tags:[],properties:[],address1:{street:"",city:"",state:"",zipcode:"",country:""},address2:{street:"",city:"",state:"",zipcode:"",country:""}},se=await u.createBusiness({business:G}),ie={businessId:String(se.id??""),businessName:String(se.name??W)};I([ie]),D(ie),C(!0)}finally{g(!1)}}},j=async()=>{if(!e||!a||!n)return;const W=k?.businessId??"",G=await Ze({baseUrl:e,spaceId:a,entityType:"contact",entityId:n,body:{businessId:W}});i?.(G),o()},A=h&&T.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(ot.LoadingButton,{size:"small",variant:"contained",onClick:_,loading:v,disabled:v||!H,children:c("global.createNew")})]}):t.jsx(s.Typography,{variant:"body2",children:c("global.noOptions")}),E=!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(Ea,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:c("conversations.contactDetails.business")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(ot.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(ht,{}),onClick:j,loading:!1,disabled:E,children:c("global.save")})]}),t.jsxs(s.Box,{sx:{position:"relative"},children:[v||S||F?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:k,onChange:(W,G)=>{D(G)},inputValue:y,onInputChange:(W,G,se)=>{x(G),se==="input"&&ne(G)},options:T,getOptionLabel:W=>W?.businessName??"",isOptionEqualToValue:(W,G)=>W.businessId===G.businessId,noOptionsText:A,renderInput:W=>t.jsx(s.TextField,{...W,size:"small",label:c("conversations.contactDetails.business"),placeholder:c("global.noValue"),InputProps:{...W.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[v||S?t.jsx(s.CircularProgress,{size:18,sx:{mr:1}}):null,W.InputProps.endAdornment]})}}),ListboxProps:{sx:{maxHeight:240,overflowY:"auto"},onScroll:V}})]})]})},Ml=({open:e,onClose:a,baseUrl:n,spaceId:r,contactId:o,sx:i,language:d="en",navigate:c,googleMapsApiKey:u,onEntityUpdated:p,contactNameFormat:m})=>{const{t:y,i18n:x}=Ye.useTranslation(),h=l.useRef(null);l.useEffect(()=>{if(window.google?.maps||document.querySelector('script[src^="https://maps.googleapis.com/maps/api/js"]'))return;if(!u){console.warn("Google Maps API key is missing. The location search feature will not work.");return}const ne=document.createElement("script");return ne.src=`https://maps.googleapis.com/maps/api/js?key=${u}&libraries=places`,ne.async=!0,ne.defer=!0,document.body.appendChild(ne),()=>{}},[u]),l.useEffect(()=>{d&&x.changeLanguage(d)},[d,x]);const C=ne=>y(ne),v=l.useMemo(()=>!n||!r?null:hn(n,r),[n,r]),{state:g,selectors:S,actions:w}=Go({open:e,baseUrl:n,spaceId:r,contactId:o,contactNameFormat:m}),T=Dl({entity:g.contactData,setEntity:ne=>{w.setContactData(ne??void 0),ne&&p&&p(ne)}}),{view:I,setView:k,draftLabels:D,setDraftLabels:P,labelsOptions:M,isSaving:F,isCreatingLabel:N,handleCreateLabel:U,handleSaveTags:O}=Al({open:e,baseUrl:n,spaceId:r,contactData:g.contactData,contactType:S.contactType,labels:S.labels,selectedTags:S.tags,onTagsUpdated:ne=>{if(!g.contactData)return;const V={...g.contactData,tags:ne};w.setContactData(V),p&&p(V)}}),H=Lt({baseUrl:n,spaceId:r,entityType:S.contactType==="business"||S.contactType==="contact"?S.contactType:void 0,entityId:g.contactData?String(g.contactData.id):void 0,initialImageUrl:g.contactData?.imageUrl,onEntityUpdated:T}),B=Fl({onClose:a}),J={position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:ne=>ne.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"},Z=Array.isArray(i)?[J,...i]:i?[J,i]:J;return t.jsx(ho,{value:v,children:t.jsx(go,{t:C,children:t.jsx(di,{navigate:c,children: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:Z,ref:h,children:[t.jsx(s.IconButton,{"aria-label":"close",onClick:B,sx:{position:"absolute",right:5,top:5,color:ne=>ne.palette.grey[500],zIndex:1},size:"small",children:t.jsx(ka,{sx:{fontSize:20}})}),g.isLoading&&!g.contactData?t.jsx(s.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:220},children:t.jsx(s.CircularProgress,{})}):g.error?t.jsx(s.Box,{sx:{mb:2},children:"Failed to load contact"}):g.contactData?t.jsx(ii,{value:{view:I,setView:k},children:t.jsx(ri,{entityType:S.contactType==="business"?"business":"contact",entityData:g.contactData,customContactFields:S.contactFields,baseUrl:n,spaceId:r,children:t.jsxs(s.Box,{sx:{position:"relative",height:"100%"},children:[t.jsx(s.Fade,{in:I==="main",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsxs(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:[t.jsx(wo,{imgUrl:H.imageUrl,displayName:S.displayName,tags:S.tags,onEditTags:()=>{k("tags")},onUploadPhoto:H.action.uploadImage,onPhotoFileChange:H.inputAtributes.onChange,photoInputRef:H.inputAtributes.ref,isUploadingPhoto:H.isUploading,onDeletePhoto:H.action.deleteImage,isDeletingPhoto:H.isDeleting,contactType:S.contactType,entityId:g.contactData?.id,firstName:S.isContact?g.contactData.firstName:void 0,lastName:S.isContact?g.contactData.lastName:void 0,name:S.isBusiness?g.contactData.name:void 0,onEntityUpdated:T}),t.jsxs(s.Box,{sx:{px:1,pb:2},children:[t.jsx(Ti,{dateFormat:S.userTrii?.regCon_dateFormat||"MM/dd/yyyy",entityType:S.contactType==="contact"||S.contactType==="business"?S.contactType:"contact",entityData:g.contactData,customContactFields:S.contactFields,baseUrl:n,spaceId:r,onEntityUpdated:T,currentUser:S.userTrii}),t.jsx(El,{entityType:S.contactType==="contact"||S.contactType==="business"?S.contactType:"contact",entityData:g.contactData,baseUrl:n,spaceId:r,onEntityUpdated:T,onDirectionSearchClick:()=>k("searchLocation")}),t.jsx(kl,{ownerData:g.contactData})]})]})}),t.jsx(s.Fade,{in:I==="searchLocation",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(Ho,{baseUrl:n,spaceId:r,entityType:S.contactType==="business"?"business":"contact",entityId:String(g.contactData.id),onBack:()=>k("main"),onEntityUpdated:T})})}),t.jsx(s.Fade,{in:I==="tags",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(Io,{value:D,options:M,onChange:P,onBack:()=>k("main"),onSave:O,isSaving:F,onCreateNew:U,isCreatingNew:N,popperContainer:h.current})})}),t.jsx(s.Fade,{in:I==="businessSelect",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx($l,{baseUrl:n,spaceId:r,contactId:String(g.contactData.id),initialBusiness:S.isContact&&g.contactData?.businessId?{businessId:String(g.contactData.businessId),businessName:String(g.contactData.businessName??"")}:null,onBack:()=>k("main"),onEntityUpdated:T,currentUser:S.userTrii})})})]})})}):null]})})})})})})},Pl=e=>t.jsx(Ye.I18nextProvider,{i18n:Nt,children:t.jsx(Ml,{...e})}),Rn=l.createContext(null),Ul=Rn.Provider,Nn=()=>l.useContext(Rn),Rl={events:[],setEvents:()=>{},filteredEvents:[]},Nl=(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])},Ln={open:!1,handleOpen:()=>{},handleClose:()=>{}},On=()=>{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])},yt={actions:{onError:()=>{},onSuccess:()=>{},resetValue:()=>{},changeValue:()=>{}},attributes:{error:!1,helperText:"",type:"",value:"",onChange:()=>{}}},xt=(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)},[]),y=l.useCallback(v=>{r(v)},[]),x=l.useCallback(()=>{r(a||"")},[a]),h=l.useMemo(()=>({onError:u,onSuccess:p,resetValue:x,changeValue:y}),[u,p,x,y]),C=l.useMemo(()=>({error:o,helperText:d,type:e,value:n,onChange:m}),[o,d,e,n,m]);return{actions:h,attributes:C}};function zn(e){return typeof e=="number"}const Ll={notifications:[],action:{addNotification:()=>{},deleteNotification:e=>{},handleTimeFieldChange:(e,a)=>{},handleTimePeriodChange:(e,a)=>{},handleReminderChange:(e,a)=>{},resetNotifications:()=>{}}};function Ol(e){const[a,n]=l.useState(e||[]),r=l.useCallback(()=>{const m={id:Ot(),timeValue:15,timePeriod:na.EventNotificationPeriod.MINUTE,sendToContact:!1};n(y=>y.concat(m))},[]),o=l.useCallback(m=>{n(y=>y.filter(x=>x.id!==m))},[]),i=l.useCallback((m,y)=>{const x=Number(m.target.value);zn(x)&&n(h=>h.map(C=>C.id===y?{...C,timeValue:x}:C))},[]),d=l.useCallback((m,y)=>{if(!zn(m.target.value))return;const x=m.target.value;n(h=>h.map(C=>C.id===y?{...C,timePeriod:x}:C))},[]),c=l.useCallback((m,y)=>{const x=m.target.checked;n(h=>h.map(C=>C.id===y?{...C,sendToContact:x}:C))},[]),u=l.useCallback(()=>{n([])},[]);l.useEffect(()=>{if(e){const m=e.map(y=>({...y,id:y.id||Ot()}));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 zl={state:{selectedStartDate:K(),selectedEndDate:K().add(30,"minute"),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},_l={state:{search:"",selectedContact:null},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},Wl={titleField:yt,descriptionField:yt,locationField:yt,colorField:yt,date:zl,allDay:!1,setAllDay:()=>{},isPrivate:!1,setIsPrivate:()=>{},recurrenceRule:"",setRecurrenceRule:()=>{},notifications:Ll,linkContact:_l,create:()=>({title:"",details:"",location:"",allDay:!1,isPrivate:!1,color:"",startAt:"",endAt:"",notifications:[],rule:"",contactId:null}),resetFields:()=>{}},Vl=(e,a)=>{const[n,r]=l.useState(e??K()),[o,i]=l.useState(a??K().add(30,"minute")),[d,c]=l.useState(!1),u=l.useCallback(y=>x=>{y(x)},[]),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}},Hl=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(x=>{o({id:x.id,name:x.name??""}),n("")},[]),c=l.useCallback(()=>{o(null)},[]),u=l.useCallback(x=>{n(x)},[]),p=l.useCallback(()=>{n(""),o(e?.id?{id:e.id,name:e.name}:null)},[e]),m=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:m,action:y}},Gl=e=>{const a=l.useRef(null),n=xt("text",e?.title??""),r=xt("text",e?.details??e?.description??""),o=xt("text",e?.location??""),i=xt("text",e?.color??"#1976d2"),d=Vl(e?.startAt?K(e.startAt):void 0,e?.endAt?K(e.endAt):void 0),[c,u]=l.useState(e?.allDay??!1),[p,m]=l.useState(e?.isPrivate??!1),[y,x]=l.useState(e?.rule??""),h=Ol(e?.notifications),C=Hl(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:h.notifications.filter(S=>S.timeValue>0).map(S=>({id:S.id,timePeriod:S.timePeriod,timeValue:S.timeValue,sendToContact:S.sendToContact})),rule:y,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,h.notifications,y,C.state.selectedContact]),g=l.useCallback(()=>{n.actions.resetValue(),r.actions.resetValue(),o.actions.resetValue(),i.actions.changeValue("#1976d2"),u(!1),m(!1),x(""),h.action.resetNotifications(),C.action.resetField(),d.action.setError(!1),a.current=null},[n.actions,r.actions,o.actions,i.actions,h.action,C.action,d.action]);return l.useEffect(()=>{const S=e?.id;!e||a.current===S||(a.current=S,u(e.allDay??!1),m(e.isPrivate??!1),x(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(K(e.startAt)),e.endAt&&d.action.setSelectedEndDate(K(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:y,setRecurrenceRule:x,notifications:h,linkContact:C,create:v,resetFields:g}),[n,r,o,i,d,c,p,y,h,C,v,g])},ql={field:{userIds:[]},action:{setUserIds:()=>{},resetField:()=>{}}},Yl={nameField:yt,color:"#ffffff",handleColorChange:()=>{},shareWithUsers:ql,googleCalendar:null,handleGoogleCalendarChange:()=>{}},Kl=()=>{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}},Jl=()=>{const e=xt("text",""),[a,n]=l.useState("#ffffff"),[r,o]=l.useState(null),i=Kl(),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])},Xl={tasks:[],setTasks:()=>{},filteredTasks:[]},Ql=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])},Zl={state:{selectedStartDate:K(),selectedEndDate:K(),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},ed={state:{search:"",selectedContact:null},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},td={titleField:yt,descriptionField:yt,date:Zl,linkContact:ed,create:()=>({title:"",description:"",startAt:"",endAt:"",contactId:null}),resetFields:()=>{}},ad=(e,a)=>{const[n,r]=l.useState(e??K()),[o,i]=l.useState(a??K()),[d,c]=l.useState(!1),u=l.useCallback(y=>x=>{y(x)},[]),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}},nd=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(x=>{o({id:x.id,name:x.name??""}),n("")},[]),c=l.useCallback(()=>{o(null)},[]),u=l.useCallback(x=>{n(x)},[]),p=l.useCallback(()=>{n(""),o(e?.id?{id:e.id,name:e.name}:null)},[e]),m=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:m,action:y}},rd=e=>{const a=l.useRef(null),n=xt("text",e?.title??""),r=xt("text",e?.description??""),o=ad(e?.startAt?K(e.startAt):void 0,e?.startAt?K(e.startAt):void 0),i=nd(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=K(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])},Oa=l.createContext({eventDialog:Ln,createCalendarDialog:Ln,event:Wl,events:Rl,calendar:Yl,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:Xl,activeCalendarIds:[],setActiveCalendarIds:()=>{},handleCreateTask:()=>{},task:td,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}),_n=e=>e,Wn=l.createContext(_n),sd=({t:e,children:a})=>t.jsx(Wn.Provider,{value:e,children:a}),Me=()=>{const e=l.useContext(Wn);return e?(...a)=>{const[n,...r]=a;return e(n,...r)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),_n)};var od=Object.defineProperty,id=(e,a,n)=>a in e?od(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,Vn=(e,a,n)=>id(e,typeof a!="symbol"?a+"":a,n);class ld extends Error{constructor(a,n,r){super(a),Vn(this,"status"),Vn(this,"body"),this.name="ApiError",this.status=n,this.body=r}}async function De({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 ld(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 ua(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 ua(e.baseUrl,e.spaceId).CALENDAR}async function dd(e){const a=ua(e.baseUrl,e.spaceId);return De({url:ke(a.SETTINGS,"/user")})}async function cd(e,a,n){const r=`${He(e)}/Events?start=${encodeURIComponent(a)}&end=${encodeURIComponent(n)}`;return De({url:r})}async function ud(e,a){const n=He(e);return De({url:ke(n,"/events"),method:"POST",body:a})}async function Hn(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 De({url:c,method:"PUT",body:o})}return De({url:ke(n,`/events/${r}`),method:"PUT",body:o})}async function za(e,a,n){const r=He(e);if(n){const o=n instanceof Date?n.toISOString():n,i=`${r}/events/${a}?occurrence=${o}`;await De({url:i,method:"DELETE"})}else await De({url:ke(r,`/events/${a}`),method:"DELETE"})}async function pd(e,a){const n=He(e);return De({url:ke(n,`/events/${a}`),method:"PUT",body:{finalized:!0}})}async function fd(e,a){const n=He(e);return De({url:ke(n,`/Task/${a}`)})}async function gd(e,a){const n=He(e);return De({url:ke(n,"/Task"),method:"POST",body:a})}async function Gn(e,a,n){const r=He(e);return De({url:ke(r,`/Task/${a}`),method:"PUT",body:n})}async function md(e,a){const n=He(e);await De({url:ke(n,`/Task/${a}`),method:"DELETE"})}async function hd(e,a,n){const r=He(e);return De({url:ke(r,`/Task/${a}`),method:"PUT",body:{isCompleted:n}})}async function yd(e){const a=He(e);return De({url:ke(a,"/Calendar")})}async function xd(e,a){const n=He(e);return De({url:ke(n,"/Calendar"),method:"POST",body:a})}async function bd(e,a,n){const r=He(e);return De({url:ke(r,`/Calendar/${a}`),method:"PUT",body:n})}async function vd({baseUrl:e,spaceId:a,contactId:n,signal:r}){const o=ua(e,a),i=ke(o.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return De({url:i,signal:r})}async function Cd({baseUrl:e,spaceId:a,pagination:n,signal:r}){const o=ua(e,a),i=ke(o.CONTACTS,"/Search");return De({url:i,method:"POST",body:n,signal:r})}function pa(e){const a=K(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 Gt=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},qt=e=>e?e.parentId?e.parentId:Gt(e.id):"",Sd=({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:y,externalInitialStartDate:x,externalInitialEndDate:h})=>{const{t:C}=Ye.useTranslation(),v=Nn(),g=(b,...L)=>C(b,...L),[S,w]=l.useState(o),[T,I]=l.useState(null),[k,D]=l.useState(null),[P,M]=l.useState(r),[F,N]=l.useState(d||""),[U,O]=l.useState(i||""),[H,B]=l.useState(!1),[J,Z]=l.useState("create"),[ne,V]=l.useState(null),[_,j]=l.useState({open:!1,message:"",severity:"info"}),[A,E]=l.useState(!1),[W,G]=l.useState("event"),[se,ie]=l.useState(!1),[je,he]=l.useState(!1),[te,Ae]=l.useState(null),[q,pe]=l.useState(!1),[xe,Ke]=l.useState(!1),[X,Pe]=l.useState(!1),[We,Ge]=l.useState(!1),ue="trii_calendar_last_view",Tt=b=>b==="month"||b==="week"||b==="day",[et,bt]=l.useState(()=>{try{const b=localStorage.getItem(ue);return Tt(b)?b:"month"}catch{return"month"}}),[ya,Kt]=l.useState(new Date),Jt=b=>{Kt(b),bt("day")},Ue=On(),Xe=On(),de=Gl(T??void 0),fe=rd(k??void 0);l.useEffect(()=>{r!==void 0&&M(r)},[r]),l.useEffect(()=>{o!==void 0&&w(o)},[o]),l.useEffect(()=>{i!==void 0&&O(i)},[i]),l.useEffect(()=>{d!==void 0&&N(d)},[d]),l.useEffect(()=>{c!==void 0&&(I(c),c?.calendarId&&O(c.calendarId))},[c]),l.useEffect(()=>{u!==void 0&&(console.log("[CalendarContextProvider] Sincronizando externalSelectedTask:",u),D(u),u?.calendarId&&N(u.calendarId))},[u]),l.useEffect(()=>{if(!m||!v||r!=="create"||!Ue.open)return;let b=!1;return vd({baseUrl:v.baseUrl,spaceId:v.spaceId,contactId:m}).then(L=>{b||!L||(de.linkContact.action.resetField(),de.linkContact.action.handleSelectContact(L),fe.linkContact.action.resetField(),fe.linkContact.action.handleSelectContact(L))}).catch(()=>{}),()=>{b=!0}},[m,Ue.open]),l.useEffect(()=>{if(a!==void 0)if(a&&!Ue.open){if(r==="create"){de.resetFields(),fe.resetFields(),B(!1),I(null),D(null),de.date.action.setError(!1),fe.date.action.setError(!1);const b=pa(x??new Date),L=h?pa(h):b.add(30,"minute");if(o==="task"?(fe.date.action.setSelectedStartDate(b),fe.date.action.setSelectedEndDate(b)):(de.date.action.setSelectedStartDate(b),de.date.action.setSelectedEndDate(L)),!i){const R=Re?.[0]??nt?.[0]?.id??Oe?.[0]?.id??"";R&&O(R)}if(!d){const R=Re?.[0]??Oe?.[0]?.id??"";R&&N(R)}}Ue.handleOpen()}else!a&&Ue.open&&Ue.handleClose()},[a]);const qe=()=>{de.resetFields(),fe.resetFields(),de.date.action.setError(!1),fe.date.action.setError(!1),n?n():Ue.handleClose()},Ee=Jl(),Xt=J==="create",[Oe,xa]=l.useState([]),[ba,Qt]=l.useState(!1),[va,Ca]=l.useState([]),[lt,Zt]=l.useState(""),tt="calendar_selected_ids",[Re,dt]=l.useState(()=>{try{const b=localStorage.getItem(tt);return b?JSON.parse(b):[]}catch{return[]}}),ft=Nl(Re,va),It=Ql(Re),ea=()=>{j(b=>({...b,open:!1}))},at=l.useCallback((b,L,R)=>{y?.(b,L,R)},[y]);function kt(b){const L=b?.startAt??b?.start,R=b?.endAt??b?.end??L;return{startAt:L,endAt:R}}const{myCalendars:nt,otherCalendars:Sa}=l.useMemo(()=>{const b=Oe??[];if(!lt)return{myCalendars:b,otherCalendars:[]};const L=b.filter(Q=>Q.userId===lt),R=b.filter(Q=>Q.userId!==lt);return L.length===0&&b.length>0?{myCalendars:b,otherCalendars:[]}:{myCalendars:L,otherCalendars:R}},[Oe,lt]),gt=l.useCallback(async()=>{if(v)try{const b=new Date,L=b.getUTCFullYear(),R=b.getUTCMonth(),Q=new Date(Date.UTC(L,R-1,1,0,0,0)).toISOString(),Y=new Date(Date.UTC(L,R+2,1,0,0,0)).toISOString(),me=await cd(v,Q,Y);Ca(me)}catch(b){console.error("Error fetching activities:",b)}},[v]),rt=l.useCallback(async b=>{if(v)try{const L=await fd(v,b);It.setTasks(L.map(R=>({id:R.id,title:R.title||"",start:new Date(R.startAt),end:new Date(R.endAt||R.startAt),startAt:R.startAt,endAt:R.endAt,description:R.description,calendarId:R.calendarId,isCompleted:R.isCompleted||!1,relatedContact:R.relatedContact,kind:"task"})))}catch(L){console.error("Error fetching tasks:",L)}},[v]),vt=l.useCallback(async()=>{if(v){Qt(!0);try{const b=await yd(v);xa(b)}catch(b){console.error("Error fetching calendars:",b)}finally{Qt(!1)}}},[v]);l.useEffect(()=>{const b=nt?.[0]?.id??Oe?.[0]?.id??"";b&&Ue.open&&P==="create"&&(U||O(b),F||N(b))},[Ue.open,P]);const Et=l.useRef(!1);l.useEffect(()=>{a||(Et.current=!1)},[a]),l.useEffect(()=>{if(!v||!a||Et.current||(Et.current=!0,vt(),r==="create"))return;let b=!1;return dd(v).then(L=>{b||Zt(L.uid)}).catch(()=>{}),()=>{b=!0}},[v,a,r,vt]);function Dt(b,L,R){w(b),M("create"),I(null),D(null),de.resetFields(),fe.resetFields(),B(!1);const Q=pa(L??new Date),Y=R?pa(R):Q.add(30,"minute"),me=Y.isAfter(Q)?Y:Q.add(30,"minute");if(b==="task"){fe.date.action.setSelectedStartDate(Q),fe.date.action.setSelectedEndDate(Q),fe.date.action.setError(!1);const we=Re?.[0]??Oe?.[0]?.id??"";N(we)}else{de.date.action.setSelectedStartDate(Q),de.date.action.setSelectedEndDate(me),de.date.action.setError(!1);const we=Re?.[0]??nt?.[0]?.id??Oe?.[0]?.id??"";O(we);const re=nt?.find(Se=>Se.id===we)??Oe?.find(Se=>Se.id===we);re?.color&&de.colorField.actions.changeValue(re.color)}Ue.handleOpen()}function ja(){Dt("event")}function wa(){de.date.action.setError(!1),fe.date.action.setError(!1),M("edit")}function f(b){const{startAt:L,endAt:R}=kt(b),Q={...b,kind:"event",startAt:L,endAt:R,details:b?.details??""};w("event"),I(Q),D(null);const Y=Q.calendarId||nt?.[0]?.id||Oe?.[0]?.id||"";O(Y),M("view"),de.date.action.setError(!1),fe.date.action.setError(!1),Ue.handleOpen()}async function $(b){if(!v)return;let L;if(b)L={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(Y=>({id:Ot(),timeValue:Y.value,timePeriod:Y.type,sendToContact:Y.sendToContact||!1})),eventTypeId:"",repeatId:""};else{const Y=de.create();if(!Y.title){j({open:!0,message:g("global.nameRequired"),severity:"error"});return}L={...Y,startAt:new Date(Y.startAt),endAt:new Date(Y.endAt),contactId:Y.contactId||m||null,eventTypeId:"",repeatId:"",notifications:Y.notifications.map(me=>({...me,id:me.id||Ot()}))}}const R=U;if(!R){j({open:!0,message:g("global.errorSavingChanges"),severity:"error"});return}const Q={...L,calendarId:R};pe(!0);try{j({open:!0,message:g("global.savingChanges"),severity:"info"});const Y=await ud(v,Q);Re.includes(R)||dt(me=>[...me,R]),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("created","event",Y),de.resetFields(),qe(),setTimeout(()=>{gt()},500)}catch(Y){console.error("Error creando evento:",Y);const me=Y?.response?.data?.message||Y?.message||g("global.errorSavingChanges");j({open:!0,message:me,severity:"error"})}finally{pe(!1)}}async function z(){if(!T?.id)return;const b=de.create(),L=U||T.calendarId||"";if(!L){j({open:!0,message:g("global.errorSavingChanges"),severity:"error"});return}T.originalOccurrenceDate!=null?(Ae(()=>async R=>{await ee(b,L,R)}),he(!0)):await ee(b,L,!1)}async function ee(b,L,R){const Q=T?.originalOccurrenceDate!=null,Y={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:L,notifications:b.notifications,contactId:b.contactId??null};(R||!Q)&&(Y.rule=b.rule);const me=qt(T),we={updatedActivity:Y,activityId:me};Q&&!R&&(we.originalOccurrenceDate=T.originalOccurrenceDate),Ke(!0);try{const re=await Hn(v,we);if(re){const Se={...re,relatedContact:re.relatedContact??T.relatedContact};I(Se),re.calendarId&&O(re.calendarId),ft.setEvents(ta=>ta.map(ct=>ct.id===T?.id?{...ct,...re,relatedContact:re.relatedContact??ct.relatedContact,start:new Date(re.startAt),end:new Date(re.endAt||re.startAt),originalOccurrenceDate:re.originalOccurrenceDate?typeof re.originalOccurrenceDate=="string"?re.originalOccurrenceDate:re.originalOccurrenceDate.toISOString():ct.originalOccurrenceDate}:ct))}j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("updated","event",re),qe(),setTimeout(()=>{gt()},500)}catch(re){console.error("Error actualizando evento:",re);const Se=re?.response?.data?.message||re?.message||g("global.errorSavingChanges");j({open:!0,message:Se,severity:"error"})}finally{Ke(!1)}}async function ce(b){he(!1),te&&(await te(b),Ae(null))}async function ge(){T?.originalOccurrenceDate!=null?ie(!0):(G("event"),E(!0))}async function le(){if(v)if(E(!1),W==="event")try{const b=qt(T);qe(),await za(v,b),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("deleted","event",{id:b}),setTimeout(()=>{gt()},500)}catch(b){console.error("Error deleting event:",b);const L=b?.message?.includes("duplicate key")?g("global.eventAlreadyDeleted","El evento ya fue eliminado"):g("global.errorSavingChanges");j({open:!0,message:L,severity:"error"})}else{if(!k?.id)return;try{const b=Gt(k.id),L=k.calendarId;qe(),await md(v,b),D(null),fe.resetFields(),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("deleted","task",{id:b}),L&&setTimeout(()=>{rt(L)},500)}catch(b){console.error("Error deleting task:",b);const L=b?.message?.includes("duplicate key")?g("global.taskAlreadyDeleted","La tarea ya fue eliminada"):g("global.errorSavingChanges");j({open:!0,message:L,severity:"error"})}}}async function oe(b){ie(!1);const L=qt(T);qe();try{b?await za(v,L):await za(v,L,T.originalOccurrenceDate),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("deleted","event",{id:L}),setTimeout(()=>{gt()},500)}catch(R){console.error("Error deleting recurring event:",R);const Q=R?.message?.includes("duplicate key")?g("global.eventAlreadyDeleted","El evento ya fue eliminado"):g("global.errorSavingChanges");j({open:!0,message:Q,severity:"error"})}}async function Fe(){if(!v)return;const b=qt(T);await pd(v,b),qe()}async function be(b,L,R){const Q=L instanceof Date?L:new Date(L),Y=R instanceof Date?R:new Date(R),me=Q.toISOString(),we=Y.toISOString(),re=b.kind==="task";!re&&b.originalOccurrenceDate!=null?(I(b),Ae(()=>async Se=>{await ve(b,me,we,Q,Y,re,Se)}),he(!0)):await ve(b,me,we,Q,Y,re,!1)}async function ve(b,L,R,Q,Y,me,we){me||ft.setEvents(re=>re.map(Se=>Se.id===b.id?{...Se,start:Q,end:Y,startAt:Q,endAt:Y}:Se)),j({open:!0,message:g("global.savingChanges"),severity:"info"});try{if(me){const re=Gt(b.id),Se={title:b.title,description:b.description,startAt:L,endAt:R,calendarId:b.calendarId,allDay:b.allDay||!1,isCompleted:b.isCompleted||!1};await Gn(v,re,Se),await rt(b.calendarId)}else{const re=qt(b),Se=b.originalOccurrenceDate!=null,ta={title:b.title,details:b.details,startAt:new Date(L),endAt:new Date(R),allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:b.calendarId};(we||!Se)&&(ta.rule=b.rule);const ct={updatedActivity:ta,activityId:re};Se&&!we&&(ct.originalOccurrenceDate=b.originalOccurrenceDate),await Hn(v,ct)}j({open:!0,message:g("global.changesSaved"),severity:"success"}),setTimeout(()=>{gt()},500)}catch{me||ft.setEvents(re=>re.map(Se=>Se.id===b.id?{...Se,start:b.start,end:b.end}:Se)),j({open:!0,message:g("global.errorSavingChanges"),severity:"error"})}}function Ve(b,L){Dt("event",b,L)}function st(){Ee.nameField.actions.resetValue(),Ee.handleColorChange("#ffffff"),Ee.shareWithUsers.action.resetField(),Ee.handleGoogleCalendarChange(null)}function Qe(){st(),V(null),Z("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 At(){Z("create"),V(null),st(),Xe.handleOpen()}function Ta(b){Z("edit"),V(b),Ne(b),Xe.handleOpen()}async function Ia(){if(!v)return;const b=(Ee.nameField.attributes.value??"").trim();if(!b){j({open:!0,message:g("global.nameRequired"),severity:"error"});return}const L=Ee.shareWithUsers.field.userIds,R={title:b,color:Ee.color,sharedWith:L.length?L:void 0,googleCalendar:Ee.googleCalendar};try{if(Xt)await xd(v,R);else{const Q=ne?.id;if(!Q)return;await bd(v,Q,R)}Qe(),j({open:!0,message:g(Xt?"global.calendarCreatedSuccess":"global.calendarUpdatedSuccess"),severity:"success"}),vt()}catch{j({open:!0,message:g("global.errorSavingChanges"),severity:"error"})}}async function Cr(b){if(!v)return;let L;if(b?L={title:b.title,description:b.description||"",startAt:b.startAt,contactId:b.relatedContactId||null}:L=fe.create(),!L.title){j({open:!0,message:g("global.nameRequired"),severity:"error"});return}const R=F;if(!R){j({open:!0,message:g("global.errorSavingChanges"),severity:"error"});return}const Q={...L,calendarId:R,contactId:L.contactId||m||null};Pe(!0);try{j({open:!0,message:g("global.savingChanges"),severity:"info"});const Y=await gd(v,Q);Re.includes(R)||dt(me=>[...me,R]),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("created","task",Y),fe.resetFields(),qe(),setTimeout(()=>{rt(R)},500)}catch(Y){console.error("Error creando tarea:",Y);const me=Y?.response?.data?.message||Y?.message||g("global.errorSavingChanges");j({open:!0,message:me,severity:"error"})}finally{Pe(!1)}}function Sr(){Dt("task")}async function jr(){if(!v||!k?.id)return;const b=fe.create();if(!b.title){j({open:!0,message:g("global.nameRequired"),severity:"error"});return}const L=F||k.calendarId;if(!L){j({open:!0,message:g("global.errorSavingChanges"),severity:"error"});return}const R={title:b.title,description:b.description,startAt:b.startAt,endAt:b.endAt,calendarId:L,contactId:b.contactId??null};Ge(!0);try{const Q=Gt(k.id),Y=await Gn(v,Q,R);if(Y){const me={...Y,relatedContact:Y.relatedContact??k.relatedContact};D(me),Y.calendarId&&N(Y.calendarId),It.setTasks(we=>we.map(re=>re.id===k?.id?{...re,...Y,relatedContact:Y.relatedContact??re.relatedContact,start:Y.startAt?new Date(Y.startAt):re.start,end:Y.startAt?new Date(Y.startAt):re.end}:re))}j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("updated","task",Y),qe(),setTimeout(()=>{const me=k.calendarId,we=Y?.calendarId||L;rt(we),me&&me!==we&&rt(me)},500)}catch(Q){console.error("Error actualizando tarea:",Q);const Y=Q?.response?.data?.message||Q?.message||g("global.errorSavingChanges");j({open:!0,message:Y,severity:"error"})}finally{Ge(!1)}}async function wr(){k?.id&&(G("task"),E(!0))}async function Tr(){if(!v||!k?.id)return;const b=!k.isCompleted;try{const L=Gt(k.id),R=k.calendarId,Q=await hd(v,L,b);Q&&D(Q),j({open:!0,message:g("global.changesSaved"),severity:"success"}),R&&setTimeout(()=>{rt(R)},500)}catch{j({open:!0,message:g("global.errorSavingChanges"),severity:"error"})}}function Ir(){const b=S==="event",L=b?T:k;if(!L)return;const R={...L};b?(I(null),M("create"),B(!0),setTimeout(()=>{de.titleField.actions.changeValue(R.title??""),de.descriptionField.actions.changeValue(R.details??R.description??""),de.locationField.actions.changeValue(R.location??""),de.colorField.actions.changeValue(R.color??""),de.setAllDay(R.allDay??!1),de.setIsPrivate(R.isPrivate??!1),de.setRecurrenceRule(R.rule??""),de.date.action.setSelectedStartDate(K(R.startAt)),de.date.action.setSelectedEndDate(K(R.endAt)),de.date.action.setError(!1),de.notifications.action.resetNotifications(),R.relatedContact?.id&&de.linkContact.action.handleSelectContact(R.relatedContact),O(R.calendarId??U)},50)):(D(null),M("create"),setTimeout(()=>{fe.titleField.actions.changeValue(R.title??""),fe.descriptionField.actions.changeValue(R.description??""),fe.date.action.setSelectedStartDate(K(R.startAt)),fe.date.action.setSelectedEndDate(K(R.startAt)),fe.date.action.setError(!1),R.relatedContact?.id&&fe.linkContact.action.handleSelectContact(R.relatedContact),N(R.calendarId??F)},50))}function kr(b){const{startAt:L,endAt:R}=kt(b),Q={...b,kind:"task",startAt:L,endAt:R,description:b?.description??""};w("task"),D(Q),N(Q.calendarId??""),O(Q.calendarId??""),I(null),M("view"),de.date.action.setError(!1),fe.date.action.setError(!1),Ue.handleOpen()}function Er(b){return b?.kind==="task"?kr(b):f(b)}l.useEffect(()=>{try{Re&&localStorage.setItem(tt,JSON.stringify(Re))}catch{}},[Re]),l.useEffect(()=>{Oe?.length&&dt(b=>{const L=new Set(Oe.map(Q=>Q.id)),R=(b??[]).filter(Q=>L.has(Q));return R.length?R:Oe.map(Q=>Q.id)})},[Oe]),l.useEffect(()=>{try{localStorage.setItem(ue,et)}catch{}},[et]);const Dr={eventDialog:{...Ue,handleClose:qe},dialogMode:P,createCalendarDialog:Xe,event:de,calendar:Ee,events:ft,handleCreateEvent:$,handleSelectEvent:Er,handleOpenEventCreate:ja,handleStartEditingEvent:wa,handleSaveUpdatedEvent:z,handleEndEvent:Fe,handleDeleteEvent:ge,handleResizeEvent:be,selectedEvent:T,savingSnackbar:_,handleCloseSnackbar:ea,dialogType:S,setDialogType:w,handleOpenTaskCreate:Sr,handleOpenCreateFromSlot:Ve,handleCloseCreateCalendarDialog:Qe,calendarDialogMode:J,editingCalendar:ne,handleOpenCreateCalendarDialog:At,handleOpenEditCalendarDialog:Ta,handleSubmitCalendar:Ia,tasks:It,activeCalendarIds:Re,setActiveCalendarIds:dt,handleCreateTask:Cr,task:fe,selectedTask:k,taskCalendarId:F,setTaskCalendarId:N,eventCalendarId:U,setEventCalendarId:O,userManuallyChangedColor:H,setUserManuallyChangedColor:B,myCalendars:nt,otherCalendars:Sa,isLoadingCalendars:ba,isCreatingEvent:q,isUpdatingEvent:xe,isCreatingTask:X,isUpdatingTask:We,handleSaveUpdatedTask:jr,handleDeleteTask:wr,handleToggleTaskCompleted:Tr,handleDuplicateItem:Ir,calendarView:et,setCalendarView:bt,calendarDate:ya,setCalendarDate:Kt,navigateToDate:Jt,confirmDeleteDialog:{open:A,handleClose:()=>E(!1),itemType:W},handleConfirmDelete:le,deleteRecurringDialog:{open:se,handleClose:()=>ie(!1)},handleConfirmDeleteRecurring:oe,editRecurringDialog:{open:je,handleClose:()=>{he(!1),Ae(null)}},handleConfirmEditRecurring:ce,hiddenTabs:p};return t.jsx(sd,{t:g,children:t.jsx(Oa.Provider,{value:Dr,children:e})})},fa=s.styled(s.Box)(()=>({display:"flex",flexDirection:"column",gap:.5})),_a=s.styled(s.Box)(()=>({display:"flex",alignItems:"baseline",gap:1})),Wa=s.styled(s.Typography)(()=>({marginX:"8px",marginTop:"-15px",color:"text.primary"})),wt="DD/MM/YYYY",ga="HH:mm",jd=({selectedStartDate:e,selectedEndDate:a,handleSelectStart:n,handleSelectEnd:r,isError:o,disabled:i,hideLabel:d=!1,allDay:c=!1})=>{const u=Me(),p=l.useMemo(()=>a.diff(e,"minute"),[e,a]),m=l.useMemo(()=>{if(p===0)return"0 min";const g=Math.floor(p/60),S=p%60;return g===0?`${S} min`:S===0?`${g} h`:`${g}.${Math.round(S/60*10)} h`},[p]),y=g=>{if(!g)return;const S=g.hour(e.hour()).minute(e.minute()).second(0).millisecond(0),w=g.hour(a.hour()).minute(a.minute()).second(0).millisecond(0);n(S),r(w)},x=g=>{if(!g)return;const S=g.hour(0).minute(0).second(0).millisecond(0);n(S)},h=g=>{if(!g)return;const S=g.hour(23).minute(59).second(59).millisecond(999);r(S)},C=g=>{if(!g)return;const S=e.hour(g.hour()).minute(g.minute()).second(0).millisecond(0),w=S.add(p,"minute");n(S),r(w)},v=g=>{if(!g)return;let S=e.hour(g.hour()).minute(g.minute()).second(0).millisecond(0);(S.isBefore(e)||S.isSame(e))&&(S=S.add(1,"day")),r(S)};return i?t.jsxs(fa,{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(wt)}),t.jsx(s.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(s.Typography,{variant:"body1",children:a.format(wt)})]}):t.jsxs(s.Box,{children:[t.jsx(s.Typography,{variant:"body1",sx:{mb:1},children:e.format(wt)}),t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(s.Typography,{variant:"body1",children:e.format(ga)}),t.jsx(s.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(s.Typography,{variant:"body1",children:a.format(ga)}),p>0&&t.jsxs(s.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1},children:["(",m,")"]})]})]})]}):t.jsxs(fa,{children:[!d&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),t.jsx(Je.LocalizationProvider,{dateAdapter:Ja.AdapterDayjs,children:c?t.jsxs(_a,{children:[t.jsx(Je.DatePicker,{disabled:i,format:wt,label:u("global.from"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.palette.background.panel}}}},value:e,onChange:x,minDate:K(),sx:{flex:1}}),t.jsx(Wa,{variant:"body1",children:"\u2013"}),t.jsx(Je.DatePicker,{disabled:i,format:wt,label:u("global.to"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.palette.background.panel}}}},value:a,onChange:h,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:wt,slotProps:{textField:()=>({size:"small",fullWidth:!0}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.palette.background.panel}}}},value:e,onChange:y,minDate:K()})}),t.jsxs(_a,{children:[t.jsx(Je.TimePicker,{disabled:i,format:ga,ampm:!1,slotProps:{textField:()=>({label:u("global.from"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.palette.background.panel}}}},value:e,onChange:C,sx:{alignSelf:"baseline",flex:1}}),t.jsx(Wa,{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:ga,ampm:!1,slotProps:{textField:()=>({label:u("global.to"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.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]}),Va=({titleField:e,disabled:a,variantMode:n="default"})=>{const r=Me(),{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:"outlined",size:"small",type:i})})},wd=s.styled(s.Box)(()=>({marginBottom:"6px",padding:"8px 16px",border:"1px solid lightgray",borderRadius:"3px"})),Td=s.styled(s.Box)(()=>({marginBottom:"6px",padding:"4px 0px"})),qn=s.styled(s.Box)(()=>({display:"flex",gap:"8px",alignItems:"center",userSelect:"none"})),Id=s.styled(s.TextField)(()=>({width:"13%"})),kd=s.styled(s.Select)(()=>({width:"23%"})),Ed=s.styled(s.Box)(()=>({display:"flex",gap:1,width:"100%",alignItems:"center"})),Dd=s.styled(s.IconButton)(()=>({ml:"auto",color:"error"})),Yn=[{title:"minute",value:na.EventNotificationPeriod.MINUTE},{title:"hour",value:na.EventNotificationPeriod.HOUR},{title:"day",value:na.EventNotificationPeriod.DAY}],Ad=({data:e,timeValueHandler:a,timePeriodHandler:n,sendToContactHandler:r,deleteHandler:o,disabled:i=!1})=>{const d=Me(),c=e.timeValue??0;return i?t.jsxs(Td,{children:[t.jsx(qn,{children:t.jsxs(s.Typography,{variant:"body1",sx:{color:"text.secondary"},children:[d("calendarView.reminders.sendReminder.pt1")," ",c," ",d(`calendarView.reminders.timePeriod.${Yn.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(wd,{children:[t.jsxs(qn,{children:[t.jsx(s.Typography,{variant:"body2",sx:{userSelect:"none"},children:d("calendarView.reminders.sendReminder.pt1")}),t.jsx(Id,{disabled:i,onChange:u=>a(u,e.id),value:c,type:"text",variant:"outlined",size:"small"}),t.jsx(kd,{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:Yn.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(Ed,{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(Dd,{disabled:i,onClick:()=>o(e.id),sx:{ml:"auto"},children:t.jsx(aa,{})})]})]})},Fd=s.styled(s.Box)`
|
|
16
|
+
<%s key={someKey} {...props} />`,At,Qe,Ta,Qe),rt[Qe+At]=!0}}return f===r?gt(ve):Sa(ve),ve}}function Et(f,$,z){return vt(f,$,z,!0)}function Dt(f,$,z){return vt(f,$,z,!1)}var ja=Dt,wa=Et;Rt.Fragment=r,Rt.jsx=ja,Rt.jsxs=wa})()),Rt}process.env.NODE_ENV==="production"?Aa.exports=ts():Aa.exports=as();var t=Aa.exports;es(t);const ns=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})),an=s.styled(s.IconButton)({padding:4}),rs=s.styled(s.Box)({display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"16px",position:"relative"}),ss=s.styled(s.Avatar)({width:60,height:60,marginBottom:8}),os=s.styled(s.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:200,textAlign:"center"}),is=s.styled(s.Box)({display:"flex",justifyContent:"center",alignItems:"center",width:60,height:60,marginBottom:8}),ls=({imgUrl:e,name:a,contactId:n,navigate:r,isLoading:o=!1,onError:i,onClose:d,isBusiness:c=!1})=>{const u=l.useCallback(v=>g=>{try{if(g.preventDefault(),g.stopPropagation(),!v)throw new Error("Navigation URL is required");g.ctrlKey||g.metaKey||g.button===1?window.open(v,"_blank","noopener,noreferrer"):r(v)}catch(S){i?.(S instanceof Error?S:new Error("Navigation failed"))}},[r,i]),{t:p}=Ye.useTranslation(),m=u(c?`/a/contacts/business/${n}`:`/a/contacts/contacts/${n}`),y=u(`/a/conversations/conversations?contactId=${n}`),x=!!a,h=a||p("contactName.noName"),C=`Avatar for ${h}`;return t.jsxs(rs,{children:[t.jsxs(ns,{children:[t.jsx(an,{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(Ar,{fontSize:"small"})}),t.jsx(an,{color:"info",size:"small",onClick:v=>{y(v),d()},onMouseDown:v=>{v.button===1&&(y(v),d())},"aria-label":"Go to conversations",children:t.jsx(Fr,{fontSize:"small"})})]}),o?t.jsx(is,{children:t.jsx(s.CircularProgress,{size:24})}):t.jsx(ss,{src:e,alt:C,onError:()=>i?.(new Error("Failed to load avatar"))}),t.jsx(os,{variant:"h6",title:h,sx:x?void 0:{color:"text.disabled",fontStyle:"italic"},children:h})]})},ds=s.styled(s.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),cs=s.styled(s.Box)({width:"100%",borderBottom:"1px solid lightgray"}),us=s.styled(s.Box)({display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:1,minHeight:"50px",position:"relative",maxWidth:"inherit"}),ps=s.styled(s.Box)(({theme:e})=>({marginTop:"-20px",padding:0,color:e.palette.primary.main})),fs=s.styled(s.Box)({display:"flex",maxWidth:"90%",gap:"10px",width:"100%",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",alignItems:"center"}),gs=s.styled(s.Box)({display:"flex",flexDirection:"column",height:"50px",maxWidth:"90%",minWidth:0,overflow:"hidden"}),ms=s.styled(s.Typography)({whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",maxWidth:"90%",position:"absolute",bottom:16,left:40}),hs=({icon:e,contactList:a,title:n,showTitle:r=!0})=>{const o=i=>t.jsx(us,{children:t.jsxs(fs,{children:[t.jsx(ps,{children:e}),t.jsxs(gs,{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(ms,{variant:"body2",fontSize:12,color:"text.secondary",children:i.note})]})},i.id);return t.jsxs(ds,{children:[r&&t.jsx(cs,{children:t.jsx(s.Typography,{variant:"subtitle1",fontWeight:"bold",gutterBottom:!0,mt:2,children:n})}),a?.map(o)]})},ys=s.styled(s.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),xs=s.styled(s.Typography)({borderBottom:"1px solid lightgray",width:"100%"}),bs=s.styled(s.Box)({display:"flex",alignItems:"center",gap:8,width:"100%",minWidth:0}),vs=s.styled(s.Typography)({fontSize:14,wordBreak:"break-word",overflowWrap:"anywhere",minWidth:0}),Cs=s.styled(Be.Handyman)(({theme:e})=>({color:e.palette.primary.main,fontSize:16})),Ss=({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=mt(o,mt.ISO_8601).isValid(),c=u=>mt(o).format(u);switch(i){case ae.ContactField_type.TIME:return d?c("HH:mm"):o;case ae.ContactField_type.DATE:return d?c("DD/MM/YYYY"):o;case ae.ContactField_type.TIMERANGE:case ae.ContactField_type.DATERANGE:if(d)return i===ae.ContactField_type.TIMERANGE?c("HH:mm"):c("DD/MM/YYYY");const u=o.split(" ");if(u.length===2){const[p,m]=u,y=i===ae.ContactField_type.TIMERANGE?mt(p).format("HH:mm"):mt(p).format("DD/MM/YYYY"),x=i===ae.ContactField_type.TIMERANGE?mt(m).format("HH:mm"):mt(m).format("DD/MM/YYYY");return`${y} - ${x}`}return o;default:return o}}return o};return t.jsxs(ys,{children:[t.jsx(xs,{fontWeight:"bold",gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.map((o,i)=>o.value?.length>0&&t.jsxs(bs,{children:[t.jsx(Cs,{}),t.jsxs(vs,{children:[n(o.nameKey),":"," ",r(o.value,o.type)]})]},i))]})},js=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),ws=s.styled(s.Box)({marginBottom:16}),Ts=s.styled(s.Chip)(({theme:e})=>({marginRight:8,marginBottom:8,backgroundColor:`${e.palette.primary.main}b3`})),Is=({contactData:e,title:a})=>!e||!e.tags?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(js,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(ws,{children:e?.tags?.filter(n=>n.name?.trim()).map(n=>t.jsx(Ts,{label:n.name,color:"primary",size:"small"},n.id))})]});function nn(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 ks=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Es=({contactData:e,title:a})=>!e||!nn(e)?null:t.jsxs(t.Fragment,{children:[t.jsx(ks,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(s.Typography,{variant:"body2",color:"text.secondary",children:e?.businessName})]});function rn(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 Ds=({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})},As=s.styled(s.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Fs=({contactData:e,title:a,navigate:n})=>!e||!rn(e)||!e.members?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(As,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.members.map(r=>t.jsx(Ds,{memberId:String(r.id),name:r.name,navigate:n},r.id))]});var Bs="Labels",$s="Phone",Ms="Business",Ps="Business Members",Us="Properties",Rs="View",Ns="Tags",Ls={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"},Os={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"},zs={noName:"No name"},_s={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"},Ws={upload:"Upload photo",delete:"Delete photo"},Vs={from:"From",to:"To"},Hs={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"}}},Gs={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"},qs={labels:Bs,phone:$s,business:Ms,businessMembers:Ps,properties:Us,view:Rs,tags:Ns,global:Ls,searchLocationModal:Os,contactName:zs,contactAddressError:_s,avatar:Ws,contactEdit:Vs,conversations:Hs,calendarView:Gs},Ys="Etiquetas",Ks="Tel\xE9fono",Js="Empresa",Xs="Miembros de la empresa",Qs="Propiedades",Zs="Ver",eo="Etiquetas",to={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"},ao={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"},no={noName:"Sin nombre"},ro={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"},so={upload:"Subir foto",delete:"Eliminar foto"},oo={from:"Desde",to:"Hasta"},io={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"}}},lo={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"},co={labels:Ys,phone:Ks,business:Js,businessMembers:Xs,properties:Qs,view:Zs,tags:eo,global:to,searchLocationModal:ao,contactName:no,contactAddressError:ro,avatar:so,contactEdit:oo,conversations:io,calendarView:lo};const uo={en:{translation:qs},es:{translation:co}},Nt=Br.createInstance();Nt.use(Ye.initReactI18next).init({resources:uo,lng:"en",fallbackLng:"en",interpolation:{escapeValue:!1},react:{useSuspense:!1}});const sn=(e="",a="",n=Ft.Spaces.nameFormat.FIRST_LAST)=>{const r=e?.trim()||"",o=a?.trim()||"";switch(n){case Ft.Spaces.nameFormat.FIRST_LAST:return`${r} ${o}`.trim();case Ft.Spaces.nameFormat.LAST_FIRST:return`${o} ${r}`.trim();case Ft.Spaces.nameFormat.FIRST_COMMA_LAST:return r&&o?`${r}, ${o}`:r||o;case Ft.Spaces.nameFormat.LAST_COMMA_FIRST:return r&&o?`${o}, ${r}`:o||r;default:return`${r} ${o}`.trim()}},po=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}=Ye.useTranslation();l.useEffect(()=>{d&&p.changeLanguage(d)},[d,p]);const m=u,y=rn(r),x=nn(r),h=r?x?sn(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=g=>{g.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(po,{children:t.jsxs(s.CardContent,{children:[t.jsx(ls,{navigate:i,contactId:r?.id,imgUrl:o,name:h,onClose:n,isBusiness:y}),t.jsx(Is,{contactData:r,title:m("labels")}),x&&t.jsx(Es,{contactData:r,title:m("business")}),y&&t.jsx(Fs,{contactData:r,title:m("businessMembers"),navigate:i}),C.map((v,g)=>t.jsx(hs,{icon:v.icon,title:v.title,contactList:v.contactList,showTitle:v.showTitle},g)),t.jsx(Ss,{properties:r?.properties,title:m("properties")})]})})})})},on=e=>t.jsx(Ye.I18nextProvider,{i18n:Nt,children:t.jsx(fo,{...e})}),ln=e=>e,dn=l.createContext(ln),go=({t:e,children:a})=>t.jsx(dn.Provider,{value:e,children:a}),ye=()=>{const e=l.useContext(dn);return e?(...a)=>{const[n,...r]=a;return e(n,...r)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),ln)},mo=({tags:e,onEditTags:a})=>{const n=ye(),[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)},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(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($r,{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")}),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))})]})})]})},cn=l.createContext(null),ho=cn.Provider,ut=()=>l.useContext(cn),yo=s.styled(s.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:360,textAlign:"center"}),xo=s.styled(s.Box)({display:"flex",alignItems:"center",justifyContent:"center",width:"100%"}),bo=s.styled(s.Box)({position:"relative",display:"flex",justifyContent:"center",maxWidth:"100%","&:hover .edit-icon":{opacity:1,visibility:"visible"}}),vo=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%)"})),Co=({displayName:e,contactType:a,firstName:n,lastName:r,name:o,entityId:i,onEntityUpdated:d})=>{const c=ut(),u=ye(),[p,m]=l.useState(!1),[y,x]=l.useState(!1),[h,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")){x(!0);try{let S={};a==="contact"?S={firstName:h.firstName,lastName:h.lastName}:a==="business"&&(S={name:h.name});const w=await c.updateEntity({entityType:a,entityId:i,body:S});w&&d&&d(w),m(!1)}catch(S){console.error("Failed to update name",S)}finally{x(!1)}}},g=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:h.firstName,onChange:S=>C({...h,firstName:S.target.value}),size:"small",placeholder:"First Name",sx:{width:140}}),t.jsx(s.TextField,{value:h.lastName,onChange:S=>C({...h,lastName:S.target.value}),size:"small",placeholder:"Last Name",sx:{width:140}})]}):t.jsx(s.TextField,{value:h.name,onChange:S=>C({...h,name:S.target.value}),size:"small",placeholder:"Name",sx:{width:280}}),t.jsx(s.IconButton,{onClick:v,disabled:y,color:"primary",children:y?t.jsx(s.CircularProgress,{size:24}):t.jsx(Be.Save,{})})]}):t.jsx(xo,{children:t.jsxs(bo,{children:[t.jsx(yo,{variant:"h6",title:e||u("contactName.noName"),sx:e?void 0:{color:"text.disabled",fontStyle:"italic"},children:e||u("contactName.noName")}),g&&t.jsx(vo,{size:"small",onClick:()=>m(!0),className:"edit-icon",alwaysVisible:!e,sx:{ml:1},children:t.jsx(Be.Edit,{fontSize:"small"})})]})})},So=({src:e,alt:a,onError:n,onUpload:r,onDelete:o,isUploading:i,isDeleting:d})=>{const c=ye();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(Mr,{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(aa,{fontSize:"small"})})]})]})},jo=s.styled(s.Box)({display:"flex",flexDirection:"column",alignItems:"center",gap:"4px",marginBottom:"20px",position:"relative"}),wo=({imgUrl:e,displayName:a,onError:n,tags:r,onEditTags:o,onUploadPhoto:i,onPhotoFileChange:d,photoInputRef:c,isUploadingPhoto:u,onDeletePhoto:p,isDeletingPhoto:m,contactType:y,firstName:x,lastName:h,name:C,entityId:v,onEntityUpdated:g})=>{const S=`Avatar for ${a}`;return t.jsxs(jo,{children:[t.jsx("input",{ref:c,type:"file",accept:"image/*",onChange:d,style:{display:"none"}}),t.jsx(So,{src:e,alt:S,onError:()=>n?.(new Error("Failed to load avatar")),onUpload:i,isUploading:u,onDelete:p,isDeleting:m}),t.jsx(Co,{displayName:a,contactType:y,firstName:x,lastName:h,name:C,entityId:v,onEntityUpdated:g}),t.jsx(mo,{tags:r,onEditTags:o})]})},Fa=20,To=e=>{const{popperContainer:a,...n}=e;return t.jsx(Pr,{...n,container:a??n.container,style:{...n.style??{},zIndex:2e4}})},Io=({value:e,options:a,onChange:n,onBack:r,onSave:o,isSaving:i,onCreateNew:d,isCreatingNew:c,popperContainer:u})=>{const p=ye(),[m,y]=l.useState(""),[x,h]=l.useState(Fa),C=l.useDeferredValue(m),v=l.useMemo(()=>a??[],[a]),g=l.useMemo(()=>{const D=String(C??"").trim().toLowerCase();return D?v.filter(P=>String(P?.name??"").toLowerCase().includes(D)):v},[v,C]),S=l.useMemo(()=>g.slice(0,x),[g,x]),w=l.useMemo(()=>{const D=new Map;for(const P of e??[])P?.id&&D.set(String(P.id),P);for(const P of S??[])P?.id&&(D.has(String(P.id))||D.set(String(P.id),P));return Array.from(D.values())},[e,S]),T=(D,P)=>{y(P??""),h(Fa)},I=D=>{const P=D;P.scrollTop+P.clientHeight>=P.scrollHeight-24&&h(M=>M+Fa)},k=()=>{const D=String(m??"").trim(),P=!D||i||c;return t.jsxs(s.Box,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[p("global.noOptions"),t.jsx(ot.LoadingButton,{onClick:()=>d(D),loading:c,disabled:P,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(Ea,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:p("tags")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(ot.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(ht,{}),onClick:o,loading:i,disabled:i,children:p("global.save")})]}),t.jsx(s.Autocomplete,{multiple:!0,disablePortal:!1,value:e,onChange:(D,P)=>n(P),options:w,filterOptions:D=>D,inputValue:m,onInputChange:T,getOptionLabel:D=>D?.name??"",isOptionEqualToValue:(D,P)=>String(D?.id)===String(P?.id),PopperComponent:D=>t.jsx(To,{...D,popperContainer:u}),renderOption:(D,P)=>{const{key:M,...F}=D;return l.createElement("li",{...F,key:P?.id?String(P.id):String(M??P?.name??"")},P.name??"")},renderTags:(D,P)=>D.map((M,F)=>{const N=P({index:F}),{key:U,...O}=N;return t.jsx(s.Chip,{label:M.name??"",...O},M?.id?String(M.id):String(U??M?.name??F))}),size:"small",renderInput:D=>t.jsx(s.TextField,{...D,size:"small"}),ListboxProps:{onScroll:I,sx:{maxHeight:280,overflowY:"auto"}},noOptionsText:t.jsx(k,{}),sx:{width:"100%"}})]})};var ko=Object.defineProperty,Eo=(e,a,n)=>a in e?ko(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,un=(e,a,n)=>Eo(e,typeof a!="symbol"?a+"":a,n);let pn=class extends Error{constructor(a,n,r){super(a),un(this,"status"),un(this,"body"),this.name="ApiError",this.status=n,this.body=r}};async function ze({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 pn(c,i.status,d)}return d}async function Do({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 pn(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 Ao({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=Ie(r.CONTACTS,"/labels");return ze({url:o,signal:n})}async function fn({baseUrl:e,spaceId:a,name:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/labels");return ze({url:i,method:"POST",body:{name:n},signal:r})}async function Fo({baseUrl:e,spaceId:a,contactId:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return ze({url:i,signal:r})}async function Bo({baseUrl:e,spaceId:a,businessId:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,`/business/${encodeURIComponent(n)}`);return ze({url:i,signal:r})}async function $o({baseUrl:e,spaceId:a,forType:n,signal:r}){const o=Le(e,a),i=`${Ie(o.CONTACTS,"/ContactFields")}?filter=custom&for=${encodeURIComponent(n)}`;return ze({url:i,signal:r})}async function Ze({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 ze({url:u,method:"PUT",body:o,signal:i})}async function Mo({baseUrl:e,spaceId:a,pagination:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/Search");return ze({url:i,method:"POST",body:n,signal:r})}async function Po({baseUrl:e,spaceId:a,business:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/business");return ze({url:i,method:"POST",body:n,signal:r})}async function ra({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/contactAddresses");return ze({url:i,method:"DELETE",body:n,signal:r})}async function Uo({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/contactAddresses/check");return ze({url:i,method:"POST",body:n,signal:r})}async function Ro({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,"/contactAddresses/set");return ze({url:i,method:"POST",body:n,signal:r})}async function No({baseUrl:e,spaceId:a,data:n,signal:r}){const o=Le(e,a),i=Ie(o.CONTACTS,`/contactAddresses/${encodeURIComponent(n.contactAddressId)}`);return ze({url:i,method:"PUT",body:n,signal:r})}async function gn({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=Ie(r.SETTINGS,"/user");return ze({url:o,signal:n})}async function Lo({baseUrl:e,spaceId:a,signal:n}){const r=Le(e,a),o=Ie(r.SETTINGS,"/users");return ze({url:o,signal:n})}async function Oo({baseUrl:e,spaceId:a,signal:n,userId:r}){const o=Le(e,a),i=Ie(o.SETTINGS,`/usersInfo/${r}`);return ze({url:i,signal:n})}async function mn({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 Do({url:c,formData:d,signal:o})}const hn=(e,a)=>({fetchLabels:({signal:n}={})=>Ao({baseUrl:e,spaceId:a,signal:n}),createLabel:({name:n,signal:r})=>fn({baseUrl:e,spaceId:a,name:n,signal:r}),fetchContact:({contactId:n,signal:r})=>Fo({baseUrl:e,spaceId:a,contactId:n,signal:r}),fetchBusiness:({businessId:n,signal:r})=>Bo({baseUrl:e,spaceId:a,businessId:n,signal:r}),fetchBusinessTableData:({pagination:n,signal:r})=>Mo({baseUrl:e,spaceId:a,pagination:n,signal:r}),createBusiness:({business:n,signal:r})=>Po({baseUrl:e,spaceId:a,business:n,signal:r}),fetchContactFields:({forType:n,signal:r})=>$o({baseUrl:e,spaceId:a,forType:n,signal:r}),updateEntity:({entityType:n,entityId:r,body:o,signal:i})=>Ze({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:o,signal:i}),deleteAddress:({data:n,signal:r})=>ra({baseUrl:e,spaceId:a,data:n,signal:r}),deleteAddres:({data:n,signal:r})=>ra({baseUrl:e,spaceId:a,data:n,signal:r}),checkContactAddress:({data:n,signal:r})=>Uo({baseUrl:e,spaceId:a,data:n,signal:r}),setContactAddress:({data:n,signal:r})=>Ro({baseUrl:e,spaceId:a,data:n,signal:r}),updateContactAddress:({data:n,signal:r})=>No({baseUrl:e,spaceId:a,data:n,signal:r}),fetchUserTrii:({signal:n}={})=>gn({baseUrl:e,spaceId:a,signal:n}),fetchUsers:({signal:n}={})=>Lo({baseUrl:e,spaceId:a,signal:n}),fetchUserTriiById:({userId:n,signal:r})=>Oo({baseUrl:e,spaceId:a,userId:n,signal:r}),uploadAvatar:({contactId:n,file:r,signal:o})=>mn({baseUrl:e,spaceId:a,contactId:n,file:r,signal:o})}),yn=()=>!!window?.google?.maps?.places?.Autocomplete,zo=(e=1e4)=>new Promise(a=>{if(yn()){a(!0);return}const n=Date.now(),r=window.setInterval(()=>{if(yn()){window.clearInterval(r),a(!0);return}Date.now()-n>e&&(window.clearInterval(r),a(!1))},100)}),_o=()=>{const[e,a]=l.useState(!1),[n,r]=l.useState(!0),[o,i]=l.useState(null);return l.useEffect(()=>{(async()=>{try{const d=await zo(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}},Wo=({onPlaceSelected:e,onError:a,placeholder:n})=>{const r=ye(),o=l.useRef(null),i=l.useRef(null),d=l.useRef(e),c=l.useRef(a),{isLoaded:u,isLoading:p,error:m}=_o(),y=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 x=window?.google;if(!x?.maps?.places?.Autocomplete){c.current?.(r("searchLocationModal.googleMapsUnavailable"));return}o.current.focus();let h=null;const C=()=>{document.querySelectorAll(".pac-container").forEach(g=>{const S=g;S.style.zIndex="20000",S.style.position="fixed"})};h=new MutationObserver(g=>{for(const S of g)for(const w of Array.from(S.addedNodes)){if(w.nodeType!==Node.ELEMENT_NODE)continue;const T=w;T.classList?.contains("pac-container")&&(T.style.zIndex="20000",T.style.position="fixed")}}),h.observe(document.body,{childList:!0,subtree:!0}),C(),window.setTimeout(C,100),i.current=new x.maps.places.Autocomplete(o.current,{types:["geocode"],componentRestrictions:{country:"ar"}});const v=i.current.addListener?.("place_changed",()=>{const g=i.current?.getPlace?.();if(!g?.geometry?.location){c.current?.(r("searchLocationModal.selectedPlaceNoLocation"));return}let S="",w="",T="",I="",k="",D="";const P=g.address_components??[];for(const U of P){const O=U?.types??[];if(O.includes("locality")||O.includes("administrative_area_level_2")){S=U.long_name;continue}if(O.includes("administrative_area_level_1")){w=U.long_name;continue}if(O.includes("country")){T=U.long_name;continue}if(O.includes("postal_code")){I=U.long_name;continue}if(O.includes("route")){k=U.long_name;continue}O.includes("street_number")&&(D=U.long_name)}const M=typeof g.geometry.location.lat=="function"?g.geometry.location.lat():0,F=typeof g.geometry.location.lng=="function"?g.geometry.location.lng():0,N={location:{lat:M,lng:F},address:g.formatted_address??"",city:S,state:w,country:T,postalCode:I,streetName:k,streetNumber:D,shortAddress:[k,D].filter(Boolean).join(" ")};d.current(N)});return()=>{h&&h.disconnect(),v?.remove&&v.remove(),i.current=null}},[u,r]),t.jsx(s.TextField,{fullWidth:!0,size:"small",inputRef:o,placeholder:y,disabled:p||!u||!!m,error:!!m})},Vo={street:"",city:"",state:"",zipcode:"",country:""},Ho=({baseUrl:e,spaceId:a,entityType:n,entityId:r,onBack:o,onEntityUpdated:i})=>{const d=ye(),[c,u]=l.useState(Vo),[p,m]=l.useState(""),[y,x]=l.useState(""),[h,C]=l.useState(!1),[v,g]=l.useState(!1),S=l.useMemo(()=>!!(String(c.street??"").trim()||String(c.city??"").trim()||String(c.state??"").trim()||String(c.zipcode??"").trim()||String(c.country??"").trim()),[c]),w=M=>{m(M.address??"");const F=String(M.shortAddress??"").trim()||[M.streetName,M.streetNumber].filter(Boolean).join(" ").trim();u({street:F,city:M.city??"",state:M.state??"",zipcode:M.postalCode??"",country:M.country??""}),x("")},T=M=>{x(String(M??""))},I=M=>F=>{const N=F.target.value;u(U=>({...U,[M]:N}))},k=async()=>{if(!h&&!(!e||!a)&&r){C(!0);try{const M=await Ze({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?.(M),o()}finally{C(!1)}}},D=async()=>{if(!v&&!(!e||!a)&&r){g(!0);try{const M=await Ze({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?.(M),o()}finally{g(!1)}}},P=!S||h||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(Ea,{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(Wo,{onPlaceSelected:w,onError:T,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:I("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:I("city"),fullWidth:!0,size:"medium"}),t.jsx(s.TextField,{label:d("searchLocationModal.state"),value:c.state,onChange:I("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:I("zipcode"),fullWidth:!0,size:"medium"}),t.jsx(s.TextField,{label:d("searchLocationModal.country"),value:c.country,onChange:I("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(ot.LoadingButton,{variant:"contained",size:"large",startIcon:t.jsx(ht,{}),onClick:k,loading:h,disabled:P,children:d("searchLocationModal.saveMainAddress")}),t.jsx(ot.LoadingButton,{variant:"outlined",size:"large",startIcon:t.jsx(ht,{}),onClick:D,loading:v,disabled:P,children:d("searchLocationModal.saveSecondaryAddress")})]})]})]})};function Ba(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 xn(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")}function Go({open:e,baseUrl:a,spaceId:n,contactId:r,contactNameFormat:o}){const i=l.useRef(null),d=l.useMemo(()=>!a||!n?null:hn(a,n),[a,n]),[c,u]=l.useState({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}),p=l.useMemo(()=>!!(e&&d&&r),[e,d,r]);l.useEffect(()=>{e||(i.current?.abort(),u({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}))},[e]);const m=l.useMemo(()=>!!(e&&d),[e,d]);l.useEffect(()=>{if(!m||!d)return;const h=new AbortController;return u(C=>({...C,labelsLoading:!0,labelsError:null})),d.fetchLabels({signal:h.signal}).then(C=>{u(v=>({...v,labels:C,labelsLoading:!1,labelsError:null}))}).catch(C=>{h.signal.aborted||u(v=>({...v,labelsLoading:!1,labelsError:C}))}),()=>{h.abort()}},[d,m]),l.useEffect(()=>{if(!p||!d)return;i.current?.abort();const h=new AbortController;return i.current=h,u(C=>({...C,isLoading:!0,error:null,contactData:null})),d.fetchContact({contactId:r,signal:h.signal}).then(C=>{u(v=>({...v,isLoading:!1,error:null,contactData:C}))}).catch(C=>{h.signal.aborted||u(v=>({...v,isLoading:!1,error:C}))}),()=>{h.abort()}},[d,p,r]);const y=l.useMemo(()=>!!(e&&d),[e,d]);l.useEffect(()=>{if(!y||!d)return;const h=new AbortController;return u(C=>({...C,userLoading:!0,userError:null})),d.fetchUserTrii({signal:h.signal}).then(C=>{u(v=>({...v,userLoading:!1,userError:null,userTrii:C}))}).catch(C=>{h.signal.aborted||u(v=>({...v,userLoading:!1,userError:C}))}),()=>{h.abort()}},[d,y]);const x=l.useMemo(()=>{const h=c.contactData,C=Ba(h),v=xn(h);let g="unknown";C&&(g="business"),v&&(g="contact");let S="Unknown Contact";C?S=h.name:v&&(S=sn(h.firstName,h.lastName,o));const w=h?.tags??[];return{isBusiness:C,isContact:v,contactType:g,displayName:S,tags:w,labels:c.labels,contactFields:c.contactFields,userTrii:c.userTrii,userLoading:c.userLoading,userError:c.userError}},[c.contactData,c.labels,c.contactFields,c.userTrii,c.userLoading,c.userError,o]);return l.useEffect(()=>{if(!e||!d)return;const h=c.contactData,C=Ba(h),v=xn(h),g=C?"business":v?"contact":null;if(!g)return;const S=new AbortController;return u(w=>({...w,contactFieldsLoading:!0,contactFieldsError:null})),d.fetchContactFields({forType:g,signal:S.signal}).then(w=>{u(T=>({...T,contactFields:w,contactFieldsLoading:!1,contactFieldsError:null}))}).catch(w=>{S.signal.aborted||u(T=>({...T,contactFieldsLoading:!1,contactFieldsError:w}))}),()=>{S.abort()}},[d,e,c.contactData]),{state:c,selectors:x,actions:{setContactData:h=>u(C=>({...C,contactData:h??null})),clearError:()=>u(h=>({...h,error:null}))}}}const Lt=({baseUrl:e,spaceId:a,entityType:n,entityId:r,initialImageUrl:o,onEntityUpdated:i})=>{const[d,c]=l.useState(o??""),[u,p]=l.useState(null),[m,y]=l.useState(!1),[x,h]=l.useState(!1),C=l.useRef(null),v=l.useMemo(()=>!!(e&&a&&n&&r),[e,a,n,r]);function g(F){return F.split("?sv=")[0]}function S(F){return F.split("&cacheId=")[0]}function w(F){let N=g(F);return!N||(N=S(N),!N)?"":N}const T=async()=>{if(!e||!a)return null;const F=await gn({baseUrl:e,spaceId:a});return p(F),F},I=async F=>{const N=(u??await T())?.storageAzureSAS,U=N?.expireAt,O=U?new Date(U):null;let H=N?.sas??"";if((!H||O&&O<new Date)&&(H=(await T())?.storageAzureSAS?.sas??""),!H)return F;const B=`${Date.now()}`;return`${F}${H}&cacheId=${B}`},k=async F=>{if(!F){c("");return}const N=g(F);if(!N)return;const U=await I(N);c(U)},D=async F=>{const N=F.target.files?.[0];if(N&&v){C.current&&(C.current.value=""),y(!0);try{const U=await mn({baseUrl:e,spaceId:a,contactId:r,file:N}),O=await Ze({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{imageUrl:U}});i?.(O),await k(U)}finally{y(!1)}}},P=()=>{C.current?.click()},M=async()=>{if(v&&!x){h(!0);try{await Ze({baseUrl:e,spaceId:a,entityType:n,entityId:r,body:{imageUrl:""}}),i?.({imageUrl:""}),c("")}finally{h(!1)}}};return l.useEffect(()=>{if(!o){c("");return}k(o)},[o]),{inputAtributes:{onChange:D,ref:C,type:"file",accept:"image/*"},action:{uploadImage:P,deleteImage:M},imageUrl:d,removeParams:w,isUploading:m,isDeleting:x}},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)}}}},bn=(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 sa;const qo=new Uint8Array(16);function Yo(){if(!sa&&(sa=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!sa))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return sa(qo)}const $e=[];for(let e=0;e<256;++e)$e.push((e+256).toString(16).slice(1));function Ko(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 Jo=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var vn={randomUUID:Jo};function Ot(e,a,n){if(vn.randomUUID&&!a&&!e)return vn.randomUUID();e=e||{};const r=e.random||(e.rng||Yo)();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 Ko(r)}function Xo(e){return{id:Ot(),address:"",note:"",channelType:e,isSaved:!1}}var oa={createNewAddress:Xo};const Qo=(e,a,n)=>{if(a!==n&&!(a===null&&n==="")){const r={};return r[e]=n,r}return null},Zo=(e,a,n)=>n.map(r=>r.id===a?{...r,address:e}:r);var St={getEditedField:Qo,getAddressesWithUpdatedValues:Zo};const Cn=({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,y]=l.useState(a?.ims_mercadolibre||[]),[x,h]=l.useState(a?.ims_webchat||[]),[C,v]=l.useState(a?.ims_instagram||[]),[g,S]=l.useState(a?.ims_whatsapp||[]),[w,T]=l.useState(a?.emails||[]),[I,k]=l.useState(a?.phones||[]),[D,P]=l.useState(a?.ims_rcs||[]),M=()=>{const V=oa.createNewAddress(Ct.ChannelType.PHONE),_=[...I,V];k(_)},F=()=>{const V=oa.createNewAddress(Ct.ChannelType.EMAIL),_=[...w,V];T(_)},N=()=>{const V=oa.createNewAddress(Ct.ChannelType.WHATSAPP),_=[...g,V];S(_)},U=()=>{const V=oa.createNewAddress(Ct.ChannelType.RCS),_=[...D,V];P(_)},O=V=>{const _=[...g,V];S(_),c(j=>({...j??{},ims_whatsapp:_}))},H=(V,_)=>{if(_){if(_.channelType===3){const j=w.map(A=>A.id===V?_:A);T(j),c(A=>({...A??{},emails:j}))}if(_.channelType===5){const j=I.map(A=>A.id===V?_:A);k(j),c(A=>({...A??{},phones:j}))}if(_.channelType===13){const j=g.map(A=>A.id===V?_:A);S(j),c(A=>({...A??{},ims_whatsapp:j}))}if(_.channelType===21){const j=D.map(A=>A.id===V?_:A);P(j),c(A=>({...A??{},ims_rcs:j}))}if(_.channelType===41){const j=m.map(A=>A.id===V?_:A);y(j),c(A=>({...A??{},ims_mercadolibre:j}))}}},B=async(V,_,j)=>{const A=V.target.value;if(j===3){const E=St.getAddressesWithUpdatedValues(A,_,w);T(E)}else if(j===5){const E=St.getAddressesWithUpdatedValues(A,_,I);k(E)}else if(j===13){const E=St.getAddressesWithUpdatedValues(A,_,g);S(E)}else if(j===21){const E=St.getAddressesWithUpdatedValues(A,_,D);P(E)}else if(j===41){const E=St.getAddressesWithUpdatedValues(A,_,m);y(E)}},J=(V,_,j)=>{if(j===14){const A=u.map(E=>E.id===_?{...E,note:V.target.value}:E);p(A)}if(j===20){const A=x.map(E=>E.id===_?{...E,note:V.target.value}:E);h(A)}if(j===16){const A=C.map(E=>E.id===_?{...E,note:V.target.value}:E);v(A)}if(j===3){const A=w.map(E=>E.id===_?{...E,note:V.target.value}:E);T(A)}if(j===5){const A=I.map(E=>E.id===_?{...E,note:V.target.value}:E);k(A)}if(j===13){const A=g.map(E=>E.id===_?{...E,note:V.target.value}:E);S(A)}if(j===21){const A=D.map(E=>E.id===_?{...E,note:V.target.value}:E);P(A)}if(j===41){const A=m.map(E=>E.id===_?{...E,note:V.target.value}:E);y(A)}},Z=async(V,_)=>{if(e&&(_===3||_===5||_===13||_===14||_===20||_===16||_===21||_===41)){i(V);const j={contactId:e,contactAddressId:V,type:_};switch(n?await n(r(j)):await r(j),i(!1),_){case 3:const A=w.filter(te=>te.id!==V);T(A),c(te=>({...te??{},emails:A}));break;case 5:const E=I.filter(te=>te.id!==V);k(E),c(te=>({...te??{},phones:E}));break;case 13:const W=g.filter(te=>te.id!==V);S(W),c(te=>({...te??{},ims_whatsapp:W}));break;case 21:const G=D.filter(te=>te.id!==V);P(G),c(te=>({...te??{},ims_rcs:G}));break;case 41:const se=m.filter(te=>te.id!==V);y(se),c(te=>({...te??{},ims_mercadolibre:se}));break;case 14:const ie=u.filter(te=>te.id!==V);p(ie),c(te=>({...te??{},ims_facebook:ie}));break;case 20:const je=x.filter(te=>te.id!==V);h(je),c(te=>({...te??{},ims_webchat:je}));break;case 16:const he=C.filter(te=>te.id!==V);v(he),c(te=>({...te??{},ims_instagram:he}));break}}};function ne(){p(d?.ims_facebook||[]),y(d?.ims_mercadolibre||[]),h(d?.ims_webchat||[]),v(d?.ims_instagram||[]),S(d?.ims_whatsapp||[]),P(d?.ims_rcs||[]),T(d?.emails||[]),k(d?.phones||[])}return l.useEffect(()=>{c(a),a?.emails&&a?.phones&&(T(a.emails),k(a.phones)),S(a?.ims_whatsapp||[]),P(a?.ims_rcs||[]),p(a?.ims_facebook||[]),h(a?.ims_webchat||[]),v(a?.ims_instagram||[]),y(a?.ims_mercadolibre||[])},[a]),{field:{imsWhatsapp:g,imsRCS:D,imsMercadolibre:m,imsFacebooks:u,imsWebchats:x,imsInstagrams:C,emails:w,phoneNumbers:I},action:{handleAddressFieldChange:B,handleNoteFieldChange:J,handleDeleteAddress:Z,addPhone:M,addEmail:F,addWhatsapp:N,addRCS:U,replaceAddress:H,addWhatsappVerified:O,resetToInitialContactInformation:ne},state:{isDeletingAddress:o}}},Sn=({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)}}}},ei=({business:e,customContactFields:a,baseUrl:n,spaceId:r})=>{const o=l.useMemo(()=>async q=>{!n||!r||await ra({baseUrl:n,spaceId:r,data:q})},[n,r]),i=async q=>q,[d,c]=l.useState([]),u=Ce("text",e?.name||""),p=Lt({baseUrl:n,spaceId:r,entityType:"business",entityId:e?.id,initialImageUrl:e?.imageUrl||""}),m=bn(e?.owner),y=Sn({initialState:e?.tags??[]}),[x,h]=l.useState([]),{field:{imsFacebooks:C,imsMercadolibre:v,imsWebchats:g,imsInstagrams:S,imsWhatsapp:w,emails:T,phoneNumbers:I,imsRCS:k},action:{addPhone:D,addEmail:P,addWhatsapp:M,addRCS:F,addWhatsappVerified:N,replaceAddress:U,handleAddressFieldChange:O,handleNoteFieldChange:H,handleDeleteAddress:B,resetToInitialContactInformation:J},state:{isDeletingAddress:Z}}=Cn({entityId:e?.id,initial:e,dispatch:i,deleteAddress:o}),ne=Ce("text",e?.address1?.street||""),V=Ce("text",e?.address2?.street||""),_=Ce("text",e?.address1?.city||""),j=Ce("text",e?.address2?.city||""),A=Ce("text",e?.address1?.state||""),E=Ce("text",e?.address2?.state||""),W=Ce("text",e?.address1?.zipcode||""),G=Ce("text",e?.address2?.zipcode||""),se=Ce("text",e?.address1?.country||""),ie=Ce("text",e?.address2?.country||""),je=(q,pe,xe)=>pe!==xe&&!(pe===null&&xe==="")?{[q]:xe}:{},he=()=>{if(!e)return null;const q={street:ne.attributes.value,city:_.attributes.value,state:A.attributes.value,zipcode:W.attributes.value,country:se.attributes.value},pe={street:V.attributes.value,city:j.attributes.value,state:E.attributes.value,zipcode:G.attributes.value,country:ie.attributes.value};return{id:e.id,...je("owner",e.owner,m.attributes.value),...je("name",e.name,u.attributes.value),imageUrl:p.imageUrl?p.removeParams(p.imageUrl):null,tags:y.attributes.value,properties:d,members:x,phoneNumbers:I,emails:T,address1:q,address2:pe}};function te(q){if(!e)return;const pe=X=>X.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),xe=e.properties.find(X=>X.nameKey===q)??e.properties.find(X=>pe(X.nameKey)===pe(q));if(!xe){console.error(`No se encontr\xF3 una propiedad con nameKey: ${q}`);return}const Ke=d.map(X=>X.nameKey===q?{...X,value:xe.value}:X);c(Ke)}const Ae=()=>e?a.map(q=>{const pe=X=>X.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),xe=e.properties.find(X=>X.nameKey===q.nameKey)??e.properties.find(X=>pe(X.nameKey)===pe(q.nameKey));if(xe)return{...xe,nameKey:q.nameKey,type:xe.type??q.type,value:xe.value};const Ke=d.find(X=>X.nameKey===q.nameKey);return{nameKey:q.nameKey,type:q.type,value:Ke?Ke.value:""}}):[];return l.useEffect(()=>{e&&a&&c(Ae())},[e,a]),l.useEffect(()=>{e&&y.actions.setValue(e.tags??[])},[e]),{field:{name:u,imsWhatsapp:w,imsRCS:k,contactImage:p,contactPropietary:m,imsMercadolibre:v,imsFacebooks:C,imsWebchats:g,imsInstagrams:S,emails:T,phoneNumbers:I,homeAddress:ne,secondaryHomeAddress:V,city:_,secondaryCity:j,state:A,secondaryState:E,postalCode:W,secondaryPostalCode:G,country:se,secondaryCountry:ie,customProperties:d,labelMultipleSelect:y},action:{setCustomProperties:c,addWhatsapp:M,addRCS:F,getEditedBusiness:he,handleAddressFieldChange:O,handleNoteFieldChange:H,handleDeleteAddress:B,addPhone:D,addEmail:P,replaceAddress:U,addWhatsappVerified:N,resetToInitialContactInformation:J,resetCustomProperty:te},state:{isDeletingAddress:Z},selectedContacts:x,setSelectedContacts:h}},ti=({contact:e,customContactFields:a,baseUrl:n,spaceId:r})=>{const o=l.useMemo(()=>async X=>{!n||!r||await ra({baseUrl:n,spaceId:r,data:X})},[n,r]),i=async X=>X,{getEditedField:d}=St,[c,u]=l.useState([]),p=Ce("text",e?.firstName||""),m=Ce("text",e?.lastName||""),y=Lt({baseUrl:n,spaceId:r,entityType:"contact",entityId:e?.id?String(e.id):void 0,initialImageUrl:e?.imageUrl}),[x,h]=l.useState(e?.birthDate?K(e.birthDate):null),C=Cn({entityId:e?.id,initial:e,dispatch:i,deleteAddress:o}),{field:{imsFacebooks:v,imsMercadolibre:g,imsWebchats:S,imsInstagrams:w,imsWhatsapp:T,emails:I,phoneNumbers:k,imsRCS:D},action:{addPhone:P,addEmail:M,addWhatsapp:F,addRCS:N,addWhatsappVerified:U,replaceAddress:O,handleAddressFieldChange:H,handleNoteFieldChange:B,handleDeleteAddress:J,resetToInitialContactInformation:Z},state:{isDeletingAddress:ne}}=C,V=Sn({initialState:e?.tags}),_=bn(e?.owner),j=Ce("text",e?.address1?.street),A=Ce("text",e?.address2?.street),E=Ce("text",e?.address1?.city),W=Ce("text",e?.address2?.city),G=Ce("text",e?.address1?.state),se=Ce("text",e?.address2?.state),ie=Ce("text",e?.address1?.zipcode),je=Ce("text",e?.address2?.zipcode),he=Ce("text",e?.address1?.country),te=Ce("text",e?.address2?.country),Ae=()=>{if(!e)return null;const X=e,Pe=V.attributes.value.map(ue=>({id:ue.id,name:ue.name})),We=k.map(ue=>{const{id:Tt,...et}=ue;return et}),Ge=I.map(ue=>{const{id:Tt,...et}=ue;return et});return{id:X.id,owner:_.attributes.value,firstName:p.attributes.value,lastName:m.attributes.value,address1:{...d("street",X.address1?.street,j.attributes.value),...d("city",X.address1?.street,E.attributes.value),...d("state",X.address1?.street,G.attributes.value),...d("zipcode",X.address1?.street,ie.attributes.value),...d("country",X.address1?.street,he.attributes.value)},address2:{...d("street",X.address2?.street,A.attributes.value),...d("city",X.address2?.street,W.attributes.value),...d("state",X.address2?.street,se.attributes.value),...d("zipcode",X.address2?.street,je.attributes.value),...d("country",X.address2?.street,te.attributes.value)},emails:Ge,phones:We,tags:Pe,imageUrl:y.imageUrl?y.removeParams(y.imageUrl):null,properties:c,birthDate:x?.toDate()}};function q(){e&&(!e.businessId||e.businessName)}function pe(){h(e?.birthDate?K(e.birthDate):null)}function xe(X){if(!e)return;const Pe=ue=>ue.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),We=e.properties.find(ue=>ue.nameKey===X)??e.properties.find(ue=>Pe(ue.nameKey)===Pe(X));if(!We){console.error(`No se encontr\xF3 una propiedad con nameKey: ${X}`);return}const Ge=c.map(ue=>ue.nameKey===X?{...ue,value:We.value}:ue);u(Ge)}const Ke=()=>e?a.map(X=>{const Pe=ue=>ue.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),We=e.properties.find(ue=>ue.nameKey===X.nameKey)??e.properties.find(ue=>Pe(ue.nameKey)===Pe(X.nameKey));if(We)return{...We,nameKey:X.nameKey,type:We.type??X.type,value:We.value};const Ge=c.find(ue=>ue.nameKey===X.nameKey);return{nameKey:X.nameKey,type:X.type,value:Ge?Ge.value:""}}):[];return l.useEffect(()=>{e&&a&&u(Ke())},[e,a]),l.useEffect(()=>{e?.tags&&V.actions.setValue(e.tags),e?.businessId&&e.businessName},[e]),{field:{birthDate:x,imsWhatsapp:T,imsRCS:D,contactFirstname:p,contactLastname:m,contactImage:y,contactPropietary:_,imsMercadolibre:g,imsFacebooks:v,imsWebchats:S,imsInstagrams:w,emails:I,phoneNumbers:k,homeAddress:j,secondaryHomeAddress:A,city:E,secondaryCity:W,state:G,secondaryState:se,postalCode:ie,secondaryPostalCode:je,country:he,secondaryCountry:te,customProperties:c,labelMultipleSelect:V},action:{setBirthDate:h,setCustomProperties:u,getEditedContact:Ae,handleAddressFieldChange:H,handleNoteFieldChange:B,handleDeleteAddress:J,addPhone:P,addEmail:M,addWhatsapp:F,addRCS:N,replaceAddress:O,addWhatsappVerified:U,resetToInitialContactInformation:Z,resetSelectedBusiness:q,resetBirthDate:pe,resetCustomProperty:xe},state:{isDeletingAddress:ne}}},$a=l.createContext(null),ai=({children:e,contact:a,customContactFields:n,baseUrl:r,spaceId:o})=>{const i=ti({contact:a,customContactFields:n,baseUrl:r,spaceId:o});return t.jsx($a.Provider,{value:{entityType:"contact",editEntity:i,entityId:String(a.id)},children:e})},ni=({children:e,business:a,customContactFields:n,baseUrl:r,spaceId:o})=>{const i=ei({business:a,customContactFields:n,baseUrl:r,spaceId:o});return t.jsx($a.Provider,{value:{entityType:"business",editEntity:i,entityId:String(a.id)},children:e})},ri=({children:e,entityType:a,entityData:n,customContactFields:r,baseUrl:o,spaceId:i})=>a==="contact"?t.jsx(ai,{contact:n,customContactFields:r,baseUrl:o,spaceId:i,children:e}):t.jsx(ni,{business:n,customContactFields:r,baseUrl:o,spaceId:i,children:e}),it=()=>{const e=l.useContext($a);if(!e)throw new Error("useEditEntity must be used within EditEntityProvider");return e},jt=({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},ia=({title:e,children:a,enableDirectionSearch:n=!1,onDirectionSearchClick:r})=>{const o=ye();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}),n&&t.jsx(s.Button,{startIcon:t.jsx(Ur,{sx:{color:"primary.main",height:18,width:18}}),size:"small",variant:"outlined",color:"primary",onClick:()=>r&&r(),children:o("global.searchLocation")})]}),t.jsx(s.Divider,{sx:{my:1.5}}),a]})},jn=({children:e,...a})=>t.jsx(s.Box,{display:"grid",gridTemplateColumns:{xs:"1fr",md:"repeat(2, minmax(0, 1fr))"},gap:2,...a,children:e}),si=({birthDate:e,setBirthDate:a,dateFormat:n})=>{const r=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Ga.DatePicker,{value:e,onChange:o=>a(o),slotProps:{textField:{size:"small"}},format:r})})})},oi={view:"main",setView:()=>{}},wn=l.createContext(null),ii=wn.Provider,li=()=>l.useContext(wn)||(console.warn("[useEditContactView] using noop, context value is missing"),oi),Tn=()=>{},In=l.createContext(Tn),di=({navigate:e,children:a})=>t.jsx(In.Provider,{value:e,children:a}),ci=()=>l.useContext(In)||(console.warn("[useNavigateContext] using noop, context value is falsy"),Tn);function ui({value:e,displayValue:a,businessId:n}){const r=ut(),o=ci(),[i,d]=l.useState(null),c=Lt({initialImageUrl:i?.imageUrl,entityType:"business",entityId:n}),[u,p]=l.useState(null),[m,y]=l.useState(!1);return t.jsxs(s.Box,{display:"flex",alignItems:"center",children:[t.jsx(s.Typography,{onClick:async x=>{const h=x.currentTarget;if(y(!0),!r){console.error("API is null");return}const C=await r.fetchBusiness({businessId:n});if(C&&Ba(C)&&d(C),y(!1),!h){console.error("Target element is null");return}p(h)},variant:"body2",fontWeight:"600",sx:{padding:1,cursor:"pointer"},color:x=>x.palette.text.primary,children:a||typeof e=="string"&&e||"-"}),i&&t.jsx(on,{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 pi=e=>"email"in e,Ma=e=>e.entityType==="contact"&&e.inputType==="birthday",fi=s.styled(s.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),kn=s.styled(s.IconButton)({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}}),pt=e=>{const{title:a,value:n,isNotEditable:r,displayValue:o,baseUrl:i,spaceId:d,minWidth:c,onEntityUpdated:u}=e,p=ye(),{setView:m}=li(),y=e.inputType??"text",[x,h]=l.useState(!1),[C,v]=l.useState(!1),g=l.useRef(null),[S,w]=l.useState(!1),[T,I]=l.useState(()=>e.entityType==="business"||typeof n=="string"?n:void 0);l.useEffect(()=>{const B=g.current;if(!B)return;const J=()=>{const Z=B.scrollWidth>B.clientWidth;w(ne=>ne===Z?ne:Z)};if(J(),typeof ResizeObserver<"u"){let Z=0;const ne=new ResizeObserver(()=>{if(typeof window>"u"){J();return}Z&&window.cancelAnimationFrame(Z),Z=window.requestAnimationFrame(()=>{J()})});return ne.observe(B),()=>{typeof window<"u"&&Z&&window.cancelAnimationFrame(Z),ne.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",J),()=>{window.removeEventListener("resize",J)}},[a]),l.useEffect(()=>{e.entityType==="business"?I(n):I(typeof n=="string"?n:void 0)},[n,e.entityType]);const k=()=>{if(e.entityType==="contact"&&y==="selectBusiness"){m("businessSelect");return}h(B=>!B)},D=B=>{I(B.target.value)},P=B=>{const J=B.target.value;I(J)},M=()=>{Ma(e)&&e.contact.action.resetBirthDate(),h(!1)},F=async()=>{if(!e.constructUpdateObject){h(!1);return}if(e.entityType==="business"&&T===void 0){h(!1);return}v(!0);try{if(!i||!d)throw new Error("Missing baseUrl or spaceId for updateEntity");if(e.entityType==="contact"){let B=T===void 0?null:T;if(Ma(e)){const V=K(e.contact.field.birthDate);V.isValid()&&(B=V.toISOString())}const J=e.constructUpdateObject(B),Z=e.entityId??J?.id;if(!Z)throw new Error("Missing contactId for updateEntity");const ne=await Ze({baseUrl:i,spaceId:d,entityType:"contact",entityId:Z,body:J});u?.(ne)}else{const B=e.constructUpdateObject(T),J=e.entityId??B?.id;if(!J)throw new Error("Missing businessId for updateEntity");const Z=await Ze({baseUrl:i,spaceId:d,entityType:"business",entityId:J,body:B});u?.(Z)}}finally{v(!1),h(!1)}},N=typeof T=="string"?T:"",U=T instanceof Date?T.toISOString():typeof T=="string"?T:"",O=c??(e.entityType==="contact"?"45%":"200px"),H=e.options??[];return t.jsxs(s.Box,{className:"fadein col-5",sx:{display:"flex",backgroundColor:B=>B.palette.mode==="dark"?"1e1e1e":B.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:[S?t.jsx(s.Tooltip,{title:a,arrow:!0,children:t.jsx(s.Typography,{ref:g,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:x?1:0,color:B=>B.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a})}):t.jsx(s.Typography,{ref:g,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:x?1:0,color:B=>B.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a}),r?null:x?t.jsxs(t.Fragment,{children:[t.jsx(kn,{size:"small",onClick:F,children:C?t.jsx(s.CircularProgress,{size:24}):t.jsx(ht,{})}),t.jsx(kn,{size:"small",onClick:M,children:t.jsx(qa,{})})]}):t.jsx(fi,{className:"edit-icon",size:"small",onClick:k,children:t.jsx(Bt,{})})]}),t.jsx(s.Box,{width:x?"100%":"50%",position:"relative",children:x&&y==="text"?t.jsx(s.TextField,{value:U,onChange:D,variant:"standard",size:"small",sx:{width:"100%"}}):x&&(y==="select"||y==="selectMembers")?t.jsxs(s.Select,{value:N,onChange:P,variant:"standard",size:"small",sx:{width:"100%"},children:[e.entityType==="contact"?t.jsx(s.MenuItem,{value:"",children:p("conversations.contactDetails.contactInfo.emptySelection")}):null,H.map((B,J)=>t.jsx(s.MenuItem,{value:B.id,children:e.entityType==="contact"?B.name?.trim()||(pi(B)?B.email:"")||"Sin nombre":B.name?.trim()||B.email||"Sin nombre"},J))]}):x&&Ma(e)?t.jsx(si,{birthDate:e.contact.field.birthDate,setBirthDate:e.contact.action.setBirthDate,dateFormat:e.dateFormat}):!x&&e.entityType==="contact"&&y==="selectBusiness"&&e.businessId?t.jsx(ui,{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:B=>B.palette.text.primary,children:o||typeof n=="string"&&n||"-"})})]})},zt=e=>{const{title:a,value:n,isNotEditable:r,options:o=[],displayValue:i,constructUpdateObject:d,businessId:c,baseUrl:u,spaceId:p,contactId:m,onEntityUpdated:y}=e;if(e.inputType==="birthday")return t.jsx(pt,{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:y});const x=e.inputType??"text";return t.jsx(pt,{entityType:"contact",entityId:m,title:a,value:n,isNotEditable:r,inputType:x,options:o,displayValue:i,constructUpdateObject:d,businessId:c,baseUrl:u,spaceId:p,onEntityUpdated:y})},gi=({nameKey:e,value:a,onChange:n,type:r,min:o,max:i})=>{const d=h=>{r===ae.ContactField_type.NUMBER_ACCOUNTING||r===ae.ContactField_type.NUMBER_DECIMAL||r===ae.ContactField_type.NUMBER_CURRENCY||r===ae.ContactField_type.CURRENCY?u(h):r===ae.ContactField_type.NUMBER_INTEGER?p(h):(r===ae.ContactField_type.LONGTEXT||r===ae.ContactField_type.TEXT||r===ae.ContactField_type.ADDRESS)&&c(h)},c=h=>{n(e,h.target.value)},u=h=>{const C=h.target.value.replace(/[^0-9.-]/g,"");if(C===""||C==="-"){n(e,C);return}const v=Number(C);Number.isNaN(v)||n(e,C)},p=h=>{const C=h.target.value;if(C===""){n(e,C);return}/^\d*$/.test(C)&&n(e,C)},m=()=>r===ae.ContactField_type.CURRENCY||r===ae.ContactField_type.NUMBER_ACCOUNTING||r===ae.ContactField_type.NUMBER_DECIMAL||r===ae.ContactField_type.NUMBER_INTEGER||r===ae.ContactField_type.NUMBER_CURRENCY,y=()=>{if(!m()||a===""||a==null)return!1;const h=Number(a);return Number.isNaN(h)?!1:o!=null&&h<o||i!=null&&h>i},x=()=>{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:y(),helperText:x(),inputProps:{pattern:"[0-9]*"},multiline:r===ae.ContactField_type.LONGTEXT,rows:r===ae.ContactField_type.LONGTEXT?4:1,sx:{width:"100%"}})},mi=({value:e,handleChange:a,dateFormat:n})=>{const r=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Ga.DatePicker,{value:e?K(e):null,onChange:o=>a(o),format:r,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},hi=({handleChange:e,value:a,options:n})=>{const r=ye();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))]})})},yi=({value:e,handleChange:a,userTimeFormat:n})=>{const r=n==="24"?"HH:mm":"hh:mm";return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Rr.TimePicker,{value:e?K(e):null,onChange:o=>a(o),format:r,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},xi=({value:e,handleChange:a,userTimeFormat:n})=>{const r=ye(),o=[K().set("hour",0).set("minute",0),K().set("hour",0).set("minute",0)],i=n==="24"?"HH:mm":"hh:mm";return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{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})})})},bi=({value:e,handleChange:a,userDateFormat:n})=>{const r=ye(),o=[K(),K()],i=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Mt.LocalizationProvider,{dateAdapter:$t.AdapterDayjs,children:t.jsx(Pt,{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})})})},vi=s.styled(s.IconButton)(()=>({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"})),En=s.styled(s.IconButton)(()=>({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}})),Ci=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",borderRadius:e.shape.borderRadius,minWidth:"45%","&:hover .edit-icon":{opacity:1}})),Dn=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})),Si=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"})),An=({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,[y,x]=l.useState(!1),[h,C]=l.useState(!1),v=l.useRef(null),[g,S]=l.useState(!1),w=(i?.regCon_dateFormat||"YYYY/MM/DD").toUpperCase(),T=i?.regCon_timeFormat||"24",I=j=>j===ae.ContactField_type.NUMBER_INTEGER||j===ae.ContactField_type.NUMBER_DECIMAL||j===ae.ContactField_type.NUMBER_CURRENCY||j===ae.ContactField_type.NUMBER_ACCOUNTING||j===ae.ContactField_type.CURRENCY,k=(j,A)=>j.toLowerCase()==="dni"?!0:I(A),D=(j,A,E)=>{if(E===""||E===null||E===void 0)return null;if(k(j,A)){const W=Number(E);return Number.isNaN(W)?E:W}return E},P=()=>x(j=>!j),M=()=>{x(!1),a.action.resetCustomProperty(e.nameKey)},F=async()=>{if(!d||!c||!r)return;C(!0);const j=p.find(ie=>ie.nameKey===e.nameKey)||e,{nameKey:A,value:E}=j,W=o.find(ie=>ie.nameKey===A)?.type??j.type;let G;if(W===ae.ContactField_type.TIME){const ie=K(E);ie.isValid()?G=ie.format(T==="24"?"HH:mm":"hh:mm"):G=E}else if(W===ae.ContactField_type.DATE){const ie=K(E);ie.isValid()?G=ie.toISOString():G=E}else G=D(A,W,E);const se={properties:[{nameKey:A,type:W,value:G}]};try{const ie=await Ze({baseUrl:d,spaceId:c,entityType:n,entityId:r,body:se}),je=p.map(he=>he.nameKey===A?{...he,type:W,value:G}:he);m(je),u?.(ie)}finally{C(!1),x(!1)}},N=j=>o.find(A=>A.nameKey===j)?.name||j;l.useEffect(()=>{const j=v.current;if(!j)return;const A=()=>{const E=j.scrollWidth>j.clientWidth;S(W=>W===E?W:E)};if(A(),typeof ResizeObserver<"u"){let E=0;const W=new ResizeObserver(()=>{if(typeof window>"u"){A();return}E&&window.cancelAnimationFrame(E),E=window.requestAnimationFrame(()=>{A()})});return W.observe(j),()=>{typeof window<"u"&&E&&window.cancelAnimationFrame(E),W.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",A),()=>{window.removeEventListener("resize",A)}},[o,e.nameKey]);const U=(j,A)=>{const E=e.type===ae.ContactField_type.DATERANGE?Array.isArray(A)&&A[0]&&A[1]?`${K(A[0]).toISOString()} - ${K(A[1]).toISOString()}`:"":e.type===ae.ContactField_type.DATE?K(A).isValid()?K(A).toISOString():"Invalid Date":e.type===ae.ContactField_type.TIME?K(A).isValid()?K(A).toISOString():"Invalid Time":A,W=p.map(G=>G.nameKey===j?{...G,value:E}:G);m(W)},{type:O,nameKey:H,value:B}=e,J=j=>j==null?!1:typeof j=="string"?j.trim().length>0:!0,Z=(o.find(j=>j.nameKey===e.nameKey)?.requiredField??!1)&&!J(B),ne=[ae.ContactField_type.NUMBER_INTEGER,ae.ContactField_type.NUMBER_DECIMAL,ae.ContactField_type.NUMBER_CURRENCY,ae.ContactField_type.NUMBER_ACCOUNTING,ae.ContactField_type.CURRENCY],V=()=>{const j=o.find(G=>G.nameKey===H);if(!j)return!1;const{min:A,max:E}=j;if(A==null&&E==null||!ne.includes(O)||B===""||B==null)return!1;const W=Number(B);return Number.isNaN(W)?!1:A!=null&&W<A||E!=null&&W>E},_=()=>O===ae.ContactField_type.DATE?t.jsx(mi,{value:B?K(B):null,handleChange:j=>U(H,j?.toDate()),dateFormat:w}):O===ae.ContactField_type.TIME?t.jsx(yi,{value:e?.valueDate?K(e.valueDate):B?K(B):null,handleChange:j=>U(H,j),userTimeFormat:T}):O===ae.ContactField_type.DATERANGE?t.jsx(bi,{value:B&&typeof B=="string"&&B.includes(" - ")?[K(B.split(" - ")[0]),K(B.split(" - ")[1])]:null,handleChange:j=>U(H,[j[0]?.toDate?.(),j[1]?.toDate?.()]),userDateFormat:w}):O===ae.ContactField_type.TIMERANGE?t.jsx(xi,{value:Array.isArray(B)&&B.length===2?[K(B[0]),K(B[1])]:null,handleChange:j=>U(H,[j[0]?.toDate?.(),j[1]?.toDate?.()]),userTimeFormat:T}):O===ae.ContactField_type.OPTIONS?t.jsx(hi,{value:typeof B=="string"?B:"",handleChange:j=>U(H,j),options:o.find(j=>j.nameKey===H)?.typeOptions??[]}):t.jsx(gi,{type:O,nameKey:H,value:B,onChange:U,min:o.find(j=>j.nameKey===H)?.min,max:o.find(j=>j.nameKey===H)?.max});return t.jsxs(Ci,{className:`fadein ${e.type===ae.ContactField_type.LONGTEXT?"col-12":"col-5"}`,children:[t.jsxs(s.Box,{display:"flex",position:"relative",minHeight:"25px",alignItems:"center",children:[g?t.jsx(s.Tooltip,{title:N(e.nameKey),arrow:!0,children:t.jsxs(Dn,{ref:v,flexGrow:1,noWrap:!0,children:[N(e.nameKey),Z&&t.jsx(s.Box,{component:"span",sx:{color:"error.main",ml:.5},children:"*"})]})}):t.jsxs(Dn,{ref:v,flexGrow:1,noWrap:!0,children:[N(e.nameKey),Z&&t.jsx(s.Box,{component:"span",sx:{color:"error.main",ml:.5},children:"*"})]}),y?t.jsxs(t.Fragment,{children:[t.jsx(En,{size:"small",onClick:F,disabled:h||V(),children:h?t.jsx(s.CircularProgress,{size:24}):t.jsx(ht,{})}),t.jsx(En,{size:"small",onClick:M,children:t.jsx(qa,{})})]}):t.jsx(vi,{className:"edit-icon",size:"small",onClick:P,children:t.jsx(Bt,{})})]}),t.jsx(s.Box,{width:y||e.type===ae.ContactField_type.LONGTEXT?"100%":"50%",position:"relative",children:y?h?null:_():t.jsx(Si,{children:J(e?.value)?e.type===ae.ContactField_type.DATERANGE?(()=>{if(typeof e.value=="string"){const j=e.value.split(" - ");if(j.length===2){const[A,E]=j,W=K(A),G=K(E);return`${W.isValid()?W.format(w):"-"} - ${G.isValid()?G.format(w):"-"}`}}else if(Array.isArray(e.value)&&e.value.length===2)return`${K(e.value[0]).format(w)} - ${K(e.value[1]).format(w)}`;return`${e.value}`})():e.type===ae.ContactField_type.TIMERANGE?Array.isArray(e.value)&&e.value.length===2?`${K(e.value[0]).format(T==="24"?"HH:mm":"hh:mm")} - ${K(e.value[1]).format(T==="24"?"HH:mm":"hh:mm")}`:`${e.value}`:e.type===ae.ContactField_type.TIME?(()=>{try{const j=e.valueDate||e.value;return`${K(j).format(T==="24"?"HH:mm":"hh:mm A")}`}catch{return`${e.value}`}})():e.type===ae.ContactField_type.DATE?(()=>{try{return`${K(e.value).format(w)}`}catch{return`${e.value}`}})():`${e?.value}`:null})})]})},ji=e=>{const{dateFormat:a,entityData:n,customContactFields:r,baseUrl:o,spaceId:i,currentUser:d,onEntityUpdated:c}=e,u=ye(),{entityType:p,editEntity:m}=it(),y=ut();if(p!=="contact")return null;const[x,h]=l.useState([]),[C,v]=l.useState(null),[g,S]=l.useState(null),[w,T]=l.useState(null),I=m;l.useEffect(()=>{if(!y)return;const F=new AbortController;return y.fetchUsers({signal:F.signal}).then(N=>{F.signal.aborted||h(N??[])}).catch(()=>{F.signal.aborted||h([])}),()=>{F.abort()}},[y]),l.useEffect(()=>{const F=new AbortController,N=async U=>{if(!U||!y)return null;try{const O=await y.fetchUserTriiById({userId:U,signal:F.signal});return O?.display_name||O?.email||null}catch{return null}};return(async()=>{const U=jt({userId:n.owner,users:x,currentUser:d})??(n.owner?await N(n.owner):null),O=jt({userId:n.createdBy??void 0,users:x,currentUser:d})??(n.createdBy?await N(n.createdBy):null),H=jt({userId:n.updatedBy??void 0,users:x,currentUser:d})??(n.updatedBy?await N(n.updatedBy):null);F.signal.aborted||(v(U),T(O),S(H))})(),()=>{F.abort()}},[y,n,x,d]);const k=(a||"YYYY/MM/DD").toUpperCase(),D=I.field.birthDate,P=D?.isValid()?D.format(k):null,M=F=>{const N=new Date;let U=N.getFullYear()-F.getFullYear();const O=N.getMonth()-F.getMonth();return(O<0||O===0&&N.getDate()<F.getDate())&&U--,U};return t.jsx(ia,{title:"General",children:t.jsxs(jn,{children:[t.jsx(zt,{title:u("conversations.contactDetails.contactOwner"),displayValue:C||"-",value:n.owner,inputType:"select",options:x,constructUpdateObject:F=>({owner:typeof F=="string"?F:""}),contact:I,baseUrl:o,spaceId:i,contactId:n.id,onEntityUpdated:c}),t.jsx(zt,{title:u("conversations.contactDetails.business"),displayValue:n.businessName||"-",value:n.businessId,inputType:"selectBusiness",businessId:n.businessId,contact:I,baseUrl:o,spaceId:i,contactId:n.id,onEntityUpdated:c}),t.jsx(zt,{title:u("conversations.contactDetails.createdBy"),value:w||"-",isNotEditable:!0,contact:I,baseUrl:o,spaceId:i,contactId:n.id}),t.jsx(zt,{title:u("conversations.contactDetails.modifiedBy"),value:g||"-",isNotEditable:!0,contact:I,baseUrl:o,spaceId:i,contactId:n.id}),t.jsx(zt,{title:u("global.birthdate"),inputType:"birthday",displayValue:D?`${P} (${M(D.toDate())})`:"-",value:D?D.toISOString():"",constructUpdateObject:F=>({birthDate:F}),contact:I,baseUrl:o,spaceId:i,contactId:n.id,dateFormat:a,onEntityUpdated:c}),I.field.customProperties.map(F=>t.jsx(An,{property:F,entity:I,entityType:"contact",entityId:String(n.id),customContactFields:r,userTrii:d,baseUrl:o,spaceId:i,onEntityUpdated:c},F.nameKey))]})})},Pa=({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(pt,{entityType:"business",entityId:p,title:e,value:a,isNotEditable:n,inputType:r,options:o,displayValue:i,constructUpdateObject:d,baseUrl:c,spaceId:u,onEntityUpdated:m}),wi=e=>{const a=ye(),{entityData:n,customContactFields:r,baseUrl:o,spaceId:i,currentUser:d,onEntityUpdated:c}=e,{entityType:u,editEntity:p}=it(),m=ut();if(u!=="business")return null;const[y,x]=l.useState([]),[h,C]=l.useState(null),[v,g]=l.useState(null),[S,w]=l.useState(null),T=p;return l.useEffect(()=>{if(!m)return;const I=new AbortController;return m.fetchUsers({signal:I.signal}).then(k=>{I.signal.aborted||x(k??[])}).catch(()=>{I.signal.aborted||x([])}),()=>{I.abort()}},[m]),l.useEffect(()=>{const I=new AbortController,k=async D=>{if(!D||!m)return null;try{const P=await m.fetchUserTriiById({userId:D,signal:I.signal});return P?.display_name||P?.email||null}catch{return null}};return(async()=>{const D=jt({userId:n.owner,users:y,currentUser:d})??(n.owner?await k(n.owner):null),P=jt({userId:n.createdBy??void 0,users:y,currentUser:d})??(n.createdBy?await k(n.createdBy):null),M=jt({userId:n.updatedBy??void 0,users:y,currentUser:d})??(n.updatedBy?await k(n.updatedBy):null);I.signal.aborted||(C(D),w(P),g(M))})(),()=>{I.abort()}},[m,n,y,d]),t.jsx(ia,{title:"General",children:t.jsxs(jn,{children:[t.jsx(Pa,{title:a("conversations.businessDetails.businessOwner"),value:n.owner,displayValue:h||"-",inputType:"select",options:y,constructUpdateObject:I=>({owner:typeof I=="string"?I:""}),baseUrl:o,spaceId:i,businessId:n.id,onEntityUpdated:c}),t.jsx(Pa,{title:a("conversations.contactDetails.createdBy"),value:S||"-",isNotEditable:!0}),t.jsx(Pa,{title:a("conversations.contactDetails.modifiedBy"),value:v||"-",isNotEditable:!0}),T.field.customProperties.map(I=>t.jsx(An,{property:I,entity:T,entityType:"business",entityId:String(n.id),customContactFields:r,userTrii:d,baseUrl:o,spaceId:i,onEntityUpdated:c},I.nameKey))]})})},Ti=e=>{const{entityType:a,entityData:n}=e;return l.useMemo(()=>a==="contact"||a==="business"?a:"contact",[a])==="contact"?t.jsx(ji,{...e,entityData:n,entityType:"contact"}):t.jsx(wi,{...e,entityData:n,entityType:"business"})},Ii=()=>{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("")}}},ki=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"})),Ei=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),overflow:"hidden",maxWidth:"80%"})),Di=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),Ai=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"})),Fi=Te.styled(s.Avatar)(({})=>({width:32,height:32,cursor:"pointer"})),Ua=Te.styled(s.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),Bi=Te.styled(Ua)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),$i=Te.styled(Ua)(({})=>({fontSize:14,fontWeight:500})),Mi=Te.styled(Ua)(({})=>({fontSize:14,fontWeight:500})),Pi=({item:e})=>{const a=e.profileUrl,{imageUrl:n}=Lt({initialImageUrl:a});return t.jsx(t.Fragment,{children:t.jsxs(ki,{children:[t.jsx(Ei,{children:t.jsxs(Ai,{children:[t.jsx(s.Tooltip,{title:e.address||"",arrow:!0,children:t.jsx($i,{children:e.address})}),t.jsx(s.Tooltip,{title:e.profileName||"",arrow:!0,children:t.jsx(Mi,{sx:{marginTop:"-10px",marginLeft:"5px",fontSize:"10px"},children:e.profileName})}),t.jsx(s.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(Bi,{children:e.note})})]})}),t.jsxs(Di,{children:[a!==""&&t.jsx(Fi,{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"}})})})]})]})})},Ra=Ya.PhoneNumberUtil.getInstance(),Ui=e=>{if(!e||!e.trim())return e;try{const a=Ra.parse(e,void 0);return Ra.isValidNumber(a)?Ra.format(a,Ya.PhoneNumberFormat.INTERNATIONAL):e}catch{return e}},Ri=Te.styled(s.IconButton)(({theme:e})=>({padding:e.spacing(.5),marginTop:"-5px"})),Ni=Te.styled(Nr)(({theme:e})=>({height:16,width:16,color:e.palette.secondary.main})),Li=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"})),Oi=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),maxWidth:"80%"})),zi=Te.styled(s.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),_i=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"})),Fn=Te.styled(s.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),Wi=Te.styled(Fn)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),Vi=Te.styled(Fn)(({})=>({fontSize:14,fontWeight:500})),Hi=({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(()=>Ui(e.address||""),[e.address]);return t.jsx(t.Fragment,{children:t.jsxs(Li,{children:[t.jsxs(Oi,{children:[t.jsx(Ri,{onClick:a,color:"primary",size:"small",children:t.jsx(Ni,{})}),t.jsxs(_i,{children:[t.jsx(s.Tooltip,{title:n||"",arrow:!0,children:t.jsx(Vi,{children:n})}),t.jsx(s.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(Wi,{children:e.note})})]})]}),t.jsx(zi,{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"}})})})})]})})},Gi=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}})),qi=s.styled(s.Typography)(({})=>({letterSpacing:-.5,fontSize:14})),Yi=s.styled(s.Box)(({})=>({display:"flex",alignItems:"center"})),Ki=s.styled(s.Box)(({theme:e})=>({display:"flex",flexDirection:"column",gap:e.spacing(1),width:"100%"})),Ji=s.styled(s.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),Xi=({title:e,methodItems:a,isPhone:n,handleEdit:r,owner:o})=>t.jsxs(Gi,{children:[t.jsxs(Yi,{children:[t.jsx(qi,{children:e}),t.jsx(Ji,{className:"edit-icon",size:"small",onClick:r,children:t.jsx(Bt,{fontSize:"small",sx:{color:i=>i.palette.secondary.main}})})]}),t.jsx(Ki,{children:a.map((i,d)=>n?t.jsx(Hi,{item:i},d):t.jsx(Pi,{item:i,owner:o},d))})]}),Qi=({title:e})=>t.jsx(s.Box,{children:t.jsx(s.Typography,{variant:"subtitle2",children:e})}),Zi={container:{display:"flex",justifyContent:"space-between",alignItems:"center"}},la=({title:e,handleAdd:a})=>{const n=ye();return t.jsxs(s.Box,{sx:Zi.container,children:[t.jsx(s.Typography,{variant:"subtitle2",children:e}),t.jsx(s.Button,{onClick:a,size:"small",startIcon:t.jsx(Ka,{}),variant:"text",color:"primary",children:n("global.add")})]})},el={container:{border:"1px solid lightgray",borderRadius:1,p:2,width:"100%",display:"flex",flexDirection:"column",gap:1}},_t=({children:e})=>t.jsx(s.Box,{sx:el.container,children:e}),Bn={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=ye(),[d,c]=l.useState(null),u=!!d,{channelType:p,address:m}=a,[y,x]=l.useState(!1),[h,C]=l.useState(null),[v,g]=l.useState(!1),S=M=>{c(M.currentTarget)},w=()=>{c(null)},T=()=>{g(!1)},I=()=>{e(),w()},k=async()=>{x(!0);try{if(!o)return;const M=await o(13);if(!M)return;C(M),g(!0)}catch(M){console.error("Error verifying WhatsApp account:",M)}finally{x(!1)}w()},D=async()=>{x(!0);try{if(!o)return;const M=await o(21);if(!M)return;C(M),g(!0)}catch(M){console.error("Error verifying RCS account:",M)}finally{x(!1)}w()},P=async()=>{await n(),g(!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:S,children:t.jsx(Lr,{})}),t.jsxs(s.Menu,{id:"basic-menu",anchorEl:d,open:u,onClose:w,MenuListProps:{"aria-labelledby":"basic-button"},children:[t.jsxs(s.MenuItem,{onClick:I,children:[t.jsx(s.ListItemIcon,{children:t.jsx(aa,{color:"error"})}),t.jsx(s.ListItemText,{children:i("global.delete")})]}),p===5&&t.jsxs(s.MenuItem,{onClick:k,disabled:!r,children:[t.jsx(s.ListItemIcon,{children:y?t.jsx(s.CircularProgress,{size:24}):t.jsx(Or,{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(zr,{})}),t.jsx(s.ListItemText,{children:i("optionsMenu.verifyRCSAccount")})]})]}),t.jsx(s.Modal,{open:v,onClose:T,"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:M=>M.palette.background.default},children:h?.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:P,color:"primary",children:i("optionsMenu.yesLink")}),t.jsx(s.Button,{onClick:T,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:T,color:"secondary",sx:{position:"absolute",bottom:-25,right:0},children:i("global.cancel")})]})})})]})},Wt=e=>{const a=ye(),n=ut(),{editEntity:r,entityId:o}=it(),[i,d]=l.useState(!1),c=e.checked??!0,u=e.entityId??o,{note:p,channelType:m,id:y,address:x}=e.addressData,h=!e.addressData.hasOwnProperty("isSaved"),C=e.replaceAddress??r.action.replaceAddress,v=e.addWhatsappVerified||(typeof r.action?.addWhatsappVerified=="function"?r.action.addWhatsappVerified:void 0),g=async I=>{if(!n||!u)return null;const k=await n.setContactAddress({data:{address:x,contactId:u,type:I}});return C(y,k),k},S=async()=>{if(!n||!u)return;const I=await n.updateContactAddress({data:{contactAddressId:y,contactId:u,note:p??""}});C(y,I)},w=async()=>{d(!0),h?(await S(),d(!1)):await g(m)&&d(!1)},T=async()=>{d(!0);const I=await g(13);I&&v&&v(I),I&&d(!1)};return t.jsxs(s.Box,{sx:{...Bn.container},children:[h&&t.jsx(s.TextField,{size:"small",label:a("global.note"),variant:"outlined",onChange:I=>e.handleNoteFieldChange(I,y,m),value:p,fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",sx:Bn.noteTextField}),t.jsx(s.IconButton,{onClick:w,children:i?t.jsx(s.CircularProgress,{size:24}):t.jsx(ht,{color:"primary"})}),t.jsx(tl,{onDelete:()=>e.handleDeleteAddress(y,m),addressData:e.addressData,handleLinkAccountSave:T,checked:c&&!i,onCheckContactAddress:async I=>{if(!n)return null;try{return await n.checkContactAddress({data:{address:x,type:I}})}catch{return null}}})]})},al={container:{display:"flex",gap:"100px",alignItems:"center"}},Vt=({children:e})=>t.jsx(s.Box,{sx:al.container,children:e}),nl={container:{width:"100%",borderRadius:1,px:1.5,py:2,display:"flex",flexDirection:"column",gap:2,overflow:"auto",maxHeight:"calc(100vh - 250px)"}},Ht=({children:e})=>t.jsx(s.Box,{sx:{...nl.container},children:e}),rl=({status:e})=>{switch(e){case"idle":return null;case"loading":return t.jsx(Vr,{size:20});case"available":return t.jsx(_r,{style:{height:27,width:27},color:"success"});case"unavailable":return t.jsx(Wr,{style:{height:27,width:27},color:"error"});default:return null}},$n=({status:e,text:a})=>t.jsxs(Hr,{position:"end",children:[a?t.jsx(Gr,{marginRight:.5,children:a}):null,t.jsx("div",{style:{width:30,display:"flex",justifyContent:"center"},children:t.jsx(rl,{status:e})})]}),sl={code:{width:"60%",color:"gray"}},ol=({data:e,editEntity:a})=>{const n=a.action;return t.jsx(_t,{children:t.jsxs(Vt,{children:[t.jsx(s.Typography,{sx:sl.code,variant:"body2",children:e.address}),t.jsx(Wt,{addressData:e,handleNoteFieldChange:n.handleNoteFieldChange,handleDeleteAddress:n.handleDeleteAddress})]})})},il=({IMSs:e,editEntity:a})=>t.jsx(Ht,{children:e?.map(n=>t.jsx(ol,{data:n,editEntity:a},n.id))}),da=({editEntity:e,title:a,IMSs:n})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(Qi,{title:a}),t.jsx(il,{IMSs:n,editEntity:e})]}),ll={addressField:{}},Na=({data:e,onChange:a,setWarnings:n})=>{const{id:r,channelType:o,address:i}=e,d=ye(),c=ut(),[u,p]=l.useState("idle"),[m,y]=l.useState(i),x=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let h=setTimeout(async()=>{if(i!==""&&i!==m){if(!c)return;p("loading"),y(i);const C={address:i,type:o};try{const v=await c.checkContactAddress({data:C}),{success:g,warnings:S}=v;n(S),p(g?"available":"unavailable")}catch{n([]),p("unavailable")}}},1700);return()=>clearTimeout(h)},[c,e,i,o,m,n]),t.jsx(t.Fragment,{children:t.jsx(s.TextField,{disabled:x,sx:ll.addressField,size:"small",label:o===Ct.ChannelType.WHATSAPP||o===Ct.ChannelType.RCS?d?d("global.number"):"Number":d?d("global.email"):"Email",value:i,onChange:h=>{a(h,r,o)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx($n,{status:u})})}})})},dl={addressField:{}},cl=({data:e,onChange:a,setWarnings:n})=>{const r=ut(),o=ye(),{id:i,channelType:d,address:c}=e,[u,p]=l.useState("idle"),[m,y]=l.useState(c),x=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let h=setTimeout(async()=>{if(c!==""&&c!==m){if(!r)return;p("loading"),y(c);const C={address:c,type:d};try{const{success:v,warnings:g}=await r.checkContactAddress({data:C});n(g),p(v?"available":"unavailable")}catch{n([]),p("unavailable")}}},1700);return()=>clearTimeout(h)},[e]),t.jsx(t.Fragment,{children:t.jsx(s.TextField,{disabled:x,sx:dl.addressField,size:"small",label:o("global.number"),value:c,onChange:h=>{a(h,i,d)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx($n,{status:u})})}})})},La={secondaryContainer:{display:"flex",alignItems:"baseline",height:"100%",gap:.5},icon:{height:15},chip:{borderRadius:"6px",height:"22px"}},ul=({text:e})=>t.jsx(s.Grid,{item:!0,children:t.jsx(s.Box,{sx:La.secondaryContainer,children:t.jsx(Yr,{icon:t.jsx(qr,{sx:La.icon}),sx:La.chip,label:e,color:"error",variant:"outlined"})})}),ca=({warnings:e})=>{const a=ye();return t.jsx(s.Box,{children:t.jsx(s.Grid,{container:!0,children:e?.map((n,r)=>t.jsx(ul,{text:a(`contactAddressError.${n}`)},r))})})},pl={numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{marginTop:"10px"},adressInputBox:{position:"relative",width:"45%"}},fl=({data:e})=>{const a="edit",{editEntity:n}=it(),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(_t,{children:t.jsxs(Vt,{children:[t.jsxs(s.Box,{sx:{...pl.numberCountryContainer,flexDirection:"column"},children:[t.jsx(cl,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange}),i.length>0&&t.jsx(ca,{warnings:i})]}),t.jsx(Wt,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress,addWhatsappVerified:r.addWhatsappVerified,checked:c})]})})},gl=({phoneNumbers:e})=>t.jsx(Ht,{variant:"large",children:e?.map(a=>t.jsx(fl,{data:a},a.id))}),ml=({phoneNumbers:e,handleAdd:a})=>{const n=ye();return t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(la,{handleAdd:a,title:n("global.phones")}),t.jsx(gl,{phoneNumbers:e})]})},Mn={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}=it(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(_t,{children:[t.jsxs(Vt,{children:[t.jsx(s.Box,{sx:Mn.numberCountryContainer,children:t.jsx(s.Box,{sx:Mn.adressInputBox,children:t.jsx(Na,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Wt,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(ca,{warnings:i})]})},yl=({emails:e})=>t.jsx(Ht,{variant:"large",children:e?.map(a=>t.jsx(hl,{data:a},a.id))}),xl=({emails:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(la,{handleAdd:a,title:"Emails"}),t.jsx(yl,{emails:e})]}),Pn={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},bl=({data:e})=>{const a="edit",{editEntity:n}=it(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(_t,{children:[t.jsxs(Vt,{children:[t.jsx(s.Box,{sx:Pn.numberCountryContainer,children:t.jsx(s.Box,{sx:Pn.adressInputBox,children:t.jsx(Na,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Wt,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(ca,{warnings:i})]})},vl=({whatsapps:e})=>t.jsx(Ht,{variant:"large",children:e?.map(a=>t.jsx(bl,{data:a},a.id))}),Cl=({whatsapps:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(la,{handleAdd:a,title:"WhatsApp"}),t.jsx(vl,{whatsapps:e})]}),Un={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Sl=({data:e})=>{const a="edit",{editEntity:n}=it(),r=n.action,o=n.state,[i,d]=l.useState([]);return t.jsxs(_t,{children:[t.jsxs(Vt,{children:[t.jsx(s.Box,{sx:Un.numberCountryContainer,children:t.jsx(s.Box,{sx:Un.adressInputBox,children:t.jsx(Na,{data:e,setWarnings:d,onChange:r.handleAddressFieldChange})})}),t.jsx(Wt,{mode:a,addressData:e,handleNoteFieldChange:r.handleNoteFieldChange,handleDeleteAddress:r.handleDeleteAddress,isDeletingAddress:o.isDeletingAddress,replaceAddress:r.replaceAddress})]}),i.length>0&&t.jsx(ca,{warnings:i})]})},jl=({RCSs:e})=>t.jsx(Ht,{variant:"large",children:e?.map(a=>t.jsx(Sl,{data:a},a.id))}),wl=({RCSs:e,handleAdd:a})=>t.jsxs(s.Box,{sx:{width:"100%"},children:[t.jsx(la,{handleAdd:a,title:"RCS"}),t.jsx(jl,{RCSs:e})]}),Tl=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})),Il=({open:e,onClose:a,title:n})=>{const r=ye(),{editEntity:o}=it(),{emails:i,phoneNumbers:d,imsWhatsapp:c,imsRCS:u}=o.field,{addEmail:p,addPhone:m,addWhatsapp:y,resetToInitialContactInformation:x,addRCS:h}=o.action;function C(){a(),x()}return t.jsx(s.Modal,{open:e,onClose:a,children:t.jsxs(Tl,{children:[(()=>{switch(n){case"Phones":return t.jsx(ml,{handleAdd:m,phoneNumbers:d});case"Emails":return t.jsx(xl,{handleAdd:p,emails:i});case"Whatsapp":return t.jsx(Cl,{handleAdd:y,whatsapps:c});case"RCS":return t.jsx(wl,{handleAdd:h,RCSs:u});case"Facebook":return t.jsx(da,{title:"Facebook",IMSs:o.field.imsFacebooks,editEntity:o});case"Webchat":return t.jsx(da,{title:"Webchat",IMSs:o.field.imsWebchats,editEntity:o});case"Instagram":return t.jsx(da,{title:"Instagram",IMSs:o.field.imsInstagrams,editEntity:o});case"Mercado libre":return t.jsx(da,{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")})})]})})},kl=({ownerData:e})=>{const{isOpen:a,title:n,openModal:r,closeModal:o}=Ii(),{editEntity:i}=it(),d=ye(),c=i.field.phoneNumbers,u=i.field.emails,p=i.field.imsFacebooks,m=i.field.imsWhatsapp,y=i.field.imsMercadolibre,x=i.field.imsWebchats,h=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:y,modalTitle:"Mercado libre",visible:!0},{key:"webchat",title:"Webchat",items:x,modalTitle:"Webchat",visible:!0},{key:"instagram",title:"Instagram",items:h,modalTitle:"Instagram",visible:!0}];return t.jsxs(t.Fragment,{children:[t.jsx(ia,{title:d("conversations.contactDetails.contactInformation"),children:t.jsx("div",{className:"grid grid-cols-1 gap-3",children:v.filter(g=>g.visible).map(g=>t.jsx(Xi,{handleEdit:()=>r(g.modalTitle),title:g.title,methodItems:g.items,isPhone:g.isPhone,owner:e},g.key))})}),t.jsx(Il,{open:a,onClose:o,title:n})]})},El=({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=ye(),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(pt,{entityType:e,title:c("conversations.contactDetails.street"),value:a[p]?.street??"",...d,constructUpdateObject:y=>({[p]:{street:y}}),minWidth:"100%"})}),t.jsx(pt,{entityType:e,title:c("conversations.contactDetails.city"),value:a[p]?.city??"",...d,constructUpdateObject:y=>({[p]:{city:y}}),minWidth:"100%"}),t.jsx(pt,{entityType:e,title:c("conversations.contactDetails.state"),value:a[p]?.state??"",...d,constructUpdateObject:y=>({[p]:{state:y}}),minWidth:"100%"}),t.jsx(pt,{entityType:e,title:c("conversations.contactDetails.postcode"),value:a[p]?.zipcode??"",...d,constructUpdateObject:y=>({[p]:{zipcode:y}}),minWidth:"100%"}),t.jsx(pt,{entityType:e,title:c("conversations.contactDetails.country"),value:a[p]?.country??"",...d,constructUpdateObject:y=>({[p]:{country:y}}),minWidth:"100%"})]})]});return t.jsx(ia,{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")})]})})},Dl=({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]),Al=({open:e,baseUrl:a,spaceId:n,contactData:r,contactType:o,labels:i,selectedTags:d,onTagsUpdated:c})=>{const[u,p]=l.useState("main"),[m,y]=l.useState([]),[x,h]=l.useState(!1),[C,v]=l.useState(!1),[g,S]=l.useState([]),[w,T]=l.useState(!1),I=l.useMemo(()=>{const M=i??[],F=g??[],N=new Map;for(const U of M)U?.id&&N.set(String(U.id),U);for(const U of F)U?.id&&N.set(String(U.id),U);return Array.from(N.values())},[i,g]),k=l.useCallback(()=>{p("main"),y([]),h(!1),v(!1),S([]),T(!1)},[]);l.useEffect(()=>{e||k()},[e,k]),l.useEffect(()=>{if(u!=="tags"){h(!1);return}if(x||!I.length)return;const M=new Set(d.map(N=>String(N.id))),F=I.filter(N=>M.has(String(N?.id)));y(F),h(!0)},[u,x,I,d]);const D=l.useCallback(async M=>{if(w||!a||!n)return;const F=String(M??"").trim();if(!F)return;const N=F.toLowerCase(),U=I.find(O=>String(O?.name??"").trim().toLowerCase()===N);if(U?.id){y(O=>{const H=O??[];return H.some(B=>String(B?.id)===String(U.id))?H:[...H,U]});return}T(!0);try{const O=await fn({baseUrl:a,spaceId:n,name:F});S(H=>{const B=H??[];return!O?.id||B.some(J=>String(J?.id)===String(O.id))?B:[...B,O]}),y(H=>{const B=H??[];return!O?.id||B.some(J=>String(J?.id)===String(O.id))?B:[...B,O]})}finally{T(!1)}},[w,a,n,I]),P=l.useCallback(async()=>{if(C||!a||!n||!r||o!=="contact"&&o!=="business")return;const M=m.filter(F=>F?.id&&F?.name).map(F=>({id:String(F.id),name:String(F.name)}));v(!0);try{await Ze({baseUrl:a,spaceId:n,entityType:o,entityId:String(r.id),body:{tags:M}}),c(M),p("main")}finally{v(!1)}},[C,a,n,r,o,m,c]);return{view:u,setView:p,draftLabels:m,setDraftLabels:y,labelsOptions:I,isSaving:C,isCreatingLabel:w,handleCreateLabel:D,handleSaveTags:P}},Fl=({onClose:e})=>l.useCallback((a,n)=>{n!=="escapeKeyDown"&&e()},[e]),Bl={format:"IBusiness",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"},$l=({baseUrl:e,spaceId:a,contactId:n,initialBusiness:r,onBack:o,onEntityUpdated:i,currentUser:d})=>{const c=ye(),u=ut(),p=l.useRef(null),m=l.useRef(null),[y,x]=l.useState(()=>r?.businessName??""),[h,C]=l.useState(!1),[v,g]=l.useState(!1),[S,w]=l.useState(!1),[T,I]=l.useState([]),[k,D]=l.useState(r??null),[P,M]=l.useState(1),[F,N]=l.useState(!1),[U,O]=l.useState(!1),H=l.useMemo(()=>{const W=d?.display_name,G=d?.email;return String(W||G||"").trim()},[d]);l.useEffect(()=>()=>{p.current&&(clearTimeout(p.current),p.current=null),m.current?.abort()},[]),l.useEffect(()=>{D(r??null),x(r?.businessName??"")},[r]);const B=()=>{m.current?.abort(),m.current=null,p.current&&(clearTimeout(p.current),p.current=null),C(!1),O(!1),M(1),N(!1),I([])},J=W=>W.filter(G=>!!G?.id).map(G=>({businessId:String(G.id),businessName:String(G.name??"")})),Z=async({query:W,page:G})=>{if(!u)return;m.current?.abort();const se=new AbortController;m.current=se,g(!0);try{const ie={...Bl,currentPage:G,filter:[{value:W,column:"name",condition:""}]},je=await u.fetchBusinessTableData({pagination:ie,signal:se.signal});if(se.signal.aborted)return;const he=J(je?.contactos??[]);C(!0);const te=je?.paginacion?.total??0;I(Ae=>{const q=G===1?he:(()=>{const pe=new Map;for(const xe of Ae)pe.set(xe.businessId,xe);for(const xe of he)pe.set(xe.businessId,xe);return Array.from(pe.values())})();return te&&q.length>=te&&O(!0),q})}finally{g(!1),w(!1),N(!1)}},ne=W=>{B(),W&&(p.current&&(clearTimeout(p.current),p.current=null),w(!0),p.current=setTimeout(()=>{Z({query:W,page:1})},800))},V=W=>{const G=W.target;if(!(G.scrollHeight-G.scrollTop-G.clientHeight<1)||U||v||!y)return;const se=P+1;N(!0),M(se),Z({query:y,page:se})},_=async()=>{if(!u||!H)return;const W=String(y??"").trim();if(W){g(!0);try{const G={name:W,owner:H,imageUrl:"",members:[],tags:[],properties:[],address1:{street:"",city:"",state:"",zipcode:"",country:""},address2:{street:"",city:"",state:"",zipcode:"",country:""}},se=await u.createBusiness({business:G}),ie={businessId:String(se.id??""),businessName:String(se.name??W)};I([ie]),D(ie),C(!0)}finally{g(!1)}}},j=async()=>{if(!e||!a||!n)return;const W=k?.businessId??"",G=await Ze({baseUrl:e,spaceId:a,entityType:"contact",entityId:n,body:{businessId:W}});i?.(G),o()},A=h&&T.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(ot.LoadingButton,{size:"small",variant:"contained",onClick:_,loading:v,disabled:v||!H,children:c("global.createNew")})]}):t.jsx(s.Typography,{variant:"body2",children:c("global.noOptions")}),E=!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(Ea,{fontSize:"small"})}),t.jsx(s.Typography,{variant:"subtitle1",children:c("conversations.contactDetails.business")}),t.jsx(s.Box,{sx:{flex:1}}),t.jsx(ot.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(ht,{}),onClick:j,loading:!1,disabled:E,children:c("global.save")})]}),t.jsxs(s.Box,{sx:{position:"relative"},children:[v||S||F?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:k,onChange:(W,G)=>{D(G)},inputValue:y,onInputChange:(W,G,se)=>{x(G),se==="input"&&ne(G)},options:T,getOptionLabel:W=>W?.businessName??"",isOptionEqualToValue:(W,G)=>W.businessId===G.businessId,noOptionsText:A,renderInput:W=>t.jsx(s.TextField,{...W,size:"small",label:c("conversations.contactDetails.business"),placeholder:c("global.noValue"),InputProps:{...W.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[v||S?t.jsx(s.CircularProgress,{size:18,sx:{mr:1}}):null,W.InputProps.endAdornment]})}}),ListboxProps:{sx:{maxHeight:240,overflowY:"auto"},onScroll:V}})]})]})},Ml=({open:e,onClose:a,baseUrl:n,spaceId:r,contactId:o,sx:i,language:d="en",navigate:c,googleMapsApiKey:u,onEntityUpdated:p,contactNameFormat:m})=>{const{t:y,i18n:x}=Ye.useTranslation(),h=l.useRef(null);l.useEffect(()=>{if(window.google?.maps||document.querySelector('script[src^="https://maps.googleapis.com/maps/api/js"]'))return;if(!u){console.warn("Google Maps API key is missing. The location search feature will not work.");return}const ne=document.createElement("script");return ne.src=`https://maps.googleapis.com/maps/api/js?key=${u}&libraries=places`,ne.async=!0,ne.defer=!0,document.body.appendChild(ne),()=>{}},[u]),console.log("EditContactModalContent rendered with language:",d),l.useEffect(()=>{console.log("Language changed to:",d),d&&x.changeLanguage(d)},[d,x]);const C=ne=>y(ne),v=l.useMemo(()=>!n||!r?null:hn(n,r),[n,r]),{state:g,selectors:S,actions:w}=Go({open:e,baseUrl:n,spaceId:r,contactId:o,contactNameFormat:m}),T=Dl({entity:g.contactData,setEntity:ne=>{w.setContactData(ne??void 0),ne&&p&&p(ne)}}),{view:I,setView:k,draftLabels:D,setDraftLabels:P,labelsOptions:M,isSaving:F,isCreatingLabel:N,handleCreateLabel:U,handleSaveTags:O}=Al({open:e,baseUrl:n,spaceId:r,contactData:g.contactData,contactType:S.contactType,labels:S.labels,selectedTags:S.tags,onTagsUpdated:ne=>{if(!g.contactData)return;const V={...g.contactData,tags:ne};w.setContactData(V),p&&p(V)}}),H=Lt({baseUrl:n,spaceId:r,entityType:S.contactType==="business"||S.contactType==="contact"?S.contactType:void 0,entityId:g.contactData?String(g.contactData.id):void 0,initialImageUrl:g.contactData?.imageUrl,onEntityUpdated:T}),B=Fl({onClose:a}),J={position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:ne=>ne.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"},Z=Array.isArray(i)?[J,...i]:i?[J,i]:J;return t.jsx(ho,{value:v,children:t.jsx(go,{t:C,children:t.jsx(di,{navigate:c,children: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:Z,ref:h,children:[t.jsx(s.IconButton,{"aria-label":"close",onClick:B,sx:{position:"absolute",right:5,top:5,color:ne=>ne.palette.grey[500],zIndex:1},size:"small",children:t.jsx(ka,{sx:{fontSize:20}})}),g.isLoading&&!g.contactData?t.jsx(s.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:220},children:t.jsx(s.CircularProgress,{})}):g.error?t.jsx(s.Box,{sx:{mb:2},children:"Failed to load contact"}):g.contactData?t.jsx(ii,{value:{view:I,setView:k},children:t.jsx(ri,{entityType:S.contactType==="business"?"business":"contact",entityData:g.contactData,customContactFields:S.contactFields,baseUrl:n,spaceId:r,children:t.jsxs(s.Box,{sx:{position:"relative",height:"100%"},children:[t.jsx(s.Fade,{in:I==="main",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsxs(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:[t.jsx(wo,{imgUrl:H.imageUrl,displayName:S.displayName,tags:S.tags,onEditTags:()=>{k("tags")},onUploadPhoto:H.action.uploadImage,onPhotoFileChange:H.inputAtributes.onChange,photoInputRef:H.inputAtributes.ref,isUploadingPhoto:H.isUploading,onDeletePhoto:H.action.deleteImage,isDeletingPhoto:H.isDeleting,contactType:S.contactType,entityId:g.contactData?.id,firstName:S.isContact?g.contactData.firstName:void 0,lastName:S.isContact?g.contactData.lastName:void 0,name:S.isBusiness?g.contactData.name:void 0,onEntityUpdated:T}),t.jsxs(s.Box,{sx:{px:1,pb:2},children:[t.jsx(Ti,{dateFormat:S.userTrii?.regCon_dateFormat||"MM/dd/yyyy",entityType:S.contactType==="contact"||S.contactType==="business"?S.contactType:"contact",entityData:g.contactData,customContactFields:S.contactFields,baseUrl:n,spaceId:r,onEntityUpdated:T,currentUser:S.userTrii}),t.jsx(El,{entityType:S.contactType==="contact"||S.contactType==="business"?S.contactType:"contact",entityData:g.contactData,baseUrl:n,spaceId:r,onEntityUpdated:T,onDirectionSearchClick:()=>k("searchLocation")}),t.jsx(kl,{ownerData:g.contactData})]})]})}),t.jsx(s.Fade,{in:I==="searchLocation",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(Ho,{baseUrl:n,spaceId:r,entityType:S.contactType==="business"?"business":"contact",entityId:String(g.contactData.id),onBack:()=>k("main"),onEntityUpdated:T})})}),t.jsx(s.Fade,{in:I==="tags",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(Io,{value:D,options:M,onChange:P,onBack:()=>k("main"),onSave:O,isSaving:F,onCreateNew:U,isCreatingNew:N,popperContainer:h.current})})}),t.jsx(s.Fade,{in:I==="businessSelect",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(s.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx($l,{baseUrl:n,spaceId:r,contactId:String(g.contactData.id),initialBusiness:S.isContact&&g.contactData?.businessId?{businessId:String(g.contactData.businessId),businessName:String(g.contactData.businessName??"")}:null,onBack:()=>k("main"),onEntityUpdated:T,currentUser:S.userTrii})})})]})})}):null]})})})})})})},Pl=e=>t.jsx(Ye.I18nextProvider,{i18n:Nt,children:t.jsx(Ml,{...e})}),Rn=l.createContext(null),Ul=Rn.Provider,Nn=()=>l.useContext(Rn),Rl={events:[],setEvents:()=>{},filteredEvents:[]},Nl=(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])},Ln={open:!1,handleOpen:()=>{},handleClose:()=>{}},On=()=>{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])},yt={actions:{onError:()=>{},onSuccess:()=>{},resetValue:()=>{},changeValue:()=>{}},attributes:{error:!1,helperText:"",type:"",value:"",onChange:()=>{}}},xt=(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)},[]),y=l.useCallback(v=>{r(v)},[]),x=l.useCallback(()=>{r(a||"")},[a]),h=l.useMemo(()=>({onError:u,onSuccess:p,resetValue:x,changeValue:y}),[u,p,x,y]),C=l.useMemo(()=>({error:o,helperText:d,type:e,value:n,onChange:m}),[o,d,e,n,m]);return{actions:h,attributes:C}};function zn(e){return typeof e=="number"}const Ll={notifications:[],action:{addNotification:()=>{},deleteNotification:e=>{},handleTimeFieldChange:(e,a)=>{},handleTimePeriodChange:(e,a)=>{},handleReminderChange:(e,a)=>{},resetNotifications:()=>{}}};function Ol(e){const[a,n]=l.useState(e||[]),r=l.useCallback(()=>{const m={id:Ot(),timeValue:15,timePeriod:na.EventNotificationPeriod.MINUTE,sendToContact:!1};n(y=>y.concat(m))},[]),o=l.useCallback(m=>{n(y=>y.filter(x=>x.id!==m))},[]),i=l.useCallback((m,y)=>{const x=Number(m.target.value);zn(x)&&n(h=>h.map(C=>C.id===y?{...C,timeValue:x}:C))},[]),d=l.useCallback((m,y)=>{if(!zn(m.target.value))return;const x=m.target.value;n(h=>h.map(C=>C.id===y?{...C,timePeriod:x}:C))},[]),c=l.useCallback((m,y)=>{const x=m.target.checked;n(h=>h.map(C=>C.id===y?{...C,sendToContact:x}:C))},[]),u=l.useCallback(()=>{n([])},[]);l.useEffect(()=>{if(e){const m=e.map(y=>({...y,id:y.id||Ot()}));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 zl={state:{selectedStartDate:K(),selectedEndDate:K().add(30,"minute"),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},_l={state:{search:"",selectedContact:null},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},Wl={titleField:yt,descriptionField:yt,locationField:yt,colorField:yt,date:zl,allDay:!1,setAllDay:()=>{},isPrivate:!1,setIsPrivate:()=>{},recurrenceRule:"",setRecurrenceRule:()=>{},notifications:Ll,linkContact:_l,create:()=>({title:"",details:"",location:"",allDay:!1,isPrivate:!1,color:"",startAt:"",endAt:"",notifications:[],rule:"",contactId:null}),resetFields:()=>{}},Vl=(e,a)=>{const[n,r]=l.useState(e??K()),[o,i]=l.useState(a??K().add(30,"minute")),[d,c]=l.useState(!1),u=l.useCallback(y=>x=>{y(x)},[]),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}},Hl=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(x=>{o({id:x.id,name:x.name??""}),n("")},[]),c=l.useCallback(()=>{o(null)},[]),u=l.useCallback(x=>{n(x)},[]),p=l.useCallback(()=>{n(""),o(e?.id?{id:e.id,name:e.name}:null)},[e]),m=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:m,action:y}},Gl=e=>{const a=l.useRef(null),n=xt("text",e?.title??""),r=xt("text",e?.details??e?.description??""),o=xt("text",e?.location??""),i=xt("text",e?.color??"#1976d2"),d=Vl(e?.startAt?K(e.startAt):void 0,e?.endAt?K(e.endAt):void 0),[c,u]=l.useState(e?.allDay??!1),[p,m]=l.useState(e?.isPrivate??!1),[y,x]=l.useState(e?.rule??""),h=Ol(e?.notifications),C=Hl(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:h.notifications.filter(S=>S.timeValue>0).map(S=>({id:S.id,timePeriod:S.timePeriod,timeValue:S.timeValue,sendToContact:S.sendToContact})),rule:y,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,h.notifications,y,C.state.selectedContact]),g=l.useCallback(()=>{n.actions.resetValue(),r.actions.resetValue(),o.actions.resetValue(),i.actions.changeValue("#1976d2"),u(!1),m(!1),x(""),h.action.resetNotifications(),C.action.resetField(),d.action.setError(!1),a.current=null},[n.actions,r.actions,o.actions,i.actions,h.action,C.action,d.action]);return l.useEffect(()=>{const S=e?.id;!e||a.current===S||(a.current=S,u(e.allDay??!1),m(e.isPrivate??!1),x(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(K(e.startAt)),e.endAt&&d.action.setSelectedEndDate(K(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:y,setRecurrenceRule:x,notifications:h,linkContact:C,create:v,resetFields:g}),[n,r,o,i,d,c,p,y,h,C,v,g])},ql={field:{userIds:[]},action:{setUserIds:()=>{},resetField:()=>{}}},Yl={nameField:yt,color:"#ffffff",handleColorChange:()=>{},shareWithUsers:ql,googleCalendar:null,handleGoogleCalendarChange:()=>{}},Kl=()=>{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}},Jl=()=>{const e=xt("text",""),[a,n]=l.useState("#ffffff"),[r,o]=l.useState(null),i=Kl(),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])},Xl={tasks:[],setTasks:()=>{},filteredTasks:[]},Ql=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])},Zl={state:{selectedStartDate:K(),selectedEndDate:K(),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},ed={state:{search:"",selectedContact:null},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},td={titleField:yt,descriptionField:yt,date:Zl,linkContact:ed,create:()=>({title:"",description:"",startAt:"",endAt:"",contactId:null}),resetFields:()=>{}},ad=(e,a)=>{const[n,r]=l.useState(e??K()),[o,i]=l.useState(a??K()),[d,c]=l.useState(!1),u=l.useCallback(y=>x=>{y(x)},[]),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}},nd=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(x=>{o({id:x.id,name:x.name??""}),n("")},[]),c=l.useCallback(()=>{o(null)},[]),u=l.useCallback(x=>{n(x)},[]),p=l.useCallback(()=>{n(""),o(e?.id?{id:e.id,name:e.name}:null)},[e]),m=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:m,action:y}},rd=e=>{const a=l.useRef(null),n=xt("text",e?.title??""),r=xt("text",e?.description??""),o=ad(e?.startAt?K(e.startAt):void 0,e?.startAt?K(e.startAt):void 0),i=nd(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=K(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])},Oa=l.createContext({eventDialog:Ln,createCalendarDialog:Ln,event:Wl,events:Rl,calendar:Yl,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:Xl,activeCalendarIds:[],setActiveCalendarIds:()=>{},handleCreateTask:()=>{},task:td,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}),_n=e=>e,Wn=l.createContext(_n),sd=({t:e,children:a})=>t.jsx(Wn.Provider,{value:e,children:a}),Me=()=>{const e=l.useContext(Wn);return e?(...a)=>{const[n,...r]=a;return e(n,...r)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),_n)};var od=Object.defineProperty,id=(e,a,n)=>a in e?od(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,Vn=(e,a,n)=>id(e,typeof a!="symbol"?a+"":a,n);class ld extends Error{constructor(a,n,r){super(a),Vn(this,"status"),Vn(this,"body"),this.name="ApiError",this.status=n,this.body=r}}async function De({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 ld(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 ua(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 ua(e.baseUrl,e.spaceId).CALENDAR}async function dd(e){const a=ua(e.baseUrl,e.spaceId);return De({url:ke(a.SETTINGS,"/user")})}async function cd(e,a,n){const r=`${He(e)}/Events?start=${encodeURIComponent(a)}&end=${encodeURIComponent(n)}`;return De({url:r})}async function ud(e,a){const n=He(e);return De({url:ke(n,"/events"),method:"POST",body:a})}async function Hn(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 De({url:c,method:"PUT",body:o})}return De({url:ke(n,`/events/${r}`),method:"PUT",body:o})}async function za(e,a,n){const r=He(e);if(n){const o=n instanceof Date?n.toISOString():n,i=`${r}/events/${a}?occurrence=${o}`;await De({url:i,method:"DELETE"})}else await De({url:ke(r,`/events/${a}`),method:"DELETE"})}async function pd(e,a){const n=He(e);return De({url:ke(n,`/events/${a}`),method:"PUT",body:{finalized:!0}})}async function fd(e,a){const n=He(e);return De({url:ke(n,`/Task/${a}`)})}async function gd(e,a){const n=He(e);return De({url:ke(n,"/Task"),method:"POST",body:a})}async function Gn(e,a,n){const r=He(e);return De({url:ke(r,`/Task/${a}`),method:"PUT",body:n})}async function md(e,a){const n=He(e);await De({url:ke(n,`/Task/${a}`),method:"DELETE"})}async function hd(e,a,n){const r=He(e);return De({url:ke(r,`/Task/${a}`),method:"PUT",body:{isCompleted:n}})}async function yd(e){const a=He(e);return De({url:ke(a,"/Calendar")})}async function xd(e,a){const n=He(e);return De({url:ke(n,"/Calendar"),method:"POST",body:a})}async function bd(e,a,n){const r=He(e);return De({url:ke(r,`/Calendar/${a}`),method:"PUT",body:n})}async function vd({baseUrl:e,spaceId:a,contactId:n,signal:r}){const o=ua(e,a),i=ke(o.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return De({url:i,signal:r})}async function Cd({baseUrl:e,spaceId:a,pagination:n,signal:r}){const o=ua(e,a),i=ke(o.CONTACTS,"/Search");return De({url:i,method:"POST",body:n,signal:r})}function pa(e){const a=K(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 Gt=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},qt=e=>e?e.parentId?e.parentId:Gt(e.id):"",Sd=({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:y,externalInitialStartDate:x,externalInitialEndDate:h})=>{const{t:C}=Ye.useTranslation(),v=Nn(),g=(b,...L)=>C(b,...L),[S,w]=l.useState(o),[T,I]=l.useState(null),[k,D]=l.useState(null),[P,M]=l.useState(r),[F,N]=l.useState(d||""),[U,O]=l.useState(i||""),[H,B]=l.useState(!1),[J,Z]=l.useState("create"),[ne,V]=l.useState(null),[_,j]=l.useState({open:!1,message:"",severity:"info"}),[A,E]=l.useState(!1),[W,G]=l.useState("event"),[se,ie]=l.useState(!1),[je,he]=l.useState(!1),[te,Ae]=l.useState(null),[q,pe]=l.useState(!1),[xe,Ke]=l.useState(!1),[X,Pe]=l.useState(!1),[We,Ge]=l.useState(!1),ue="trii_calendar_last_view",Tt=b=>b==="month"||b==="week"||b==="day",[et,bt]=l.useState(()=>{try{const b=localStorage.getItem(ue);return Tt(b)?b:"month"}catch{return"month"}}),[ya,Kt]=l.useState(new Date),Jt=b=>{Kt(b),bt("day")},Ue=On(),Xe=On(),de=Gl(T??void 0),fe=rd(k??void 0);l.useEffect(()=>{r!==void 0&&M(r)},[r]),l.useEffect(()=>{o!==void 0&&w(o)},[o]),l.useEffect(()=>{i!==void 0&&O(i)},[i]),l.useEffect(()=>{d!==void 0&&N(d)},[d]),l.useEffect(()=>{c!==void 0&&(I(c),c?.calendarId&&O(c.calendarId))},[c]),l.useEffect(()=>{u!==void 0&&(console.log("[CalendarContextProvider] Sincronizando externalSelectedTask:",u),D(u),u?.calendarId&&N(u.calendarId))},[u]),l.useEffect(()=>{if(!m||!v||r!=="create"||!Ue.open)return;let b=!1;return vd({baseUrl:v.baseUrl,spaceId:v.spaceId,contactId:m}).then(L=>{b||!L||(de.linkContact.action.resetField(),de.linkContact.action.handleSelectContact(L),fe.linkContact.action.resetField(),fe.linkContact.action.handleSelectContact(L))}).catch(()=>{}),()=>{b=!0}},[m,Ue.open]),l.useEffect(()=>{if(a!==void 0)if(a&&!Ue.open){if(r==="create"){de.resetFields(),fe.resetFields(),B(!1),I(null),D(null),de.date.action.setError(!1),fe.date.action.setError(!1);const b=pa(x??new Date),L=h?pa(h):b.add(30,"minute");if(o==="task"?(fe.date.action.setSelectedStartDate(b),fe.date.action.setSelectedEndDate(b)):(de.date.action.setSelectedStartDate(b),de.date.action.setSelectedEndDate(L)),!i){const R=Re?.[0]??nt?.[0]?.id??Oe?.[0]?.id??"";R&&O(R)}if(!d){const R=Re?.[0]??Oe?.[0]?.id??"";R&&N(R)}}Ue.handleOpen()}else!a&&Ue.open&&Ue.handleClose()},[a]);const qe=()=>{de.resetFields(),fe.resetFields(),de.date.action.setError(!1),fe.date.action.setError(!1),n?n():Ue.handleClose()},Ee=Jl(),Xt=J==="create",[Oe,xa]=l.useState([]),[ba,Qt]=l.useState(!1),[va,Ca]=l.useState([]),[lt,Zt]=l.useState(""),tt="calendar_selected_ids",[Re,dt]=l.useState(()=>{try{const b=localStorage.getItem(tt);return b?JSON.parse(b):[]}catch{return[]}}),ft=Nl(Re,va),It=Ql(Re),ea=()=>{j(b=>({...b,open:!1}))},at=l.useCallback((b,L,R)=>{y?.(b,L,R)},[y]);function kt(b){const L=b?.startAt??b?.start,R=b?.endAt??b?.end??L;return{startAt:L,endAt:R}}const{myCalendars:nt,otherCalendars:Sa}=l.useMemo(()=>{const b=Oe??[];if(!lt)return{myCalendars:b,otherCalendars:[]};const L=b.filter(Q=>Q.userId===lt),R=b.filter(Q=>Q.userId!==lt);return L.length===0&&b.length>0?{myCalendars:b,otherCalendars:[]}:{myCalendars:L,otherCalendars:R}},[Oe,lt]),gt=l.useCallback(async()=>{if(v)try{const b=new Date,L=b.getUTCFullYear(),R=b.getUTCMonth(),Q=new Date(Date.UTC(L,R-1,1,0,0,0)).toISOString(),Y=new Date(Date.UTC(L,R+2,1,0,0,0)).toISOString(),me=await cd(v,Q,Y);Ca(me)}catch(b){console.error("Error fetching activities:",b)}},[v]),rt=l.useCallback(async b=>{if(v)try{const L=await fd(v,b);It.setTasks(L.map(R=>({id:R.id,title:R.title||"",start:new Date(R.startAt),end:new Date(R.endAt||R.startAt),startAt:R.startAt,endAt:R.endAt,description:R.description,calendarId:R.calendarId,isCompleted:R.isCompleted||!1,relatedContact:R.relatedContact,kind:"task"})))}catch(L){console.error("Error fetching tasks:",L)}},[v]),vt=l.useCallback(async()=>{if(v){Qt(!0);try{const b=await yd(v);xa(b)}catch(b){console.error("Error fetching calendars:",b)}finally{Qt(!1)}}},[v]);l.useEffect(()=>{const b=nt?.[0]?.id??Oe?.[0]?.id??"";b&&Ue.open&&P==="create"&&(U||O(b),F||N(b))},[Ue.open,P]);const Et=l.useRef(!1);l.useEffect(()=>{a||(Et.current=!1)},[a]),l.useEffect(()=>{if(!v||!a||Et.current||(Et.current=!0,vt(),r==="create"))return;let b=!1;return dd(v).then(L=>{b||Zt(L.uid)}).catch(()=>{}),()=>{b=!0}},[v,a,r,vt]);function Dt(b,L,R){w(b),M("create"),I(null),D(null),de.resetFields(),fe.resetFields(),B(!1);const Q=pa(L??new Date),Y=R?pa(R):Q.add(30,"minute"),me=Y.isAfter(Q)?Y:Q.add(30,"minute");if(b==="task"){fe.date.action.setSelectedStartDate(Q),fe.date.action.setSelectedEndDate(Q),fe.date.action.setError(!1);const we=Re?.[0]??Oe?.[0]?.id??"";N(we)}else{de.date.action.setSelectedStartDate(Q),de.date.action.setSelectedEndDate(me),de.date.action.setError(!1);const we=Re?.[0]??nt?.[0]?.id??Oe?.[0]?.id??"";O(we);const re=nt?.find(Se=>Se.id===we)??Oe?.find(Se=>Se.id===we);re?.color&&de.colorField.actions.changeValue(re.color)}Ue.handleOpen()}function ja(){Dt("event")}function wa(){de.date.action.setError(!1),fe.date.action.setError(!1),M("edit")}function f(b){const{startAt:L,endAt:R}=kt(b),Q={...b,kind:"event",startAt:L,endAt:R,details:b?.details??""};w("event"),I(Q),D(null);const Y=Q.calendarId||nt?.[0]?.id||Oe?.[0]?.id||"";O(Y),M("view"),de.date.action.setError(!1),fe.date.action.setError(!1),Ue.handleOpen()}async function $(b){if(!v)return;let L;if(b)L={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(Y=>({id:Ot(),timeValue:Y.value,timePeriod:Y.type,sendToContact:Y.sendToContact||!1})),eventTypeId:"",repeatId:""};else{const Y=de.create();if(!Y.title){j({open:!0,message:g("global.nameRequired"),severity:"error"});return}L={...Y,startAt:new Date(Y.startAt),endAt:new Date(Y.endAt),contactId:Y.contactId||m||null,eventTypeId:"",repeatId:"",notifications:Y.notifications.map(me=>({...me,id:me.id||Ot()}))}}const R=U;if(!R){j({open:!0,message:g("global.errorSavingChanges"),severity:"error"});return}const Q={...L,calendarId:R};pe(!0);try{j({open:!0,message:g("global.savingChanges"),severity:"info"});const Y=await ud(v,Q);Re.includes(R)||dt(me=>[...me,R]),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("created","event",Y),de.resetFields(),qe(),setTimeout(()=>{gt()},500)}catch(Y){console.error("Error creando evento:",Y);const me=Y?.response?.data?.message||Y?.message||g("global.errorSavingChanges");j({open:!0,message:me,severity:"error"})}finally{pe(!1)}}async function z(){if(!T?.id)return;const b=de.create(),L=U||T.calendarId||"";if(!L){j({open:!0,message:g("global.errorSavingChanges"),severity:"error"});return}T.originalOccurrenceDate!=null?(Ae(()=>async R=>{await ee(b,L,R)}),he(!0)):await ee(b,L,!1)}async function ee(b,L,R){const Q=T?.originalOccurrenceDate!=null,Y={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:L,notifications:b.notifications,contactId:b.contactId??null};(R||!Q)&&(Y.rule=b.rule);const me=qt(T),we={updatedActivity:Y,activityId:me};Q&&!R&&(we.originalOccurrenceDate=T.originalOccurrenceDate),Ke(!0);try{const re=await Hn(v,we);if(re){const Se={...re,relatedContact:re.relatedContact??T.relatedContact};I(Se),re.calendarId&&O(re.calendarId),ft.setEvents(ta=>ta.map(ct=>ct.id===T?.id?{...ct,...re,relatedContact:re.relatedContact??ct.relatedContact,start:new Date(re.startAt),end:new Date(re.endAt||re.startAt),originalOccurrenceDate:re.originalOccurrenceDate?typeof re.originalOccurrenceDate=="string"?re.originalOccurrenceDate:re.originalOccurrenceDate.toISOString():ct.originalOccurrenceDate}:ct))}j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("updated","event",re),qe(),setTimeout(()=>{gt()},500)}catch(re){console.error("Error actualizando evento:",re);const Se=re?.response?.data?.message||re?.message||g("global.errorSavingChanges");j({open:!0,message:Se,severity:"error"})}finally{Ke(!1)}}async function ce(b){he(!1),te&&(await te(b),Ae(null))}async function ge(){T?.originalOccurrenceDate!=null?ie(!0):(G("event"),E(!0))}async function le(){if(v)if(E(!1),W==="event")try{const b=qt(T);qe(),await za(v,b),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("deleted","event",{id:b}),setTimeout(()=>{gt()},500)}catch(b){console.error("Error deleting event:",b);const L=b?.message?.includes("duplicate key")?g("global.eventAlreadyDeleted","El evento ya fue eliminado"):g("global.errorSavingChanges");j({open:!0,message:L,severity:"error"})}else{if(!k?.id)return;try{const b=Gt(k.id),L=k.calendarId;qe(),await md(v,b),D(null),fe.resetFields(),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("deleted","task",{id:b}),L&&setTimeout(()=>{rt(L)},500)}catch(b){console.error("Error deleting task:",b);const L=b?.message?.includes("duplicate key")?g("global.taskAlreadyDeleted","La tarea ya fue eliminada"):g("global.errorSavingChanges");j({open:!0,message:L,severity:"error"})}}}async function oe(b){ie(!1);const L=qt(T);qe();try{b?await za(v,L):await za(v,L,T.originalOccurrenceDate),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("deleted","event",{id:L}),setTimeout(()=>{gt()},500)}catch(R){console.error("Error deleting recurring event:",R);const Q=R?.message?.includes("duplicate key")?g("global.eventAlreadyDeleted","El evento ya fue eliminado"):g("global.errorSavingChanges");j({open:!0,message:Q,severity:"error"})}}async function Fe(){if(!v)return;const b=qt(T);await pd(v,b),qe()}async function be(b,L,R){const Q=L instanceof Date?L:new Date(L),Y=R instanceof Date?R:new Date(R),me=Q.toISOString(),we=Y.toISOString(),re=b.kind==="task";!re&&b.originalOccurrenceDate!=null?(I(b),Ae(()=>async Se=>{await ve(b,me,we,Q,Y,re,Se)}),he(!0)):await ve(b,me,we,Q,Y,re,!1)}async function ve(b,L,R,Q,Y,me,we){me||ft.setEvents(re=>re.map(Se=>Se.id===b.id?{...Se,start:Q,end:Y,startAt:Q,endAt:Y}:Se)),j({open:!0,message:g("global.savingChanges"),severity:"info"});try{if(me){const re=Gt(b.id),Se={title:b.title,description:b.description,startAt:L,endAt:R,calendarId:b.calendarId,allDay:b.allDay||!1,isCompleted:b.isCompleted||!1};await Gn(v,re,Se),await rt(b.calendarId)}else{const re=qt(b),Se=b.originalOccurrenceDate!=null,ta={title:b.title,details:b.details,startAt:new Date(L),endAt:new Date(R),allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:b.calendarId};(we||!Se)&&(ta.rule=b.rule);const ct={updatedActivity:ta,activityId:re};Se&&!we&&(ct.originalOccurrenceDate=b.originalOccurrenceDate),await Hn(v,ct)}j({open:!0,message:g("global.changesSaved"),severity:"success"}),setTimeout(()=>{gt()},500)}catch{me||ft.setEvents(re=>re.map(Se=>Se.id===b.id?{...Se,start:b.start,end:b.end}:Se)),j({open:!0,message:g("global.errorSavingChanges"),severity:"error"})}}function Ve(b,L){Dt("event",b,L)}function st(){Ee.nameField.actions.resetValue(),Ee.handleColorChange("#ffffff"),Ee.shareWithUsers.action.resetField(),Ee.handleGoogleCalendarChange(null)}function Qe(){st(),V(null),Z("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 At(){Z("create"),V(null),st(),Xe.handleOpen()}function Ta(b){Z("edit"),V(b),Ne(b),Xe.handleOpen()}async function Ia(){if(!v)return;const b=(Ee.nameField.attributes.value??"").trim();if(!b){j({open:!0,message:g("global.nameRequired"),severity:"error"});return}const L=Ee.shareWithUsers.field.userIds,R={title:b,color:Ee.color,sharedWith:L.length?L:void 0,googleCalendar:Ee.googleCalendar};try{if(Xt)await xd(v,R);else{const Q=ne?.id;if(!Q)return;await bd(v,Q,R)}Qe(),j({open:!0,message:g(Xt?"global.calendarCreatedSuccess":"global.calendarUpdatedSuccess"),severity:"success"}),vt()}catch{j({open:!0,message:g("global.errorSavingChanges"),severity:"error"})}}async function Cr(b){if(!v)return;let L;if(b?L={title:b.title,description:b.description||"",startAt:b.startAt,contactId:b.relatedContactId||null}:L=fe.create(),!L.title){j({open:!0,message:g("global.nameRequired"),severity:"error"});return}const R=F;if(!R){j({open:!0,message:g("global.errorSavingChanges"),severity:"error"});return}const Q={...L,calendarId:R,contactId:L.contactId||m||null};Pe(!0);try{j({open:!0,message:g("global.savingChanges"),severity:"info"});const Y=await gd(v,Q);Re.includes(R)||dt(me=>[...me,R]),j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("created","task",Y),fe.resetFields(),qe(),setTimeout(()=>{rt(R)},500)}catch(Y){console.error("Error creando tarea:",Y);const me=Y?.response?.data?.message||Y?.message||g("global.errorSavingChanges");j({open:!0,message:me,severity:"error"})}finally{Pe(!1)}}function Sr(){Dt("task")}async function jr(){if(!v||!k?.id)return;const b=fe.create();if(!b.title){j({open:!0,message:g("global.nameRequired"),severity:"error"});return}const L=F||k.calendarId;if(!L){j({open:!0,message:g("global.errorSavingChanges"),severity:"error"});return}const R={title:b.title,description:b.description,startAt:b.startAt,endAt:b.endAt,calendarId:L,contactId:b.contactId??null};Ge(!0);try{const Q=Gt(k.id),Y=await Gn(v,Q,R);if(Y){const me={...Y,relatedContact:Y.relatedContact??k.relatedContact};D(me),Y.calendarId&&N(Y.calendarId),It.setTasks(we=>we.map(re=>re.id===k?.id?{...re,...Y,relatedContact:Y.relatedContact??re.relatedContact,start:Y.startAt?new Date(Y.startAt):re.start,end:Y.startAt?new Date(Y.startAt):re.end}:re))}j({open:!0,message:g("global.changesSaved"),severity:"success"}),at("updated","task",Y),qe(),setTimeout(()=>{const me=k.calendarId,we=Y?.calendarId||L;rt(we),me&&me!==we&&rt(me)},500)}catch(Q){console.error("Error actualizando tarea:",Q);const Y=Q?.response?.data?.message||Q?.message||g("global.errorSavingChanges");j({open:!0,message:Y,severity:"error"})}finally{Ge(!1)}}async function wr(){k?.id&&(G("task"),E(!0))}async function Tr(){if(!v||!k?.id)return;const b=!k.isCompleted;try{const L=Gt(k.id),R=k.calendarId,Q=await hd(v,L,b);Q&&D(Q),j({open:!0,message:g("global.changesSaved"),severity:"success"}),R&&setTimeout(()=>{rt(R)},500)}catch{j({open:!0,message:g("global.errorSavingChanges"),severity:"error"})}}function Ir(){const b=S==="event",L=b?T:k;if(!L)return;const R={...L};b?(I(null),M("create"),B(!0),setTimeout(()=>{de.titleField.actions.changeValue(R.title??""),de.descriptionField.actions.changeValue(R.details??R.description??""),de.locationField.actions.changeValue(R.location??""),de.colorField.actions.changeValue(R.color??""),de.setAllDay(R.allDay??!1),de.setIsPrivate(R.isPrivate??!1),de.setRecurrenceRule(R.rule??""),de.date.action.setSelectedStartDate(K(R.startAt)),de.date.action.setSelectedEndDate(K(R.endAt)),de.date.action.setError(!1),de.notifications.action.resetNotifications(),R.relatedContact?.id&&de.linkContact.action.handleSelectContact(R.relatedContact),O(R.calendarId??U)},50)):(D(null),M("create"),setTimeout(()=>{fe.titleField.actions.changeValue(R.title??""),fe.descriptionField.actions.changeValue(R.description??""),fe.date.action.setSelectedStartDate(K(R.startAt)),fe.date.action.setSelectedEndDate(K(R.startAt)),fe.date.action.setError(!1),R.relatedContact?.id&&fe.linkContact.action.handleSelectContact(R.relatedContact),N(R.calendarId??F)},50))}function kr(b){const{startAt:L,endAt:R}=kt(b),Q={...b,kind:"task",startAt:L,endAt:R,description:b?.description??""};w("task"),D(Q),N(Q.calendarId??""),O(Q.calendarId??""),I(null),M("view"),de.date.action.setError(!1),fe.date.action.setError(!1),Ue.handleOpen()}function Er(b){return b?.kind==="task"?kr(b):f(b)}l.useEffect(()=>{try{Re&&localStorage.setItem(tt,JSON.stringify(Re))}catch{}},[Re]),l.useEffect(()=>{Oe?.length&&dt(b=>{const L=new Set(Oe.map(Q=>Q.id)),R=(b??[]).filter(Q=>L.has(Q));return R.length?R:Oe.map(Q=>Q.id)})},[Oe]),l.useEffect(()=>{try{localStorage.setItem(ue,et)}catch{}},[et]);const Dr={eventDialog:{...Ue,handleClose:qe},dialogMode:P,createCalendarDialog:Xe,event:de,calendar:Ee,events:ft,handleCreateEvent:$,handleSelectEvent:Er,handleOpenEventCreate:ja,handleStartEditingEvent:wa,handleSaveUpdatedEvent:z,handleEndEvent:Fe,handleDeleteEvent:ge,handleResizeEvent:be,selectedEvent:T,savingSnackbar:_,handleCloseSnackbar:ea,dialogType:S,setDialogType:w,handleOpenTaskCreate:Sr,handleOpenCreateFromSlot:Ve,handleCloseCreateCalendarDialog:Qe,calendarDialogMode:J,editingCalendar:ne,handleOpenCreateCalendarDialog:At,handleOpenEditCalendarDialog:Ta,handleSubmitCalendar:Ia,tasks:It,activeCalendarIds:Re,setActiveCalendarIds:dt,handleCreateTask:Cr,task:fe,selectedTask:k,taskCalendarId:F,setTaskCalendarId:N,eventCalendarId:U,setEventCalendarId:O,userManuallyChangedColor:H,setUserManuallyChangedColor:B,myCalendars:nt,otherCalendars:Sa,isLoadingCalendars:ba,isCreatingEvent:q,isUpdatingEvent:xe,isCreatingTask:X,isUpdatingTask:We,handleSaveUpdatedTask:jr,handleDeleteTask:wr,handleToggleTaskCompleted:Tr,handleDuplicateItem:Ir,calendarView:et,setCalendarView:bt,calendarDate:ya,setCalendarDate:Kt,navigateToDate:Jt,confirmDeleteDialog:{open:A,handleClose:()=>E(!1),itemType:W},handleConfirmDelete:le,deleteRecurringDialog:{open:se,handleClose:()=>ie(!1)},handleConfirmDeleteRecurring:oe,editRecurringDialog:{open:je,handleClose:()=>{he(!1),Ae(null)}},handleConfirmEditRecurring:ce,hiddenTabs:p};return t.jsx(sd,{t:g,children:t.jsx(Oa.Provider,{value:Dr,children:e})})},fa=s.styled(s.Box)(()=>({display:"flex",flexDirection:"column",gap:.5})),_a=s.styled(s.Box)(()=>({display:"flex",alignItems:"baseline",gap:1})),Wa=s.styled(s.Typography)(()=>({marginX:"8px",marginTop:"-15px",color:"text.primary"})),wt="DD/MM/YYYY",ga="HH:mm",jd=({selectedStartDate:e,selectedEndDate:a,handleSelectStart:n,handleSelectEnd:r,isError:o,disabled:i,hideLabel:d=!1,allDay:c=!1})=>{const u=Me(),p=l.useMemo(()=>a.diff(e,"minute"),[e,a]),m=l.useMemo(()=>{if(p===0)return"0 min";const g=Math.floor(p/60),S=p%60;return g===0?`${S} min`:S===0?`${g} h`:`${g}.${Math.round(S/60*10)} h`},[p]),y=g=>{if(!g)return;const S=g.hour(e.hour()).minute(e.minute()).second(0).millisecond(0),w=g.hour(a.hour()).minute(a.minute()).second(0).millisecond(0);n(S),r(w)},x=g=>{if(!g)return;const S=g.hour(0).minute(0).second(0).millisecond(0);n(S)},h=g=>{if(!g)return;const S=g.hour(23).minute(59).second(59).millisecond(999);r(S)},C=g=>{if(!g)return;const S=e.hour(g.hour()).minute(g.minute()).second(0).millisecond(0),w=S.add(p,"minute");n(S),r(w)},v=g=>{if(!g)return;let S=e.hour(g.hour()).minute(g.minute()).second(0).millisecond(0);(S.isBefore(e)||S.isSame(e))&&(S=S.add(1,"day")),r(S)};return i?t.jsxs(fa,{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(wt)}),t.jsx(s.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(s.Typography,{variant:"body1",children:a.format(wt)})]}):t.jsxs(s.Box,{children:[t.jsx(s.Typography,{variant:"body1",sx:{mb:1},children:e.format(wt)}),t.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(s.Typography,{variant:"body1",children:e.format(ga)}),t.jsx(s.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(s.Typography,{variant:"body1",children:a.format(ga)}),p>0&&t.jsxs(s.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1},children:["(",m,")"]})]})]})]}):t.jsxs(fa,{children:[!d&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),t.jsx(Je.LocalizationProvider,{dateAdapter:Ja.AdapterDayjs,children:c?t.jsxs(_a,{children:[t.jsx(Je.DatePicker,{disabled:i,format:wt,label:u("global.from"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.palette.background.panel}}}},value:e,onChange:x,minDate:K(),sx:{flex:1}}),t.jsx(Wa,{variant:"body1",children:"\u2013"}),t.jsx(Je.DatePicker,{disabled:i,format:wt,label:u("global.to"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.palette.background.panel}}}},value:a,onChange:h,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:wt,slotProps:{textField:()=>({size:"small",fullWidth:!0}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.palette.background.panel}}}},value:e,onChange:y,minDate:K()})}),t.jsxs(_a,{children:[t.jsx(Je.TimePicker,{disabled:i,format:ga,ampm:!1,slotProps:{textField:()=>({label:u("global.from"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.palette.background.panel}}}},value:e,onChange:C,sx:{alignSelf:"baseline",flex:1}}),t.jsx(Wa,{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:ga,ampm:!1,slotProps:{textField:()=>({label:u("global.to"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:g=>g.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]}),Va=({titleField:e,disabled:a,variantMode:n="default"})=>{const r=Me(),{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:"outlined",size:"small",type:i})})},wd=s.styled(s.Box)(()=>({marginBottom:"6px",padding:"8px 16px",border:"1px solid lightgray",borderRadius:"3px"})),Td=s.styled(s.Box)(()=>({marginBottom:"6px",padding:"4px 0px"})),qn=s.styled(s.Box)(()=>({display:"flex",gap:"8px",alignItems:"center",userSelect:"none"})),Id=s.styled(s.TextField)(()=>({width:"13%"})),kd=s.styled(s.Select)(()=>({width:"23%"})),Ed=s.styled(s.Box)(()=>({display:"flex",gap:1,width:"100%",alignItems:"center"})),Dd=s.styled(s.IconButton)(()=>({ml:"auto",color:"error"})),Yn=[{title:"minute",value:na.EventNotificationPeriod.MINUTE},{title:"hour",value:na.EventNotificationPeriod.HOUR},{title:"day",value:na.EventNotificationPeriod.DAY}],Ad=({data:e,timeValueHandler:a,timePeriodHandler:n,sendToContactHandler:r,deleteHandler:o,disabled:i=!1})=>{const d=Me(),c=e.timeValue??0;return i?t.jsxs(Td,{children:[t.jsx(qn,{children:t.jsxs(s.Typography,{variant:"body1",sx:{color:"text.secondary"},children:[d("calendarView.reminders.sendReminder.pt1")," ",c," ",d(`calendarView.reminders.timePeriod.${Yn.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(wd,{children:[t.jsxs(qn,{children:[t.jsx(s.Typography,{variant:"body2",sx:{userSelect:"none"},children:d("calendarView.reminders.sendReminder.pt1")}),t.jsx(Id,{disabled:i,onChange:u=>a(u,e.id),value:c,type:"text",variant:"outlined",size:"small"}),t.jsx(kd,{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:Yn.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(Ed,{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(Dd,{disabled:i,onClick:()=>o(e.id),sx:{ml:"auto"},children:t.jsx(aa,{})})]})]})},Fd=s.styled(s.Box)`
|
|
17
17
|
display: 'flex',
|
|
18
18
|
flexDirection: 'column',
|
|
19
19
|
gap: 1,
|