@homefile/components-v2 1.2.2 → 1.4.0

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.
Files changed (234) hide show
  1. package/dist/assets/images/circle-face.svg +21 -0
  2. package/dist/assets/images/company.svg +34 -0
  3. package/dist/assets/images/index.d.ts +5 -1
  4. package/dist/assets/images/index.js +5 -1
  5. package/dist/assets/images/index.ts +7 -0
  6. package/dist/assets/images/location.jpg +0 -0
  7. package/dist/assets/images/logos/index.d.ts +2 -1
  8. package/dist/assets/images/logos/index.js +2 -1
  9. package/dist/assets/images/logos/index.ts +12 -1
  10. package/dist/assets/images/logos/shine.png +0 -0
  11. package/dist/assets/images/shine/gutter-cleaning.png +0 -0
  12. package/dist/assets/images/shine/holiday-lights.png +0 -0
  13. package/dist/assets/images/shine/home-cleaning.png +0 -0
  14. package/dist/assets/images/shine/index.d.ts +7 -0
  15. package/dist/assets/images/shine/index.js +7 -0
  16. package/dist/assets/images/shine/index.ts +15 -0
  17. package/dist/assets/images/shine/pressure.png +0 -0
  18. package/dist/assets/images/shine/roof-cleaning.png +0 -0
  19. package/dist/assets/images/shine/window.png +0 -0
  20. package/dist/assets/locales/en/index.json +23 -1
  21. package/dist/components/animations/CloudsAnimation.js +1 -1
  22. package/dist/components/contacts/ContactCard.d.ts +1 -1
  23. package/dist/components/contacts/ContactCard.js +8 -3
  24. package/dist/components/contacts/ContactCardHeader.d.ts +1 -1
  25. package/dist/components/contacts/ContactCardHeader.js +5 -6
  26. package/dist/components/contacts/ContactHeaderMenu.d.ts +2 -0
  27. package/dist/components/contacts/ContactHeaderMenu.js +7 -0
  28. package/dist/components/contacts/ContactsContent.d.ts +1 -1
  29. package/dist/components/contacts/ContactsContent.js +2 -2
  30. package/dist/components/contacts/addEditPanel/AddEditContactPanel.d.ts +2 -0
  31. package/dist/components/contacts/addEditPanel/AddEditContactPanel.js +24 -0
  32. package/dist/components/contacts/addEditPanel/index.d.ts +1 -0
  33. package/dist/components/contacts/addEditPanel/index.js +1 -0
  34. package/dist/components/contacts/index.d.ts +3 -0
  35. package/dist/components/contacts/index.js +3 -0
  36. package/dist/components/contacts/viewPanel/CompanyInfoCard.d.ts +2 -0
  37. package/dist/components/contacts/viewPanel/CompanyInfoCard.js +13 -0
  38. package/dist/components/contacts/viewPanel/CompanyRating.d.ts +3 -0
  39. package/dist/components/contacts/viewPanel/CompanyRating.js +27 -0
  40. package/dist/components/contacts/viewPanel/ContactAddressCard.d.ts +2 -0
  41. package/dist/components/contacts/viewPanel/ContactAddressCard.js +12 -0
  42. package/dist/components/contacts/viewPanel/ContactNotes.d.ts +3 -0
  43. package/dist/components/contacts/viewPanel/ContactNotes.js +8 -0
  44. package/dist/components/contacts/viewPanel/PersonalInfoCard.d.ts +2 -0
  45. package/dist/components/contacts/viewPanel/PersonalInfoCard.js +8 -0
  46. package/dist/components/contacts/viewPanel/RoleTag.d.ts +2 -0
  47. package/dist/components/contacts/viewPanel/RoleTag.js +9 -0
  48. package/dist/components/contacts/viewPanel/ViewContactHeader.d.ts +2 -0
  49. package/dist/components/contacts/viewPanel/ViewContactHeader.js +11 -0
  50. package/dist/components/contacts/viewPanel/ViewContactPanel.d.ts +2 -0
  51. package/dist/components/contacts/viewPanel/ViewContactPanel.js +9 -0
  52. package/dist/components/contacts/viewPanel/index.d.ts +8 -0
  53. package/dist/components/contacts/viewPanel/index.js +8 -0
  54. package/dist/components/forms/dynamicForm/DynamicForm.d.ts +1 -1
  55. package/dist/components/forms/dynamicForm/DynamicForm.js +5 -5
  56. package/dist/components/forms/dynamicForm/SimpleDynamicForm.d.ts +2 -0
  57. package/dist/components/forms/dynamicForm/SimpleDynamicForm.js +29 -0
  58. package/dist/components/forms/dynamicForm/fields/FieldWithDelete.d.ts +1 -1
  59. package/dist/components/forms/dynamicForm/fields/FieldWithDelete.js +2 -3
  60. package/dist/components/forms/dynamicForm/fields/GroupField.d.ts +1 -1
  61. package/dist/components/forms/dynamicForm/fields/GroupField.js +2 -2
  62. package/dist/components/forms/dynamicForm/index.d.ts +1 -1
  63. package/dist/components/forms/dynamicForm/index.js +1 -1
  64. package/dist/components/homeAssistant/panel/ApplianceSteps.d.ts +1 -1
  65. package/dist/components/homeAssistant/panel/ApplianceSteps.js +2 -2
  66. package/dist/components/homeAssistant/panel/HomeAssistantPanel.d.ts +1 -1
  67. package/dist/components/homeAssistant/panel/HomeAssistantPanel.js +14 -7
  68. package/dist/components/homeBoard/HomeBoard.js +1 -1
  69. package/dist/components/homeBoard/HomeCardWithRecipent.d.ts +1 -1
  70. package/dist/components/homeBoard/HomeCardWithRecipent.js +8 -2
  71. package/dist/components/onboarding/pages/ActivateAccount.js +2 -2
  72. package/dist/components/onboarding/pages/BasePageWrapper.d.ts +2 -0
  73. package/dist/components/onboarding/pages/BasePageWrapper.js +5 -0
  74. package/dist/components/onboarding/pages/EmailValidation.js +3 -3
  75. package/dist/components/onboarding/pages/NewPassword.js +2 -2
  76. package/dist/components/onboarding/pages/ResendResetPassword.js +3 -3
  77. package/dist/components/onboarding/pages/ResetPassword.js +2 -2
  78. package/dist/components/onboarding/pages/SignIn.js +2 -2
  79. package/dist/components/onboarding/pages/SignUp.js +5 -5
  80. package/dist/components/onboarding/pages/TwoFactor.js +2 -2
  81. package/dist/components/onboarding/pages/index.d.ts +10 -9
  82. package/dist/components/onboarding/pages/index.js +10 -9
  83. package/dist/components/partner/customPartnerTiles/ShineTile.d.ts +2 -0
  84. package/dist/components/partner/customPartnerTiles/ShineTile.js +56 -0
  85. package/dist/components/partner/customPartnerTiles/index.d.ts +1 -0
  86. package/dist/components/partner/customPartnerTiles/index.js +1 -0
  87. package/dist/helpers/HomeRoles.helper.d.ts +1 -5
  88. package/dist/helpers/HomeRoles.helper.js +6 -0
  89. package/dist/helpers/forms/dynamicForm.helper.js +3 -1
  90. package/dist/hooks/forms/index.d.ts +1 -0
  91. package/dist/hooks/forms/index.js +1 -0
  92. package/dist/hooks/forms/useSimpleDynamicForm.d.ts +11 -0
  93. package/dist/hooks/forms/useSimpleDynamicForm.js +36 -0
  94. package/dist/hooks/myHomes/useMyHomeCard.d.ts +1 -3
  95. package/dist/index.d.ts +1 -1
  96. package/dist/index.js +1 -1
  97. package/dist/interfaces/contacts/AddEditContactPanel.interface.d.ts +12 -0
  98. package/dist/interfaces/contacts/ContactCard.interface.d.ts +15 -1
  99. package/dist/interfaces/contacts/ContactCardInfo.interface.d.ts +2 -1
  100. package/dist/interfaces/contacts/ContactsContent.interface.d.ts +4 -0
  101. package/dist/interfaces/contacts/ViewContactPanel.interface.d.ts +9 -0
  102. package/dist/interfaces/contacts/ViewContactPanel.interface.js +1 -0
  103. package/dist/interfaces/contacts/index.d.ts +2 -0
  104. package/dist/interfaces/contacts/index.js +2 -0
  105. package/dist/interfaces/forms/dynamicForm/DynamicForm.interface.d.ts +9 -7
  106. package/dist/interfaces/forms/dynamicForm/SimpleDynamicForm.interface.d.ts +4 -0
  107. package/dist/interfaces/forms/dynamicForm/SimpleDynamicForm.interface.js +1 -0
  108. package/dist/interfaces/forms/dynamicForm/fields/FieldWithDelete.interface.d.ts +1 -1
  109. package/dist/interfaces/forms/dynamicForm/fields/GroupField.interface.d.ts +1 -1
  110. package/dist/interfaces/forms/dynamicForm/index.d.ts +1 -1
  111. package/dist/interfaces/forms/dynamicForm/index.js +1 -1
  112. package/dist/interfaces/homeAssistant/ApplianceSteps.interface.d.ts +3 -0
  113. package/dist/interfaces/homeAssistant/HomeAssistantPanel.interface.d.ts +4 -1
  114. package/dist/interfaces/homeBoard/HomeCardWithRecipent.interface.d.ts +1 -0
  115. package/dist/mocks/contacts/contacts.mock.js +17 -5
  116. package/dist/mocks/forms/dynamicForm.mock.d.ts +1 -0
  117. package/dist/mocks/forms/dynamicForm.mock.js +155 -0
  118. package/dist/proxies/contacts/contactForm.proxy.d.ts +2 -0
  119. package/dist/proxies/contacts/contactForm.proxy.js +7 -0
  120. package/dist/proxies/contacts/index.d.ts +1 -0
  121. package/dist/proxies/contacts/index.js +1 -0
  122. package/dist/proxies/index.d.ts +1 -0
  123. package/dist/proxies/index.js +1 -0
  124. package/dist/stories/assets/Illustrations.stories.js +2 -2
  125. package/dist/stories/contacts/AddEditContactPanel.stories.d.ts +5 -0
  126. package/dist/stories/contacts/AddEditContactPanel.stories.js +22 -0
  127. package/dist/stories/contacts/ContactCardAddress.stories.d.ts +2 -0
  128. package/dist/stories/contacts/ContactCardInfo.stories.d.ts +2 -0
  129. package/dist/stories/contacts/ViewContactPanel.stories.d.ts +5 -0
  130. package/dist/stories/contacts/ViewContactPanel.stories.js +28 -0
  131. package/dist/stories/homeAssistant/panel/ApplianceSteps.stories.d.ts +1 -1
  132. package/dist/stories/homeAssistant/panel/ApplianceSteps.stories.js +1 -0
  133. package/dist/stories/homeAssistant/panel/HomeAssistantPanel.stories.js +1 -1
  134. package/dist/stories/onboarding/pages/NewPassword.stories.js +2 -3
  135. package/dist/stories/onboarding/pages/ResendResetPassword.stories.js +2 -3
  136. package/dist/stories/onboarding/pages/ResetPassword.stories.js +2 -3
  137. package/dist/stories/onboarding/pages/SignIn.stories.js +2 -3
  138. package/dist/stories/onboarding/pages/SignUp.stories.js +2 -3
  139. package/dist/stories/partner/customPartnerTiles/ShineTile.stories.d.ts +5 -0
  140. package/dist/stories/partner/customPartnerTiles/ShineTile.stories.js +19 -0
  141. package/package.json +1 -1
  142. package/src/assets/images/circle-face.svg +21 -0
  143. package/src/assets/images/company.svg +34 -0
  144. package/src/assets/images/index.ts +7 -0
  145. package/src/assets/images/location.jpg +0 -0
  146. package/src/assets/images/logos/index.ts +12 -1
  147. package/src/assets/images/logos/shine.png +0 -0
  148. package/src/assets/images/shine/gutter-cleaning.png +0 -0
  149. package/src/assets/images/shine/holiday-lights.png +0 -0
  150. package/src/assets/images/shine/home-cleaning.png +0 -0
  151. package/src/assets/images/shine/index.ts +15 -0
  152. package/src/assets/images/shine/pressure.png +0 -0
  153. package/src/assets/images/shine/roof-cleaning.png +0 -0
  154. package/src/assets/images/shine/window.png +0 -0
  155. package/src/assets/locales/en/index.json +23 -1
  156. package/src/components/animations/CloudsAnimation.tsx +8 -7
  157. package/src/components/contacts/ContactCard.tsx +28 -25
  158. package/src/components/contacts/ContactCardHeader.tsx +5 -38
  159. package/src/components/contacts/ContactHeaderMenu.tsx +42 -0
  160. package/src/components/contacts/ContactsContent.tsx +3 -1
  161. package/src/components/contacts/addEditPanel/AddEditContactPanel.tsx +63 -0
  162. package/src/components/contacts/addEditPanel/index.ts +1 -0
  163. package/src/components/contacts/index.ts +3 -0
  164. package/src/components/contacts/viewPanel/CompanyInfoCard.tsx +58 -0
  165. package/src/components/contacts/viewPanel/CompanyRating.tsx +27 -0
  166. package/src/components/contacts/viewPanel/ContactAddressCard.tsx +39 -0
  167. package/src/components/contacts/viewPanel/ContactNotes.tsx +16 -0
  168. package/src/components/contacts/viewPanel/PersonalInfoCard.tsx +41 -0
  169. package/src/components/contacts/viewPanel/RoleTag.tsx +30 -0
  170. package/src/components/contacts/viewPanel/ViewContactHeader.tsx +26 -0
  171. package/src/components/contacts/viewPanel/ViewContactPanel.tsx +70 -0
  172. package/src/components/contacts/viewPanel/index.ts +8 -0
  173. package/src/components/forms/dynamicForm/DynamicForm.tsx +9 -6
  174. package/src/components/forms/dynamicForm/SimpleDynamicForm.tsx +57 -0
  175. package/src/components/forms/dynamicForm/fields/FieldWithDelete.tsx +2 -3
  176. package/src/components/forms/dynamicForm/fields/GroupField.tsx +7 -2
  177. package/src/components/forms/dynamicForm/index.ts +1 -1
  178. package/src/components/homeAssistant/panel/ApplianceSteps.tsx +5 -2
  179. package/src/components/homeAssistant/panel/HomeAssistantPanel.tsx +20 -7
  180. package/src/components/homeBoard/HomeBoard.tsx +3 -0
  181. package/src/components/homeBoard/HomeCardWithRecipent.tsx +15 -1
  182. package/src/components/onboarding/pages/ActivateAccount.tsx +8 -3
  183. package/src/components/onboarding/pages/BasePageWrapper.tsx +10 -0
  184. package/src/components/onboarding/pages/EmailValidation.tsx +3 -3
  185. package/src/components/onboarding/pages/NewPassword.tsx +9 -3
  186. package/src/components/onboarding/pages/ResendResetPassword.tsx +3 -3
  187. package/src/components/onboarding/pages/ResetPassword.tsx +3 -2
  188. package/src/components/onboarding/pages/SignIn.tsx +3 -4
  189. package/src/components/onboarding/pages/SignUp.tsx +9 -8
  190. package/src/components/onboarding/pages/TwoFactor.tsx +9 -3
  191. package/src/components/onboarding/pages/index.ts +10 -9
  192. package/src/components/partner/customPartnerTiles/ShineTile.tsx +148 -0
  193. package/src/components/partner/customPartnerTiles/index.ts +1 -0
  194. package/src/helpers/HomeRoles.helper.ts +7 -1
  195. package/src/helpers/forms/dynamicForm.helper.ts +4 -0
  196. package/src/hooks/forms/index.ts +1 -0
  197. package/src/hooks/forms/useSimpleDynamicForm.ts +58 -0
  198. package/src/index.ts +3 -0
  199. package/src/interfaces/contacts/AddEditContactPanel.interface.ts +14 -0
  200. package/src/interfaces/contacts/ContactCard.interface.ts +20 -1
  201. package/src/interfaces/contacts/ContactCardInfo.interface.ts +3 -2
  202. package/src/interfaces/contacts/ContactsContent.interface.ts +3 -0
  203. package/src/interfaces/contacts/ViewContactPanel.interface.ts +10 -0
  204. package/src/interfaces/contacts/index.ts +2 -0
  205. package/src/interfaces/forms/dynamicForm/DynamicForm.interface.ts +10 -6
  206. package/src/interfaces/forms/dynamicForm/SimpleDynamicForm.interface.ts +5 -0
  207. package/src/interfaces/forms/dynamicForm/fields/FieldWithDelete.interface.ts +1 -1
  208. package/src/interfaces/forms/dynamicForm/fields/GroupField.interface.ts +1 -1
  209. package/src/interfaces/forms/dynamicForm/index.ts +1 -1
  210. package/src/interfaces/homeAssistant/ApplianceSteps.interface.ts +13 -2
  211. package/src/interfaces/homeAssistant/HomeAssistantPanel.interface.ts +4 -1
  212. package/src/interfaces/homeBoard/HomeCardWithRecipent.interface.ts +1 -0
  213. package/src/mocks/contacts/contacts.mock.ts +17 -5
  214. package/src/mocks/forms/dynamicForm.mock.ts +156 -0
  215. package/src/proxies/contacts/contactForm.proxy.ts +9 -0
  216. package/src/proxies/contacts/index.ts +1 -0
  217. package/src/proxies/index.ts +1 -0
  218. package/src/stories/assets/Illustrations.stories.tsx +4 -0
  219. package/src/stories/contacts/AddEditContactPanel.stories.tsx +45 -0
  220. package/src/stories/contacts/ViewContactPanel.stories.tsx +35 -0
  221. package/src/stories/homeAssistant/panel/ApplianceSteps.stories.tsx +2 -1
  222. package/src/stories/homeAssistant/panel/HomeAssistantPanel.stories.tsx +2 -0
  223. package/src/stories/onboarding/pages/NewPassword.stories.tsx +3 -4
  224. package/src/stories/onboarding/pages/ResendResetPassword.stories.tsx +3 -4
  225. package/src/stories/onboarding/pages/ResetPassword.stories.tsx +3 -4
  226. package/src/stories/onboarding/pages/SignIn.stories.tsx +3 -4
  227. package/src/stories/onboarding/pages/SignUp.stories.tsx +3 -4
  228. package/src/stories/partner/customPartnerTiles/ShineTile.stories.tsx +26 -0
  229. package/dist/components/forms/dynamicForm/DynamicFormSimple.d.ts +0 -2
  230. package/dist/components/forms/dynamicForm/DynamicFormSimple.js +0 -32
  231. package/dist/interfaces/forms/dynamicForm/DynamicFormSimple.interface.d.ts +0 -4
  232. package/src/components/forms/dynamicForm/DynamicFormSimple.tsx +0 -66
  233. package/src/interfaces/forms/dynamicForm/DynamicFormSimple.interface.ts +0 -5
  234. /package/dist/interfaces/{forms/dynamicForm/DynamicFormSimple.interface.js → contacts/AddEditContactPanel.interface.js} +0 -0
