@srimandir/pitru-paksh-common 2.8.0 → 2.8.1

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 (30) hide show
  1. package/dist/components/AddAncestorSheet/AddAncestorSheet.d.ts +13 -0
  2. package/dist/components/AddAncestorSheet/index.d.ts +2 -0
  3. package/dist/components/AncestorTab/AncestorTab.d.ts +15 -0
  4. package/dist/components/AncestorTab/index.d.ts +2 -0
  5. package/dist/components/AncestorTabRow/AncestorTabRow.d.ts +15 -0
  6. package/dist/components/AncestorTabRow/index.d.ts +2 -0
  7. package/dist/components/AvatarCardDialog/AvatarCardDialog.d.ts +17 -0
  8. package/dist/components/AvatarCardDialog/index.d.ts +2 -0
  9. package/dist/components/CartView/CartView.d.ts +2 -0
  10. package/dist/components/EventHeader/EventHeader.d.ts +35 -0
  11. package/dist/components/EventHeader/index.d.ts +2 -0
  12. package/dist/components/L2Card/L2Card.d.ts +1 -1
  13. package/dist/components/PujaDetailsForm/PujaDetailsForm.types.d.ts +4 -3
  14. package/dist/components/RitualProceedBar/RitualProceedBar.d.ts +35 -0
  15. package/dist/components/RitualProceedBar/index.d.ts +2 -0
  16. package/dist/components/SelectorCard/SelectorCard.d.ts +13 -4
  17. package/dist/constants/ancestor.constants.d.ts +57 -0
  18. package/dist/constants/deathTithi.constants.d.ts +7 -0
  19. package/dist/constants/index.d.ts +3 -0
  20. package/dist/constants/tithi.constants.d.ts +1 -0
  21. package/dist/index.d.ts +31 -15
  22. package/dist/pitru-paksh-common.d.ts +98 -0
  23. package/dist/pitru-paksh-common.js +1846 -1403
  24. package/dist/pitru-paksh-common.umd.cjs +8 -8
  25. package/dist/style.css +1 -1
  26. package/dist/types/ancestor.types.d.ts +6 -0
  27. package/dist/types/deathTithi.types.d.ts +1 -0
  28. package/dist/types/index.d.ts +2 -0
  29. package/dist/utils/date.utils.d.ts +6 -0
  30. package/package.json +4 -4
