@homefile/components-v2 2.28.1 → 2.29.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/locales/en/index.json +6 -0
- package/dist/components/homeAssistant/monitorAlerts/HomieAddItems.d.ts +2 -0
- package/dist/components/homeAssistant/monitorAlerts/HomieAddItems.js +14 -0
- package/dist/components/homeAssistant/monitorAlerts/index.d.ts +1 -0
- package/dist/components/homeAssistant/monitorAlerts/index.js +1 -0
- package/dist/components/homeBoard/HomeBoard.js +2 -2
- package/dist/components/tile/MinimizedTile.js +2 -2
- package/dist/components/tile/MinimizedTiles.js +2 -2
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/interfaces/homeAssistant/HomieAddItems.interface.d.ts +9 -0
- package/dist/interfaces/homeAssistant/HomieAddItems.interface.js +1 -0
- package/dist/interfaces/homeAssistant/index.d.ts +1 -0
- package/dist/interfaces/homeAssistant/index.js +1 -0
- package/dist/stories/homeAssistant/HomeMonitor.stories.d.ts +1 -0
- package/dist/stories/homeAssistant/HomeMonitor.stories.js +9 -2
- package/dist/stories/tiles/MinimizedTiles.stories.js +4 -0
- package/package.json +1 -1
- package/src/assets/locales/en/index.json +6 -0
- package/src/components/homeAssistant/monitorAlerts/HomieAddItems.tsx +58 -0
- package/src/components/homeAssistant/monitorAlerts/index.ts +1 -0
- package/src/components/homeBoard/HomeBoard.tsx +5 -1
- package/src/components/tile/MinimizedTile.tsx +14 -11
- package/src/components/tile/MinimizedTiles.tsx +10 -4
- package/src/index.ts +1 -0
- package/src/interfaces/homeAssistant/HomieAddItems.interface.ts +10 -0
- package/src/interfaces/homeAssistant/index.ts +1 -0
- package/src/stories/homeAssistant/HomeMonitor.stories.tsx +28 -1
- package/src/stories/tiles/MinimizedTiles.stories.tsx +8 -0
|
@@ -478,6 +478,12 @@
|
|
|
478
478
|
"unopened": "Unopened"
|
|
479
479
|
}
|
|
480
480
|
},
|
|
481
|
+
"homieAddItems": {
|
|
482
|
+
"addItem": "Upload a picture of your refrigerator label",
|
|
483
|
+
"addReceipt": "Add a picture of a purchase receipt.",
|
|
484
|
+
"subTitle": "Give them a try.",
|
|
485
|
+
"title": "Homie does the work for you."
|
|
486
|
+
},
|
|
481
487
|
"householdItems": {
|
|
482
488
|
"headers": {
|
|
483
489
|
"itemName": "An item name",
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { t } from 'i18next';
|
|
3
|
+
import { Box, Stack, Text, Image, Flex } from '@chakra-ui/react';
|
|
4
|
+
import { Fridge, Register } from '../../../assets/images';
|
|
5
|
+
import { colors } from '../../../theme/colors';
|
|
6
|
+
import { Plus } from '../..';
|
|
7
|
+
export const HomieAddItems = ({ onAddReceipt, onAddItem }) => {
|
|
8
|
+
return (_jsxs(Stack, { spacing: "base", flex: "1", zIndex: "2", pr: "6", children: [_jsx(Text, { fontSize: "26px", lineHeight: "36px", textAlign: "center", children: t('homieAddItems.title') }), _jsx(Box, { bg: "lightBlue.5", borderRadius: "full", py: "2", children: _jsx(Text, { fontWeight: "medium", textAlign: "center", children: t('homieAddItems.subTitle') }) }), _jsx(AddButton, { icon: Register, text: t('homieAddItems.addReceipt'), onClick: onAddReceipt }), _jsx(AddButton, { icon: Fridge, text: t('homieAddItems.addItem'), onClick: onAddItem })] }));
|
|
9
|
+
};
|
|
10
|
+
const AddButton = ({ icon, text, onClick }) => {
|
|
11
|
+
return (_jsx(Box, { as: "button", p: "base", bg: "neutral.white", boxShadow: "md", transition: "background 0.2s", _hover: {
|
|
12
|
+
bg: 'lightGreen.7',
|
|
13
|
+
}, onClick: onClick, minH: "80px", children: _jsxs(Flex, { align: "center", gap: "base", children: [_jsxs(Flex, { children: [_jsx(Plus, { size: 18, stroke: colors.blue[3] }), _jsx(Image, { boxSize: "32px", src: icon })] }), _jsx(Text, { textAlign: "left", lineHeight: "22px", children: text })] }) }));
|
|
14
|
+
};
|
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
};
|
|
10
10
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
11
11
|
import { Box, DrawerBody, DrawerContent, DrawerHeader, Flex, Stack, } from '@chakra-ui/react';
|
|
12
|
-
import { HomeHeader, HomeCardWithRecipent, AddFolder, EditAccountType, FolderSharing, RightPanel, HomeBoardTour, RoomsMenu, ContactsContent, AppBar, BarDivider, ContactList, PeopleConnected, StorageUsed, TourButton, Trash, TutorialsButton, FolderTypeSelection, DisplayFiles, DisplayOptions, FilesUploader, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, SharedAccounts, ReceiptAutofiler, HomeBoardGrid, ShortPartnerTile, ValueMonitor, TrendingValue, ReceiptsFiled, PropertyTaxes, PartnerCatalogPanel, DynamicForm, PanelHeader, EditHomePanel, HomeCard, EditHomeFooter, HomeAssistant, HomeAssistantPanel, HomeMonitor,
|
|
12
|
+
import { HomeHeader, HomeCardWithRecipent, AddFolder, EditAccountType, FolderSharing, RightPanel, HomeBoardTour, RoomsMenu, ContactsContent, AppBar, BarDivider, ContactList, PeopleConnected, StorageUsed, TourButton, Trash, TutorialsButton, FolderTypeSelection, DisplayFiles, DisplayOptions, FilesUploader, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, SharedAccounts, ReceiptAutofiler, HomeBoardGrid, ShortPartnerTile, ValueMonitor, TrendingValue, ReceiptsFiled, PropertyTaxes, PartnerCatalogPanel, DynamicForm, PanelHeader, EditHomePanel, HomeCard, EditHomeFooter, HomeAssistant, HomeAssistantPanel, HomeMonitor, HomeMonitorSteps, NotificationsReminder, NotificationsPanel, AddToHomefile, WeatherWidget, MinimizedTiles, HomieAddItems, } from '..';
|
|
13
13
|
import { HomeCards, recipientsDb, FoldersDB, selectOptions, RoomsList, RoomsToAdd, } from '../../helpers';
|
|
14
14
|
import { ContactsMock, DisplayFilesMock, formFieldsMock, homeBoardRecorsMock, lineChartData, menuMock, partnerCatalogMock, sharedAccountsMock, socialLinksMock2, taxesMock, userMock, videoMock, homeAssitantStep1FormMock, homeAssitantStep2FormMock, homeAssitantStep3FormMock, homeAssitantStep4FormMock, homeAssitantStep5FormMock, homeAssitantStep6FormMock, tileUIMock, socialLinksMock, notificationsMock, weatherDataMock, documentListMock, minimizedTilesMock, } from '../../mocks';
|
|
15
15
|
import { useHomeBoard, useWindowDimensions } from '../../hooks';
|
|
@@ -53,7 +53,7 @@ export const HomeBoard = () => {
|
|
|
53
53
|
Notifications: (_jsx(NotificationsPanel, { notifications: notificationsMock, onClose: onRightClose, onDismiss: () => null })),
|
|
54
54
|
};
|
|
55
55
|
const panelSize = currentComponent === 'PartnerCatalog' ? 'lg' : 'md';
|
|
56
|
-
return (_jsxs(Box, { overflowX: "hidden", children: [_jsx(RightPanel, { overlay: showOverlay, isOpen: isRightOpen, onClose: onRightClose, size: panelSize, children: rightPanelComponents[currentComponent] }), _jsxs(Flex, { w: "full", minH: "100dvh", children: [_jsx(RoomsMenu, { activeRoom: "homeboard", onAddRoom: (id) => __awaiter(void 0, void 0, void 0, function* () { return console.log(id); }), onClick: () => null, onHomeClick: () => null, rooms: RoomsList, roomsToAdd: RoomsToAdd }), _jsxs(Box, { w: "full", children: [_jsx(AppBarComponent, { setActiveTour: setActiveTour, onClick: handleAppBarClick }), _jsxs(Stack, { spacing: "base", p: "base", children: [_jsx(HomeHeader, { buttonLabel: "Partner catalog", onBack: () => null, homeName: homeName, onAdd: () => null }), _jsxs(HomeBoardGrid, { children: [_jsx(HomeCardWithRecipent, { address: HomeCards[0].address, handleEdit: handleEditHomeClick, handleDeleteAccountType: (email) => email, handleSubmitAccountType: (form) => form, _id: HomeCards[0]._id, image: HomeCards[0].image, loading: false, name: HomeCards[0].name, menu: menuMock, addImage: () => null, recipients: recipientsDb, records: homeBoardRecorsMock }), _jsx(HomeAssistant, { currentPanel: homeAssistantCurrentStep, currentStep: 6, onStepClick: handleHomeAssistantClick }), _jsx(MinimizedTiles, { tiles: minimizedTilesMock, menu: menuMock, onMaximize: (id) => console.log(id) }), _jsx(PropertyTaxes, { estimatedTaxValue: 1000, menuItems: menuMock, taxes: taxesMock, title: "Travis County Property Taxes" }), _jsx(HomeMonitor, { children: _jsxs(Stack, { spacing: "base", w: "full", p: "base", h: "full", justify: "space-between", children: [_jsxs(Flex, { gap: "base", children: [_jsx(
|
|
56
|
+
return (_jsxs(Box, { overflowX: "hidden", children: [_jsx(RightPanel, { overlay: showOverlay, isOpen: isRightOpen, onClose: onRightClose, size: panelSize, children: rightPanelComponents[currentComponent] }), _jsxs(Flex, { w: "full", minH: "100dvh", children: [_jsx(RoomsMenu, { activeRoom: "homeboard", onAddRoom: (id) => __awaiter(void 0, void 0, void 0, function* () { return console.log(id); }), onClick: () => null, onHomeClick: () => null, rooms: RoomsList, roomsToAdd: RoomsToAdd }), _jsxs(Box, { w: "full", children: [_jsx(AppBarComponent, { setActiveTour: setActiveTour, onClick: handleAppBarClick }), _jsxs(Stack, { spacing: "base", p: "base", children: [_jsx(HomeHeader, { buttonLabel: "Partner catalog", onBack: () => null, homeName: homeName, onAdd: () => null }), _jsxs(HomeBoardGrid, { children: [_jsx(HomeCardWithRecipent, { address: HomeCards[0].address, handleEdit: handleEditHomeClick, handleDeleteAccountType: (email) => email, handleSubmitAccountType: (form) => form, _id: HomeCards[0]._id, image: HomeCards[0].image, loading: false, name: HomeCards[0].name, menu: menuMock, addImage: () => null, recipients: recipientsDb, records: homeBoardRecorsMock }), _jsx(HomeAssistant, { currentPanel: homeAssistantCurrentStep, currentStep: 6, onStepClick: handleHomeAssistantClick }), _jsx(MinimizedTiles, { tiles: minimizedTilesMock, menu: menuMock, onMaximize: (id) => console.log(id) }), _jsx(PropertyTaxes, { estimatedTaxValue: 1000, menuItems: menuMock, taxes: taxesMock, title: "Travis County Property Taxes" }), _jsx(HomeMonitor, { children: _jsxs(Stack, { spacing: "base", w: "full", p: "base", h: "full", justify: "space-between", children: [_jsxs(Flex, { gap: "base", children: [_jsx(HomieAddItems, { onAddReceipt: () => console.log('Add receipt clicked'), onAddItem: () => console.log('Add item clicked') }), _jsx(WeatherWidget, Object.assign({}, mapForecastToWidget(weatherDataMock, 'TX, Houston')))] }), _jsx(HomeMonitorSteps, { menuItems: [
|
|
57
57
|
{
|
|
58
58
|
label: 'Details',
|
|
59
59
|
handleClick: handleHomeAssistantClick,
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { Box, Stack, Image, Text } from '@chakra-ui/react';
|
|
3
3
|
import { MoreHorizontal, IconMenu, NewBadge } from '..';
|
|
4
4
|
export const MinimizedTile = ({ _id, menu, title, icon, isNew, onMaximize, }) => {
|
|
5
|
-
return (_jsxs(
|
|
5
|
+
return (_jsxs(Stack, { bg: "neutral.white", boxShadow: "md", flex: "1", h: "full", justify: "center", position: "relative", transition: "background 0.2s", _hover: {
|
|
6
6
|
bg: 'lightGreen.7',
|
|
7
|
-
}, children: [isNew && (_jsx(Box, { position: "absolute", top: "-5px", left: "-2px", children: _jsx(NewBadge, { bg: "violet.1", color: "neutral.white" }) })), _jsx(Box, {
|
|
7
|
+
}, children: [isNew && (_jsx(Box, { position: "absolute", top: "-5px", left: "-2px", children: _jsx(NewBadge, { bg: "violet.1", color: "neutral.white" }) })), _jsx(Box, { position: "absolute", top: "2px", right: "5px", children: _jsx(IconMenu, { icon: _jsx(MoreHorizontal, { size: 26 }), itemForm: _id, menuItems: menu, disabled: menu.length === 0 }) }), _jsxs(Stack, { px: "base", align: "center", cursor: "pointer", pos: "relative", justify: "center", children: [_jsx(Box, { onClick: () => onMaximize(_id), pos: "absolute", top: "0", right: "0", bottom: "0", left: "0" }), icon && (_jsx(Image, { src: icon, alt: "not-found", boxSize: "50%", objectFit: "contain" })), title && (_jsx(Text, { textAlign: "center", noOfLines: 1, textOverflow: "ellipsis", fontSize: "xs", children: title }))] })] }));
|
|
8
8
|
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { createElement as _createElement } from "react";
|
|
3
|
-
import {
|
|
3
|
+
import { Box, SimpleGrid } from '@chakra-ui/react';
|
|
4
4
|
import { MinimizedTile } from './MinimizedTile';
|
|
5
5
|
import { Billing, Calendar, EstValue, GuestBedroom, IA, Inbox, Lighting, Warranty, YellowFolder, } from '../../assets/images';
|
|
6
6
|
export const MinimizedTiles = ({ tiles, menu, onMaximize, }) => {
|
|
7
7
|
const onlyMinimizedTiles = tiles.filter((tile) => !tile.isMaximized);
|
|
8
|
-
return (_jsx(
|
|
8
|
+
return (_jsx(Box, { h: "full", children: _jsx(SimpleGrid, { columns: 3, spacing: "base", h: "full", gridAutoRows: "1fr", alignItems: "stretch", children: onlyMinimizedTiles.map((tile) => (_createElement(MinimizedTile, Object.assign({}, tile, { key: tile._id, menu: menu, icon: IconById[tile._id], onMaximize: onMaximize })))) }) }));
|
|
9
9
|
};
|
|
10
10
|
const IconById = {
|
|
11
11
|
folders: YellowFolder,
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BackendAlert, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, Dialog, DisplayFiles, DisplayFilesDetail, DisplayOptions, DisplayReceipts, DocumentMenu, DocumentNameHeader, DocumentPreview, DynamicForm, EditAccountType, EditHomeBody, EditHomeFooter, EditHomeHeader, EditHomePanel, EditItemName, EmailPermissions, EmailValidation, Feedback, FileDetail, FilesUploader, FlowStep, FolderDetail, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, FolderSharing, FolderTypeSelection, FooterButtons, FooterDrawer, GenericBackHeader, GroupCard, GroupsContainer, GroupsHeader, Header, HelpContent, HomeAssistant, HomeAssistantPanel, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeItemList, HomeItemManualInfo, HomeMonitor, HomeMonitorPanel, HomeMonitorSteps, HomeSharedWith, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessagePanel, MessageChatPanel, MinimizedTiles, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, NotificationsReminder, NotificationsPanel, NotificationCard, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentReceipts, PdfButton, PeopleConnected, ProfileDetailsTab, ProfilePaymentTab, ProjectList, PropertyRecords, PropertyTaxes, ReadOnlyDynamicForm, ReadOnlyImage, ReadOnlyToggle, ReceiptAutofiler, ReceiptBody, ReceiptContent, ReceiptDetails, ReceiptFilters, ReceiptFooter, ReceiptHeader, ReceiptInfos, ReceiptItem, ReceiptItems, ReceiptPDF, ReceiptsDisplayOptions, ReceiptsFiled, ReceiptsHeader, ReceiptsInfo, ReceiptsReceivedContent, RecipientForm, RecipientsToShare, RecipientTab, RecordsInputs, ResendResetPassword, ResetPassword, ReviewBanner, RightPanel, RolePermissionsTab, RoomHeader, RoomsBoardTour, RoomsMenu, RoomsMenuMobile, RoomStep, RoomVideo, SalesTax, SatisfactionTile, SectionHeader, SendCommunication, SearchItemLoader, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, SkeletonBox, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, ViewContactPanel, VideoPlayer, VideoPlayerModal, WeatherWidget, WellDone, YtdTile, } from './components';
|
|
1
|
+
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BackendAlert, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, Dialog, DisplayFiles, DisplayFilesDetail, DisplayOptions, DisplayReceipts, DocumentMenu, DocumentNameHeader, DocumentPreview, DynamicForm, EditAccountType, EditHomeBody, EditHomeFooter, EditHomeHeader, EditHomePanel, EditItemName, EmailPermissions, EmailValidation, Feedback, FileDetail, FilesUploader, FlowStep, FolderDetail, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, FolderSharing, FolderTypeSelection, FooterButtons, FooterDrawer, GenericBackHeader, GroupCard, GroupsContainer, GroupsHeader, Header, HelpContent, HomeAssistant, HomeAssistantPanel, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeItemList, HomeItemManualInfo, HomeMonitor, HomeMonitorPanel, HomeMonitorSteps, HomeSharedWith, HomieAddItems, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessagePanel, MessageChatPanel, MinimizedTiles, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, NotificationsReminder, NotificationsPanel, NotificationCard, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentReceipts, PdfButton, PeopleConnected, ProfileDetailsTab, ProfilePaymentTab, ProjectList, PropertyRecords, PropertyTaxes, ReadOnlyDynamicForm, ReadOnlyImage, ReadOnlyToggle, ReceiptAutofiler, ReceiptBody, ReceiptContent, ReceiptDetails, ReceiptFilters, ReceiptFooter, ReceiptHeader, ReceiptInfos, ReceiptItem, ReceiptItems, ReceiptPDF, ReceiptsDisplayOptions, ReceiptsFiled, ReceiptsHeader, ReceiptsInfo, ReceiptsReceivedContent, RecipientForm, RecipientsToShare, RecipientTab, RecordsInputs, ResendResetPassword, ResetPassword, ReviewBanner, RightPanel, RolePermissionsTab, RoomHeader, RoomsBoardTour, RoomsMenu, RoomsMenuMobile, RoomStep, RoomVideo, SalesTax, SatisfactionTile, SectionHeader, SendCommunication, SearchItemLoader, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, SkeletonBox, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, ViewContactPanel, VideoPlayer, VideoPlayerModal, WeatherWidget, WellDone, YtdTile, } from './components';
|
|
2
2
|
export { useCustomToast } from './hooks';
|
|
3
3
|
export { randomColor, mapApiObjectToFormFields, mapForecastToWidget, } from './utils';
|
|
4
4
|
export { Contacts, MagnifyingGlassReport, Message, Register, Receipts, Price, BlueFolderShared, Calendar, Create, Notes, } from './assets/images';
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BackendAlert, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, Dialog, DisplayFiles, DisplayFilesDetail, DisplayOptions, DisplayReceipts, DocumentMenu, DocumentNameHeader, DocumentPreview, DynamicForm, EditAccountType, EditHomeBody, EditHomeFooter, EditHomeHeader, EditHomePanel, EditItemName, EmailPermissions, EmailValidation, Feedback, FileDetail, FilesUploader, FlowStep, FolderDetail, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, FolderSharing, FolderTypeSelection, FooterButtons, FooterDrawer, GenericBackHeader, GroupCard, GroupsContainer, GroupsHeader, Header, HelpContent, HomeAssistant, HomeAssistantPanel, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeItemList, HomeItemManualInfo, HomeMonitor, HomeMonitorPanel, HomeMonitorSteps, HomeSharedWith, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessagePanel, MessageChatPanel, MinimizedTiles, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, NotificationsReminder, NotificationsPanel, NotificationCard, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentReceipts, PdfButton, PeopleConnected, ProfileDetailsTab, ProfilePaymentTab, ProjectList, PropertyRecords, PropertyTaxes, ReadOnlyDynamicForm, ReadOnlyImage, ReadOnlyToggle, ReceiptAutofiler, ReceiptBody, ReceiptContent, ReceiptDetails, ReceiptFilters, ReceiptFooter, ReceiptHeader, ReceiptInfos, ReceiptItem, ReceiptItems, ReceiptPDF, ReceiptsDisplayOptions, ReceiptsFiled, ReceiptsHeader, ReceiptsInfo, ReceiptsReceivedContent, RecipientForm, RecipientsToShare, RecipientTab, RecordsInputs, ResendResetPassword, ResetPassword, ReviewBanner, RightPanel, RolePermissionsTab, RoomHeader, RoomsBoardTour, RoomsMenu, RoomsMenuMobile, RoomStep, RoomVideo, SalesTax, SatisfactionTile, SectionHeader, SendCommunication, SearchItemLoader, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, SkeletonBox, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, ViewContactPanel, VideoPlayer, VideoPlayerModal, WeatherWidget, WellDone, YtdTile, } from './components';
|
|
1
|
+
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPropertyRecords, Address, AddPopup, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackHeader, BackendAlert, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ContactList, ContactsContent, ContainerHeader, CreateDocumentHeader, CreateHouseholdItemHeader, CreditCardContainer, CreditCardError, CustomerTile, DeleteBanner, Dialog, DisplayFiles, DisplayFilesDetail, DisplayOptions, DisplayReceipts, DocumentMenu, DocumentNameHeader, DocumentPreview, DynamicForm, EditAccountType, EditHomeBody, EditHomeFooter, EditHomeHeader, EditHomePanel, EditItemName, EmailPermissions, EmailValidation, Feedback, FileDetail, FilesUploader, FlowStep, FolderDetail, FolderDetailBody, FolderDetailContent, FolderDetailFooter, FolderDetailHeader, FolderInfo, FolderSharing, FolderTypeSelection, FooterButtons, FooterDrawer, GenericBackHeader, GroupCard, GroupsContainer, GroupsHeader, Header, HelpContent, HomeAssistant, HomeAssistantPanel, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeItemList, HomeItemManualInfo, HomeMonitor, HomeMonitorPanel, HomeMonitorSteps, HomeSharedWith, HomieAddItems, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessagePanel, MessageChatPanel, MinimizedTiles, MonthlyCharge, MortgageInfo, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewPassword, NotBeChargedBanner, Notifications, NotificationsReminder, NotificationsPanel, NotificationCard, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentReceipts, PdfButton, PeopleConnected, ProfileDetailsTab, ProfilePaymentTab, ProjectList, PropertyRecords, PropertyTaxes, ReadOnlyDynamicForm, ReadOnlyImage, ReadOnlyToggle, ReceiptAutofiler, ReceiptBody, ReceiptContent, ReceiptDetails, ReceiptFilters, ReceiptFooter, ReceiptHeader, ReceiptInfos, ReceiptItem, ReceiptItems, ReceiptPDF, ReceiptsDisplayOptions, ReceiptsFiled, ReceiptsHeader, ReceiptsInfo, ReceiptsReceivedContent, RecipientForm, RecipientsToShare, RecipientTab, RecordsInputs, ResendResetPassword, ResetPassword, ReviewBanner, RightPanel, RolePermissionsTab, RoomHeader, RoomsBoardTour, RoomsMenu, RoomsMenuMobile, RoomStep, RoomVideo, SalesTax, SatisfactionTile, SectionHeader, SendCommunication, SearchItemLoader, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, SkeletonBox, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, ViewContactPanel, VideoPlayer, VideoPlayerModal, WeatherWidget, WellDone, YtdTile, } from './components';
|
|
2
2
|
export { useCustomToast } from './hooks';
|
|
3
3
|
export { randomColor, mapApiObjectToFormFields, mapForecastToWidget, } from './utils';
|
|
4
4
|
export { Contacts, MagnifyingGlassReport, Message, Register, Receipts, Price, BlueFolderShared, Calendar, Create, Notes, } from './assets/images';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -10,5 +10,6 @@ export * from './HomeAssistantSteps.interface';
|
|
|
10
10
|
export * from './HomeAssistantTutorial.interface';
|
|
11
11
|
export * from './HomeMonitorPanel.interface';
|
|
12
12
|
export * from './HomeMonitorSteps.interface';
|
|
13
|
+
export * from './HomieAddItems.interface';
|
|
13
14
|
export * from './MonitorAlerts.interface';
|
|
14
15
|
export * from './WeatherWidget.interface';
|
|
@@ -10,5 +10,6 @@ export * from './HomeAssistantSteps.interface';
|
|
|
10
10
|
export * from './HomeAssistantTutorial.interface';
|
|
11
11
|
export * from './HomeMonitorPanel.interface';
|
|
12
12
|
export * from './HomeMonitorSteps.interface';
|
|
13
|
+
export * from './HomieAddItems.interface';
|
|
13
14
|
export * from './MonitorAlerts.interface';
|
|
14
15
|
export * from './WeatherWidget.interface';
|
|
@@ -2,3 +2,4 @@ import { Meta } from '@storybook/react';
|
|
|
2
2
|
declare const _default: Meta;
|
|
3
3
|
export default _default;
|
|
4
4
|
export declare const HomeMonitorComponent: () => import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
export declare const HomeMonitorWithAddItems: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { HomefileMonitoring, HomeMonitor, HomeMonitorSteps, WeatherWidget, } from '../../components';
|
|
2
|
+
import { HomefileMonitoring, HomeMonitor, HomeMonitorSteps, HomieAddItems, WeatherWidget, } from '../../components';
|
|
3
3
|
import { Box, Flex, Stack } from '@chakra-ui/react';
|
|
4
4
|
import { action } from '@storybook/addon-actions';
|
|
5
5
|
import { menuMock, weatherDataMock } from '../../mocks';
|
|
@@ -8,7 +8,7 @@ export default {
|
|
|
8
8
|
title: 'Components/HomeAssistant',
|
|
9
9
|
component: HomeMonitor,
|
|
10
10
|
decorators: [
|
|
11
|
-
(Story) => (_jsx(Box, { p: "base", w: ['full', '800px'],
|
|
11
|
+
(Story) => (_jsx(Box, { p: "base", w: ['full', '800px'], children: _jsx(Story, {}) })),
|
|
12
12
|
],
|
|
13
13
|
};
|
|
14
14
|
export const HomeMonitorComponent = () => {
|
|
@@ -23,3 +23,10 @@ export const HomeMonitorComponent = () => {
|
|
|
23
23
|
const alertsCount = alerts.reduce((acc, alert) => acc + alert.count, 0);
|
|
24
24
|
return (_jsx(HomeMonitor, { children: _jsxs(Stack, { spacing: "base", children: [_jsxs(Flex, { gap: "base", children: [_jsx(HomefileMonitoring, { alertCount: alertsCount }), _jsx(WeatherWidget, Object.assign({}, weatherData))] }), _jsx(HomeMonitorSteps, { menuItems: menuMock, alerts: alerts, onStepClick: handleAlertClick })] }) }));
|
|
25
25
|
};
|
|
26
|
+
export const HomeMonitorWithAddItems = () => {
|
|
27
|
+
const handleAlertClick = (step) => {
|
|
28
|
+
action('onStepClick')(step);
|
|
29
|
+
};
|
|
30
|
+
const weatherData = mapForecastToWidget(weatherDataMock, 'TX, Houston');
|
|
31
|
+
return (_jsx(HomeMonitor, { children: _jsxs(Stack, { spacing: "base", children: [_jsxs(Flex, { gap: "base", children: [_jsx(HomieAddItems, { onAddReceipt: action('Add receipt clicked'), onAddItem: action('Add item clicked') }), _jsx(WeatherWidget, Object.assign({}, weatherData))] }), _jsx(HomeMonitorSteps, { menuItems: menuMock, alerts: [], onStepClick: handleAlertClick })] }) }));
|
|
32
|
+
};
|
|
@@ -2,6 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { action } from '@storybook/addon-actions';
|
|
3
3
|
import { MinimizedTiles } from '../../components';
|
|
4
4
|
import { menuMock, minimizedTilesMock } from '../../mocks';
|
|
5
|
+
import { Box } from '@chakra-ui/react';
|
|
5
6
|
export default {
|
|
6
7
|
title: 'Components/Tiles',
|
|
7
8
|
component: MinimizedTiles,
|
|
@@ -10,6 +11,9 @@ export default {
|
|
|
10
11
|
menu: menuMock,
|
|
11
12
|
onMaximize: action('onMaximize'),
|
|
12
13
|
},
|
|
14
|
+
decorators: [
|
|
15
|
+
(Story) => (_jsx(Box, { w: "400px", children: _jsx(Story, {}) })),
|
|
16
|
+
],
|
|
13
17
|
};
|
|
14
18
|
export const MinimizedTilesComponent = (args) => {
|
|
15
19
|
return _jsx(MinimizedTiles, Object.assign({}, args));
|
package/package.json
CHANGED
|
@@ -478,6 +478,12 @@
|
|
|
478
478
|
"unopened": "Unopened"
|
|
479
479
|
}
|
|
480
480
|
},
|
|
481
|
+
"homieAddItems": {
|
|
482
|
+
"addItem": "Upload a picture of your refrigerator label",
|
|
483
|
+
"addReceipt": "Add a picture of a purchase receipt.",
|
|
484
|
+
"subTitle": "Give them a try.",
|
|
485
|
+
"title": "Homie does the work for you."
|
|
486
|
+
},
|
|
481
487
|
"householdItems": {
|
|
482
488
|
"headers": {
|
|
483
489
|
"itemName": "An item name",
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { t } from 'i18next'
|
|
2
|
+
import { Box, Stack, Text, Image, Flex } from '@chakra-ui/react'
|
|
3
|
+
import { Fridge, Register } from '@/assets/images'
|
|
4
|
+
import { colors } from '@/theme/colors'
|
|
5
|
+
import { Plus } from '@/components'
|
|
6
|
+
import { AddButtonI, HomieAddItemsI } from '@/interfaces'
|
|
7
|
+
|
|
8
|
+
export const HomieAddItems = ({ onAddReceipt, onAddItem }: HomieAddItemsI) => {
|
|
9
|
+
return (
|
|
10
|
+
<Stack spacing="base" flex="1" zIndex="2" pr="6">
|
|
11
|
+
<Text fontSize="26px" lineHeight="36px" textAlign="center">
|
|
12
|
+
{t('homieAddItems.title')}
|
|
13
|
+
</Text>
|
|
14
|
+
<Box bg="lightBlue.5" borderRadius="full" py="2">
|
|
15
|
+
<Text fontWeight="medium" textAlign="center">
|
|
16
|
+
{t('homieAddItems.subTitle')}
|
|
17
|
+
</Text>
|
|
18
|
+
</Box>
|
|
19
|
+
<AddButton
|
|
20
|
+
icon={Register}
|
|
21
|
+
text={t('homieAddItems.addReceipt')}
|
|
22
|
+
onClick={onAddReceipt}
|
|
23
|
+
/>
|
|
24
|
+
<AddButton
|
|
25
|
+
icon={Fridge}
|
|
26
|
+
text={t('homieAddItems.addItem')}
|
|
27
|
+
onClick={onAddItem}
|
|
28
|
+
/>
|
|
29
|
+
</Stack>
|
|
30
|
+
)
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const AddButton = ({ icon, text, onClick }: AddButtonI) => {
|
|
34
|
+
return (
|
|
35
|
+
<Box
|
|
36
|
+
as="button"
|
|
37
|
+
p="base"
|
|
38
|
+
bg="neutral.white"
|
|
39
|
+
boxShadow="md"
|
|
40
|
+
transition="background 0.2s"
|
|
41
|
+
_hover={{
|
|
42
|
+
bg: 'lightGreen.7',
|
|
43
|
+
}}
|
|
44
|
+
onClick={onClick}
|
|
45
|
+
minH="80px"
|
|
46
|
+
>
|
|
47
|
+
<Flex align="center" gap="base">
|
|
48
|
+
<Flex>
|
|
49
|
+
<Plus size={18} stroke={colors.blue[3]} />
|
|
50
|
+
<Image boxSize="32px" src={icon} />
|
|
51
|
+
</Flex>
|
|
52
|
+
<Text textAlign="left" lineHeight="22px">
|
|
53
|
+
{text}
|
|
54
|
+
</Text>
|
|
55
|
+
</Flex>
|
|
56
|
+
</Box>
|
|
57
|
+
)
|
|
58
|
+
}
|
|
@@ -60,6 +60,7 @@ import {
|
|
|
60
60
|
AddToHomefile,
|
|
61
61
|
WeatherWidget,
|
|
62
62
|
MinimizedTiles,
|
|
63
|
+
HomieAddItems,
|
|
63
64
|
} from '@/components'
|
|
64
65
|
import {
|
|
65
66
|
HomeCards,
|
|
@@ -377,7 +378,10 @@ export const HomeBoard = () => {
|
|
|
377
378
|
justify="space-between"
|
|
378
379
|
>
|
|
379
380
|
<Flex gap="base">
|
|
380
|
-
<
|
|
381
|
+
<HomieAddItems
|
|
382
|
+
onAddReceipt={() => console.log('Add receipt clicked')}
|
|
383
|
+
onAddItem={() => console.log('Add item clicked')}
|
|
384
|
+
/>
|
|
381
385
|
<WeatherWidget
|
|
382
386
|
{...mapForecastToWidget(weatherDataMock, 'TX, Houston')}
|
|
383
387
|
/>
|
|
@@ -11,10 +11,12 @@ export const MinimizedTile = ({
|
|
|
11
11
|
onMaximize,
|
|
12
12
|
}: MinimizedTileI) => {
|
|
13
13
|
return (
|
|
14
|
-
<
|
|
14
|
+
<Stack
|
|
15
15
|
bg="neutral.white"
|
|
16
16
|
boxShadow="md"
|
|
17
|
-
|
|
17
|
+
flex="1"
|
|
18
|
+
h="full"
|
|
19
|
+
justify="center"
|
|
18
20
|
position="relative"
|
|
19
21
|
transition="background 0.2s"
|
|
20
22
|
_hover={{
|
|
@@ -26,7 +28,7 @@ export const MinimizedTile = ({
|
|
|
26
28
|
<NewBadge bg="violet.1" color="neutral.white" />
|
|
27
29
|
</Box>
|
|
28
30
|
)}
|
|
29
|
-
<Box
|
|
31
|
+
<Box position="absolute" top="2px" right="5px">
|
|
30
32
|
<IconMenu
|
|
31
33
|
icon={<MoreHorizontal size={26} />}
|
|
32
34
|
itemForm={_id}
|
|
@@ -34,7 +36,13 @@ export const MinimizedTile = ({
|
|
|
34
36
|
disabled={menu.length === 0}
|
|
35
37
|
/>
|
|
36
38
|
</Box>
|
|
37
|
-
<Stack
|
|
39
|
+
<Stack
|
|
40
|
+
px="base"
|
|
41
|
+
align="center"
|
|
42
|
+
cursor="pointer"
|
|
43
|
+
pos="relative"
|
|
44
|
+
justify="center"
|
|
45
|
+
>
|
|
38
46
|
<Box
|
|
39
47
|
onClick={() => onMaximize(_id)}
|
|
40
48
|
pos="absolute"
|
|
@@ -44,12 +52,7 @@ export const MinimizedTile = ({
|
|
|
44
52
|
left="0"
|
|
45
53
|
/>
|
|
46
54
|
{icon && (
|
|
47
|
-
<Image
|
|
48
|
-
src={icon}
|
|
49
|
-
alt="not-found"
|
|
50
|
-
boxSize="34px"
|
|
51
|
-
objectFit="contain"
|
|
52
|
-
/>
|
|
55
|
+
<Image src={icon} alt="not-found" boxSize="50%" objectFit="contain" />
|
|
53
56
|
)}
|
|
54
57
|
{title && (
|
|
55
58
|
<Text
|
|
@@ -62,6 +65,6 @@ export const MinimizedTile = ({
|
|
|
62
65
|
</Text>
|
|
63
66
|
)}
|
|
64
67
|
</Stack>
|
|
65
|
-
</
|
|
68
|
+
</Stack>
|
|
66
69
|
)
|
|
67
70
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Box,
|
|
1
|
+
import { Box, SimpleGrid } from '@chakra-ui/react'
|
|
2
2
|
import { MinimizedTile } from './MinimizedTile'
|
|
3
3
|
import {
|
|
4
4
|
Billing,
|
|
@@ -20,8 +20,14 @@ export const MinimizedTiles = ({
|
|
|
20
20
|
}: MinimizedTilesI) => {
|
|
21
21
|
const onlyMinimizedTiles = tiles.filter((tile) => !tile.isMaximized)
|
|
22
22
|
return (
|
|
23
|
-
<
|
|
24
|
-
<SimpleGrid
|
|
23
|
+
<Box h="full">
|
|
24
|
+
<SimpleGrid
|
|
25
|
+
columns={3}
|
|
26
|
+
spacing="base"
|
|
27
|
+
h="full"
|
|
28
|
+
gridAutoRows="1fr"
|
|
29
|
+
alignItems="stretch"
|
|
30
|
+
>
|
|
25
31
|
{onlyMinimizedTiles.map((tile) => (
|
|
26
32
|
<MinimizedTile
|
|
27
33
|
{...tile}
|
|
@@ -32,7 +38,7 @@ export const MinimizedTiles = ({
|
|
|
32
38
|
/>
|
|
33
39
|
))}
|
|
34
40
|
</SimpleGrid>
|
|
35
|
-
</
|
|
41
|
+
</Box>
|
|
36
42
|
)
|
|
37
43
|
}
|
|
38
44
|
|
package/src/index.ts
CHANGED
|
@@ -10,5 +10,6 @@ export * from './HomeAssistantSteps.interface'
|
|
|
10
10
|
export * from './HomeAssistantTutorial.interface'
|
|
11
11
|
export * from './HomeMonitorPanel.interface'
|
|
12
12
|
export * from './HomeMonitorSteps.interface'
|
|
13
|
+
export * from './HomieAddItems.interface'
|
|
13
14
|
export * from './MonitorAlerts.interface'
|
|
14
15
|
export * from './WeatherWidget.interface'
|
|
@@ -3,6 +3,7 @@ import {
|
|
|
3
3
|
HomefileMonitoring,
|
|
4
4
|
HomeMonitor,
|
|
5
5
|
HomeMonitorSteps,
|
|
6
|
+
HomieAddItems,
|
|
6
7
|
WeatherWidget,
|
|
7
8
|
} from '@/components'
|
|
8
9
|
import { Box, Flex, Stack } from '@chakra-ui/react'
|
|
@@ -15,7 +16,7 @@ export default {
|
|
|
15
16
|
component: HomeMonitor,
|
|
16
17
|
decorators: [
|
|
17
18
|
(Story: any) => (
|
|
18
|
-
<Box p="base" w={['full', '800px']}
|
|
19
|
+
<Box p="base" w={['full', '800px']}>
|
|
19
20
|
<Story />
|
|
20
21
|
</Box>
|
|
21
22
|
),
|
|
@@ -48,3 +49,29 @@ export const HomeMonitorComponent = () => {
|
|
|
48
49
|
</HomeMonitor>
|
|
49
50
|
)
|
|
50
51
|
}
|
|
52
|
+
|
|
53
|
+
export const HomeMonitorWithAddItems = () => {
|
|
54
|
+
const handleAlertClick = (step: number) => {
|
|
55
|
+
action('onStepClick')(step)
|
|
56
|
+
}
|
|
57
|
+
const weatherData = mapForecastToWidget(weatherDataMock, 'TX, Houston')
|
|
58
|
+
|
|
59
|
+
return (
|
|
60
|
+
<HomeMonitor>
|
|
61
|
+
<Stack spacing="base">
|
|
62
|
+
<Flex gap="base">
|
|
63
|
+
<HomieAddItems
|
|
64
|
+
onAddReceipt={action('Add receipt clicked')}
|
|
65
|
+
onAddItem={action('Add item clicked')}
|
|
66
|
+
/>
|
|
67
|
+
<WeatherWidget {...weatherData} />
|
|
68
|
+
</Flex>
|
|
69
|
+
<HomeMonitorSteps
|
|
70
|
+
menuItems={menuMock}
|
|
71
|
+
alerts={[]}
|
|
72
|
+
onStepClick={handleAlertClick}
|
|
73
|
+
/>
|
|
74
|
+
</Stack>
|
|
75
|
+
</HomeMonitor>
|
|
76
|
+
)
|
|
77
|
+
}
|
|
@@ -3,6 +3,7 @@ import { action } from '@storybook/addon-actions'
|
|
|
3
3
|
import { MinimizedTiles } from '@/components'
|
|
4
4
|
import { menuMock, minimizedTilesMock } from '@/mocks'
|
|
5
5
|
import { MinimizedTilesI } from '@/interfaces'
|
|
6
|
+
import { Box } from '@chakra-ui/react'
|
|
6
7
|
|
|
7
8
|
export default {
|
|
8
9
|
title: 'Components/Tiles',
|
|
@@ -12,6 +13,13 @@ export default {
|
|
|
12
13
|
menu: menuMock,
|
|
13
14
|
onMaximize: action('onMaximize'),
|
|
14
15
|
},
|
|
16
|
+
decorators: [
|
|
17
|
+
(Story) => (
|
|
18
|
+
<Box w="400px">
|
|
19
|
+
<Story />
|
|
20
|
+
</Box>
|
|
21
|
+
),
|
|
22
|
+
],
|
|
15
23
|
} as Meta<MinimizedTilesI>
|
|
16
24
|
|
|
17
25
|
export const MinimizedTilesComponent = (args: MinimizedTilesI) => {
|