formica-ui-lib 1.0.214 → 1.0.216

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/dist/componentProps/molecules/cards/locationcard/LocationCardProps.d.ts +53 -0
  2. package/dist/componentProps/molecules/cards/textcard/TextCardProps.d.ts +3 -1
  3. package/dist/componentProps/molecules/cards/warrantycard/WarrantyCardProps.d.ts +2 -0
  4. package/dist/componentProps/organisms/banners/wheretobuysearchbanner/WhereToBuySearchBannerProps.d.ts +21 -0
  5. package/dist/componentProps/organisms/collections/featurecardcollection/FeatureCardCollectionProps.d.ts +2 -0
  6. package/dist/componentProps/organisms/collections/locationcardcollection/LocationCardCollectionProps.d.ts +16 -0
  7. package/dist/componentProps/organisms/sections/locationmap/LocationMapProps.d.ts +14 -0
  8. package/dist/componentProps/templates/categorypagetemplate/CategoryPageTemplateProps.d.ts +3 -3
  9. package/dist/componentProps/templates/proresourcetemplate/ProResourceTemplateProps.d.ts +2 -0
  10. package/dist/componentProps/templates/wheretobuytemplate/WhereToBuyTemplateProps.d.ts +63 -0
  11. package/dist/index.cjs +7 -7
  12. package/dist/index.d.ts +13 -0
  13. package/dist/index.js +1145 -750
  14. package/dist/stories/molecules/cards/locationcard/LocationCard.d.ts +4 -0
  15. package/dist/stories/molecules/cards/locationcard/LocationCard.test.d.ts +1 -0
  16. package/dist/stories/molecules/cards/warrantycard/WarrantyCard.d.ts +4 -0
  17. package/dist/stories/molecules/cards/warrantycard/WarrantyCard.test.d.ts +1 -0
  18. package/dist/stories/organisms/banners/wheretobuysearchbanner/WhereToBuySearchBanner.d.ts +4 -0
  19. package/dist/stories/organisms/banners/wheretobuysearchbanner/WhereToBuySearchBanner.test.d.ts +1 -0
  20. package/dist/stories/organisms/collections/locationcardcollection/LocationCardCollection.d.ts +4 -0
  21. package/dist/stories/organisms/collections/locationcardcollection/LocationCardCollection.test.d.ts +1 -0
  22. package/dist/stories/organisms/sections/locationmap/LocationMap.d.ts +4 -0
  23. package/dist/stories/organisms/sections/locationmap/LocationMap.test.d.ts +1 -0
  24. package/dist/stories/templates/wheretobuytemplate/WhereToBuyTemplate.d.ts +4 -0
  25. package/dist/stories/templates/wheretobuytemplate/WhereToBuyTemplate.test.d.ts +1 -0
  26. package/dist/tailwind.css +1 -1
  27. package/package.json +1 -1
@@ -0,0 +1,53 @@
1
+ export type WhereToBuyLocationType = "distributor" | "sales-rep" | "retailer";
2
+ export type WhereToBuyLocationAddress = {
3
+ lines: string[];
4
+ city: string;
5
+ region: string;
6
+ postalCode: string;
7
+ country?: string;
8
+ };
9
+ export type WhereToBuyLocationCoordinates = {
10
+ lat: number;
11
+ lng: number;
12
+ };
13
+ export type WhereToBuyLocationDistance = {
14
+ value: number;
15
+ unit: "mi" | "km";
16
+ label?: string;
17
+ };
18
+ export type WhereToBuyStockedProduct = {
19
+ id: string;
20
+ label: string;
21
+ };
22
+ export type WhereToBuyLocation = {
23
+ id: string;
24
+ externalId?: string;
25
+ type: WhereToBuyLocationType;
26
+ name: string;
27
+ address: WhereToBuyLocationAddress;
28
+ websiteUrl?: string;
29
+ phone?: string;
30
+ phoneHref?: string;
31
+ email?: string;
32
+ emailHref?: string;
33
+ coordinates: WhereToBuyLocationCoordinates;
34
+ stockedProducts: WhereToBuyStockedProduct[];
35
+ distance?: WhereToBuyLocationDistance;
36
+ isPreferred?: boolean;
37
+ directionsUrl?: string;
38
+ };
39
+ export type LocationCardActionPayload = {
40
+ location: WhereToBuyLocation;
41
+ href?: string;
42
+ };
43
+ export type LocationCardProps = {
44
+ location: WhereToBuyLocation;
45
+ stockedProductsLabel?: string;
46
+ preferredLabel?: string;
47
+ websiteLabel?: string;
48
+ directionsLabel?: string;
49
+ onWebsiteClick?: (payload: LocationCardActionPayload) => void;
50
+ onDirectionsClick?: (payload: LocationCardActionPayload) => void;
51
+ onPhoneClick?: (payload: LocationCardActionPayload) => void;
52
+ onEmailClick?: (payload: LocationCardActionPayload) => void;
53
+ };
@@ -1,12 +1,14 @@
1
- export type HeadingSize = "small" | "large";
1
+ export type HeadingSize = "small" | "medium" | "large";
2
2
  export type TextCardAlign = "left" | "center" | "right";