@@ -0,0 +1,13 @@
1
+ export interface AddAncestorSheetProps {
2
+ isOpen: boolean;
3
+ onClose: () => void;
4
+ onSave: (names: string[]) => void;
5
+ title: string;
6
+ fieldLabel: string;
7
+ namePrefix: string;
8
+ namePlaceholder: string;
9
+ addMoreLabel: string;
10
+ saveCta: string;
11
+ maxNameLength?: number;
12
+ }
13
+ export declare function AddAncestorSheet({ isOpen, onClose, onSave, title, fieldLabel, namePrefix, namePlaceholder, addMoreLabel, saveCta, maxNameLength, }: AddAncestorSheetProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { AddAncestorSheet } from './AddAncestorSheet';
2
+ export type { AddAncestorSheetProps } from './AddAncestorSheet';
@@ -0,0 +1,15 @@
1
+ export type AncestorTabState = 'enabled' | 'disabled' | 'filled';
2
+ export interface AncestorTabProps {
3
+ label: string;
4
+ avatarUrl: string;
5
+ /**
6
+ * enabled = the ancestor currently being viewed (orange highlight).
7
+ * disabled = grayscale avatar treatment (not yet filled in and not currently viewed).
8
+ * filled = has saved data (edit badge).
9
+ * Purely visual — clickability is controlled by whether `onClick` is passed.
10
+ */
11
+ state: AncestorTabState;
12
+ /** Omit to make the tab inert (not yet reachable). */
13
+ onClick?: () => void;
14
+ }
15
+ export declare function AncestorTab({ label, avatarUrl, state, onClick }: AncestorTabProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { AncestorTab } from './AncestorTab';
2
+ export type { AncestorTabProps, AncestorTabState } from './AncestorTab';
@@ -0,0 +1,15 @@
1
+ export interface AncestorTabRowEntry {
2
+ key: string;
3
+ label: string;
4
+ }
5
+ export interface AncestorTabRowProps {
6
+ entries: AncestorTabRowEntry[];
7
+ /** Index of the ancestor currently being viewed (gets the 'enabled' tab state). */
8
+ viewedIndex: number;
9
+ isEntryFilled: (key: string) => boolean;
10
+ /** Clickability of a tab — tabs beyond the frontier are inert. */
11
+ isEntryReachable: (index: number) => boolean;
12
+ onSelect: (index: number) => void;
13
+ className?: string;
14
+ }
15
+ export declare function AncestorTabRow({ entries, viewedIndex, isEntryFilled, isEntryReachable, onSelect, className, }: AncestorTabRowProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { AncestorTabRow } from './AncestorTabRow';
2
+ export type { AncestorTabRowProps, AncestorTabRowEntry } from './AncestorTabRow';
@@ -0,0 +1,17 @@
1
+ import { ReactNode } from 'react';
2
+ export interface AvatarCardDialogProps {
3
+ isOpen: boolean;
4
+ /** Dismiss without confirming, e.g. backdrop tap. */
5
+ onClose: () => void;
6
+ avatarUrl: string;
7
+ /** Text shown above the card, e.g. "The most auspicious day for the Sarva Pitru Puja!". */
8
+ heading: string;
9
+ ctaLabel: string;
10
+ onCtaClick: () => void;
11
+ cardIcon: ReactNode;
12
+ cardTitle: ReactNode;
13
+ cardDescription: ReactNode;
14
+ cardTag: ReactNode;
15
+ cardTagClassName?: string;
16
+ }
17
+ export declare function AvatarCardDialog({ isOpen, onClose, avatarUrl, heading, ctaLabel, onCtaClick, cardIcon, cardTitle, cardDescription, cardTag, cardTagClassName, }: AvatarCardDialogProps): import("react").JSX.Element | null;
@@ -0,0 +1,2 @@
1
+ export { AvatarCardDialog } from './AvatarCardDialog';
2
+ export type { AvatarCardDialogProps } from './AvatarCardDialog';
@@ -62,6 +62,8 @@ export interface CartViewProps extends Omit<React.HTMLAttributes<HTMLDivElement>
62
62
  addonsClassName?: string;
63
63
  /** className applied to every add-on card; per-card `className` (via the add-on object) wins/merges on top. */
64
64
  addonClassName?: string;
65
+ /** Optional card implementation for add-ons. Defaults to `ServiceOfferCard`. */
66
+ addonComponent?: React.ComponentType<ServiceOfferCardProps>;
65
67
  /** Price breakdown. Omit to hide it. All `BillDetails` props are available. */
66
68
  billDetails?: BillDetailsProps;
67
69
  /** FAQ accordion. Omit to hide it. All `FAQSection` props are available. */
@@ -0,0 +1,35 @@
1
+ export interface EventHeaderProps {
2
+ /** e.g. "Pitru Paksh Special" — rendered between the two star marks */
3
+ badgeLabel: string;
4
+ /** e.g. "27 September - 12 October, 2026" */
5
+ dateRangeLabel: string;
6
+ /** e.g. "Perform Puja Chadhava and Seva in memory of your ancestor" */
7
+ headline: string;
8
+ /** Width of the decorative mandala, in px (number) or any CSS size. Height auto-scales to preserve its native aspect ratio (1:1). Defaults to 225. */
9
+ mandalaWidth?: number | string;
10
+ /** Offset from the header's top edge, in px (number) or any CSS size — negative values push it further out of view. Defaults to -149 (shows just the bottom arc peeking above the logo). */
11
+ mandalaTop?: number | string;
12
+ /** Set to hide the mandala entirely. */
13
+ showMandala?: boolean;
14
+ /**
15
+ * Exact offset from the header's left edge, in px (number) or any CSS size — e.g. `-40` to bleed off the left side.
16
+ * Takes precedence over `mandalaRight` if both are set. Omit both to keep the mandala centered (the default).
17
+ */
18
+ mandalaLeft?: number | string;
19
+ /** Exact offset from the header's right edge, in px (number) or any CSS size. Ignored if `mandalaLeft` is also set. */
20
+ mandalaRight?: number | string;
21
+ className?: string;
22
+ }
23
+ /**
24
+ * Campaign header banner shown at the top of Pitru Paksha landing pages: a
25
+ * decorative mandala, Sri Mandir logo, an event badge, a date-range pill, and
26
+ * a bold headline, over a cream-to-white gradient.
27
+ *
28
+ * @example
29
+ * <EventHeader
30
+ * badgeLabel="Pitru Paksh Special"
31
+ * dateRangeLabel="27 September - 12 October, 2026"
32
+ * headline="Perform Puja Chadhava and Seva in memory of your ancestor"
33
+ * />
34
+ */
35
+ export declare function EventHeader({ badgeLabel, dateRangeLabel, headline, mandalaWidth, mandalaTop, showMandala, mandalaLeft, mandalaRight, className, }: EventHeaderProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { EventHeader } from './EventHeader';
2
+ export type { EventHeaderProps } from './EventHeader';
@@ -51,4 +51,4 @@ export interface L2CardProps {
51
51
  cta: ReactNode;
52
52
  className?: string;
53
53
  }
54
- export declare function L2Card({ chipNumber, chipLabel, isAdded, onEditClick, editButtonAriaLabel, onExpandClick, expandButtonAriaLabel, imageUrl, imageAlt, imageComponent: ImageComponent, ratingLabel, bookedLabel, title, description, learnMoreLabel, onLearnMoreClick, learnMoreHref, dateLabel, locationLabel, priceInfoLabel, onPriceInfoClick, price, cta, className, }: L2CardProps): import("react").JSX.Element;
54
+ export declare function L2Card({ chipNumber, chipLabel, isAdded, onEditClick, editButtonAriaLabel, onExpandClick, expandButtonAriaLabel, imageUrl, imageAlt, imageComponent: ImageComponent, ratingLabel, bookedLabel, title, learnMoreLabel, onLearnMoreClick, learnMoreHref, dateLabel, locationLabel, priceInfoLabel, onPriceInfoClick, price, cta, className, }: L2CardProps): import("react").JSX.Element;
@@ -51,9 +51,10 @@ export interface PujaDetailsFormProps {
51
51
  */
52
52
  gotraOptions?: string[];
53
53
  /**
54
- * When `true`, this puja is for all ancestors ("Sarva Pitru") — the
55
- * editable ancestor name fields are hidden entirely and replaced with a
56
- * single read-only "For all ancestors" field. Defaults to `false`.
54
+ * When `true`, this puja is for all ancestors ("Sarva Pitru") — a
55
+ * read-only "For all ancestors" field is shown above the ancestor name
56
+ * fields, which stay editable so the devotee can still additionally name
57
+ * specific ancestors. Defaults to `false`.
57
58
  */
58
59
  isSarvaPitru?: boolean;
59
60
  onBackClick?: () => void;
@@ -0,0 +1,35 @@
1
+ import { ReactNode } from 'react';
2
+ import { ButtonProps } from '../Button';
3
+ export interface RitualProceedBarProps {
4
+ /** e.g. "₹1002/-" — when omitted, the bar renders a single full-width proceed button (nothing selected yet). */
5
+ amount?: ReactNode;
6
+ amountClassName?: string;
7
+ /** e.g. "2 Rituals" — shown under the amount. */
8
+ subtitle?: ReactNode;
9
+ subtitleClassName?: string;
10
+ /** Info icon next to the amount — click to reveal a bill breakdown, etc. Pass `onInfoClick` to make it interactive. */
11
+ showInfoIcon?: boolean;
12
+ onInfoClick?: () => void;
13
+ /** CTA label, e.g. "Continue". */
14
+ proceedLabel?: ReactNode;
15
+ /** Trailing icon on the CTA. Defaults to an arrow. Pass `null` to hide it. */
16
+ proceedIcon?: ReactNode;
17
+ onProceed?: () => void;
18
+ /** Renders a flat, muted button. Defaults to `amount == null` (nothing to proceed with yet). */
19
+ disabled?: boolean;
20
+ /** Extra props forwarded to the underlying `Button` (size, loading, ...). */
21
+ proceedButtonProps?: Omit<ButtonProps, 'children' | 'onClick' | 'disabled' | 'variant'>;
22
+ className?: string;
23
+ }
24
+ /**
25
+ * Sticky bottom bar for a ritual-selection flow, over a cream-to-pink
26
+ * gradient. Two states, switched by whether `amount` is passed:
27
+ * - No `amount`: a single full-width, muted proceed button (nothing picked yet).
28
+ * - With `amount`: the total + an optional "N Rituals" subtitle on the left,
29
+ * and a green "Continue" button on the right.
30
+ *
31
+ * @example
32
+ * <RitualProceedBar amount="₹1002/-" subtitle="2 Rituals" proceedLabel="Continue" onProceed={...} />
33
+ * <RitualProceedBar proceedLabel="Continue" onProceed={...} /> // nothing selected yet
34
+ */
35
+ export declare function RitualProceedBar({ amount, amountClassName, subtitle, subtitleClassName, showInfoIcon, onInfoClick, proceedLabel, proceedIcon, onProceed, disabled, proceedButtonProps, className, }: RitualProceedBarProps): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { RitualProceedBar } from './RitualProceedBar';
2
+ export type { RitualProceedBarProps } from './RitualProceedBar';
@@ -35,12 +35,21 @@ export interface SelectorCardProps extends Omit<React.ButtonHTMLAttributes<HTMLB
35
35
  /** Extra classes for the corner ribbon, e.g. to change its color/theme. */
36
36
  tagClassName?: string;
37
37
  /**
38
- * Extra content rendered below the header row: an editable value, an info
39
- * row, a highlighted note, or any custom node. Typically shown only while
40
- * `selected` is true, but that's left to the caller so both "always
41
- * visible" and "reveal on select" patterns are supported.
38
+ * Extra content rendered below the header row, nested inside the card's own
39
+ * border: an editable value, an info row, or any custom node. Typically shown
40
+ * only while `selected` is true, but that's left to the caller so both
41
+ * "always visible" and "reveal on select" patterns are supported.
42
42
  */
43
43
  children?: React.ReactNode;
44
+ /**
45
+ * An explainer note rendered as its own surface *behind* the card, instead of
46
+ * nested inside it like `children` — pulled up behind the card via negative
47
+ * margin so the card's higher stacking order covers the seam between them.
48
+ * Typically shown only while `selected` is true; that's left to the caller.
49
+ */
50
+ note?: React.ReactNode;
51
+ /** Extra classes for the `note` surface, e.g. to change its text color. */
52
+ noteClassName?: string;
44
53
  }
45
54
  /**
46
55
  * A selectable option row/card used across Pitru Paksha flows: an icon or
@@ -0,0 +1,57 @@
1
+ export declare const ALL_ANCESTORS_ID = "all";
2
+ export declare const ANCESTOR_OPTIONS: [{
3
+ readonly id: "all";
4
+ readonly labelKey: "selectAncestorsOptionAll";
5
+ }, {
6
+ readonly id: "mother";
7
+ readonly labelKey: "selectAncestorsOptionMother";
8
+ readonly gender: "female";
9
+ }, {
10
+ readonly id: "father";
11
+ readonly labelKey: "selectAncestorsOptionFather";
12
+ readonly gender: "male";
13
+ }, {
14
+ readonly id: "wife";
15
+ readonly labelKey: "selectAncestorsOptionWife";
16
+ readonly gender: "female";
17
+ }, {
18
+ readonly id: "husband";
19
+ readonly labelKey: "selectAncestorsOptionHusband";
20
+ readonly gender: "male";
21
+ }, {
22
+ readonly id: "grandfatherPaternal";
23
+ readonly labelKey: "selectAncestorsOptionGrandfatherPaternal";
24
+ readonly gender: "male";
25
+ }, {
26
+ readonly id: "grandmotherPaternal";
27
+ readonly labelKey: "selectAncestorsOptionGrandmotherPaternal";
28
+ readonly gender: "female";
29
+ }, {
30
+ readonly id: "grandfatherMaternal";
31
+ readonly labelKey: "selectAncestorsOptionGrandfatherMaternal";
32
+ readonly gender: "male";
33
+ }, {
34
+ readonly id: "grandmotherMaternal";
35
+ readonly labelKey: "selectAncestorsOptionGrandmotherMaternal";
36
+ readonly gender: "female";
37
+ }, {
38
+ readonly id: "greatGrandfatherPaternal";
39
+ readonly labelKey: "selectAncestorsOptionGreatGrandfatherPaternal";
40
+ readonly gender: "male";
41
+ }, {
42
+ readonly id: "greatGrandmotherPaternal";
43
+ readonly labelKey: "selectAncestorsOptionGreatGrandmotherPaternal";
44
+ readonly gender: "female";
45
+ }, {
46
+ readonly id: "greatGrandfatherMaternal";
47
+ readonly labelKey: "selectAncestorsOptionGreatGrandfatherMaternal";
48
+ readonly gender: "male";
49
+ }, {
50
+ readonly id: "greatGrandmotherMaternal";
51
+ readonly labelKey: "selectAncestorsOptionGreatGrandmotherMaternal";
52
+ readonly gender: "female";
53
+ }];
54
+ export declare const MALE_ANCESTOR_AVATAR_URL = "https://srm-cdn.a4b.io/yoda/1788334548628.webp";
55
+ export declare const FEMALE_ANCESTOR_AVATAR_URL = "https://srm-cdn.a4b.io/yoda/1788334564281.webp";
56
+ /** Custom (free-text) ancestor names carry no gender, so they default to the male avatar. */
57
+ export declare function getAncestorAvatarUrl(ancestorKey: string): string;
@@ -0,0 +1,7 @@
1
+ import { DeathTithiMethod } from '../types';
2
+ export declare const DEATH_TITHI_OPTIONS: {
3
+ value: DeathTithiMethod;
4
+ iconUrl: string;
5
+ titleKey: string;
6
+ subtextKey: string;
7
+ }[];
@@ -0,0 +1,3 @@
1
+ export { ALL_ANCESTORS_ID, ANCESTOR_OPTIONS, MALE_ANCESTOR_AVATAR_URL, FEMALE_ANCESTOR_AVATAR_URL, getAncestorAvatarUrl, } from './ancestor.constants';
2
+ export { DEATH_TITHI_OPTIONS } from './deathTithi.constants';
3
+ export { TITHI_NAME_KEYS } from './tithi.constants';
@@ -0,0 +1 @@
1
+ export declare const TITHI_NAME_KEYS: string[];
package/dist/index.d.ts CHANGED
@@ -10,7 +10,7 @@ export type { FAQAccordionProps, FAQAccordionItem } from './components/FAQAccord
10
10
  export { VideoPlayer } from './components/VideoPlayer';
11
11
  export type { VideoPlayerProps } from './components/VideoPlayer';
12
12
  export { LanguageSwitcher } from './components/LanguageSwitcher';
13
- export type { LanguageSwitcherProps, LanguageOption } from './components/LanguageSwitcher';
13
+ export type { LanguageSwitcherProps, LanguageOption, } from './components/LanguageSwitcher';
14
14
  export { TopBar } from './components/TopBar';
15
15
  export type { TopBarProps } from './components/TopBar';
16
16
  export { Chip } from './components/Chip';
@@ -25,34 +25,34 @@ export { SelectorCard, SelectorCardEditableField, SelectorCardInfoRow, SelectorC
25
25
  export type { SelectorCardProps, SelectorCardEditableFieldProps, SelectorCardInfoRowProps, SelectorCardNoteProps, SelectorCardPriceBadgeProps, } from './components/SelectorCard';
26
26
  export { QuantityStepper } from './components/QuantityStepper';
27
27
  export type { QuantityStepperProps } from './components/QuantityStepper';
28
- export { CartReviewItem, CartReviewMandapItem, CartReviewChangeButton, CartReviewAddedBadge } from './components/CartReviewItem';
28
+ export { CartReviewItem, CartReviewMandapItem, CartReviewChangeButton, CartReviewAddedBadge, } from './components/CartReviewItem';
29
29
  export type { CartReviewItemProps, CartReviewMandapItemProps, CartReviewChangeButtonProps, CartReviewAddedBadgeProps, } from './components/CartReviewItem';
30
30
  export { ServiceOfferCard } from './components/ServiceOfferCard';
31
31
  export type { ServiceOfferCardProps } from './components/ServiceOfferCard';
32
32
  export { PackageSelect } from './components/PackageSelect';
33
- export type { PackageSelectProps, PackageSelectOption } from './components/PackageSelect';
33
+ export type { PackageSelectProps, PackageSelectOption, } from './components/PackageSelect';
34
34
  export { PACKAGE_SELECT_DEFAULT_COPY, getPackageSelectDefaultCopy, } from './components/PackageSelect';
35
- export type { PackageSelectLocale, PackageSelectDefaultCopy } from './components/PackageSelect';
35
+ export type { PackageSelectLocale, PackageSelectDefaultCopy, } from './components/PackageSelect';
36
36
  export { TrustBadgesBar } from './components/TrustBadgesBar';
37
- export type { TrustBadgesBarProps, TrustBadge } from './components/TrustBadgesBar';
37
+ export type { TrustBadgesBarProps, TrustBadge, } from './components/TrustBadgesBar';
38
38
  export { CheckoutBar } from './components/CheckoutBar';
39
39
  export type { CheckoutBarProps } from './components/CheckoutBar';
40
- export { CHECKOUT_BAR_DEFAULT_COPY, getCheckoutBarDefaultCopy } from './components/CheckoutBar';
41
- export type { CheckoutBarLocale, CheckoutBarDefaultCopy } from './components/CheckoutBar';
40
+ export { CHECKOUT_BAR_DEFAULT_COPY, getCheckoutBarDefaultCopy, } from './components/CheckoutBar';
41
+ export type { CheckoutBarLocale, CheckoutBarDefaultCopy, } from './components/CheckoutBar';
42
42
  export { BookingSummaryBanner } from './components/BookingSummaryBanner';
43
- export type { BookingSummaryBannerProps, BookingSummaryBannerStats } from './components/BookingSummaryBanner';
43
+ export type { BookingSummaryBannerProps, BookingSummaryBannerStats, } from './components/BookingSummaryBanner';
44
44
  export { BOOKING_SUMMARY_BANNER_DEFAULT_COPY, getBookingSummaryBannerDefaultCopy, } from './components/BookingSummaryBanner';
45
45
  export type { BookingSummaryBannerLocale, BookingSummaryBannerDefaultCopy, } from './components/BookingSummaryBanner';
46
46
  export { BillDetails } from './components/BillDetails';
47
- export type { BillDetailsProps, BillDetailsRow } from './components/BillDetails';
47
+ export type { BillDetailsProps, BillDetailsRow, } from './components/BillDetails';
48
48
  export { CartView } from './components/CartView';
49
- export type { CartViewProps, CartViewAddon, CartViewItem } from './components/CartView';
49
+ export type { CartViewProps, CartViewAddon, CartViewItem, } from './components/CartView';
50
50
  export { TextField } from './components/TextField';
51
51
  export type { TextFieldProps } from './components/TextField';
52
52
  export { TithiPickerSheet } from './components/TithiPickerSheet';
53
53
  export type { TithiPickerSheetProps } from './components/TithiPickerSheet';
54
54
  export { DatePickerSheet } from './components/DatePickerSheet';
55
- export type { DatePickerSheetProps, PickedDate } from './components/DatePickerSheet';
55
+ export type { DatePickerSheetProps, PickedDate, } from './components/DatePickerSheet';
56
56
  export { PhoneNumberSheet } from './components/PhoneNumberSheet';
57
57
  export type { PhoneNumberSheetProps } from './components/PhoneNumberSheet';
58
58
  export { EmailSheet } from './components/EmailSheet';
@@ -60,8 +60,8 @@ export type { EmailSheetProps } from './components/EmailSheet';
60
60
  export { L2Card } from './components/L2Card';
61
61
  export type { L2CardProps, L2CardImageProps } from './components/L2Card';
62
62
  export { OutcomeButton, PlusIcon, CheckIcon } from './components/OutcomeButton';
63
- export type { OutcomeButtonProps, OutcomeButtonVariant, IconProps } from './components/OutcomeButton';
64
- export { PujaDetailsForm, createEmptyPujaDetailsFormValues } from './components/PujaDetailsForm';
63
+ export type { OutcomeButtonProps, OutcomeButtonVariant, IconProps, } from './components/OutcomeButton';
64
+ export { PujaDetailsForm, createEmptyPujaDetailsFormValues, } from './components/PujaDetailsForm';
65
65
  export type { PujaDetailsFormProps, PujaDetailsFormValues, AncestorNameEntry, } from './components/PujaDetailsForm';
66
66
  export { PUJA_DETAILS_FORM_DEFAULT_COPY, getPujaDetailsFormDefaultCopy, getKartaOrdinalLabel, } from './components/PujaDetailsForm';
67
67
  export type { PujaDetailsFormLocale, PujaDetailsFormDefaultCopy, } from './components/PujaDetailsForm';
@@ -74,9 +74,25 @@ export type { GotraInfoModalProps } from './components/GotraInfoModal';
74
74
  export { GOTRA_INFO_MODAL_DEFAULT_COPY, getGotraInfoModalDefaultCopy, } from './components/GotraInfoModal';
75
75
  export type { GotraInfoModalLocale, GotraInfoModalDefaultCopy, } from './components/GotraInfoModal';
76
76
  export { OutcomeSummary } from './components/OutcomeSummary';
77
- export type { OutcomeSummaryProps, OutcomeTrustItem, OutcomeTrustIconVariant } from './components/OutcomeSummary';
77
+ export type { OutcomeSummaryProps, OutcomeTrustItem, OutcomeTrustIconVariant, } from './components/OutcomeSummary';
78
+ export { AddAncestorSheet } from './components/AddAncestorSheet';
79
+ export type { AddAncestorSheetProps } from './components/AddAncestorSheet';
80
+ export { AncestorTab } from './components/AncestorTab';
81
+ export type { AncestorTabProps, AncestorTabState, } from './components/AncestorTab';
82
+ export { AncestorTabRow } from './components/AncestorTabRow';
83
+ export type { AncestorTabRowProps, AncestorTabRowEntry, } from './components/AncestorTabRow';
84
+ export { AvatarCardDialog } from './components/AvatarCardDialog';
85
+ export type { AvatarCardDialogProps } from './components/AvatarCardDialog';
86
+ export { parseIsoDate, formatIsoDate, getMonthLabels, formatDisplayDate, } from './utils/date.utils';
78
87
  export { SarvaPitruCard } from './components/SarvaPitruCard';
79
88
  export type { SarvaPitruCardProps } from './components/SarvaPitruCard';
80
89
  export { SARVA_PITRU_CARD_DEFAULT_COPY, getSarvaPitruCardDefaultCopy, } from './components/SarvaPitruCard';
81
- export type { SarvaPitruCardLocale, SarvaPitruCardDefaultCopy } from './components/SarvaPitruCard';
90
+ export type { SarvaPitruCardLocale, SarvaPitruCardDefaultCopy, } from './components/SarvaPitruCard';
82
91
  export { cn } from '../../common/dist/common.js';
92
+ export { ALL_ANCESTORS_ID, ANCESTOR_OPTIONS, MALE_ANCESTOR_AVATAR_URL, FEMALE_ANCESTOR_AVATAR_URL, getAncestorAvatarUrl, } from './constants';
93
+ export { DEATH_TITHI_OPTIONS, TITHI_NAME_KEYS } from './constants';
94
+ export type { AncestorOptionData, DeathTithiMethod } from './types';
95
+ export { EventHeader } from './components/EventHeader';
96
+ export type { EventHeaderProps } from './components/EventHeader';
97
+ export { RitualProceedBar } from './components/RitualProceedBar';
98
+ export type { RitualProceedBarProps } from './components/RitualProceedBar';
@@ -0,0 +1,98 @@
1
+ export { Button, buttonVariants } from './components/Button';
2
+ export type { ButtonProps } from './components/Button';
3
+ export { ConfinedBottomSheet } from './components/ConfinedBottomSheet';
4
+ export { TestimonialCard } from './components/TestimonialCard';
5
+ export type { TestimonialCardProps } from './components/TestimonialCard';
6
+ export { FAQSection } from './components/FAQSection';
7
+ export type { FAQSectionProps, FAQItem } from './components/FAQSection';
8
+ export { FAQAccordion } from './components/FAQAccordion';
9
+ export type { FAQAccordionProps, FAQAccordionItem } from './components/FAQAccordion';
10
+ export { VideoPlayer } from './components/VideoPlayer';
11
+ export type { VideoPlayerProps } from './components/VideoPlayer';
12
+ export { LanguageSwitcher } from './components/LanguageSwitcher';
13
+ export type { LanguageSwitcherProps, LanguageOption, } from './components/LanguageSwitcher';
14
+ export { TopBar } from './components/TopBar';
15
+ export type { TopBarProps } from './components/TopBar';
16
+ export { Chip } from './components/Chip';
17
+ export type { ChipProps } from './components/Chip';
18
+ export { StepProgressHeader } from './components/StepProgressHeader';
19
+ export type { StepProgressHeaderProps } from './components/StepProgressHeader';
20
+ export { AudioQuestionCard } from './components/AudioQuestionCard';
21
+ export type { AudioQuestionCardProps } from './components/AudioQuestionCard';
22
+ export { IconBadge } from './components/IconBadge';
23
+ export type { IconBadgeProps } from './components/IconBadge';
24
+ export { SelectorCard, SelectorCardEditableField, SelectorCardInfoRow, SelectorCardNote, SelectorCardPriceBadge, } from './components/SelectorCard';
25
+ export type { SelectorCardProps, SelectorCardEditableFieldProps, SelectorCardInfoRowProps, SelectorCardNoteProps, SelectorCardPriceBadgeProps, } from './components/SelectorCard';
26
+ export { QuantityStepper } from './components/QuantityStepper';
27
+ export type { QuantityStepperProps } from './components/QuantityStepper';
28
+ export { CartReviewItem, CartReviewMandapItem, CartReviewChangeButton, CartReviewAddedBadge, } from './components/CartReviewItem';
29
+ export type { CartReviewItemProps, CartReviewMandapItemProps, CartReviewChangeButtonProps, CartReviewAddedBadgeProps, } from './components/CartReviewItem';
30
+ export { ServiceOfferCard } from './components/ServiceOfferCard';
31
+ export type { ServiceOfferCardProps } from './components/ServiceOfferCard';
32
+ export { PackageSelect } from './components/PackageSelect';
33
+ export type { PackageSelectProps, PackageSelectOption, } from './components/PackageSelect';
34
+ export { PACKAGE_SELECT_DEFAULT_COPY, getPackageSelectDefaultCopy, } from './components/PackageSelect';
35
+ export type { PackageSelectLocale, PackageSelectDefaultCopy, } from './components/PackageSelect';
36
+ export { TrustBadgesBar } from './components/TrustBadgesBar';
37
+ export type { TrustBadgesBarProps, TrustBadge, } from './components/TrustBadgesBar';
38
+ export { CheckoutBar } from './components/CheckoutBar';
39
+ export type { CheckoutBarProps } from './components/CheckoutBar';
40
+ export { CHECKOUT_BAR_DEFAULT_COPY, getCheckoutBarDefaultCopy, } from './components/CheckoutBar';
41
+ export type { CheckoutBarLocale, CheckoutBarDefaultCopy, } from './components/CheckoutBar';
42
+ export { BookingSummaryBanner } from './components/BookingSummaryBanner';
43
+ export type { BookingSummaryBannerProps, BookingSummaryBannerStats, } from './components/BookingSummaryBanner';
44
+ export { BOOKING_SUMMARY_BANNER_DEFAULT_COPY, getBookingSummaryBannerDefaultCopy, } from './components/BookingSummaryBanner';
45
+ export type { BookingSummaryBannerLocale, BookingSummaryBannerDefaultCopy, } from './components/BookingSummaryBanner';
46
+ export { BillDetails } from './components/BillDetails';
47
+ export type { BillDetailsProps, BillDetailsRow, } from './components/BillDetails';
48
+ export { CartView } from './components/CartView';
49
+ export type { CartViewProps, CartViewAddon, CartViewItem, } from './components/CartView';
50
+ export { TextField } from './components/TextField';
51
+ export type { TextFieldProps } from './components/TextField';
52
+ export { TithiPickerSheet } from './components/TithiPickerSheet';
53
+ export type { TithiPickerSheetProps } from './components/TithiPickerSheet';
54
+ export { DatePickerSheet } from './components/DatePickerSheet';
55
+ export type { DatePickerSheetProps, PickedDate, } from './components/DatePickerSheet';
56
+ export { PhoneNumberSheet } from './components/PhoneNumberSheet';
57
+ export type { PhoneNumberSheetProps } from './components/PhoneNumberSheet';
58
+ export { EmailSheet } from './components/EmailSheet';
59
+ export type { EmailSheetProps } from './components/EmailSheet';
60
+ export { L2Card } from './components/L2Card';
61
+ export type { L2CardProps, L2CardImageProps } from './components/L2Card';
62
+ export { OutcomeButton, PlusIcon, CheckIcon } from './components/OutcomeButton';
63
+ export type { OutcomeButtonProps, OutcomeButtonVariant, IconProps, } from './components/OutcomeButton';
64
+ export { PujaDetailsForm, createEmptyPujaDetailsFormValues, } from './components/PujaDetailsForm';
65
+ export type { PujaDetailsFormProps, PujaDetailsFormValues, AncestorNameEntry, } from './components/PujaDetailsForm';
66
+ export { PUJA_DETAILS_FORM_DEFAULT_COPY, getPujaDetailsFormDefaultCopy, getKartaOrdinalLabel, } from './components/PujaDetailsForm';
67
+ export type { PujaDetailsFormLocale, PujaDetailsFormDefaultCopy, } from './components/PujaDetailsForm';
68
+ export { ConfirmPujaDetailsModal } from './components/ConfirmPujaDetailsModal';
69
+ export type { ConfirmPujaDetailsModalProps } from './components/ConfirmPujaDetailsModal';
70
+ export { CONFIRM_PUJA_DETAILS_MODAL_DEFAULT_COPY, getConfirmPujaDetailsModalDefaultCopy, } from './components/ConfirmPujaDetailsModal';
71
+ export type { ConfirmPujaDetailsModalLocale, ConfirmPujaDetailsModalDefaultCopy, } from './components/ConfirmPujaDetailsModal';
72
+ export { GotraInfoModal } from './components/GotraInfoModal';
73
+ export type { GotraInfoModalProps } from './components/GotraInfoModal';
74
+ export { GOTRA_INFO_MODAL_DEFAULT_COPY, getGotraInfoModalDefaultCopy, } from './components/GotraInfoModal';
75
+ export type { GotraInfoModalLocale, GotraInfoModalDefaultCopy, } from './components/GotraInfoModal';
76
+ export { OutcomeSummary } from './components/OutcomeSummary';
77
+ export type { OutcomeSummaryProps, OutcomeTrustItem, OutcomeTrustIconVariant, } from './components/OutcomeSummary';
78
+ export { AddAncestorSheet } from './components/AddAncestorSheet';
79
+ export type { AddAncestorSheetProps } from './components/AddAncestorSheet';
80
+ export { AncestorTab } from './components/AncestorTab';
81
+ export type { AncestorTabProps, AncestorTabState, } from './components/AncestorTab';
82
+ export { AncestorTabRow } from './components/AncestorTabRow';
83
+ export type { AncestorTabRowProps, AncestorTabRowEntry, } from './components/AncestorTabRow';
84
+ export { AvatarCardDialog } from './components/AvatarCardDialog';
85
+ export type { AvatarCardDialogProps } from './components/AvatarCardDialog';
86
+ export { parseIsoDate, formatIsoDate, getMonthLabels, formatDisplayDate, } from './utils/date.utils';
87
+ export { SarvaPitruCard } from './components/SarvaPitruCard';
88
+ export type { SarvaPitruCardProps } from './components/SarvaPitruCard';
89
+ export { SARVA_PITRU_CARD_DEFAULT_COPY, getSarvaPitruCardDefaultCopy, } from './components/SarvaPitruCard';
90
+ export type { SarvaPitruCardLocale, SarvaPitruCardDefaultCopy, } from './components/SarvaPitruCard';
91
+ export { cn } from '../../common/dist/common.js';
92
+ export { ALL_ANCESTORS_ID, ANCESTOR_OPTIONS, MALE_ANCESTOR_AVATAR_URL, FEMALE_ANCESTOR_AVATAR_URL, getAncestorAvatarUrl, } from './constants';
93
+ export { DEATH_TITHI_OPTIONS, TITHI_NAME_KEYS } from './constants';
94
+ export type { AncestorOptionData, DeathTithiMethod } from './types';
95
+ export { EventHeader } from './components/EventHeader';
96
+ export type { EventHeaderProps } from './components/EventHeader';
97
+ export { RitualProceedBar } from './components/RitualProceedBar';
98
+ export type { RitualProceedBarProps } from './components/RitualProceedBar';