@homefile/components-v2 2.31.1 → 2.33.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 (65) hide show
  1. package/dist/assets/images/flower.svg +19 -0
  2. package/dist/assets/images/index.d.ts +3 -1
  3. package/dist/assets/images/index.js +3 -1
  4. package/dist/assets/images/index.ts +4 -0
  5. package/dist/assets/images/magnifying-glass-person.svg +18 -0
  6. package/dist/components/forms/dynamicForm/DynamicForm.js +3 -1
  7. package/dist/components/forms/dynamicForm/fields/HomeInitialSetup.d.ts +2 -0
  8. package/dist/components/forms/dynamicForm/fields/HomeInitialSetup.js +17 -0
  9. package/dist/components/forms/dynamicForm/fields/index.d.ts +1 -0
  10. package/dist/components/forms/dynamicForm/fields/index.js +1 -0
  11. package/dist/components/homeAssistant/HomeAssistantButton.js +2 -2
  12. package/dist/components/homeAssistant/HomeAssistantSteps.js +1 -7
  13. package/dist/components/homeAssistant/index.d.ts +1 -0
  14. package/dist/components/homeAssistant/index.js +1 -0
  15. package/dist/components/homeAssistant/wizard/HomeAssistantWizardButton.d.ts +2 -0
  16. package/dist/components/homeAssistant/wizard/HomeAssistantWizardButton.js +29 -0
  17. package/dist/components/homeAssistant/wizard/HomeAssistantWizardSteps.d.ts +2 -0
  18. package/dist/components/homeAssistant/wizard/HomeAssistantWizardSteps.js +8 -0
  19. package/dist/components/homeAssistant/wizard/index.d.ts +2 -0
  20. package/dist/components/homeAssistant/wizard/index.js +2 -0
  21. package/dist/components/sendDocument/RecipientContent.js +1 -1
  22. package/dist/components/wizard/WizardInitialOptions.d.ts +2 -0
  23. package/dist/components/wizard/WizardInitialOptions.js +40 -0
  24. package/dist/components/wizard/WizardTextBody.d.ts +2 -0
  25. package/dist/components/wizard/WizardTextBody.js +5 -0
  26. package/dist/components/wizard/index.d.ts +2 -0
  27. package/dist/components/wizard/index.js +2 -0
  28. package/dist/helpers/forms/dynamicForm.helper.js +7 -2
  29. package/dist/helpers/homeAssistant/HomeAssistant.helper.d.ts +1 -0
  30. package/dist/helpers/homeAssistant/HomeAssistant.helper.js +23 -1
  31. package/dist/interfaces/forms/dynamicForm/DynamicForm.interface.d.ts +3 -2
  32. package/dist/interfaces/forms/dynamicForm/fields/UIFields.interface.d.ts +1 -1
  33. package/dist/interfaces/homeAssistant/HomeAssistantButton.interface.d.ts +2 -2
  34. package/dist/mocks/forms/dynamicForm.mock.d.ts +1 -0
  35. package/dist/mocks/forms/dynamicForm.mock.js +71 -0
  36. package/dist/stories/assets/Illustrations.stories.js +2 -2
  37. package/dist/stories/wizard/ControlledWizard.stories.js +20 -6
  38. package/dist/utils/Styles.utils.d.ts +1 -0
  39. package/dist/utils/Styles.utils.js +7 -0
  40. package/package.json +1 -1
  41. package/src/assets/images/flower.svg +19 -0
  42. package/src/assets/images/index.ts +4 -0
  43. package/src/assets/images/magnifying-glass-person.svg +18 -0
  44. package/src/components/forms/dynamicForm/DynamicForm.tsx +10 -0
  45. package/src/components/forms/dynamicForm/fields/HomeInitialSetup.tsx +34 -0
  46. package/src/components/forms/dynamicForm/fields/index.ts +1 -0
  47. package/src/components/homeAssistant/HomeAssistantButton.tsx +2 -2
  48. package/src/components/homeAssistant/HomeAssistantSteps.tsx +1 -6
  49. package/src/components/homeAssistant/index.ts +1 -0
  50. package/src/components/homeAssistant/wizard/HomeAssistantWizardButton.tsx +87 -0
  51. package/src/components/homeAssistant/wizard/HomeAssistantWizardSteps.tsx +28 -0
  52. package/src/components/homeAssistant/wizard/index.ts +2 -0
  53. package/src/components/sendDocument/RecipientContent.tsx +1 -4
  54. package/src/components/wizard/WizardInitialOptions.tsx +110 -0
  55. package/src/components/wizard/WizardTextBody.tsx +23 -0
  56. package/src/components/wizard/index.ts +2 -0
  57. package/src/helpers/forms/dynamicForm.helper.ts +12 -2
  58. package/src/helpers/homeAssistant/HomeAssistant.helper.tsx +25 -0
  59. package/src/interfaces/forms/dynamicForm/DynamicForm.interface.ts +32 -20
  60. package/src/interfaces/forms/dynamicForm/fields/UIFields.interface.ts +1 -1
  61. package/src/interfaces/homeAssistant/HomeAssistantButton.interface.ts +2 -2
  62. package/src/mocks/forms/dynamicForm.mock.ts +79 -0
  63. package/src/stories/assets/Illustrations.stories.tsx +4 -0
  64. package/src/stories/wizard/ControlledWizard.stories.tsx +42 -4
  65. package/src/utils/Styles.utils.ts +6 -0