@@ -0,0 +1,56 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { t } from 'i18next';
3
+ import { Box, Button, Image, SimpleGrid, Stack, Text, } from '@chakra-ui/react';
4
+ import { PartnerFooter, PartnerHeader, PartnerTileWrapper } from '../..';
5
+ import { GutterCleaning, HolidayLights, HomeCleaning, Pressure, RoofCleaning, Shine, WindowCleaning, } from '../../../assets/images';
6
+ export const ShineTile = ({ menuItems, }) => {
7
+ const cardsArray = ['pressure', 'window', 'roof', 'lights', 'gutter', 'home'];
8
+ return (_jsxs(PartnerTileWrapper, { children: [_jsx(PartnerHeader, { logo: Shine, partnerName: "Shine", menuItems: menuItems }), _jsxs(Box, { children: [_jsxs(Stack, { spacing: "6", bg: "neutral.white", px: "base", py: "6", borderTop: "1px solid", borderColor: "lightBlue.6", children: [_jsx(Text, { fontWeight: "bold", textAlign: "center", children: t('partner.shine.heroTitle') }), _jsx(SimpleGrid, { columns: 3, spacing: "base", children: cardsArray.map((card) => (_jsx(ServiceCard, { service: card }, card))) })] }), _jsx(Stack, { spacing: "base", p: "base", children: _jsx(Button, { onClick: () => openNewTab(links.scheduleService), variant: "tertiary", w: "full", h: "44px", children: t('partner.shine.scheduleService') }) }), _jsx(PartnerFooter, { socialLinks: socialLinks, websiteUrl: "https://shine-windowcleaning.com/" })] })] }));
9
+ };
10
+ const ServiceCard = ({ service = '' }) => {
11
+ const card = cards[service];
12
+ return (_jsxs(Box, { bg: "neutral.white", borderRadius: "md", border: "1px solid", borderColor: "lightBlue.6", display: "flex", flexDirection: "column", alignItems: "center", justifyContent: "center", children: [_jsx(Box, { h: "46px", display: "flex", alignItems: "center", children: card.image }), _jsx(Box, { pb: "2", children: _jsx(Text, { fontWeight: "semibold", textAlign: "center", fontSize: "13px", lineHeight: "14px", children: t(card.title) }) })] }));
13
+ };
14
+ const openNewTab = (url) => {
15
+ window.open(url, '_blank');
16
+ };
17
+ const socialLinks = [
18
+ {
19
+ name: 'linkedin',
20
+ link: 'https://www.linkedin.com/company/shine-window-care-and-holiday-lighting/',
21
+ },
22
+ {
23
+ name: 'facebook',
24
+ link: 'https://www.facebook.com/ShineFranchise',
25
+ },
26
+ ];
27
+ const links = {
28
+ scheduleService: 'https://shine-windowcleaning.com/',
29
+ website: 'https://shine-windowcleaning.com/',
30
+ };
31
+ const cards = {
32
+ pressure: {
33
+ title: 'partner.shine.services.pressure',
34
+ image: _jsx(Image, { src: Pressure, alt: "pressure", w: "46px", h: "auto" }),
35
+ },
36
+ window: {
37
+ title: 'partner.shine.services.window',
38
+ image: (_jsx(Image, { src: WindowCleaning, alt: "window-cleaning", w: "46px", h: "46px" })),
39
+ },
40
+ roof: {
41
+ title: 'partner.shine.services.roof',
42
+ image: _jsx(Image, { src: RoofCleaning, alt: "roof-cleaning", w: "42px", h: "42px" }),
43
+ },
44
+ lights: {
45
+ title: 'partner.shine.services.lights',
46
+ image: _jsx(Image, { src: HolidayLights, alt: "holiday-lights", w: "auto", h: "56px" }),
47
+ },
48
+ gutter: {
49
+ title: 'partner.shine.services.gutter',
50
+ image: (_jsx(Image, { src: GutterCleaning, alt: "gutter-cleaning", w: "auto", h: "40px" })),
51
+ },
52
+ home: {
53
+ title: 'partner.shine.services.home',
54
+ image: _jsx(Image, { src: HomeCleaning, alt: "home-cleaning", w: "auto", h: "34px" }),
55
+ },
56
+ };
@@ -1 +1,2 @@
1
1
  export * from './AphwTile';
