@homefile/components-v2 2.4.0 → 2.5.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 (67) hide show
  1. package/dist/assets/images/book.svg +25 -0
  2. package/dist/assets/images/index.d.ts +2 -1
  3. package/dist/assets/images/index.js +2 -1
  4. package/dist/assets/images/index.ts +2 -0
  5. package/dist/components/forms/dynamicForm/fields/uiFields/TileCta.js +1 -1
  6. package/dist/components/forms/dynamicForm/fields/uiFields/TileCta.tsx +4 -2
  7. package/dist/components/forms/readOnly/ReadOnlyDynamicForm.d.ts +1 -1
  8. package/dist/components/forms/readOnly/ReadOnlyDynamicForm.js +6 -4
  9. package/dist/components/forms/readOnly/fields/ReadOnlyGrid.d.ts +1 -1
  10. package/dist/components/forms/readOnly/fields/ReadOnlyGrid.js +7 -3
  11. package/dist/components/forms/readOnly/fields/ReadOnlyNotes.d.ts +2 -0
  12. package/dist/components/forms/readOnly/fields/ReadOnlyNotes.js +5 -0
  13. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyAppliances.js +1 -1
  14. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyAppliances.tsx +1 -1
  15. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyGuidelines.d.ts +2 -0
  16. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyGuidelines.js +11 -0
  17. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyGuidelines.tsx +33 -0
  18. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyHomeItemImages.js +1 -1
  19. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyHomeItemImages.tsx +1 -0
  20. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyItemRelated.d.ts +2 -0
  21. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyItemRelated.js +11 -0
  22. package/dist/components/forms/readOnly/fields/homeItem/ReadOnlyItemRelated.tsx +40 -0
  23. package/dist/components/forms/readOnly/fields/homeItem/index.d.ts +2 -0
  24. package/dist/components/forms/readOnly/fields/homeItem/index.js +2 -0
  25. package/dist/components/forms/readOnly/fields/homeItem/index.ts +2 -0
  26. package/dist/components/forms/readOnly/fields/index.d.ts +1 -0
  27. package/dist/components/forms/readOnly/fields/index.js +1 -0
  28. package/dist/components/homeItems/ViewingHomeItemPanel.d.ts +1 -1
  29. package/dist/components/homeItems/ViewingHomeItemPanel.js +2 -2
  30. package/dist/helpers/forms/dynamicForm.helper.js +2 -1
  31. package/dist/interfaces/forms/dynamicForm/DynamicForm.interface.d.ts +4 -3
  32. package/dist/interfaces/forms/readOnly/ReadOnlyGrid.interface.d.ts +2 -1
  33. package/dist/interfaces/forms/readOnly/homeItem/ReadOnlyGuidelines.interface.d.ts +4 -0
  34. package/dist/interfaces/forms/readOnly/homeItem/ReadOnlyGuidelines.interface.js +1 -0
  35. package/dist/interfaces/forms/readOnly/homeItem/index.d.ts +1 -0
  36. package/dist/interfaces/forms/readOnly/homeItem/index.js +1 -0
  37. package/dist/interfaces/homeItems/ViewingHomeItemPanel.interface.d.ts +1 -0
  38. package/dist/interfaces/inboxTile/MessageCard.interface.d.ts +2 -2
  39. package/dist/mocks/forms/dynamicForm.mock.js +60 -0
  40. package/dist/mocks/inbox/messages.js +0 -2
  41. package/dist/stories/assets/Illustrations.stories.js +2 -2
  42. package/dist/stories/homeItems/ViewingHomeItem.stories.js +1 -0
  43. package/package.json +1 -1
  44. package/src/assets/images/book.svg +25 -0
  45. package/src/assets/images/index.ts +2 -0
  46. package/src/components/forms/dynamicForm/fields/uiFields/TileCta.tsx +4 -2
  47. package/src/components/forms/readOnly/ReadOnlyDynamicForm.tsx +8 -2
  48. package/src/components/forms/readOnly/fields/ReadOnlyGrid.tsx +32 -3
  49. package/src/components/forms/readOnly/fields/ReadOnlyNotes.tsx +16 -0
  50. package/src/components/forms/readOnly/fields/homeItem/ReadOnlyAppliances.tsx +1 -1
  51. package/src/components/forms/readOnly/fields/homeItem/ReadOnlyGuidelines.tsx +33 -0
  52. package/src/components/forms/readOnly/fields/homeItem/ReadOnlyHomeItemImages.tsx +1 -0
  53. package/src/components/forms/readOnly/fields/homeItem/ReadOnlyItemRelated.tsx +40 -0
  54. package/src/components/forms/readOnly/fields/homeItem/index.ts +2 -0
  55. package/src/components/forms/readOnly/fields/index.ts +1 -0
  56. package/src/components/homeItems/ViewingHomeItemPanel.tsx +2 -1
  57. package/src/helpers/forms/dynamicForm.helper.ts +2 -0
  58. package/src/interfaces/forms/dynamicForm/DynamicForm.interface.ts +9 -1
  59. package/src/interfaces/forms/readOnly/ReadOnlyGrid.interface.ts +3 -1
  60. package/src/interfaces/forms/readOnly/homeItem/ReadOnlyGuidelines.interface.ts +6 -0
  61. package/src/interfaces/forms/readOnly/homeItem/index.ts +1 -0
  62. package/src/interfaces/homeItems/ViewingHomeItemPanel.interface.ts +1 -0
  63. package/src/interfaces/inboxTile/MessageCard.interface.ts +2 -2
  64. package/src/mocks/forms/dynamicForm.mock.ts +60 -0
  65. package/src/mocks/inbox/messages.ts +0 -2
  66. package/src/stories/assets/Illustrations.stories.tsx +2 -0
  67. package/src/stories/homeItems/ViewingHomeItem.stories.tsx +1 -0