@@ -0,0 +1,19 @@
1
+ <svg id="Grupo_24121" data-name="Grupo 24121" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="14.052" height="19.279" viewBox="0 0 14.052 19.279">
2
+ <defs>
3
+ <clipPath id="clip-path">
4
+ <rect id="Retângulo_27483" data-name="Retângulo 27483" width="14.052" height="19.279" transform="translate(0 0)" fill="none"/>
5
+ </clipPath>
6
+ </defs>
7
+ <g id="Grupo_24104" data-name="Grupo 24104" transform="translate(0 0)" clip-path="url(#clip-path)">
8
+ <path id="Caminho_18794" data-name="Caminho 18794" d="M12.973,11.755h-.006a5.874,5.874,0,1,1,.006,0m4.262-5.878a4.269,4.269,0,1,0-4.269,4.269,4.269,4.269,0,0,0,4.269-4.269" transform="translate(-5.947 0)" fill="#fea856"/>
9
+ <path id="Caminho_18795" data-name="Caminho 18795" d="M21.34,9.981a4.269,4.269,0,1,1-4.269,4.269A4.269,4.269,0,0,1,21.34,9.981" transform="translate(-14.32 -8.373)" fill="#f6cf76"/>
10
+ <path id="Caminho_18796" data-name="Caminho 18796" d="M56.37,84.406l4.966-2.465c-.032.089-1.08,2.913-2.111,3.431a2.121,2.121,0,0,1-2.846-.944l-.01-.021" transform="translate(-47.286 -68.737)" fill="#00a1aa"/>
11
+ <path id="Caminho_18797" data-name="Caminho 18797" d="M60.217,79.2l0,0-4.966,2.465a2.12,2.12,0,0,1,.954-2.825c1.047-.525,4.014.358,4.014.358" transform="translate(-46.165 -65.997)" fill="#00c0b7"/>
12
+ <path id="Caminho_18798" data-name="Caminho 18798" d="M4.976,84.406l-.01.021a2.121,2.121,0,0,1-2.846.944C1.09,84.854.042,82.03.01,81.941Z" transform="translate(-0.008 -68.737)" fill="#00a1aa"/>
13
+ <path id="Caminho_18799" data-name="Caminho 18799" d="M4.014,78.842a2.12,2.12,0,0,1,.954,2.825L0,79.2H0s2.967-.883,4.014-.358" transform="translate(0 -65.997)" fill="#00c0b7"/>
14
+ <rect id="Retângulo_27482" data-name="Retângulo 27482" width="0.483" height="7.554" transform="translate(6.784 11.725)" fill="#00a1aa"/>
15
+ <path id="Caminho_18800" data-name="Caminho 18800" d="M32.225,97.353,30.163,96.33l.215-.433,2.058,1.022-.1.22Z" transform="translate(-25.303 -80.444)" fill="#00a1aa"/>
16
+ <path id="Caminho_18801" data-name="Caminho 18801" d="M43.1,97.352l-.224-.428L44.943,95.9l.215.433Z" transform="translate(-35.967 -80.444)" fill="#00a1aa"/>
17
+ <path id="Caminho_18802" data-name="Caminho 18802" d="M34.149,22.661a1.184,1.184,0,0,0,.657.324v-1.75a4.449,4.449,0,0,1-.6-.188,1.523,1.523,0,0,1-.423-.244.846.846,0,0,1-.248-.347,1.521,1.521,0,0,1,.026-1.04,1.331,1.331,0,0,1,.716-.716,1.64,1.64,0,0,1,.531-.126v-.436h.363v.442a1.371,1.371,0,0,1,.852.4,1.889,1.889,0,0,1,.449.911h-.561a.879.879,0,0,0-.74-.766v1.624l.4.106a1.781,1.781,0,0,1,.31.116,1.42,1.42,0,0,1,.344.228,1.276,1.276,0,0,1,.281.363,1.1,1.1,0,0,1,.115.521,1.428,1.428,0,0,1-.109.574,1.31,1.31,0,0,1-.3.432,1.417,1.417,0,0,1-.456.287,2.009,2.009,0,0,1-.581.132v.541h-.363v-.541a1.54,1.54,0,0,1-1.492-1.545h.562a.978.978,0,0,0,.274.7m.119-3.331a.721.721,0,0,0-.221.571.7.7,0,0,0,.056.294.557.557,0,0,0,.158.2,1.027,1.027,0,0,0,.241.142,2.448,2.448,0,0,0,.3.106V19.1a.942.942,0,0,0-.538.228m1.241,3.588a.784.784,0,0,0,.271-.155.675.675,0,0,0,.178-.258.978.978,0,0,0,.063-.366.65.65,0,0,0-.244-.541,1.018,1.018,0,0,0-.271-.155c-.106-.042-.218-.08-.337-.116v1.658a1.35,1.35,0,0,0,.34-.066" transform="translate(-27.946 -15.216)" fill="#fff"/>
18
+ </g>
19
+ </svg>
@@ -57,6 +57,7 @@ import FilterSize from './filter-size.png';
57
57
  import Finance from './finance.svg';
58
58
  import Fire from './fire.svg';
59
59
  import Flag from './flag.png';
60
+ import Flower from './flower.svg';
60
61
  import FormSent from './form-sent.svg';
61
62
  import Foundation from './foundation.svg';
62
63
  import Garage from './garage.svg';
@@ -91,6 +92,7 @@ import Location from './location.jpg';
91
92
  import LogoCompany from './logo-company.svg';
92
93
  import LogoSmall from './logo-small.svg';
93
94
  import MagnifyingGlassReport from './magnifying-glass-report.svg';
95
+ import MagnifyingGlassPerson from './magnifying-glass-person.svg';
94
96
  import Manager from './manager.svg';
95
97
  import MasterBedroom from './master-bedroom.svg';
96
98
  import Member from './member.svg';
@@ -165,7 +167,7 @@ import WizardDetailed from './wizard-detailed.svg';
165
167
  import WizardQuick from './wizard-quick.svg';
166
168
  import YellowFolder from './yellow-folder.svg';
167
169
  import YellowFolderUnshared from './yellow-folder-unshared.svg';
168
- 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, LifePreserver, Light, LivingRoom, Loading, Location, LogoCompany, LogoSmall, MagnifyingGlassReport, Manager, MasterBedroom, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Office, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plant, 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, };
170
+ 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, Flower, 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, LifePreserver, Light, LivingRoom, Loading, Location, LogoCompany, LogoSmall, MagnifyingGlassReport, MagnifyingGlassPerson, Manager, MasterBedroom, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Office, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plant, 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, };
169
171
  export * from './alerts';
