@homefile/components-v2 2.43.1 → 2.44.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/components/appliances/AppliancesReceived.d.ts +2 -0
- package/dist/components/appliances/AppliancesReceived.js +12 -0
- package/dist/components/appliances/AssignableApplianceCard.js +2 -20
- package/dist/components/appliances/index.d.ts +1 -0
- package/dist/components/appliances/index.js +1 -0
- package/dist/components/appliances/received/ApplianceCards.d.ts +3 -0
- package/dist/components/appliances/received/ApplianceCards.js +17 -0
- package/dist/components/appliances/received/AppliancesDisplay.d.ts +2 -0
- package/dist/components/appliances/received/AppliancesDisplay.js +8 -0
- package/dist/components/appliances/received/AppliancesReceivedFilters.d.ts +2 -0
- package/dist/components/appliances/received/AppliancesReceivedFilters.js +6 -0
- package/dist/components/appliances/received/AppliancesWrapper.d.ts +2 -0
- package/dist/components/appliances/received/AppliancesWrapper.js +7 -0
- package/dist/helpers/appliances/applianceIcons.d.ts +2 -0
- package/dist/helpers/appliances/applianceIcons.js +22 -0
- package/dist/helpers/appliances/index.d.ts +1 -0
- package/dist/helpers/appliances/index.js +1 -0
- package/dist/helpers/index.d.ts +1 -0
- package/dist/helpers/index.js +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/interfaces/appliances/AppliancesReceived.interface.d.ts +16 -0
- package/dist/interfaces/appliances/AppliancesReceived.interface.js +1 -0
- package/dist/interfaces/appliances/AssignableAppliances.interface.d.ts +1 -2
- package/dist/interfaces/appliances/index.d.ts +2 -0
- package/dist/interfaces/appliances/index.js +2 -0
- package/dist/interfaces/appliances/received/ApplianceCards.interface.d.ts +5 -0
- package/dist/interfaces/appliances/received/ApplianceCards.interface.js +1 -0
- package/dist/interfaces/appliances/received/AppliancesDisplay.interface.d.ts +7 -0
- package/dist/interfaces/appliances/received/AppliancesDisplay.interface.js +1 -0
- package/dist/interfaces/appliances/received/AppliancesReceivedFilters.interface.d.ts +11 -0
- package/dist/interfaces/appliances/received/AppliancesReceivedFilters.interface.js +1 -0
- package/dist/interfaces/appliances/received/AppliancesWrapper.interface.d.ts +6 -0
- package/dist/interfaces/appliances/received/AppliancesWrapper.interface.js +1 -0
- package/dist/interfaces/appliances/received/index.d.ts +4 -0
- package/dist/interfaces/appliances/received/index.js +4 -0
- package/dist/mocks/appliances/appliancesReceived.mock.d.ts +7 -0
- package/dist/mocks/appliances/appliancesReceived.mock.js +58 -0
- package/dist/mocks/appliances/index.d.ts +1 -0
- package/dist/mocks/appliances/index.js +1 -0
- package/dist/mocks/index.d.ts +1 -0
- package/dist/mocks/index.js +1 -0
- package/dist/stories/appliances/AppliancesReceived.stories.d.ts +5 -0
- package/dist/stories/appliances/AppliancesReceived.stories.js +17 -0
- package/dist/stories/appliances/AssignableAppliances.stories.js +2 -31
- package/dist/utils/appliances/appliancesReceived.utils.d.ts +4 -0
- package/dist/utils/appliances/appliancesReceived.utils.js +11 -0
- package/dist/utils/appliances/index.d.ts +1 -0
- package/dist/utils/appliances/index.js +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { AppliancesReceivedI } from '../../interfaces';
|
|
2
|
+
export declare const AppliancesReceived: ({ appliances, displayType, onApplianceClick, onClose, onDisplayChange, onSearchChange, onSortChange, searchValue, sortInitialValue, sortOptions, title, totalShowing, }: AppliancesReceivedI) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { DrawerBody, DrawerContent, DrawerHeader, Stack, } from '@chakra-ui/react';
|
|
3
|
+
import { CookTop } from '../../assets/images/appliances';
|
|
4
|
+
import { PanelHeader } from '../../components';
|
|
5
|
+
import { AppliancesDisplay } from './received/AppliancesDisplay';
|
|
6
|
+
import { AppliancesReceivedFilters } from './received/AppliancesReceivedFilters';
|
|
7
|
+
import { DEFAULT_SORT_LABEL, resolveTitle, } from '../../utils';
|
|
8
|
+
export const AppliancesReceived = ({ appliances, displayType = 'grid', onApplianceClick, onClose, onDisplayChange, onSearchChange, onSortChange, searchValue, sortInitialValue = DEFAULT_SORT_LABEL, sortOptions, title, totalShowing, }) => {
|
|
9
|
+
const resolvedTitle = resolveTitle(title, appliances.length);
|
|
10
|
+
const showingCount = totalShowing !== null && totalShowing !== void 0 ? totalShowing : appliances.length;
|
|
11
|
+
return (_jsxs(DrawerContent, { bg: "lightBlue.1", children: [_jsx(DrawerHeader, { p: "0", children: _jsx(PanelHeader, { handleCloseButton: onClose, title: resolvedTitle, icon: CookTop }) }), _jsx(DrawerBody, { p: "0", children: _jsxs(Stack, { spacing: "base", children: [_jsx(AppliancesReceivedFilters, { displayType: displayType, onDisplayChange: onDisplayChange, onSearchChange: onSearchChange, onSortChange: onSortChange, searchValue: searchValue, sortInitialValue: sortInitialValue, sortOptions: sortOptions }), _jsx(AppliancesDisplay, { appliances: appliances, displayType: displayType, totalShowing: showingCount, onApplianceClick: onApplianceClick })] }) })] }));
|
|
12
|
+
};
|
|
@@ -1,26 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Checkbox, Flex, Image, Stack, Text } from '@chakra-ui/react';
|
|
3
|
-
import {
|
|
4
|
-
const applianceIcons = {
|
|
5
|
-
'cook-top': CookTop,
|
|
6
|
-
dishwasher: Dishwasher,
|
|
7
|
-
'dish-washer': Dishwasher,
|
|
8
|
-
dryer: Dryer,
|
|
9
|
-
freezer: Freezer,
|
|
10
|
-
fridge: Fridge,
|
|
11
|
-
hood: Hood,
|
|
12
|
-
microwave: Microwave,
|
|
13
|
-
oven: Oven,
|
|
14
|
-
range: Range,
|
|
15
|
-
washer: Washer,
|
|
16
|
-
'tank-water': tankWater,
|
|
17
|
-
'tankless-water': tanklessWater,
|
|
18
|
-
};
|
|
19
|
-
const normalizeApplianceType = (type) => type.trim().toLowerCase().replace(/\s+/g, '-');
|
|
3
|
+
import { getApplianceIcon } from '../../helpers';
|
|
20
4
|
export const AssignableApplianceCard = ({ isChecked, onChange, serialNumber, name, type, brand, }) => {
|
|
21
|
-
|
|
22
|
-
const normalizedType = normalizeApplianceType(type);
|
|
23
|
-
const applianceIcon = (_a = applianceIcons[normalizedType]) !== null && _a !== void 0 ? _a : Fridge;
|
|
5
|
+
const applianceIcon = getApplianceIcon(type);
|
|
24
6
|
const displayName = name || type;
|
|
25
7
|
return (_jsxs(Flex, { bg: "lightBlue.2", gap: "4", borderTop: "1px solid", borderColor: "lightBlue.2", children: [_jsx(Checkbox, { isChecked: isChecked, onChange: onChange }), _jsx(Stack, { w: "100%", p: "base", bg: isChecked ? 'lightBlue.1' : 'neutral.white', spacing: "1", children: _jsxs(Flex, { align: "center", gap: "base", children: [_jsx(Box, { bg: "lightBlue.1", w: "14", h: "14", display: "flex", alignItems: "center", justifyContent: "center", children: _jsx(Image, { src: applianceIcon, w: "10", h: "10", fit: "contain" }) }), _jsxs(Box, { children: [_jsx(Text, { fontSize: "xxs", children: serialNumber }), _jsx(Text, { children: brand }), _jsx(Text, { children: displayName })] })] }) })] }));
|
|
26
8
|
};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ApplianceCardI } from '../../../interfaces';
|
|
2
|
+
export declare const GridApplianceCard: ({ appliance, onClick }: ApplianceCardI) => import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
export declare const ListApplianceCard: ({ appliance, onClick }: ApplianceCardI) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box, Flex, Image, Stack, Text } from '@chakra-ui/react';
|
|
3
|
+
import { getApplianceIcon } from '../../../helpers';
|
|
4
|
+
export const GridApplianceCard = ({ appliance, onClick }) => {
|
|
5
|
+
const { brand, name, type } = appliance;
|
|
6
|
+
const displayName = (name === null || name === void 0 ? void 0 : name.trim()) ? name : type;
|
|
7
|
+
const applianceIcon = getApplianceIcon(type);
|
|
8
|
+
const handleClick = () => onClick === null || onClick === void 0 ? void 0 : onClick(appliance);
|
|
9
|
+
return (_jsxs(Flex, { align: "center", direction: "column", gap: "1", bg: "neutral.white", border: "1px solid", borderColor: "lightBlue.1", boxShadow: "sm", borderRadius: "0", p: "base", w: "100%", onClick: handleClick, cursor: onClick ? 'pointer' : 'default', children: [_jsx(Text, { fontSize: "xxs", color: "gray.3", textAlign: "center", children: brand }), _jsx(Box, { bg: "lightBlue.1", w: "14", h: "14", display: "flex", alignItems: "center", justifyContent: "center", children: _jsx(Image, { src: applianceIcon, w: "10", h: "10", fit: "contain" }) }), _jsx(Text, { fontSize: "xxs", textTransform: "uppercase", textAlign: "center", children: displayName })] }));
|
|
10
|
+
};
|
|
11
|
+
export const ListApplianceCard = ({ appliance, onClick }) => {
|
|
12
|
+
const { brand, name, type } = appliance;
|
|
13
|
+
const displayName = (name === null || name === void 0 ? void 0 : name.trim()) ? name : type;
|
|
14
|
+
const applianceIcon = getApplianceIcon(type);
|
|
15
|
+
const handleClick = () => onClick === null || onClick === void 0 ? void 0 : onClick(appliance);
|
|
16
|
+
return (_jsxs(Flex, { align: "center", direction: "row", gap: "base", bg: "neutral.white", border: "1px solid", borderColor: "lightBlue.1", boxShadow: "sm", p: "base", w: "100%", onClick: handleClick, cursor: onClick ? 'pointer' : 'default', children: [_jsx(Box, { bg: "lightBlue.1", w: "14", h: "14", display: "flex", alignItems: "center", justifyContent: "center", children: _jsx(Image, { src: applianceIcon, w: "10", h: "10", fit: "contain" }) }), _jsxs(Stack, { spacing: "1", align: "flex-start", children: [_jsx(Text, { fontSize: "xxs", color: "gray.3", children: brand }), _jsx(Text, { fontSize: "xxs", textTransform: "uppercase", children: displayName })] })] }));
|
|
17
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { SimpleGrid, Stack } from '@chakra-ui/react';
|
|
3
|
+
import { AppliancesWrapper } from './AppliancesWrapper';
|
|
4
|
+
import { GridApplianceCard, ListApplianceCard } from './ApplianceCards';
|
|
5
|
+
export const AppliancesDisplay = ({ appliances, displayType, totalShowing, onApplianceClick, }) => {
|
|
6
|
+
const totalItems = appliances.length;
|
|
7
|
+
return (_jsx(AppliancesWrapper, { totalItems: totalItems, totalShowing: totalShowing, children: displayType === 'list' ? (_jsx(Stack, { spacing: "1", children: appliances.map((appliance) => (_jsx(ListApplianceCard, { appliance: appliance, onClick: onApplianceClick }, appliance._id))) })) : (_jsx(SimpleGrid, { columns: { base: 2, sm: 3, md: 4 }, spacing: "base", children: appliances.map((appliance) => (_jsx(GridApplianceCard, { appliance: appliance, onClick: onApplianceClick }, appliance._id))) })) }));
|
|
8
|
+
};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { AppliancesReceivedFiltersI } from '../../../interfaces';
|
|
2
|
+
export declare const AppliancesReceivedFilters: ({ displayType, onDisplayChange, onSearchChange, onSortChange, searchValue, sortInitialValue, sortOptions, }: AppliancesReceivedFiltersI) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Flex } from '@chakra-ui/react';
|
|
3
|
+
import { DisplayOptionsButtons, SearchInput, SelectInput } from '../../../components';
|
|
4
|
+
export const AppliancesReceivedFilters = ({ displayType, onDisplayChange, onSearchChange, onSortChange, searchValue, sortInitialValue, sortOptions, }) => {
|
|
5
|
+
return (_jsxs(Flex, { align: "center", justify: "space-between", gap: "base", p: "base", w: "100%", bg: "lightBlue.2", children: [_jsxs(Flex, { gap: "base", children: [_jsx(SelectInput, { handleClick: onSortChange, height: "sm", initialValue: sortInitialValue, items: sortOptions, width: "10rem" }), _jsx(SearchInput, { size: "sm", onChange: onSearchChange, value: searchValue, bg: "lightBlue.1", w: "12rem" })] }), _jsx(DisplayOptionsButtons, { displays: ['grid', 'list'], initialDisplay: displayType, onDisplayClick: onDisplayChange })] }));
|
|
6
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Stack, Text } from '@chakra-ui/react';
|
|
3
|
+
import { getShowingLabel } from '../../../utils';
|
|
4
|
+
export const AppliancesWrapper = ({ children, totalItems, totalShowing, }) => {
|
|
5
|
+
const showingLabel = getShowingLabel(totalShowing, totalItems);
|
|
6
|
+
return (_jsxs(Stack, { px: "base", spacing: "base", pb: "base", children: [_jsx(Text, { variant: "home", children: showingLabel }), children] }));
|
|
7
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CookTop, Dishwasher, Dryer, Freezer, Fridge, Hood, Microwave, Oven, Range, Washer, tankWater, tanklessWater, } from '../../assets/images/appliances';
|
|
2
|
+
const applianceIcons = {
|
|
3
|
+
'cook-top': CookTop,
|
|
4
|
+
dishwasher: Dishwasher,
|
|
5
|
+
'dish-washer': Dishwasher,
|
|
6
|
+
dryer: Dryer,
|
|
7
|
+
freezer: Freezer,
|
|
8
|
+
fridge: Fridge,
|
|
9
|
+
hood: Hood,
|
|
10
|
+
microwave: Microwave,
|
|
11
|
+
oven: Oven,
|
|
12
|
+
range: Range,
|
|
13
|
+
washer: Washer,
|
|
14
|
+
'tank-water': tankWater,
|
|
15
|
+
'tankless-water': tanklessWater,
|
|
16
|
+
};
|
|
17
|
+
export const normalizeApplianceType = (type) => type.trim().toLowerCase().replace(/\s+/g, '-');
|
|
18
|
+
export const getApplianceIcon = (type) => {
|
|
19
|
+
var _a;
|
|
20
|
+
const normalizedType = normalizeApplianceType(type);
|
|
21
|
+
return (_a = applianceIcons[normalizedType]) !== null && _a !== void 0 ? _a : Fridge;
|
|
22
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './applianceIcons';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './applianceIcons';
|
package/dist/helpers/index.d.ts
CHANGED
package/dist/helpers/index.js
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPopup, AddPropertyRecords, Address, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackendAlert, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ConfirmHomeDetails, ConfirmProperty, ConfirmPropertyBody, ConfirmPropertyFooter, ConfirmPropertyRecords, ContactList, ContactsContent, ContainerHeader, ControlledWizard, 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, HomeAssistantTutorial, HomeAssistantWizardPanel, HomeAssistantWizardSteps, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeItemList, HomeItemManualInfo, HomeMonitor, HomeMonitorPanel, HomeMonitorSteps, HomeSharedWith, HomieAddItems, HomiSms, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadApplianceAutofiler, LaunchpadAppliancePanel, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessageChatPanel, MessagePanel, MinimizedTiles, MonthlyCharge, MortgageInfo, MortgageInfoReadOnly, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewHomeDetails, NewPassword, NotBeChargedBanner, NotificationCard, Notifications, NotificationsPanel, NotificationsReminder, NpsScore, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentBanner, 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, SearchItemLoader, SearchRecords, SectionHeader, SendCommunication, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, SkeletonBox, StartHomiSetup, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorDialog, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, VideoPlayer, VideoPlayerModal, ViewContactPanel, WeatherWidget, WellDone, WizardBodyPadding, WizardStepGoal, WizardSuccessHeader, WizardTextHeader, WizardValueSummary, WizardValueSummaryBody, WizardValueSummaryFooter, YtdTile, } from './components';
|
|
1
|
+
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPopup, AddPropertyRecords, Address, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AppliancesReceived, AssignableReceipts, BackendAlert, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ConfirmHomeDetails, ConfirmProperty, ConfirmPropertyBody, ConfirmPropertyFooter, ConfirmPropertyRecords, ContactList, ContactsContent, ContainerHeader, ControlledWizard, 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, HomeAssistantTutorial, HomeAssistantWizardPanel, HomeAssistantWizardSteps, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeItemList, HomeItemManualInfo, HomeMonitor, HomeMonitorPanel, HomeMonitorSteps, HomeSharedWith, HomieAddItems, HomiSms, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadApplianceAutofiler, LaunchpadAppliancePanel, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessageChatPanel, MessagePanel, MinimizedTiles, MonthlyCharge, MortgageInfo, MortgageInfoReadOnly, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewHomeDetails, NewPassword, NotBeChargedBanner, NotificationCard, Notifications, NotificationsPanel, NotificationsReminder, NpsScore, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentBanner, 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, SearchItemLoader, SearchRecords, SectionHeader, SendCommunication, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, SkeletonBox, StartHomiSetup, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorDialog, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, VideoPlayer, VideoPlayerModal, ViewContactPanel, WeatherWidget, WellDone, WizardBodyPadding, WizardStepGoal, WizardSuccessHeader, WizardTextHeader, WizardValueSummary, WizardValueSummaryBody, WizardValueSummaryFooter, YtdTile, } from './components';
|
|
2
2
|
export { useCustomToast, useConfirmPropertyModel } from './hooks';
|
|
3
3
|
export { randomColor, mapApiObjectToFormFields, mapForecastToWidget, } from './utils';
|
|
4
4
|
export { CookTop, Contacts, GuestBedroom, MagnifyingGlassReport, Message, Register, Receipts, Price, BlueFolderShared, Calendar, Create, Notes, WallDecor, } from './assets/images';
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPopup, AddPropertyRecords, Address, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AssignableReceipts, BackendAlert, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ConfirmHomeDetails, ConfirmProperty, ConfirmPropertyBody, ConfirmPropertyFooter, ConfirmPropertyRecords, ContactList, ContactsContent, ContainerHeader, ControlledWizard, 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, HomeAssistantTutorial, HomeAssistantWizardPanel, HomeAssistantWizardSteps, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeItemList, HomeItemManualInfo, HomeMonitor, HomeMonitorPanel, HomeMonitorSteps, HomeSharedWith, HomieAddItems, HomiSms, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadApplianceAutofiler, LaunchpadAppliancePanel, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessageChatPanel, MessagePanel, MinimizedTiles, MonthlyCharge, MortgageInfo, MortgageInfoReadOnly, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewHomeDetails, NewPassword, NotBeChargedBanner, NotificationCard, Notifications, NotificationsPanel, NotificationsReminder, NpsScore, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentBanner, 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, SearchItemLoader, SearchRecords, SectionHeader, SendCommunication, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, SkeletonBox, StartHomiSetup, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorDialog, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, VideoPlayer, VideoPlayerModal, ViewContactPanel, WeatherWidget, WellDone, WizardBodyPadding, WizardStepGoal, WizardSuccessHeader, WizardTextHeader, WizardValueSummary, WizardValueSummaryBody, WizardValueSummaryFooter, YtdTile, } from './components';
|
|
1
|
+
export { ActivateAccount, ActiveSubscription, AddCardBanner, AddEditContactPanel, AddFolder, AddHomeContent, AddHomeItem, AddHomeItemHeader, AddMedia, AddPopup, AddPropertyRecords, Address, AddTile, AddToHomefile, AlertBanner, AphwTile, AppBar, AppliancesReceived, AssignableReceipts, BackendAlert, BackHeader, BarDivider, CancelAccount, CatalogPopup, CloudsAnimation, ConfirmHomeDetails, ConfirmProperty, ConfirmPropertyBody, ConfirmPropertyFooter, ConfirmPropertyRecords, ContactList, ContactsContent, ContainerHeader, ControlledWizard, 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, HomeAssistantTutorial, HomeAssistantWizardPanel, HomeAssistantWizardSteps, HomeBoardGrid, HomeBoardTour, HomeCard, HomeCardWithRecipent, HomeDetailsContent, HomefileMonitoring, HomeHeader, HomeItemList, HomeItemManualInfo, HomeMonitor, HomeMonitorPanel, HomeMonitorSteps, HomeSharedWith, HomieAddItems, HomiSms, InboxForwardBanner, InboxTile, ItemFormPanel, ItemFormTabs, ItemNameHeader, ItemsReviewBanner, ItemSubTypeSelect, Launchpad, LaunchpadApplianceAutofiler, LaunchpadAppliancePanel, LaunchpadAutofilerBanner, LaunchpadReceiptAutofiler, LaunchpadReceiptPanel, LaunchpadTour, LeftPanel, Loading, MediaDetailsStep, MessageChatPanel, MessagePanel, MinimizedTiles, MonthlyCharge, MortgageInfo, MortgageInfoReadOnly, MoveModal, MyHomes, MyProfileBody, MyProfileContent, MyProfileFooter, MyProfileHeader, MyProfilePanel, NewCreditCard, NewCreditCardHeader, NewHomeDetails, NewPassword, NotBeChargedBanner, NotificationCard, Notifications, NotificationsPanel, NotificationsReminder, NpsScore, Overlay, PanelHeader, PartnerActiveSubscription, PartnerCatalogPanel, PartnerContent, PartnerCustomerCode, PartnerDetails, PartnerImages, PartnerPanel, PasswordInput, PaymentBanner, 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, SearchItemLoader, SearchRecords, SectionHeader, SendCommunication, ShareContactsContent, SharedAccounts, SharedHomeContent, SharedHomeHeader, ShareHome, ShareHomeConnections, ShareHomeForm, ShineTile, ShortPartnerTile, SignIn, SignUp, SkeletonBox, StartHomiSetup, StepHeader, StorageUsed, Subscription, SubscriptionCard, SubscriptionTable, Summary, TabsHeader, TextInput, ToBeDeletedBody, ToBeDeletedContent, ToBeDeletedFooter, ToBeDeletedHeader, TourButton, Trash, TrendingValue, TrialBanner, TutorialsButton, TwoFactor, TwoFactorDialog, TwoFactorSetting, UpdateList, UserDetails, ValueMonitor, VideoPlayer, VideoPlayerModal, ViewContactPanel, WeatherWidget, WellDone, WizardBodyPadding, WizardStepGoal, WizardSuccessHeader, WizardTextHeader, WizardValueSummary, WizardValueSummaryBody, WizardValueSummaryFooter, YtdTile, } from './components';
|
|
2
2
|
export { useCustomToast, useConfirmPropertyModel } from './hooks';
|
|
3
3
|
export { randomColor, mapApiObjectToFormFields, mapForecastToWidget, } from './utils';
|
|
4
4
|
export { CookTop, Contacts, GuestBedroom, MagnifyingGlassReport, Message, Register, Receipts, Price, BlueFolderShared, Calendar, Create, Notes, WallDecor, } from './assets/images';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ChangeEvent } from 'react';
|
|
2
|
+
import { ApplianceDetailsI, DisplayOptionsType, SelectItemI } from '../../interfaces';
|
|
3
|
+
export interface AppliancesReceivedI {
|
|
4
|
+
appliances: ApplianceDetailsI[];
|
|
5
|
+
displayType?: DisplayOptionsType;
|
|
6
|
+
onApplianceClick?: (appliance: ApplianceDetailsI) => void;
|
|
7
|
+
onClose: () => void;
|
|
8
|
+
onDisplayChange: (type: DisplayOptionsType) => void;
|
|
9
|
+
onSearchChange: (e: ChangeEvent<HTMLInputElement>) => void;
|
|
10
|
+
onSortChange: (value: SelectItemI | string) => void;
|
|
11
|
+
searchValue: string;
|
|
12
|
+
sortInitialValue?: string;
|
|
13
|
+
sortOptions: SelectItemI[] | string[];
|
|
14
|
+
title?: string;
|
|
15
|
+
totalShowing?: number;
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { SelectItemI } from '../../interfaces';
|
|
2
|
-
import { ApplianceDetailsI } from './AssignableApplianceCard.interface';
|
|
1
|
+
import { SelectItemI, ApplianceDetailsI } from '../../interfaces';
|
|
3
2
|
export interface AssignableAppliancesI {
|
|
4
3
|
isSelectDisabled?: boolean;
|
|
5
4
|
onItemSelectedChange: (_ids: string[]) => void;
|
|
@@ -2,3 +2,5 @@ export * from './LaunchpadApplianceAutofiler.interface';
|
|
|
2
2
|
export * from './AssignableApplianceCard.interface';
|
|
3
3
|
export * from './AssignableAppliances.interface';
|
|
4
4
|
export * from './LaunchpadAppliancePanel.interface';
|
|
5
|
+
export * from './AppliancesReceived.interface';
|
|
6
|
+
export * from './received';
|
|
@@ -2,3 +2,5 @@ export * from './LaunchpadApplianceAutofiler.interface';
|
|
|
2
2
|
export * from './AssignableApplianceCard.interface';
|
|
3
3
|
export * from './AssignableAppliances.interface';
|
|
4
4
|
export * from './LaunchpadAppliancePanel.interface';
|
|
5
|
+
export * from './AppliancesReceived.interface';
|
|
6
|
+
export * from './received';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ApplianceDetailsI, DisplayOptionsType } from '../../../interfaces';
|
|
2
|
+
export interface AppliancesDisplayI {
|
|
3
|
+
appliances: ApplianceDetailsI[];
|
|
4
|
+
displayType: DisplayOptionsType;
|
|
5
|
+
totalShowing: number;
|
|
6
|
+
onApplianceClick?: (appliance: ApplianceDetailsI) => void;
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ChangeEvent } from 'react';
|
|
2
|
+
import { DisplayOptionsType, SelectItemI } from '../../../interfaces';
|
|
3
|
+
export interface AppliancesReceivedFiltersI {
|
|
4
|
+
displayType: DisplayOptionsType;
|
|
5
|
+
onDisplayChange: (type: DisplayOptionsType) => void;
|
|
6
|
+
onSearchChange: (e: ChangeEvent<HTMLInputElement>) => void;
|
|
7
|
+
onSortChange: (value: SelectItemI | string) => void;
|
|
8
|
+
searchValue: string;
|
|
9
|
+
sortInitialValue: string;
|
|
10
|
+
sortOptions: SelectItemI[] | string[];
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export const appliancesReceivedMock = [
|
|
2
|
+
{
|
|
3
|
+
_id: 'appliance-1',
|
|
4
|
+
serialNumber: 'SN-49201-XY',
|
|
5
|
+
name: 'Fridge',
|
|
6
|
+
type: 'fridge',
|
|
7
|
+
brand: 'Kenmore',
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
_id: 'appliance-2',
|
|
11
|
+
serialNumber: 'SN-88310-ZZ',
|
|
12
|
+
name: 'Cook Top',
|
|
13
|
+
type: 'cook-top',
|
|
14
|
+
brand: 'Kitchen Aid',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
_id: 'appliance-3',
|
|
18
|
+
serialNumber: 'SN-22490-AA',
|
|
19
|
+
name: 'Washer',
|
|
20
|
+
type: 'washer',
|
|
21
|
+
brand: 'Kenmore',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
_id: 'appliance-4',
|
|
25
|
+
serialNumber: 'SN-77102-BB',
|
|
26
|
+
name: 'Dryer',
|
|
27
|
+
type: 'dryer',
|
|
28
|
+
brand: 'Kenmore',
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
_id: 'appliance-5',
|
|
32
|
+
serialNumber: 'SN-19021-CC',
|
|
33
|
+
name: 'Fridge',
|
|
34
|
+
type: 'fridge',
|
|
35
|
+
brand: 'Kenmore',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
_id: 'appliance-6',
|
|
39
|
+
serialNumber: 'SN-18233-DD',
|
|
40
|
+
name: 'Cook Top',
|
|
41
|
+
type: 'cook-top',
|
|
42
|
+
brand: 'Kitchen Aid',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
_id: 'appliance-7',
|
|
46
|
+
serialNumber: 'SN-55421-EE',
|
|
47
|
+
name: 'Washer',
|
|
48
|
+
type: 'washer',
|
|
49
|
+
brand: 'Kenmore',
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
_id: 'appliance-8',
|
|
53
|
+
serialNumber: 'SN-33221-FF',
|
|
54
|
+
name: 'Dryer',
|
|
55
|
+
type: 'dryer',
|
|
56
|
+
brand: 'Kenmore',
|
|
57
|
+
},
|
|
58
|
+
];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './appliancesReceived.mock';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './appliancesReceived.mock';
|
package/dist/mocks/index.d.ts
CHANGED
package/dist/mocks/index.js
CHANGED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Meta } from '@storybook/react';
|
|
2
|
+
import { AppliancesReceivedI } from '../../interfaces';
|
|
3
|
+
declare const _default: Meta<AppliancesReceivedI>;
|
|
4
|
+
export default _default;
|
|
5
|
+
export declare const AppliancesReceivedPanel: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { RightPanel, AppliancesReceived } from '../../components';
|
|
4
|
+
import { action } from '@storybook/addon-actions';
|
|
5
|
+
import { appliancesReceivedMock } from '../../mocks';
|
|
6
|
+
export default {
|
|
7
|
+
title: 'Components/Appliances',
|
|
8
|
+
component: AppliancesReceived,
|
|
9
|
+
};
|
|
10
|
+
const sortOptions = ['By Date', 'By Brand', 'By Type'];
|
|
11
|
+
export const AppliancesReceivedPanel = () => {
|
|
12
|
+
const [searchValue, setSearchValue] = useState('');
|
|
13
|
+
const [displayType, setDisplayType] = useState('grid');
|
|
14
|
+
const handleSearchChange = (e) => setSearchValue(e.target.value);
|
|
15
|
+
const handleDisplayChange = (type) => setDisplayType(type);
|
|
16
|
+
return (_jsx(RightPanel, { isOpen: true, onClose: () => null, children: _jsx(AppliancesReceived, { appliances: appliancesReceivedMock, displayType: displayType, onApplianceClick: action('onApplianceClick'), onClose: action('onClose'), onDisplayChange: handleDisplayChange, onSearchChange: handleSearchChange, onSortChange: action('onSortChange'), searchValue: searchValue, sortOptions: sortOptions, totalShowing: 37 }) }));
|
|
17
|
+
};
|
|
@@ -1,47 +1,18 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Box } from '@chakra-ui/react';
|
|
3
3
|
import { AssignableAppliances } from '../../components';
|
|
4
|
+
import { appliancesReceivedMock } from '../../mocks';
|
|
4
5
|
import { action } from '@storybook/addon-actions';
|
|
5
6
|
export default {
|
|
6
7
|
title: 'Components/Appliances',
|
|
7
8
|
component: AssignableAppliances,
|
|
8
9
|
};
|
|
9
|
-
const appliancesMock = [
|
|
10
|
-
{
|
|
11
|
-
_id: 'appliance-1',
|
|
12
|
-
serialNumber: 'SN-49201-XY',
|
|
13
|
-
name: 'Washer',
|
|
14
|
-
type: 'washer',
|
|
15
|
-
brand: 'Kenmore',
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
_id: 'appliance-2',
|
|
19
|
-
serialNumber: 'SN-88310-ZZ',
|
|
20
|
-
name: 'Dryer',
|
|
21
|
-
type: 'dryer',
|
|
22
|
-
brand: 'Kenmore',
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
_id: 'appliance-3',
|
|
26
|
-
serialNumber: 'SN-22490-AA',
|
|
27
|
-
name: 'Dishwasher',
|
|
28
|
-
type: 'dish-washer',
|
|
29
|
-
brand: 'Whirlpool',
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
_id: 'appliance-4',
|
|
33
|
-
serialNumber: 'SN-77102-BB',
|
|
34
|
-
name: 'Fridge',
|
|
35
|
-
type: 'fridge',
|
|
36
|
-
brand: 'GE',
|
|
37
|
-
},
|
|
38
|
-
];
|
|
39
10
|
export const AssignableAppliancesComponent = (args) => {
|
|
40
11
|
return (_jsx(Box, { width: ['full', '500px'], p: "base", children: _jsx(AssignableAppliances, Object.assign({}, args)) }));
|
|
41
12
|
};
|
|
42
13
|
AssignableAppliancesComponent.args = {
|
|
43
14
|
isSelectDisabled: false,
|
|
44
|
-
appliances:
|
|
15
|
+
appliances: appliancesReceivedMock,
|
|
45
16
|
homes: ['Matts Home', 'Austin Rental', 'Beach House'],
|
|
46
17
|
onItemSelectedChange: action('onItemSelectedChange'),
|
|
47
18
|
onHomeChange: action('onHomeChange'),
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const DEFAULT_SORT_LABEL = "By Date";
|
|
2
|
+
export declare const DEFAULT_TITLE = "Appliances Received";
|
|
3
|
+
export declare const resolveTitle: (title: string | undefined, total: number) => string;
|
|
4
|
+
export declare const getShowingLabel: (totalShowing: number, totalItems: number) => string;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { pluralize } from '../../utils';
|
|
2
|
+
export const DEFAULT_SORT_LABEL = 'By Date';
|
|
3
|
+
export const DEFAULT_TITLE = 'Appliances Received';
|
|
4
|
+
export const resolveTitle = (title, total) => title !== null && title !== void 0 ? title : `${DEFAULT_TITLE} (${total})`;
|
|
5
|
+
export const getShowingLabel = (totalShowing, totalItems) => {
|
|
6
|
+
const safeShowing = Math.min(totalShowing, totalItems);
|
|
7
|
+
const rangeStart = totalItems === 0 ? 0 : 1;
|
|
8
|
+
const rangeText = `${rangeStart}-${safeShowing}`;
|
|
9
|
+
const itemLabel = pluralize(totalItems, 'Appliance');
|
|
10
|
+
return `Showing ${rangeText} of ${totalItems} ${itemLabel}`;
|
|
11
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './appliancesReceived.utils';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './appliancesReceived.utils';
|
package/dist/utils/index.d.ts
CHANGED
package/dist/utils/index.js
CHANGED