formica-ui-lib 1.0.88 → 1.0.92

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 (78) hide show
  1. package/dist/componentProps/atoms/checkbox/CheckboxProps.d.ts +9 -0
  2. package/dist/componentProps/atoms/dropdown/DropdownProps.d.ts +16 -6
  3. package/dist/componentProps/atoms/input/inputProps.d.ts +23 -0
  4. package/dist/componentProps/atoms/radiooption/RadioOptionProps.d.ts +12 -0
  5. package/dist/componentProps/molecules/card/moreinfohighlightscard/MoreInfoHighlightsCardProps.d.ts +1 -1
  6. package/dist/componentProps/molecules/card/quantitycheckoutcard/QuantityCheckoutCardProps.d.ts +27 -0
  7. package/dist/componentProps/molecules/selectors/progressindicator/CheckoutProgressIndicatorProps.d.ts +10 -0
  8. package/dist/componentProps/organisms/cart/cartconfimation/cartconfirmationhero/CartConfirmedHeroProps.d.ts +7 -0
  9. package/dist/componentProps/organisms/cart/cartconfimation/cartordersummary/CartOrderSummaryProps.d.ts +18 -0
  10. package/dist/componentProps/organisms/cart/cartconfimation/cartreceiptsection/CartReceiptSectionProps.d.ts +26 -0
  11. package/dist/componentProps/organisms/cart/cartconfimation/cartsummarysection/CartSummarySectionProps.d.ts +11 -0
  12. package/dist/componentProps/organisms/{shoppingcart/shoppingcartflyout/ShoppingCartFlyoutProps.d.ts → cart/cartflyout/CartFlyoutProps.d.ts} +3 -3
  13. package/dist/componentProps/organisms/cart/cartpaymentpanel/CartPaymentPanelProps.d.ts +78 -0
  14. package/dist/componentProps/organisms/cart/cartsummary/CartSummaryProps.d.ts +25 -0
  15. package/dist/componentProps/organisms/cart/carttotalspanel/CartTotalsPanelProps.d.ts +18 -0
  16. package/dist/componentProps/organisms/cart/ordersummarysection/OrderSummarySectionLeftPanelProps.d.ts +6 -0
  17. package/dist/componentProps/organisms/{section/swatchpurchasepanel/SwatchPurchasePanelLeftPanelProps.d.ts → cart/purchasepanel/PurchasePanelLeftPanelProps.d.ts} +1 -1
  18. package/dist/componentProps/organisms/{section/swatchpurchasepanel/SwatchPurchasePanelProps.d.ts → cart/purchasepanel/PurchasePanelProps.d.ts} +18 -18
  19. package/dist/componentProps/organisms/{section/swatchpurchasepanel/SwatchPurchasePanelRightPanelProps.d.ts → cart/purchasepanel/PurchasePanelRightPanelProps.d.ts} +1 -1
  20. package/dist/componentProps/organisms/cart/shippingaddressform/ShippingAddressFormProps.d.ts +55 -0
  21. package/dist/componentProps/organisms/{section/moreinfohighlightssection → moreinfohighlightssection}/MoreInfoHighlightsSectionProps.d.ts +1 -1
  22. package/dist/componentProps/organisms/navigation/TopNavBarProps.d.ts +10 -6
  23. package/dist/componentProps/organisms/selectors/radiooptionselector/RadioOptionSelectorProps.d.ts +15 -0
  24. package/dist/componentProps/templates/cartconfirmationtemplate/CartConfirmationTemplateProps.d.ts +11 -0
  25. package/dist/componentProps/templates/productdetailpagetemplate/ProductDetailPageTemplateProps.d.ts +3 -3
  26. package/dist/index.cjs +7 -7
  27. package/dist/index.d.ts +5 -5
  28. package/dist/index.js +472 -440
  29. package/dist/stories/atoms/buttons/radiooption/RadioOption.d.ts +4 -0
  30. package/dist/stories/atoms/checkbox/Checkbox.d.ts +4 -0
  31. package/dist/stories/atoms/dropdown/Dropdown.d.ts +1 -1
  32. package/dist/stories/atoms/input/Input.d.ts +4 -0
  33. package/dist/stories/molecules/card/quantitycheckoutcard/QuantityCheckoutCard.d.ts +3 -0
  34. package/dist/stories/molecules/input/InputField.d.ts +4 -0
  35. package/dist/stories/molecules/selectors/progressindicator/CheckoutProgressIndicator.d.ts +4 -0
  36. package/dist/stories/molecules/selectors/radiooptionselector/RadioOptionSelector.d.ts +4 -0
  37. package/dist/stories/organisms/cart/cartconfirmation/cartconfirmedhero/CartConfirmedHero.d.ts +4 -0
  38. package/dist/stories/organisms/cart/cartconfirmation/cartordersummary/CartOrderSummary.d.ts +4 -0
  39. package/dist/stories/organisms/cart/cartconfirmation/cartreceiptsection/CartReceiptSection.d.ts +4 -0
  40. package/dist/stories/organisms/cart/cartconfirmation/cartsummarysection/CartSummarySection.d.ts +4 -0
  41. package/dist/stories/organisms/cart/cartflyout/CartFlyout.d.ts +2 -2
  42. package/dist/stories/organisms/cart/cartpaymentpanel/CartPaymentPanel.d.ts +4 -0
  43. package/dist/stories/organisms/cart/cartsummary/CartSummary.d.ts +4 -0
  44. package/dist/stories/organisms/cart/carttotalspanel/CartTotalsPanel.d.ts +4 -0
  45. package/dist/stories/organisms/cart/checkoutsteppanel/CheckoutStepPanel.d.ts +23 -0
  46. package/dist/stories/organisms/cart/purchasepanel/LeftPanel/PurchasePanelLeftPanel.d.ts +4 -0
  47. package/dist/stories/organisms/{section/swatchpurchasepanel/SwatchPurchasePanel.d.ts → cart/purchasepanel/PurchasePanel.d.ts} +3 -3
  48. package/dist/stories/organisms/cart/purchasepanel/RightPanel/PurchasePanelRightPanel.d.ts +4 -0
  49. package/dist/stories/organisms/cart/shippingaddressform/ShippingAddressForm.d.ts +4 -0
  50. package/dist/stories/organisms/featurecardcollection/FeatureCardCollection.d.ts +4 -0
  51. package/dist/stories/organisms/{section/moreinfohighlights → moreinfohighlights}/MoreInfoHighlightsSection.d.ts +1 -1
  52. package/dist/stories/organisms/navigation/TopNavBar/parts/TopNavActions.d.ts +6 -1
  53. package/dist/stories/organisms/navigation/TopNavBar/parts/{TopNavDropdown.d.ts → TopNavMegaMenu.d.ts} +3 -3
  54. package/dist/stories/organisms/productinformation/productdetailpane/ProductDetailsPane.d.ts +6 -0
  55. package/dist/stories/organisms/{section/productinformationsection → productinformation/productinformation}/ProductInformationSection.d.ts +1 -1
  56. package/dist/stories/organisms/{section/productinformationsection/parts → productinformation/sizeandgradepane}/SizeAndGradePane.d.ts +1 -1
  57. package/dist/stories/organisms/productinformation/texturepane/TexturePane.d.ts +6 -0
  58. package/dist/stories/page/home/HomePage.d.ts +2 -2
  59. package/dist/stories/templates/cart/confirmation/CartConfirmationTemplate.d.ts +4 -0
  60. package/dist/stories/templates/cart/payment/CartPaymentTemplate.d.ts +12 -0
  61. package/dist/stories/templates/cart/shipping/CartShippingTemplate.d.ts +14 -0
  62. package/dist/stories/templates/cart/summary/CartSummaryTemplate.d.ts +10 -0
  63. package/dist/utils/validators.d.ts +3 -0
  64. package/package.json +1 -1
  65. package/dist/componentProps/molecules/card/swatchquantitycheckoutcard/SwatchQuantityCheckoutCardProps.d.ts +0 -12
  66. package/dist/componentProps/organisms/section/ordersummarysection/OrderSummarySectionLeftPanelProps.d.ts +0 -6
  67. package/dist/stories/molecules/card/swatchquantitycheckoutcard/SwatchQuantityCheckoutCard.d.ts +0 -4
  68. package/dist/stories/molecules/selectors/breadcrumb/Breadcrumb.d.ts +0 -4
  69. package/dist/stories/organisms/section/featurecardcollection/FeatureCardCollection.d.ts +0 -4
  70. package/dist/stories/organisms/section/ordersummarysection/parts/OrderSummarySectionLeftPanel.d.ts +0 -4
  71. package/dist/stories/organisms/section/productinformationsection/parts/ProductDetailsPane.d.ts +0 -6
  72. package/dist/stories/organisms/section/productinformationsection/parts/TexturePane.d.ts +0 -6
  73. package/dist/stories/organisms/section/swatchpurchasepanel/parts/SwatchPurchasePanelLeftPanel.d.ts +0 -4
  74. package/dist/stories/organisms/section/swatchpurchasepanel/parts/SwatchPurchasePanelRightPanel.d.ts +0 -4
  75. /package/dist/componentProps/organisms/{section → featurecards}/featurecardscollection/FeatureCardCollectionProps.d.ts +0 -0
  76. /package/dist/componentProps/organisms/{section → featurecards}/featurecardssection/FeatureCardSectionProps.d.ts +0 -0
  77. /package/dist/componentProps/organisms/{section/productinformationsection → productinformationsection}/ProductInformationSectionProps.d.ts +0 -0
  78. /package/dist/stories/molecules/card/{swatchquantitycheckoutcard/SwatchQuantityCheckoutCard.test.d.ts → quantitycheckoutcard/QuantityCheckoutCard.test.d.ts} +0 -0
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ export interface CheckboxProps {
3
+ id: string;
4
+ name?: string;
5
+ label: string;
6
+ checked?: boolean;
7
+ disabled?: boolean;
8
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
9
+ }
@@ -1,8 +1,18 @@
1
- export interface DropdownOptions {
1
+ import React from "react";
2
+ export interface DropdownOption {
2
3
  label: string;
4
+ value?: string;
5
+ disabled?: boolean;
6
+ }
7
+ export interface DropdownProps {
8
+ id: string;
9
+ name?: string;
10
+ options?: DropdownOption[];
11
+ value?: string;
12
+ placeholder?: string;
13
+ disabled?: boolean;
14
+ hasError?: boolean;
15
+ variant?: "field" | "filter";
16
+ onChange?: (event: React.ChangeEvent<HTMLSelectElement>) => void;
17
+ onBlur?: (event: React.FocusEvent<HTMLSelectElement>) => void;
3
18
  }
4
- export type DropdownProps = {
5
- dropdownId: string;
6
- sortName: string;
7
- DropdownOptions: DropdownOptions[];
8
- };
@@ -0,0 +1,23 @@
1
+ import React from "react";
2
+ export interface InputProps {
3
+ id?: string;
4
+ name?: string;
5
+ type?: "text" | "email" | "password" | "tel" | "number";
6
+ value?: string;
7
+ placeholder?: string;
8
+ disabled?: boolean;
9
+ required?: boolean;
10
+ hasError?: boolean;
11
+ className?: string;
12
+ autoComplete?: string;
13
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
14
+ onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
15
+ onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
16
+ }
17
+ export interface InputFieldProps extends InputProps {
18
+ label?: string;
19
+ errorMessage?: string;
20
+ linkText?: string;
21
+ linkHref?: string;
22
+ onLinkClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;
23
+ }
@@ -0,0 +1,12 @@
1
+ export interface RadioOptionProps {
2
+ id: string;
3
+ label: string;
4
+ description?: string;
5
+ checked?: boolean;
6
+ disabled?: boolean;
7
+ name?: string;
8
+ value?: string;
9
+ className?: string;
10
+ onChange?: (value: string) => void;
11
+ onClick?: () => void;
12
+ }
@@ -1,4 +1,4 @@
1
- import type { FaTypeClass } from "../../../../stories/atoms/icon/Icon";
1
+ import { FaTypeClass } from "../../../atoms/icon/IconProps";
2
2
  export type MoreInfoHighlightsCardProps = {
3
3
  iconType: FaTypeClass;
4
4
  iconName: string;
@@ -0,0 +1,27 @@
1
+ export interface QuantityCheckoutCardProps {
2
+ imageSrc: string;
3
+ imageAlt: string;
4
+ title: string;
5
+ brand: string;
6
+ decorNumber: string;
7
+ finish?: string;
8
+ size?: string;
9
+ quantity: number;
10
+ price?: {
11
+ label: string;
12
+ value: number;
13
+ };
14
+ unitPrice?: {
15
+ label: string;
16
+ value: number;
17
+ };
18
+ totalPrice?: {
19
+ label: string;
20
+ value: number;
21
+ };
22
+ minQuantity?: number;
23
+ maxQuantity?: number;
24
+ isReadOnly?: boolean;
25
+ onQuantityChange?: (quantity: number) => void;
26
+ onRemoveItem?: () => void;
27
+ }
@@ -0,0 +1,10 @@
1
+ export interface CheckoutProgressIndicatorProps {
2
+ steps?: string[];
3
+ currentStep?: number | string;
4
+ onStepClick?: (step: string, index: number) => void;
5
+ className?: string;
6
+ completedColorClass?: string;
7
+ upcomingColorClass?: string;
8
+ connectorCompletedClass?: string;
9
+ connectorUpcomingClass?: string;
10
+ }
@@ -0,0 +1,7 @@
1
+ export interface CartConfirmedHeroProps {
2
+ title?: string;
3
+ message?: string;
4
+ buttonLabel?: string;
5
+ onButtonClick?: () => void;
6
+ className?: string;
7
+ }
@@ -0,0 +1,18 @@
1
+ export interface ShippingMethodSummaryProps {
2
+ title?: string;
3
+ methodLabel?: string;
4
+ estimatedDeliveryLabel?: string;
5
+ price?: string;
6
+ }
7
+ export interface PaymentSummaryRowProps {
8
+ label: string;
9
+ value: string;
10
+ isEmphasized?: boolean;
11
+ valueClassName?: string;
12
+ }
13
+ export interface CartOrderSummaryProps {
14
+ shippingTitle?: string;
15
+ paymentTitle?: string;
16
+ shippingMethod?: ShippingMethodSummaryProps;
17
+ paymentRows?: PaymentSummaryRowProps[];
18
+ }
@@ -0,0 +1,26 @@
1
+ export interface CartReceiptAddressProps {
2
+ title?: string;
3
+ name?: string;
4
+ addressLine1?: string;
5
+ addressLine2?: string;
6
+ addressLine3?: string;
7
+ country?: string;
8
+ }
9
+ export interface CartReceiptDetailsProps {
10
+ title?: string;
11
+ orderNumberLabel?: string;
12
+ orderNumber?: string;
13
+ orderDateLabel?: string;
14
+ orderDate?: string;
15
+ nameLabel?: string;
16
+ name?: string;
17
+ email?: string;
18
+ phone?: string;
19
+ }
20
+ export interface CartReceiptSectionProps {
21
+ sectionTitle?: string;
22
+ orderDetails?: CartReceiptDetailsProps;
23
+ shippingAddress?: CartReceiptAddressProps;
24
+ billingAddress?: CartReceiptAddressProps;
25
+ className?: string;
26
+ }
@@ -0,0 +1,11 @@
1
+ import { QuantityCheckoutCardProps } from "../../../../molecules/card/quantitycheckoutcard/QuantityCheckoutCardProps";
2
+ export interface CartSummarySectionProps {
3
+ sectionTitle?: string;
4
+ columnLabels?: {
5
+ orderDetails?: string;
6
+ quantity?: string;
7
+ unitPrice?: string;
8
+ total?: string;
9
+ };
10
+ items?: QuantityCheckoutCardProps[];
11
+ }
@@ -1,8 +1,8 @@
1
- import { CartQuantityCardProps } from "../../../molecules/card/cartItemCard/CartQuantityCardProps";
2
- export type ShoppingCartFlyoutItem = CartQuantityCardProps & {
1
+ import { CartItemCardProps } from "../../../molecules/card/cartItemCard/CartItemCardProps";
2
+ export type ShoppingCartFlyoutItem = CartItemCardProps & {
3
3
  id: string;
4
4
  };
5
- export type ShoppingCartFlyoutProps = {
5
+ export type CartFlyoutProps = {
6
6
  isOpen: boolean;
7
7
  title?: string;
8
8
  projectName?: string;
@@ -0,0 +1,78 @@
1
+ import React from "react";
2
+ import { RadioOptionSelectorProps } from "../../selectors/radiooptionselector/RadioOptionSelectorProps";
3
+ import { DropdownOption } from "../../../atoms/dropdown/DropdownProps";
4
+ export interface CartPaymentPanelErrors {
5
+ cardNumber?: string;
6
+ expirationDate?: string;
7
+ securityCode?: string;
8
+ billingFirstName?: string;
9
+ billingLastName?: string;
10
+ billingEmail?: string;
11
+ billingPhoneNumber?: string;
12
+ billingCompanyName?: string;
13
+ billingAddress?: string;
14
+ billingApartment?: string;
15
+ billingPostalCode?: string;
16
+ billingCity?: string;
17
+ billingCountry?: string;
18
+ billingStateProvince?: string;
19
+ }
20
+ export interface CartPaymentPanelProps {
21
+ paymentTypeTitle?: string;
22
+ paymentTypeSelectorProps: RadioOptionSelectorProps;
23
+ cardNumber?: string;
24
+ expirationDate?: string;
25
+ securityCode?: string;
26
+ sameAsShipping?: boolean;
27
+ billingSummaryTitle?: string;
28
+ billingName?: string;
29
+ billingCompanyName?: string;
30
+ billingPhone?: string;
31
+ billingAddressLine1?: string;
32
+ billingAddressLine2?: string;
33
+ billingAddressLine3?: string;
34
+ isEditingBillingAddress?: boolean;
35
+ billingFirstName?: string;
36
+ billingLastName?: string;
37
+ billingEmail?: string;
38
+ billingPhoneNumber?: string;
39
+ billingAddress?: string;
40
+ billingApartment?: string;
41
+ billingPostalCode?: string;
42
+ billingCity?: string;
43
+ billingCountry?: string;
44
+ billingStateProvince?: string;
45
+ billingCountryOptions?: DropdownOption[];
46
+ billingStateProvinceOptions?: DropdownOption[];
47
+ onCardNumberChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
48
+ onExpirationDateChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
49
+ onSecurityCodeChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
50
+ onSameAsShippingChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
51
+ onEditBilling?: () => void;
52
+ onCardNumberBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
53
+ onExpirationDateBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
54
+ onSecurityCodeBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
55
+ onBillingFirstNameChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
56
+ onBillingLastNameChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
57
+ onBillingEmailChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
58
+ onBillingPhoneNumberChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
59
+ onBillingCompanyNameChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
60
+ onBillingAddressChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
61
+ onBillingApartmentChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
62
+ onBillingPostalCodeChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
63
+ onBillingCityChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
64
+ onBillingCountryChange?: (event: React.ChangeEvent<HTMLSelectElement>) => void;
65
+ onBillingStateProvinceChange?: (event: React.ChangeEvent<HTMLSelectElement>) => void;
66
+ onBillingFirstNameBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
67
+ onBillingLastNameBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
68
+ onBillingEmailBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
69
+ onBillingPhoneNumberBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
70
+ onBillingCompanyNameBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
71
+ onBillingAddressBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
72
+ onBillingApartmentBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
73
+ onBillingPostalCodeBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
74
+ onBillingCityBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
75
+ onBillingCountryBlur?: (event: React.FocusEvent<HTMLSelectElement>) => void;
76
+ onBillingStateProvinceBlur?: (event: React.FocusEvent<HTMLSelectElement>) => void;
77
+ errors?: CartPaymentPanelErrors;
78
+ }
@@ -0,0 +1,25 @@
1
+ export interface CartSummaryItem {
2
+ id: string;
3
+ sku?: string;
4
+ imageSrc: string;
5
+ imageAlt?: string;
6
+ title: string;
7
+ brand?: string;
8
+ decorNumber?: string;
9
+ productType?: string;
10
+ quantity: number;
11
+ price?: {
12
+ value: number;
13
+ currency: string;
14
+ label: string;
15
+ };
16
+ minQuantity?: number;
17
+ maxQuantity?: number;
18
+ }
19
+ export interface CartSummaryProps {
20
+ subtotal: number;
21
+ shippingCost: number;
22
+ items?: CartSummaryItem[];
23
+ onQuantityChange?: (itemId: string, quantity: number) => void;
24
+ onRemoveItem?: (itemId: string) => void;
25
+ }
@@ -0,0 +1,18 @@
1
+ import React from "react";
2
+ export interface CartTotalsPanelProps {
3
+ discountCode?: string;
4
+ subtotalLabel?: string;
5
+ taxLabel?: string;
6
+ shippingLabel?: string;
7
+ totalLabel?: string;
8
+ subtotal?: string;
9
+ tax?: string;
10
+ shipping?: string;
11
+ total?: string;
12
+ continueLabel?: string;
13
+ showDiscountCode?: boolean;
14
+ onDiscountCodeChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
15
+ onApplyDiscount?: () => void;
16
+ onContinue?: () => void;
17
+ className?: string;
18
+ }
@@ -0,0 +1,6 @@
1
+ import type { QuantityCheckoutCardProps } from "../../../molecules/card/quantitycheckoutcard/QuantityCheckoutCardProps";
2
+ export type OrderSummarySectionLeftPanelProps = {
3
+ subtotal: number;
4
+ shippingCost: number;
5
+ swatchQuantity: QuantityCheckoutCardProps[];
6
+ };
@@ -11,7 +11,7 @@ export type SwatchOption = ButtonGridItem & {
11
11
  export type SwatchPurchasePanelLeftPanelNavigateMeta = {
12
12
  kind: "availability" | "returnPolicy";
13
13
  };
14
- export type SwatchPurchasePanelLeftPanelProps = {
14
+ export type PurchasePanelLeftPanelProps = {
15
15
  sku?: string;
16
16
  title?: string;
17
17
  decor?: string;
@@ -1,8 +1,8 @@
1
- export type SwatchPurchasePanelTab = "Sample" | "Buy Now" | string;
1
+ export type PurchasePanelTab = "Sample" | "Buy Now" | string;
2
2
  export type SwatchPurchasePanelNavigateMeta = {
3
3
  kind: "availability" | "returnPolicy";
4
4
  };
5
- export type SwatchPurchasePanelCarouselProps = {
5
+ export type PurchasePanelCarouselProps = {
6
6
  slides: any[];
7
7
  initialIndex?: number;
8
8
  text?: string;
@@ -11,7 +11,7 @@ export type AddToFavoritesPayloadProps = {
11
11
  sku?: string;
12
12
  decor?: string;
13
13
  };
14
- export type SwatchPurchasePanelOptionProps = {
14
+ export type PurchasePanelOptionProps = {
15
15
  id: string;
16
16
  label: string;
17
17
  disabled?: boolean;
@@ -20,7 +20,7 @@ export type SwatchPurchasePanelOptionProps = {
20
20
  onClick?: (id: string) => void;
21
21
  };
22
22
  export type CartOrderProps = {
23
- type: SwatchPurchasePanelTab;
23
+ type: PurchasePanelTab;
24
24
  sku?: string;
25
25
  decor?: string;
26
26
  product: string | null;
@@ -32,11 +32,11 @@ export type CartOrderProps = {
32
32
  priceLabel?: string;
33
33
  currency?: string;
34
34
  };
35
- export type SwatchPurchasePanelTabOptionGroups = {
36
- productOptions?: SwatchPurchasePanelOptionProps[];
37
- gradeOptions?: SwatchPurchasePanelOptionProps[];
38
- textureOptions?: SwatchPurchasePanelOptionProps[];
39
- sizeOptions?: SwatchPurchasePanelOptionProps[];
35
+ export type PurchasePanelTabOptionGroups = {
36
+ productOptions?: PurchasePanelOptionProps[];
37
+ gradeOptions?: PurchasePanelOptionProps[];
38
+ textureOptions?: PurchasePanelOptionProps[];
39
+ sizeOptions?: PurchasePanelOptionProps[];
40
40
  };
41
41
  export type ProductVariantProps = {
42
42
  id: string;
@@ -55,7 +55,7 @@ export type ProductVariantProps = {
55
55
  grade?: string;
56
56
  isWebEnabled?: boolean;
57
57
  };
58
- export type SwatchPurchasePanelProps = {
58
+ export type PurchasePanelProps = {
59
59
  sku?: string;
60
60
  decor?: string;
61
61
  title: string;
@@ -63,14 +63,14 @@ export type SwatchPurchasePanelProps = {
63
63
  patternRepeat?: string;
64
64
  onDownloadSwatch?: () => void;
65
65
  onDownloadFullSheet?: () => void;
66
- carousel: SwatchPurchasePanelCarouselProps;
67
- tabs?: SwatchPurchasePanelTab[];
68
- initialTab?: SwatchPurchasePanelTab;
69
- tabOptions?: Record<SwatchPurchasePanelTab, SwatchPurchasePanelTabOptionGroups>;
70
- productOptions?: SwatchPurchasePanelOptionProps[];
71
- gradeOptions?: SwatchPurchasePanelOptionProps[];
72
- textureOptions?: SwatchPurchasePanelOptionProps[];
73
- sizeOptions?: SwatchPurchasePanelOptionProps[];
66
+ carousel: PurchasePanelCarouselProps;
67
+ tabs?: PurchasePanelTab[];
68
+ initialTab?: PurchasePanelTab;
69
+ tabOptions?: Record<PurchasePanelTab, PurchasePanelTabOptionGroups>;
70
+ productOptions?: PurchasePanelOptionProps[];
71
+ gradeOptions?: PurchasePanelOptionProps[];
72
+ textureOptions?: PurchasePanelOptionProps[];
73
+ sizeOptions?: PurchasePanelOptionProps[];
74
74
  variants?: ProductVariantProps[];
75
75
  priceLabel?: string;
76
76
  priceValue?: number;
@@ -10,6 +10,6 @@ export type SwatchPurchasePanelCarousel = {
10
10
  initialIndex?: number;
11
11
  text?: string;
12
12
  };
13
- export type SwatchPurchasePanelRightPanelProps = {
13
+ export type PurchasePanelRightPanelProps = {
14
14
  carousel?: SwatchPurchasePanelCarousel;
15
15
  };
@@ -0,0 +1,55 @@
1
+ import React from "react";
2
+ import { DropdownOption } from "../../../atoms/dropdown/DropdownProps";
3
+ export interface ShippingAddressFormErrors {
4
+ firstName?: string;
5
+ lastName?: string;
6
+ email?: string;
7
+ phoneNumber?: string;
8
+ companyName?: string;
9
+ address?: string;
10
+ apartment?: string;
11
+ postalCode?: string;
12
+ city?: string;
13
+ country?: string;
14
+ stateProvince?: string;
15
+ }
16
+ export interface ShippingAddressFormProps {
17
+ title?: string;
18
+ firstName?: string;
19
+ lastName?: string;
20
+ email?: string;
21
+ phoneNumber?: string;
22
+ companyName?: string;
23
+ address?: string;
24
+ apartment?: string;
25
+ postalCode?: string;
26
+ city?: string;
27
+ country?: string;
28
+ stateProvince?: string;
29
+ countryOptions?: DropdownOption[];
30
+ stateProvinceOptions?: DropdownOption[];
31
+ errors?: ShippingAddressFormErrors;
32
+ onFirstNameChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
33
+ onLastNameChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
34
+ onEmailChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
35
+ onPhoneNumberChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
36
+ onCompanyNameChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
37
+ onAddressChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
38
+ onApartmentChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
39
+ onPostalCodeChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
40
+ onCityChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
41
+ onCountryChange?: (event: React.ChangeEvent<HTMLSelectElement>) => void;
42
+ onStateProvinceChange?: (event: React.ChangeEvent<HTMLSelectElement>) => void;
43
+ onFirstNameBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
44
+ onLastNameBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
45
+ onEmailBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
46
+ onPhoneNumberBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
47
+ onCompanyNameBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
48
+ onAddressBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
49
+ onApartmentBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
50
+ onPostalCodeBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
51
+ onCityBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
52
+ onCountryBlur?: (event: React.FocusEvent<HTMLSelectElement>) => void;
53
+ onStateProvinceBlur?: (event: React.FocusEvent<HTMLSelectElement>) => void;
54
+ onBlur?: (event: React.FocusEvent<HTMLSelectElement>) => void;
55
+ }
@@ -1,4 +1,4 @@
1
- import type { MoreInfoHighlightsCardProps } from "../../../molecules/card/moreinfohighlightscard/MoreInfoHighlightsCardProps";
1
+ import type { MoreInfoHighlightsCardProps } from "../../molecules/card/moreinfohighlightscard/MoreInfoHighlightsCardProps";
2
2
  export type MoreInfoHighlightsSectionProps = {
3
3
  heading: string;
4
4
  body?: string;
@@ -1,3 +1,4 @@
1
+ import { Country } from "../../molecules/selectors/countryselector/CountrySelectorProps";
1
2
  export type NavLink = {
2
3
  label: string;
3
4
  href: string;
@@ -17,15 +18,18 @@ export type NavItem = {
17
18
  subcategories: SubCategory[];
18
19
  promo?: Promo;
19
20
  };
21
+ type TopNavCartSummary = {
22
+ hasCart: boolean;
23
+ itemCount: number;
24
+ };
20
25
  export type TopNavBarProps = {
21
- NavMenuWithSubItems: NavItem[];
22
- Countries: {
23
- label: string;
24
- locale: string;
25
- href: string;
26
- }[];
26
+ NavMenuWithSubItems?: NavItem[];
27
+ Countries?: Country[];
27
28
  Login: {
28
29
  label: string;
29
30
  href: string;
30
31
  };
32
+ Cart?: TopNavCartSummary;
33
+ onNavigate?: (href: string) => void;
31
34
  };
35
+ export {};
@@ -0,0 +1,15 @@
1
+ export interface RadioOptionItem {
2
+ id: string;
3
+ value: string;
4
+ label: string;
5
+ description?: string;
6
+ disabled?: boolean;
7
+ }
8
+ export interface RadioOptionSelectorProps {
9
+ title?: string;
10
+ options?: RadioOptionItem[];
11
+ selectedValue?: string;
12
+ name?: string;
13
+ className?: string;
14
+ onChange?: (value: string) => void;
15
+ }
@@ -0,0 +1,11 @@
1
+ import { CartConfirmedHeroProps } from "../../organisms/cart/cartconfimation/cartconfirmationhero/CartConfirmedHeroProps";
2
+ import { CartReceiptSectionProps } from "../../organisms/cart/cartconfimation/cartreceiptsection/CartReceiptSectionProps";
3
+ import { CartSummarySectionProps } from "../../organisms/cart/cartconfimation/cartsummarysection/CartSummarySectionProps";
4
+ import { CartOrderSummaryProps } from "../../organisms/cart/cartconfimation/cartordersummary/CartOrderSummaryProps";
5
+ export interface CartConfirmationTemplateProps {
6
+ cartConfirmedHeroProps: CartConfirmedHeroProps;
7
+ cartReceiptSectionProps: CartReceiptSectionProps;
8
+ cartSummarySectionProps: CartSummarySectionProps;
9
+ cartOrderSummaryProps: CartOrderSummaryProps;
10
+ className?: string;
11
+ }
@@ -1,6 +1,6 @@
1
1
  import { BreadcrumbsProps } from "../../molecules/selectors/breadcrumb/BreadcrumbsProps";
2
- import { ProductInformationTabKey, SizeAndGradeDefinition } from "../../organisms/section/productinformationsection/ProductInformationSectionProps";
3
- import { ShoppingCartFlyoutProps } from "../../organisms/shoppingcart/shoppingcartflyout/ShoppingCartFlyoutProps";
2
+ import { ProductInformationTabKey, SizeAndGradeDefinition } from "../../organisms/productinformationsection/ProductInformationSectionProps";
3
+ import { CartFlyoutProps } from "../../organisms/cart/cartflyout/CartFlyoutProps";
4
4
  export type ProductDetailSimpleOption = {
5
5
  id: string;
6
6
  label: string;
@@ -212,5 +212,5 @@ export type ProductDetailPageTemplateProps = {
212
212
  currency?: string;
213
213
  }, data: ProductDetailData) => void;
214
214
  onNavigate?: (href: string) => void;
215
- cartFlyoutProps?: Omit<ShoppingCartFlyoutProps, "isOpen" | "onClose">;
215
+ cartFlyoutProps?: Omit<CartFlyoutProps, "isOpen" | "onClose">;
216
216
  };