170
172
  export * from './animations';
171
173
  export * from './appliances';
@@ -57,6 +57,7 @@ import FilterSize from './filter-size.png';
57
57
  import Finance from './finance.svg';
58
58
  import Fire from './fire.svg';
59
59
  import Flag from './flag.png';
60
+ import Flower from './flower.svg';
60
61
  import FormSent from './form-sent.svg';
61
62
  import Foundation from './foundation.svg';
62
63
  import Garage from './garage.svg';
@@ -91,6 +92,7 @@ import Location from './location.jpg';
91
92
  import LogoCompany from './logo-company.svg';
92
93
  import LogoSmall from './logo-small.svg';
93
94
  import MagnifyingGlassReport from './magnifying-glass-report.svg';
95
+ import MagnifyingGlassPerson from './magnifying-glass-person.svg';
94
96
  import Manager from './manager.svg';
95
97
  import MasterBedroom from './master-bedroom.svg';
96
98
  import Member from './member.svg';
@@ -165,7 +167,7 @@ import WizardDetailed from './wizard-detailed.svg';
165
167
  import WizardQuick from './wizard-quick.svg';
166
168
  import YellowFolder from './yellow-folder.svg';
167
169
  import YellowFolderUnshared from './yellow-folder-unshared.svg';
168
- 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, LifePreserver, Light, LivingRoom, Loading, Location, LogoCompany, LogoSmall, MagnifyingGlassReport, Manager, MasterBedroom, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Office, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plant, 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, };
170
+ 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, Flower, 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, LifePreserver, Light, LivingRoom, Loading, Location, LogoCompany, LogoSmall, MagnifyingGlassReport, MagnifyingGlassPerson, Manager, MasterBedroom, Member, Message, MobileDrop, Money, Mudroom, NeedHelp, Office, Painting, PartnerGeneric, Patio, PdfIcon, PersonMail, Plant, 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, };
169
171
  export * from './alerts';
170
172
  export * from './animations';
171
173
  export * from './appliances';
@@ -57,6 +57,7 @@ import FilterSize from './filter-size.png'
57
57
  import Finance from './finance.svg'
58
58
  import Fire from './fire.svg'
59
59
  import Flag from './flag.png'
60
+ import Flower from './flower.svg'
60
61
  import FormSent from './form-sent.svg'
61
62
  import Foundation from './foundation.svg'
62
63
  import Garage from './garage.svg'
@@ -91,6 +92,7 @@ import Location from './location.jpg'
91
92
  import LogoCompany from './logo-company.svg'
92
93
  import LogoSmall from './logo-small.svg'
93
94
  import MagnifyingGlassReport from './magnifying-glass-report.svg'
95
+ import MagnifyingGlassPerson from './magnifying-glass-person.svg'
94
96
  import Manager from './manager.svg'
95
97
  import MasterBedroom from './master-bedroom.svg'
96
98
  import Member from './member.svg'