3
3
  export type TextCardHeadingLevel = "h1" | "h2";
4
4
  export interface TextCardProps {
5
5
  heading?: string;
6
6
  headingLevel?: TextCardHeadingLevel;
7
7
  headingSize?: HeadingSize;
8
+ headingAlign?: TextCardAlign;
8
9
  align?: TextCardAlign;
9
10
  subheading?: string;
10
11
  datetimeStamp?: string;
11
12
  body?: string;
13
+ addTopMargin?: boolean;
12
14
  }
@@ -0,0 +1,2 @@
1
+ import type { TextCardProps } from "../textcard/TextCardProps";
2
+ export type WarrantyCardProps = Omit<TextCardProps, "addTopMargin">;
@@ -0,0 +1,21 @@
1
+ import type { DropdownProps } from "../../../atoms/dropdown/DropdownProps";
2
+ import type { SearchBarProps } from "../../../molecules/searchbar/SearchBarProps";
3
+ export type WhereToBuyProductDropdownProps = Omit<DropdownProps, "onChange" | "onBlur">;
4
+ export type WhereToBuySearchInputProps = Omit<SearchBarProps, "onChange" | "onBlur" | "onFocus">;
5
+ export type WhereToBuySearchSubmitPayload = {
6
+ productValue: string;
7
+ searchValue: string;
8
+ };
9
+ export type WhereToBuyProductChangePayload = {
10
+ productValue: string;
11
+ };
12
+ export type WhereToBuySearchBannerProps = {
13
+ imageSrc: string;
14
+ imageAlt?: string;
15
+ heading: string;
16
+ productDropdownProps?: WhereToBuyProductDropdownProps;
17
+ searchInputProps: WhereToBuySearchInputProps;
18
+ searchButtonLabel?: string;
19
+ onProductChange?: (payload: WhereToBuyProductChangePayload) => void;
20
+ onSearchSubmit?: (payload: WhereToBuySearchSubmitPayload) => void;
21
+ };
@@ -4,10 +4,12 @@ export type FeatureCardCollectionFooterButtonPayload = {
4
4
  buttonLabel: string;
5
5
  buttonHref?: string;
6
6
  };