@@ -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, 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, } 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, 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, } 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: IA, name: "IA" }), _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: 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: 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: 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: 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: IA, name: "IA" }), _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: 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: 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: 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" })] }));
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 })] }));
@@ -8,6 +8,7 @@ export default {
8
8
  args: {
9
9
  form: viewingHomeItemMock,
10
10
  onEdit: action('onEdit'),
11
+ onClick: action('onClick'),
11
12
  },
12
13
  decorators: [
13
14
  (Story) => (_jsx(RightPanel, { isOpen: true, onClose: action('onClose'), children: _jsx(Story, {}) })),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@homefile/components-v2",
3
- "version": "2.4.0",
3
+ "version": "2.5.0",
4
4
  "author": "Homefile",
5
5
  "license": "UNLICENSED",
6
6
  "typings": "dist/index.d.ts",
@@ -0,0 +1,25 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="36.229" height="25.49" viewBox="0 0 36.229 25.49">
2
+ <defs>
3
+ <clipPath id="clip-path">
4
+ <rect id="Rectangle_24874" data-name="Rectangle 24874" width="36.229" height="25.49" transform="translate(0 0)" fill="none"/>
5
+ </clipPath>
6
+ </defs>
7
+ <g id="Group_20984" data-name="Group 20984" transform="translate(0 0)">
8
+ <g id="Group_20983" data-name="Group 20983" transform="translate(0 0)" clip-path="url(#clip-path)">
9
+ <path id="Path_15109" data-name="Path 15109" d="M23.19,0V23.3A2.195,2.195,0,0,0,21,21.1H7.4V0Z" transform="translate(-5.076 0)" fill="#d2edef"/>
10
+ <path id="Path_15110" data-name="Path 15110" d="M59.866,21.1a2.194,2.194,0,0,0-2.191,2.2V0H73.461V21.1Z" transform="translate(-39.561 0)" fill="#d2edef"/>
11
+ <path id="Path_15111" data-name="Path 15111" d="M15.919,24.116H2.324V4.392H0V26.311H15.919A2.192,2.192,0,0,0,18.114,28.5V26.311a2.195,2.195,0,0,0-2.195-2.2" transform="translate(0 -3.013)" fill="#e24c5d"/>
12
+ <path id="Path_15112" data-name="Path 15112" d="M73.461,4.393V24.117H59.866a2.194,2.194,0,0,0-2.191,2.2V28.5a2.191,2.191,0,0,0,2.191-2.192H75.789V4.393Z" transform="translate(-39.561 -3.013)" fill="#cd4160"/>
13
+ <rect id="Rectangle_24864" data-name="Rectangle 24864" width="5.916" height="0.942" transform="translate(7.209 2.445)" fill="#40566b"/>
14
+ <rect id="Rectangle_24865" data-name="Rectangle 24865" width="10.4" height="0.942" transform="translate(4.965 7.581)" fill="#40566b"/>
15
+ <rect id="Rectangle_24866" data-name="Rectangle 24866" width="10.4" height="0.942" transform="translate(4.965 10.636)" fill="#40566b"/>
16
+ <rect id="Rectangle_24867" data-name="Rectangle 24867" width="10.4" height="0.942" transform="translate(4.965 13.689)" fill="#40566b"/>
17
+ <rect id="Rectangle_24868" data-name="Rectangle 24868" width="10.4" height="0.942" transform="translate(4.965 16.744)" fill="#40566b"/>
18
+ <rect id="Rectangle_24869" data-name="Rectangle 24869" width="10.4" height="0.942" transform="translate(20.807 7.581)" fill="#40566b"/>
19
+ <rect id="Rectangle_24870" data-name="Rectangle 24870" width="10.4" height="0.942" transform="translate(20.807 4.4)" fill="#40566b"/>
20
+ <rect id="Rectangle_24871" data-name="Rectangle 24871" width="10.4" height="0.942" transform="translate(20.807 10.636)" fill="#40566b"/>
21
+ <rect id="Rectangle_24872" data-name="Rectangle 24872" width="10.4" height="0.942" transform="translate(20.807 13.689)" fill="#40566b"/>
22
+ <rect id="Rectangle_24873" data-name="Rectangle 24873" width="10.4" height="0.942" transform="translate(20.807 16.744)" fill="#40566b"/>
23
+ </g>
24
+ </g>
25
+ </svg>
@@ -12,6 +12,7 @@ import Billing from './billing.svg'
12
12
  import BillingAddress from './billing-address.svg'
13
13
  import BlueFolder from './blue-folder.svg'
14
14
  import BlueFolderShared from './blue-folder-shared.svg'
15
+ import BookOpened from './book.svg'
15
16
  import Box from './box.svg'
16
17
  import Building from './building.svg'
17
18
  import Calc from './calc.svg'
@@ -173,6 +174,7 @@ export {
173
174
  BillingAddress,
174
175
  BlueFolder,
175
176
  BlueFolderShared,
177
+ BookOpened,
176
178
  Box,
177
179
  Building,
178
180
  Calc,
@@ -6,9 +6,11 @@ export const TileCta = ({ callback, ...props }: TileCtaI) => {
6
6
  return (
7
7
  <Button
8
8
  onClick={() => callback?.({ ...props })}
9
- variant={type === 'primary-cta' ? 'tertiaryFooter' : 'secondaryFooter'}
9
+ variant={type === 'primary-cta' ? 'primary' : 'secondary'}
10
10
  fontSize="sm"
11
- maxW="full"
11
+ textTransform="capitalize"
12
+ px="none"
13
+ bg={type === 'primary-cta' ? '' : 'neutral.white'}
12
14
  >
13
15
  {value}
14
16
  </Button>
@@ -6,6 +6,7 @@ import {
6
6
  ReadOnlyGrid,
7
7
  ReadOnlyGroup,
8
8
  ReadOnlyInput,
9
+ ReadOnlyNotes,
9
10
  ReadOnlyRating,
10
11
  ReadOnlyTextArea,
11
12
  } from '@/components'
@@ -13,10 +14,11 @@ import { fieldIcons } from '@/helpers'
13
14
 
14
15
  export const ReadOnlyDynamicForm = ({
15
16
  form: fields,
17
+ onClick,
16
18
  onEdit = () => {},
17
19
  }: ReadOnlyDynamicFormI) => {
18
20
  return (
19
- <Box bg="lightBlue.1">
21
+ <Box bg="lightBlue.1" overflow="scroll">
20
22
  {fields?.map((field) => {
21
23
  const { children = [], icon, id, name, type, value } = field
22
24
  const baseProps = {
@@ -43,11 +45,15 @@ export const ReadOnlyDynamicForm = ({
43
45
  case 'textarea':
44
46
  return <ReadOnlyTextArea {...baseProps} />
45
47
  case 'grid':
46
- return <ReadOnlyGrid key={id} children={children} />
48
+ return (
49
+ <ReadOnlyGrid key={id} children={children} onClick={onClick} />
50
+ )
47
51
  case 'group':
48
52
  return <ReadOnlyGroup key={id} children={children} />
49
53
  case 'appliances':
50
54
  return <ReadOnlyAppliances {...field} key={id} onEdit={onEdit} />
55
+ case 'notes':
56
+ return <ReadOnlyNotes {...field} key={id} />
51
57
  default:
52
58
  return null
53
59
  }
@@ -1,9 +1,18 @@
1
1
  import { Flex } from '@chakra-ui/react'
2
2
  import { IconTypes, ReadOnlyGridI } from '@/interfaces'
3
- import { ReadOnlyDate, ReadOnlyInput } from '@/components'
3
+ import {
4
+ ReadOnlyDate,
5
+ ReadOnlyGuidelines,
6
+ ReadOnlyInput,
7
+ ReadOnlyItemRelated,
8
+ } from '@/components'
4
9
  import { fieldIcons } from '@/helpers'
5
10
 
6
- export const ReadOnlyGrid = ({ children, ...props }: ReadOnlyGridI) => {
11
+ export const ReadOnlyGrid = ({
12
+ children,
13
+ onClick,
14
+ ...props
15
+ }: ReadOnlyGridI) => {
7
16
  return (
8
17
  <Flex
9
18
  align="stretch"
@@ -13,7 +22,7 @@ export const ReadOnlyGrid = ({ children, ...props }: ReadOnlyGridI) => {
13
22
  p="base"
14
23
  {...props}
15
24
  >
16
- {children?.map(({ id, name, value, type, icon }) => {
25
+ {children?.map(({ children, id, name, value, type, icon }) => {
17
26
  const baseProps = {
18
27
  key: `${id}-${name}-${value}-${type}`,
19
28
  id,
@@ -34,6 +43,26 @@ export const ReadOnlyGrid = ({ children, ...props }: ReadOnlyGridI) => {
34
43
  )
35
44
  case 'date':
36
45
  return <ReadOnlyDate {...baseProps} name={name} p="0" />
46
+
47
+ case 'guidelines':
48
+ return (
49
+ <ReadOnlyGuidelines
50
+ key={id}
51
+ name={name}
52
+ children={children}
53
+ onClick={onClick}
54
+ />
55
+ )
56
+
57
+ case 'item-related':
58
+ return (
59
+ <ReadOnlyItemRelated
60
+ key={id}
61
+ name={name}
62
+ children={children}
63
+ onClick={onClick}
64
+ />
65
+ )
37
66
  default:
38
67
  return null
39
68
  }
@@ -0,0 +1,16 @@
1
+ import { Stack, Text } from '@chakra-ui/react'
2
+ import { ReportI } from '@/interfaces'
3
+
4
+ export const ReadOnlyNotes = ({
5
+ name,
6
+ value,
7
+ }: Pick<ReportI, 'name' | 'value'>) => {
8
+ return (
9
+ <Stack p="base" spacing="base">
10
+ <Text fontSize="xs" textTransform="uppercase">
11
+ {name}
12
+ </Text>
13
+ <Text fontFamily="secondary">{value}</Text>
14
+ </Stack>
15
+ )
16
+ }
@@ -19,7 +19,7 @@ export const ReadOnlyAppliances = ({
19
19
  const rating = children?.find(({ type }) => type === 'rating')
20
20
  const images = children?.find(({ type }) => type === 'images')
21
21
  return (
22
- <Stack spacing="base" p="base">
22
+ <Stack spacing="base" p="base" bg="neutral.white" mt="2px">
23
23
  <Flex justify="space-between">
24
24
  <Text fontSize="xs" textTransform="uppercase">
25
25
  {name}
@@ -0,0 +1,33 @@
1
+ import { Text, Stack, Grid } from '@chakra-ui/react'
2
+ import { HiddenField } from '@/components'
3
+ import { ReadOnlyGuidelinesI } from '@/interfaces'
4
+ import { fieldIcons } from '@/helpers'
5
+
6
+ export const ReadOnlyGuidelines = ({
7
+ name,
8
+ children,
9
+ onClick,
10
+ }: ReadOnlyGuidelinesI) => {
11
+ return (
12
+ <Stack spacing="base">
13
+ <Text fontSize="xs" textTransform="uppercase">
14
+ {name}
15
+ </Text>
16
+ <Grid templateColumns="repeat(2, minmax(80px, 1fr))" gap="base">
17
+ {children?.map((child) => {
18
+ const { id, icon, value } = child
19
+ const btnIcon = icon ? fieldIcons[icon] : ''
20
+ return (
21
+ <HiddenField
22
+ key={id}
23
+ id={id}
24
+ icon={btnIcon}
25
+ name={value as string}
26
+ onClick={() => onClick?.(id)}
27
+ />
28
+ )
29
+ })}
30
+ </Grid>
31
+ </Stack>
32
+ )
33
+ }
@@ -14,6 +14,7 @@ export const ReadOnlyHomeItemImages = (props: Partial<ReportI>) => {
14
14
  <SimpleGrid columns={4} spacing="base">
15
15
  {images?.map((image) => (
16
16
  <Box
17
+ key={image}
17
18
  as="button"
18
19
  backgroundImage={image}
19
20
  backgroundSize="cover"
@@ -0,0 +1,40 @@
1
+ import { Text, Stack, Grid, Box } from '@chakra-ui/react'
2
+ import { HiddenField } from '@/components'
3
+ import { ReadOnlyGuidelinesI } from '@/interfaces'
4
+ import { fieldIcons } from '@/helpers'
5
+
6
+ export const ReadOnlyItemRelated = ({
7
+ name,
8
+ children,
9
+ onClick,
10
+ }: ReadOnlyGuidelinesI) => {
11
+ return (
12
+ <Box
13
+ borderLeft="1px solid"
14
+ borderColor="lightBlue.6"
15
+ pl="4"
16
+ marginInlineStart="auto"
17
+ >
18
+ <Stack spacing="base">
19
+ <Text fontSize="xs" textTransform="uppercase">
20
+ {name}
21
+ </Text>
22
+ <Grid templateColumns="repeat(2, minmax(80px, 1fr))" gap="base">
23
+ {children?.map((child) => {
24
+ const { id, icon, value } = child
25
+ const btnIcon = icon ? fieldIcons[icon] : ''
26
+ return (
27
+ <HiddenField
28
+ key={id}
29
+ id={id}
30
+ icon={btnIcon}
31
+ name={value as string}
32
+ onClick={() => onClick?.(id)}
33
+ />
34
+ )
35
+ })}
36
+ </Grid>
37
+ </Stack>
38
+ </Box>
39
+ )
40
+ }
@@ -1,4 +1,6 @@
1
1
  export * from './ReadOnlyAppliances'
2
+ export * from './ReadOnlyGuidelines'
2
3
  export * from './ReadOnlyHomeItemImages'
3
4
  export * from './ReadOnlyHomeItemRating'
4
5
  export * from './ReadOnlyHomeItemText'
6
+ export * from './ReadOnlyItemRelated'
@@ -4,6 +4,7 @@ export * from './ReadOnlyImage'
4
4
  export * from './ReadOnlyGrid'
5
5
  export * from './ReadOnlyGroup'
6
6
  export * from './ReadOnlyInput'
7
+ export * from './ReadOnlyNotes'
7
8
  export * from './ReadOnlyRating'
8
9
  export * from './ReadOnlyTextArea'
9
10
  export * from './ReadOnlyWrapper'
@@ -6,6 +6,7 @@ import { ViewingHomeItemPanelI } from '@/interfaces'
6
6
 
7
7
  export const ViewingHomeItemPanel = ({
8
8
  form,
9
+ onClick,
9
10
  onClose,
10
11
  onEdit,
11
12
  }: ViewingHomeItemPanelI) => {
@@ -38,7 +39,7 @@ export const ViewingHomeItemPanel = ({
38
39
  <TabsHeader tabList={tabs} rightTabList={rightTabs} />
39
40
  </Box>
40
41
  </DrawerHeader>
41
- <ReadOnlyDynamicForm form={form} onEdit={onEdit} />
42
+ <ReadOnlyDynamicForm form={form} onClick={onClick} onEdit={onEdit} />
42
43
  </DrawerContent>
43
44
  )
44
45
  }
@@ -50,6 +50,7 @@ import {
50
50
  HomeCleaning,
51
51
  HouseWashing,
52
52
  PressureWasher,
53
+ BookOpened,
53
54
  } from '@/assets/images'
54
55
  import { IconTypes } from '@/interfaces'
55
56
 
@@ -57,6 +58,7 @@ export const fieldIcons: Record<IconTypes, string> = {
57
58
  barcode: Barcode,
58
59
  billing: Billing,
59
60
  book: Book,
61
+ 'book-opened': BookOpened,
60
62
  calc: Calc,
61
63
  check: CheckPen,
62
64
  contact: Contacts,
@@ -10,6 +10,7 @@ type KindTypes =
10
10
  | 'grid'
11
11
  | 'group'
12
12
  | 'hidden'
13
+ | 'notes'
13
14
  | 'number'
14
15
  | 'radio'
15
16
  | 'rating'
@@ -35,13 +36,19 @@ type UIKindTypes =
35
36
  | 'primary-cta'
36
37
  | 'secondary-cta'
37
38
 
38
- type HomeItemTypes = 'appliances' | 'images'
39
+ type HomeItemTypes =
40
+ | 'appliances'
41
+ | 'images'
42
+ | 'guidelines'
43
+ | 'item-related'
44
+ | 'item-icon-btn'
39
45
 
40
46
  export type IconTypes =
41
47
  | 'barcode'
42
48
  | 'battery'
43
49
  | 'billing'
44
50
  | 'book'
51
+ | 'book-opened'
45
52
  | 'calc'
46
53
  | 'calendar'
47
54
  | 'check'
@@ -131,4 +138,5 @@ export interface DynamicFormProxyI {
131
138
 
132
139
  export interface ReadOnlyDynamicFormI extends Pick<DynamicFormI, 'form'> {
133
140
  onEdit?: (id: string) => void
141
+ onClick?: (id: string) => void
134
142
  }
@@ -3,4 +3,6 @@ import { FlexProps } from '@chakra-ui/react'
3
3
 
4
4
  export interface ReadOnlyGridI
5
5
  extends Pick<ReportI, 'children'>,
6
- Omit<FlexProps, 'children'> {}
6
+ Omit<FlexProps, 'children' | 'onClick'> {
7
+ onClick?: (id: string) => void
8
+ }
@@ -0,0 +1,6 @@
1
+ import { ReportI } from '@/interfaces'
2
+
3
+ export interface ReadOnlyGuidelinesI
4
+ extends Pick<ReportI, 'children' | 'name'> {
5
+ onClick?: (id: string) => void
6
+ }
@@ -1 +1,2 @@
1
1
  export * from './ReadOnlyAppliances.interface'
2
+ export * from './ReadOnlyGuidelines.interface'
@@ -4,4 +4,5 @@ export interface ViewingHomeItemPanelI {
4
4
  form: ReportI[]
5
5
  onClose: () => void
6
6
  onEdit: (id: string) => void
7
+ onClick?: (id: string) => void
7
8
  }
@@ -4,11 +4,11 @@ export interface InboxMessageI {
4
4
  _id: string
5
5
  currentUser?: Partial<UserProfileI>
6
6
  chatReplies?: InboxMessageI[]
7
- description: string
7
+ description?: string
8
8
  date: Date
9
9
  from: string
10
10
  isNew?: boolean
11
- subject: string
11
+ subject?: string
12
12
  }
13
13
 
14
14
  export interface MessageCardI {
@@ -646,4 +646,64 @@ export const viewingHomeItemMock: ReportI[] = [
646
646
  },
647
647
  ],
648
648
  },
649
+ {
650
+ id: faker.database.mongodbObjectId(),
651
+ value: '',
652
+ type: 'grid',
653
+ visible: true,
654
+ children: [
655
+ {
656
+ id: faker.database.mongodbObjectId(),
657
+ name: 'Care & Guidelines',
658
+ value: '',
659
+ type: 'guidelines',
660
+ visible: true,
661
+ children: [
662
+ {
663
+ id: faker.database.mongodbObjectId(),
664
+ icon: 'umbrella',
665
+ value: 'warranty',
666
+ type: 'item-icon-btn',
667
+ visible: true,
668
+ link: 'www.kitchenaid.com',
669
+ },
670
+ {
671
+ id: faker.database.mongodbObjectId(),
672
+ icon: 'book-opened',
673
+ value: 'manual',
674
+ type: 'item-icon-btn',
675
+ visible: true,
676
+ link: 'www.kitchenaid.com',
677
+ },
678
+ ],
679
+ },
680
+ {
681
+ id: faker.database.mongodbObjectId(),
682
+ name: 'Related',
683
+ value: '',
684
+ type: 'item-related',
685
+ visible: true,
686
+ children: [
687
+ {
688
+ id: faker.database.mongodbObjectId(),
689
+ icon: 'drop',
690
+ value: 'filter',
691
+ type: 'item-icon-btn',
692
+ visible: true,
693
+ link: 'www.kitchenaid.com',
694
+ },
695
+ ],
696
+ },
697
+ ],
698
+ },
699
+ {
700
+ id: faker.database.mongodbObjectId(),
701
+ name: 'Notes',
702
+ description: '',
703
+ comments: faker.lorem.sentence(),
704
+ value: faker.lorem.paragraphs(),
705
+ type: 'notes',
706
+ visible: true,
707
+ options: [],
708
+ },
649
709
  ]
@@ -39,7 +39,6 @@ export const messagesMock: InboxMessageI[] = [
39
39
  currentUser: {
40
40
  userName: currentUserName,
41
41
  },
42
- description: faker.lorem.paragraphs(),
43
42
  date: faker.date.recent(),
44
43
  from: faker.person.fullName(),
45
44
  isNew: true,
@@ -83,7 +82,6 @@ export const messagesMock: InboxMessageI[] = [
83
82
  date: faker.date.recent(),
84
83
  from: faker.person.fullName(),
85
84
  isNew: false,
86
- subject: faker.lorem.words(),
87
85
  },
88
86
  {
89
87
  _id: faker.database.mongodbObjectId(),
@@ -187,6 +187,7 @@ import {
187
187
  WizardQuick,
188
188
  YellowFolder,
189
189
  YellowFolderUnshared,
190
+ BookOpened,
190
191
  } from '@/assets/images'
191
192
 
192
193
  import {
@@ -279,6 +280,7 @@ export const Illustrations = () => {
279
280
  <IconWrapper icon={BillingAddress} name="BillingAddress" />
280
281
  <IconWrapper icon={BlueFolder} name="BlueFolder" />
281
282
  <IconWrapper icon={BlueFolderShared} name="BlueFolderShared" />
283
+ <IconWrapper icon={BookOpened} name="BookOpened" />
282
284
  <IconWrapper icon={BoxIcon} name="Box" />
283
285
  <IconWrapper icon={Building} name="Building" />
284
286
  <IconWrapper icon={Calc} name="Calc" />
@@ -10,6 +10,7 @@ export default {
10
10
  args: {
11
11
  form: viewingHomeItemMock,
12
12
  onEdit: action('onEdit'),
13
+ onClick: action('onClick'),
13
14
  },
14
15
  decorators: [
15
16
  (Story) => (