@@ -226,6 +228,7 @@ export {
226
228
  Finance,
227
229
  Fire,
228
230
  Flag,
231
+ Flower,
229
232
  FormSent,
230
233
  Foundation,
231
234
  Garage,
@@ -260,6 +263,7 @@ export {
260
263
  LogoCompany,
261
264
  LogoSmall,
262
265
  MagnifyingGlassReport,
266
+ MagnifyingGlassPerson,
263
267
  Manager,
264
268
  MasterBedroom,
265
269
  Member,
@@ -0,0 +1,18 @@
1
+ <svg id="Grupo_24123" data-name="Grupo 24123" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="19.589" height="19.609" viewBox="0 0 19.589 19.609">
2
+ <defs>
3
+ <clipPath id="clip-path">
4
+ <rect id="Retângulo_27505" data-name="Retângulo 27505" width="19.589" height="19.609" fill="none"/>
5
+ </clipPath>
6
+ </defs>
7
+ <g id="Grupo_24111" data-name="Grupo 24111" clip-path="url(#clip-path)">
8
+ <path id="Caminho_18811" data-name="Caminho 18811" d="M74.38,72.591l-2.605-2.605-.68-.682-2.268-2.268c-.01-.01-.023-.019-.033-.03-.03.045-.061.091-.1.135-.063.091-.129.178-.2.266s-.14.173-.215.259c-.11.128-.227.252-.348.372s-.252.243-.381.353c-.042.04-.086.077-.129.112-.175.147-.357.283-.542.411.012.012.021.024.033.037l2.266,2.266.682.682,2.605,2.6a1.352,1.352,0,0,0,1.913-1.913" transform="translate(-55.187 -55.29)" fill="#323954"/>
9
+ <path id="Caminho_18812" data-name="Caminho 18812" d="M12.746,2.186a7.47,7.47,0,0,1,.86,9.529c-.03.045-.061.091-.1.135-.065.089-.133.178-.2.266s-.142.173-.215.259c-.11.128-.227.252-.348.372s-.252.243-.381.353c-.042.038-.086.075-.129.112-.177.145-.358.281-.544.409l0,0A7.467,7.467,0,1,1,12.746,2.186m-1.234,9.324a5.721,5.721,0,1,0-8.09,0,5.721,5.721,0,0,0,8.09,0" transform="translate(0 0)" fill="#40566b"/>
10
+ <path id="Caminho_18813" data-name="Caminho 18813" d="M33.145,25.357c0,.04.005.079.005.117V26.4a2.462,2.462,0,0,1-.376,1.315,2.489,2.489,0,0,1-4.228,0,2.462,2.462,0,0,1-.376-1.315v-.923c0-.065,0-.129.009-.194a2.447,2.447,0,0,0,.645.087,2.489,2.489,0,0,0,2.263-1.451,2.487,2.487,0,0,0,2.058,1.441" transform="translate(-23.245 -19.734)" fill="#daf1f3"/>
11
+ <path id="Caminho_18814" data-name="Caminho 18814" d="M28.269,45.626A2.2,2.2,0,0,1,29.6,47.99H22.711a2.2,2.2,0,0,1,1.33-2.364,2.489,2.489,0,0,0,4.228,0" transform="translate(-18.74 -37.649)" fill="#00c0b7"/>
12
+ <path id="Caminho_18815" data-name="Caminho 18815" d="M45.07,19.086a2.49,2.49,0,0,1,1.839,2.285,2.487,2.487,0,0,1-2.058-1.441,2.477,2.477,0,0,0,.219-.844" transform="translate(-37.009 -15.749)" fill="#323954"/>
13
+ <path id="Caminho_18816" data-name="Caminho 18816" d="M31.347,18.673a2.48,2.48,0,0,1-3.126,2.208,2.49,2.49,0,0,1,2.481-2.3c.068,0,.136.005.2.011a2.447,2.447,0,0,1,.442.077" transform="translate(-23.287 -15.336)" fill="#40566b"/>
14
+ <path id="Caminho_18817" data-name="Caminho 18817" d="M34.695,35.7h-.8a.175.175,0,1,1,0-.35h.8a.175.175,0,1,1,0,.35" transform="translate(-27.825 -29.166)" fill="#40566b"/>
15
+ <path id="Caminho_18818" data-name="Caminho 18818" d="M45.495,35.7h-.8a.175.175,0,1,1,0-.35h.8a.175.175,0,1,1,0,.35" transform="translate(-36.737 -29.166)" fill="#40566b"/>
16
+ <path id="Caminho_18819" data-name="Caminho 18819" d="M38.971,43.543a1.158,1.158,0,0,1-.6-.166.175.175,0,0,1,.18-.3.815.815,0,0,0,1.021-.16.175.175,0,1,1,.265.229,1.149,1.149,0,0,1-.87.4" transform="translate(-31.596 -35.363)" fill="#40566b"/>
17
+ </g>
18
+ </svg>
@@ -14,7 +14,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
14
14
  import { FormProvider } from 'react-hook-form';
15
15
  import { t } from 'i18next';
16
16
  import { Box, Stack, Text } from '@chakra-ui/react';
17
- import { HiddenFieldSection, GroupField, TextField, TextAreaField, SelectField, RatingField, GridField, FieldWithDelete, FileField, SwitchField, DateField, NumberField, CurrencyField, TileBody, CheckboxGroupField, CheckboxAgreement, AIGridField, SearchItemLoader, EditCollapsible, } from '../..';
17
+ import { HiddenFieldSection, GroupField, TextField, TextAreaField, SelectField, RatingField, GridField, FieldWithDelete, FileField, SwitchField, DateField, NumberField, CurrencyField, TileBody, CheckboxGroupField, CheckboxAgreement, AIGridField, SearchItemLoader, EditCollapsible, HomeInitialSetup, } from '../..';
18
18
  import { useDynamicForm } from '../../../hooks';
19
19
  import { fieldIcons } from '../../../helpers';
20
20
  export const DynamicForm = (_a) => {
@@ -89,6 +89,8 @@ export const DynamicForm = (_a) => {
89
89
  return (_jsx(CheckboxAgreement, { id: id, name: name, value: value, description: description, comments: comments }, id));
90
90
  case 'tile-body':
91
91
  return (_createElement(TileBody, Object.assign({}, props, { key: id, callback: callback, fields: children, menuItems: menuItems })));
92
+ case 'home-wizard':
93
+ return (_createElement(HomeInitialSetup, Object.assign({}, props, { key: id, callback: callback, fields: children })));
92
94
  default:
93
95
  return null;
94
96
  }
@@ -0,0 +1,2 @@
1
+ import { FieldTypesI } from '../../../../interfaces';
2
+ export declare const HomeInitialSetup: ({ fields, callback }: FieldTypesI) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Stack } from '@chakra-ui/react';
3
+ import { WizardTextBody, WizardInitialOptions } from '../../..';
4
+ export const HomeInitialSetup = ({ fields, callback }) => {
5
+ return (_jsx(Stack, { bg: "neutral.white", spacing: "10", children: fields === null || fields === void 0 ? void 0 : fields.map(({ children = [], id, label = '', type, value, description }) => {
6
+ switch (type) {
7
+ case 'home-wizard-header':
8
+ return (_jsx(WizardTextBody, { title: label, subtitle: description }, id));
9
+ case 'home-wizard-initial-setup':
10
+ return (_jsx(WizardInitialOptions, { form: children, title: String(value), callback: callback }, id));
11
+ case 'home-wizard-step-options':
12
+ return _jsx(_Fragment, {});
13
+ default:
14
+ return null;
15
+ }
16
+ }) }));
17
+ };
@@ -9,6 +9,7 @@ export * from './FieldWithDelete';
9
9
  export * from './FileField';
10
10
  export * from './GridField';
11
11
  export * from './GroupField';
12
+ export * from './HomeInitialSetup';
12
13
  export * from './LabeledField';
13
14
  export * from './NumberField';
14
15
  export * from './SwitchField';
@@ -9,6 +9,7 @@ export * from './FieldWithDelete';
9
9
  export * from './FileField';
10
10
  export * from './GridField';
11
11
  export * from './GroupField';
12
+ export * from './HomeInitialSetup';
12
13
  export * from './LabeledField';
13
14
  export * from './NumberField';
14
15
  export * from './SwitchField';
@@ -2,13 +2,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Box, Center, Image, Stack, Text } from '@chakra-ui/react';
3
3
  import { CheckInCircle } from '../../assets/images';
4
4
  import { getIconAltText } from '../../utils';
5
- export const HomeAssistantButton = ({ currentStep, onStepClick, status, step, }) => {
5
+ export const HomeAssistantButton = ({ currentStep = 1, onStepClick, status, step, }) => {
6
6
  const iconAltText = getIconAltText(step.icon);
7
7
  const isCompleted = status === 'completed';
8
8
  const isPending = status === 'pending';
9
9
  const handleClick = () => {
10
10
  if (!isPending)
11
- onStepClick(currentStep);
11
+ onStepClick === null || onStepClick === void 0 ? void 0 : onStepClick(currentStep);
12
12
  };
13
13
  const buttonId = `homeAssistantButton-${currentStep}`;
14
14
  return (_jsxs(Box, { position: "relative", id: buttonId, zIndex: "2", children: [isCompleted && (_jsx(Image, { src: CheckInCircle || null, alt: "check", w: "22px", h: "auto", position: "absolute", top: "-4px", left: "-2px", boxShadow: "lg", borderRadius: "full" })), _jsxs(Stack, Object.assign({ as: "button", spacing: "2", borderRadius: "lg", boxShadow: "lg", border: "1px solid transparent", w: "116px", align: "center", h: "106px", py: "base", onClick: handleClick }, setStyles(status), { children: [_jsx(Center, { h: "60%", children: (step === null || step === void 0 ? void 0 : step.icon) && (_jsx(Image, { src: step.icon, alt: iconAltText, w: "auto", h: "38px" })) }), _jsx(Center, { h: "40%", children: _jsx(Text, { fontSize: "sm", textTransform: "uppercase", textAlign: "center", lineHeight: "14px", children: step.title }) })] }))] }));
@@ -3,6 +3,7 @@ import { Center, SimpleGrid, Stack } from '@chakra-ui/react';
3
3
  import { HomeAssistantButton, HomeAssistantStepper } from '..';
4
4
  import { homeAssistantSteps } from '../../helpers';
5
5
  import { homeAssistantProxy } from '../../proxies';
6
+ import { getStatus } from '../../utils';
6
7
  export const HomeAssistantSteps = ({ currentStep, onStepClick, currentPanel, }) => {
7
8
  const { setSelectedId } = homeAssistantProxy;
8
9
  return (_jsxs(Stack, { spacing: "8", w: "fit-content", position: "relative", top: ['-10px', '-30px'], children: [_jsx(HomeAssistantStepper, { currentStep: currentStep, totalSteps: 6 }), _jsx(SimpleGrid, { columns: [2, 3], spacing: "base", children: homeAssistantSteps.map((step, index) => (_jsx(Center, { w: "100%", children: _jsx(HomeAssistantButton, { currentStep: index + 1, onStepClick: (step) => {
@@ -10,10 +11,3 @@ export const HomeAssistantSteps = ({ currentStep, onStepClick, currentPanel, })
10
11
  setSelectedId(`homeAssistantButton-${index + 1}`);
11
12
  }, status: getStatus(index + 1, currentStep), step: step }) }, step.title))) })] }));
12
13
  };
13
- const getStatus = (index, currentStep) => {
14
- if (index === currentStep)
15
- return 'active';
16
- if (index < currentStep)
17
- return 'completed';
18
- return 'pending';
19
- };
@@ -1,5 +1,6 @@
1
1
  export * from './monitorAlerts';
2
2
  export * from './panel';
3
+ export * from './wizard';
3
4
  export * from './HomeAssistant';
4
5
  export * from './HomeAssistantButton';
5
6
  export * from './HomeAssistantStepper';
@@ -1,5 +1,6 @@
1
1
  export * from './monitorAlerts';
2
2
  export * from './panel';
3
+ export * from './wizard';
3
4
  export * from './HomeAssistant';
4
5
  export * from './HomeAssistantButton';
5
6
  export * from './HomeAssistantStepper';
@@ -0,0 +1,2 @@
1
+ import { HomeAssistantButtonI } from '../../../interfaces';
2
+ export declare const HomeAssistantWizardButton: ({ status, step, }: HomeAssistantButtonI) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Center, Image, Stack, Text } from '@chakra-ui/react';
3
+ import { CheckInCircle } from '../../../assets/images';
4
+ import { getIconAltText } from '../../../utils';
5
+ export const HomeAssistantWizardButton = ({ status, step, }) => {
6
+ const iconAltText = getIconAltText(step.icon);
7
+ const isCompleted = status === 'completed';
8
+ const isActive = status === 'active';
9
+ return (_jsxs(Stack, { position: "relative", spacing: "4", children: [isCompleted && (_jsx(Image, { src: CheckInCircle || null, alt: "check", w: "22px", h: "auto", position: "absolute", top: "-6px", left: "-8px", boxShadow: "lg", borderRadius: "full" })), _jsxs(Stack, Object.assign({ spacing: "0", borderRadius: "md", boxShadow: "lg", border: "1px solid transparent", pt: "2", align: "center", w: "70px", h: "63px", cursor: "default" }, setStyles(status), { children: [(step === null || step === void 0 ? void 0 : step.icon) && (_jsx(Box, { boxSize: "24px", children: _jsx(Image, { src: step.icon, alt: iconAltText, w: "full", h: "full", objectFit: "contain" }) })), _jsx(Center, { h: "50%", children: _jsx(Text, { fontSize: "8px", textTransform: "uppercase", textAlign: "center", lineHeight: "1", children: step.title }) })] })), _jsx(Box, { h: "6px", bg: isActive ? 'blue.8' : 'transparent' })] }));
10
+ };
11
+ const setStyles = (status) => {
12
+ switch (status) {
13
+ case 'completed':
14
+ return {
15
+ bg: 'neutral.white',
16
+ borderColor: 'green.1',
17
+ };
18
+ case 'active':
19
+ return {
20
+ bg: 'neutral.white',
21
+ borderColor: 'blue.8',
22
+ };
23
+ case 'pending':
24
+ return {
25
+ bg: 'neutral.white',
26
+ filter: 'grayscale(1) opacity(0.2)',
27
+ };
28
+ }
29
+ };
@@ -0,0 +1,2 @@
1
+ import { HomeAssistantStepsI } from '../../../interfaces';
2
+ export declare const HomeAssistantWizardSteps: ({ currentStep, }: Pick<HomeAssistantStepsI, "currentStep">) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,8 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Center, Flex } from '@chakra-ui/react';
3
+ import { HomeAssistantWizardButton } from '../..';
4
+ import { homeAssistantWizardSteps } from '../../../helpers';
5
+ import { getStatus } from '../../../utils';
6
+ export const HomeAssistantWizardSteps = ({ currentStep, }) => {
7
+ return (_jsx(Center, { w: "full", bg: "lightGreen.1", pt: { base: '4', md: '8' }, children: _jsx(Flex, { gap: "base", overflow: { base: 'scroll', md: 'visible' }, p: { base: '4', md: '0' }, children: homeAssistantWizardSteps.map((step, index) => (_jsx(Center, { w: "100%", children: _jsx(HomeAssistantWizardButton, { status: getStatus(index + 1, currentStep), step: step }) }, step.title))) }) }));
8
+ };
@@ -0,0 +1,2 @@
1
+ export * from './HomeAssistantWizardButton';
2
+ export * from './HomeAssistantWizardSteps';
@@ -0,0 +1,2 @@
1
+ export * from './HomeAssistantWizardButton';
2
+ export * from './HomeAssistantWizardSteps';
@@ -4,5 +4,5 @@ import { randomColor } from '../../utils';
4
4
  import MoonLoader from 'react-spinners/MoonLoader';
5
5
  export const RecipientContent = ({ bgColor, firstName = '', index = 0, lastName = '', phone = '', email = '', }) => {
6
6
  const isPending = firstName === 'Account' && lastName === 'Pending';
7
- return (_jsxs(Flex, { gap: "2", align: firstName ? 'start' : 'center', children: [isPending && (_jsx(MoonLoader, { color: "#2d2d2d", size: 20, speedMultiplier: 0.5 })), !isPending && (_jsx(Avatar, { size: "sm", bg: bgColor !== null && bgColor !== void 0 ? bgColor : randomColor(index), fontWeight: "bold", color: "neutral.white", name: firstName ? `${firstName} ${lastName}` : '' })), _jsxs(Stack, { w: "full", spacing: "-2", minH: "3rem", justify: "space-between", children: [_jsxs(Box, { children: [firstName && (_jsx(Text, { fontWeight: "medium", textTransform: "capitalize", children: `${firstName} ${lastName}` })), _jsx(Text, { fontSize: "xxs", children: phone })] }), _jsx(Text, { variant: "email", alignSelf: "flex-end", children: email })] })] }));
7
+ return (_jsxs(Flex, { gap: "2", align: firstName ? 'start' : 'center', children: [isPending && (_jsx(MoonLoader, { color: "#2d2d2d", size: 20, speedMultiplier: 0.5 })), !isPending && (_jsx(Avatar, { size: "sm", bg: bgColor !== null && bgColor !== void 0 ? bgColor : randomColor(index), fontWeight: "bold", color: "neutral.white", name: firstName ? `${firstName} ${lastName}` : '' })), _jsxs(Stack, { w: "full", spacing: "-2", minH: "3rem", justify: "space-between", children: [_jsxs(Box, { children: [firstName && (_jsx(Text, { textTransform: "capitalize", children: `${firstName} ${lastName}` })), _jsx(Text, { fontSize: "xxs", children: phone })] }), _jsx(Text, { variant: "email", alignSelf: "flex-end", children: email })] })] }));
8
8
  };
@@ -0,0 +1,2 @@
1
+ import { DynamicFormI } from '../../interfaces';
2
+ export declare const WizardInitialOptions: ({ form, title, callback, }: DynamicFormI) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,40 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Container, SimpleGrid, Stack, Text, Image, Flex, } from '@chakra-ui/react';
3
+ import { Controller, useFormContext } from 'react-hook-form';
4
+ import { CheckInCircle } from '../../assets/images';
5
+ import { fieldIcons } from '../../helpers';
6
+ export const WizardInitialOptions = ({ form, title, callback, }) => {
7
+ const { control } = useFormContext();
8
+ return (_jsxs(Stack, { spacing: "base", bg: "lightBlue.1", p: "base", children: [_jsx(Text, { fontFamily: "secondary", fontSize: "sm", children: title }), _jsx(SimpleGrid, { columns: 2, spacing: "base", children: form.map((field) => {
9
+ const { id, value, label, icon, description } = field;
10
+ return (_jsx(Controller, { control: control, name: id, defaultValue: value, render: ({ field: { value, onChange } }) => {
11
+ const iconSrc = icon
12
+ ? fieldIcons[icon]
13
+ : undefined;
14
+ return (_jsxs(Container, { position: "relative", children: [value && (_jsx(Image, { src: CheckInCircle, alt: "check", w: "22px", h: "auto", position: "absolute", top: "-4px", left: "-2px", boxShadow: "lg", borderRadius: "full" })), _jsxs(Stack, Object.assign({ as: "button", p: "base", onClick: () => {
15
+ onChange(!value);
16
+ callback === null || callback === void 0 ? void 0 : callback(Object.assign(Object.assign({}, field), { value: !value }));
17
+ } }, setStyles(value), { children: [_jsxs(Flex, { gap: "2", w: "full", align: "center", children: [_jsx(Image, { src: iconSrc, alt: "icon", h: "16px", w: "auto" }), label && (_jsx(Text, { fontWeight: "bold", fontSize: "xs", textTransform: "capitalize", fontFamily: "secondary", children: label }))] }), _jsx(Text, { fontFamily: "secondary", textAlign: "left", children: description })] }))] }));
18
+ } }, id));
19
+ }) })] }));
20
+ };
21
+ const setStyles = (completed = false) => {
22
+ switch (completed) {
23
+ case true:
24
+ return {
25
+ bg: 'lightGreen.7',
26
+ transition: 'all 0.3s',
27
+ _hover: {
28
+ bg: 'lightGreen.8',
29
+ },
30
+ };
31
+ case false:
32
+ return {
33
+ bg: 'neutral.white',
34
+ transition: 'all 0.3s',
35
+ _hover: {
36
+ bg: 'lightGreen.7',
37
+ },
38
+ };
39
+ }
40
+ };
@@ -0,0 +1,2 @@
1
+ import { WizardTextHeaderI } from '../../interfaces';
2
+ export declare const WizardTextBody: ({ title, subtitle }: WizardTextHeaderI) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Center, Stack, Text } from '@chakra-ui/react';
3
+ export const WizardTextBody = ({ title, subtitle }) => {
4
+ return (_jsx(Center, { w: "full", minH: "100px", children: _jsxs(Stack, { spacing: "4", w: "80%", children: [_jsx(Text, { fontSize: { base: 'xl', md: '2xl' }, lineHeight: { base: 'shorter', md: 'base' }, textAlign: "center", children: title }), subtitle && (_jsx(Text, { fontFamily: "secondary", textAlign: "center", children: subtitle }))] }) }));
5
+ };
@@ -1,2 +1,4 @@
1
1
  export * from './ControlledWizard';
