@homefile/components-v2 2.20.0 → 2.21.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 (33) hide show
  1. package/dist/assets/images/index.d.ts +2 -1
  2. package/dist/assets/images/index.js +2 -1
  3. package/dist/assets/images/index.ts +2 -0
  4. package/dist/assets/images/wallet.svg +18 -0
  5. package/dist/components/homeAssistant/monitorAlerts/alertDetails/AlertFields.js +6 -2
  6. package/dist/components/homeAssistant/monitorAlerts/alertDetails/HireInfo.d.ts +2 -0
  7. package/dist/components/homeAssistant/monitorAlerts/alertDetails/HireInfo.js +5 -0
  8. package/dist/components/homeAssistant/monitorAlerts/alertDetails/HireService.d.ts +2 -0
  9. package/dist/components/homeAssistant/monitorAlerts/alertDetails/HireService.js +26 -0
  10. package/dist/components/homeAssistant/monitorAlerts/alertDetails/PurchaseProduct.js +2 -2
  11. package/dist/components/homeAssistant/monitorAlerts/alertDetails/index.d.ts +2 -0
  12. package/dist/components/homeAssistant/monitorAlerts/alertDetails/index.js +2 -0
  13. package/dist/helpers/forms/dynamicForm.helper.js +2 -1
  14. package/dist/index.d.ts +1 -1
  15. package/dist/index.js +1 -1
  16. package/dist/interfaces/forms/dynamicForm/DynamicForm.interface.d.ts +1 -1
  17. package/dist/interfaces/homeAssistant/BackendAlert.interface.d.ts +1 -1
  18. package/dist/mocks/forms/dynamicForm.mock.js +118 -1
  19. package/dist/stories/assets/Illustrations.stories.js +2 -2
  20. package/package.json +1 -1
  21. package/src/assets/images/index.ts +2 -0
  22. package/src/assets/images/wallet.svg +18 -0
  23. package/src/components/homeAssistant/monitorAlerts/alertDetails/AlertFields.tsx +8 -2
  24. package/src/components/homeAssistant/monitorAlerts/alertDetails/HireInfo.tsx +11 -0
  25. package/src/components/homeAssistant/monitorAlerts/alertDetails/HireService.tsx +92 -0
  26. package/src/components/homeAssistant/monitorAlerts/alertDetails/PurchaseProduct.tsx +2 -5
  27. package/src/components/homeAssistant/monitorAlerts/alertDetails/index.ts +2 -0
  28. package/src/helpers/forms/dynamicForm.helper.ts +2 -0
  29. package/src/index.ts +1 -0
  30. package/src/interfaces/forms/dynamicForm/DynamicForm.interface.ts +1 -0
  31. package/src/interfaces/homeAssistant/BackendAlert.interface.ts +7 -1
  32. package/src/mocks/forms/dynamicForm.mock.ts +119 -1
  33. package/src/stories/assets/Illustrations.stories.tsx +2 -0
@@ -151,6 +151,7 @@ import TreesCrop2 from './trees-crop2.png';
151
151
  import VideoIcon from './video-icon.svg';
152
152
  import VideoPlay from './video-play.svg';
153
153
  import VioletFolder from './violet-folder.svg';
154
+ import Wallet from './wallet.svg';
154
155
  import Warning from './warning.svg';
155
156
  import Warranty from './warranty.svg';
156
157
  import WellDone from './well-done.png';
@@ -162,7 +163,7 @@ import WizardDetailed from './wizard-detailed.svg';
162
163
  import WizardQuick from './wizard-quick.svg';
163
164
  import YellowFolder from './yellow-folder.svg';
164
165
  import YellowFolderUnshared from './yellow-folder-unshared.svg';
165
- export { AlertDelete, AlertDeletePurple, Arrow, Batery, Bathroom, Battery, Battery2, Bedroom, BgBlue, BgLogo, Billing, BillingAddress, BlueFolder, BlueFolderShared, BookOpened, Box, Building, Calc, Calendar2, Catalog, ChatBubble, Check, CheckInCircle, CheckPen, Chemistry, CircleFace, Cleaning, Closet, Clouds, Co2, Company, Company2, ComputerReport, Confirmation, Construction, Contacts, Contacts2, Contributor, Create, CreditCard, Detector, Diamond, DiningRoom, DocIcon, Document, Document2, Drop, DropCalendar, Electricity, Entryway, EstValue, Exclamation, Face, Feedback, FileUploading, FilterSize, Finance, Fire, Flag, FormSent, Foundation, Garage, GearPencil, GearTime, GenericField, GlassWater, GreenFolder, Group, Groups, GuestBedroom, Hallway, HandPencil, Heater, Help, HomeAddress, Homeowner, House, HouseHands, IA, ImageDefault, ImgIcon, Inbox, Insect, Kitchen, Laundry, Light, LivingRoom, Loading, Location, LogoCompany, LogoSmall, MagnifyingGlassReport, Manager, MasterBedroom, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Office, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plate, Play, Plus, Pool, Pool2, PressureWasher, Price, Profile, ProgressReport, Proposal, RealEstate, Receipt, ReceiptBg, ReceiptHouse, Receipts, Recipient, Records, Register, RelationshipHome, ResendPassword, Rocket, Roof2, Security, Send, ShareHome, ShareWith, SixtyEight, SMS, Social, SolarPanel, Speaker, Sprinkler, Structure, Subscription, Target, Temperature, Theatre, Thumbnail, ThumbnailSmall, ThumbUp, Trash, Trees, TreesCrop, TreesCrop2, VideoIcon, VideoPlay, VioletFolder, Warning, Warranty, WellDone, WholeHome, Wind, WindWhite, Wizard, WizardDetailed, WizardQuick, YellowFolder, YellowFolderUnshared, };
166
+ export { AlertDelete, AlertDeletePurple, Arrow, Batery, Bathroom, Battery, Battery2, Bedroom, BgBlue, BgLogo, Billing, BillingAddress, BlueFolder, BlueFolderShared, BookOpened, Box, Building, Calc, Calendar2, Catalog, ChatBubble, Check, CheckInCircle, CheckPen, Chemistry, CircleFace, Cleaning, Closet, Clouds, Co2, Company, Company2, ComputerReport, Confirmation, Construction, Contacts, Contacts2, Contributor, Create, CreditCard, Detector, Diamond, DiningRoom, DocIcon, Document, Document2, Drop, DropCalendar, Electricity, Entryway, EstValue, Exclamation, Face, Feedback, FileUploading, FilterSize, Finance, Fire, Flag, FormSent, Foundation, Garage, GearPencil, GearTime, GenericField, GlassWater, GreenFolder, Group, Groups, GuestBedroom, Hallway, HandPencil, Heater, Help, HomeAddress, Homeowner, House, HouseHands, IA, ImageDefault, ImgIcon, Inbox, Insect, Kitchen, Laundry, Light, LivingRoom, Loading, Location, LogoCompany, LogoSmall, MagnifyingGlassReport, Manager, MasterBedroom, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Office, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plate, Play, Plus, Pool, Pool2, PressureWasher, Price, Profile, ProgressReport, Proposal, RealEstate, Receipt, ReceiptBg, ReceiptHouse, Receipts, Recipient, Records, Register, RelationshipHome, ResendPassword, Rocket, Roof2, Security, Send, ShareHome, ShareWith, SixtyEight, SMS, Social, SolarPanel, Speaker, Sprinkler, Structure, Subscription, Target, Temperature, Theatre, Thumbnail, ThumbnailSmall, ThumbUp, Trash, Trees, TreesCrop, TreesCrop2, VideoIcon, VideoPlay, VioletFolder, Wallet, Warning, Warranty, WellDone, WholeHome, Wind, WindWhite, Wizard, WizardDetailed, WizardQuick, YellowFolder, YellowFolderUnshared, };
166
167
  export * from './alerts';
167
168
  export * from './animations';
168
169
  export * from './appliances';
@@ -151,6 +151,7 @@ import TreesCrop2 from './trees-crop2.png';
151
151
  import VideoIcon from './video-icon.svg';
152
152
  import VideoPlay from './video-play.svg';
153
153
  import VioletFolder from './violet-folder.svg';
154
+ import Wallet from './wallet.svg';
154
155
  import Warning from './warning.svg';
155
156
  import Warranty from './warranty.svg';
156
157
  import WellDone from './well-done.png';
@@ -162,7 +163,7 @@ import WizardDetailed from './wizard-detailed.svg';
162
163
  import WizardQuick from './wizard-quick.svg';
163
164
  import YellowFolder from './yellow-folder.svg';
164
165
  import YellowFolderUnshared from './yellow-folder-unshared.svg';
165
- export { AlertDelete, AlertDeletePurple, Arrow, Batery, Bathroom, Battery, Battery2, Bedroom, BgBlue, BgLogo, Billing, BillingAddress, BlueFolder, BlueFolderShared, BookOpened, Box, Building, Calc, Calendar2, Catalog, ChatBubble, Check, CheckInCircle, CheckPen, Chemistry, CircleFace, Cleaning, Closet, Clouds, Co2, Company, Company2, ComputerReport, Confirmation, Construction, Contacts, Contacts2, Contributor, Create, CreditCard, Detector, Diamond, DiningRoom, DocIcon, Document, Document2, Drop, DropCalendar, Electricity, Entryway, EstValue, Exclamation, Face, Feedback, FileUploading, FilterSize, Finance, Fire, Flag, FormSent, Foundation, Garage, GearPencil, GearTime, GenericField, GlassWater, GreenFolder, Group, Groups, GuestBedroom, Hallway, HandPencil, Heater, Help, HomeAddress, Homeowner, House, HouseHands, IA, ImageDefault, ImgIcon, Inbox, Insect, Kitchen, Laundry, Light, LivingRoom, Loading, Location, LogoCompany, LogoSmall, MagnifyingGlassReport, Manager, MasterBedroom, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Office, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plate, Play, Plus, Pool, Pool2, PressureWasher, Price, Profile, ProgressReport, Proposal, RealEstate, Receipt, ReceiptBg, ReceiptHouse, Receipts, Recipient, Records, Register, RelationshipHome, ResendPassword, Rocket, Roof2, Security, Send, ShareHome, ShareWith, SixtyEight, SMS, Social, SolarPanel, Speaker, Sprinkler, Structure, Subscription, Target, Temperature, Theatre, Thumbnail, ThumbnailSmall, ThumbUp, Trash, Trees, TreesCrop, TreesCrop2, VideoIcon, VideoPlay, VioletFolder, Warning, Warranty, WellDone, WholeHome, Wind, WindWhite, Wizard, WizardDetailed, WizardQuick, YellowFolder, YellowFolderUnshared, };
166
+ export { AlertDelete, AlertDeletePurple, Arrow, Batery, Bathroom, Battery, Battery2, Bedroom, BgBlue, BgLogo, Billing, BillingAddress, BlueFolder, BlueFolderShared, BookOpened, Box, Building, Calc, Calendar2, Catalog, ChatBubble, Check, CheckInCircle, CheckPen, Chemistry, CircleFace, Cleaning, Closet, Clouds, Co2, Company, Company2, ComputerReport, Confirmation, Construction, Contacts, Contacts2, Contributor, Create, CreditCard, Detector, Diamond, DiningRoom, DocIcon, Document, Document2, Drop, DropCalendar, Electricity, Entryway, EstValue, Exclamation, Face, Feedback, FileUploading, FilterSize, Finance, Fire, Flag, FormSent, Foundation, Garage, GearPencil, GearTime, GenericField, GlassWater, GreenFolder, Group, Groups, GuestBedroom, Hallway, HandPencil, Heater, Help, HomeAddress, Homeowner, House, HouseHands, IA, ImageDefault, ImgIcon, Inbox, Insect, Kitchen, Laundry, Light, LivingRoom, Loading, Location, LogoCompany, LogoSmall, MagnifyingGlassReport, Manager, MasterBedroom, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Office, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plate, Play, Plus, Pool, Pool2, PressureWasher, Price, Profile, ProgressReport, Proposal, RealEstate, Receipt, ReceiptBg, ReceiptHouse, Receipts, Recipient, Records, Register, RelationshipHome, ResendPassword, Rocket, Roof2, Security, Send, ShareHome, ShareWith, SixtyEight, SMS, Social, SolarPanel, Speaker, Sprinkler, Structure, Subscription, Target, Temperature, Theatre, Thumbnail, ThumbnailSmall, ThumbUp, Trash, Trees, TreesCrop, TreesCrop2, VideoIcon, VideoPlay, VioletFolder, Wallet, Warning, Warranty, WellDone, WholeHome, Wind, WindWhite, Wizard, WizardDetailed, WizardQuick, YellowFolder, YellowFolderUnshared, };
166
167
  export * from './alerts';