7
+ export type FeatureCardCollectionSpacing = "default" | "underBanner";
7
8
  export type FeatureCardCollectionProps = {
8
9
  title?: string;
9
10
  body?: string;
10
11
  cards?: FeatureCardCollectionItem[];
12
+ spacing?: FeatureCardCollectionSpacing;
11
13
  footerBlurb?: string;
12
14
  footerButtonLabel?: string;
13
15
  footerButtonHref?: string;
@@ -0,0 +1,16 @@
1
+ import type { ContentGridColumns } from "../../../atoms/layout/ContentGridProps";
2
+ import type { LocationCardActionPayload, WhereToBuyLocation } from "../../../molecules/cards/locationcard/LocationCardProps";
3
+ export type LocationCardCollectionDesktopColumns = Extract<ContentGridColumns, 2 | 3 | 4>;
4
+ export type LocationCardCollectionProps = {
5
+ locations: WhereToBuyLocation[];
6
+ selectedLocationId?: string;
7
+ desktopColumns?: LocationCardCollectionDesktopColumns;
8
+ stockedProductsLabel?: string;
9
+ preferredLabel?: string;
10
+ websiteLabel?: string;
11
+ directionsLabel?: string;
12
+ onWebsiteClick?: (payload: LocationCardActionPayload) => void;
13
+ onDirectionsClick?: (payload: LocationCardActionPayload) => void;
14
+ onPhoneClick?: (payload: LocationCardActionPayload) => void;
15
+ onEmailClick?: (payload: LocationCardActionPayload) => void;
16
+ };
@@ -0,0 +1,14 @@
1
+ import type { WhereToBuyLocation, WhereToBuyLocationCoordinates } from "../../../molecules/cards/locationcard/LocationCardProps";
2
+ export type LocationMapMarkerClickPayload = {
3
+ location: WhereToBuyLocation;
4
+ };
5
+ export type LocationMapProps = {
6
+ googleMapsApiKey?: string;
7
+ mapId?: string;
8
+ locations: WhereToBuyLocation[];
9
+ center?: WhereToBuyLocationCoordinates;
10
+ zoom?: number;
11
+ selectedLocationId?: string;
12
+ legendLabel?: string;
13
+ onLocationSelect?: (payload: LocationMapMarkerClickPayload) => void;
14
+ };
@@ -38,7 +38,7 @@ export type CategoryPageFilterLabels = {
38
38
  };
39
39
  export type CategoryPageData = {
40
40
  hero: StandardCopyHeroProps;
41
- tabs: {
41
+ tabs?: {
42
42
  options: MultiButtonBarOption[];
43
43
  selectedValue?: string;
44
44
  };
@@ -52,8 +52,8 @@ export type CategoryPageData = {
52
52
  mobileLabel?: string;
53
53
  className?: string;
54
54
  };
55
- sort: Omit<DropdownProps, "onChange" | "onBlur">;
56
- search: Omit<SearchBarProps, "onChange" | "onBlur" | "onFocus">;
55
+ sort?: Omit<DropdownProps, "onChange" | "onBlur">;
56
+ search?: Omit<SearchBarProps, "onChange" | "onBlur" | "onFocus">;
57
57
  panel?: CategoryPageFilterPanelData;
58
58
  };
59
59
  decorGrid: {
@@ -3,9 +3,11 @@ import type { MultiButtonBarProps } from "../../molecules/selectors/multibuttonb
3
3
  import type { DocumentLinkCollectionProps } from "../../organisms/collections/documentlinkcollection/DocumentLinkCollectionProps";
4
4
  import type { InfoCardProps } from "../../molecules/cards/infocard/InfoCardProps";
5
5
  import type { FaqCardCollectionProps } from "../../organisms/collections/faqcardcollection/FaqCardCollectionProps";
6
+ import type { WarrantyCardProps } from "../../molecules/cards/warrantycard/WarrantyCardProps";
6
7
  export type ProResourceTemplateProps = {
7
8
  standardCopyHeroProps: StandardCopyHeroProps;
8
9
  multiButtonBarProps: MultiButtonBarProps;
10
+ warrantyCardProps: WarrantyCardProps;
9
11
  documentLinkCollectionProps: DocumentLinkCollectionProps;
10
12
  infoCardProps: InfoCardProps;
11
13
  faqCardCollectionProps: FaqCardCollectionProps;
@@ -0,0 +1,63 @@
1
+ import type { LocationCardActionPayload, WhereToBuyLocation } from "../../molecules/cards/locationcard/LocationCardProps";
2
+ import type { WhereToBuyProductChangePayload, WhereToBuyProductDropdownProps, WhereToBuySearchInputProps, WhereToBuySearchSubmitPayload } from "../../organisms/banners/wheretobuysearchbanner/WhereToBuySearchBannerProps";
3
+ import type { LocationMapMarkerClickPayload } from "../../organisms/sections/locationmap/LocationMapProps";
4
+ import type { LocationCardCollectionDesktopColumns } from "../../organisms/collections/locationcardcollection/LocationCardCollectionProps";
5
+ export type WhereToBuyTabOption = {
6
+ label: string;
7
+ value?: string;
8
+ disabled?: boolean;
9
+ };
10
+ export type WhereToBuyTabSelectPayload = {
11
+ label: string;
12
+ value?: string;
13
+ };
14
+ export type WhereToBuyTemplateData = {
15
+ banner: {
16
+ imageSrc: string;
17
+ imageAlt?: string;
18
+ heading: string;
19
+ productDropdownProps: WhereToBuyProductDropdownProps;
20
+ searchInputProps: WhereToBuySearchInputProps;
21
+ searchButtonLabel?: string;
22
+ };
23
+ tabs: {
24
+ options: WhereToBuyTabOption[];
25
+ selectedValue?: string;
26
+ };
27
+ map: {
28
+ googleMapsApiKey?: string;
29
+ mapId?: string;
30
+ center?: {
31
+ lat: number;
32
+ lng: number;
33
+ };
34
+ zoom?: number;
35
+ selectedLocationId?: string;
36
+ legendLabel?: string;
37
+ };
38
+ locations: WhereToBuyLocation[];
39
+ results: {
40
+ selectedLocationId?: string;
41
+ desktopColumns?: LocationCardCollectionDesktopColumns;
42
+ stockedProductsLabel?: string;
43
+ preferredLabel?: string;
44
+ websiteLabel?: string;
45
+ directionsLabel?: string;
46
+ };
47
+ emptyState?: {
48
+ heading?: string;
49
+ body?: string;
50
+ };
51
+ };
52
+ export type WhereToBuyTemplateProps = {
53
+ data: WhereToBuyTemplateData;
54
+ className?: string;
55
+ onProductChange?: (payload: WhereToBuyProductChangePayload, data: WhereToBuyTemplateData) => void;
56
+ onSearchSubmit?: (payload: WhereToBuySearchSubmitPayload, data: WhereToBuyTemplateData) => void;
57
+ onTabChange?: (payload: WhereToBuyTabSelectPayload, data: WhereToBuyTemplateData) => void;
58
+ onLocationSelect?: (payload: LocationMapMarkerClickPayload, data: WhereToBuyTemplateData) => void;
59
+ onWebsiteClick?: (payload: LocationCardActionPayload, data: WhereToBuyTemplateData) => void;
60
+ onDirectionsClick?: (payload: LocationCardActionPayload, data: WhereToBuyTemplateData) => void;
61
+ onPhoneClick?: (payload: LocationCardActionPayload, data: WhereToBuyTemplateData) => void;
62
+ onEmailClick?: (payload: LocationCardActionPayload, data: WhereToBuyTemplateData) => void;
63
+ };