2
+ export * from './ShineTile';
@@ -1 +1,2 @@
1
1
  export * from './AphwTile';
2
+ export * from './ShineTile';
@@ -1,8 +1,4 @@
1
1
  export type RoleType = 'guest' | 'member' | 'partner' | 'contributor' | 'manager' | 'homeowner';
2
2
  export type ReducedRoleType = 'member' | 'contributor' | 'manager';
3
3
  export declare const homeRoleTypes: RoleType[];
4
- export declare const homeRoles: {
5
- [key: string]: {
6
- [key: string]: string;
7
- };
8
- };
4
+ export declare const homeRoles: Record<string, Record<string, string>>;
@@ -8,25 +8,31 @@ export const homeRoles = {
8
8
  guest: {
9
9
  bg: 'teal.4',
10
10
  width: '3.5rem',
11
+ name: 'Guest',
11
12
  },
12
13
  member: {
13
14
  bg: 'teal.4',
14
15
  width: '3.5rem',
16
+ name: 'Member',
15
17
  },
16
18
  partner: {
17
19
  bg: '#2F7F9B',
18
20
  width: '4.5rem',
21
+ name: 'Partner',
19
22
  },
20
23
  contributor: {
21
24
  bg: '#2F7F9B',
22
25
  width: '6rem',
26
+ name: 'Contributor',
23
27
  },
24
28
  manager: {
25
29
  bg: '#1A72D9',
26
30
  width: '5rem',
31
+ name: 'Manager',
27
32
  },
28
33
  homeowner: {
29
34
  bg: '#535C51',
30
35
  width: '6rem',
36
+ name: 'Homeowner',
31
37
  },
32
38
  };
