@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.
- package/dist/assets/images/flower.svg +19 -0
- package/dist/assets/images/index.d.ts +3 -1
- package/dist/assets/images/index.js +3 -1
- package/dist/assets/images/index.ts +4 -0
- package/dist/assets/images/magnifying-glass-person.svg +18 -0
- package/dist/components/forms/dynamicForm/DynamicForm.js +3 -1
- package/dist/components/forms/dynamicForm/fields/HomeInitialSetup.d.ts +2 -0
- package/dist/components/forms/dynamicForm/fields/HomeInitialSetup.js +17 -0
- package/dist/components/forms/dynamicForm/fields/index.d.ts +1 -0
- package/dist/components/forms/dynamicForm/fields/index.js +1 -0
- package/dist/components/homeAssistant/HomeAssistantButton.js +2 -2
- package/dist/components/homeAssistant/HomeAssistantSteps.js +1 -7
- package/dist/components/homeAssistant/index.d.ts +1 -0
- package/dist/components/homeAssistant/index.js +1 -0
- package/dist/components/homeAssistant/wizard/HomeAssistantWizardButton.d.ts +2 -0
- package/dist/components/homeAssistant/wizard/HomeAssistantWizardButton.js +29 -0
- package/dist/components/homeAssistant/wizard/HomeAssistantWizardSteps.d.ts +2 -0
- package/dist/components/homeAssistant/wizard/HomeAssistantWizardSteps.js +8 -0
- package/dist/components/homeAssistant/wizard/index.d.ts +2 -0
- package/dist/components/homeAssistant/wizard/index.js +2 -0
- package/dist/components/sendDocument/RecipientContent.js +1 -1
- package/dist/components/wizard/WizardInitialOptions.d.ts +2 -0
- package/dist/components/wizard/WizardInitialOptions.js +40 -0
- package/dist/components/wizard/WizardTextBody.d.ts +2 -0
- package/dist/components/wizard/WizardTextBody.js +5 -0
- package/dist/components/wizard/index.d.ts +2 -0
- package/dist/components/wizard/index.js +2 -0
- package/dist/helpers/forms/dynamicForm.helper.js +7 -2
- package/dist/helpers/homeAssistant/HomeAssistant.helper.d.ts +1 -0
- package/dist/helpers/homeAssistant/HomeAssistant.helper.js +23 -1
- package/dist/interfaces/forms/dynamicForm/DynamicForm.interface.d.ts +3 -2
- package/dist/interfaces/forms/dynamicForm/fields/UIFields.interface.d.ts +1 -1
- package/dist/interfaces/homeAssistant/HomeAssistantButton.interface.d.ts +2 -2
- package/dist/mocks/forms/dynamicForm.mock.d.ts +1 -0
- package/dist/mocks/forms/dynamicForm.mock.js +71 -0
- package/dist/stories/assets/Illustrations.stories.js +2 -2
- package/dist/stories/wizard/ControlledWizard.stories.js +20 -6
- package/dist/utils/Styles.utils.d.ts +1 -0
- package/dist/utils/Styles.utils.js +7 -0
- package/package.json +1 -1
- package/src/assets/images/flower.svg +19 -0
- package/src/assets/images/index.ts +4 -0
- package/src/assets/images/magnifying-glass-person.svg +18 -0
- package/src/components/forms/dynamicForm/DynamicForm.tsx +10 -0
- package/src/components/forms/dynamicForm/fields/HomeInitialSetup.tsx +34 -0
- package/src/components/forms/dynamicForm/fields/index.ts +1 -0
- package/src/components/homeAssistant/HomeAssistantButton.tsx +2 -2
- package/src/components/homeAssistant/HomeAssistantSteps.tsx +1 -6
- package/src/components/homeAssistant/index.ts +1 -0
- package/src/components/homeAssistant/wizard/HomeAssistantWizardButton.tsx +87 -0
- package/src/components/homeAssistant/wizard/HomeAssistantWizardSteps.tsx +28 -0
- package/src/components/homeAssistant/wizard/index.ts +2 -0
- package/src/components/sendDocument/RecipientContent.tsx +1 -4
- package/src/components/wizard/WizardInitialOptions.tsx +110 -0
- package/src/components/wizard/WizardTextBody.tsx +23 -0
- package/src/components/wizard/index.ts +2 -0
- package/src/helpers/forms/dynamicForm.helper.ts +12 -2
- package/src/helpers/homeAssistant/HomeAssistant.helper.tsx +25 -0
- package/src/interfaces/forms/dynamicForm/DynamicForm.interface.ts +32 -20
- package/src/interfaces/forms/dynamicForm/fields/UIFields.interface.ts +1 -1
- package/src/interfaces/homeAssistant/HomeAssistantButton.interface.ts +2 -2
- package/src/mocks/forms/dynamicForm.mock.ts +79 -0
- package/src/stories/assets/Illustrations.stories.tsx +4 -0
- package/src/stories/wizard/ControlledWizard.stories.tsx +42 -4
- 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,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
|
-
};
|
|
@@ -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,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
|
+
};
|
|
@@ -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, {
|
|
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,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,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,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
|
-
|
|
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
|
|
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 {
|
|
@@ -3,8 +3,8 @@ export interface HomeAssistantStepI {
|
|
|
3
3
|
title: string;
|
|
4
4
|
}
|
|
5
5
|
export interface HomeAssistantButtonI {
|
|
6
|
-
currentStep
|
|
7
|
-
onStepClick
|
|
6
|
+
currentStep?: number;
|
|
7
|
+
onStepClick?: (step: number) => void;
|
|
8
8
|
status: 'completed' | 'active' | 'pending';
|
|
9
9
|
step: HomeAssistantStepI;
|
|
10
10
|
}
|
|
@@ -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
|
+
];
|