2
+ export * from './WizardInitialOptions';
2
3
  export * from './WizardTextHeader';
4
+ export * from './WizardTextBody';
@@ -1,2 +1,4 @@
1
1
  export * from './ControlledWizard';
2
+ export * from './WizardInitialOptions';
2
3
  export * from './WizardTextHeader';
4
+ export * from './WizardTextBody';
@@ -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, Wallet, Fire, Plant, LifePreserver, BOCFilter, BOCGreen, BOCRenovation, BOCRepair, BOCService, BOCWarranty, MRBoxes, MRClock, MRCouch, MRHand, MRMakeReady, MRRental, Cleaning } 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, Fire, Plant, LifePreserver, BOCFilter, BOCGreen, BOCRenovation, BOCRepair, BOCService, BOCWarranty, MRBoxes, MRClock, MRCouch, MRHand, MRMakeReady, MRRental, Cleaning, GearTime, YellowFolder, Warranty, Flower, MagnifyingGlassPerson, } from '../../assets/images';
2
2
  export const fieldIcons = {
3
3
  barcode: Barcode,
4
4
  billing: Billing,
@@ -44,12 +44,17 @@ export const fieldIcons = {
44
44
  pool: Pool2,
45
45
  roof: Roof2,
46
46
  umbrella: Closet,
47
+ warranty: Warranty,
47
48
  water: GlassWater,
48
49
  house: Structure,
49
50
  target: Target,
50
51
  title: CircleFace,
51
52
  company: Company2,
52
53
  wallet: Wallet,
54
+ gear: GearTime,
55
+ folder: YellowFolder,
56
+ flower: Flower,
57
+ 'search-person': MagnifyingGlassPerson,
53
58
  'sh-gutter': GutterCleaning,
54
59
  'sh-home': HomeCleaning,
55
60
  'sh-house': HouseWashing,
@@ -76,5 +81,5 @@ export const fieldIcons = {
76
81
  'mr-hand': MRHand,
77
82
  'mr-make-ready': MRMakeReady,
78
83
  'mr-rental': MRRental,
79
- 'cleaning': Cleaning
84
+ cleaning: Cleaning,
80
85
  };
@@ -1,6 +1,7 @@
1
1
  import { HomeAssistantStepI } from '../../interfaces';
2
2
  import { AlertCategory } from '../../interfaces/homeAssistant/BackendAlert.interface';
3
3
  export declare const homeAssistantSteps: Array<HomeAssistantStepI>;
4
+ export declare const homeAssistantWizardSteps: Array<HomeAssistantStepI>;
4
5
  interface CategoryConfigI {
5
6
  label: string;
6
7
  icon: string;
@@ -1,4 +1,4 @@
1
- import { Fire, GearTime, House, LargeAppliances, Target, Temperature, Water, } from '../../assets/images';
1
+ import { Fire, Fridge, GearTime, House, LargeAppliances, Patio, Target, Temperature, Water, } from '../../assets/images';
2
2
  export const homeAssistantSteps = [
3
3
  {
4
4
  title: 'Goals',
@@ -25,6 +25,28 @@ export const homeAssistantSteps = [
25
25
  icon: Water,
26
26
  },
27
27
  ];
28
+ export const homeAssistantWizardSteps = [
29
+ {
30
+ title: 'Objectives',
31
+ icon: Target,
32
+ },
33
+ {
34
+ title: 'Smoke & CO2 detectors',
35
+ icon: Fire,
36
+ },
37
+ {
38
+ title: 'Appliances',
39
+ icon: Fridge,
40
+ },
41
+ {
42
+ title: 'Heating & Cooling',
43
+ icon: Temperature,
44
+ },
45
+ {
46
+ title: 'Landscape',
47
+ icon: Patio,
48
+ },
49
+ ];
28
50
  export const CATEGORY_CONFIG = {
29
51
  safeguard: {
30
52
  label: 'Protection Monitor',
@@ -1,9 +1,10 @@
1
1
  import { AIGridFieldI, AlertFieldType, AlertTabType, FolderFileI, MenuItemI, PartnerFooterI, TileCtaI } from '../..';
2
- export type KindTypes = 'ai-image' | 'ai-grid' | 'checkbox' | 'checkbox-agreement' | 'checkbox-group' | 'collapsible' | 'currency' | 'date' | 'email' | 'file' | 'grid' | 'group' | 'hidden' | 'notes' | 'number' | 'radio' | 'rating' | 'select' | 'string' | 'switch' | 'telephone' | 'text' | 'textarea' | 'default' | 'video' | UIKindTypes | HomeItemTypes | AlertTabType | AlertFieldType;
2
+ export type KindTypes = 'ai-image' | 'ai-grid' | 'checkbox' | 'checkbox-agreement' | 'checkbox-group' | 'collapsible' | 'currency' | 'date' | 'email' | 'file' | 'grid' | 'group' | 'hidden' | 'notes' | 'number' | 'radio' | 'rating' | 'select' | 'string' | 'switch' | 'telephone' | 'text' | 'textarea' | 'default' | 'video' | UIKindTypes | HomeItemTypes | AlertTabType | AlertFieldType | WizardTypes;
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' | 'fire' | 'goldbars' | 'heart' | 'image' | 'life-preserver' | 'notes' | 'palette' | 'plant' | '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;
5
+ export type IconTypes = '68' | 'barcode' | 'battery' | 'billing' | 'book-opened' | 'book' | 'calc' | 'calendar-drop' | 'calendar' | 'calendar2' | 'check' | 'co2' | 'company' | 'contact' | 'date' | 'default' | 'detector' | 'drop' | 'electricity' | 'fire' | 'flower' | 'folder' | 'foundation' | 'gear' | 'goldbars' | 'heart' | 'heater' | 'house' | 'image' | 'life-preserver' | 'light' | 'mobile-drop' | 'notes' | 'palette' | 'people' | 'plant' | 'plate' | 'pool' | 'pressure-washer' | 'price' | 'rating' | 'receipt' | 'registry' | 'roof' | 'search-person' | 'solar-panel' | 'sprinkler' | 'target' | 'title' | 'tools' | 'umbrella' | 'wallet' | 'warranty' | 'water' | 'wind' | 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' | 'boc-service' | 'boc-filter' | 'boc-repair' | 'boc-renovation' | 'boc-green' | 'boc-warranty' | 'filter-size' | string;
7
+ export type WizardTypes = 'home-wizard' | 'home-wizard-header' | 'home-wizard-initial-setup' | 'home-wizard-step-options';
7
8
  export type ValueTypes = string | string[] | number | boolean;
8
9
  export type OptionsTypes = string[] | number[] | null;
9
10
  export interface ReportI {
@@ -15,7 +15,7 @@ export interface VerticalIconI {
15
15
  }
16
16
  export interface TileCtaCallbackI {
17
17
  id: string;
18
- value: string;
18
+ value: unknown;
19
19
  name?: string;
20
20
  link?: string;
21
21
  icon?: string;
@@ -3,8 +3,8 @@ export interface HomeAssistantStepI {
3
3
  title: string;
4
4
  }
5
5
  export interface HomeAssistantButtonI {
6
- currentStep: number;
7
- onStepClick: (step: number) => void;
6
+ currentStep?: number;
7
+ onStepClick?: (step: number) => void;
8
8
  status: 'completed' | 'active' | 'pending';
9
9
  step: HomeAssistantStepI;
10
10
  }
@@ -9,3 +9,4 @@ export declare const alertFieldsMock2: ReportI[];
9
9
  export declare const alertFieldsMock3: ReportI[];
10
10
  export declare const receiptFieldsMock: ReportI[];
11
11
  export declare const homeItemDetails: ReportI[];
12
+ export declare const homeWizardForm: ReportI[];
@@ -1281,3 +1281,74 @@ export const homeItemDetails = [
1281
1281
  icon: 'barcode',
1282
1282
  },
1283
1283
  ];
1284
+ export const homeWizardForm = [
1285
+ {
1286
+ type: 'home-wizard',
1287
+ id: 'home-wizard-1',
1288
+ children: [
1289
+ {
1290
+ type: 'home-wizard-header',
1291
+ id: 'home-wizard-header-1',
1292
+ label: '1. Tell Homi about your goals.',
1293
+ description: 'These choices help Homi build a personalized Homeboard that tracks your home’s performance, savings, and priorities.',
1294
+ value: '',
1295
+ },
1296
+ {
1297
+ type: 'home-wizard-initial-setup',
1298
+ id: 'home-wizard-initial-setup-1',
1299
+ value: 'What do you want Homie to help you with?',
1300
+ children: [
1301
+ {
1302
+ id: 'maintenance',
1303
+ type: 'text',
1304
+ label: 'Maintenance',
1305
+ value: false,
1306
+ description: 'Stay ahead of maintenance and upkeep to avoid costly repairs.',
1307
+ icon: 'gear',
1308
+ },
1309
+ {
1310
+ id: 'documentation',
1311
+ type: 'text',
1312
+ label: 'documentation',
1313
+ value: false,
1314
+ description: 'Keep receipts, warranties, and records organized and accessible.',
1315
+ icon: 'folder',
1316
+ },
1317
+ {
1318
+ id: 'finance',
1319
+ type: 'text',
1320
+ label: 'Finance',
1321
+ value: false,
1322
+ description: 'Monitor spending, uncover savings, and plan smarter budgets.',
1323
+ icon: 'check',
1324
+ },
1325
+ {
1326
+ id: 'service-pros',
1327
+ type: 'text',
1328
+ label: 'Service Pros',
1329
+ value: false,
1330
+ description: 'Find trusted pros with upfront pricing and verified quality.',
1331
+ icon: 'search-person',
1332
+ },
1333
+ {
1334
+ id: 'improvements',
1335
+ type: 'text',
1336
+ label: 'Improvements',
1337
+ value: false,
1338
+ description: 'Track upgrades, costs, and ROI to grow your home’s worth.',
1339
+ icon: 'flower',
1340
+ },
1341
+ {
1342
+ id: 'insurance',
1343
+ type: 'text',
1344
+ label: 'Insurance',
1345
+ value: false,
1346
+ description: 'Verify insurance and warranties so nothing important slips through.',
1347
+ icon: 'warranty',
1348
+ },
1349
+ ],
1350
+ },
1351
+ ],
1352
+ value: true,
1353
+ },
1354
+ ];