@@ -1,4 +1,4 @@
1
- import { Paint, Receipt, Barcode, GoldenBars, Heart, Rating, Notes, Book, ImgIcon, Registry, ShareWith, Calendar, Tools2, Billing, Calc, CheckPen, GenericField, Price, Battery2, Co2, Detector, Electricity, Sprinkler, SixtyEight, DropCalendar, MobileDrop, SolarPanel, Calendar2, Drop, Wind, Foundation, Heater, Light, Plate, Pool2, Closet, Structure, GlassWater, Roof2, Target, } from '../../assets/images';
1
+ import { Paint, Receipt, Barcode, GoldenBars, Heart, Rating, Notes, Book, ImgIcon, Registry, ShareWith, Calendar, Tools2, Billing, Calc, CheckPen, GenericField, Price, Battery2, Co2, Detector, Electricity, Sprinkler, SixtyEight, DropCalendar, MobileDrop, SolarPanel, Calendar2, Drop, Wind, Foundation, Heater, Light, Plate, Pool2, Closet, Structure, GlassWater, Roof2, Target, CircleFace, Company, } from '../../assets/images';
2
2
  export const fieldIcons = {
3
3
  barcode: Barcode,
4
4
  billing: Billing,
@@ -41,4 +41,6 @@ export const fieldIcons = {
41
41
  water: GlassWater,
42
42
  house: Structure,
43
43
  target: Target,
44
+ title: CircleFace,
45
+ company: Company,
44
46
  };
@@ -1,2 +1,3 @@
1
1
  export * from './useAddressStored';
2
2
  export * from './useDynamicForm';
3
+ export * from './useSimpleDynamicForm';
@@ -1,2 +1,3 @@
1
1
  export * from './useAddressStored';
2
2
  export * from './useDynamicForm';
3
+ export * from './useSimpleDynamicForm';
@@ -0,0 +1,11 @@
1
+ import { FieldValues } from 'react-hook-form';
2
+ import { FolderFileI, ReportI } from '../../interfaces';
3
+ interface UseDynamicFormI {
4
+ fields: ReportI[];
5
+ onUpload?: (filesByFieldId: Record<string, FolderFileI[]>) => void;
6
+ }
7
+ export declare const useSimpleDynamicForm: ({ fields }: UseDynamicFormI) => {
8
+ form: import("react-hook-form").UseFormReturn<FieldValues, any, undefined>;
9
+ updatedFields: ReportI[];
10
+ };
11
+ export {};
@@ -0,0 +1,36 @@
1
+ import { useEffect } from 'react';
2
+ import { useForm } from 'react-hook-form';
3
+ export const useSimpleDynamicForm = ({ fields }) => {
4
+ const form = useForm();
5
+ const { watch, setValue } = form;
6
+ const fieldValues = watch();
7
+ const parseCurrenyValue = (value) => {
8
+ if (typeof value === 'number')
9
+ return value;
10
+ const justNumbers = value === null || value === void 0 ? void 0 : value.replace(/[^0-9.]/g, '');
11
+ return parseFloat(justNumbers);
12
+ };
13
+ const handleUpdateFields = (field, fieldValues) => {
14
+ var _a;
15
+ const value = fieldValues[field.id];
16
+ const isCurrency = field.type === 'currency';
17
+ const parsedValue = isCurrency ? parseCurrenyValue(value) : value;
18
+ return Object.assign(Object.assign({}, field), { value: parsedValue, children: (_a = field === null || field === void 0 ? void 0 : field.children) === null || _a === void 0 ? void 0 : _a.map((child) => handleUpdateFields(child, fieldValues)) });
19
+ };
20
+ const updatedFields = fields.map((field) => {
21
+ return handleUpdateFields(field, fieldValues);
22
+ });
23
+ const handleSetDefaultValues = (fields) => {
24
+ fields.forEach((field) => {
25
+ setValue(field.id, field.value);
26
+ handleSetDefaultValues(field.children || []);
27
+ });
28
+ };
29
+ useEffect(() => {
30
+ handleSetDefaultValues(fields);
31
+ }, [JSON.stringify(fields)]);
32
+ return {
33
+ form,
34
+ updatedFields,
35
+ };
36
+ };
@@ -7,8 +7,6 @@ export declare const useMyHomeCard: ({ accountType, image }: useMyHomeCardI) =>
7
7
  imageUrl: string;
8
8
  minHeight: string | undefined;
9
9
  minWidth: string | undefined;
10
- type: {
11
- [key: string]: string;
12
- };
10
+ type: Record<string, string>;
13
11
  };