167
168
  export * from './animations';
168
169
  export * from './appliances';
@@ -151,6 +151,7 @@ import TreesCrop2 from './trees-crop2.png'
151
151
  import VideoIcon from './video-icon.svg'
152
152
  import VideoPlay from './video-play.svg'
153
153
  import VioletFolder from './violet-folder.svg'
154
+ import Wallet from './wallet.svg'
154
155
  import Warning from './warning.svg'
155
156
  import Warranty from './warranty.svg'
156
157
  import WellDone from './well-done.png'
@@ -317,6 +318,7 @@ export {
317
318
  VideoIcon,
318
319
  VideoPlay,
319
320
  VioletFolder,
321
+ Wallet,
320
322
  Warning,
321
323
  Warranty,
322
324
  WellDone,
@@ -0,0 +1,18 @@
1
+ <svg id="Grupo_22869" data-name="Grupo 22869" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="35.199" height="39.708" viewBox="0 0 35.199 39.708">
2
+ <defs>
3
+ <clipPath id="clip-path">
4
+ <rect id="Retângulo_26646" data-name="Retângulo 26646" width="35.199" height="39.708" transform="translate(0 0)" fill="none"/>
5
+ </clipPath>
6
+ </defs>
7
+ <g id="Grupo_22868" data-name="Grupo 22868" transform="translate(0 0)" clip-path="url(#clip-path)">
8
+ <path id="Caminho_18397" data-name="Caminho 18397" d="M0,39.93a2.882,2.882,0,0,0,2.882,2.878h.53V65.725h-.53A2.883,2.883,0,0,1,0,62.844Z" transform="translate(0 -26.017)" fill="#323954"/>
9
+ <path id="Caminho_18398" data-name="Caminho 18398" d="M76.372,66.9v8.474H67.431a4.237,4.237,0,1,1,0-8.474Zm-6.363,4.237a1.594,1.594,0,1,0-1.6,1.592,1.593,1.593,0,0,0,1.6-1.592" transform="translate(-41.172 -43.589)" fill="#e24c5d"/>
10
+ <path id="Caminho_18399" data-name="Caminho 18399" d="M75.2,74.49a1.592,1.592,0,1,1-1.592,1.592A1.593,1.593,0,0,1,75.2,74.49" transform="translate(-47.961 -48.535)" fill="#f6cf76"/>
11
+ <path id="Caminho_18400" data-name="Caminho 18400" d="M35.463,48.19h6.115v6.519H32.637a4.237,4.237,0,1,0,0,8.474h8.941v7.924H9.79V48.19H35.463Z" transform="translate(-6.379 -31.399)" fill="#40566b"/>
12
+ <path id="Caminho_18401" data-name="Caminho 18401" d="M2.881,31.65A2.883,2.883,0,0,0,0,34.532v0a2.882,2.882,0,0,0,2.882,2.878H7.8L9.39,34.532l1.585-2.882Z" transform="translate(0.001 -20.622)" fill="#e24c5d"/>
13
+ <path id="Caminho_18402" data-name="Caminho 18402" d="M86.644,31.65l-1.586,2.882L83.47,37.413h6.115V31.65Z" transform="translate(-54.386 -20.622)" fill="#e24c5d"/>
14
+ <path id="Caminho_18403" data-name="Caminho 18403" d="M33.024,3.388l-8.23,14.948h-2.4l1.589-2.882,1.585-2.882,5.617-10.2Z" transform="translate(-14.588 -1.544)" fill="#00c0b7"/>
15
+ <path id="Caminho_18404" data-name="Caminho 18404" d="M49.757,13.91l-1.589,2.882h-2.4l4.4-7.99-10.8-5.944L31.691,16.791h-2.4L37.52,1.843,38.534,0,53.022,7.976l-1.679,3.052Z" transform="translate(-19.084 0)" fill="#00a1aa"/>
16
+ <path id="Caminho_18405" data-name="Caminho 18405" d="M54.65,14.145l-4.4,7.99H36.179L43.852,8.2Z" transform="translate(-23.573 -5.343)" fill="#00c0b7"/>
17
+ </g>
18
+ </svg>
@@ -1,10 +1,10 @@
1
1
  import { createElement as _createElement } from "react";
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { Stack, Text } from '@chakra-ui/react';
4
- import { FilterSize, PurchaseProduct, SearchField, VideoDetail, } from '../../..';
4
+ import { FilterSize, HireInfo, HireService, PurchaseProduct, SearchField, VideoDetail, } from '../../..';
5
5
  import { fieldIcons } from '../../../../helpers';
6
6
  export const AlertFields = ({ fields, callback }) => {
7
- return (_jsx(Stack, { spacing: "base", p: "base", children: fields === null || fields === void 0 ? void 0 : fields.map((field) => {
7
+ return (_jsx(Stack, { spacing: "1", p: "base", children: fields === null || fields === void 0 ? void 0 : fields.map((field) => {
8
8
  const { id, type, value, icon } = field;
9
9
  const mappedIcon = icon && fieldIcons[icon];
10
10
  switch (type) {
@@ -18,6 +18,10 @@ export const AlertFields = ({ fields, callback }) => {
18
18
  return _createElement(SearchField, Object.assign({}, field, { key: id, callback: callback }));
19
19
  case 'purchase-product':
20
20
  return _createElement(PurchaseProduct, Object.assign({}, field, { key: id, callback: callback }));
21
+ case 'hire-info':
22
+ return _createElement(HireInfo, Object.assign({}, field, { key: id, icon: mappedIcon }));
23
+ case 'hire-service':
24
+ return _createElement(HireService, Object.assign({}, field, { key: id, callback: callback }));
21
25
  default:
22
26
  return null;
23
27
  }
@@ -0,0 +1,2 @@
1
+ import { ReportI } from '../../../../interfaces';
2
+ export declare const HireInfo: ({ name, icon, value }: ReportI) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Flex, Image, Text } from '@chakra-ui/react';
3
+ export const HireInfo = ({ name, icon, value }) => {
4
+ return (_jsxs(Flex, { bg: "lightBlue.2", gap: "base", p: "base", mx: "-base", children: [_jsx(Image, { boxSize: "40px", src: icon, alt: name }), _jsx(Text, { children: value })] }));
5
+ };
@@ -0,0 +1,2 @@
1
+ import { FieldTypesI, ReportI } from '../../../../interfaces';
2
+ export declare const HireService: ({ description, name, label, icon, comments, value, callback, children, ...rest }: ReportI & Pick<FieldTypesI, "callback">) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,26 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { CustomBadge, Plus, Calendar } from '../../..';
14
+ import { colors } from '../../../../theme/colors';
15
+ import { Box, Container, Flex, IconButton, Image, Text, } from '@chakra-ui/react';
16
+ export const HireService = (_a) => {
17
+ var { description, name, label, icon, comments, value, callback, children } = _a, rest = __rest(_a, ["description", "name", "label", "icon", "comments", "value", "callback", "children"]);
18
+ const ctaIcon = {
19
+ plus: _jsx(Plus, { stroke: colors.blue[3] }),
20
+ calendar: _jsx(Calendar, { stroke: colors.blue[3] }),
21
+ };
22
+ return (_jsxs(Container, { p: "base", position: "relative", boxShadow: "md", children: [_jsx(CustomBadge, { label: label, bg: "#77C100", position: "absolute", top: "2", left: "-1", zIndex: "3" }), _jsxs(Flex, { gap: "base", ml: "10", align: "center", children: [_jsx(Image, { src: icon, alt: name, objectFit: "contain", w: "70px", h: "70px" }), _jsxs(Flex, { align: "end", justify: "space-between", w: "100%", children: [_jsxs(Box, { children: [_jsx(Text, { fontWeight: "semibold", fontSize: "sm", noOfLines: 2, overflow: "hidden", textOverflow: "ellipsis", children: name }), _jsx(Text, { fontSize: "sm", fontFamily: "secondary", lineHeight: "1.2", children: description }), _jsx(Text, { fontSize: "sm", fontFamily: "secondary", lineHeight: "1.2", children: comments }), _jsx(Text, { fontSize: "sm", fontFamily: "secondary", color: "blue.2", lineHeight: "1.2", children: value })] }), _jsx(Flex, { gap: "2", children: children === null || children === void 0 ? void 0 : children.map((child) => {
23
+ const { id, icon, label = '' } = child;
24
+ return (_jsx(IconButton, { w: "2rem", h: "2rem", "aria-label": label, variant: "iconOutlined", icon: ctaIcon[icon] || _jsx(Plus, {}), onClick: () => callback === null || callback === void 0 ? void 0 : callback(Object.assign(Object.assign({}, child), { value: String(child.value) })) }, id));
25
+ }) })] })] })] }));
26
+ };
@@ -12,7 +12,7 @@ var __rest = (this && this.__rest) || function (s, e) {
12
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
13
  import { CustomBadge, Plus } from '../../..';
14
14
  import { colors } from '../../../../theme/colors';
15
- import { AspectRatio, Container, Flex, IconButton, Image, Stack, Text, } from '@chakra-ui/react';
15
+ import { Container, Flex, IconButton, Image, Stack, Text, } from '@chakra-ui/react';
16
16
  export const PurchaseProduct = (_a) => {
17
17
  var _b;
18
18
  var { name, label, icon, comments, value, callback } = _a, rest = __rest(_a, ["name", "label", "icon", "comments", "value", "callback"]);
@@ -22,5 +22,5 @@ export const PurchaseProduct = (_a) => {
22
22
  good: '#5C81C7',
23
23
  };
24
24
  const bg = bgs[(_b = label === null || label === void 0 ? void 0 : label.toLowerCase()) !== null && _b !== void 0 ? _b : 'best'];
25
- return (_jsxs(Container, { p: "base", position: "relative", boxShadow: "md", children: [_jsx(CustomBadge, { label: label, bg: bg, position: "absolute", top: "2", left: "-1", zIndex: "3" }), _jsxs(Flex, { gap: "base", ml: "6", children: [_jsx(AspectRatio, { ratio: 1, minW: "70px", h: "auto", children: _jsx(Image, { src: icon, alt: name, objectFit: "cover", w: "100%", h: "100%" }) }), _jsxs(Stack, { spacing: "0", children: [_jsx(Text, { fontWeight: "semibold", fontSize: "sm", noOfLines: 2, overflow: "hidden", textOverflow: "ellipsis", children: name }), _jsxs(Flex, { alignSelf: "end", gap: "base", align: "center", children: [_jsxs(Stack, { spacing: "0", align: "end", children: [_jsx(Text, { fontSize: "xs", fontFamily: "secondary", color: "red", children: comments }), _jsx(Text, { fontSize: "sm", fontWeight: "bold", lineHeight: "1.2", children: value })] }), _jsx(IconButton, { w: "2rem", h: "2rem", "aria-label": "Add product", variant: "iconOutlined", icon: _jsx(Plus, { size: 20, stroke: colors.blue['3'] }), onClick: () => callback === null || callback === void 0 ? void 0 : callback(Object.assign({ name, icon, value: String(value) }, rest)) })] })] })] })] }));
25
+ return (_jsxs(Container, { p: "base", position: "relative", boxShadow: "md", children: [_jsx(CustomBadge, { label: label, bg: bg, position: "absolute", top: "2", left: "-1", zIndex: "3" }), _jsxs(Flex, { gap: "base", ml: "6", children: [_jsx(Image, { src: icon, alt: name, objectFit: "contain", w: "70px", h: "70px" }), _jsxs(Stack, { spacing: "0", children: [_jsx(Text, { fontWeight: "semibold", fontSize: "sm", noOfLines: 2, overflow: "hidden", textOverflow: "ellipsis", children: name }), _jsxs(Flex, { alignSelf: "end", gap: "base", align: "end", children: [_jsxs(Stack, { spacing: "0", align: "end", children: [_jsx(Text, { fontSize: "xs", fontFamily: "secondary", color: "red", children: comments }), _jsx(Text, { fontSize: "sm", fontWeight: "bold", lineHeight: "1.2", children: value })] }), _jsx(IconButton, { w: "2rem", h: "2rem", "aria-label": "Add product", variant: "iconOutlined", icon: _jsx(Plus, { size: 20, stroke: colors.blue['3'] }), onClick: () => callback === null || callback === void 0 ? void 0 : callback(Object.assign({ name, icon, value: String(value) }, rest)) })] })] })] })] }));
26
26
  };
@@ -2,6 +2,8 @@ export * from './AlertFields';
2
2
  export * from './ChangeAirFilter';
3
3
  export * from './CustomDivider';
4
4
  export * from './FilterSize';
5
+ export * from './HireInfo';
6
+ export * from './HireService';
5
7
  export * from './PurchaseProduct';
6
8
  export * from './SearchField';
7
9
  export * from './SmokeDetectorBattery';
@@ -2,6 +2,8 @@ export * from './AlertFields';
2
2
  export * from './ChangeAirFilter';
3
3
  export * from './CustomDivider';
4
4
  export * from './FilterSize';
5
+ export * from './HireInfo';
6
+ export * from './HireService';
5
7
  export * from './PurchaseProduct';
6
8
  export * from './SearchField';
7
9
  export * from './SmokeDetectorBattery';
@@ -1,4 +1,4 @@
1
- import { Paint, Receipt, Barcode, GoldenBars, Heart, Rating, Notes, Book, ImgIcon, Registry, ShareWith, Calendar, Contacts, 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, Pressure, WindowCleaning, RoofCleaning, HolidayLights, GutterCleaning, HomeCleaning, HouseWashing, PressureWasher, BookOpened, Company2, AADisease, AADressing, AALawn, AAMowing, AAWeed, AApest, FilterSize, } from '../../assets/images';
1
+ import { Paint, Receipt, Barcode, GoldenBars, Heart, Rating, Notes, Book, ImgIcon, Registry, ShareWith, Calendar, Contacts, 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, Pressure, WindowCleaning, RoofCleaning, HolidayLights, GutterCleaning, HomeCleaning, HouseWashing, PressureWasher, BookOpened, Company2, AADisease, AADressing, AALawn, AAMowing, AAWeed, AApest, FilterSize, Wallet, } from '../../assets/images';
2
2
  export const fieldIcons = {
3
3
  barcode: Barcode,
4
4
  billing: Billing,
@@ -46,6 +46,7 @@ export const fieldIcons = {
46
46
  target: Target,
47
47
  title: CircleFace,
48
48
  company: Company2,
49
+ wallet: Wallet,
49
50
  'sh-gutter': GutterCleaning,
50
51
  'sh-home': HomeCleaning,
51
52
  'sh-house': HouseWashing,
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, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, Dialog, 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, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeMonitor, HomeMonitorSteps, HomeSharedWith, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessagePanel, MessageChatPanel, MonitorAlerts, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, NotificationsReminder, NotificationsPanel, NotificationCard, 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, SkeletonBox, 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, WeatherWidget, WellDone, YtdTile, } from './components';
1
+ export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BackendAlert, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, Dialog, 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, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeMonitor, HomeMonitorSteps, HomeSharedWith, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessagePanel, MessageChatPanel, MonitorAlerts, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, NotificationsReminder, NotificationsPanel, NotificationCard, 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, SkeletonBox, 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, WeatherWidget, WellDone, YtdTile, } from './components';
2
2
  export { useCustomToast } from './hooks';
3
3
  export { randomColor, mapApiObjectToFormFields, mapForecastToWidget, } from './utils';
4
4
  export { Contacts, MagnifyingGlassReport, Message, Register, Receipts, Price, BlueFolderShared, Calendar, Create, Notes, } from './assets/images';
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, Dialog, 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, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeMonitor, HomeMonitorSteps, HomeSharedWith, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessagePanel, MessageChatPanel, MonitorAlerts, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, NotificationsReminder, NotificationsPanel, NotificationCard, 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, SkeletonBox, 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, WeatherWidget, WellDone, YtdTile, } from './components';
1
+ export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BackendAlert, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, Dialog, 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, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeMonitor, HomeMonitorSteps, HomeSharedWith, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessagePanel, MessageChatPanel, MonitorAlerts, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, NotificationsReminder, NotificationsPanel, NotificationCard, 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, SkeletonBox, 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, WeatherWidget, WellDone, YtdTile, } from './components';
2
2
  export { useCustomToast } from './hooks';
3
3
  export { randomColor, mapApiObjectToFormFields, mapForecastToWidget, } from './utils';
4
4
  export { Contacts, MagnifyingGlassReport, Message, Register, Receipts, Price, BlueFolderShared, Calendar, Create, Notes, } from './assets/images';
@@ -2,7 +2,7 @@ import { AIGridFieldI, AlertFieldType, AlertTabType, FolderFileI, MenuItemI, Par
2
2
  export type KindTypes = 'ai-image' | 'ai-grid' | 'checkbox' | 'checkbox-agreement' | 'checkbox-group' | 'currency' | 'date' | 'email' | 'file' | 'grid' | 'group' | 'hidden' | 'notes' | 'number' | 'radio' | 'rating' | 'select' | 'string' | 'switch' | 'telephone' | 'text' | 'textarea' | 'default' | 'video' | UIKindTypes | HomeItemTypes | AlertTabType | AlertFieldType;
3
3
  export type UIKindTypes = 'tile-body' | 'tile-body-logo' | 'tile-body-header' | 'tile-body-section' | 'tile-body-section-grid' | 'tile-body-partner-image' | 'tile-body-description' | 'tile-form' | 'tile-body-action' | 'vertical-icon' | 'primary-cta' | 'secondary-cta';
4
4
  export type HomeItemTypes = 'appliances' | 'images' | 'guidelines' | 'item-related' | 'item-icon-btn';
5
- export type IconTypes = 'barcode' | 'battery' | 'billing' | 'book' | 'book-opened' | 'calc' | 'calendar' | 'check' | 'co2' | 'contact' | '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' | 'pressure-washer' | 'house' | 'target' | 'title' | 'company' | UIIconTypes;
5
+ export type IconTypes = 'barcode' | 'battery' | 'billing' | 'book' | 'book-opened' | 'calc' | 'calendar' | 'check' | 'co2' | 'contact' | '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' | 'pressure-washer' | 'house' | 'target' | 'title' | 'company' | 'wallet' | UIIconTypes;
6
6
  export type UIIconTypes = 'sh-pressure' | 'sh-window' | 'sh-roof' | 'sh-lights' | 'sh-gutter' | 'sh-home' | 'sh-house' | 'aa-mowing' | 'aa-fertilization' | 'aa-disease' | 'aa-weed' | 'aa-dressing' | 'aa-pest' | 'filter-size' | string;
7
7
  export type ValueTypes = string | string[] | number | boolean;
8
8
  export type OptionsTypes = string[] | number[] | null;
@@ -1,7 +1,7 @@
1
1
  import { DynamicFormI } from '..';
2
2
  export type AlertCategory = 'safeguard' | 'maintain' | 'budget' | 'improve';
3
3
  export type AlertTabType = 'details' | 'filter-size' | 'purchase' | 'hire-out';
4
- export type AlertFieldType = 'alert' | 'search' | 'purchase-product';
4
+ export type AlertFieldType = 'alert' | 'search' | 'purchase-product' | 'hire-info' | 'hire-service' | 'hire-service-cta';
5
5
  export interface BackendAlertI extends DynamicFormI {
6
6
  category: AlertCategory;
7
7
  }
@@ -979,7 +979,124 @@ export const alertFieldsMock = [
979
979
  value: faker.image.urlPicsumPhotos(),
980
980
  type: 'hire-out',
981
981
  visible: true,
982
- children: [],
982
+ children: [
983
+ {
984
+ id: faker.database.mongodbObjectId(),
985
+ name: '',
986
+ label: '',
987
+ description: '',
988
+ icon: 'wallet',
989
+ comments: '',
990
+ value: 'Average cost for this service range from $100-125 in your area, including filter.',
991
+ type: 'hire-info',
992
+ visible: true,
993
+ },
994
+ {
995
+ id: faker.database.mongodbObjectId(),
996
+ name: 'Bobs Heating & Cooling',
997
+ label: 'match',
998
+ description: 'Jerry Marks',
999
+ icon: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRlUXEpc3FdoRVmQoYvmAttMwG2dzvBz49oGg&s',
1000
+ comments: '512-650-3030',
1001
+ value: 'JerryM@BobsHTC.com',
1002
+ type: 'hire-service',
1003
+ visible: true,
1004
+ children: [
1005
+ {
1006
+ id: faker.database.mongodbObjectId(),
1007
+ name: 'Bobs Heating & Cooling - add service',
1008
+ label: '',
1009
+ description: '',
1010
+ icon: 'plus',
1011
+ comments: '',
1012
+ value: '',
1013
+ type: 'hire-service-cta',
1014
+ visible: true,
1015
+ },
1016
+ {
1017
+ id: faker.database.mongodbObjectId(),
1018
+ name: 'Bobs Heating & Cooling - schedule service',
1019
+ label: '',
1020
+ description: '',
1021
+ icon: 'calendar',
1022
+ comments: '',
1023
+ value: '',
1024
+ type: 'hire-service-cta',
1025
+ visible: true,
1026
+ },
1027
+ ],
1028
+ },
1029
+ {
1030
+ id: faker.database.mongodbObjectId(),
1031
+ name: 'Sears Home Services',
1032
+ label: 'match',
1033
+ description: 'Mark Jones',
1034
+ icon: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTJU3pPD1SFxFnAuaOkoHR36lcVNmoP39USqA&s',
1035
+ comments: '512-354-6584',
1036
+ value: 'MarkJones@searssvc.com',
1037
+ type: 'hire-service',
1038
+ visible: true,
1039
+ children: [
1040
+ {
1041
+ id: faker.database.mongodbObjectId(),
1042
+ name: 'Sears Home Services - add service',
1043
+ label: '',
1044
+ description: '',
1045
+ icon: 'plus',
1046
+ comments: '',
1047
+ value: '',
1048
+ type: 'hire-service-cta',
1049
+ visible: true,
1050
+ },
1051
+ {
1052
+ id: faker.database.mongodbObjectId(),
1053
+ name: 'Sears Home Services - schedule service',
1054
+ label: '',
1055
+ description: '',
1056
+ icon: 'calendar',
1057
+ comments: '',
1058
+ value: '',
1059
+ type: 'hire-service-cta',
1060
+ visible: true,
1061
+ },
1062
+ ],
1063
+ },
1064
+ {
1065
+ id: faker.database.mongodbObjectId(),
1066
+ name: 'Airco Mechanical',
1067
+ label: 'match',
1068
+ description: 'Chris Rodriquez',
1069
+ icon: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRWZ_hk6-7mpzQG2ZSQTu0XV2FiMF4AYkT4Wg&s',
1070
+ comments: '512-888-5454',
1071
+ value: 'ChrisR@airco.com',
1072
+ type: 'hire-service',
1073
+ visible: true,
1074
+ children: [
1075
+ {
1076
+ id: faker.database.mongodbObjectId(),
1077
+ name: 'Airco Mechanical - add service',
1078
+ label: '',
1079
+ description: '',
1080
+ icon: 'plus',
1081
+ comments: '',
1082
+ value: '',
1083
+ type: 'hire-service-cta',
1084
+ visible: true,
1085
+ },
1086
+ {
1087
+ id: faker.database.mongodbObjectId(),
1088
+ name: 'Airco Mechanical - schedule service',
1089
+ label: '',
1090
+ description: '',
1091
+ icon: 'calendar',
1092
+ comments: '',
1093
+ value: '',
1094
+ type: 'hire-service-cta',
1095
+ visible: true,
1096
+ },
1097
+ ],
1098
+ },
1099
+ ],
983
1100
  },
984
1101
  ],
985
1102
  },
@@ -1,12 +1,12 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Center, Grid, Image, Text } from '@chakra-ui/react';
3
- import { AlertDelete, AlertDeletePurple, Arrow, Balustrades, Barcode, Batery, Bathroom, Battery, Battery2, Bedding, Bedroom, Billing, BillingAddress, BlueFolder, BlueFolderShared, Book, Box as BoxIcon, Building, Calc, Calendar, Calendar2, Catalog, Check, CheckInCircle, CheckPen, Chemistry, CircleFace, Cleaning, Closet, Co2, Company, ComputerReport, Confirmation, Construction, Contacts, Contacts2, Contributor, Cookware, Countertops, CreditCard, Detector, Diamond, DiningRoom, DocIcon, Document, Document2, Doors, Drop, DropCalendar, Electricity, Electronics, Entryway, EstValue, Equipment, Exclamation, Exterior, Face, Feedback, FileUploading, Finance, Fire, Flag, Flooring, FormSent, Foundation, Furniture, Garage, GearPencil, GearTime, GenericField, GlassWater, GoldenBars, GreenFolder, Group, Groups, GuestBedroom, Hallway, HandPencil, Hardware, Heart, Heater, Help, HomeAddress, Homeowner, House, HouseHands, IA, ImageDefault, ImgIcon, Inbox, Insect, Kitchen, LargeAppliances, Laundry, Light, Lighting, LivingRoom, LogoSmall, MagnifyingGlassReport, Manager, MasterBedroom, Mattress, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Notes, Office, Paint, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plants, Plate, Play, Plus, Pool, Pool2, PressureWasher, Porch, Price, Profile, ProgressReport, Proposal, Rating, RealEstate, Receipt, ReceiptBg, ReceiptHouse, Receipts, Recipient, Records, Register, Registry, RelationshipHome, ResendPassword, Rocket, Roof, Roof2, Security, Send, ShareHome, ShareWith, SixtyEight, SMS, Social, SmallAppliances, SolarPanel, Speaker, Sprinkler, Steps, Structure, Structures, Subscription, Supplies, Table, Target, Temperature, Theatre, Thumbnail, ThumbnailSmall, ThumbUp, Tile, Tools, Tools2, Trash, Utensils, VideoIcon, VideoPlay, VioletFolder, WallDecor, Warning, Warranty, Water, WellDone, WholeHome, Wind, Window, Wizard, WizardDetailed, WizardQuick, YellowFolder, YellowFolderUnshared, BookOpened, Company2, } from '../../assets/images';
3
+ import { AlertDelete, AlertDeletePurple, Arrow, Balustrades, Barcode, Batery, Bathroom, Battery, Battery2, Bedding, Bedroom, Billing, BillingAddress, BlueFolder, BlueFolderShared, Book, Box as BoxIcon, Building, Calc, Calendar, Calendar2, Catalog, Check, CheckInCircle, CheckPen, Chemistry, CircleFace, Cleaning, Closet, Co2, Company, ComputerReport, Confirmation, Construction, Contacts, Contacts2, Contributor, Cookware, Countertops, CreditCard, Detector, Diamond, DiningRoom, DocIcon, Document, Document2, Doors, Drop, DropCalendar, Electricity, Electronics, Entryway, EstValue, Equipment, Exclamation, Exterior, Face, Feedback, FileUploading, Finance, Fire, Flag, Flooring, FormSent, Foundation, Furniture, Garage, GearPencil, GearTime, GenericField, GlassWater, GoldenBars, GreenFolder, Group, Groups, GuestBedroom, Hallway, HandPencil, Hardware, Heart, Heater, Help, HomeAddress, Homeowner, House, HouseHands, IA, ImageDefault, ImgIcon, Inbox, Insect, Kitchen, LargeAppliances, Laundry, Light, Lighting, LivingRoom, LogoSmall, MagnifyingGlassReport, Manager, MasterBedroom, Mattress, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Notes, Office, Paint, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plants, Plate, Play, Plus, Pool, Pool2, PressureWasher, Porch, Price, Profile, ProgressReport, Proposal, Rating, RealEstate, Receipt, ReceiptBg, ReceiptHouse, Receipts, Recipient, Records, Register, Registry, RelationshipHome, ResendPassword, Rocket, Roof, Roof2, Security, Send, ShareHome, ShareWith, SixtyEight, SMS, Social, SmallAppliances, SolarPanel, Speaker, Sprinkler, Steps, Structure, Structures, Subscription, Supplies, Table, Target, Temperature, Theatre, Thumbnail, ThumbnailSmall, ThumbUp, Tile, Tools, Tools2, Trash, Utensils, VideoIcon, VideoPlay, VioletFolder, WallDecor, Wallet, Warning, Warranty, Water, WellDone, WholeHome, Wind, Window, Wizard, WizardDetailed, WizardQuick, YellowFolder, YellowFolderUnshared, BookOpened, Company2, } from '../../assets/images';
4
4
  import { CookTop, Dishwasher, Dryer, Freezer, Fridge, Microwave, Oven, Range, Washer, } from '../../assets/images/appliances';
5
5
  export default {
6
6
  title: 'Assets/Illustrations',
7
7
  };
8
8
  export const Illustrations = () => {
9
- return (_jsxs(Grid, { maxW: "600px", templateColumns: "repeat(auto-fill, minmax(75px, 1fr))", p: "base", gap: "8", children: [_jsx(IconWrapper, { icon: CookTop, name: "CookTop" }), _jsx(IconWrapper, { icon: Dishwasher, name: "Dishwasher" }), _jsx(IconWrapper, { icon: Dryer, name: "Dryer" }), _jsx(IconWrapper, { icon: Freezer, name: "Freezer" }), _jsx(IconWrapper, { icon: Fridge, name: "Fridge" }), _jsx(IconWrapper, { icon: Microwave, name: "Microwave" }), _jsx(IconWrapper, { icon: Oven, name: "Oven" }), _jsx(IconWrapper, { icon: Range, name: "Range" }), _jsx(IconWrapper, { icon: Washer, name: "Washer" }), _jsx(IconWrapper, { icon: Barcode, name: "Barcode" }), _jsx(IconWrapper, { icon: Book, name: "Book" }), _jsx(IconWrapper, { icon: Calendar, name: "Calendar" }), _jsx(IconWrapper, { icon: GoldenBars, name: "GoldenBars" }), _jsx(IconWrapper, { icon: Heart, name: "Heart" }), _jsx(IconWrapper, { icon: Notes, name: "Notes" }), _jsx(IconWrapper, { icon: Rating, name: "Rating" }), _jsx(IconWrapper, { icon: Registry, name: "Registry" }), _jsx(IconWrapper, { icon: Tools2, name: "Tools2" }), _jsx(IconWrapper, { icon: Balustrades, name: "Balustrades" }), _jsx(IconWrapper, { icon: Bedding, name: "Bedding" }), _jsx(IconWrapper, { icon: Cookware, name: "Cookware" }), _jsx(IconWrapper, { icon: Countertops, name: "Countertops" }), _jsx(IconWrapper, { icon: Doors, name: "Doors" }), _jsx(IconWrapper, { icon: Electronics, name: "Electronics" }), _jsx(IconWrapper, { icon: Equipment, name: "Equipment" }), _jsx(IconWrapper, { icon: Exterior, name: "Exterior" }), _jsx(IconWrapper, { icon: Fire, name: "Fire" }), _jsx(IconWrapper, { icon: Flooring, name: "Flooring" }), _jsx(IconWrapper, { icon: Furniture, name: "Furniture" }), _jsx(IconWrapper, { icon: Hardware, name: "Hardware" }), _jsx(IconWrapper, { icon: LargeAppliances, name: "LargeAppliances" }), _jsx(IconWrapper, { icon: Lighting, name: "Lighting" }), _jsx(IconWrapper, { icon: Mattress, name: "Mattress" }), _jsx(IconWrapper, { icon: Paint, name: "Paint" }), _jsx(IconWrapper, { icon: Plants, name: "Plants" }), _jsx(IconWrapper, { icon: Porch, name: "Porch" }), _jsx(IconWrapper, { icon: Roof, name: "Roof" }), _jsx(IconWrapper, { icon: SmallAppliances, name: "SmallAppliances" }), _jsx(IconWrapper, { icon: Steps, name: "Steps" }), _jsx(IconWrapper, { icon: Structures, name: "Structures" }), _jsx(IconWrapper, { icon: Supplies, name: "Supplies" }), _jsx(IconWrapper, { icon: Table, name: "Table" }), _jsx(IconWrapper, { icon: Temperature, name: "Temperature" }), _jsx(IconWrapper, { icon: Tile, name: "Tile" }), _jsx(IconWrapper, { icon: Tools, name: "Tools" }), _jsx(IconWrapper, { icon: Utensils, name: "Utensils" }), _jsx(IconWrapper, { icon: WallDecor, name: "WallDecor" }), _jsx(IconWrapper, { icon: Water, name: "Water" }), _jsx(IconWrapper, { icon: Window, name: "Window" }), _jsx(IconWrapper, { icon: AlertDelete, name: "AlertDelete" }), _jsx(IconWrapper, { icon: AlertDeletePurple, name: "AlertDeletePurple" }), _jsx(IconWrapper, { icon: Arrow, name: "Arrow" }), _jsx(IconWrapper, { icon: Batery, name: "Batery" }), _jsx(IconWrapper, { icon: Bathroom, name: "Bathroom" }), _jsx(IconWrapper, { icon: Battery, name: "Battery" }), _jsx(IconWrapper, { icon: Battery2, name: "Battery2" }), _jsx(IconWrapper, { icon: Bedroom, name: "Bedroom" }), _jsx(IconWrapper, { icon: Billing, name: "Billing" }), _jsx(IconWrapper, { icon: BillingAddress, name: "BillingAddress" }), _jsx(IconWrapper, { icon: BlueFolder, name: "BlueFolder" }), _jsx(IconWrapper, { icon: BlueFolderShared, name: "BlueFolderShared" }), _jsx(IconWrapper, { icon: BookOpened, name: "BookOpened" }), _jsx(IconWrapper, { icon: BoxIcon, name: "Box" }), _jsx(IconWrapper, { icon: Building, name: "Building" }), _jsx(IconWrapper, { icon: Calc, name: "Calc" }), _jsx(IconWrapper, { icon: Calendar2, name: "Calendar2" }), _jsx(IconWrapper, { icon: Catalog, name: "Catalog" }), _jsx(IconWrapper, { icon: Check, name: "Check" }), _jsx(IconWrapper, { icon: CheckInCircle, name: "CheckInCircle" }), _jsx(IconWrapper, { icon: CheckPen, name: "CheckPen" }), _jsx(IconWrapper, { icon: Chemistry, name: "Chemistry" }), _jsx(IconWrapper, { icon: CircleFace, name: "CircleFace" }), _jsx(IconWrapper, { icon: Cleaning, name: "Cleaning" }), _jsx(IconWrapper, { icon: Closet, name: "Closet" }), _jsx(IconWrapper, { icon: Co2, name: "Co2" }), _jsx(IconWrapper, { icon: Company, name: "Company" }), _jsx(IconWrapper, { icon: Company2, name: "Company2" }), _jsx(IconWrapper, { icon: ComputerReport, name: "ComputerReport" }), _jsx(IconWrapper, { icon: Confirmation, name: "Confirmation" }), _jsx(IconWrapper, { icon: Construction, name: "Construction" }), _jsx(IconWrapper, { icon: Contacts, name: "Contacts" }), _jsx(IconWrapper, { icon: Contacts2, name: "Contacts2" }), _jsx(IconWrapper, { icon: Contributor, name: "Contributor" }), _jsx(IconWrapper, { icon: CreditCard, name: "CreditCard" }), _jsx(IconWrapper, { icon: Detector, name: "Detector" }), _jsx(IconWrapper, { icon: Diamond, name: "Diamond" }), _jsx(IconWrapper, { icon: DiningRoom, name: "DiningRoom" }), _jsx(IconWrapper, { icon: DocIcon, name: "DocIcon" }), _jsx(IconWrapper, { icon: Document, name: "Document" }), _jsx(IconWrapper, { icon: Document2, name: "Document2" }), _jsx(IconWrapper, { icon: Drop, name: "Drop" }), _jsx(IconWrapper, { icon: DropCalendar, name: "DropCalendar" }), _jsx(IconWrapper, { icon: Electricity, name: "Electricity" }), _jsx(IconWrapper, { icon: Entryway, name: "Entryway" }), _jsx(IconWrapper, { icon: EstValue, name: "EstValue" }), _jsx(IconWrapper, { icon: Exclamation, name: "Exclamation" }), _jsx(IconWrapper, { icon: Face, name: "Face" }), _jsx(IconWrapper, { icon: Feedback, name: "Feedback" }), _jsx(IconWrapper, { icon: FileUploading, name: "FileUploading" }), _jsx(IconWrapper, { icon: Finance, name: "Finance" }), _jsx(IconWrapper, { icon: Flag, name: "Flag" }), _jsx(IconWrapper, { icon: FormSent, name: "FormSent" }), _jsx(IconWrapper, { icon: Foundation, name: "Foundation" }), _jsx(IconWrapper, { icon: Garage, name: "Garage" }), _jsx(IconWrapper, { icon: GearPencil, name: "GearPencil" }), _jsx(IconWrapper, { icon: GearTime, name: "GearTime" }), _jsx(IconWrapper, { icon: GenericField, name: "GenericField" }), _jsx(IconWrapper, { icon: GlassWater, name: "GlassWater" }), _jsx(IconWrapper, { icon: GreenFolder, name: "GreenFolder" }), _jsx(IconWrapper, { icon: Group, name: "Group" }), _jsx(IconWrapper, { icon: Groups, name: "Groups" }), _jsx(IconWrapper, { icon: GuestBedroom, name: "GuestBedroom" }), _jsx(IconWrapper, { icon: Hallway, name: "Hallway" }), _jsx(IconWrapper, { icon: HandPencil, name: "HandPencil" }), _jsx(IconWrapper, { icon: Heater, name: "Heater" }), _jsx(IconWrapper, { icon: Help, name: "Help" }), _jsx(IconWrapper, { icon: HomeAddress, name: "HomeAddress" }), _jsx(IconWrapper, { icon: Homeowner, name: "Homeowner" }), _jsx(IconWrapper, { icon: House, name: "House" }), _jsx(IconWrapper, { icon: HouseHands, name: "HouseHands" }), _jsx(IconWrapper, { icon: IA, name: "IA" }), _jsx(IconWrapper, { icon: ImageDefault, name: "ImageDefault" }), _jsx(IconWrapper, { icon: ImgIcon, name: "ImgIcon" }), _jsx(IconWrapper, { icon: Inbox, name: "Inbox" }), _jsx(IconWrapper, { icon: Insect, name: "Insect" }), _jsx(IconWrapper, { icon: Kitchen, name: "Kitchen" }), _jsx(IconWrapper, { icon: Laundry, name: "Laundry" }), _jsx(IconWrapper, { icon: Light, name: "Light" }), _jsx(IconWrapper, { icon: LivingRoom, name: "LivingRoom" }), _jsx(IconWrapper, { icon: LogoSmall, name: "LogoSmall" }), _jsx(IconWrapper, { icon: MagnifyingGlassReport, name: "MagnifyingGlassReport" }), _jsx(IconWrapper, { icon: Manager, name: "Manager" }), _jsx(IconWrapper, { icon: MasterBedroom, name: "MasterBedroom" }), _jsx(IconWrapper, { icon: Member, name: "Member" }), _jsx(IconWrapper, { icon: Message, name: "Message" }), _jsx(IconWrapper, { icon: MobileDrop, name: "MobileDrop" }), _jsx(IconWrapper, { icon: Money, name: "Money" }), _jsx(IconWrapper, { icon: Mudroom, name: "Mudroom" }), _jsx(IconWrapper, { icon: NeedHelp, name: "NeedHelp" }), _jsx(IconWrapper, { icon: Office, name: "Office" }), _jsx(IconWrapper, { icon: Painting, name: "Painting" }), _jsx(IconWrapper, { icon: PartnerGeneric, name: "PartnerGeneric" }), _jsx(IconWrapper, { icon: Patio, name: "Patio" }), _jsx(IconWrapper, { icon: PdfIcon, name: "PdfIcon" }), _jsx(IconWrapper, { icon: PersonMail, name: "PersonMail" }), _jsx(IconWrapper, { icon: Plate, name: "Plate" }), _jsx(IconWrapper, { icon: Play, name: "Play" }), _jsx(IconWrapper, { icon: Plus, name: "Plus" }), _jsx(IconWrapper, { icon: Pool, name: "Pool" }), _jsx(IconWrapper, { icon: Pool2, name: "Pool2" }), _jsx(IconWrapper, { icon: PressureWasher, name: "PressureWasher" }), _jsx(IconWrapper, { icon: Price, name: "Price" }), _jsx(IconWrapper, { icon: Profile, name: "Profile" }), _jsx(IconWrapper, { icon: ProgressReport, name: "ProgressReport" }), _jsx(IconWrapper, { icon: Proposal, name: "Proposal" }), _jsx(IconWrapper, { icon: RealEstate, name: "RealEstate" }), _jsx(IconWrapper, { icon: Receipt, name: "Receipt" }), _jsx(IconWrapper, { icon: ReceiptBg, name: "ReceiptBg" }), _jsx(IconWrapper, { icon: ReceiptHouse, name: "ReceiptHouse" }), _jsx(IconWrapper, { icon: Receipts, name: "Receipts" }), _jsx(IconWrapper, { icon: Recipient, name: "Recipient" }), _jsx(IconWrapper, { icon: Records, name: "Records" }), _jsx(IconWrapper, { icon: Register, name: "Register" }), _jsx(IconWrapper, { icon: RelationshipHome, name: "RelationshipHome" }), _jsx(IconWrapper, { icon: ResendPassword, name: "ResendPassword" }), _jsx(IconWrapper, { icon: Rocket, name: "Rocket" }), _jsx(IconWrapper, { icon: Roof2, name: "Roof2" }), _jsx(IconWrapper, { icon: Security, name: "Security" }), _jsx(IconWrapper, { icon: Send, name: "Send" }), _jsx(IconWrapper, { icon: ShareHome, name: "ShareHome" }), _jsx(IconWrapper, { icon: ShareWith, name: "ShareWith" }), _jsx(IconWrapper, { icon: SixtyEight, name: "SixtyEight" }), _jsx(IconWrapper, { icon: SMS, name: "SMS" }), _jsx(IconWrapper, { icon: Social, name: "Social" }), _jsx(IconWrapper, { icon: SolarPanel, name: "SolarPanel" }), _jsx(IconWrapper, { icon: Speaker, name: "Speaker" }), _jsx(IconWrapper, { icon: Sprinkler, name: "Sprinkler" }), _jsx(IconWrapper, { icon: Structure, name: "Structure" }), _jsx(IconWrapper, { icon: Subscription, name: "Subscription" }), _jsx(IconWrapper, { icon: Target, name: "Target" }), _jsx(IconWrapper, { icon: Theatre, name: "Theatre" }), _jsx(IconWrapper, { icon: Thumbnail, name: "Thumbnail" }), _jsx(IconWrapper, { icon: ThumbnailSmall, name: "ThumbnailSmall" }), _jsx(IconWrapper, { icon: ThumbUp, name: "ThumbUp" }), _jsx(IconWrapper, { icon: Trash, name: "Trash" }), _jsx(IconWrapper, { icon: VideoIcon, name: "VideoIcon" }), _jsx(IconWrapper, { icon: VideoPlay, name: "VideoPlay" }), _jsx(IconWrapper, { icon: VioletFolder, name: "VioletFolder" }), _jsx(IconWrapper, { icon: Warning, name: "Warning" }), _jsx(IconWrapper, { icon: Warranty, name: "Warranty" }), _jsx(IconWrapper, { icon: WellDone, name: "WellDone" }), _jsx(IconWrapper, { icon: WholeHome, name: "WholeHome" }), _jsx(IconWrapper, { icon: Wind, name: "Wind" }), _jsx(IconWrapper, { icon: Wizard, name: "Wizard" }), _jsx(IconWrapper, { icon: WizardDetailed, name: "WizardDetailed" }), _jsx(IconWrapper, { icon: WizardQuick, name: "WizardQuick" }), _jsx(IconWrapper, { icon: YellowFolder, name: "YellowFolder" }), _jsx(IconWrapper, { icon: YellowFolderUnshared, name: "YellowFolderUnshared" })] }));
9
+ return (_jsxs(Grid, { maxW: "600px", templateColumns: "repeat(auto-fill, minmax(75px, 1fr))", p: "base", gap: "8", children: [_jsx(IconWrapper, { icon: CookTop, name: "CookTop" }), _jsx(IconWrapper, { icon: Dishwasher, name: "Dishwasher" }), _jsx(IconWrapper, { icon: Dryer, name: "Dryer" }), _jsx(IconWrapper, { icon: Freezer, name: "Freezer" }), _jsx(IconWrapper, { icon: Fridge, name: "Fridge" }), _jsx(IconWrapper, { icon: Microwave, name: "Microwave" }), _jsx(IconWrapper, { icon: Oven, name: "Oven" }), _jsx(IconWrapper, { icon: Range, name: "Range" }), _jsx(IconWrapper, { icon: Washer, name: "Washer" }), _jsx(IconWrapper, { icon: Barcode, name: "Barcode" }), _jsx(IconWrapper, { icon: Book, name: "Book" }), _jsx(IconWrapper, { icon: Calendar, name: "Calendar" }), _jsx(IconWrapper, { icon: GoldenBars, name: "GoldenBars" }), _jsx(IconWrapper, { icon: Heart, name: "Heart" }), _jsx(IconWrapper, { icon: Notes, name: "Notes" }), _jsx(IconWrapper, { icon: Rating, name: "Rating" }), _jsx(IconWrapper, { icon: Registry, name: "Registry" }), _jsx(IconWrapper, { icon: Tools2, name: "Tools2" }), _jsx(IconWrapper, { icon: Balustrades, name: "Balustrades" }), _jsx(IconWrapper, { icon: Bedding, name: "Bedding" }), _jsx(IconWrapper, { icon: Cookware, name: "Cookware" }), _jsx(IconWrapper, { icon: Countertops, name: "Countertops" }), _jsx(IconWrapper, { icon: Doors, name: "Doors" }), _jsx(IconWrapper, { icon: Electronics, name: "Electronics" }), _jsx(IconWrapper, { icon: Equipment, name: "Equipment" }), _jsx(IconWrapper, { icon: Exterior, name: "Exterior" }), _jsx(IconWrapper, { icon: Fire, name: "Fire" }), _jsx(IconWrapper, { icon: Flooring, name: "Flooring" }), _jsx(IconWrapper, { icon: Furniture, name: "Furniture" }), _jsx(IconWrapper, { icon: Hardware, name: "Hardware" }), _jsx(IconWrapper, { icon: LargeAppliances, name: "LargeAppliances" }), _jsx(IconWrapper, { icon: Lighting, name: "Lighting" }), _jsx(IconWrapper, { icon: Mattress, name: "Mattress" }), _jsx(IconWrapper, { icon: Paint, name: "Paint" }), _jsx(IconWrapper, { icon: Plants, name: "Plants" }), _jsx(IconWrapper, { icon: Porch, name: "Porch" }), _jsx(IconWrapper, { icon: Roof, name: "Roof" }), _jsx(IconWrapper, { icon: SmallAppliances, name: "SmallAppliances" }), _jsx(IconWrapper, { icon: Steps, name: "Steps" }), _jsx(IconWrapper, { icon: Structures, name: "Structures" }), _jsx(IconWrapper, { icon: Supplies, name: "Supplies" }), _jsx(IconWrapper, { icon: Table, name: "Table" }), _jsx(IconWrapper, { icon: Temperature, name: "Temperature" }), _jsx(IconWrapper, { icon: Tile, name: "Tile" }), _jsx(IconWrapper, { icon: Tools, name: "Tools" }), _jsx(IconWrapper, { icon: Utensils, name: "Utensils" }), _jsx(IconWrapper, { icon: WallDecor, name: "WallDecor" }), _jsx(IconWrapper, { icon: Water, name: "Water" }), _jsx(IconWrapper, { icon: Window, name: "Window" }), _jsx(IconWrapper, { icon: AlertDelete, name: "AlertDelete" }), _jsx(IconWrapper, { icon: AlertDeletePurple, name: "AlertDeletePurple" }), _jsx(IconWrapper, { icon: Arrow, name: "Arrow" }), _jsx(IconWrapper, { icon: Batery, name: "Batery" }), _jsx(IconWrapper, { icon: Bathroom, name: "Bathroom" }), _jsx(IconWrapper, { icon: Battery, name: "Battery" }), _jsx(IconWrapper, { icon: Battery2, name: "Battery2" }), _jsx(IconWrapper, { icon: Bedroom, name: "Bedroom" }), _jsx(IconWrapper, { icon: Billing, name: "Billing" }), _jsx(IconWrapper, { icon: BillingAddress, name: "BillingAddress" }), _jsx(IconWrapper, { icon: BlueFolder, name: "BlueFolder" }), _jsx(IconWrapper, { icon: BlueFolderShared, name: "BlueFolderShared" }), _jsx(IconWrapper, { icon: BookOpened, name: "BookOpened" }), _jsx(IconWrapper, { icon: BoxIcon, name: "Box" }), _jsx(IconWrapper, { icon: Building, name: "Building" }), _jsx(IconWrapper, { icon: Calc, name: "Calc" }), _jsx(IconWrapper, { icon: Calendar2, name: "Calendar2" }), _jsx(IconWrapper, { icon: Catalog, name: "Catalog" }), _jsx(IconWrapper, { icon: Check, name: "Check" }), _jsx(IconWrapper, { icon: CheckInCircle, name: "CheckInCircle" }), _jsx(IconWrapper, { icon: CheckPen, name: "CheckPen" }), _jsx(IconWrapper, { icon: Chemistry, name: "Chemistry" }), _jsx(IconWrapper, { icon: CircleFace, name: "CircleFace" }), _jsx(IconWrapper, { icon: Cleaning, name: "Cleaning" }), _jsx(IconWrapper, { icon: Closet, name: "Closet" }), _jsx(IconWrapper, { icon: Co2, name: "Co2" }), _jsx(IconWrapper, { icon: Company, name: "Company" }), _jsx(IconWrapper, { icon: Company2, name: "Company2" }), _jsx(IconWrapper, { icon: ComputerReport, name: "ComputerReport" }), _jsx(IconWrapper, { icon: Confirmation, name: "Confirmation" }), _jsx(IconWrapper, { icon: Construction, name: "Construction" }), _jsx(IconWrapper, { icon: Contacts, name: "Contacts" }), _jsx(IconWrapper, { icon: Contacts2, name: "Contacts2" }), _jsx(IconWrapper, { icon: Contributor, name: "Contributor" }), _jsx(IconWrapper, { icon: CreditCard, name: "CreditCard" }), _jsx(IconWrapper, { icon: Detector, name: "Detector" }), _jsx(IconWrapper, { icon: Diamond, name: "Diamond" }), _jsx(IconWrapper, { icon: DiningRoom, name: "DiningRoom" }), _jsx(IconWrapper, { icon: DocIcon, name: "DocIcon" }), _jsx(IconWrapper, { icon: Document, name: "Document" }), _jsx(IconWrapper, { icon: Document2, name: "Document2" }), _jsx(IconWrapper, { icon: Drop, name: "Drop" }), _jsx(IconWrapper, { icon: DropCalendar, name: "DropCalendar" }), _jsx(IconWrapper, { icon: Electricity, name: "Electricity" }), _jsx(IconWrapper, { icon: Entryway, name: "Entryway" }), _jsx(IconWrapper, { icon: EstValue, name: "EstValue" }), _jsx(IconWrapper, { icon: Exclamation, name: "Exclamation" }), _jsx(IconWrapper, { icon: Face, name: "Face" }), _jsx(IconWrapper, { icon: Feedback, name: "Feedback" }), _jsx(IconWrapper, { icon: FileUploading, name: "FileUploading" }), _jsx(IconWrapper, { icon: Finance, name: "Finance" }), _jsx(IconWrapper, { icon: Flag, name: "Flag" }), _jsx(IconWrapper, { icon: FormSent, name: "FormSent" }), _jsx(IconWrapper, { icon: Foundation, name: "Foundation" }), _jsx(IconWrapper, { icon: Garage, name: "Garage" }), _jsx(IconWrapper, { icon: GearPencil, name: "GearPencil" }), _jsx(IconWrapper, { icon: GearTime, name: "GearTime" }), _jsx(IconWrapper, { icon: GenericField, name: "GenericField" }), _jsx(IconWrapper, { icon: GlassWater, name: "GlassWater" }), _jsx(IconWrapper, { icon: GreenFolder, name: "GreenFolder" }), _jsx(IconWrapper, { icon: Group, name: "Group" }), _jsx(IconWrapper, { icon: Groups, name: "Groups" }), _jsx(IconWrapper, { icon: GuestBedroom, name: "GuestBedroom" }), _jsx(IconWrapper, { icon: Hallway, name: "Hallway" }), _jsx(IconWrapper, { icon: HandPencil, name: "HandPencil" }), _jsx(IconWrapper, { icon: Heater, name: "Heater" }), _jsx(IconWrapper, { icon: Help, name: "Help" }), _jsx(IconWrapper, { icon: HomeAddress, name: "HomeAddress" }), _jsx(IconWrapper, { icon: Homeowner, name: "Homeowner" }), _jsx(IconWrapper, { icon: House, name: "House" }), _jsx(IconWrapper, { icon: HouseHands, name: "HouseHands" }), _jsx(IconWrapper, { icon: IA, name: "IA" }), _jsx(IconWrapper, { icon: ImageDefault, name: "ImageDefault" }), _jsx(IconWrapper, { icon: ImgIcon, name: "ImgIcon" }), _jsx(IconWrapper, { icon: Inbox, name: "Inbox" }), _jsx(IconWrapper, { icon: Insect, name: "Insect" }), _jsx(IconWrapper, { icon: Kitchen, name: "Kitchen" }), _jsx(IconWrapper, { icon: Laundry, name: "Laundry" }), _jsx(IconWrapper, { icon: Light, name: "Light" }), _jsx(IconWrapper, { icon: LivingRoom, name: "LivingRoom" }), _jsx(IconWrapper, { icon: LogoSmall, name: "LogoSmall" }), _jsx(IconWrapper, { icon: MagnifyingGlassReport, name: "MagnifyingGlassReport" }), _jsx(IconWrapper, { icon: Manager, name: "Manager" }), _jsx(IconWrapper, { icon: MasterBedroom, name: "MasterBedroom" }), _jsx(IconWrapper, { icon: Member, name: "Member" }), _jsx(IconWrapper, { icon: Message, name: "Message" }), _jsx(IconWrapper, { icon: MobileDrop, name: "MobileDrop" }), _jsx(IconWrapper, { icon: Money, name: "Money" }), _jsx(IconWrapper, { icon: Mudroom, name: "Mudroom" }), _jsx(IconWrapper, { icon: NeedHelp, name: "NeedHelp" }), _jsx(IconWrapper, { icon: Office, name: "Office" }), _jsx(IconWrapper, { icon: Painting, name: "Painting" }), _jsx(IconWrapper, { icon: PartnerGeneric, name: "PartnerGeneric" }), _jsx(IconWrapper, { icon: Patio, name: "Patio" }), _jsx(IconWrapper, { icon: PdfIcon, name: "PdfIcon" }), _jsx(IconWrapper, { icon: PersonMail, name: "PersonMail" }), _jsx(IconWrapper, { icon: Plate, name: "Plate" }), _jsx(IconWrapper, { icon: Play, name: "Play" }), _jsx(IconWrapper, { icon: Plus, name: "Plus" }), _jsx(IconWrapper, { icon: Pool, name: "Pool" }), _jsx(IconWrapper, { icon: Pool2, name: "Pool2" }), _jsx(IconWrapper, { icon: PressureWasher, name: "PressureWasher" }), _jsx(IconWrapper, { icon: Price, name: "Price" }), _jsx(IconWrapper, { icon: Profile, name: "Profile" }), _jsx(IconWrapper, { icon: ProgressReport, name: "ProgressReport" }), _jsx(IconWrapper, { icon: Proposal, name: "Proposal" }), _jsx(IconWrapper, { icon: RealEstate, name: "RealEstate" }), _jsx(IconWrapper, { icon: Receipt, name: "Receipt" }), _jsx(IconWrapper, { icon: ReceiptBg, name: "ReceiptBg" }), _jsx(IconWrapper, { icon: ReceiptHouse, name: "ReceiptHouse" }), _jsx(IconWrapper, { icon: Receipts, name: "Receipts" }), _jsx(IconWrapper, { icon: Recipient, name: "Recipient" }), _jsx(IconWrapper, { icon: Records, name: "Records" }), _jsx(IconWrapper, { icon: Register, name: "Register" }), _jsx(IconWrapper, { icon: RelationshipHome, name: "RelationshipHome" }), _jsx(IconWrapper, { icon: ResendPassword, name: "ResendPassword" }), _jsx(IconWrapper, { icon: Rocket, name: "Rocket" }), _jsx(IconWrapper, { icon: Roof2, name: "Roof2" }), _jsx(IconWrapper, { icon: Security, name: "Security" }), _jsx(IconWrapper, { icon: Send, name: "Send" }), _jsx(IconWrapper, { icon: ShareHome, name: "ShareHome" }), _jsx(IconWrapper, { icon: ShareWith, name: "ShareWith" }), _jsx(IconWrapper, { icon: SixtyEight, name: "SixtyEight" }), _jsx(IconWrapper, { icon: SMS, name: "SMS" }), _jsx(IconWrapper, { icon: Social, name: "Social" }), _jsx(IconWrapper, { icon: SolarPanel, name: "SolarPanel" }), _jsx(IconWrapper, { icon: Speaker, name: "Speaker" }), _jsx(IconWrapper, { icon: Sprinkler, name: "Sprinkler" }), _jsx(IconWrapper, { icon: Structure, name: "Structure" }), _jsx(IconWrapper, { icon: Subscription, name: "Subscription" }), _jsx(IconWrapper, { icon: Target, name: "Target" }), _jsx(IconWrapper, { icon: Theatre, name: "Theatre" }), _jsx(IconWrapper, { icon: Thumbnail, name: "Thumbnail" }), _jsx(IconWrapper, { icon: ThumbnailSmall, name: "ThumbnailSmall" }), _jsx(IconWrapper, { icon: ThumbUp, name: "ThumbUp" }), _jsx(IconWrapper, { icon: Trash, name: "Trash" }), _jsx(IconWrapper, { icon: VideoIcon, name: "VideoIcon" }), _jsx(IconWrapper, { icon: VideoPlay, name: "VideoPlay" }), _jsx(IconWrapper, { icon: VioletFolder, name: "VioletFolder" }), _jsx(IconWrapper, { icon: Wallet, name: "Wallet" }), _jsx(IconWrapper, { icon: Warning, name: "Warning" }), _jsx(IconWrapper, { icon: Warranty, name: "Warranty" }), _jsx(IconWrapper, { icon: WellDone, name: "WellDone" }), _jsx(IconWrapper, { icon: WholeHome, name: "WholeHome" }), _jsx(IconWrapper, { icon: Wind, name: "Wind" }), _jsx(IconWrapper, { icon: Wizard, name: "Wizard" }), _jsx(IconWrapper, { icon: WizardDetailed, name: "WizardDetailed" }), _jsx(IconWrapper, { icon: WizardQuick, name: "WizardQuick" }), _jsx(IconWrapper, { icon: YellowFolder, name: "YellowFolder" }), _jsx(IconWrapper, { icon: YellowFolderUnshared, name: "YellowFolderUnshared" })] }));
10
10
  };
11
11
  const IconWrapper = ({ icon, name }) => {
12
12
  return (_jsxs(Center, { flexDirection: "column", children: [_jsx(Image, { src: icon, boxSize: "30px", mb: "2" }), _jsx(Text, { variant: "home", children: name })] }));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@homefile/components-v2",
3
- "version": "2.20.0",
3
+ "version": "2.21.0",
4
4
  "author": "Homefile",
5
5
  "license": "UNLICENSED",
6
6
  "typings": "dist/index.d.ts",
@@ -151,6 +151,7 @@ import TreesCrop2 from './trees-crop2.png'
151
151
  import VideoIcon from './video-icon.svg'
152
152
  import VideoPlay from './video-play.svg'
153
153
  import VioletFolder from './violet-folder.svg'
154
+ import Wallet from './wallet.svg'
154
155
  import Warning from './warning.svg'
155
156
  import Warranty from './warranty.svg'
156
157
  import WellDone from './well-done.png'
@@ -317,6 +318,7 @@ export {
317
318
  VideoIcon,
318
319
  VideoPlay,
319
320
  VioletFolder,
321
+ Wallet,
320
322
  Warning,
321
323
  Warranty,
322
324
  WellDone,
@@ -0,0 +1,18 @@
1
+ <svg id="Grupo_22869" data-name="Grupo 22869" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="35.199" height="39.708" viewBox="0 0 35.199 39.708">
2
+ <defs>
3
+ <clipPath id="clip-path">
4
+ <rect id="Retângulo_26646" data-name="Retângulo 26646" width="35.199" height="39.708" transform="translate(0 0)" fill="none"/>
5
+ </clipPath>
6
+ </defs>
7
+ <g id="Grupo_22868" data-name="Grupo 22868" transform="translate(0 0)" clip-path="url(#clip-path)">
8
+ <path id="Caminho_18397" data-name="Caminho 18397" d="M0,39.93a2.882,2.882,0,0,0,2.882,2.878h.53V65.725h-.53A2.883,2.883,0,0,1,0,62.844Z" transform="translate(0 -26.017)" fill="#323954"/>
9
+ <path id="Caminho_18398" data-name="Caminho 18398" d="M76.372,66.9v8.474H67.431a4.237,4.237,0,1,1,0-8.474Zm-6.363,4.237a1.594,1.594,0,1,0-1.6,1.592,1.593,1.593,0,0,0,1.6-1.592" transform="translate(-41.172 -43.589)" fill="#e24c5d"/>
10
+ <path id="Caminho_18399" data-name="Caminho 18399" d="M75.2,74.49a1.592,1.592,0,1,1-1.592,1.592A1.593,1.593,0,0,1,75.2,74.49" transform="translate(-47.961 -48.535)" fill="#f6cf76"/>
11
+ <path id="Caminho_18400" data-name="Caminho 18400" d="M35.463,48.19h6.115v6.519H32.637a4.237,4.237,0,1,0,0,8.474h8.941v7.924H9.79V48.19H35.463Z" transform="translate(-6.379 -31.399)" fill="#40566b"/>
12
+ <path id="Caminho_18401" data-name="Caminho 18401" d="M2.881,31.65A2.883,2.883,0,0,0,0,34.532v0a2.882,2.882,0,0,0,2.882,2.878H7.8L9.39,34.532l1.585-2.882Z" transform="translate(0.001 -20.622)" fill="#e24c5d"/>
13
+ <path id="Caminho_18402" data-name="Caminho 18402" d="M86.644,31.65l-1.586,2.882L83.47,37.413h6.115V31.65Z" transform="translate(-54.386 -20.622)" fill="#e24c5d"/>
14
+ <path id="Caminho_18403" data-name="Caminho 18403" d="M33.024,3.388l-8.23,14.948h-2.4l1.589-2.882,1.585-2.882,5.617-10.2Z" transform="translate(-14.588 -1.544)" fill="#00c0b7"/>
15
+ <path id="Caminho_18404" data-name="Caminho 18404" d="M49.757,13.91l-1.589,2.882h-2.4l4.4-7.99-10.8-5.944L31.691,16.791h-2.4L37.52,1.843,38.534,0,53.022,7.976l-1.679,3.052Z" transform="translate(-19.084 0)" fill="#00a1aa"/>
16
+ <path id="Caminho_18405" data-name="Caminho 18405" d="M54.65,14.145l-4.4,7.99H36.179L43.852,8.2Z" transform="translate(-23.573 -5.343)" fill="#00c0b7"/>
17
+ </g>
18
+ </svg>
@@ -1,7 +1,9 @@
1
1
  import { FieldTypesI, IconTypes } from '@/interfaces'
2
- import { Box, Stack, Text } from '@chakra-ui/react'
2
+ import { Stack, Text } from '@chakra-ui/react'
3
3
  import {
4
4
  FilterSize,
5
+ HireInfo,
6
+ HireService,
5
7
  PurchaseProduct,
6
8
  SearchField,
7
9
  VideoDetail,
@@ -10,7 +12,7 @@ import { fieldIcons } from '@/helpers'
10
12
 
11
13
  export const AlertFields = ({ fields, callback }: FieldTypesI) => {
12
14
  return (
13
- <Stack spacing="base" p="base">
15
+ <Stack spacing="1" p="base">
14
16
  {fields?.map((field) => {
15
17
  const { id, type, value, icon } = field
16
18
  const mappedIcon = icon && (fieldIcons[icon] as IconTypes)
@@ -35,6 +37,10 @@ export const AlertFields = ({ fields, callback }: FieldTypesI) => {
35
37
  return <SearchField {...field} key={id} callback={callback} />
36
38
  case 'purchase-product':
37
39
  return <PurchaseProduct {...field} key={id} callback={callback} />
40
+ case 'hire-info':
41
+ return <HireInfo {...field} key={id} icon={mappedIcon} />
42
+ case 'hire-service':
43
+ return <HireService {...field} key={id} callback={callback} />
38
44
  default:
39
45
  return null
40
46
  }
@@ -0,0 +1,11 @@
1
+ import { ReportI } from '@/interfaces'
2
+ import { Flex, Image, Text } from '@chakra-ui/react'
3
+
4
+ export const HireInfo = ({ name, icon, value }: ReportI) => {
5
+ return (
6
+ <Flex bg="lightBlue.2" gap="base" p="base" mx="-base">
7
+ <Image boxSize="40px" src={icon} alt={name} />
8
+ <Text>{value}</Text>
9
+ </Flex>
10
+ )
11
+ }
@@ -0,0 +1,92 @@
1
+ import { CustomBadge, Plus, Calendar } from '@/components'
2
+ import { FieldTypesI, ReportI } from '@/interfaces'
3
+ import { colors } from '@/theme/colors'
4
+ import {
5
+ AspectRatio,
6
+ Box,
7
+ Container,
8
+ Flex,
9
+ IconButton,
10
+ Image,
11
+ Text,
12
+ } from '@chakra-ui/react'
13
+
14
+ export const HireService = ({
15
+ description,
16
+ name,
17
+ label,
18
+ icon,
19
+ comments,
20
+ value,
21
+ callback,
22
+ children,
23
+ ...rest
24
+ }: ReportI & Pick<FieldTypesI, 'callback'>) => {
25
+ const ctaIcon = {
26
+ plus: <Plus stroke={colors.blue[3]} />,
27
+ calendar: <Calendar stroke={colors.blue[3]} />,
28
+ }
29
+ return (
30
+ <Container p="base" position="relative" boxShadow="md">
31
+ <CustomBadge
32
+ label={label}
33
+ bg="#77C100"
34
+ position="absolute"
35
+ top="2"
36
+ left="-1"
37
+ zIndex="3"
38
+ />
39
+ <Flex gap="base" ml="10" align="center">
40
+ <Image src={icon} alt={name} objectFit="contain" w="70px" h="70px" />
41
+ <Flex align="end" justify="space-between" w="100%">
42
+ <Box>
43
+ <Text
44
+ fontWeight="semibold"
45
+ fontSize="sm"
46
+ noOfLines={2}
47
+ overflow="hidden"
48
+ textOverflow="ellipsis"
49
+ >
50
+ {name}
51
+ </Text>
52
+ <Text fontSize="sm" fontFamily="secondary" lineHeight="1.2">
53
+ {description}
54
+ </Text>
55
+ <Text fontSize="sm" fontFamily="secondary" lineHeight="1.2">
56
+ {comments}
57
+ </Text>
58
+ <Text
59
+ fontSize="sm"
60
+ fontFamily="secondary"
61
+ color="blue.2"
62
+ lineHeight="1.2"
63
+ >
64
+ {value}
65
+ </Text>
66
+ </Box>
67
+ <Flex gap="2">
68
+ {children?.map((child) => {
69
+ const { id, icon, label = '' } = child
70
+ return (
71
+ <IconButton
72
+ key={id}
73
+ w="2rem"
74
+ h="2rem"
75
+ aria-label={label}
76
+ variant="iconOutlined"
77
+ icon={ctaIcon[icon as keyof typeof ctaIcon] || <Plus />}
78
+ onClick={() =>
79
+ callback?.({
80
+ ...child,
81
+ value: String(child.value),
82
+ })
83
+ }
84
+ />
85
+ )
86
+ })}
87
+ </Flex>
88
+ </Flex>
89
+ </Flex>
90
+ </Container>
91
+ )
92
+ }
@@ -37,10 +37,7 @@ export const PurchaseProduct = ({
37
37
  zIndex="3"
38
38
  />
39
39
  <Flex gap="base" ml="6">
40
- <AspectRatio ratio={1} minW="70px" h="auto">
41
- <Image src={icon} alt={name} objectFit="cover" w="100%" h="100%" />
42
- </AspectRatio>
43
-
40
+ <Image src={icon} alt={name} objectFit="contain" w="70px" h="70px" />
44
41
  <Stack spacing="0">
45
42
  <Text
46
43
  fontWeight="semibold"
@@ -51,7 +48,7 @@ export const PurchaseProduct = ({
51
48
  >
52
49
  {name}
53
50
  </Text>
54
- <Flex alignSelf="end" gap="base" align="center">
51
+ <Flex alignSelf="end" gap="base" align="end">
55
52
  <Stack spacing="0" align="end">
56
53
  <Text fontSize="xs" fontFamily="secondary" color="red">
57
54
  {comments}
@@ -2,6 +2,8 @@ export * from './AlertFields'
2
2
  export * from './ChangeAirFilter'
3
3
  export * from './CustomDivider'
4
4
  export * from './FilterSize'
5
+ export * from './HireInfo'
6
+ export * from './HireService'
5
7
  export * from './PurchaseProduct'
6
8
  export * from './SearchField'
7
9
  export * from './SmokeDetectorBattery'
@@ -58,6 +58,7 @@ import {
58
58
  AAWeed,
59
59
  AApest,
60
60
  FilterSize,
61
+ Wallet,
61
62
  } from '@/assets/images'
62
63
  import { IconTypes } from '@/interfaces'
63
64
 
@@ -108,6 +109,7 @@ export const fieldIcons: Record<IconTypes, string> = {
108
109
  target: Target,
109
110
  title: CircleFace,
110
111
  company: Company2,
112
+ wallet: Wallet,
111
113
  'sh-gutter': GutterCleaning,
112
114
  'sh-home': HomeCleaning,
113
115
  'sh-house': HouseWashing,
package/src/index.ts CHANGED
@@ -18,6 +18,7 @@ export {
18
18
  AppBar,
19
19
  AssignableReceipts,
20
20
  BackHeader,
21
+ BackendAlert,
21
22
  BarDivider,
22
23
  CancelAccount,
23
24
  CatalogPopup,
@@ -106,6 +106,7 @@ export type IconTypes =
106
106
  | 'target'
107
107
  | 'title'
108
108
  | 'company'
109
+ | 'wallet'
109
110
  | UIIconTypes
110
111
 
111
112
  export type UIIconTypes =
@@ -4,7 +4,13 @@ export type AlertCategory = 'safeguard' | 'maintain' | 'budget' | 'improve'
4
4
 
5
5
  export type AlertTabType = 'details' | 'filter-size' | 'purchase' | 'hire-out'
6
6
 
7
- export type AlertFieldType = 'alert' | 'search' | 'purchase-product'
7
+ export type AlertFieldType =
8
+ | 'alert'
9
+ | 'search'
10
+ | 'purchase-product'
11
+ | 'hire-info'
12
+ | 'hire-service'
13
+ | 'hire-service-cta'
8
14
 
9
15
  export interface BackendAlertI extends DynamicFormI {
10
16
  category: AlertCategory
@@ -999,7 +999,125 @@ export const alertFieldsMock: ReportI[] = [
999
999
  value: faker.image.urlPicsumPhotos(),
1000
1000
  type: 'hire-out',
1001
1001
  visible: true,
1002
- children: [],
1002
+ children: [
1003
+ {
1004
+ id: faker.database.mongodbObjectId(),
1005
+ name: '',
1006
+ label: '',
1007
+ description: '',
1008
+ icon: 'wallet',
1009
+ comments: '',
1010
+ value:
1011
+ 'Average cost for this service range from $100-125 in your area, including filter.',
1012
+ type: 'hire-info',
1013
+ visible: true,
1014
+ },
1015
+ {
1016
+ id: faker.database.mongodbObjectId(),
1017
+ name: 'Bobs Heating & Cooling',
1018
+ label: 'match',
1019
+ description: 'Jerry Marks',
1020
+ icon: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRlUXEpc3FdoRVmQoYvmAttMwG2dzvBz49oGg&s',
1021
+ comments: '512-650-3030',
1022
+ value: 'JerryM@BobsHTC.com',
1023
+ type: 'hire-service',
1024
+ visible: true,
1025
+ children: [
1026
+ {
1027
+ id: faker.database.mongodbObjectId(),
1028
+ name: 'Bobs Heating & Cooling - add service',
1029
+ label: '',
1030
+ description: '',
1031
+ icon: 'plus',
1032
+ comments: '',
1033
+ value: '',
1034
+ type: 'hire-service-cta',
1035
+ visible: true,
1036
+ },
1037
+ {
1038
+ id: faker.database.mongodbObjectId(),
1039
+ name: 'Bobs Heating & Cooling - schedule service',
1040
+ label: '',
1041
+ description: '',
1042
+ icon: 'calendar',
1043
+ comments: '',
1044
+ value: '',
1045
+ type: 'hire-service-cta',
1046
+ visible: true,
1047
+ },
1048
+ ],
1049
+ },
1050
+ {
1051
+ id: faker.database.mongodbObjectId(),
1052
+ name: 'Sears Home Services',
1053
+ label: 'match',
1054
+ description: 'Mark Jones',
1055
+ icon: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTJU3pPD1SFxFnAuaOkoHR36lcVNmoP39USqA&s',
1056
+ comments: '512-354-6584',
1057
+ value: 'MarkJones@searssvc.com',
1058
+ type: 'hire-service',
1059
+ visible: true,
1060
+ children: [
1061
+ {
1062
+ id: faker.database.mongodbObjectId(),
1063
+ name: 'Sears Home Services - add service',
1064
+ label: '',
1065
+ description: '',
1066
+ icon: 'plus',
1067
+ comments: '',
1068
+ value: '',
1069
+ type: 'hire-service-cta',
1070
+ visible: true,
1071
+ },
1072
+ {
1073
+ id: faker.database.mongodbObjectId(),
1074
+ name: 'Sears Home Services - schedule service',
1075
+ label: '',
1076
+ description: '',
1077
+ icon: 'calendar',
1078
+ comments: '',
1079
+ value: '',
1080
+ type: 'hire-service-cta',
1081
+ visible: true,
1082
+ },
1083
+ ],
1084
+ },
1085
+ {
1086
+ id: faker.database.mongodbObjectId(),
1087
+ name: 'Airco Mechanical',
1088
+ label: 'match',
1089
+ description: 'Chris Rodriquez',
1090
+ icon: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRWZ_hk6-7mpzQG2ZSQTu0XV2FiMF4AYkT4Wg&s',
1091
+ comments: '512-888-5454',
1092
+ value: 'ChrisR@airco.com',
1093
+ type: 'hire-service',
1094
+ visible: true,
1095
+ children: [
1096
+ {
1097
+ id: faker.database.mongodbObjectId(),
1098
+ name: 'Airco Mechanical - add service',
1099
+ label: '',
1100
+ description: '',
1101
+ icon: 'plus',
1102
+ comments: '',
1103
+ value: '',
1104
+ type: 'hire-service-cta',
1105
+ visible: true,
1106
+ },
1107
+ {
1108
+ id: faker.database.mongodbObjectId(),
1109
+ name: 'Airco Mechanical - schedule service',
1110
+ label: '',
1111
+ description: '',
1112
+ icon: 'calendar',
1113
+ comments: '',
1114
+ value: '',
1115
+ type: 'hire-service-cta',
1116
+ visible: true,
1117
+ },
1118
+ ],
1119
+ },
1120
+ ],
1003
1121
  },
1004
1122
  ],
1005
1123
  },
@@ -176,6 +176,7 @@ import {
176
176
  VideoPlay,
177
177
  VioletFolder,
178
178
  WallDecor,
179
+ Wallet,
179
180
  Warning,
180
181
  Warranty,
181
182
  Water,
@@ -409,6 +410,7 @@ export const Illustrations = () => {
409
410
  <IconWrapper icon={VideoIcon} name="VideoIcon" />
410
411
  <IconWrapper icon={VideoPlay} name="VideoPlay" />
411
412
  <IconWrapper icon={VioletFolder} name="VioletFolder" />
413
+ <IconWrapper icon={Wallet} name="Wallet" />
412
414
  <IconWrapper icon={Warning} name="Warning" />
413
415
  <IconWrapper icon={Warranty} name="Warranty" />
414
416
  <IconWrapper icon={WellDone} name="WellDone" />