@homefile/components-v2 1.5.0 → 1.6.1
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/assets/images/alerts/index.d.ts +2 -0
- package/dist/assets/images/alerts/index.js +2 -0
- package/dist/assets/images/alerts/index.ts +3 -0
- package/dist/assets/images/alerts/smoke-detector-expired.jpg +0 -0
- package/dist/assets/images/battery.svg +9 -0
- package/dist/assets/images/index.d.ts +4 -1
- package/dist/assets/images/index.js +4 -1
- package/dist/assets/images/index.ts +5 -0
- package/dist/assets/images/wind-white.svg +7 -0
- package/dist/assets/locales/en/index.json +69 -1
- package/dist/components/animations/HomieAnimation.d.ts +1 -0
- package/dist/components/animations/HomieAnimation.js +11 -0
- package/dist/components/animations/index.d.ts +1 -0
- package/dist/components/animations/index.js +1 -0
- package/dist/components/badge/CustomBadge.d.ts +5 -0
- package/dist/components/badge/CustomBadge.js +5 -0
- package/dist/components/badge/index.d.ts +5 -4
- package/dist/components/badge/index.js +5 -4
- package/dist/components/contacts/ContactCard.d.ts +1 -1
- package/dist/components/contacts/ContactCard.js +5 -5
- package/dist/components/contacts/ContactCardHeader.d.ts +1 -1
- package/dist/components/contacts/ContactCardHeader.js +4 -4
- package/dist/components/contacts/ContactCardInfo.d.ts +1 -1
- package/dist/components/contacts/ContactCardInfo.js +2 -2
- package/dist/components/contacts/ContactHeaderMenu.js +3 -3
- package/dist/components/contacts/ContactsContent.d.ts +1 -1
- package/dist/components/contacts/ContactsContent.js +31 -6
- package/dist/components/contacts/LetterDivider.d.ts +3 -0
- package/dist/components/contacts/LetterDivider.js +5 -0
- package/dist/components/contacts/ShareContactSection.d.ts +2 -0
- package/dist/components/contacts/ShareContactSection.js +26 -0
- package/dist/components/contacts/index.d.ts +3 -1
- package/dist/components/contacts/index.js +3 -1
- package/dist/components/contacts/shareContactForms/AddReceiverButton.d.ts +2 -0
- package/dist/components/contacts/shareContactForms/AddReceiverButton.js +7 -0
- package/dist/components/contacts/shareContactForms/SendToList.d.ts +2 -0
- package/dist/components/contacts/shareContactForms/SendToList.js +11 -0
- package/dist/components/contacts/shareContactForms/ShareContactByEmail.d.ts +2 -2
- package/dist/components/contacts/shareContactForms/ShareContactByEmail.js +7 -17
- package/dist/components/contacts/shareContactForms/ShareContactByHomefile.d.ts +2 -0
- package/dist/components/contacts/shareContactForms/ShareContactByHomefile.js +17 -0
- package/dist/components/contacts/shareContactForms/ShareContactBySMS.d.ts +2 -0
- package/dist/components/contacts/shareContactForms/ShareContactBySMS.js +11 -0
- package/dist/components/contacts/shareContactForms/index.d.ts +4 -0
- package/dist/components/contacts/shareContactForms/index.js +4 -0
- package/dist/components/contacts/sharePanel/SelectedContacts.d.ts +2 -0
- package/dist/components/contacts/sharePanel/SelectedContacts.js +8 -0
- package/dist/components/contacts/sharePanel/ShareContactsContent.d.ts +2 -0
- package/dist/components/contacts/sharePanel/ShareContactsContent.js +28 -0
- package/dist/components/contacts/sharePanel/index.d.ts +2 -0
- package/dist/components/contacts/sharePanel/index.js +2 -0
- package/dist/components/homeAssistant/HomeAssistant.js +2 -1
- package/dist/components/homeAssistant/HomeAssistantWrapper.d.ts +2 -1
- package/dist/components/homeAssistant/HomeAssistantWrapper.js +2 -3
- package/dist/components/homeAssistant/HomeMonitor.d.ts +2 -0
- package/dist/components/homeAssistant/HomeMonitor.js +6 -0
- package/dist/components/homeAssistant/HomeMonitorButton.d.ts +2 -0
- package/dist/components/homeAssistant/HomeMonitorButton.js +31 -0
- package/dist/components/homeAssistant/HomeMonitorSteps.d.ts +2 -0
- package/dist/components/homeAssistant/HomeMonitorSteps.js +11 -0
- package/dist/components/homeAssistant/index.d.ts +4 -0
- package/dist/components/homeAssistant/index.js +4 -0
- package/dist/components/homeAssistant/monitorAlerts/AlertHeader.d.ts +1 -0
- package/dist/components/homeAssistant/monitorAlerts/AlertHeader.js +7 -0
- package/dist/components/homeAssistant/monitorAlerts/AlertTemplate.d.ts +2 -0
- package/dist/components/homeAssistant/monitorAlerts/AlertTemplate.js +5 -0
- package/dist/components/homeAssistant/monitorAlerts/AlertTitle.d.ts +2 -0
- package/dist/components/homeAssistant/monitorAlerts/AlertTitle.js +5 -0
- package/dist/components/homeAssistant/monitorAlerts/BaseAlertCard.d.ts +3 -0
- package/dist/components/homeAssistant/monitorAlerts/BaseAlertCard.js +21 -0
- package/dist/components/homeAssistant/monitorAlerts/HomefileMonitoring.d.ts +1 -0
- package/dist/components/homeAssistant/monitorAlerts/HomefileMonitoring.js +7 -0
- package/dist/components/homeAssistant/monitorAlerts/MonitorAlerts.d.ts +2 -0
- package/dist/components/homeAssistant/monitorAlerts/MonitorAlerts.js +32 -0
- package/dist/components/homeAssistant/monitorAlerts/Notifications.d.ts +4 -0
- package/dist/components/homeAssistant/monitorAlerts/Notifications.js +9 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/ChangeAirFilter.d.ts +1 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/ChangeAirFilter.js +11 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/CustomDivider.d.ts +1 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/CustomDivider.js +5 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/SmokeDetectorBattery.d.ts +1 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/SmokeDetectorBattery.js +11 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/SmokeDetectorExpired.d.ts +1 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/SmokeDetectorExpired.js +11 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/index.d.ts +4 -0
- package/dist/components/homeAssistant/monitorAlerts/alertDetails/index.js +4 -0
- package/dist/components/homeAssistant/monitorAlerts/index.d.ts +8 -0
- package/dist/components/homeAssistant/monitorAlerts/index.js +8 -0
- package/dist/components/homeAssistant/panel/HomeAssistantPanel.js +1 -1
- package/dist/components/homeBoard/HomeBoard.js +1 -1
- package/dist/components/inputs/TextInput.d.ts +1 -1
- package/dist/components/inputs/TextInput.js +2 -2
- package/dist/components/partner/PartnerFooter.d.ts +1 -1
- package/dist/components/partner/PartnerFooter.js +2 -2
- package/dist/components/partner/ShortPartnerTile.d.ts +1 -1
- package/dist/components/partner/ShortPartnerTile.js +2 -2
- package/dist/helpers/homeAssistant/HomeAssistant.helper.js +4 -4
- package/dist/hooks/contacts/index.d.ts +3 -0
- package/dist/hooks/contacts/index.js +3 -0
- package/dist/hooks/contacts/useContactsContent.d.ts +2 -1
- package/dist/hooks/contacts/useContactsContent.js +28 -2
- package/dist/hooks/contacts/useShareContactBy.d.ts +15 -0
- package/dist/hooks/contacts/useShareContactBy.js +33 -0
- package/dist/hooks/contacts/useShareContactByHomefile.d.ts +16 -0
- package/dist/hooks/contacts/useShareContactByHomefile.js +25 -0
- package/dist/hooks/contacts/useShareContactsContent.d.ts +8 -0
- package/dist/hooks/contacts/useShareContactsContent.js +26 -0
- package/dist/hooks/useAssignableList.d.ts +2 -0
- package/dist/hooks/useAssignableList.js +10 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/interfaces/contacts/ContactCard.interface.d.ts +4 -3
- package/dist/interfaces/contacts/ContactCardHeader.interface.d.ts +3 -3
- package/dist/interfaces/contacts/ContactCardInfo.interface.d.ts +1 -0
- package/dist/interfaces/contacts/ContactsContent.interface.d.ts +12 -2
- package/dist/interfaces/contacts/SelectedContacts.interface.d.ts +5 -0
- package/dist/interfaces/contacts/ShareContactBy.interface.d.ts +21 -0
- package/dist/interfaces/contacts/ShareContactSection.interface.d.ts +4 -0
- package/dist/interfaces/contacts/ShareContactSection.interface.js +1 -0
- package/dist/interfaces/contacts/ShareContactsContent.interface.d.ts +17 -0
- package/dist/interfaces/contacts/ShareContactsContent.interface.js +1 -0
- package/dist/interfaces/contacts/ViewContactPanel.interface.d.ts +2 -2
- package/dist/interfaces/contacts/index.d.ts +4 -2
- package/dist/interfaces/contacts/index.js +4 -2
- package/dist/interfaces/homeAssistant/BaseAlertCard.interface.d.ts +8 -0
- package/dist/interfaces/homeAssistant/BaseAlertCard.interface.js +1 -0
- package/dist/interfaces/homeAssistant/HomeMonitorSteps.interface.d.ts +13 -0
- package/dist/interfaces/homeAssistant/HomeMonitorSteps.interface.js +1 -0
- package/dist/interfaces/homeAssistant/MonitorAlerts.interface.d.ts +4 -0
- package/dist/interfaces/homeAssistant/MonitorAlerts.interface.js +1 -0
- package/dist/interfaces/homeAssistant/index.d.ts +3 -0
- package/dist/interfaces/homeAssistant/index.js +3 -0
- package/dist/interfaces/partner/PartnerFooter.interface.d.ts +1 -0
- package/dist/mocks/contacts/contacts.mock.d.ts +1 -0
- package/dist/mocks/contacts/contacts.mock.js +86 -2
- package/dist/stories/animations/HomieAnimation.stories.d.ts +4 -0
- package/dist/stories/animations/HomieAnimation.stories.js +11 -0
- package/dist/stories/assets/Illustrations.stories.js +2 -2
- package/dist/stories/contacts/ContactsContent.stories.d.ts +1 -10
- package/dist/stories/contacts/ContactsContent.stories.js +40 -13
- package/dist/stories/homeAssistant/HomeMonitor.stories.d.ts +4 -0
- package/dist/stories/homeAssistant/HomeMonitor.stories.js +18 -0
- package/dist/stories/homeAssistant/monitorAlerts/HomeAssistant.stories.d.ts +5 -0
- package/dist/stories/homeAssistant/monitorAlerts/HomeAssistant.stories.js +22 -0
- package/dist/theme/colors.d.ts +4 -0
- package/dist/theme/colors.js +4 -0
- package/package.json +2 -1
- package/src/assets/images/alerts/index.ts +3 -0
- package/src/assets/images/alerts/smoke-detector-expired.jpg +0 -0
- package/src/assets/images/battery.svg +9 -0
- package/src/assets/images/index.ts +5 -0
- package/src/assets/images/wind-white.svg +7 -0
- package/src/assets/locales/en/index.json +69 -1
- package/src/components/animations/HomieAnimation.tsx +12 -0
- package/src/components/animations/index.ts +1 -0
- package/src/components/badge/CustomBadge.tsx +22 -0
- package/src/components/badge/index.ts +5 -4
- package/src/components/contacts/ContactCard.tsx +10 -11
- package/src/components/contacts/ContactCardHeader.tsx +12 -4
- package/src/components/contacts/ContactCardInfo.tsx +11 -8
- package/src/components/contacts/ContactHeaderMenu.tsx +3 -15
- package/src/components/contacts/ContactsContent.tsx +143 -17
- package/src/components/contacts/LetterDivider.tsx +15 -0
- package/src/components/contacts/ShareContactSection.tsx +58 -0
- package/src/components/contacts/index.ts +3 -1
- package/src/components/contacts/shareContactForms/AddReceiverButton.tsx +20 -0
- package/src/components/contacts/shareContactForms/SendToList.tsx +47 -0
- package/src/components/contacts/shareContactForms/ShareContactByEmail.tsx +40 -41
- package/src/components/contacts/shareContactForms/ShareContactByHomefile.tsx +88 -0
- package/src/components/contacts/shareContactForms/ShareContactBySMS.tsx +49 -0
- package/src/components/contacts/shareContactForms/index.ts +4 -0
- package/src/components/contacts/sharePanel/SelectedContacts.tsx +37 -0
- package/src/components/contacts/sharePanel/ShareContactsContent.tsx +68 -0
- package/src/components/contacts/sharePanel/index.ts +2 -0
- package/src/components/homeAssistant/HomeAssistant.tsx +5 -1
- package/src/components/homeAssistant/HomeAssistantWrapper.tsx +3 -1
- package/src/components/homeAssistant/HomeMonitor.tsx +11 -0
- package/src/components/homeAssistant/HomeMonitorButton.tsx +96 -0
- package/src/components/homeAssistant/HomeMonitorSteps.tsx +31 -0
- package/src/components/homeAssistant/index.ts +4 -0
- package/src/components/homeAssistant/monitorAlerts/AlertHeader.tsx +30 -0
- package/src/components/homeAssistant/monitorAlerts/AlertTemplate.tsx +25 -0
- package/src/components/homeAssistant/monitorAlerts/AlertTitle.tsx +16 -0
- package/src/components/homeAssistant/monitorAlerts/BaseAlertCard.tsx +60 -0
- package/src/components/homeAssistant/monitorAlerts/HomefileMonitoring.tsx +16 -0
- package/src/components/homeAssistant/monitorAlerts/MonitorAlerts.tsx +47 -0
- package/src/components/homeAssistant/monitorAlerts/Notifications.tsx +32 -0
- package/src/components/homeAssistant/monitorAlerts/alertDetails/ChangeAirFilter.tsx +54 -0
- package/src/components/homeAssistant/monitorAlerts/alertDetails/CustomDivider.tsx +5 -0
- package/src/components/homeAssistant/monitorAlerts/alertDetails/SmokeDetectorBattery.tsx +54 -0
- package/src/components/homeAssistant/monitorAlerts/alertDetails/SmokeDetectorExpired.tsx +43 -0
- package/src/components/homeAssistant/monitorAlerts/alertDetails/index.ts +4 -0
- package/src/components/homeAssistant/monitorAlerts/index.ts +8 -0
- package/src/components/homeAssistant/panel/HomeAssistantPanel.tsx +1 -1
- package/src/components/homeBoard/HomeBoard.tsx +2 -1
- package/src/components/inputs/TextInput.tsx +2 -1
- package/src/components/partner/PartnerFooter.tsx +2 -2
- package/src/components/partner/ShortPartnerTile.tsx +2 -1
- package/src/helpers/homeAssistant/HomeAssistant.helper.tsx +4 -4
- package/src/hooks/contacts/index.ts +4 -1
- package/src/hooks/contacts/useContactsContent.ts +38 -4
- package/src/hooks/contacts/useShareContactBy.ts +45 -0
- package/src/hooks/contacts/useShareContactByHomefile.ts +46 -0
- package/src/hooks/contacts/useShareContactsContent.ts +38 -0
- package/src/hooks/useAssignableList.ts +11 -1
- package/src/index.ts +6 -0
- package/src/interfaces/contacts/ContactCard.interface.ts +4 -7
- package/src/interfaces/contacts/ContactCardHeader.interface.ts +3 -3
- package/src/interfaces/contacts/ContactCardInfo.interface.ts +1 -0
- package/src/interfaces/contacts/ContactsContent.interface.ts +13 -2
- package/src/interfaces/contacts/SelectedContacts.interface.ts +6 -0
- package/src/interfaces/contacts/ShareContactBy.interface.ts +25 -0
- package/src/interfaces/contacts/ShareContactSection.interface.ts +6 -0
- package/src/interfaces/contacts/ShareContactsContent.interface.ts +24 -0
- package/src/interfaces/contacts/ViewContactPanel.interface.ts +2 -2
- package/src/interfaces/contacts/index.ts +4 -2
- package/src/interfaces/homeAssistant/BaseAlertCard.interface.ts +8 -0
- package/src/interfaces/homeAssistant/HomeMonitorSteps.interface.ts +15 -0
- package/src/interfaces/homeAssistant/MonitorAlerts.interface.ts +8 -0
- package/src/interfaces/homeAssistant/index.ts +3 -0
- package/src/interfaces/partner/PartnerFooter.interface.ts +1 -0
- package/src/mocks/contacts/contacts.mock.ts +87 -2
- package/src/stories/animations/HomieAnimation.stories.tsx +17 -0
- package/src/stories/assets/Illustrations.stories.tsx +2 -0
- package/src/stories/contacts/ContactsContent.stories.tsx +73 -16
- package/src/stories/homeAssistant/HomeMonitor.stories.tsx +43 -0
- package/src/stories/homeAssistant/monitorAlerts/HomeAssistant.stories.tsx +30 -0
- package/src/theme/colors.ts +4 -0
- package/dist/components/contacts/ShareContactPopover.d.ts +0 -2
- package/dist/components/contacts/ShareContactPopover.js +0 -32
- package/dist/interfaces/contacts/ShareContactByEmail.interface.d.ts +0 -11
- package/dist/interfaces/contacts/ShareContactPopover.interface.d.ts +0 -8
- package/src/components/contacts/ShareContactPopover.tsx +0 -106
- package/src/interfaces/contacts/ShareContactByEmail.interface.ts +0 -12
- package/src/interfaces/contacts/ShareContactPopover.interface.ts +0 -9
- /package/dist/interfaces/contacts/{ShareContactByEmail.interface.js → SelectedContacts.interface.js} +0 -0
- /package/dist/interfaces/contacts/{ShareContactPopover.interface.js → ShareContactBy.interface.js} +0 -0
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { ChangeEvent } from 'react';
|
|
2
2
|
import { InfoContactCardI } from '../../interfaces';
|
|
3
3
|
export declare const useContactsContent: (contacts: InfoContactCardI[]) => {
|
|
4
|
-
|
|
4
|
+
contactsWithoutFirstOrLastName: InfoContactCardI[];
|
|
5
5
|
handleChange: (event: ChangeEvent<HTMLInputElement>) => void;
|
|
6
6
|
search: string;
|
|
7
|
+
splittedContacts: Record<string, InfoContactCardI[]>;
|
|
7
8
|
};
|
|
@@ -1,10 +1,36 @@
|
|
|
1
1
|
import { useState } from 'react';
|
|
2
2
|
export const useContactsContent = (contacts) => {
|
|
3
3
|
const [search, setSearch] = useState('');
|
|
4
|
-
const
|
|
4
|
+
const contactsWithFirstOrLastName = contacts.filter((contact) => contact.firstName || contact.lastName || contact.company);
|
|
5
|
+
const contactsWithoutFirstOrLastName = contacts.filter((contact) => !contact.firstName && !contact.lastName && !contact.company);
|
|
6
|
+
const sortedContacts = [...contactsWithFirstOrLastName].sort((a, b) => {
|
|
7
|
+
const fullNameA = `${a.firstName || a.company} ${a.lastName}`;
|
|
8
|
+
const fullNameB = `${b.firstName || b.company} ${b.lastName}`;
|
|
9
|
+
return fullNameA.localeCompare(fullNameB);
|
|
10
|
+
});
|
|
11
|
+
const filteredContacts = sortedContacts.filter((contact) => { var _a; return (_a = contact.firstName) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(search.toLowerCase()); });
|
|
12
|
+
const splittedContacts = splitContactsByFirstLetter(filteredContacts);
|
|
5
13
|
const handleChange = (event) => {
|
|
6
14
|
const value = event.target.value;
|
|
7
15
|
setSearch(value);
|
|
8
16
|
};
|
|
9
|
-
return {
|
|
17
|
+
return {
|
|
18
|
+
contactsWithoutFirstOrLastName,
|
|
19
|
+
handleChange,
|
|
20
|
+
search,
|
|
21
|
+
splittedContacts,
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
const splitContactsByFirstLetter = (contacts) => {
|
|
25
|
+
const contactsByFirstLetter = {};
|
|
26
|
+
contacts.forEach((contact) => {
|
|
27
|
+
var _a;
|
|
28
|
+
const name = `${contact.firstName || contact.company} ${contact.lastName}`;
|
|
29
|
+
const firstLetter = (_a = name[0]) === null || _a === void 0 ? void 0 : _a.toUpperCase();
|
|
30
|
+
if (!contactsByFirstLetter[firstLetter]) {
|
|
31
|
+
contactsByFirstLetter[firstLetter] = [];
|
|
32
|
+
}
|
|
33
|
+
contactsByFirstLetter[firstLetter].push(contact);
|
|
34
|
+
});
|
|
35
|
+
return contactsByFirstLetter;
|
|
10
36
|
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SendByTypes, ShareContactByI } from '../../interfaces';
|
|
2
|
+
interface UseShareContactByI {
|
|
3
|
+
onShare: ShareContactByI['onShare'];
|
|
4
|
+
sendBy: SendByTypes;
|
|
5
|
+
}
|
|
6
|
+
export declare const useShareContactBy: ({ onShare, sendBy }: UseShareContactByI) => {
|
|
7
|
+
sendTo: string[];
|
|
8
|
+
handleAdd: () => void;
|
|
9
|
+
handleChangeValue: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
10
|
+
handleDelete: (to: string) => void;
|
|
11
|
+
handleSetIsDirtyToTrue: () => void;
|
|
12
|
+
isDirty: boolean;
|
|
13
|
+
value: string;
|
|
14
|
+
};
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { useState } from 'react';
|
|
2
|
+
export const useShareContactBy = ({ onShare, sendBy }) => {
|
|
3
|
+
const [value, setValue] = useState('');
|
|
4
|
+
const [sendTo, setSendTo] = useState([]);
|
|
5
|
+
const [isDirty, setIsDirty] = useState(false);
|
|
6
|
+
const handleChangeValue = (e) => {
|
|
7
|
+
setValue(e.target.value);
|
|
8
|
+
};
|
|
9
|
+
const handleSetIsDirtyToTrue = () => setIsDirty(true);
|
|
10
|
+
const handleAdd = () => {
|
|
11
|
+
if (value && !sendTo.includes(value)) {
|
|
12
|
+
const newValues = [...sendTo, value];
|
|
13
|
+
setSendTo(newValues);
|
|
14
|
+
setValue('');
|
|
15
|
+
setIsDirty(false);
|
|
16
|
+
onShare(newValues, sendBy);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
const handleDelete = (to) => {
|
|
20
|
+
const newValues = sendTo.filter((e) => e !== to);
|
|
21
|
+
setSendTo(newValues);
|
|
22
|
+
onShare(newValues, sendBy);
|
|
23
|
+
};
|
|
24
|
+
return {
|
|
25
|
+
sendTo,
|
|
26
|
+
handleAdd,
|
|
27
|
+
handleChangeValue,
|
|
28
|
+
handleDelete,
|
|
29
|
+
handleSetIsDirtyToTrue,
|
|
30
|
+
isDirty,
|
|
31
|
+
value,
|
|
32
|
+
};
|
|
33
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { SendByTypes, ShareContactByHomefileI } from '../../interfaces';
|
|
2
|
+
interface UseShareContactByI {
|
|
3
|
+
onShare: ShareContactByHomefileI['onShare'];
|
|
4
|
+
sendBy: SendByTypes;
|
|
5
|
+
shareWithList: ShareContactByHomefileI['shareWithList'];
|
|
6
|
+
}
|
|
7
|
+
export declare const useShareContactByHomefile: ({ onShare, sendBy, shareWithList, }: UseShareContactByI) => {
|
|
8
|
+
handleChangeValue: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
9
|
+
handleSetIsDirtyToTrue: () => void;
|
|
10
|
+
handleToggleDropdown: () => void;
|
|
11
|
+
isDirty: boolean;
|
|
12
|
+
openDropdown: boolean;
|
|
13
|
+
sendTo: string[];
|
|
14
|
+
value: string;
|
|
15
|
+
};
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { useEffect, useState } from 'react';
|
|
2
|
+
export const useShareContactByHomefile = ({ onShare, sendBy, shareWithList, }) => {
|
|
3
|
+
const [value, setValue] = useState('');
|
|
4
|
+
const [sendTo, setSendTo] = useState(shareWithList);
|
|
5
|
+
const [isDirty, setIsDirty] = useState(false);
|
|
6
|
+
const [openDropdown, setOpenDropdown] = useState(false);
|
|
7
|
+
const handleSetIsDirtyToTrue = () => setIsDirty(true);
|
|
8
|
+
const handleChangeValue = (e) => {
|
|
9
|
+
setValue(e.target.value);
|
|
10
|
+
};
|
|
11
|
+
const handleToggleDropdown = () => setOpenDropdown(!openDropdown);
|
|
12
|
+
useEffect(() => {
|
|
13
|
+
setSendTo(shareWithList);
|
|
14
|
+
onShare(shareWithList, sendBy);
|
|
15
|
+
}, [shareWithList]);
|
|
16
|
+
return {
|
|
17
|
+
handleChangeValue,
|
|
18
|
+
handleSetIsDirtyToTrue,
|
|
19
|
+
handleToggleDropdown,
|
|
20
|
+
isDirty,
|
|
21
|
+
openDropdown,
|
|
22
|
+
sendTo,
|
|
23
|
+
value,
|
|
24
|
+
};
|
|
25
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SendByTypes, ShareContactsContentI } from '../../interfaces';
|
|
2
|
+
export declare const useShareContactsContent: ({ contacts, onShare, }: Pick<ShareContactsContentI, "contacts" | "onShare">) => {
|
|
3
|
+
contactsSelected: import("../../interfaces").InfoContactCardI[];
|
|
4
|
+
recipientsToSend: string[];
|
|
5
|
+
handleAddRecipient: (recipients: string[], sendBy: SendByTypes) => void;
|
|
6
|
+
handleDeleteSelectedContact: (id: string) => void;
|
|
7
|
+
handleShareContacts: () => void;
|
|
8
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { useState } from 'react';
|
|
2
|
+
export const useShareContactsContent = ({ contacts, onShare, }) => {
|
|
3
|
+
const [contactsSelected, setContactsSelected] = useState(contacts);
|
|
4
|
+
const [recipientsToSend, setRecipientsToSend] = useState([]);
|
|
5
|
+
const [sendBy, setSendBy] = useState('email');
|
|
6
|
+
const handleAddRecipient = (recipients, sendBy) => {
|
|
7
|
+
setSendBy(sendBy);
|
|
8
|
+
setRecipientsToSend(recipients);
|
|
9
|
+
};
|
|
10
|
+
const handleDeleteSelectedContact = (id) => {
|
|
11
|
+
setContactsSelected((prevContacts) => prevContacts.filter((contact) => contact._id !== id));
|
|
12
|
+
};
|
|
13
|
+
const handleShareContacts = () => {
|
|
14
|
+
onShare({
|
|
15
|
+
contacts: contactsSelected,
|
|
16
|
+
shareBy: { [sendBy]: recipientsToSend },
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
return {
|
|
20
|
+
contactsSelected,
|
|
21
|
+
recipientsToSend,
|
|
22
|
+
handleAddRecipient,
|
|
23
|
+
handleDeleteSelectedContact,
|
|
24
|
+
handleShareContacts,
|
|
25
|
+
};
|
|
26
|
+
};
|
|
@@ -6,8 +6,10 @@ interface UseAssignableListI<ItemType> {
|
|
|
6
6
|
onItemSelectedChange: (_ids: string[]) => void;
|
|
7
7
|
}
|
|
8
8
|
export declare const useAssignableList: <ItemType>({ items, onItemSelectedChange, }: UseAssignableListI<ItemType>) => {
|
|
9
|
+
getContactByIds: (ids: string[]) => ItemI<ItemType>[];
|
|
9
10
|
handleItemSelect: (_id: string) => void;
|
|
10
11
|
handleSelectAll: () => void;
|
|
11
12
|
isItemSelected: (_id: string) => boolean;
|
|
13
|
+
itemsSelected: string[];
|
|
12
14
|
};
|
|
13
15
|
export {};
|
|
@@ -14,8 +14,17 @@ export const useAssignableList = ({ items, onItemSelectedChange, }) => {
|
|
|
14
14
|
const newItemsSelected = itemsSelected.length === items.length ? [] : items.map(({ _id }) => _id);
|
|
15
15
|
setItemsSelected(newItemsSelected);
|
|
16
16
|
};
|
|
17
|
+
const getContactByIds = (ids) => {
|
|
18
|
+
return items.filter(({ _id }) => ids.includes(_id));
|
|
19
|
+
};
|
|
17
20
|
useEffect(() => {
|
|
18
21
|
onItemSelectedChange(itemsSelected);
|
|
19
22
|
}, [itemsSelected]);
|
|
20
|
-
return {
|
|
23
|
+
return {
|
|
24
|
+
getContactByIds,
|
|
25
|
+
handleItemSelect,
|
|
26
|
+
handleSelectAll,
|
|
27
|
+
isItemSelected,
|
|
28
|
+
itemsSelected,
|
|
29
|
+
};
|
|
21
30
|
};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, DisplayFiles, DisplayFilesDetail, DisplayOptions, DisplayReceipts, DocumentMenu, DocumentNameHeader, DocumentPreview, DynamicForm, EditAccountType, EditHomeBody, EditHomeFooter, EditHomeHeader, EditHomePanel, EmailPermissions, EmailValidation, Feedback, FileDetail, FilesUploader, FlowStep, FolderDetail, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, FolderSharing, FolderTypeSelection, FooterButtons, FooterDrawer, GenericBackHeader, GroupCard, GroupsContainer, GroupsHeader, Header, HelpContent, HomeAssistant, HomeAssistantPanel, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeHeader, HomeSharedWith, InboxTile, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadTour, LeftPanel, MediaDetailsStep, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileContent, MyProfileFooter, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentReceipts, PdfButton, PeopleConnected, ProfileDetailsTab, ProfilePaymentTab, ProjectList, PropertyRecords, PropertyTaxes, ReadOnlyDynamicForm, ReadOnlyImage, ReadOnlyToggle, ReceiptAutofiler, ReceiptBody, ReceiptContent, ReceiptDetails, ReceiptFilters, ReceiptFooter, ReceiptHeader, ReceiptInfos, ReceiptItem, ReceiptItems, ReceiptPDF, ReceiptsDisplayOptions, ReceiptsFiled, ReceiptsHeader, ReceiptsInfo, ReceiptsReceivedContent, RecipientForm, RecipientsToShare, RecipientTab, RecordsInputs, ResendResetPassword, ResetPassword, ReviewBanner, RightPanel, RolePermissionsTab, RoomHeader, RoomsBoardTour, RoomsMenu, RoomsMenuMobile, RoomStep, RoomVideo, SalesTax, SatisfactionTile, SectionHeader, SendCommunication, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, ViewContactPanel, VideoPlayer, VideoPlayerModal, WellDone, YtdTile, } from './components';
|
|
1
|
+
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, DisplayFiles, DisplayFilesDetail, DisplayOptions, DisplayReceipts, DocumentMenu, DocumentNameHeader, DocumentPreview, DynamicForm, EditAccountType, EditHomeBody, EditHomeFooter, EditHomeHeader, EditHomePanel, EmailPermissions, EmailValidation, Feedback, FileDetail, FilesUploader, FlowStep, FolderDetail, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, FolderSharing, FolderTypeSelection, FooterButtons, FooterDrawer, GenericBackHeader, GroupCard, GroupsContainer, GroupsHeader, Header, HelpContent, HomeAssistant, HomeAssistantPanel, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomefileMonitoring, HomeHeader, HomeMonitor, HomeMonitorSteps, HomeSharedWith, InboxTile, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadTour, LeftPanel, MediaDetailsStep, MonitorAlerts, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileContent, MyProfileFooter, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentReceipts, PdfButton, PeopleConnected, ProfileDetailsTab, ProfilePaymentTab, ProjectList, PropertyRecords, PropertyTaxes, ReadOnlyDynamicForm, ReadOnlyImage, ReadOnlyToggle, ReceiptAutofiler, ReceiptBody, ReceiptContent, ReceiptDetails, ReceiptFilters, ReceiptFooter, ReceiptHeader, ReceiptInfos, ReceiptItem, ReceiptItems, ReceiptPDF, ReceiptsDisplayOptions, ReceiptsFiled, ReceiptsHeader, ReceiptsInfo, ReceiptsReceivedContent, RecipientForm, RecipientsToShare, RecipientTab, RecordsInputs, ResendResetPassword, ResetPassword, ReviewBanner, RightPanel, RolePermissionsTab, RoomHeader, RoomsBoardTour, RoomsMenu, RoomsMenuMobile, RoomStep, RoomVideo, SalesTax, SatisfactionTile, SectionHeader, SendCommunication, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, ViewContactPanel, VideoPlayer, VideoPlayerModal, WellDone, YtdTile, } from './components';
|
|
2
2
|
export { useCustomToast } from './hooks';
|
|
3
3
|
export { randomColor } from './utils';
|
|
4
4
|
export { billingProxy, dynamicFormProxy, homeCardProxy, partnerContentProxy, partnerDetailsProxy, paymentMethodProxy, recordsInputsProxy, recordsInputsToDBProxy, userDetailsProxy, confirmAddressProxy, } from './proxies';
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, DisplayFiles, DisplayFilesDetail, DisplayOptions, DisplayReceipts, DocumentMenu, DocumentNameHeader, DocumentPreview, DynamicForm, EditAccountType, EditHomeBody, EditHomeFooter, EditHomeHeader, EditHomePanel, EmailPermissions, EmailValidation, Feedback, FileDetail, FilesUploader, FlowStep, FolderDetail, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, FolderSharing, FolderTypeSelection, FooterButtons, FooterDrawer, GenericBackHeader, GroupCard, GroupsContainer, GroupsHeader, Header, HelpContent, HomeAssistant, HomeAssistantPanel, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeHeader, HomeSharedWith, InboxTile, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadTour, LeftPanel, MediaDetailsStep, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileContent, MyProfileFooter, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentReceipts, PdfButton, PeopleConnected, ProfileDetailsTab, ProfilePaymentTab, ProjectList, PropertyRecords, PropertyTaxes, ReadOnlyDynamicForm, ReadOnlyImage, ReadOnlyToggle, ReceiptAutofiler, ReceiptBody, ReceiptContent, ReceiptDetails, ReceiptFilters, ReceiptFooter, ReceiptHeader, ReceiptInfos, ReceiptItem, ReceiptItems, ReceiptPDF, ReceiptsDisplayOptions, ReceiptsFiled, ReceiptsHeader, ReceiptsInfo, ReceiptsReceivedContent, RecipientForm, RecipientsToShare, RecipientTab, RecordsInputs, ResendResetPassword, ResetPassword, ReviewBanner, RightPanel, RolePermissionsTab, RoomHeader, RoomsBoardTour, RoomsMenu, RoomsMenuMobile, RoomStep, RoomVideo, SalesTax, SatisfactionTile, SectionHeader, SendCommunication, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, ViewContactPanel, VideoPlayer, VideoPlayerModal, WellDone, YtdTile, } from './components';
|
|
1
|
+
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, DisplayFiles, DisplayFilesDetail, DisplayOptions, DisplayReceipts, DocumentMenu, DocumentNameHeader, DocumentPreview, DynamicForm, EditAccountType, EditHomeBody, EditHomeFooter, EditHomeHeader, EditHomePanel, EmailPermissions, EmailValidation, Feedback, FileDetail, FilesUploader, FlowStep, FolderDetail, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, FolderSharing, FolderTypeSelection, FooterButtons, FooterDrawer, GenericBackHeader, GroupCard, GroupsContainer, GroupsHeader, Header, HelpContent, HomeAssistant, HomeAssistantPanel, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomefileMonitoring, HomeHeader, HomeMonitor, HomeMonitorSteps, HomeSharedWith, InboxTile, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadTour, LeftPanel, MediaDetailsStep, MonitorAlerts, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileContent, MyProfileFooter, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentReceipts, PdfButton, PeopleConnected, ProfileDetailsTab, ProfilePaymentTab, ProjectList, PropertyRecords, PropertyTaxes, ReadOnlyDynamicForm, ReadOnlyImage, ReadOnlyToggle, ReceiptAutofiler, ReceiptBody, ReceiptContent, ReceiptDetails, ReceiptFilters, ReceiptFooter, ReceiptHeader, ReceiptInfos, ReceiptItem, ReceiptItems, ReceiptPDF, ReceiptsDisplayOptions, ReceiptsFiled, ReceiptsHeader, ReceiptsInfo, ReceiptsReceivedContent, RecipientForm, RecipientsToShare, RecipientTab, RecordsInputs, ResendResetPassword, ResetPassword, ReviewBanner, RightPanel, RolePermissionsTab, RoomHeader, RoomsBoardTour, RoomsMenu, RoomsMenuMobile, RoomStep, RoomVideo, SalesTax, SatisfactionTile, SectionHeader, SendCommunication, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, ViewContactPanel, VideoPlayer, VideoPlayerModal, WellDone, YtdTile, } from './components';
|
|
2
2
|
export { useCustomToast } from './hooks';
|
|
3
3
|
export { randomColor } from './utils';
|
|
4
4
|
export { billingProxy, dynamicFormProxy, homeCardProxy, partnerContentProxy, partnerDetailsProxy, paymentMethodProxy, recordsInputsProxy, recordsInputsToDBProxy, userDetailsProxy, confirmAddressProxy, } from './proxies';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MenuItemI,
|
|
1
|
+
import { MenuItemI, ContactAndIndexForm } from '..';
|
|
2
2
|
export interface ContactCompanyInfoI {
|
|
3
3
|
address: string;
|
|
4
4
|
city: string;
|
|
@@ -30,7 +30,8 @@ export interface ContactCardI {
|
|
|
30
30
|
apiError?: boolean;
|
|
31
31
|
contact: InfoContactCardI;
|
|
32
32
|
index: number;
|
|
33
|
-
menuItems
|
|
33
|
+
menuItems?: MenuItemI[];
|
|
34
34
|
onClick?: (contact: ContactAndIndexForm) => void;
|
|
35
|
-
|
|
35
|
+
showAvatar?: boolean;
|
|
36
|
+
showHeader?: boolean;
|
|
36
37
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { InfoContactCardI, MenuItemI,
|
|
1
|
+
import { InfoContactCardI, MenuItemI, ShareContactSectionI } from '..';
|
|
2
2
|
export interface ContactCardHeaderI {
|
|
3
3
|
apiError?: boolean;
|
|
4
4
|
contact: InfoContactCardI;
|
|
5
|
-
menuItems
|
|
6
|
-
onShare
|
|
5
|
+
menuItems?: MenuItemI[];
|
|
6
|
+
onShare?: ShareContactSectionI['onShare'];
|
|
7
7
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { InfoContactCardI, MenuItemI, ShareContactPopoverI } from '..';
|
|
2
1
|
import { ReactNode } from 'react';
|
|
2
|
+
import { InfoContactCardI, MenuItemI } from '..';
|
|
3
3
|
export type ContactAndIndexForm = InfoContactCardI & {
|
|
4
4
|
index: number;
|
|
5
5
|
};
|
|
@@ -12,5 +12,15 @@ export interface ContactsContentI {
|
|
|
12
12
|
children?: ReactNode;
|
|
13
13
|
disabled?: boolean;
|
|
14
14
|
onClick?: (contact: ContactAndIndexForm) => void;
|
|
15
|
-
|
|
15
|
+
onDeleteContacts: (contactsIds: string[]) => void;
|
|
16
|
+
onShareContacts: (contacts: InfoContactCardI[]) => void;
|
|
17
|
+
}
|
|
18
|
+
export interface CardOnContactListI {
|
|
19
|
+
apiError: ContactsContentI['apiError'];
|
|
20
|
+
contact: InfoContactCardI;
|
|
21
|
+
onClick: ContactsContentI['onClick'];
|
|
22
|
+
index: number;
|
|
23
|
+
menuItems: ContactsContentI['menuItems'];
|
|
24
|
+
selected: boolean;
|
|
25
|
+
onChange: (id: string) => void;
|
|
16
26
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ShareContactSectionI, ShareHomeContactListI } from '..';
|
|
2
|
+
export interface ShareContactByI {
|
|
3
|
+
apiErrorMessage?: string;
|
|
4
|
+
onShare: ShareContactSectionI['onShare'];
|
|
5
|
+
}
|
|
6
|
+
export interface SendToListI {
|
|
7
|
+
onDelete: (value: string) => void;
|
|
8
|
+
sendTo: string[];
|
|
9
|
+
}
|
|
10
|
+
export interface AddReceiverButtonI {
|
|
11
|
+
onClick: () => void;
|
|
12
|
+
isDisabled?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface ShareContactByHomefileI extends ShareContactByI {
|
|
15
|
+
homefileContacts: ShareHomeContactListI['contacts'];
|
|
16
|
+
isLoading: boolean;
|
|
17
|
+
shareWithList: string[];
|
|
18
|
+
onContactSearch: (email: string) => void;
|
|
19
|
+
onDropdownSelect: ShareHomeContactListI['onClick'];
|
|
20
|
+
onRemoveContact: (email: string) => void;
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { InfoContactCardI, ShareContactSectionI } from '..';
|
|
2
|
+
interface ShareFormI {
|
|
3
|
+
contacts: InfoContactCardI[];
|
|
4
|
+
shareBy: {
|
|
5
|
+
email?: string[];
|
|
6
|
+
sms?: string[];
|
|
7
|
+
social?: string[];
|
|
8
|
+
homefile?: string[];
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export interface ShareContactsContentI extends Omit<ShareContactSectionI, 'onShare'> {
|
|
12
|
+
contacts: InfoContactCardI[];
|
|
13
|
+
onShare: (form: ShareFormI) => void;
|
|
14
|
+
onClose: () => void;
|
|
15
|
+
}
|
|
16
|
+
export type SendByTypes = 'email' | 'sms' | 'homefile';
|
|
17
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { RoleType } from '../../helpers';
|
|
2
|
-
import { InfoContactCardI, MenuItemI,
|
|
2
|
+
import { InfoContactCardI, MenuItemI, ShareContactSectionI } from '..';
|
|
3
3
|
export interface ViewContactPanelI {
|
|
4
4
|
contact: InfoContactCardI;
|
|
5
5
|
handleClose: () => void;
|
|
6
6
|
menuItems: MenuItemI[];
|
|
7
|
-
onShare:
|
|
7
|
+
onShare: ShareContactSectionI['onShare'];
|
|
8
8
|
roleType: RoleType;
|
|
9
9
|
}
|
|
@@ -4,6 +4,8 @@ export * from './ContactCardAddress.interface';
|
|
|
4
4
|
export * from './ContactCardHeader.interface';
|
|
5
5
|
export * from './ContactCardInfo.interface';
|
|
6
6
|
export * from './ContactsContent.interface';
|
|
7
|
-
export * from './
|
|
8
|
-
export * from './
|
|
7
|
+
export * from './SelectedContacts.interface';
|
|
8
|
+
export * from './ShareContactBy.interface';
|
|
9
|
+
export * from './ShareContactsContent.interface';
|
|
10
|
+
export * from './ShareContactSection.interface';
|
|
9
11
|
export * from './ViewContactPanel.interface';
|
|
@@ -4,6 +4,8 @@ export * from './ContactCardAddress.interface';
|
|
|
4
4
|
export * from './ContactCardHeader.interface';
|
|
5
5
|
export * from './ContactCardInfo.interface';
|
|
6
6
|
export * from './ContactsContent.interface';
|
|
7
|
-
export * from './
|
|
8
|
-
export * from './
|
|
7
|
+
export * from './SelectedContacts.interface';
|
|
8
|
+
export * from './ShareContactBy.interface';
|
|
9
|
+
export * from './ShareContactsContent.interface';
|
|
10
|
+
export * from './ShareContactSection.interface';
|
|
9
11
|
export * from './ViewContactPanel.interface';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { HomeAssistantStepI, MenuItemI } from '..';
|
|
2
|
+
export interface HomeMonitortStepsI {
|
|
3
|
+
menuItems: MenuItemI[];
|
|
4
|
+
stepsWithAlerts: number[];
|
|
5
|
+
onStepClick: (step: number) => void;
|
|
6
|
+
}
|
|
7
|
+
export interface HomeMonitorButtonI {
|
|
8
|
+
currentStep: number;
|
|
9
|
+
menuItems: HomeMonitortStepsI['menuItems'];
|
|
10
|
+
onStepClick: HomeMonitortStepsI['onStepClick'];
|
|
11
|
+
status: 'alert' | 'ok';
|
|
12
|
+
step: HomeAssistantStepI;
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
export * from './ApplianceButton.interface';
|
|
2
2
|
export * from './ApplianceSteps.interface';
|
|
3
|
+
export * from './BaseAlertCard.interface';
|
|
3
4
|
export * from './HomeAssistantButton.interface';
|
|
4
5
|
export * from './HomeAssistantPanel.interface';
|
|
5
6
|
export * from './HomeAssistantStepper.interface';
|
|
6
7
|
export * from './HomeAssistantSteps.interface';
|
|
7
8
|
export * from './HomeAssistantTutorial.interface';
|
|
9
|
+
export * from './HomeMonitorSteps.interface';
|
|
10
|
+
export * from './MonitorAlerts.interface';
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
export * from './ApplianceButton.interface';
|
|
2
2
|
export * from './ApplianceSteps.interface';
|
|
3
|
+
export * from './BaseAlertCard.interface';
|
|
3
4
|
export * from './HomeAssistantButton.interface';
|
|
4
5
|
export * from './HomeAssistantPanel.interface';
|
|
5
6
|
export * from './HomeAssistantStepper.interface';
|
|
6
7
|
export * from './HomeAssistantSteps.interface';
|
|
7
8
|
export * from './HomeAssistantTutorial.interface';
|
|
9
|
+
export * from './HomeMonitorSteps.interface';
|
|
10
|
+
export * from './MonitorAlerts.interface';
|
|
@@ -1,5 +1,89 @@
|
|
|
1
1
|
import { faker } from '@faker-js/faker/locale/af_ZA';
|
|
2
2
|
export const ContactsMock = [
|
|
3
|
+
{
|
|
4
|
+
title: 'Design',
|
|
5
|
+
category: 'Design',
|
|
6
|
+
firstName: '',
|
|
7
|
+
lastName: '',
|
|
8
|
+
email: faker.internet.email(),
|
|
9
|
+
phone: faker.phone.number(),
|
|
10
|
+
company: faker.company.name(),
|
|
11
|
+
address: faker.location.streetAddress(),
|
|
12
|
+
zip: faker.location.zipCode(),
|
|
13
|
+
city: faker.location.city(),
|
|
14
|
+
state: faker.location.state(),
|
|
15
|
+
_id: faker.database.mongodbObjectId(),
|
|
16
|
+
notes: faker.lorem.paragraphs(),
|
|
17
|
+
companyInfo: {
|
|
18
|
+
address: faker.location.streetAddress(),
|
|
19
|
+
city: faker.location.city(),
|
|
20
|
+
company: faker.company.name(),
|
|
21
|
+
url: faker.internet.url(),
|
|
22
|
+
_id: faker.database.mongodbObjectId(),
|
|
23
|
+
phone: faker.phone.number(),
|
|
24
|
+
state: faker.location.state(),
|
|
25
|
+
zip: faker.location.zipCode(),
|
|
26
|
+
rating: faker.number.int({ min: 1, max: 5 }),
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
title: 'Pumpler',
|
|
31
|
+
category: 'Home services',
|
|
32
|
+
firstName: '',
|
|
33
|
+
lastName: '',
|
|
34
|
+
email: faker.internet.email(),
|
|
35
|
+
phone: faker.phone.number(),
|
|
36
|
+
company: '',
|
|
37
|
+
address: '1134 South First Avenue',
|
|
38
|
+
zip: '78732',
|
|
39
|
+
city: 'Austin',
|
|
40
|
+
state: 'TX',
|
|
41
|
+
_id: faker.database.mongodbObjectId(),
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
title: '',
|
|
45
|
+
category: 'Home services',
|
|
46
|
+
firstName: faker.person.firstName(),
|
|
47
|
+
lastName: faker.person.lastName(),
|
|
48
|
+
email: faker.internet.email(),
|
|
49
|
+
phone: faker.phone.number(),
|
|
50
|
+
company: '',
|
|
51
|
+
address: '1134 South First Avenue',
|
|
52
|
+
zip: '78732',
|
|
53
|
+
city: 'Austin',
|
|
54
|
+
state: 'TX',
|
|
55
|
+
_id: faker.database.mongodbObjectId(),
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
title: 'Electrical',
|
|
59
|
+
category: 'Electrical',
|
|
60
|
+
firstName: faker.person.firstName(),
|
|
61
|
+
lastName: faker.person.lastName(),
|
|
62
|
+
email: faker.internet.email(),
|
|
63
|
+
phone: faker.phone.number(),
|
|
64
|
+
company: '',
|
|
65
|
+
address: '1134 South First Avenue',
|
|
66
|
+
zip: '78732',
|
|
67
|
+
city: 'Austin',
|
|
68
|
+
state: 'TX',
|
|
69
|
+
_id: faker.database.mongodbObjectId(),
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
title: 'Electrical',
|
|
73
|
+
category: 'Electrical',
|
|
74
|
+
firstName: faker.person.firstName(),
|
|
75
|
+
lastName: faker.person.lastName(),
|
|
76
|
+
email: faker.internet.email(),
|
|
77
|
+
phone: faker.phone.number(),
|
|
78
|
+
company: '',
|
|
79
|
+
address: '1134 South First Avenue',
|
|
80
|
+
zip: '78732',
|
|
81
|
+
city: 'Austin',
|
|
82
|
+
state: 'TX',
|
|
83
|
+
_id: faker.database.mongodbObjectId(),
|
|
84
|
+
},
|
|
85
|
+
];
|
|
86
|
+
export const ContactsMockCompleted = [
|
|
3
87
|
{
|
|
4
88
|
title: 'Design',
|
|
5
89
|
category: 'Design',
|
|
@@ -31,9 +115,9 @@ export const ContactsMock = [
|
|
|
31
115
|
category: 'Home services',
|
|
32
116
|
firstName: faker.person.firstName(),
|
|
33
117
|
lastName: faker.person.lastName(),
|
|
34
|
-
email:
|
|
118
|
+
email: faker.internet.email(),
|
|
35
119
|
phone: faker.phone.number(),
|
|
36
|
-
company: '
|
|
120
|
+
company: '',
|
|
37
121
|
address: '1134 South First Avenue',
|
|
38
122
|
zip: '78732',
|
|
39
123
|
city: 'Austin',
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { HomieAnimation } from '../../components';
|
|
3
|
+
import { Box } from '@chakra-ui/react';
|
|
4
|
+
export default {
|
|
5
|
+
title: 'Animations/HomieAnimation',
|
|
6
|
+
component: HomieAnimation,
|
|
7
|
+
decorators: [
|
|
8
|
+
(Story) => (_jsx(Box, { p: "base", w: ['full', '440px'], h: "477px", children: _jsx(Story, {}) })),
|
|
9
|
+
],
|
|
10
|
+
};
|
|
11
|
+
export const Homie = () => _jsx(HomieAnimation, {});
|