14
12
  export {};
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { ActivateAccount, ActiveSubscription, AddCardBanner, 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, 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, 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, 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';
2
2
  export { useCustomToast } from './hooks';
3
3
  export { billingProxy, dynamicFormProxy, homeCardProxy, partnerContentProxy, partnerDetailsProxy, paymentMethodProxy, recordsInputsProxy, recordsInputsToDBProxy, userDetailsProxy, confirmAddressProxy, } from './proxies';
4
4
  import theme from './theme';
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { ActivateAccount, ActiveSubscription, AddCardBanner, 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, 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, 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, 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';
2
2
  export { useCustomToast } from './hooks';
3
3
  export { billingProxy, dynamicFormProxy, homeCardProxy, partnerContentProxy, partnerDetailsProxy, paymentMethodProxy, recordsInputsProxy, recordsInputsToDBProxy, userDetailsProxy, confirmAddressProxy, } from './proxies';
4
4
  import theme from './theme';
@@ -0,0 +1,12 @@
1
+ import { ReactNode } from 'react';
2
+ import { ReportI } from '..';
3
+ export interface AddEditContactPanelI {
4
+ detailsComponent: ReactNode;
5
+ isEditing?: boolean;
6
+ onBackClick: () => void;
7
+ permissionsComponent: ReactNode;
8
+ }
9
+ export interface ContactFormProxyI {
10
+ fields: ReportI[];
11
+ setFields(fields: ReportI[]): void;
12
+ }
@@ -1,9 +1,21 @@
1
- import { MenuItemI, ShareContactPopoverI } from '..';
1
+ import { MenuItemI, ShareContactPopoverI, ContactAndIndexForm } from '..';
2
+ export interface ContactCompanyInfoI {
3
+ address: string;
4
+ city: string;
5
+ company: string;
6
+ url: string;
7
+ _id: string;
8
+ phone: string;
9
+ state: string;
10
+ zip: string;
11
+ rating?: number;
12
+ }
2
13
  export interface InfoContactCardI {
3
14
  address: string;
4
15
  category: string;
5
16
  city: string;
6
17
  company: string;
18
+ companyInfo?: ContactCompanyInfoI;
7
19
  email: string;
8
20
  firstName: string;
9
21
  _id: string;
@@ -12,11 +24,13 @@ export interface InfoContactCardI {
12
24
  state: string;
13
25
  title: string;
14
26
  zip: string;
27
+ notes?: string;
15
28
  }
16
29
  export interface ContactCardI {
17
30
  apiError?: boolean;
18
31
  contact: InfoContactCardI;
19
32
  index: number;
20
33
  menuItems: MenuItemI[];
34
+ onClick?: (contact: ContactAndIndexForm) => void;
21
35
  onShare: ShareContactPopoverI['onShare'];
22
36
  }
@@ -1,8 +1,9 @@
1
1
  export interface ContactCardInfoI {
2
- company: string;
2
+ company?: string;
3
3
  email: string;
4
4
  firstName: string;
5
5
  index: number;
6
6
  lastName: string;
7
7
  phone: string;
8
+ title?: string;
8
9
  }
@@ -1,5 +1,8 @@
1
1
  import { InfoContactCardI, MenuItemI, ShareContactPopoverI } from '..';
2
2
  import { ReactNode } from 'react';
3
+ export type ContactAndIndexForm = InfoContactCardI & {
4
+ index: number;
5
+ };
3
6
  export interface ContactsContentI {
4
7
  apiError?: boolean;
5
8
  contacts: InfoContactCardI[];
@@ -8,5 +11,6 @@ export interface ContactsContentI {
8
11
  menuItems: MenuItemI[];
9
12
  children?: ReactNode;
10
13
  disabled?: boolean;
14
+ onClick?: (contact: ContactAndIndexForm) => void;
11
15
  onShare: ShareContactPopoverI['onShare'];
12
16
  }
@@ -0,0 +1,9 @@
1
+ import { RoleType } from '../../helpers';
2
+ import { InfoContactCardI, MenuItemI, ShareContactPopoverI } from '..';
3
+ export interface ViewContactPanelI {
4
+ contact: InfoContactCardI;
5
+ handleClose: () => void;
6
+ menuItems: MenuItemI[];
7
+ onShare: ShareContactPopoverI['onShare'];
8
+ roleType: RoleType;
9
+ }
@@ -1,3 +1,4 @@
1
+ export * from './AddEditContactPanel.interface';
1
2
  export * from './ContactCard.interface';
2
3
  export * from './ContactCardAddress.interface';
3
4
  export * from './ContactCardHeader.interface';
@@ -5,3 +6,4 @@ export * from './ContactCardInfo.interface';
5
6
  export * from './ContactsContent.interface';
6
7
  export * from './ShareContactByEmail.interface';
7
8
  export * from './ShareContactPopover.interface';
9
+ export * from './ViewContactPanel.interface';
@@ -1,3 +1,4 @@
1
+ export * from './AddEditContactPanel.interface';
1
2
  export * from './ContactCard.interface';
2
3
  export * from './ContactCardAddress.interface';
3
4
  export * from './ContactCardHeader.interface';
@@ -5,3 +6,4 @@ export * from './ContactCardInfo.interface';
5
6
  export * from './ContactsContent.interface';
6
7
  export * from './ShareContactByEmail.interface';
7
8
  export * from './ShareContactPopover.interface';
9
+ export * from './ViewContactPanel.interface';
@@ -1,23 +1,25 @@
1
1
  import { FolderFileI } from '../..';
2
2
  type KindTypes = 'checkbox' | 'currency' | 'date' | 'email' | 'file' | 'grid' | 'group' | 'number' | 'radio' | 'rating' | 'select' | 'string' | 'switch' | 'telephone' | 'text' | 'textarea' | 'default';
3
- export type IconTypes = 'barcode' | 'battery' | 'billing' | 'book' | 'calc' | 'calendar' | 'check' | 'co2' | 'date' | 'default' | 'detector' | 'electricity' | 'goldbars' | 'heart' | 'image' | 'notes' | 'palette' | 'people' | 'price' | 'rating' | 'receipt' | 'registry' | 'sprinkler' | 'tools' | 'wind' | '68' | 'calendar2' | 'water' | 'calendar-drop' | 'umbrella' | 'heater' | 'roof' | 'foundation' | 'solar-panel' | 'pool' | 'drop' | 'mobile-drop' | 'light' | 'plate' | 'house' | 'target';
3
+ export type IconTypes = 'barcode' | 'battery' | 'billing' | 'book' | 'calc' | 'calendar' | 'check' | 'co2' | 'date' | 'default' | 'detector' | 'electricity' | 'goldbars' | 'heart' | 'image' | 'notes' | 'palette' | 'people' | 'price' | 'rating' | 'receipt' | 'registry' | 'sprinkler' | 'tools' | 'wind' | '68' | 'calendar2' | 'water' | 'calendar-drop' | 'umbrella' | 'heater' | 'roof' | 'foundation' | 'solar-panel' | 'pool' | 'drop' | 'mobile-drop' | 'light' | 'plate' | 'house' | 'target' | 'title' | 'company';
4
4
  export type ValueTypes = string | string[] | number | boolean;
5
5
  export type OptionsTypes = string[] | number[] | null;
6
6
  export interface ReportI {
7
+ canBeHidden?: boolean;
8
+ children?: ReportI[];
9
+ comments?: string;
10
+ description?: string;
11
+ icon?: IconTypes;
7
12
  id: string;
8
13
  name?: string;
9
- description?: string;
10
- comments?: string;
11
- value: ValueTypes;
14
+ options?: OptionsTypes;
12
15
  type: KindTypes;
16
+ value: ValueTypes;
13
17
  visible?: boolean;
14
- options?: OptionsTypes;
15
- children?: ReportI[];
16
- icon?: IconTypes;
17
18
  }
18
19
  export interface DynamicFormI {
19
20
  form: ReportI[];
20
21
  onUpload?: (filesByFieldId: Record<string, FolderFileI[]>) => void;
22
+ showTitle?: boolean;
21
23
  uploadingFieldId?: string;
22
24
  }
23
25
  export interface DynamicFormProxyI {
@@ -0,0 +1,4 @@
1
+ import { ReportI } from '../..';
2
+ export interface SimpleDynamicFormI {
3
+ fields: ReportI[];
4
+ }
@@ -1,5 +1,5 @@
1
1
  export interface FieldWithDeleteI {
2
2
  id: string;
3
3
  onRemove?: (id: string) => void;
4
- isAlwaysVisible?: boolean;
4
+ canBeHidden?: boolean;
5
5
  }
@@ -1,7 +1,7 @@
1
1
  import { DynamicFormI } from '../../..';
2
2
  export interface GroupFieldI {
3
3
  id: string;
4
+ canBeHidden?: boolean;
4
5
  fields?: DynamicFormI['form'];
5
6
  onRemove: (id: string) => void;
6
- visible?: boolean;
7
7
  }
@@ -1,6 +1,6 @@
1
1
  export * from './edit';
2
2
  export * from './fields';
3
3
  export * from './DynamicForm.interface';
4
- export * from './DynamicFormSimple.interface';
4
+ export * from './SimpleDynamicForm.interface';
5
5
  export * from './HiddenField.interface';
6
6
  export * from './HiddenFieldSection.interface';
@@ -1,6 +1,6 @@
1
1
  export * from './edit';
2
2
  export * from './fields';
3
3
  export * from './DynamicForm.interface';
4
- export * from './DynamicFormSimple.interface';
4
+ export * from './SimpleDynamicForm.interface';
5
5
  export * from './HiddenField.interface';
6
6
  export * from './HiddenFieldSection.interface';
@@ -1,3 +1,6 @@
1
1
  export interface ApplianceStepsI {
2
+ addedAppliances?: AppliancesType[];
2
3
  onClick: (selectedSteps: string[]) => void;
3
4
  }
5
+ type AppliancesType = 'fridge' | 'freezer' | 'washer' | 'dryer' | 'dish-washer' | 'cook-top' | 'oven' | 'range' | 'hood' | 'microwave';
6
+ export {};
@@ -1,4 +1,4 @@
1
- import { DynamicFormI } from '..';
1
+ import { DynamicFormI, ReportI } from '..';
2
2
  export interface HomeAssistantPanelI {
3
3
  currentForm: DynamicFormI['form'];
4
4
  currentStep: number;
@@ -6,4 +6,7 @@ export interface HomeAssistantPanelI {
6
6
  onBack: () => void;
7
7
  onClose: () => void;
8
8
  onNext: () => void;
9
+ onSave: (form: ReportI[]) => void;
10
+ backDisabled: boolean;
11
+ nextDisabled: boolean;
9
12
  }
@@ -29,4 +29,5 @@ export interface HomeCardWithRecipentI {
29
29
  recipients?: AssociatedAccountI[];
30
30
  records?: HomeCardRecordsI;
31
31
  disabled?: boolean;
32
+ propertyDisabled?: boolean;
32
33
  }
@@ -7,12 +7,24 @@ export const ContactsMock = [
7
7
  lastName: faker.person.lastName(),
8
8
  email: faker.internet.email(),
9
9
  phone: faker.phone.number(),
10
- company: 'Company 1',
11
- address: '1134 South First Avenue',
12
- zip: '78732',
13
- city: 'Austin',
14
- state: 'TX',
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
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
+ },
16
28
  },
17
29
  {
18
30
  title: 'Pumpler',
@@ -1,2 +1,3 @@
1
1
  import { ReportI } from '../../interfaces';
2
2
  export declare const formFieldsMock: ReportI[];
3
+ export declare const contactFieldsMock: ReportI[];