@alto-avios/alto-ui 5.1.2 → 5.3.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.
Files changed (181) hide show
  1. package/dist/CalendarDate-uEuHKGse.js +2 -0
  2. package/dist/CalendarDate-uEuHKGse.js.map +1 -0
  3. package/dist/{DateField-oLDKE7Lh.js → DateField-rBq9QuR6.js} +4 -4
  4. package/dist/DateField-rBq9QuR6.js.map +1 -0
  5. package/dist/DatePicker.module-DlLCFGCM.js +2 -0
  6. package/dist/DatePicker.module-DlLCFGCM.js.map +1 -0
  7. package/dist/assets/Accordion.css +1 -1
  8. package/dist/assets/AviosCurrency.css +1 -1
  9. package/dist/assets/AviosCurrencyBadge.css +1 -1
  10. package/dist/assets/AviosCurrencySymbol.css +1 -1
  11. package/dist/assets/Badge.css +1 -1
  12. package/dist/assets/BannerSectionContent.css +1 -0
  13. package/dist/assets/BannerSectionPlectrum.css +1 -0
  14. package/dist/assets/BoxLink.css +1 -0
  15. package/dist/assets/Button.css +1 -1
  16. package/dist/assets/CalloutBanner.css +1 -1
  17. package/dist/assets/Checkbox.css +1 -1
  18. package/dist/assets/ClearFieldButton.css +1 -1
  19. package/dist/assets/Dialog.css +1 -1
  20. package/dist/assets/ErrorSummary.css +1 -1
  21. package/dist/assets/IntroSection.css +1 -0
  22. package/dist/assets/Link.css +1 -1
  23. package/dist/assets/ProductTile.css +1 -0
  24. package/dist/assets/Radio.css +1 -1
  25. package/dist/assets/SelectCard.css +1 -1
  26. package/dist/assets/Tag.css +1 -1
  27. package/dist/components/Accordion/Accordion.js +12 -12
  28. package/dist/components/Accordion/Accordion.js.map +1 -1
  29. package/dist/components/AviosBadge/AviosBadge.js.map +1 -1
  30. package/dist/components/AviosCurrency/AviosCurrency.js +4 -4
  31. package/dist/components/AviosCurrency/AviosCurrency.js.map +1 -1
  32. package/dist/components/AviosCurrencyBadge/AviosCurrencyBadge.js +2 -2
  33. package/dist/components/AviosCurrencyBadge/AviosCurrencyBadge.js.map +1 -1
  34. package/dist/components/AviosCurrencySymbol/AviosCurrencySymbol.js +6 -6
  35. package/dist/components/AviosCurrencySymbol/AviosCurrencySymbol.js.map +1 -1
  36. package/dist/components/Badge/Badge.js +2 -2
  37. package/dist/components/Badge/Badge.js.map +1 -1
  38. package/dist/components/BannerSectionContent/BannerSectionContent.d.ts +31 -0
  39. package/dist/components/BannerSectionContent/BannerSectionContent.js +5 -0
  40. package/dist/components/BannerSectionContent/BannerSectionContent.js.map +1 -0
  41. package/dist/components/BannerSectionContent/index.d.ts +2 -0
  42. package/dist/components/BannerSectionContent/index.js +2 -0
  43. package/dist/components/BannerSectionContent/index.js.map +1 -0
  44. package/dist/components/BannerSectionPlectrum/BannerSectionPlectrum.d.ts +39 -0
  45. package/dist/components/BannerSectionPlectrum/BannerSectionPlectrum.js +9 -0
  46. package/dist/components/BannerSectionPlectrum/BannerSectionPlectrum.js.map +1 -0
  47. package/dist/components/BannerSectionPlectrum/index.d.ts +2 -0
  48. package/dist/components/BannerSectionPlectrum/index.js +2 -0
  49. package/dist/components/BannerSectionPlectrum/index.js.map +1 -0
  50. package/dist/components/Box/Box.js +2 -2
  51. package/dist/components/BoxLink/BoxLink.d.ts +52 -0
  52. package/dist/components/BoxLink/BoxLink.js +3 -0
  53. package/dist/components/BoxLink/BoxLink.js.map +1 -0
  54. package/dist/components/BoxLink/BoxLinkContext.d.ts +24 -0
  55. package/dist/components/BoxLink/BoxLinkContext.js +2 -0
  56. package/dist/components/BoxLink/BoxLinkContext.js.map +1 -0
  57. package/dist/components/BoxLink/index.d.ts +4 -0
  58. package/dist/components/BoxLink/index.js +2 -0
  59. package/dist/components/BoxLink/index.js.map +1 -0
  60. package/dist/components/Button/Button.d.ts +12 -83
  61. package/dist/components/Button/Button.js +3 -3
  62. package/dist/components/Button/Button.js.map +1 -1
  63. package/dist/components/ButtonGroup/ButtonGroup.js +1 -1
  64. package/dist/components/Calendar/Calendar.js +1 -1
  65. package/dist/components/CalendarRange/CalendarRange.js +1 -1
  66. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  67. package/dist/components/CalloutBanner/CalloutBanner.js +9 -9
  68. package/dist/components/CardSection/CardSection.js +1 -1
  69. package/dist/components/Carousel/Carousel.d.ts +8 -1
  70. package/dist/components/Carousel/Carousel.js +7 -7
  71. package/dist/components/Carousel/Carousel.js.map +1 -1
  72. package/dist/components/Checkbox/Checkbox.d.ts +1 -1
  73. package/dist/components/Checkbox/Checkbox.js +5 -5
  74. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  75. package/dist/components/ClearFieldButton/ClearFieldButton.js +2 -1
  76. package/dist/components/ClearFieldButton/ClearFieldButton.js.map +1 -1
  77. package/dist/components/CreditCardNumberField/CreditCardNumberField.js +1 -1
  78. package/dist/components/CreditCardSecurityCodeField/CreditCardSecurityCodeField.js +1 -1
  79. package/dist/components/Currency/Currency.js +1 -1
  80. package/dist/components/DateField/DateField.d.ts +5 -1
  81. package/dist/components/DateField/DateField.js +1 -1
  82. package/dist/components/DateField/index.js +1 -1
  83. package/dist/components/DatePicker/DatePicker.js +3 -3
  84. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  85. package/dist/components/DateRangePicker/DateRangePicker.js +3 -3
  86. package/dist/components/DateRangePicker/DateRangePicker.js.map +1 -1
  87. package/dist/components/Dialog/Dialog.js +5 -5
  88. package/dist/components/ErrorSummary/ErrorSummary.js +2 -2
  89. package/dist/components/Eyebrow/Eyebrow.js +1 -1
  90. package/dist/components/Form/Form.js +1 -1
  91. package/dist/components/Grid/Grid.d.ts +3 -3
  92. package/dist/components/Grid/Grid.js.map +1 -1
  93. package/dist/components/Heading/Heading.js +2 -2
  94. package/dist/components/Icon/Icon.js +1 -1
  95. package/dist/components/IconBackdrop/IconBackdrop.js +1 -1
  96. package/dist/components/IconButton/IconButton.js +1 -1
  97. package/dist/components/IconButton/IconButton.js.map +1 -1
  98. package/dist/components/Image/Image.js +1 -1
  99. package/dist/components/IntroSection/IntroSection.d.ts +42 -0
  100. package/dist/components/IntroSection/IntroSection.js +4 -0
  101. package/dist/components/IntroSection/IntroSection.js.map +1 -0
  102. package/dist/components/IntroSection/index.d.ts +2 -0
  103. package/dist/components/IntroSection/index.js +2 -0
  104. package/dist/components/IntroSection/index.js.map +1 -0
  105. package/dist/components/Label/Label.js +1 -1
  106. package/dist/components/Link/Link.d.ts +7 -2
  107. package/dist/components/Link/Link.js +3 -3
  108. package/dist/components/Link/Link.js.map +1 -1
  109. package/dist/components/LoadingSpinner/LoadingSpinner.js +1 -1
  110. package/dist/components/Menu/Menu.d.ts +8 -36
  111. package/dist/components/Menu/Menu.js +1 -1
  112. package/dist/components/Menu/Menu.js.map +1 -1
  113. package/dist/components/NumberField/NumberField.js +2 -2
  114. package/dist/components/NumberField/NumberField.js.map +1 -1
  115. package/dist/components/Paragraph/Paragraph.js +1 -1
  116. package/dist/components/PasswordField/PasswordField.js +1 -1
  117. package/dist/components/PhoneNumberField/PhoneNumberField.js +1 -1
  118. package/dist/components/ProductTile/ProductTile.d.ts +51 -0
  119. package/dist/components/ProductTile/ProductTile.js +7 -0
  120. package/dist/components/ProductTile/ProductTile.js.map +1 -0
  121. package/dist/components/ProductTile/index.d.ts +2 -0
  122. package/dist/components/ProductTile/index.js +2 -0
  123. package/dist/components/ProductTile/index.js.map +1 -0
  124. package/dist/components/Radio/Radio.js +1 -1
  125. package/dist/components/Section/Section.js +1 -1
  126. package/dist/components/SelectCard/SelectCard.js +5 -5
  127. package/dist/components/Spacer/Spacer.js +1 -1
  128. package/dist/components/SubHeading/SubHeading.js +1 -1
  129. package/dist/components/Tabs/TabList.js +1 -1
  130. package/dist/components/Tabs/Tabs.js +1 -1
  131. package/dist/components/Tag/Tag.js +2 -2
  132. package/dist/components/ToggleButton/ToggleButton.js +1 -1
  133. package/dist/components/ToggleIconButton/ToggleIconButton.js +1 -1
  134. package/dist/components/_base/Calendar/Calendar.js +1 -1
  135. package/dist/components/_base/Input/Input.js +1 -1
  136. package/dist/components/index.d.ts +12 -2
  137. package/dist/components/index.js +1 -1
  138. package/dist/{flex-D0sfBoFP.js → flex-BJOhaXnU.js} +2 -2
  139. package/dist/{flex-D0sfBoFP.js.map → flex-BJOhaXnU.js.map} +1 -1
  140. package/dist/index-CCUt_dAN.js +2 -0
  141. package/dist/{index-DiYWUa65.js.map → index-CCUt_dAN.js.map} +1 -1
  142. package/dist/index.js +1 -1
  143. package/dist/{input-DoPyN5PO.js → input-Ct1NB1lu.js} +2 -2
  144. package/dist/{input-DoPyN5PO.js.map → input-Ct1NB1lu.js.map} +1 -1
  145. package/dist/{padding-BPweMQaC.js → padding-nClUzhWp.js} +2 -2
  146. package/dist/{padding-BPweMQaC.js.map → padding-nClUzhWp.js.map} +1 -1
  147. package/dist/react-number-format.es-kdABQClE.js +2 -0
  148. package/dist/react-number-format.es-kdABQClE.js.map +1 -0
  149. package/dist/useCalendarState-BKam8aTi.js +2 -0
  150. package/dist/useCalendarState-BKam8aTi.js.map +1 -0
  151. package/dist/useControlledState-CLJIwghQ.js +2 -0
  152. package/dist/useControlledState-CLJIwghQ.js.map +1 -0
  153. package/dist/useGlobalListeners-CGYK0FZ8.js +2 -0
  154. package/dist/useGlobalListeners-CGYK0FZ8.js.map +1 -0
  155. package/dist/utils/backgroundColor/backgroundColor.js +1 -1
  156. package/dist/utils/border/border.js +1 -1
  157. package/dist/utils/date/date.js +1 -1
  158. package/dist/utils/flex/flex.js +1 -1
  159. package/dist/utils/focus/focusStyles.js +1 -1
  160. package/dist/utils/foregroundColour/foregroundColor.js +1 -1
  161. package/dist/utils/forms/field.js +1 -1
  162. package/dist/utils/forms/input/input.js +1 -1
  163. package/dist/utils/padding/padding.js +1 -1
  164. package/dist/utils/position/position.js +1 -1
  165. package/dist/utils/stories/DraggableContainer.js +7 -7
  166. package/dist/utils/stories/DraggableContainer.js.map +1 -1
  167. package/package.json +11 -5
  168. package/dist/CalendarDate-B7n_TjYa.js +0 -2
  169. package/dist/CalendarDate-B7n_TjYa.js.map +0 -1
  170. package/dist/DateField-oLDKE7Lh.js.map +0 -1
  171. package/dist/DatePicker.module-CGXPuf59.js +0 -2
  172. package/dist/DatePicker.module-CGXPuf59.js.map +0 -1
  173. package/dist/index-DiYWUa65.js +0 -2
  174. package/dist/react-number-format.es-7RDg5nwN.js +0 -2
  175. package/dist/react-number-format.es-7RDg5nwN.js.map +0 -1
  176. package/dist/useCalendarState-C9LlCwg-.js +0 -2
  177. package/dist/useCalendarState-C9LlCwg-.js.map +0 -1
  178. package/dist/useControlledState-DCczKDCM.js +0 -2
  179. package/dist/useControlledState-DCczKDCM.js.map +0 -1
  180. package/dist/useFormValidationState-CqKt4CQY.js +0 -2
  181. package/dist/useFormValidationState-CqKt4CQY.js.map +0 -1
@@ -2,10 +2,10 @@ import { ComponentType, ElementType, ReactNode, JSX } from 'react';
2
2
  import { AriaButtonOptions } from '@react-aria/button';
3
3
  import { HoverProps } from '@react-aria/interactions';
4
4
  import { IconProps } from '../Icon/Icon';
5
+ import { WithResponsiveProps } from '../../utils/breakpoint/responsiveSSR';
5
6
  type ButtonSize = 'lg' | 'md' | 'sm';
6
7
  type ButtonTextAlignement = 'left' | 'center' | 'right';
7
- export type DefaultButtonProps = ButtonProps<'button'>;
8
- export type ButtonProps<T extends ElementType = 'button'> = AriaButtonOptions<T> & HoverProps & {
8
+ export type ButtonBaseProps<T extends ElementType = 'button'> = AriaButtonOptions<T> & HoverProps & {
9
9
  /**
10
10
  * The HTML element to be rendered as the button.
11
11
  * @default 'button'
@@ -29,7 +29,7 @@ export type ButtonProps<T extends ElementType = 'button'> = AriaButtonOptions<T>
29
29
  */
30
30
  emphasis?: 'primary' | 'secondary' | 'secondaryFilled' | 'tertiary' | 'quaternary';
31
31
  /**
32
- * How large should the button be?
32
+ * **[Responsive]** The size of the button
33
33
  * @default 'md'
34
34
  */
35
35
  size?: ButtonSize;
@@ -47,7 +47,7 @@ export type ButtonProps<T extends ElementType = 'button'> = AriaButtonOptions<T>
47
47
  */
48
48
  isLoading?: boolean;
49
49
  /**
50
- * The text alignment of the button
50
+ * **[Responsive]** The text alignment of the button
51
51
  */
52
52
  textAlign?: ButtonTextAlignement;
53
53
  /**
@@ -59,7 +59,7 @@ export type ButtonProps<T extends ElementType = 'button'> = AriaButtonOptions<T>
59
59
  */
60
60
  type?: 'button' | 'submit' | 'reset';
61
61
  /**
62
- * Whether the button should be full width.
62
+ * **[Responsive]** Whether the button should be full width.
63
63
  */
64
64
  fullWidth?: boolean;
65
65
  /**
@@ -84,83 +84,12 @@ export type ButtonProps<T extends ElementType = 'button'> = AriaButtonOptions<T>
84
84
  */
85
85
  passthroughProps?: Partial<T extends ComponentType<infer P> ? P : T extends keyof JSX.IntrinsicElements ? JSX.IntrinsicElements[T] : never>;
86
86
  };
87
- export declare const Button: import('react').ForwardRefExoticComponent<AriaButtonOptions<ElementType> & HoverProps & {
88
- /**
89
- * The HTML element to be rendered as the button.
90
- * @default 'button'
91
- * @example 'a' | 'button' | 'div'
92
- */
93
- as?: ElementType | undefined;
94
- /**
95
- * For NextJS support. If `as` is used for next/link, this prop should be set to 'a' or the desired element for prop typing.
96
- * @default 'button'
97
- * @example 'a' | 'button'
98
- */
99
- elementType?: "a" | "button";
100
- /**
101
- * What the base style of button is
102
- * @default 'accent'
103
- */
104
- styleVariant?: "accent" | "critical" | "neutral" | "white";
105
- /**
106
- * What the purpose is for the button
107
- * @default 'primary'
108
- */
109
- emphasis?: "primary" | "secondary" | "secondaryFilled" | "tertiary" | "quaternary";
110
- /**
111
- * How large should the button be?
112
- * @default 'md'
113
- */
114
- size?: ButtonSize;
115
- /**
116
- * Whether an icon should display at the end of Button and icon properties
117
- * @default
118
- */
119
- iconEndProps?: IconProps;
120
- /**
121
- * Whether an icon should display at the start of the Button and icon properties
122
- */
123
- iconStartProps?: IconProps;
124
- /**
125
- * isLoading is a boolean that will show a spinner in the button
126
- */
127
- isLoading?: boolean;
128
- /**
129
- * The text alignment of the button
130
- */
131
- textAlign?: ButtonTextAlignement;
132
- /**
133
- * The content for the button.
134
- */
135
- children?: ReactNode;
136
- /**
137
- * Whether the element should receive focus on render.
138
- */
139
- type?: "button" | "submit" | "reset";
140
- /**
141
- * Whether the button should be full width.
142
- */
143
- fullWidth?: boolean;
144
- /**
145
- * The target of the link (if `as` is set to 'a').
146
- */
147
- target?: "_blank" | "_self" | "_parent" | "_top";
148
- /**
149
- * What type of focus style to apply to the button.
150
- */
151
- focusStyle?: "default" | "white";
152
- /**
153
- * The slot of the button
154
- */
155
- slot?: string;
156
- /**
157
- * Set to true to style button as an icon button
158
- * @ignore
159
- */
160
- iconButton?: boolean;
161
- /**
162
- * Passthrough props for the button element.
163
- */
164
- passthroughProps?: Partial<any> | undefined;
87
+ type ResponsivePropKeys = 'size' | 'textAlign' | 'fullWidth';
88
+ export type ButtonProps<T extends ElementType = 'button'> = WithResponsiveProps<ButtonBaseProps<T>, ResponsivePropKeys>;
89
+ export type DefaultButtonProps = ButtonProps<'button'>;
90
+ export declare const Button: import('react').ForwardRefExoticComponent<Omit<ButtonBaseProps<ElementType>, ResponsivePropKeys> & {
91
+ size?: import('../../utils/breakpoint/responsiveSSR').ResponsiveValue<NonNullable<ButtonSize | undefined>> | undefined;
92
+ textAlign?: import('../../utils/breakpoint/responsiveSSR').ResponsiveValue<NonNullable<ButtonTextAlignement | undefined>> | undefined;
93
+ fullWidth?: import('../../utils/breakpoint/responsiveSSR').ResponsiveValue<NonNullable<boolean | undefined>> | undefined;
165
94
  } & import('react').RefAttributes<any>>;
166
95
  export default Button;
@@ -1,4 +1,4 @@
1
- import{jsx as e,jsxs as r,Fragment as t}from"react/jsx-runtime";import{c as i}from"../../index-DiYWUa65.js";import{forwardRef as a}from"react";import{useButton as o}from"@react-aria/button";import{useObjectRef as n,mergeProps as _}from"@react-aria/utils";import{useHover as s}from"@react-aria/interactions";import{useFocusRing as c}from"@react-aria/focus";import{Icon as l}from"../Icon/Icon.js";import d from"../LoadingSpinner/LoadingSpinner.js";import{focusStyleVariants as u}from"../../utils/focus/focusStyles.js";import '../../assets/Button.css';const m="_content_1oerz_19",y="_loadingSpinner_1oerz_26",z="_accentPrimary_1oerz_124",f=i("_button_1oerz_1",{variants:{size:{sm:"_sm_1oerz_58",md:"_md_1oerz_67",lg:"_lg_1oerz_76"},accent:{primary:z,secondary:"_accentSecondary_1oerz_148",tertiary:"_accentTertiary_1oerz_182",quaternary:"_accentQuaternary_1oerz_212",secondaryFilled:"_accentSecondaryFilled_1oerz_241"},critical:{primary:"_criticalPrimary_1oerz_281",secondary:"_criticalSecondary_1oerz_306",tertiary:"_criticalTertiary_1oerz_340",quaternary:"_criticalQuaternary_1oerz_370",secondaryFilled:"_criticalSecondaryFilled_1oerz_400"},neutral:{primary:"_neutralPrimary_1oerz_440",secondary:"_neutralSecondary_1oerz_465",tertiary:"_neutralTertiary_1oerz_498",quaternary:"_neutralQuaternary_1oerz_528",secondaryFilled:"_neutralSecondaryFilled_1oerz_558"},white:{primary:"_whitePrimary_1oerz_598",secondary:"_whiteSecondary_1oerz_628",tertiary:"_whiteTertiary_1oerz_661",quaternary:"_whiteQuaternary_1oerz_691",secondaryFilled:"_whiteSecondaryFilled_1oerz_721"},fullWidth:{true:"_fullWidth_1oerz_101"},focusStyle:{default:void 0,white:"_focusWhite_1oerz_51"},isLoading:{false:"_isNotLoading_1oerz_26",true:"_isLoading_1oerz_35"},textAlign:{left:"_textAlignLeft_1oerz_108",center:"_textAlignCenter_1oerz_112",right:"_textAlignRight_1oerz_116"},iconButton:{true:"_iconButton_1oerz_85"}},compoundVariants:[{size:"md",accent:"primary",className:z},{size:"sm",iconButton:!0,className:"_iconButton__sm_1oerz_89"},{size:"md",iconButton:!0,className:"_iconButton__md_1oerz_93"},{size:"lg",iconButton:!0,className:"_iconButton__lg_1oerz_97"}],defaultVariants:{size:"md"}}),p=a(function({as:i,elementType:a,styleVariant:z,emphasis:p="primary",size:h="md",iconStartProps:g,iconEndProps:S,children:b,fullWidth:v,textAlign:x="center",focusStyle:P="default",passthroughProps:B,isLoading:F=!1,iconButton:L,slot:N,...w},A){const T=n(A),{buttonProps:j,isPressed:W}=o({...w,elementType:a??i},T),{hoverProps:q,isHovered:Q}=s(w),{isFocusVisible:V,focusProps:$,isFocused:D}=c(w),I=z??"accent",C=f({size:h,fullWidth:v,focusStyle:P,isLoading:F,textAlign:x,iconButton:L,[I]:p});/* @__PURE__ */
2
- return e(i??"button",{className:`${C} ${u({focusStyle:P})}`,ref:T,"data-focused":!!D||void 0,"data-focus-visible":!!V||void 0,"data-hovered":!!Q||void 0,"data-pressed":!!W||void 0,"aria-label":(()=>{if(F)return"Loading Spinner";const e=j["aria-label"]||("string"==typeof b?b:void 0);return w.isDisabled&&e?`${e}, unavailable`:e})(),"aria-disabled":!!w.isDisabled||void 0,"data-testid":"alto-button",slot:N,..._(j,q,$),...B,children:/* @__PURE__ */r(t,{children:[F&&/* @__PURE__ */e(d,{className:y,size:"lg"===h?"1.25x":"1x","aria-hidden":"true"}),g&&/* @__PURE__ */e(l,{...g,"aria-hidden":"true"}),
3
- /* @__PURE__ */e("span",{className:m,children:b}),S&&/* @__PURE__ */e(l,{...S,"aria-hidden":"true"})]})})});export{p as Button,p as default};
1
+ import{jsx as t,jsxs as a,Fragment as e}from"react/jsx-runtime";import{c as i}from"../../index-CCUt_dAN.js";import{forwardRef as l}from"react";import{useButton as r}from"@react-aria/button";import{useObjectRef as n,mergeProps as _}from"@react-aria/utils";import{useHover as s}from"@react-aria/interactions";import{useFocusRing as g}from"@react-aria/focus";import{Icon as c}from"../Icon/Icon.js";import d from"../LoadingSpinner/LoadingSpinner.js";import{focusStyleVariants as o}from"../../utils/focus/focusStyles.js";import{getBaseValue as u,generateResponsiveClasses as m}from"../../utils/breakpoint/responsiveSSR.js";import '../../assets/Button.css';const x={button:"_button_g3taa_1",content:"_content_g3taa_19",isNotLoading:"_isNotLoading_g3taa_26",loadingSpinner:"_loadingSpinner_g3taa_26",isLoading:"_isLoading_g3taa_35",focusWhite:"_focusWhite_g3taa_51",iconButton:"_iconButton_g3taa_55",iconButton__sm:"_iconButton__sm_g3taa_59",iconButton__md:"_iconButton__md_g3taa_63",iconButton__lg:"_iconButton__lg_g3taa_67","full-width--true":"_full-width--true_g3taa_71","full-width--false":"_full-width--false_g3taa_75","size--sm":"_size--sm_g3taa_120","size--md":"_size--md_g3taa_123","size--lg":"_size--lg_g3taa_126","text-align--left":"_text-align--left_g3taa_143","text-align--center":"_text-align--center_g3taa_146","text-align--right":"_text-align--right_g3taa_149","sm:size--sm":"_sm:size--sm_g3taa_1","sm:size--md":"_sm:size--md_g3taa_1","sm:size--lg":"_sm:size--lg_g3taa_1","sm:text-align--left":"_sm:text-align--left_g3taa_1","sm:text-align--center":"_sm:text-align--center_g3taa_1","sm:text-align--right":"_sm:text-align--right_g3taa_1","sm:full-width--true":"_sm:full-width--true_g3taa_1","sm:full-width--false":"_sm:full-width--false_g3taa_1","md:size--sm":"_md:size--sm_g3taa_1","md:size--md":"_md:size--md_g3taa_1","md:size--lg":"_md:size--lg_g3taa_1","md:text-align--left":"_md:text-align--left_g3taa_1","md:text-align--center":"_md:text-align--center_g3taa_1","md:text-align--right":"_md:text-align--right_g3taa_1","md:full-width--true":"_md:full-width--true_g3taa_1","md:full-width--false":"_md:full-width--false_g3taa_1","lg:size--sm":"_lg:size--sm_g3taa_1","lg:size--md":"_lg:size--md_g3taa_1","lg:size--lg":"_lg:size--lg_g3taa_1","lg:text-align--left":"_lg:text-align--left_g3taa_1","lg:text-align--center":"_lg:text-align--center_g3taa_1","lg:text-align--right":"_lg:text-align--right_g3taa_1","lg:full-width--true":"_lg:full-width--true_g3taa_1","lg:full-width--false":"_lg:full-width--false_g3taa_1","xl:size--sm":"_xl:size--sm_g3taa_1","xl:size--md":"_xl:size--md_g3taa_1","xl:size--lg":"_xl:size--lg_g3taa_1","xl:text-align--left":"_xl:text-align--left_g3taa_1","xl:text-align--center":"_xl:text-align--center_g3taa_1","xl:text-align--right":"_xl:text-align--right_g3taa_1","xl:full-width--true":"_xl:full-width--true_g3taa_1","xl:full-width--false":"_xl:full-width--false_g3taa_1","xxl:size--sm":"_xxl:size--sm_g3taa_1","xxl:size--md":"_xxl:size--md_g3taa_1","xxl:size--lg":"_xxl:size--lg_g3taa_1","xxl:text-align--left":"_xxl:text-align--left_g3taa_1","xxl:text-align--center":"_xxl:text-align--center_g3taa_1","xxl:text-align--right":"_xxl:text-align--right_g3taa_1","xxl:full-width--true":"_xxl:full-width--true_g3taa_1","xxl:full-width--false":"_xxl:full-width--false_g3taa_1",accentPrimary:"_accentPrimary_g3taa_189",accentSecondary:"_accentSecondary_g3taa_213",accentTertiary:"_accentTertiary_g3taa_247",accentQuaternary:"_accentQuaternary_g3taa_277",accentSecondaryFilled:"_accentSecondaryFilled_g3taa_306",criticalPrimary:"_criticalPrimary_g3taa_346",criticalSecondary:"_criticalSecondary_g3taa_371",criticalTertiary:"_criticalTertiary_g3taa_405",criticalQuaternary:"_criticalQuaternary_g3taa_435",criticalSecondaryFilled:"_criticalSecondaryFilled_g3taa_465",neutralPrimary:"_neutralPrimary_g3taa_505",neutralSecondary:"_neutralSecondary_g3taa_530",neutralTertiary:"_neutralTertiary_g3taa_563",neutralQuaternary:"_neutralQuaternary_g3taa_593",neutralSecondaryFilled:"_neutralSecondaryFilled_g3taa_623",whitePrimary:"_whitePrimary_g3taa_663",whiteSecondary:"_whiteSecondary_g3taa_693",whiteTertiary:"_whiteTertiary_g3taa_726",whiteQuaternary:"_whiteQuaternary_g3taa_756",whiteSecondaryFilled:"_whiteSecondaryFilled_g3taa_786","fa-spinner-third":"_fa-spinner-third_g3taa_827","icon-wrapper":"_icon-wrapper_g3taa_832"},f=m(x),y=i(x.button,{variants:{size:{sm:x["size--sm"],md:x["size--md"],lg:x["size--lg"]},accent:{primary:x.accentPrimary,secondary:x.accentSecondary,tertiary:x.accentTertiary,quaternary:x.accentQuaternary,secondaryFilled:x.accentSecondaryFilled},critical:{primary:x.criticalPrimary,secondary:x.criticalSecondary,tertiary:x.criticalTertiary,quaternary:x.criticalQuaternary,secondaryFilled:x.criticalSecondaryFilled},neutral:{primary:x.neutralPrimary,secondary:x.neutralSecondary,tertiary:x.neutralTertiary,quaternary:x.neutralQuaternary,secondaryFilled:x.neutralSecondaryFilled},white:{primary:x.whitePrimary,secondary:x.whiteSecondary,tertiary:x.whiteTertiary,quaternary:x.whiteQuaternary,secondaryFilled:x.whiteSecondaryFilled},fullWidth:{true:x["full-width--true"],false:x["full-width--false"]},focusStyle:{default:void 0,white:x.focusWhite},isLoading:{false:x.isNotLoading,true:x.isLoading},textAlign:{left:x["text-align--left"],center:x["text-align--center"],right:x["text-align--right"]},iconButton:{true:x.iconButton}},compoundVariants:[{size:"md",accent:"primary",className:x.accentPrimary},{size:"sm",iconButton:!0,className:x.iconButton__sm},{size:"md",iconButton:!0,className:x.iconButton__md},{size:"lg",iconButton:!0,className:x.iconButton__lg}],defaultVariants:{size:"md"}}),h=l(function({as:i,elementType:l,styleVariant:m,emphasis:h="primary",size:z="md",iconStartProps:p,iconEndProps:w,children:S,fullWidth:P,textAlign:B="center",focusStyle:F="default",passthroughProps:b,isLoading:v=!1,iconButton:T,slot:L,...Q},N){const j=n(N),{buttonProps:W,isPressed:q}=r({...Q,elementType:l??i},j),{hoverProps:V,isHovered:A}=s(Q),{isFocusVisible:D,focusProps:I,isFocused:k}=g(Q),E=u(z,"md"),H=u(B,"center"),R=u(P,!1),$=f(z,"size"),C=f(B,"text-align"),G=f(P,"full-width"),J=m??"accent",K=y({size:E,focusStyle:F,isLoading:v,textAlign:H,fullWidth:R,iconButton:T,[J]:h});/* @__PURE__ */
2
+ return t(i??"button",{className:[K,o({focusStyle:F}),...$,...C,...G].filter(Boolean).join(" "),ref:j,"data-focused":!!k||void 0,"data-focus-visible":!!D||void 0,"data-hovered":!!A||void 0,"data-pressed":!!q||void 0,"aria-label":(()=>{if(v)return"Loading Spinner";const t=W["aria-label"]||("string"==typeof S?S:void 0);return Q.isDisabled&&t?`${t}, unavailable`:t})(),"aria-disabled":!!Q.isDisabled||void 0,"data-testid":"alto-button",slot:L,..._(W,V,I),...b,children:/* @__PURE__ */a(e,{children:[v&&/* @__PURE__ */t(d,{className:x.loadingSpinner,size:"lg"===z?"1.25x":"1x","aria-hidden":"true"}),p&&/* @__PURE__ */t(c,{...p,"aria-hidden":"true"}),
3
+ /* @__PURE__ */t("span",{className:x.content,children:S}),w&&/* @__PURE__ */t(c,{...w,"aria-hidden":"true"})]})})});export{h as Button,h as default};
4
4
  //# sourceMappingURL=Button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sources":["../../../src/components/Button/Button.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport {\n ComponentType,\n ElementType,\n ReactNode,\n forwardRef,\n ForwardedRef,\n type JSX,\n} from 'react';\nimport { AriaButtonOptions, useButton } from '@react-aria/button';\nimport styles from './Button.module.css';\nimport { useObjectRef, mergeProps } from '@react-aria/utils';\nimport { useHover, HoverProps } from '@react-aria/interactions';\nimport { useFocusRing } from '@react-aria/focus';\nimport Icon, { IconProps } from '../Icon/Icon';\nimport LoadingSpinner from '../LoadingSpinner';\nimport { focusStyleVariants } from '../../utils/focus/focusStyles';\n\nconst button = cva(styles.button, {\n variants: {\n size: {\n sm: styles.sm,\n md: styles.md,\n lg: styles.lg,\n },\n accent: {\n primary: styles.accentPrimary,\n secondary: styles.accentSecondary,\n tertiary: styles.accentTertiary,\n quaternary: styles.accentQuaternary,\n secondaryFilled: styles.accentSecondaryFilled,\n },\n critical: {\n primary: styles.criticalPrimary,\n secondary: styles.criticalSecondary,\n tertiary: styles.criticalTertiary,\n quaternary: styles.criticalQuaternary,\n secondaryFilled: styles.criticalSecondaryFilled,\n },\n neutral: {\n primary: styles.neutralPrimary,\n secondary: styles.neutralSecondary,\n tertiary: styles.neutralTertiary,\n quaternary: styles.neutralQuaternary,\n secondaryFilled: styles.neutralSecondaryFilled,\n },\n white: {\n primary: styles.whitePrimary,\n secondary: styles.whiteSecondary,\n tertiary: styles.whiteTertiary,\n quaternary: styles.whiteQuaternary,\n secondaryFilled: styles.whiteSecondaryFilled,\n },\n fullWidth: {\n true: styles.fullWidth,\n },\n focusStyle: {\n default: undefined,\n white: styles.focusWhite,\n },\n isLoading: {\n false: styles.isNotLoading,\n true: styles.isLoading,\n },\n textAlign: {\n left: styles.textAlignLeft,\n center: styles.textAlignCenter,\n right: styles.textAlignRight,\n },\n iconButton: {\n true: styles.iconButton,\n },\n },\n compoundVariants: [\n { size: 'md', accent: 'primary', className: styles.accentPrimary },\n { size: 'sm', iconButton: true, className: styles.iconButton__sm },\n { size: 'md', iconButton: true, className: styles.iconButton__md },\n { size: 'lg', iconButton: true, className: styles.iconButton__lg },\n ],\n defaultVariants: {\n size: 'md',\n },\n});\n\ntype ButtonSize = 'lg' | 'md' | 'sm';\ntype ButtonTextAlignement = 'left' | 'center' | 'right';\n\nexport type DefaultButtonProps = ButtonProps<'button'>;\n\nexport type ButtonProps<T extends ElementType = 'button'> =\n AriaButtonOptions<T> &\n HoverProps & {\n /**\n * The HTML element to be rendered as the button.\n * @default 'button'\n * @example 'a' | 'button' | 'div'\n */\n as?: T;\n /**\n * For NextJS support. If `as` is used for next/link, this prop should be set to 'a' or the desired element for prop typing.\n * @default 'button'\n * @example 'a' | 'button'\n */\n elementType?: 'a' | 'button';\n /**\n * What the base style of button is\n * @default 'accent'\n */\n styleVariant?: 'accent' | 'critical' | 'neutral' | 'white';\n\n /**\n * What the purpose is for the button\n * @default 'primary'\n */\n emphasis?:\n | 'primary'\n | 'secondary'\n | 'secondaryFilled'\n | 'tertiary'\n | 'quaternary';\n\n /**\n * How large should the button be?\n * @default 'md'\n */\n size?: ButtonSize;\n\n /**\n * Whether an icon should display at the end of Button and icon properties\n * @default\n */\n iconEndProps?: IconProps;\n\n /**\n * Whether an icon should display at the start of the Button and icon properties\n */\n iconStartProps?: IconProps;\n /**\n * isLoading is a boolean that will show a spinner in the button\n */\n isLoading?: boolean;\n\n /**\n * The text alignment of the button\n */\n textAlign?: ButtonTextAlignement;\n\n /**\n * The content for the button.\n */\n children?: ReactNode;\n\n /**\n * \tWhether the element should receive focus on render.\n */\n type?: 'button' | 'submit' | 'reset';\n\n /**\n * Whether the button should be full width.\n */\n fullWidth?: boolean;\n\n /**\n * The target of the link (if `as` is set to 'a').\n */\n target?: '_blank' | '_self' | '_parent' | '_top';\n\n /**\n * What type of focus style to apply to the button.\n */\n focusStyle?: 'default' | 'white';\n\n /**\n * The slot of the button\n */\n slot?: string;\n\n /**\n * Set to true to style button as an icon button\n * @ignore\n */\n iconButton?: boolean;\n\n /**\n * Passthrough props for the button element.\n */\n passthroughProps?: Partial<\n T extends ComponentType<infer P>\n ? P\n : T extends keyof JSX.IntrinsicElements\n ? JSX.IntrinsicElements[T]\n : never\n >;\n };\n\nexport const Button = forwardRef(function Button<\n T extends ElementType = 'button',\n>(\n {\n as,\n elementType,\n styleVariant,\n emphasis = 'primary',\n size = 'md',\n iconStartProps,\n iconEndProps,\n children,\n fullWidth,\n textAlign = 'center',\n focusStyle = 'default',\n passthroughProps,\n isLoading = false,\n iconButton,\n slot,\n ...props\n }: ButtonProps<T>,\n // Not using <T> here as typescript cannot narrow it properly from consuming component\n // see - https://www.tsteele.dev/posts/react-polymorphic-forwardref for potential\n // solutions if proper typing is required.\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n forwardedRef?: ForwardedRef<any>,\n) {\n const ref = useObjectRef(forwardedRef);\n\n // Call useButton to get the props and state needed for accessibility and interaction\n const { buttonProps, isPressed } = useButton(\n { ...props, elementType: elementType ?? as },\n ref,\n );\n const { hoverProps, isHovered } = useHover(props);\n const { isFocusVisible, focusProps, isFocused } = useFocusRing(props);\n\n const getAriaLabel = () => {\n if (isLoading) {\n return 'Loading Spinner';\n }\n\n const label =\n buttonProps['aria-label'] ||\n (typeof children === 'string' ? children : undefined);\n\n if (props.isDisabled && label) {\n return `${label}, unavailable`;\n }\n\n return label;\n };\n\n const resolvedStyleVariant = styleVariant ?? 'accent';\n\n const className = button({\n size,\n fullWidth,\n focusStyle,\n isLoading,\n textAlign,\n iconButton,\n [resolvedStyleVariant]: emphasis,\n });\n\n const Component: ElementType = as ?? 'button';\n\n return (\n <Component\n className={`${className} ${focusStyleVariants({ focusStyle })}`}\n ref={ref}\n data-focused={isFocused ? true : undefined}\n data-focus-visible={isFocusVisible ? true : undefined}\n data-hovered={isHovered ? true : undefined}\n data-pressed={isPressed ? true : undefined}\n aria-label={getAriaLabel()}\n aria-disabled={props.isDisabled ? true : undefined}\n data-testid=\"alto-button\"\n slot={slot}\n {...mergeProps(buttonProps, hoverProps, focusProps)}\n {...passthroughProps}\n >\n <>\n {isLoading && (\n <LoadingSpinner\n className={styles.loadingSpinner}\n size={size === 'lg' ? '1.25x' : '1x'}\n aria-hidden=\"true\"\n />\n )}\n {iconStartProps && <Icon {...iconStartProps} aria-hidden=\"true\" />}\n <span className={styles.content}>{children}</span>\n {iconEndProps && <Icon {...iconEndProps} aria-hidden=\"true\" />}\n </>\n </Component>\n );\n});\n\nexport default Button;\n"],"names":["button","cva","variants","size","sm","md","lg","accent","primary","styles","secondary","tertiary","quaternary","secondaryFilled","critical","neutral","white","fullWidth","true","focusStyle","default","isLoading","false","textAlign","left","center","right","iconButton","compoundVariants","className","defaultVariants","Button","forwardRef","as","elementType","styleVariant","emphasis","iconStartProps","iconEndProps","children","passthroughProps","slot","props","forwardedRef","ref","useObjectRef","buttonProps","isPressed","useButton","hoverProps","isHovered","useHover","isFocusVisible","focusProps","isFocused","useFocusRing","resolvedStyleVariant","jsx","focusStyleVariants","label","isDisabled","getAriaLabel","mergeProps","jsxs","Fragment","LoadingSpinner","Icon"],"mappings":"0lBAkBMA,EAASC,oBAAmB,CAChCC,SAAU,CACRC,KAAM,CACJC,kBACAC,kBACAC,mBAEFC,OAAQ,CACNC,QAASC,EACTC,uCACAC,qCACAC,yCACAC,oDAEFC,SAAU,CACRN,qCACAE,yCACAC,uCACAC,2CACAC,sDAEFE,QAAS,CACPP,oCACAE,wCACAC,sCACAC,0CACAC,qDAEFG,MAAO,CACLR,kCACAE,sCACAC,oCACAC,wCACAC,mDAEFI,UAAW,CACTC,6BAEFC,WAAY,CACVC,aAAS,EACTJ,8BAEFK,UAAW,CACTC,+BACAJ,4BAEFK,UAAW,CACTC,gCACAC,oCACAC,mCAEFC,WAAY,CACVT,8BAGJU,iBAAkB,CAChB,CAAEzB,KAAM,KAAMI,OAAQ,UAAWsB,UAAWpB,GAC5C,CAAEN,KAAM,KAAMwB,YAAY,EAAME,sCAChC,CAAE1B,KAAM,KAAMwB,YAAY,EAAME,sCAChC,CAAE1B,KAAM,KAAMwB,YAAY,EAAME,uCAElCC,gBAAiB,CACf3B,KAAM,QAmHG4B,EAASC,EAAW,UAG/BC,GACEA,EAAAC,YACAA,EAAAC,aACAA,EAAAC,SACAA,EAAW,UAAAjC,KACXA,EAAO,KAAAkC,eACPA,EAAAC,aACAA,EAAAC,SACAA,EACAtB,UAAAA,EAAAA,UACAM,EAAY,SAAAJ,WACZA,EAAa,UAAAqB,iBACbA,EACAnB,UAAAA,GAAY,EACZM,WAAAA,EAAAA,KACAc,KACGC,GAMLC,GAEA,MAAMC,EAAMC,EAAaF,IAGnBG,YAAEA,EAAAC,UAAaA,GAAcC,EACjC,IAAKN,EAAOR,YAAaA,GAAeD,GACxCW,IAEIK,WAAEA,EAAAC,UAAYA,GAAcC,EAAST,IACrCU,eAAEA,EAAAC,WAAgBA,EAAAC,UAAYA,GAAcC,EAAab,GAkBzDc,EAAuBrB,GAAgB,SAEvCN,EAAY7B,EAAO,CACvBG,OACAc,UAAAA,EACAE,aACAE,UAAAA,EACAE,YACAI,WAAAA,EACA6B,CAACA,GAAuBpB;AAK1B,OACEqB,EAH6BxB,GAAM,SAGlC,CACCJ,UAAW,GAAGA,KAAa6B,EAAmB,CAAEvC,iBAChDyB,MACA,iBAAcU,QAAmB,EACjC,uBAAoBF,QAAwB,EAC5C,iBAAcF,QAAmB,EACjC,iBAAcH,QAAmB,EACjC,aAtCiB,MACnB,GAAI1B,EACF,MAAO,kBAGT,MAAMsC,EACJb,EAAY,gBACS,iBAAbP,EAAwBA,OAAW,GAE7C,OAAIG,EAAMkB,YAAcD,EACf,GAAGA,iBAGLA,GAyBOE,GACZ,kBAAenB,EAAMkB,iBAAoB,EACzC,cAAY,cACZnB,UACIqB,EAAWhB,EAAaG,EAAYI,MACpCb,EAEJD,wBAAAwB,EAAAC,EAAA,CACGzB,SAAA,CAAAlB,kBACCoC,EAACQ,EAAA,CACCpC,UAAWpB,EACXN,KAAe,OAATA,EAAgB,QAAU,KAChC,cAAY,SAGfkC,oBAAmB6B,EAAA,IAAS7B,EAAgB,cAAY;iBACxD,OAAA,CAAKR,UAAWpB,EAAiB8B,aACjCD,oBAAiB4B,EAAA,IAAS5B,EAAc,cAAY,aAI7D"}
1
+ {"version":3,"file":"Button.js","sources":["../../../src/components/Button/Button.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport {\n ComponentType,\n ElementType,\n ReactNode,\n forwardRef,\n ForwardedRef,\n type JSX,\n} from 'react';\nimport { AriaButtonOptions, useButton } from '@react-aria/button';\nimport styles from './Button.module.css';\nimport { useObjectRef, mergeProps } from '@react-aria/utils';\nimport { useHover, HoverProps } from '@react-aria/interactions';\nimport { useFocusRing } from '@react-aria/focus';\nimport Icon, { IconProps } from '../Icon/Icon';\nimport LoadingSpinner from '../LoadingSpinner';\nimport { focusStyleVariants } from '../../utils/focus/focusStyles';\nimport {\n generateResponsiveClasses,\n getBaseValue,\n WithResponsiveProps,\n} from '../../utils/breakpoint/responsiveSSR';\n\nconst getResponsiveClasses = generateResponsiveClasses(styles);\n\nconst button = cva(styles.button, {\n variants: {\n size: {\n sm: styles['size--sm'],\n md: styles['size--md'],\n lg: styles['size--lg'],\n },\n accent: {\n primary: styles.accentPrimary,\n secondary: styles.accentSecondary,\n tertiary: styles.accentTertiary,\n quaternary: styles.accentQuaternary,\n secondaryFilled: styles.accentSecondaryFilled,\n },\n critical: {\n primary: styles.criticalPrimary,\n secondary: styles.criticalSecondary,\n tertiary: styles.criticalTertiary,\n quaternary: styles.criticalQuaternary,\n secondaryFilled: styles.criticalSecondaryFilled,\n },\n neutral: {\n primary: styles.neutralPrimary,\n secondary: styles.neutralSecondary,\n tertiary: styles.neutralTertiary,\n quaternary: styles.neutralQuaternary,\n secondaryFilled: styles.neutralSecondaryFilled,\n },\n white: {\n primary: styles.whitePrimary,\n secondary: styles.whiteSecondary,\n tertiary: styles.whiteTertiary,\n quaternary: styles.whiteQuaternary,\n secondaryFilled: styles.whiteSecondaryFilled,\n },\n fullWidth: {\n true: styles['full-width--true'],\n false: styles['full-width--false'],\n },\n focusStyle: {\n default: undefined,\n white: styles.focusWhite,\n },\n isLoading: {\n false: styles.isNotLoading,\n true: styles.isLoading,\n },\n textAlign: {\n left: styles['text-align--left'],\n center: styles['text-align--center'],\n right: styles['text-align--right'],\n },\n iconButton: {\n true: styles.iconButton,\n },\n },\n compoundVariants: [\n { size: 'md', accent: 'primary', className: styles.accentPrimary },\n { size: 'sm', iconButton: true, className: styles.iconButton__sm },\n { size: 'md', iconButton: true, className: styles.iconButton__md },\n { size: 'lg', iconButton: true, className: styles.iconButton__lg },\n ],\n defaultVariants: {\n size: 'md',\n },\n});\n\ntype ButtonSize = 'lg' | 'md' | 'sm';\ntype ButtonTextAlignement = 'left' | 'center' | 'right';\n\nexport type ButtonBaseProps<T extends ElementType = 'button'> =\n AriaButtonOptions<T> &\n HoverProps & {\n /**\n * The HTML element to be rendered as the button.\n * @default 'button'\n * @example 'a' | 'button' | 'div'\n */\n as?: T;\n /**\n * For NextJS support. If `as` is used for next/link, this prop should be set to 'a' or the desired element for prop typing.\n * @default 'button'\n * @example 'a' | 'button'\n */\n elementType?: 'a' | 'button';\n /**\n * What the base style of button is\n * @default 'accent'\n */\n styleVariant?: 'accent' | 'critical' | 'neutral' | 'white';\n\n /**\n * What the purpose is for the button\n * @default 'primary'\n */\n emphasis?:\n | 'primary'\n | 'secondary'\n | 'secondaryFilled'\n | 'tertiary'\n | 'quaternary';\n\n /**\n * **[Responsive]** The size of the button\n * @default 'md'\n */\n size?: ButtonSize;\n\n /**\n * Whether an icon should display at the end of Button and icon properties\n * @default\n */\n iconEndProps?: IconProps;\n\n /**\n * Whether an icon should display at the start of the Button and icon properties\n */\n iconStartProps?: IconProps;\n /**\n * isLoading is a boolean that will show a spinner in the button\n */\n isLoading?: boolean;\n\n /**\n * **[Responsive]** The text alignment of the button\n */\n textAlign?: ButtonTextAlignement;\n\n /**\n * The content for the button.\n */\n children?: ReactNode;\n\n /**\n * \tWhether the element should receive focus on render.\n */\n type?: 'button' | 'submit' | 'reset';\n\n /**\n * **[Responsive]** Whether the button should be full width.\n */\n fullWidth?: boolean;\n\n /**\n * The target of the link (if `as` is set to 'a').\n */\n target?: '_blank' | '_self' | '_parent' | '_top';\n\n /**\n * What type of focus style to apply to the button.\n */\n focusStyle?: 'default' | 'white';\n\n /**\n * The slot of the button\n */\n slot?: string;\n\n /**\n * Set to true to style button as an icon button\n * @ignore\n */\n iconButton?: boolean;\n\n /**\n * Passthrough props for the button element.\n */\n passthroughProps?: Partial<\n T extends ComponentType<infer P>\n ? P\n : T extends keyof JSX.IntrinsicElements\n ? JSX.IntrinsicElements[T]\n : never\n >;\n };\n\n// ResponsivePropKeys are the keys of the props that can accept responsive values (base + breakpoint-specific)\ntype ResponsivePropKeys = 'size' | 'textAlign' | 'fullWidth';\n\nexport type ButtonProps<T extends ElementType = 'button'> = WithResponsiveProps<\n ButtonBaseProps<T>,\n ResponsivePropKeys\n>;\n\nexport type DefaultButtonProps = ButtonProps<'button'>;\n\nexport const Button = forwardRef(function Button<\n T extends ElementType = 'button',\n>(\n {\n as,\n elementType,\n styleVariant,\n emphasis = 'primary',\n size = 'md',\n iconStartProps,\n iconEndProps,\n children,\n fullWidth,\n textAlign = 'center',\n focusStyle = 'default',\n passthroughProps,\n isLoading = false,\n iconButton,\n slot,\n ...props\n }: ButtonProps<T>,\n // Not using <T> here as typescript cannot narrow it properly from consuming component\n // see - https://www.tsteele.dev/posts/react-polymorphic-forwardref for potential\n // solutions if proper typing is required.\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n forwardedRef?: ForwardedRef<any>,\n) {\n const ref = useObjectRef(forwardedRef);\n\n // Call useButton to get the props and state needed for accessibility and interaction\n const { buttonProps, isPressed } = useButton(\n { ...props, elementType: elementType ?? as },\n ref,\n );\n const { hoverProps, isHovered } = useHover(props);\n const { isFocusVisible, focusProps, isFocused } = useFocusRing(props);\n\n const getAriaLabel = () => {\n if (isLoading) {\n return 'Loading Spinner';\n }\n\n const label =\n buttonProps['aria-label'] ||\n (typeof children === 'string' ? children : undefined);\n\n if (props.isDisabled && label) {\n return `${label}, unavailable`;\n }\n\n return label;\n };\n\n const baseSize = getBaseValue(size, 'md');\n const baseTextAlign = getBaseValue(textAlign, 'center');\n const baseFullWidth = getBaseValue(fullWidth, false);\n\n const sizeResponsiveClasses = getResponsiveClasses(size, 'size');\n const textAlignResponsiveClasses = getResponsiveClasses(\n textAlign,\n 'text-align',\n );\n const fullWidthResponsiveClasses = getResponsiveClasses(\n fullWidth,\n 'full-width',\n );\n\n const resolvedStyleVariant = styleVariant ?? 'accent';\n\n const className = button({\n size: baseSize,\n focusStyle,\n isLoading,\n textAlign: baseTextAlign,\n fullWidth: baseFullWidth,\n iconButton,\n [resolvedStyleVariant]: emphasis,\n });\n\n const Component: ElementType = as ?? 'button';\n\n return (\n <Component\n className={[\n className,\n focusStyleVariants({ focusStyle }),\n ...sizeResponsiveClasses,\n ...textAlignResponsiveClasses,\n ...fullWidthResponsiveClasses,\n ]\n .filter(Boolean)\n .join(' ')}\n ref={ref}\n data-focused={isFocused ? true : undefined}\n data-focus-visible={isFocusVisible ? true : undefined}\n data-hovered={isHovered ? true : undefined}\n data-pressed={isPressed ? true : undefined}\n aria-label={getAriaLabel()}\n aria-disabled={props.isDisabled ? true : undefined}\n data-testid=\"alto-button\"\n slot={slot}\n {...mergeProps(buttonProps, hoverProps, focusProps)}\n {...passthroughProps}\n >\n <>\n {isLoading && (\n <LoadingSpinner\n className={styles.loadingSpinner}\n size={size === 'lg' ? '1.25x' : '1x'}\n aria-hidden=\"true\"\n />\n )}\n {iconStartProps && <Icon {...iconStartProps} aria-hidden=\"true\" />}\n <span className={styles.content}>{children}</span>\n {iconEndProps && <Icon {...iconEndProps} aria-hidden=\"true\" />}\n </>\n </Component>\n );\n});\n\nexport default Button;\n"],"names":["getResponsiveClasses","generateResponsiveClasses","styles","button","cva","variants","size","sm","md","lg","accent","primary","accentPrimary","secondary","accentSecondary","tertiary","accentTertiary","quaternary","accentQuaternary","secondaryFilled","accentSecondaryFilled","critical","criticalPrimary","criticalSecondary","criticalTertiary","criticalQuaternary","criticalSecondaryFilled","neutral","neutralPrimary","neutralSecondary","neutralTertiary","neutralQuaternary","neutralSecondaryFilled","white","whitePrimary","whiteSecondary","whiteTertiary","whiteQuaternary","whiteSecondaryFilled","fullWidth","true","false","focusStyle","default","focusWhite","isLoading","isNotLoading","textAlign","left","center","right","iconButton","compoundVariants","className","iconButton__sm","iconButton__md","iconButton__lg","defaultVariants","Button","forwardRef","as","elementType","styleVariant","emphasis","iconStartProps","iconEndProps","children","passthroughProps","slot","props","forwardedRef","ref","useObjectRef","buttonProps","isPressed","useButton","hoverProps","isHovered","useHover","isFocusVisible","focusProps","isFocused","useFocusRing","baseSize","getBaseValue","baseTextAlign","baseFullWidth","sizeResponsiveClasses","textAlignResponsiveClasses","fullWidthResponsiveClasses","resolvedStyleVariant","jsx","focusStyleVariants","filter","Boolean","join","label","isDisabled","getAriaLabel","mergeProps","jsxs","Fragment","LoadingSpinner","loadingSpinner","Icon","content"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{jsx as a}from"react/jsx-runtime";import t from"react";import{c as i}from"../../index-DiYWUa65.js";import '../../assets/ButtonGroup.css';const r=i("_buttonGroup_53q76_2",{variants:{align:{start:"_alignStart_53q76_10",center:"_alignCenter_53q76_14",end:"_alignEnd_53q76_18",justify:"_alignJustify_53q76_22",split:"_alignSplit_53q76_30",stack:"_alignStack_53q76_43",stackFlip:"_alignStackFlip_53q76_48"}},defaultVariants:{align:"start"}}),n=({children:i,align:n="start"})=>/* @__PURE__ */a("div",{className:`${r({align:n})}`,role:"group","aria-label":"Button Group",children:t.Children.map(i,a=>a)});export{n as ButtonGroup,n as default};
1
+ import{jsx as a}from"react/jsx-runtime";import t from"react";import{c as i}from"../../index-CCUt_dAN.js";import '../../assets/ButtonGroup.css';const r=i("_buttonGroup_53q76_2",{variants:{align:{start:"_alignStart_53q76_10",center:"_alignCenter_53q76_14",end:"_alignEnd_53q76_18",justify:"_alignJustify_53q76_22",split:"_alignSplit_53q76_30",stack:"_alignStack_53q76_43",stackFlip:"_alignStackFlip_53q76_48"}},defaultVariants:{align:"start"}}),n=({children:i,align:n="start"})=>/* @__PURE__ */a("div",{className:`${r({align:n})}`,role:"group","aria-label":"Button Group",children:t.Children.map(i,a=>a)});export{n as ButtonGroup,n as default};
2
2
  //# sourceMappingURL=ButtonGroup.js.map
@@ -1,3 +1,3 @@
1
- import{jsx as a}from"react/jsx-runtime";import{forwardRef as e}from"react";import{$ as t,a as r}from"../../useCalendarState-C9LlCwg-.js";import{useLocale as o}from"@react-aria/i18n";import{useObjectRef as n}from"@react-aria/utils";import{useCalendar as i}from"@react-aria/calendar";import{Calendar as u}from"../_base/Calendar/Calendar.js";import{useDatePickerContext as l}from"../DatePicker/DatePickerContext.js";import{parseDateValue as s,getVisibleDuration as c}from"../../utils/date/date.js";const f=e(function(e,f){const{locale:m}=o(),{isInDatePicker:d}=l(),p=n(f),C={...e,visibleDuration:c(e?.visibleDuration),defaultValue:s(e?.defaultValue),value:s(e?.value),onChange:a=>{if(e?.onChange){if(d){return(0,e.onChange)(a)}return(0,e.onChange)(a.toDate("UTC").toISOString())}},focusedValue:s(e?.focusedValue),defaultFocusedValue:s(e.defaultFocusedValue),onFocusChange:a=>{if(e?.onFocusChange){if(d){return(0,e.onFocusChange)(a)}return(0,e.onFocusChange)(a.toDate("UTC").toISOString())}},minValue:s(e?.minValue),maxValue:s(e?.maxValue),isDateUnavailable:a=>{if(!e?.isDateUnavailable)return!1;if(d){return(0,e.isDateUnavailable)(a)}return(0,e.isDateUnavailable)(a.toDate("UTC").toISOString())}},D=t({createCalendar:r,...C,locale:m}),{calendarProps:g,prevButtonProps:v,nextButtonProps:V}=i(C,D);/* @__PURE__ */
1
+ import{jsx as a}from"react/jsx-runtime";import{forwardRef as e}from"react";import{$ as t,a as r}from"../../useCalendarState-BKam8aTi.js";import{useLocale as o}from"@react-aria/i18n";import{useObjectRef as n}from"@react-aria/utils";import{useCalendar as i}from"@react-aria/calendar";import{Calendar as u}from"../_base/Calendar/Calendar.js";import{useDatePickerContext as l}from"../DatePicker/DatePickerContext.js";import{parseDateValue as s,getVisibleDuration as c}from"../../utils/date/date.js";const f=e(function(e,f){const{locale:m}=o(),{isInDatePicker:d}=l(),p=n(f),C={...e,visibleDuration:c(e?.visibleDuration),defaultValue:s(e?.defaultValue),value:s(e?.value),onChange:a=>{if(e?.onChange){if(d){return(0,e.onChange)(a)}return(0,e.onChange)(a.toDate("UTC").toISOString())}},focusedValue:s(e?.focusedValue),defaultFocusedValue:s(e.defaultFocusedValue),onFocusChange:a=>{if(e?.onFocusChange){if(d){return(0,e.onFocusChange)(a)}return(0,e.onFocusChange)(a.toDate("UTC").toISOString())}},minValue:s(e?.minValue),maxValue:s(e?.maxValue),isDateUnavailable:a=>{if(!e?.isDateUnavailable)return!1;if(d){return(0,e.isDateUnavailable)(a)}return(0,e.isDateUnavailable)(a.toDate("UTC").toISOString())}},D=t({createCalendar:r,...C,locale:m}),{calendarProps:g,prevButtonProps:v,nextButtonProps:V}=i(C,D);/* @__PURE__ */
2
2
  return a(u,{ref:p,state:D,calendarProps:g,prevButtonProps:v,nextButtonProps:V,...C})});export{f as Calendar,f as default};
3
3
  //# sourceMappingURL=Calendar.js.map
@@ -1,3 +1,3 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useState as a,useRef as t,useMemo as n,forwardRef as l}from"react";import{useLocale as r}from"react-aria-components";import{b as i,$ as s,c as o,d as u,e as d,a as c}from"../../useCalendarState-C9LlCwg-.js";import{b as v,c as f,d as m,e as g,f as D,g as p}from"../../CalendarDate-B7n_TjYa.js";import{$ as C}from"../../useControlledState-DCczKDCM.js";import{useRangeCalendar as b}from"@react-aria/calendar";import{useObjectRef as V}from"@react-aria/utils";import{Calendar as h}from"../_base/Calendar/Calendar.js";import{useDatePickerContext as U}from"../DatePicker/DatePickerContext.js";import{parseDateValue as S,getVisibleDuration as R}from"../../utils/date/date.js";function I(e,a){return e&&a?(a.compare(e)<0&&([e,a]=[a,e]),{start:v(e),end:v(a)}):null}function P(e,a){return e=D(e,(null==a?void 0:a.calendar)||new p),a&&"hour"in a?a.set(e):e}function x(e,a,t){let n=e.add({days:t});for(;(t<0?n.compare(a.visibleRange.start)>=0:n.compare(a.visibleRange.end)<=0)&&!a.isCellUnavailable(n);)n=n.add({days:t});if(a.isCellUnavailable(n))return n.add({days:-t})}const F=l(function(l,D){const{locale:p}=r(),{isInDatePicker:F,isInDateRangePicker:j}=U(),y=V(D),B={...l,visibleDuration:R(l?.visibleDuration),defaultValue:(()=>{if(l?.defaultValue&&l.defaultValue?.start&&l.defaultValue?.end)return{start:S(l.defaultValue.start),end:S(l.defaultValue.end)}})(),value:(()=>{if(l?.value&&l.value?.start&&l.value?.end)return{start:S(l.value.start),end:S(l.value.end)}})(),onChange:e=>{if(l?.onChange){if(F||j){return(0,l.onChange)(e)}{if(!e?.start||!e?.end)return;const a={start:e.start.toDate("UTC").toISOString(),end:e.end.toDate("UTC").toISOString()};return(0,l.onChange)(a)}}},focusedValue:S(l?.focusedValue),defaultFocusedValue:S(l.defaultFocusedValue),onFocusChange:e=>{if(l?.onFocusChange){if(F||j){return(0,l.onFocusChange)(e)}return(0,l.onFocusChange)(e.toDate("UTC").toISOString())}},minValue:S(l?.minValue),maxValue:S(l?.maxValue),isDateUnavailable:e=>{if(!l?.isDateUnavailable)return!1;if(F||j){return(0,l.isDateUnavailable)(e)}return(0,l.isDateUnavailable)(e.toDate("UTC").toISOString())}},O=function(e){let{value:l,defaultValue:r,onChange:c,createCalendar:D,locale:p,visibleDuration:b={months:1},minValue:V,maxValue:h,...U}=e,[S,R]=C(l,r||null,c),[F,j]=a(null),y="center";if(S&&S.start&&S.end){let e=i(v(S.start),b,p,V,h).add(b).subtract({days:1});S.end.compare(e)>0&&(y="start")}let B=t(null),[O,k]=a(null),T=n(()=>f(V,null==O?void 0:O.start),[V,O]),A=n(()=>m(h,null==O?void 0:O.end),[h,O]),w=s({...U,value:S&&S.start,createCalendar:D,locale:p,visibleDuration:b,minValue:T,maxValue:A,selectionAlignment:e.selectionAlignment||y}),$=a=>{if(a&&e.isDateUnavailable&&!e.allowsNonContiguousRanges){const e=x(a,w,-1),t=x(a,w,1);B.current={start:e,end:t},k(B.current)}else B.current=null,k(null)},[N,_]=a(w.visibleRange);g(w.visibleRange.start,N.start)&&g(w.visibleRange.end,N.end)||($(F),_(w.visibleRange));let q=e=>{e?(j(e),$(e)):(j(null),$(null))},z=F?I(F,w.focusedDate):S&&I(S.start,S.end),E=a=>{if(e.isReadOnly)return;const t=u(a,T,A),n=d(t,w.visibleRange.start,e.isDateUnavailable);if(n)if(F){let e=I(F,n);e&&R({start:P(e.start,null==S?void 0:S.start),end:P(e.end,null==S?void 0:S.end)}),q(null)}else q(n)},[G,H]=a(!1),{isDateUnavailable:J}=e,K=n(()=>!(!S||F)&&(!(!J||!J(S.start)&&!J(S.end))||o(S.start,V,h)||o(S.end,V,h)),[J,S,F,V,h]),L=e.isInvalid||"invalid"===e.validationState||K,M=L?"invalid":null;return{...w,value:S,setValue:R,anchorDate:F,setAnchorDate:q,highlightedRange:z,validationState:M,isValueInvalid:L,selectFocusedDate(){E(w.focusedDate)},selectDate:E,highlightDate(e){F&&w.setFocusedDate(e)},isSelected:e=>Boolean(z&&e.compare(z.start)>=0&&e.compare(z.end)<=0&&!w.isCellDisabled(e)&&!w.isCellUnavailable(e)),isInvalid(e){var a,t;return w.isInvalid(e)||o(e,null===(a=B.current)||void 0===a?void 0:a.start,null===(t=B.current)||void 0===t?void 0:t.end)},isDragging:G,setDragging:H}}({createCalendar:c,...B,locale:p}),{calendarProps:k,prevButtonProps:T,nextButtonProps:A}=b(B,O,y);/* @__PURE__ */
1
+ import{jsx as e}from"react/jsx-runtime";import{useState as a,useRef as t,useMemo as n,forwardRef as l}from"react";import{useLocale as r}from"react-aria-components";import{b as i,c as s,$ as u,d as o,e as d,f as c,a as f}from"../../useCalendarState-BKam8aTi.js";import{b as v,c as m,d as g,e as D,f as b,g as p}from"../../CalendarDate-uEuHKGse.js";import{useRangeCalendar as C}from"@react-aria/calendar";import{useObjectRef as V}from"@react-aria/utils";import{Calendar as h}from"../_base/Calendar/Calendar.js";import{useDatePickerContext as U}from"../DatePicker/DatePickerContext.js";import{parseDateValue as S,getVisibleDuration as R}from"../../utils/date/date.js";function I(e,a){return e&&a?(a.compare(e)<0&&([e,a]=[a,e]),{start:v(e),end:v(a)}):null}function P(e,a){return e=b(e,a?.calendar||new p),a&&"hour"in a?a.set(e):e}function x(e,a,t){let n=e.add({days:t});for(;(t<0?n.compare(a.visibleRange.start)>=0:n.compare(a.visibleRange.end)<=0)&&!a.isCellUnavailable(n);)n=n.add({days:t});if(a.isCellUnavailable(n))return n.add({days:-t})}const F=l(function(l,b){const{locale:p}=r(),{isInDatePicker:F,isInDateRangePicker:j}=U(),y=V(b),B={...l,visibleDuration:R(l?.visibleDuration),defaultValue:(()=>{if(l?.defaultValue&&l.defaultValue?.start&&l.defaultValue?.end)return{start:S(l.defaultValue.start),end:S(l.defaultValue.end)}})(),value:(()=>{if(l?.value&&l.value?.start&&l.value?.end)return{start:S(l.value.start),end:S(l.value.end)}})(),onChange:e=>{if(l?.onChange){if(F||j){return(0,l.onChange)(e)}{if(!e?.start||!e?.end)return;const a={start:e.start.toDate("UTC").toISOString(),end:e.end.toDate("UTC").toISOString()};return(0,l.onChange)(a)}}},focusedValue:S(l?.focusedValue),defaultFocusedValue:S(l.defaultFocusedValue),onFocusChange:e=>{if(l?.onFocusChange){if(F||j){return(0,l.onFocusChange)(e)}return(0,l.onFocusChange)(e.toDate("UTC").toISOString())}},minValue:S(l?.minValue),maxValue:S(l?.maxValue),isDateUnavailable:e=>{if(!l?.isDateUnavailable)return!1;if(F||j){return(0,l.isDateUnavailable)(e)}return(0,l.isDateUnavailable)(e.toDate("UTC").toISOString())}},O=function(e){let{value:l,defaultValue:r,onChange:f,createCalendar:b,locale:p,visibleDuration:C={months:1},minValue:V,maxValue:h,...U}=e,[S,R]=i(l,r||null,f),[F,j]=a(null),y="center";if(S&&S.start&&S.end){let e=s(v(S.start),C,p,V,h).add(C).subtract({days:1});S.end.compare(e)>0&&(y="start")}let B=t(null),[O,k]=a(null),T=n(()=>m(V,O?.start),[V,O]),A=n(()=>g(h,O?.end),[h,O]),w=u({...U,value:S&&S.start,createCalendar:b,locale:p,visibleDuration:C,minValue:T,maxValue:A,selectionAlignment:e.selectionAlignment||y}),N=a=>{if(a&&e.isDateUnavailable&&!e.allowsNonContiguousRanges){const e=x(a,w,-1),t=x(a,w,1);B.current={start:e,end:t},k(B.current)}else B.current=null,k(null)},[$,_]=a(w.visibleRange);D(w.visibleRange.start,$.start)&&D(w.visibleRange.end,$.end)||(N(F),_(w.visibleRange));let q=e=>{e?(j(e),N(e)):(j(null),N(null))},z=F?I(F,w.focusedDate):S&&I(S.start,S.end),E=a=>{if(e.isReadOnly)return;const t=d(a,T,A),n=c(t,w.visibleRange.start,e.isDateUnavailable);if(n)if(F){let e=I(F,n);e&&R({start:P(e.start,S?.start),end:P(e.end,S?.end)}),q(null)}else q(n)},[G,H]=a(!1),{isDateUnavailable:J}=e,K=n(()=>!(!S||F)&&(!(!J||!J(S.start)&&!J(S.end))||o(S.start,V,h)||o(S.end,V,h)),[J,S,F,V,h]),L=e.isInvalid||"invalid"===e.validationState||K,M=L?"invalid":null;return{...w,value:S,setValue:R,anchorDate:F,setAnchorDate:q,highlightedRange:z,validationState:M,isValueInvalid:L,selectFocusedDate(){E(w.focusedDate)},selectDate:E,highlightDate(e){F&&w.setFocusedDate(e)},isSelected:e=>Boolean(z&&e.compare(z.start)>=0&&e.compare(z.end)<=0&&!w.isCellDisabled(e)&&!w.isCellUnavailable(e)),isInvalid:e=>w.isInvalid(e)||o(e,B.current?.start,B.current?.end),isDragging:G,setDragging:H,clearSelection(){q(null),R(null)}}}({createCalendar:f,...B,locale:p}),{calendarProps:k,prevButtonProps:T,nextButtonProps:A}=C(B,O,y);/* @__PURE__ */
2
2
  return e(h,{ref:y,state:O,calendarProps:k,prevButtonProps:T,nextButtonProps:A,...B})});export{F as CalendarRange,F as default};
3
3
  //# sourceMappingURL=CalendarRange.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarRange.js","sources":["../../../node_modules/@react-stately/calendar/dist/useRangeCalendarState.mjs","../../../src/components/CalendarRange/CalendarRange.tsx"],"sourcesContent":["import {alignCenter as $f62d864046160412$export$f4a51ff076cc9a09, constrainValue as $f62d864046160412$export$4f5203c0d889109e, isInvalid as $f62d864046160412$export$eac50920cf2fd59a, previousAvailableDate as $f62d864046160412$export$a1d3911297b952d7} from \"./utils.mjs\";\nimport {useCalendarState as $131cf43a05231e1e$export$6d095e787d2b5e1f} from \"./useCalendarState.mjs\";\nimport {toCalendarDate as $d0gbl$toCalendarDate, maxDate as $d0gbl$maxDate, minDate as $d0gbl$minDate, isEqualDay as $d0gbl$isEqualDay, toCalendar as $d0gbl$toCalendar, GregorianCalendar as $d0gbl$GregorianCalendar} from \"@internationalized/date\";\nimport {useControlledState as $d0gbl$useControlledState} from \"@react-stately/utils\";\nimport {useState as $d0gbl$useState, useRef as $d0gbl$useRef, useMemo as $d0gbl$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $9a36b6ba2fb1a7c5$export$9a987164d97ecc90(props) {\n let { value: valueProp, defaultValue: defaultValue, onChange: onChange, createCalendar: createCalendar, locale: locale, visibleDuration: visibleDuration = {\n months: 1\n }, minValue: minValue, maxValue: maxValue, ...calendarProps } = props;\n let [value, setValue] = (0, $d0gbl$useControlledState)(valueProp, defaultValue || null, onChange);\n let [anchorDate, setAnchorDateState] = (0, $d0gbl$useState)(null);\n let alignment = 'center';\n if (value && value.start && value.end) {\n let start = (0, $f62d864046160412$export$f4a51ff076cc9a09)((0, $d0gbl$toCalendarDate)(value.start), visibleDuration, locale, minValue, maxValue);\n let end = start.add(visibleDuration).subtract({\n days: 1\n });\n if (value.end.compare(end) > 0) alignment = 'start';\n }\n // Available range must be stored in a ref so we have access to the updated version immediately in `isInvalid`.\n let availableRangeRef = (0, $d0gbl$useRef)(null);\n let [availableRange, setAvailableRange] = (0, $d0gbl$useState)(null);\n let min = (0, $d0gbl$useMemo)(()=>(0, $d0gbl$maxDate)(minValue, availableRange === null || availableRange === void 0 ? void 0 : availableRange.start), [\n minValue,\n availableRange\n ]);\n let max = (0, $d0gbl$useMemo)(()=>(0, $d0gbl$minDate)(maxValue, availableRange === null || availableRange === void 0 ? void 0 : availableRange.end), [\n maxValue,\n availableRange\n ]);\n let calendar = (0, $131cf43a05231e1e$export$6d095e787d2b5e1f)({\n ...calendarProps,\n value: value && value.start,\n createCalendar: createCalendar,\n locale: locale,\n visibleDuration: visibleDuration,\n minValue: min,\n maxValue: max,\n selectionAlignment: props.selectionAlignment || alignment\n });\n let updateAvailableRange = (date)=>{\n if (date && props.isDateUnavailable && !props.allowsNonContiguousRanges) {\n const nextAvailableStartDate = $9a36b6ba2fb1a7c5$var$nextUnavailableDate(date, calendar, -1);\n const nextAvailableEndDate = $9a36b6ba2fb1a7c5$var$nextUnavailableDate(date, calendar, 1);\n availableRangeRef.current = {\n start: nextAvailableStartDate,\n end: nextAvailableEndDate\n };\n setAvailableRange(availableRangeRef.current);\n } else {\n availableRangeRef.current = null;\n setAvailableRange(null);\n }\n };\n // If the visible range changes, we need to update the available range.\n let [lastVisibleRange, setLastVisibleRange] = (0, $d0gbl$useState)(calendar.visibleRange);\n if (!(0, $d0gbl$isEqualDay)(calendar.visibleRange.start, lastVisibleRange.start) || !(0, $d0gbl$isEqualDay)(calendar.visibleRange.end, lastVisibleRange.end)) {\n updateAvailableRange(anchorDate);\n setLastVisibleRange(calendar.visibleRange);\n }\n let setAnchorDate = (date)=>{\n if (date) {\n setAnchorDateState(date);\n updateAvailableRange(date);\n } else {\n setAnchorDateState(null);\n updateAvailableRange(null);\n }\n };\n let highlightedRange = anchorDate ? $9a36b6ba2fb1a7c5$var$makeRange(anchorDate, calendar.focusedDate) : value && $9a36b6ba2fb1a7c5$var$makeRange(value.start, value.end);\n let selectDate = (date)=>{\n if (props.isReadOnly) return;\n const constrainedDate = (0, $f62d864046160412$export$4f5203c0d889109e)(date, min, max);\n const previousAvailableConstrainedDate = (0, $f62d864046160412$export$a1d3911297b952d7)(constrainedDate, calendar.visibleRange.start, props.isDateUnavailable);\n if (!previousAvailableConstrainedDate) return;\n if (!anchorDate) setAnchorDate(previousAvailableConstrainedDate);\n else {\n let range = $9a36b6ba2fb1a7c5$var$makeRange(anchorDate, previousAvailableConstrainedDate);\n if (range) setValue({\n start: $9a36b6ba2fb1a7c5$var$convertValue(range.start, value === null || value === void 0 ? void 0 : value.start),\n end: $9a36b6ba2fb1a7c5$var$convertValue(range.end, value === null || value === void 0 ? void 0 : value.end)\n });\n setAnchorDate(null);\n }\n };\n let [isDragging, setDragging] = (0, $d0gbl$useState)(false);\n let { isDateUnavailable: isDateUnavailable } = props;\n let isInvalidSelection = (0, $d0gbl$useMemo)(()=>{\n if (!value || anchorDate) return false;\n if (isDateUnavailable && (isDateUnavailable(value.start) || isDateUnavailable(value.end))) return true;\n return (0, $f62d864046160412$export$eac50920cf2fd59a)(value.start, minValue, maxValue) || (0, $f62d864046160412$export$eac50920cf2fd59a)(value.end, minValue, maxValue);\n }, [\n isDateUnavailable,\n value,\n anchorDate,\n minValue,\n maxValue\n ]);\n let isValueInvalid = props.isInvalid || props.validationState === 'invalid' || isInvalidSelection;\n let validationState = isValueInvalid ? 'invalid' : null;\n return {\n ...calendar,\n value: value,\n setValue: setValue,\n anchorDate: anchorDate,\n setAnchorDate: setAnchorDate,\n highlightedRange: highlightedRange,\n validationState: validationState,\n isValueInvalid: isValueInvalid,\n selectFocusedDate () {\n selectDate(calendar.focusedDate);\n },\n selectDate: selectDate,\n highlightDate (date) {\n if (anchorDate) calendar.setFocusedDate(date);\n },\n isSelected (date) {\n return Boolean(highlightedRange && date.compare(highlightedRange.start) >= 0 && date.compare(highlightedRange.end) <= 0 && !calendar.isCellDisabled(date) && !calendar.isCellUnavailable(date));\n },\n isInvalid (date) {\n var _availableRangeRef_current, _availableRangeRef_current1;\n return calendar.isInvalid(date) || (0, $f62d864046160412$export$eac50920cf2fd59a)(date, (_availableRangeRef_current = availableRangeRef.current) === null || _availableRangeRef_current === void 0 ? void 0 : _availableRangeRef_current.start, (_availableRangeRef_current1 = availableRangeRef.current) === null || _availableRangeRef_current1 === void 0 ? void 0 : _availableRangeRef_current1.end);\n },\n isDragging: isDragging,\n setDragging: setDragging\n };\n}\nfunction $9a36b6ba2fb1a7c5$var$makeRange(start, end) {\n if (!start || !end) return null;\n if (end.compare(start) < 0) [start, end] = [\n end,\n start\n ];\n return {\n start: (0, $d0gbl$toCalendarDate)(start),\n end: (0, $d0gbl$toCalendarDate)(end)\n };\n}\nfunction $9a36b6ba2fb1a7c5$var$convertValue(newValue, oldValue) {\n // The display calendar should not have any effect on the emitted value.\n // Emit dates in the same calendar as the original value, if any, otherwise gregorian.\n newValue = (0, $d0gbl$toCalendar)(newValue, (oldValue === null || oldValue === void 0 ? void 0 : oldValue.calendar) || new (0, $d0gbl$GregorianCalendar)());\n // Preserve time if the input value had one.\n if (oldValue && 'hour' in oldValue) return oldValue.set(newValue);\n return newValue;\n}\nfunction $9a36b6ba2fb1a7c5$var$nextUnavailableDate(anchorDate, state, dir) {\n let nextDate = anchorDate.add({\n days: dir\n });\n while((dir < 0 ? nextDate.compare(state.visibleRange.start) >= 0 : nextDate.compare(state.visibleRange.end) <= 0) && !state.isCellUnavailable(nextDate))nextDate = nextDate.add({\n days: dir\n });\n if (state.isCellUnavailable(nextDate)) return nextDate.add({\n days: -dir\n });\n}\n\n\nexport {$9a36b6ba2fb1a7c5$export$9a987164d97ecc90 as useRangeCalendarState};\n//# sourceMappingURL=useRangeCalendarState.module.js.map\n","import { forwardRef } from 'react';\nimport { useLocale, DateValue } from 'react-aria-components';\nimport { type RangeValue } from 'react-aria';\nimport { useRangeCalendarState } from '@react-stately/calendar';\nimport {\n AriaCalendarProps,\n AriaRangeCalendarProps,\n useRangeCalendar,\n} from '@react-aria/calendar';\nimport { useObjectRef } from '@react-aria/utils';\nimport { DateFieldProps } from '../DateField';\nimport {\n CalendarDate,\n createCalendar,\n DateDuration,\n} from '@internationalized/date';\n\nimport BaseCalendar, { type CalendarProps } from '../_base/Calendar';\nimport { useDatePickerContext } from '../DatePicker/DatePickerContext';\nimport { getVisibleDuration, parseDateValue } from '../../utils/date/date';\n\nexport interface CalendarRangeProps\n extends Omit<\n CalendarProps,\n | 'defaultValue'\n | 'value'\n | 'minValue'\n | 'maxValue'\n | 'onChange'\n | 'isDateUnavailable'\n | 'defaultFocusedValue'\n | 'onFocusChange'\n | 'focusedValue'\n > {\n /**\n * Default selected calendar date (uncontrolled)\n */\n defaultValue?: RangeValue<string>;\n /**\n * Default focused calendar date cell (uncontrolled)\n */\n defaultFocusedValue?: DateFieldProps['defaultValue'];\n /**\n * Selected calendar date (controlled)\n */\n value?: RangeValue<string>;\n /**\n * Focused calendar date cell (controlled)\n */\n focusedValue?: DateFieldProps['value'];\n /**\n * Handler that is called when the value changes\n */\n onChange?: (range: RangeValue<string>) => void;\n /**\n * Handler that is called when the focused cell changes\n */\n onFocusChange?: DateFieldProps['onChange'];\n /**\n * Earliest selectable date. All dates before this will be disabled\n */\n minValue?: DateFieldProps['minValue'];\n /**\n * Latest selectable date. All dates after this will be disabled\n */\n maxValue?: DateFieldProps['maxValue'];\n /**\n * Visible duration before pagination\n * @default { months: 1 }\n */\n visibleDuration?: DateDuration;\n /**\n * Callback function to mark cells as unavailable. Unavailable cells will have `aria-disabled=\"true\"`\n */\n isDateUnavailable?: DateFieldProps['isDateUnavailable'];\n /**\n * When combined with `isDateUnavailable`, determines whether ranges containing unavailable dates may be selected.\n */\n allowsNonContiguousRanges?: boolean;\n /**\n * Whether the calendar is disabled\n */\n isDisabled?: boolean;\n /**\n * Whether the calendar is invalid\n */\n isInvalid?: boolean;\n}\n\nexport const CalendarRange = forwardRef<HTMLDivElement, CalendarRangeProps>(\n function CalendarRange(props, forwardedRef) {\n const { locale } = useLocale();\n const { isInDatePicker, isInDateRangePicker } = useDatePickerContext();\n const calendarRangeRef = useObjectRef(forwardedRef);\n\n // Convert any date string values to DateValue\n const parsedProps = {\n ...props,\n visibleDuration: getVisibleDuration(props?.visibleDuration),\n // date value\n defaultValue: (() => {\n if (!props?.defaultValue) return undefined;\n if (!props.defaultValue?.start || !props.defaultValue?.end)\n return undefined;\n return {\n start: parseDateValue(props.defaultValue.start),\n end: parseDateValue(props.defaultValue.end),\n };\n })(),\n value: (() => {\n if (!props?.value) return undefined;\n if (!props.value?.start || !props.value?.end) return undefined;\n return {\n start: parseDateValue(props.value.start),\n end: parseDateValue(props.value.end),\n };\n })(),\n onChange: (rangeValue: RangeValue<DateValue>) => {\n if (!props?.onChange) return;\n /**\n * If the Calendar is in the datepicker we need the 'dateValue' to be a DateValue type\n * otherwise it needs to be string type\n */\n if (isInDatePicker || isInDateRangePicker) {\n const onChange = props.onChange as unknown as NonNullable<\n AriaRangeCalendarProps<DateValue>['onChange']\n >;\n return onChange(rangeValue);\n } else {\n if (!rangeValue?.start || !rangeValue?.end) return;\n const range = {\n start: rangeValue.start.toDate('UTC').toISOString(),\n end: rangeValue.end.toDate('UTC').toISOString(),\n };\n const onChange = props.onChange as NonNullable<\n CalendarRangeProps['onChange']\n >;\n return onChange(range);\n }\n },\n // focused value\n focusedValue: parseDateValue(props?.focusedValue),\n defaultFocusedValue: parseDateValue(props.defaultFocusedValue),\n onFocusChange: (dateValue: CalendarDate) => {\n if (!props?.onFocusChange) return;\n /**\n * If the Calendar is in the datepicker we need the 'dateValue' to be a DateValue type\n * otherwise it needs to be string type\n */\n if (isInDatePicker || isInDateRangePicker) {\n const onFocusChange = props.onFocusChange as unknown as NonNullable<\n AriaCalendarProps<DateValue>['onFocusChange']\n >;\n return onFocusChange(dateValue);\n } else {\n const onFocusChange = props.onFocusChange as NonNullable<\n CalendarProps['onFocusChange']\n >;\n return onFocusChange(dateValue.toDate('UTC').toISOString());\n }\n },\n // config\n minValue: parseDateValue(props?.minValue),\n maxValue: parseDateValue(props?.maxValue),\n isDateUnavailable: (dateValue: DateValue) => {\n if (!props?.isDateUnavailable) return false;\n /**\n * If the Calendar is in the datepicker we need the 'dateValue' to be a DateValue type\n * otherwise it needs to be string type\n */\n if (isInDatePicker || isInDateRangePicker) {\n const isDateUnavailable =\n props.isDateUnavailable as unknown as NonNullable<\n AriaCalendarProps<DateValue>['isDateUnavailable']\n >;\n return isDateUnavailable(dateValue);\n } else {\n const isDateUnavailable = props.isDateUnavailable as NonNullable<\n CalendarProps['isDateUnavailable']\n >;\n return isDateUnavailable(dateValue.toDate('UTC').toISOString());\n }\n },\n } as unknown as CalendarProps;\n\n // Create the calendar state\n const state = useRangeCalendarState({\n createCalendar,\n ...(parsedProps as unknown as AriaRangeCalendarProps<DateValue>),\n locale,\n });\n // Get ReactAria Calendar props\n const { calendarProps, prevButtonProps, nextButtonProps } =\n useRangeCalendar(\n parsedProps as unknown as AriaRangeCalendarProps<DateValue>,\n state,\n calendarRangeRef,\n );\n\n return (\n <BaseCalendar\n ref={calendarRangeRef}\n state={state}\n calendarProps={calendarProps}\n prevButtonProps={prevButtonProps}\n nextButtonProps={nextButtonProps}\n {...parsedProps}\n />\n );\n },\n);\n\nexport default CalendarRange;\n"],"names":["$9a36b6ba2fb1a7c5$var$makeRange","start","end","compare","$d0gbl$toCalendarDate","$9a36b6ba2fb1a7c5$var$convertValue","newValue","oldValue","$d0gbl$toCalendar","calendar","$d0gbl$GregorianCalendar","set","$9a36b6ba2fb1a7c5$var$nextUnavailableDate","anchorDate","state","dir","nextDate","add","days","visibleRange","isCellUnavailable","CalendarRange","forwardRef","props","forwardedRef","locale","useLocale","isInDatePicker","isInDateRangePicker","useDatePickerContext","calendarRangeRef","useObjectRef","parsedProps","visibleDuration","getVisibleDuration","defaultValue","parseDateValue","value","onChange","rangeValue","range","toDate","toISOString","focusedValue","defaultFocusedValue","onFocusChange","dateValue","minValue","maxValue","isDateUnavailable","valueProp","createCalendar","months","calendarProps","setValue","$d0gbl$useControlledState","setAnchorDateState","$d0gbl$useState","alignment","$f62d864046160412$export$f4a51ff076cc9a09","subtract","availableRangeRef","$d0gbl$useRef","availableRange","setAvailableRange","min","$d0gbl$useMemo","$d0gbl$maxDate","max","$d0gbl$minDate","$131cf43a05231e1e$export$6d095e787d2b5e1f","selectionAlignment","updateAvailableRange","date","allowsNonContiguousRanges","nextAvailableStartDate","nextAvailableEndDate","current","lastVisibleRange","setLastVisibleRange","$d0gbl$isEqualDay","setAnchorDate","highlightedRange","focusedDate","selectDate","isReadOnly","constrainedDate","$f62d864046160412$export$4f5203c0d889109e","previousAvailableConstrainedDate","$f62d864046160412$export$a1d3911297b952d7","isDragging","setDragging","isInvalidSelection","$f62d864046160412$export$eac50920cf2fd59a","isValueInvalid","isInvalid","validationState","selectFocusedDate","highlightDate","setFocusedDate","isSelected","Boolean","isCellDisabled","_availableRangeRef_current","_availableRangeRef_current1","useRangeCalendarState","prevButtonProps","nextButtonProps","useRangeCalendar","jsx","BaseCalendar","ref"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"CalendarRange.js","sources":["../../../node_modules/@react-stately/calendar/node_modules/react-stately/dist/private/calendar/useRangeCalendarState.mjs","../../../src/components/CalendarRange/CalendarRange.tsx"],"sourcesContent":["import {alignCenter as $dd602d3c757202f2$export$f4a51ff076cc9a09, constrainValue as $dd602d3c757202f2$export$4f5203c0d889109e, isInvalid as $dd602d3c757202f2$export$eac50920cf2fd59a, previousAvailableDate as $dd602d3c757202f2$export$a1d3911297b952d7} from \"./utils.mjs\";\nimport {useCalendarState as $ea0ea6e62ae0d7ca$export$6d095e787d2b5e1f} from \"./useCalendarState.mjs\";\nimport {useControlledState as $3e6197669829fe11$export$40bfa8c7b0832715} from \"../utils/useControlledState.mjs\";\nimport {toCalendarDate as $1ppdM$toCalendarDate, maxDate as $1ppdM$maxDate, minDate as $1ppdM$minDate, isEqualDay as $1ppdM$isEqualDay, toCalendar as $1ppdM$toCalendar, GregorianCalendar as $1ppdM$GregorianCalendar} from \"@internationalized/date\";\nimport {useState as $1ppdM$useState, useRef as $1ppdM$useRef, useMemo as $1ppdM$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $a0a87fb6fcfb22ec$export$9a987164d97ecc90(props) {\n let { value: valueProp, defaultValue: defaultValue, onChange: onChange, createCalendar: createCalendar, locale: locale, visibleDuration: visibleDuration = {\n months: 1\n }, minValue: minValue, maxValue: maxValue, ...calendarProps } = props;\n let [value, setValue] = (0, $3e6197669829fe11$export$40bfa8c7b0832715)(valueProp, defaultValue || null, onChange);\n let [anchorDate, setAnchorDateState] = (0, $1ppdM$useState)(null);\n let alignment = 'center';\n if (value && value.start && value.end) {\n let start = (0, $dd602d3c757202f2$export$f4a51ff076cc9a09)((0, $1ppdM$toCalendarDate)(value.start), visibleDuration, locale, minValue, maxValue);\n let end = start.add(visibleDuration).subtract({\n days: 1\n });\n if (value.end.compare(end) > 0) alignment = 'start';\n }\n // Available range must be stored in a ref so we have access to the updated version immediately in `isInvalid`.\n let availableRangeRef = (0, $1ppdM$useRef)(null);\n let [availableRange, setAvailableRange] = (0, $1ppdM$useState)(null);\n let min = (0, $1ppdM$useMemo)(()=>(0, $1ppdM$maxDate)(minValue, availableRange?.start), [\n minValue,\n availableRange\n ]);\n let max = (0, $1ppdM$useMemo)(()=>(0, $1ppdM$minDate)(maxValue, availableRange?.end), [\n maxValue,\n availableRange\n ]);\n let calendar = (0, $ea0ea6e62ae0d7ca$export$6d095e787d2b5e1f)({\n ...calendarProps,\n value: value && value.start,\n createCalendar: createCalendar,\n locale: locale,\n visibleDuration: visibleDuration,\n minValue: min,\n maxValue: max,\n selectionAlignment: props.selectionAlignment || alignment\n });\n let updateAvailableRange = (date)=>{\n if (date && props.isDateUnavailable && !props.allowsNonContiguousRanges) {\n const nextAvailableStartDate = $a0a87fb6fcfb22ec$var$nextUnavailableDate(date, calendar, -1);\n const nextAvailableEndDate = $a0a87fb6fcfb22ec$var$nextUnavailableDate(date, calendar, 1);\n availableRangeRef.current = {\n start: nextAvailableStartDate,\n end: nextAvailableEndDate\n };\n setAvailableRange(availableRangeRef.current);\n } else {\n availableRangeRef.current = null;\n setAvailableRange(null);\n }\n };\n // If the visible range changes, we need to update the available range.\n let [lastVisibleRange, setLastVisibleRange] = (0, $1ppdM$useState)(calendar.visibleRange);\n if (!(0, $1ppdM$isEqualDay)(calendar.visibleRange.start, lastVisibleRange.start) || !(0, $1ppdM$isEqualDay)(calendar.visibleRange.end, lastVisibleRange.end)) {\n updateAvailableRange(anchorDate);\n setLastVisibleRange(calendar.visibleRange);\n }\n let setAnchorDate = (date)=>{\n if (date) {\n setAnchorDateState(date);\n updateAvailableRange(date);\n } else {\n setAnchorDateState(null);\n updateAvailableRange(null);\n }\n };\n let highlightedRange = anchorDate ? $a0a87fb6fcfb22ec$var$makeRange(anchorDate, calendar.focusedDate) : value && $a0a87fb6fcfb22ec$var$makeRange(value.start, value.end);\n let selectDate = (date)=>{\n if (props.isReadOnly) return;\n const constrainedDate = (0, $dd602d3c757202f2$export$4f5203c0d889109e)(date, min, max);\n const previousAvailableConstrainedDate = (0, $dd602d3c757202f2$export$a1d3911297b952d7)(constrainedDate, calendar.visibleRange.start, props.isDateUnavailable);\n if (!previousAvailableConstrainedDate) return;\n if (!anchorDate) setAnchorDate(previousAvailableConstrainedDate);\n else {\n let range = $a0a87fb6fcfb22ec$var$makeRange(anchorDate, previousAvailableConstrainedDate);\n if (range) setValue({\n start: $a0a87fb6fcfb22ec$var$convertValue(range.start, value?.start),\n end: $a0a87fb6fcfb22ec$var$convertValue(range.end, value?.end)\n });\n setAnchorDate(null);\n }\n };\n let [isDragging, setDragging] = (0, $1ppdM$useState)(false);\n let { isDateUnavailable: isDateUnavailable } = props;\n let isInvalidSelection = (0, $1ppdM$useMemo)(()=>{\n if (!value || anchorDate) return false;\n if (isDateUnavailable && (isDateUnavailable(value.start) || isDateUnavailable(value.end))) return true;\n return (0, $dd602d3c757202f2$export$eac50920cf2fd59a)(value.start, minValue, maxValue) || (0, $dd602d3c757202f2$export$eac50920cf2fd59a)(value.end, minValue, maxValue);\n }, [\n isDateUnavailable,\n value,\n anchorDate,\n minValue,\n maxValue\n ]);\n let isValueInvalid = props.isInvalid || props.validationState === 'invalid' || isInvalidSelection;\n let validationState = isValueInvalid ? 'invalid' : null;\n return {\n ...calendar,\n value: value,\n setValue: setValue,\n anchorDate: anchorDate,\n setAnchorDate: setAnchorDate,\n highlightedRange: highlightedRange,\n validationState: validationState,\n isValueInvalid: isValueInvalid,\n selectFocusedDate () {\n selectDate(calendar.focusedDate);\n },\n selectDate: selectDate,\n highlightDate (date) {\n if (anchorDate) calendar.setFocusedDate(date);\n },\n isSelected (date) {\n return Boolean(highlightedRange && date.compare(highlightedRange.start) >= 0 && date.compare(highlightedRange.end) <= 0 && !calendar.isCellDisabled(date) && !calendar.isCellUnavailable(date));\n },\n isInvalid (date) {\n return calendar.isInvalid(date) || (0, $dd602d3c757202f2$export$eac50920cf2fd59a)(date, availableRangeRef.current?.start, availableRangeRef.current?.end);\n },\n isDragging: isDragging,\n setDragging: setDragging,\n clearSelection () {\n setAnchorDate(null);\n setValue(null);\n }\n };\n}\nfunction $a0a87fb6fcfb22ec$var$makeRange(start, end) {\n if (!start || !end) return null;\n if (end.compare(start) < 0) [start, end] = [\n end,\n start\n ];\n return {\n start: (0, $1ppdM$toCalendarDate)(start),\n end: (0, $1ppdM$toCalendarDate)(end)\n };\n}\nfunction $a0a87fb6fcfb22ec$var$convertValue(newValue, oldValue) {\n // The display calendar should not have any effect on the emitted value.\n // Emit dates in the same calendar as the original value, if any, otherwise gregorian.\n newValue = (0, $1ppdM$toCalendar)(newValue, oldValue?.calendar || new (0, $1ppdM$GregorianCalendar)());\n // Preserve time if the input value had one.\n if (oldValue && 'hour' in oldValue) return oldValue.set(newValue);\n return newValue;\n}\nfunction $a0a87fb6fcfb22ec$var$nextUnavailableDate(anchorDate, state, dir) {\n let nextDate = anchorDate.add({\n days: dir\n });\n while((dir < 0 ? nextDate.compare(state.visibleRange.start) >= 0 : nextDate.compare(state.visibleRange.end) <= 0) && !state.isCellUnavailable(nextDate))nextDate = nextDate.add({\n days: dir\n });\n if (state.isCellUnavailable(nextDate)) return nextDate.add({\n days: -dir\n });\n}\n\n\nexport {$a0a87fb6fcfb22ec$export$9a987164d97ecc90 as useRangeCalendarState};\n//# sourceMappingURL=useRangeCalendarState.mjs.map\n","import { forwardRef } from 'react';\nimport { useLocale, DateValue } from 'react-aria-components';\nimport { type RangeValue } from 'react-aria';\nimport { useRangeCalendarState } from '@react-stately/calendar';\nimport {\n AriaCalendarProps,\n AriaRangeCalendarProps,\n useRangeCalendar,\n} from '@react-aria/calendar';\nimport { useObjectRef } from '@react-aria/utils';\nimport { DateFieldProps } from '../DateField';\nimport {\n CalendarDate,\n createCalendar,\n DateDuration,\n} from '@internationalized/date';\n\nimport BaseCalendar, { type CalendarProps } from '../_base/Calendar';\nimport { useDatePickerContext } from '../DatePicker/DatePickerContext';\nimport { getVisibleDuration, parseDateValue } from '../../utils/date/date';\n\nexport interface CalendarRangeProps\n extends Omit<\n CalendarProps,\n | 'defaultValue'\n | 'value'\n | 'minValue'\n | 'maxValue'\n | 'onChange'\n | 'isDateUnavailable'\n | 'defaultFocusedValue'\n | 'onFocusChange'\n | 'focusedValue'\n > {\n /**\n * Default selected calendar date (uncontrolled)\n */\n defaultValue?: RangeValue<string>;\n /**\n * Default focused calendar date cell (uncontrolled)\n */\n defaultFocusedValue?: DateFieldProps['defaultValue'];\n /**\n * Selected calendar date (controlled)\n */\n value?: RangeValue<string>;\n /**\n * Focused calendar date cell (controlled)\n */\n focusedValue?: DateFieldProps['value'];\n /**\n * Handler that is called when the value changes\n */\n onChange?: (range: RangeValue<string>) => void;\n /**\n * Handler that is called when the focused cell changes\n */\n onFocusChange?: DateFieldProps['onChange'];\n /**\n * Earliest selectable date. All dates before this will be disabled\n */\n minValue?: DateFieldProps['minValue'];\n /**\n * Latest selectable date. All dates after this will be disabled\n */\n maxValue?: DateFieldProps['maxValue'];\n /**\n * Visible duration before pagination\n * @default { months: 1 }\n */\n visibleDuration?: DateDuration;\n /**\n * Callback function to mark cells as unavailable. Unavailable cells will have `aria-disabled=\"true\"`\n */\n isDateUnavailable?: DateFieldProps['isDateUnavailable'];\n /**\n * When combined with `isDateUnavailable`, determines whether ranges containing unavailable dates may be selected.\n */\n allowsNonContiguousRanges?: boolean;\n /**\n * Whether the calendar is disabled\n */\n isDisabled?: boolean;\n /**\n * Whether the calendar is invalid\n */\n isInvalid?: boolean;\n}\n\nexport const CalendarRange = forwardRef<HTMLDivElement, CalendarRangeProps>(\n function CalendarRange(props, forwardedRef) {\n const { locale } = useLocale();\n const { isInDatePicker, isInDateRangePicker } = useDatePickerContext();\n const calendarRangeRef = useObjectRef(forwardedRef);\n\n // Convert any date string values to DateValue\n const parsedProps = {\n ...props,\n visibleDuration: getVisibleDuration(props?.visibleDuration),\n // date value\n defaultValue: (() => {\n if (!props?.defaultValue) return undefined;\n if (!props.defaultValue?.start || !props.defaultValue?.end)\n return undefined;\n return {\n start: parseDateValue(props.defaultValue.start),\n end: parseDateValue(props.defaultValue.end),\n };\n })(),\n value: (() => {\n if (!props?.value) return undefined;\n if (!props.value?.start || !props.value?.end) return undefined;\n return {\n start: parseDateValue(props.value.start),\n end: parseDateValue(props.value.end),\n };\n })(),\n onChange: (rangeValue: RangeValue<DateValue>) => {\n if (!props?.onChange) return;\n /**\n * If the Calendar is in the datepicker we need the 'dateValue' to be a DateValue type\n * otherwise it needs to be string type\n */\n if (isInDatePicker || isInDateRangePicker) {\n const onChange = props.onChange as unknown as NonNullable<\n AriaRangeCalendarProps<DateValue>['onChange']\n >;\n return onChange(rangeValue);\n } else {\n if (!rangeValue?.start || !rangeValue?.end) return;\n const range = {\n start: rangeValue.start.toDate('UTC').toISOString(),\n end: rangeValue.end.toDate('UTC').toISOString(),\n };\n const onChange = props.onChange as NonNullable<\n CalendarRangeProps['onChange']\n >;\n return onChange(range);\n }\n },\n // focused value\n focusedValue: parseDateValue(props?.focusedValue),\n defaultFocusedValue: parseDateValue(props.defaultFocusedValue),\n onFocusChange: (dateValue: CalendarDate) => {\n if (!props?.onFocusChange) return;\n /**\n * If the Calendar is in the datepicker we need the 'dateValue' to be a DateValue type\n * otherwise it needs to be string type\n */\n if (isInDatePicker || isInDateRangePicker) {\n const onFocusChange = props.onFocusChange as unknown as NonNullable<\n AriaCalendarProps<DateValue>['onFocusChange']\n >;\n return onFocusChange(dateValue);\n } else {\n const onFocusChange = props.onFocusChange as NonNullable<\n CalendarProps['onFocusChange']\n >;\n return onFocusChange(dateValue.toDate('UTC').toISOString());\n }\n },\n // config\n minValue: parseDateValue(props?.minValue),\n maxValue: parseDateValue(props?.maxValue),\n isDateUnavailable: (dateValue: DateValue) => {\n if (!props?.isDateUnavailable) return false;\n /**\n * If the Calendar is in the datepicker we need the 'dateValue' to be a DateValue type\n * otherwise it needs to be string type\n */\n if (isInDatePicker || isInDateRangePicker) {\n const isDateUnavailable =\n props.isDateUnavailable as unknown as NonNullable<\n AriaCalendarProps<DateValue>['isDateUnavailable']\n >;\n return isDateUnavailable(dateValue);\n } else {\n const isDateUnavailable = props.isDateUnavailable as NonNullable<\n CalendarProps['isDateUnavailable']\n >;\n return isDateUnavailable(dateValue.toDate('UTC').toISOString());\n }\n },\n } as unknown as CalendarProps;\n\n // Create the calendar state\n const state = useRangeCalendarState({\n createCalendar,\n ...(parsedProps as unknown as AriaRangeCalendarProps<DateValue>),\n locale,\n });\n // Get ReactAria Calendar props\n const { calendarProps, prevButtonProps, nextButtonProps } =\n useRangeCalendar(\n parsedProps as unknown as AriaRangeCalendarProps<DateValue>,\n state,\n calendarRangeRef,\n );\n\n return (\n <BaseCalendar\n ref={calendarRangeRef}\n state={state}\n calendarProps={calendarProps}\n prevButtonProps={prevButtonProps}\n nextButtonProps={nextButtonProps}\n {...parsedProps}\n />\n );\n },\n);\n\nexport default CalendarRange;\n"],"names":["$a0a87fb6fcfb22ec$var$makeRange","start","end","compare","$1ppdM$toCalendarDate","$a0a87fb6fcfb22ec$var$convertValue","newValue","oldValue","$1ppdM$toCalendar","calendar","$1ppdM$GregorianCalendar","set","$a0a87fb6fcfb22ec$var$nextUnavailableDate","anchorDate","state","dir","nextDate","add","days","visibleRange","isCellUnavailable","CalendarRange","forwardRef","props","forwardedRef","locale","useLocale","isInDatePicker","isInDateRangePicker","useDatePickerContext","calendarRangeRef","useObjectRef","parsedProps","visibleDuration","getVisibleDuration","defaultValue","parseDateValue","value","onChange","rangeValue","range","toDate","toISOString","focusedValue","defaultFocusedValue","onFocusChange","dateValue","minValue","maxValue","isDateUnavailable","valueProp","createCalendar","months","calendarProps","setValue","$3e6197669829fe11$export$40bfa8c7b0832715","setAnchorDateState","$1ppdM$useState","alignment","$dd602d3c757202f2$export$f4a51ff076cc9a09","subtract","availableRangeRef","$1ppdM$useRef","availableRange","setAvailableRange","min","$1ppdM$useMemo","$1ppdM$maxDate","max","$1ppdM$minDate","$ea0ea6e62ae0d7ca$export$6d095e787d2b5e1f","selectionAlignment","updateAvailableRange","date","allowsNonContiguousRanges","nextAvailableStartDate","nextAvailableEndDate","current","lastVisibleRange","setLastVisibleRange","$1ppdM$isEqualDay","setAnchorDate","highlightedRange","focusedDate","selectDate","isReadOnly","constrainedDate","$dd602d3c757202f2$export$4f5203c0d889109e","previousAvailableConstrainedDate","$dd602d3c757202f2$export$a1d3911297b952d7","isDragging","setDragging","isInvalidSelection","$dd602d3c757202f2$export$eac50920cf2fd59a","isValueInvalid","isInvalid","validationState","selectFocusedDate","highlightDate","setFocusedDate","isSelected","Boolean","isCellDisabled","clearSelection","useRangeCalendarState","prevButtonProps","nextButtonProps","useRangeCalendar","jsx","BaseCalendar","ref"],"mappings":"ypBAkJA,SAASA,EAAgCC,EAAOC,GAC5C,OAAKD,GAAUC,GACXA,EAAIC,QAAQF,GAAS,KAAIA,EAAOC,GAAO,CACvCA,EACAD,IAEG,CACHA,MAAWG,EAAuBH,GAClCC,IAASE,EAAuBF,KAPT,IAS/B,CACA,SAASG,EAAmCC,EAAUC,GAKlD,OAFAD,EAAeE,EAAmBF,EAAUC,GAAUE,UAAY,IAAQC,GAEtEH,GAAY,SAAUA,EAAiBA,EAASI,IAAIL,GACjDA,CACX,CACA,SAASM,EAA0CC,EAAYC,EAAOC,GAClE,IAAIC,EAAWH,EAAWI,IAAI,CAC1BC,KAAMH,IAEV,MAAOA,EAAM,EAAIC,EAASb,QAAQW,EAAMK,aAAalB,QAAU,EAAIe,EAASb,QAAQW,EAAMK,aAAajB,MAAQ,KAAOY,EAAMM,kBAAkBJ,IAAUA,EAAWA,EAASC,IAAI,CAC5KC,KAAMH,IAEV,GAAID,EAAMM,kBAAkBJ,GAAW,OAAOA,EAASC,IAAI,CACvDC,MAAOH,GAEf,CCtFO,MAAMM,EAAgBC,EAC3B,SAAuBC,EAAOC,GAC5B,MAAMC,OAAEA,GAAWC,KACbC,eAAEA,EAAAC,oBAAgBA,GAAwBC,IAC1CC,EAAmBC,EAAaP,GAGhCQ,EAAc,IACfT,EACHU,gBAAiBC,EAAmBX,GAAOU,iBAE3CE,mBACE,GAAKZ,GAAOY,cACPZ,EAAMY,cAAclC,OAAUsB,EAAMY,cAAcjC,IAEvD,MAAO,CACLD,MAAOmC,EAAeb,EAAMY,aAAalC,OACzCC,IAAKkC,EAAeb,EAAMY,aAAajC,KAE3C,KACAmC,YACE,GAAKd,GAAOc,OACPd,EAAMc,OAAOpC,OAAUsB,EAAMc,OAAOnC,IACzC,MAAO,CACLD,MAAOmC,EAAeb,EAAMc,MAAMpC,OAClCC,IAAKkC,EAAeb,EAAMc,MAAMnC,KAEpC,KACAoC,SAAWC,IACT,GAAKhB,GAAOe,SAAZ,CAKA,GAAIX,GAAkBC,EAAqB,CAIzC,OAAOU,EAHUf,EAAMe,UAGPC,EAClB,CAAO,CACL,IAAKA,GAAYtC,QAAUsC,GAAYrC,IAAK,OAC5C,MAAMsC,EAAQ,CACZvC,MAAOsC,EAAWtC,MAAMwC,OAAO,OAAOC,cACtCxC,IAAKqC,EAAWrC,IAAIuC,OAAO,OAAOC,eAKpC,OAAOJ,EAHUf,EAAMe,UAGPE,EAClB,CApBsB,GAuBxBG,aAAcP,EAAeb,GAAOoB,cACpCC,oBAAqBR,EAAeb,EAAMqB,qBAC1CC,cAAgBC,IACd,GAAKvB,GAAOsB,cAAZ,CAKA,GAAIlB,GAAkBC,EAAqB,CAIzC,OAAOiB,EAHetB,EAAMsB,eAGPC,EACvB,CAIE,OAAOD,EAHetB,EAAMsB,eAGPC,EAAUL,OAAO,OAAOC,cAdpB,GAkB7BK,SAAUX,EAAeb,GAAOwB,UAChCC,SAAUZ,EAAeb,GAAOyB,UAChCC,kBAAoBH,IAClB,IAAKvB,GAAO0B,kBAAmB,OAAO,EAKtC,GAAItB,GAAkBC,EAAqB,CAKzC,OAAOqB,EAHL1B,EAAM0B,mBAGiBH,EAC3B,CAIE,OAAOG,EAHmB1B,EAAM0B,mBAGPH,EAAUL,OAAO,OAAOC,iBAMjD5B,EDrKV,SAAmDS,GAC/C,IAAMc,MAAOa,EAAAf,aAAWA,WAA4BG,EAAAa,eAAoBA,EAAA1B,OAAgCA,kBAAgBQ,EAAmC,CACvJmB,OAAQ,GAChBL,SAAOA,EAAAC,SAAoBA,KAAuBK,GAAkB9B,GAC3Dc,EAAOiB,GAAgBC,EAA2CL,EAAWf,GAAgB,KAAMG,IACnGzB,EAAY2C,GAA0BC,EAAiB,MACxDC,EAAY,SAChB,GAAIrB,GAASA,EAAMpC,OAASoC,EAAMnC,IAAK,CACnC,IACIA,EADYyD,EAA+CvD,EAAuBiC,EAAMpC,OAAQgC,EAAiBR,EAAQsB,EAAUC,GACvH/B,IAAIgB,GAAiB2B,SAAS,CAC1C1C,KAAM,IAENmB,EAAMnC,IAAIC,QAAQD,GAAO,IAAGwD,EAAY,QAChD,CAEA,IAAIG,EAAwBC,EAAe,OACtCC,EAAgBC,GAAyBP,EAAiB,MAC3DQ,EAAUC,EAAgB,IAAQC,EAAgBpB,EAAUgB,GAAgB9D,OAAQ,CACpF8C,EACAgB,IAEAK,EAAUF,EAAgB,IAAQG,EAAgBrB,EAAUe,GAAgB7D,KAAM,CAClF8C,EACAe,IAEAtD,EAAe6D,EAA2C,IACvDjB,EACHhB,MAAOA,GAASA,EAAMpC,MACtBkD,iBACA1B,SACAQ,kBACAc,SAAUkB,EACVjB,SAAUoB,EACVG,mBAAoBhD,EAAMgD,oBAAsBb,IAEhDc,EAAwBC,IACxB,GAAIA,GAAQlD,EAAM0B,oBAAsB1B,EAAMmD,0BAA2B,CACrE,MAAMC,EAAyB/D,EAA0C6D,EAAMhE,GAAU,GACnFmE,EAAuBhE,EAA0C6D,EAAMhE,EAAU,GACvFoD,EAAkBgB,QAAU,CACxB5E,MAAO0E,EACPzE,IAAK0E,GAETZ,EAAkBH,EAAkBgB,QACxC,MACIhB,EAAkBgB,QAAU,KAC5Bb,EAAkB,QAIrBc,EAAkBC,GAA2BtB,EAAiBhD,EAASU,cACnE6D,EAAmBvE,EAASU,aAAalB,MAAO6E,EAAiB7E,QAAe+E,EAAmBvE,EAASU,aAAajB,IAAK4E,EAAiB5E,OACpJsE,EAAqB3D,GACrBkE,EAAoBtE,EAASU,eAEjC,IAAI8D,EAAiBR,IACbA,GACAjB,EAAmBiB,GACnBD,EAAqBC,KAErBjB,EAAmB,MACnBgB,EAAqB,QAGzBU,EAAmBrE,EAAab,EAAgCa,EAAYJ,EAAS0E,aAAe9C,GAASrC,EAAgCqC,EAAMpC,MAAOoC,EAAMnC,KAChKkF,EAAcX,IACd,GAAIlD,EAAM8D,WAAY,OACtB,MAAMC,EAAsBC,EAA2Cd,EAAMR,EAAKG,GAC5EoB,EAAuCC,EAA2CH,EAAiB7E,EAASU,aAAalB,MAAOsB,EAAM0B,mBAC5I,GAAKuC,EACL,GAAK3E,EACA,CACD,IAAI2B,EAAQxC,EAAgCa,EAAY2E,GACpDhD,GAAOc,EAAS,CAChBrD,MAAOI,EAAmCmC,EAAMvC,MAAOoC,GAAOpC,OAC9DC,IAAKG,EAAmCmC,EAAMtC,IAAKmC,GAAOnC,OAE9D+E,EAAc,KAClB,MARiBA,EAAcO,KAU9BE,EAAYC,GAAmBlC,GAAiB,IACjDR,kBAAEA,GAAyC1B,EAC3CqE,EAAyB1B,EAAgB,OACpC7B,GAASxB,QACVoC,IAAsBA,EAAkBZ,EAAMpC,SAAUgD,EAAkBZ,EAAMnC,OACzE2F,EAA2CxD,EAAMpC,MAAO8C,EAAUC,IAAiB6C,EAA2CxD,EAAMnC,IAAK6C,EAAUC,IAC/J,CACCC,EACAZ,EACAxB,EACAkC,EACAC,IAEA8C,EAAiBvE,EAAMwE,WAAuC,YAA1BxE,EAAMyE,iBAAiCJ,EAC3EI,EAAkBF,EAAiB,UAAY,KACnD,MAAO,IACArF,EACH4B,QACAiB,WACAzC,aACAoE,gBACAC,mBACAc,kBACAF,iBACA,iBAAAG,GACIb,EAAW3E,EAAS0E,YACxB,EACAC,aACA,aAAAc,CAAezB,GACP5D,GAAYJ,EAAS0F,eAAe1B,EAC5C,EACA2B,WAAY3B,GACD4B,QAAQnB,GAAoBT,EAAKtE,QAAQ+E,EAAiBjF,QAAU,GAAKwE,EAAKtE,QAAQ+E,EAAiBhF,MAAQ,IAAMO,EAAS6F,eAAe7B,KAAUhE,EAASW,kBAAkBqD,IAE7LsB,UAAWtB,GACAhE,EAASsF,UAAUtB,IAAaoB,EAA2CpB,EAAMZ,EAAkBgB,SAAS5E,MAAO4D,EAAkBgB,SAAS3E,KAEzJwF,aACAC,cACA,cAAAY,GACItB,EAAc,MACd3B,EAAS,KACb,EAER,CCyCkBkD,CAAsB,CAAArD,eAClCA,KACInB,EACJP,YAGI4B,cAAEA,EAAAoD,gBAAeA,EAAAC,gBAAiBA,GACtCC,EACE3E,EACAlB,EACAgB;AAGJ,OACE8E,EAACC,EAAA,CACCC,IAAKhF,EACLhB,QACAuC,gBACAoD,kBACAC,qBACI1E,GAGV","x_google_ignoreList":[0]}
@@ -1,10 +1,10 @@
1
- import{jsxs as a,jsx as e}from"react/jsx-runtime";import l from"react";import{Icon as n}from"../Icon/Icon.js";import{c as t}from"../../index-DiYWUa65.js";import{IconButton as r}from"../IconButton/IconButton.js";import '../../assets/CalloutBanner.css';const c={calloutBanner:"_calloutBanner_6h1y8_1",calloutBanner__icon:"_calloutBanner__icon_6h1y8_12","calloutBanner__meta-title":"_calloutBanner__meta-title_6h1y8_21","calloutBanner__meta-label":"_calloutBanner__meta-label_6h1y8_19",calloutBanner__start:"_calloutBanner__start_6h1y8_17",calloutBanner__end:"_calloutBanner__end_6h1y8_38",calloutBanner__dismiss:"_calloutBanner__dismiss_6h1y8_45",calloutBanner__meta:"_calloutBanner__meta_6h1y8_19","calloutBanner__meta-content":"_calloutBanner__meta-content_6h1y8_62","calloutBanner__header--row":"_calloutBanner__header--row_6h1y8_74","calloutBanner__meta-top":"_calloutBanner__meta-top_6h1y8_79","calloutBanner__custom-asset":"_calloutBanner__custom-asset_6h1y8_89","calloutBanner__meta-description":"_calloutBanner__meta-description_6h1y8_103","calloutBanner__severity-label":"_calloutBanner__severity-label_6h1y8_108","calloutBanner__default-asset--center":"_calloutBanner__default-asset--center_6h1y8_119","calloutBanner--critical":"_calloutBanner--critical_6h1y8_125","calloutBanner--primary":"_calloutBanner--primary_6h1y8_129","calloutBanner--secondary":"_calloutBanner--secondary_6h1y8_133","calloutBanner--tertiary":"_calloutBanner--tertiary_6h1y8_142","calloutBanner--success":"_calloutBanner--success_6h1y8_151","calloutBanner--information":"_calloutBanner--information_6h1y8_177","calloutBanner--neutral":"_calloutBanner--neutral_6h1y8_203"},o=t(c.calloutBanner,{variants:{emphasis:{primary:c["calloutBanner--primary"],secondary:c["calloutBanner--secondary"],tertiary:c["calloutBanner--tertiary"]},styleVariant:{critical:c["calloutBanner--critical"],success:c["calloutBanner--success"],information:c["calloutBanner--information"],neutral:c["calloutBanner--neutral"]},headerLayout:{row:c["calloutBanner__header--row"],column:c["calloutBanner__header-column"]}},defaultVariants:{emphasis:"primary",styleVariant:"critical"}}),i={critical:{icon:"circle-exclamation",severityLabel:"Critical",role:"alert"},success:{icon:"check-circle",severityLabel:"Success",role:"status"},information:{icon:"info-circle",severityLabel:"Information",role:"status"},neutral:{icon:"check-circle",severityLabel:"",role:"region"}},_=({title:t,description:_,label:u,children:m,styleVariant:d="critical",emphasis:B="primary",headingLevel:h="h3",dismissButtonTooltipLabel:y,onDismiss:p,customAsset:f,hideIllustration:v=!1,alignButtons:b="left",headerLayout:N="column",severityLabel:L,role:x,dismissButtonProps:I={"aria-label":"Dismiss banner"},...V})=>{const g="function"==typeof p,{icon:w,severityLabel:j,role:P}=i[d],z=h,A=l.useId(),S=l.useId(),k=L??j,C=x||P,D=l.Children.toArray(m),E=D.find(a=>l.isValidElement(a)&&a.type===s),$=D.filter(a=>!(l.isValidElement(a)&&a.type===s)),q=!_;/* @__PURE__ */
2
- return a("div",{className:o({emphasis:B,styleVariant:d}),role:C,"aria-labelledby":A,"aria-describedby":_?S:void 0,...V,children:[
3
- /* @__PURE__ */a("div",{className:c.calloutBanner__start,children:[!v&&/* @__PURE__ */e("div",f?{className:c["calloutBanner__custom-asset"],children:f}:{className:q?c["calloutBanner__default-asset--center"]:void 0,children:/* @__PURE__ */e(n,{iconName:w,iconPrefix:"fas",className:c.calloutBanner__icon,iconSize:"1.25x",padding:"roomy"})}),
4
- /* @__PURE__ */a("div",{className:c.calloutBanner__meta,children:[g&&/* @__PURE__ */e("div",{className:c.calloutBanner__dismiss,children:/* @__PURE__ */e(r,{onPress:p,styleVariant:"white",emphasis:"quaternary",size:"sm",iconProps:{iconName:"close",iconPrefix:"far",iconSize:"1x"},tooltipLabel:y,...I})}),
5
- /* @__PURE__ */a("div",{className:[c["calloutBanner__meta-content"],"right"===b?c["calloutBanner__meta-right"]:"","row"===N?c["calloutBanner__header--row"]:""].filter(Boolean).join(" "),children:[
6
- /* @__PURE__ */e("div",{children:/* @__PURE__ */a("div",{className:`${c["calloutBanner__meta-top"]} ${g?c["calloutBanner__meta-top-dismiss"]:""}`,children:[
7
- /* @__PURE__ */a(z,{id:A,className:c["calloutBanner__meta-title"],children:[
8
- /* @__PURE__ */a("span",{className:c["calloutBanner__severity-label"],dir:"auto",children:[k,k?": ":""]}),
9
- /* @__PURE__ */e("bdi",{dir:"auto",children:t})]}),_&&/* @__PURE__ */e("p",{id:S,className:c["calloutBanner__meta-description"],children:_||null})]})}),u&&/* @__PURE__ */e("div",{className:c["calloutBanner__meta-label"],children:u}),E&&/* @__PURE__ */e("div",{className:c["calloutBanner__meta-label"],children:E.props.children})]})]})]}),$.length>0&&/* @__PURE__ */e("div",{className:c.calloutBanner__end,children:$})]})},s=({children:a})=>/* @__PURE__ */e("div",{className:c["calloutBanner__meta-label"],children:a});_.Action=s;export{_ as CalloutBanner,s as CalloutBannerAction,_ as default};
1
+ import{jsxs as a,jsx as e}from"react/jsx-runtime";import l from"react";import{Icon as n}from"../Icon/Icon.js";import{c as t}from"../../index-CCUt_dAN.js";import{IconButton as r}from"../IconButton/IconButton.js";import '../../assets/CalloutBanner.css';const c={calloutBanner:"_calloutBanner_8kmdu_1",calloutBanner__icon:"_calloutBanner__icon_8kmdu_12","calloutBanner__meta-title":"_calloutBanner__meta-title_8kmdu_21","calloutBanner__meta-label":"_calloutBanner__meta-label_8kmdu_19",calloutBanner__start:"_calloutBanner__start_8kmdu_17",calloutBanner__end:"_calloutBanner__end_8kmdu_38",calloutBanner__dismiss:"_calloutBanner__dismiss_8kmdu_45",calloutBanner__meta:"_calloutBanner__meta_8kmdu_19","calloutBanner__meta-content":"_calloutBanner__meta-content_8kmdu_62","calloutBanner__header--row":"_calloutBanner__header--row_8kmdu_74","calloutBanner__meta-top":"_calloutBanner__meta-top_8kmdu_79","calloutBanner__custom-asset":"_calloutBanner__custom-asset_8kmdu_89","calloutBanner__meta-description":"_calloutBanner__meta-description_8kmdu_103","calloutBanner__severity-label":"_calloutBanner__severity-label_8kmdu_108","calloutBanner__default-asset--center":"_calloutBanner__default-asset--center_8kmdu_119","calloutBanner--critical":"_calloutBanner--critical_8kmdu_125","calloutBanner--primary":"_calloutBanner--primary_8kmdu_129","calloutBanner--secondary":"_calloutBanner--secondary_8kmdu_133","calloutBanner--tertiary":"_calloutBanner--tertiary_8kmdu_142","calloutBanner--success":"_calloutBanner--success_8kmdu_151","calloutBanner--information":"_calloutBanner--information_8kmdu_177","calloutBanner--neutral":"_calloutBanner--neutral_8kmdu_203"},o=t(c.calloutBanner,{variants:{emphasis:{primary:c["calloutBanner--primary"],secondary:c["calloutBanner--secondary"],tertiary:c["calloutBanner--tertiary"]},styleVariant:{critical:c["calloutBanner--critical"],success:c["calloutBanner--success"],information:c["calloutBanner--information"],neutral:c["calloutBanner--neutral"]},headerLayout:{row:c["calloutBanner__header--row"],column:c["calloutBanner__header-column"]}},defaultVariants:{emphasis:"primary",styleVariant:"critical"}}),i={critical:{icon:"circle-exclamation",severityLabel:"Critical",role:"alert"},success:{icon:"check-circle",severityLabel:"Success",role:"status"},information:{icon:"info-circle",severityLabel:"Information",role:"status"},neutral:{icon:"check-circle",severityLabel:"",role:"region"}},_=({title:t,description:_,label:u,children:m,styleVariant:d="critical",emphasis:B="primary",headingLevel:h="h3",dismissButtonTooltipLabel:y,onDismiss:p,customAsset:f,hideIllustration:v=!1,alignButtons:b="left",headerLayout:k="column",severityLabel:N,role:L,dismissButtonProps:x={"aria-label":"Dismiss banner"},...I})=>{const V="function"==typeof p,{icon:g,severityLabel:w,role:j}=i[d],P=h,z=l.useId(),A=l.useId(),S=N??w,C=L||j,D=l.Children.toArray(m),E=D.find(a=>l.isValidElement(a)&&a.type===s),$=D.filter(a=>!(l.isValidElement(a)&&a.type===s)),q=!_;/* @__PURE__ */
2
+ return a("div",{className:o({emphasis:B,styleVariant:d}),role:C,"aria-labelledby":z,"aria-describedby":_?A:void 0,...I,children:[
3
+ /* @__PURE__ */a("div",{className:c.calloutBanner__start,children:[!v&&/* @__PURE__ */e("div",f?{className:c["calloutBanner__custom-asset"],children:f}:{className:q?c["calloutBanner__default-asset--center"]:void 0,children:/* @__PURE__ */e(n,{iconName:g,iconPrefix:"fas",className:c.calloutBanner__icon,iconSize:"1.25x",padding:"roomy"})}),
4
+ /* @__PURE__ */a("div",{className:c.calloutBanner__meta,children:[V&&/* @__PURE__ */e("div",{className:c.calloutBanner__dismiss,children:/* @__PURE__ */e(r,{onPress:p,styleVariant:"white",emphasis:"quaternary",size:"sm",iconProps:{iconName:"close",iconPrefix:"far",iconSize:"1x"},tooltipLabel:y,...x})}),
5
+ /* @__PURE__ */a("div",{className:[c["calloutBanner__meta-content"],"right"===b?c["calloutBanner__meta-right"]:"","row"===k?c["calloutBanner__header--row"]:""].filter(Boolean).join(" "),children:[
6
+ /* @__PURE__ */e("div",{children:/* @__PURE__ */a("div",{className:`${c["calloutBanner__meta-top"]} ${V?c["calloutBanner__meta-top-dismiss"]:""}`,children:[
7
+ /* @__PURE__ */a(P,{id:z,className:c["calloutBanner__meta-title"],children:[
8
+ /* @__PURE__ */a("span",{className:c["calloutBanner__severity-label"],dir:"auto",children:[S,S?": ":""]}),
9
+ /* @__PURE__ */e("bdi",{dir:"auto",children:t})]}),_&&/* @__PURE__ */e("p",{id:A,className:c["calloutBanner__meta-description"],children:_||null})]})}),u&&/* @__PURE__ */e("div",{className:c["calloutBanner__meta-label"],children:u}),E&&/* @__PURE__ */e("div",{className:c["calloutBanner__meta-label"],children:E.props.children})]})]})]}),$.length>0&&/* @__PURE__ */e("div",{className:c.calloutBanner__end,children:$})]})},s=({children:a})=>/* @__PURE__ */e("div",{className:c["calloutBanner__meta-label"],children:a});_.Action=s;export{_ as CalloutBanner,s as CalloutBannerAction,_ as default};
10
10
  //# sourceMappingURL=CalloutBanner.js.map
@@ -1,2 +1,2 @@
1
- import{jsx as e}from"react/jsx-runtime";import{c as a}from"../../index-DiYWUa65.js";import{forwardRef as i}from"react";import '../../assets/CardSection.css';const r="_cardContainer_1uwwa_12",c="_cardGrid_1uwwa_24",d="_contentCell_1uwwa_33",s="_contentBox_1uwwa_40",t="_mediaCell_1uwwa_51",n=a("_cardSection_1uwwa_1",{variants:{isReversed:{true:"_isReversed_1uwwa_65"}},defaultVariants:{}}),l=i(({isReversed:a=!1,children:i},d)=>/* @__PURE__ */e("section",{ref:d,className:n({isReversed:a}),"data-testid":"card-section",children:/* @__PURE__ */e("div",{className:r,children:/* @__PURE__ */e("div",{className:c,children:i})})}));l.displayName="CardSection";const o=({children:a})=>/* @__PURE__ */e("div",{className:d,children:/* @__PURE__ */e("article",{className:s,children:a})});o.displayName="CardSection.Content";const _=({children:a})=>/* @__PURE__ */e("figure",{className:t,children:a});_.displayName="CardSection.Media",l.Content=o,l.Media=_;export{l as default};
1
+ import{jsx as e}from"react/jsx-runtime";import{c as a}from"../../index-CCUt_dAN.js";import{forwardRef as i}from"react";import '../../assets/CardSection.css';const r="_cardContainer_1uwwa_12",d="_cardGrid_1uwwa_24",s="_contentCell_1uwwa_33",c="_contentBox_1uwwa_40",t="_mediaCell_1uwwa_51",n=a("_cardSection_1uwwa_1",{variants:{isReversed:{true:"_isReversed_1uwwa_65"}},defaultVariants:{}}),l=i(({isReversed:a=!1,children:i},s)=>/* @__PURE__ */e("section",{ref:s,className:n({isReversed:a}),"data-testid":"card-section",children:/* @__PURE__ */e("div",{className:r,children:/* @__PURE__ */e("div",{className:d,children:i})})}));l.displayName="CardSection";const o=({children:a})=>/* @__PURE__ */e("div",{className:s,children:/* @__PURE__ */e("article",{className:c,children:a})});o.displayName="CardSection.Content";const _=({children:a})=>/* @__PURE__ */e("figure",{className:t,children:a});_.displayName="CardSection.Media",l.Content=o,l.Media=_;export{l as default};
2
2
  //# sourceMappingURL=CardSection.js.map
@@ -176,8 +176,15 @@ export interface CarouselBaseProps {
176
176
  * Callback fired when the autoplay button is pressed
177
177
  */
178
178
  onAutoplayPress?: (state: 'play' | 'pause') => void;
179
+ /**
180
+ * Callback fired whenever the active page changes, regardless of input method
181
+ * (arrow buttons, trackpad scroll, touch swipe, keyboard navigation, dot press, autoplay)
182
+ * Use this to track all carousel navigation events, e.g. for analytics
183
+ * @param index - zero-based index of the new active page
184
+ */
185
+ onPageChange?: (index: number) => void;
179
186
  }
180
187
  type ResponsiveKeys = 'itemsPerPage' | 'spaceBetweenItems' | 'scrollPadding' | 'showArrowsOnHover' | 'arrowSize' | 'hideDots';
181
188
  export type CarouselProps = WithResponsive<CarouselBaseProps, ResponsiveKeys>;
182
- export declare const Carousel: ({ children, "aria-label": ariaLabel, "aria-describedby": ariaDescribedby, looping, itemsPerPage, spaceBetweenItems, scrollPadding, iconType, arrowStyleVariant, arrowSize, hideDisabledArrow, showArrowsOnHover, focusStyle, dotsSize, dotsVariant, hideDots, autoPlay, autoPlayInterval, autoPlayStyleVariant, autoPlayControlSize, mouseDragging, carouselWrapperClassName, prevArrowClassName, nextArrowClassName, autoplayControlClassName, dotsContainerClassName, dotsWrapperClassName, dotClassName, activeDotClassName, itemWrapperClassName, activeItemClassName, onArrowPress, onDotPress, onAutoplayPress, }: CarouselProps) => import("react/jsx-runtime").JSX.Element;
189
+ export declare const Carousel: ({ children, "aria-label": ariaLabel, "aria-describedby": ariaDescribedby, looping, itemsPerPage, spaceBetweenItems, scrollPadding, iconType, arrowStyleVariant, arrowSize, hideDisabledArrow, showArrowsOnHover, focusStyle, dotsSize, dotsVariant, hideDots, autoPlay, autoPlayInterval, autoPlayStyleVariant, autoPlayControlSize, mouseDragging, carouselWrapperClassName, prevArrowClassName, nextArrowClassName, autoplayControlClassName, dotsContainerClassName, dotsWrapperClassName, dotClassName, activeDotClassName, itemWrapperClassName, activeItemClassName, onArrowPress, onDotPress, onAutoplayPress, onPageChange, }: CarouselProps) => import("react/jsx-runtime").JSX.Element;
183
190
  export default Carousel;
@@ -1,9 +1,9 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import r,{useRef as a,useState as s,useEffect as o}from"react";import{c as i}from"../../index-DiYWUa65.js";import{C as n,a as l,b as d,c as u,d as c}from"../../IconButton.module-C7YCy-MU.js";import{CarouselButton as m}from"./CarouselButton/CarouselButton.js";import{CarouselDots as p}from"./CarouselDots/CarouselDots.js";import{AutoplayControl as f}from"./AutoplayControl/AutoplayControl.js";import{focusStyleVariants as v}from"../../utils/focus/focusStyles.js";import{useFocusRing as g}from"@react-aria/focus";import{resolveResponsiveProp as _}from"../../utils/breakpoint/responsive.js";import{useBreakpoint as h}from"../../utils/breakpoint/hooks/useBreakpoint.js";import '../../assets/Carousel.css';const y={carouselWrapper:"_carouselWrapper_gzlsx_2",showPartialItems:"_showPartialItems_gzlsx_14",carousel:"_carousel_gzlsx_2",hasScrollPadding:"_hasScrollPadding_gzlsx_25",scroller:"_scroller_gzlsx_43",item:"_item_gzlsx_84",slideLeft:"_slideLeft_gzlsx_122",slideRight:"_slideRight_gzlsx_126",controls:"_controls_gzlsx_149",defaultPrevButton:"_defaultPrevButton_gzlsx_160",defaultNextButton:"_defaultNextButton_gzlsx_168",defaultDotsContainer:"_defaultDotsContainer_gzlsx_177",defaultCarouselWrapper:"_defaultCarouselWrapper_gzlsx_188",defaultAutoplayControl:"_defaultAutoplayControl_gzlsx_195",showOnHover:"_showOnHover_gzlsx_204",hidden:"_hidden_gzlsx_214",hiddenTabs:"_hiddenTabs_gzlsx_245",infinite:"_infinite_gzlsx_264",native:"_native_gzlsx_269",autoplayControlWrapper:"_autoplayControlWrapper_gzlsx_273"},x=i(y.carousel,{variants:{looping:{infinite:y.infinite,backToStart:y.native,off:void 0}}}),b=({children:i=[],"aria-label":b,"aria-describedby":C,looping:N="off",itemsPerPage:P=1,spaceBetweenItems:w=0,scrollPadding:z,iconType:S="chevron",arrowStyleVariant:D="neutral",arrowSize:$="md",hideDisabledArrow:A=!1,showArrowsOnHover:L=!1,focusStyle:k="default",dotsSize:E="md",dotsVariant:T="standard",hideDots:I=!1,autoPlay:B=!1,autoPlayInterval:W=2e3,autoPlayStyleVariant:j="neutralVibrant",autoPlayControlSize:M="md",mouseDragging:q=!0,carouselWrapperClassName:H="",prevArrowClassName:O="",nextArrowClassName:R="",autoplayControlClassName:V="",dotsContainerClassName:F="",dotsWrapperClassName:X="",dotClassName:Y="",activeDotClassName:K="",itemWrapperClassName:G="",activeItemClassName:J="",onArrowPress:Q,onDotPress:U,onAutoplayPress:Z})=>{const ee=r.Children.toArray(i),te=ee.length,re=h(),ae=_(P,re)??1,se=_(w,re)??0,oe=_(z,re)??void 0,ie=_($,re)??"md",ne=_(I,re)??!1,le=Math.max(1,ae),de=Math.ceil(te/le),ue=!ne&&de>1,ce=a(null),me=a(null),[pe,fe]=s(0),[ve,ge]=s(0),[_e,he]=s(!1),[ye,xe]=s(!1),[be,Ce]=s(!1),[Ne]=s(!1),[Pe,we]=s(null),ze=(e,t)=>e||t,Se=e=>{if(!(e===pe||e<0||e>=de)&&ce.current){const t=ce.current.querySelector(`[data-slide-tab="true"][data-index="${e}"]`);t&&t.click()}};o(()=>{if(!ce.current||!q)return;const e=e=>{_e&&(e.preventDefault(),e.stopPropagation(),setTimeout(()=>{he(!1)},0))},t=e=>{we({x:e.clientX,y:e.clientY})},r=e=>{if(null===Pe)return;const t=Math.abs(e.clientX-Pe.x),r=Math.abs(e.clientY-Pe.y);Math.sqrt(t*t+r*r)>5&&he(!0)},a=()=>{_e?setTimeout(()=>{he(!1),we(null)},50):we(null)},s=ce.current;return s.addEventListener("mousedown",t,!0),s.addEventListener("mousemove",r,!0),s.addEventListener("mouseup",a,!0),s.addEventListener("click",e,!0),()=>{s.removeEventListener("mousedown",t,!0),s.removeEventListener("mousemove",r,!0),s.removeEventListener("mouseup",a,!0),s.removeEventListener("click",e,!0)}},[q,_e,Pe,5]),o(()=>{if(ce.current){const e=ce.current.querySelector(`.${y.scroller}`);e&&e instanceof HTMLElement&&(ve<pe?(e.classList.remove(y.slideLeft),e.classList.add(y.slideRight)):ve>pe&&(e.classList.remove(y.slideRight),e.classList.add(y.slideLeft)))}},[pe,ve]),o(()=>{if(!ce.current)return;const e=()=>{if(!ce.current)return;const e=ce.current.querySelector('[data-slide-tab="true"][aria-selected="true"]');if(e){const t=e.dataset.index;if("string"==typeof t&&t.length>0){const e=parseInt(t,10);!isNaN(e)&&e!==pe&&e>=0&&e<de&&(ge(pe),fe(e))}}},t=new MutationObserver(t=>{let r=!1;t.forEach(e=>{"attributes"===e.type&&"aria-selected"===e.attributeName&&(r=!0)}),r&&setTimeout(e,10)});ce.current.querySelectorAll('[data-slide-tab="true"]').forEach(e=>{t.observe(e,{attributes:!0,attributeFilter:["aria-selected"]})}),e();const r=setInterval(e,500);return()=>{t.disconnect(),clearInterval(r)}},[pe,de]);const De=L?{onMouseEnter:()=>xe(!0),onMouseLeave:()=>xe(!1),onFocus:()=>Ce(!0),onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||Ce(!1)}}:{},$e=de>1&&(!L||ye||be),Ae=(()=>{const e={};return 1!==ae&&(e["--items-per-page"]=String(le)),se>0&&(e["--space-between-items"]=`${se}px`),oe&&(e["--scroll-padding"]=oe),Object.keys(e).length>0?e:void 0})(),{focusProps:Le,isFocusVisible:ke}=g(),Ee=(()=>{const e=pe*Math.floor(le),t=Math.min(e+Math.ceil(le),te),r=[];for(let a=e;a<t;a++)r.push(a);return r})();/* @__PURE__ */
2
- return e("div",{className:(()=>{const e=[y.carouselWrapper];return Number.isInteger(le)||e.push(y.showPartialItems),oe&&e.push(y.hasScrollPadding),H&&H.trim()?e.push(H):e.push(y.defaultCarouselWrapper),e.join(" ")})(),ref:ce,style:Ae,"data-dots-size":E,...De,"data-arrows-visible":$e?"true":"false","data-transitioning":Ne?"true":void 0,"data-scroll-padding":oe,role:"region","aria-label":(()=>{if(b)return b;return`Carousel with ${te} items, currently showing slide ${pe+1} of ${de}${B?", autoplay enabled":""}`})(),"aria-describedby":C,"aria-roledescription":"carousel",children:/* @__PURE__ */t(n,{className:`${x({looping:N})}`,loop:"infinite"===N?"infinite":"backToStart"===N?"native":"off"!==N?N:void 0,ref:me,autoplay:B,autoplayInterval:W,mouseDragging:q&&!Ne,onDragStart:e=>{he(!0),e&&e.nativeEvent&&we({x:e.nativeEvent.clientX,y:e.nativeEvent.clientY})},onDragEnd:()=>{setTimeout(()=>{he(!1)},50)},"data-dragging":_e?"true":"false",itemsPerPage:le,scrollPadding:oe,"data-has-space-between":se>0?"true":void 0,"data-items-per-page":1!==ae?le.toString():void 0,children:[
3
- /* @__PURE__ */e(l,{className:`${y.scroller} ${v({focusStyle:k})}`,...Le,"data-focused":!!ke||void 0,"data-focus-visible":!!ke||void 0,"data-transitioning":Ne?"true":void 0,style:(()=>{const e={};if(se>=0&&(e.gap=`${se}px`),ae>1&&se>0){const t=se*(le-1)/le;e.gridAutoColumns=`calc(${100/le}% - ${t}px)`}else ae>1&&(e.gridAutoColumns=100/le+"%");return e})(),tabIndex:0,role:"region","aria-label":"Carousel content",onKeyDown:e=>{if("ArrowLeft"===e.key){e.preventDefault();const t=ce.current?.querySelector('[dir="prev"]');t&&!t.disabled&&t.click()}else if("ArrowRight"===e.key){e.preventDefault();const t=ce.current?.querySelector('[dir="next"]');t&&!t.disabled&&t.click()}else"Home"===e.key?(e.preventDefault(),Se(0)):"End"===e.key&&(e.preventDefault(),Se(de-1))},children:ee.map((t,r)=>{const a=Ee.includes(r),s=[G||"",y.item,a&&J?J:""].filter(Boolean).join(" ");/* @__PURE__ */
4
- return e(d,{className:s,"data-is-active":a?"true":void 0,"data-item-index":r,"aria-label":`Slide ${r+1} of ${te}`,children:t},r)})}),
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import a,{useRef as r,useState as s,useEffect as o}from"react";import{c as n}from"../../index-CCUt_dAN.js";import{C as i,a as l,b as d,c as u,d as c}from"../../IconButton.module-C7YCy-MU.js";import{CarouselButton as m}from"./CarouselButton/CarouselButton.js";import{CarouselDots as p}from"./CarouselDots/CarouselDots.js";import{AutoplayControl as f}from"./AutoplayControl/AutoplayControl.js";import{focusStyleVariants as v}from"../../utils/focus/focusStyles.js";import{useFocusRing as g}from"@react-aria/focus";import{resolveResponsiveProp as h}from"../../utils/breakpoint/responsive.js";import{useBreakpoint as _}from"../../utils/breakpoint/hooks/useBreakpoint.js";import '../../assets/Carousel.css';const y={carouselWrapper:"_carouselWrapper_gzlsx_2",showPartialItems:"_showPartialItems_gzlsx_14",carousel:"_carousel_gzlsx_2",hasScrollPadding:"_hasScrollPadding_gzlsx_25",scroller:"_scroller_gzlsx_43",item:"_item_gzlsx_84",slideLeft:"_slideLeft_gzlsx_122",slideRight:"_slideRight_gzlsx_126",controls:"_controls_gzlsx_149",defaultPrevButton:"_defaultPrevButton_gzlsx_160",defaultNextButton:"_defaultNextButton_gzlsx_168",defaultDotsContainer:"_defaultDotsContainer_gzlsx_177",defaultCarouselWrapper:"_defaultCarouselWrapper_gzlsx_188",defaultAutoplayControl:"_defaultAutoplayControl_gzlsx_195",showOnHover:"_showOnHover_gzlsx_204",hidden:"_hidden_gzlsx_214",hiddenTabs:"_hiddenTabs_gzlsx_245",infinite:"_infinite_gzlsx_264",native:"_native_gzlsx_269",autoplayControlWrapper:"_autoplayControlWrapper_gzlsx_273"},x=n(y.carousel,{variants:{looping:{infinite:y.infinite,backToStart:y.native,off:void 0}}}),b=({children:n=[],"aria-label":b,"aria-describedby":C,looping:N="off",itemsPerPage:P=1,spaceBetweenItems:w=0,scrollPadding:z,iconType:S="chevron",arrowStyleVariant:D="neutral",arrowSize:$="md",hideDisabledArrow:A=!1,showArrowsOnHover:L=!1,focusStyle:k="default",dotsSize:E="md",dotsVariant:I="standard",hideDots:T=!1,autoPlay:B=!1,autoPlayInterval:W=2e3,autoPlayStyleVariant:j="neutralVibrant",autoPlayControlSize:M="md",mouseDragging:q=!0,carouselWrapperClassName:H="",prevArrowClassName:O="",nextArrowClassName:R="",autoplayControlClassName:V="",dotsContainerClassName:F="",dotsWrapperClassName:X="",dotClassName:Y="",activeDotClassName:K="",itemWrapperClassName:G="",activeItemClassName:J="",onArrowPress:Q,onDotPress:U,onAutoplayPress:Z,onPageChange:ee})=>{const te=a.Children.toArray(n),ae=te.length,re=_(),se=h(P,re)??1,oe=h(w,re)??0,ne=h(z,re)??void 0,ie=h($,re)??"md",le=h(T,re)??!1,de=Math.max(1,se),ue=Math.ceil(ae/de),ce=!le&&ue>1,me=r(null),pe=r(null),[fe,ve]=s(0),[ge,he]=s(0),[_e,ye]=s(!1),[xe,be]=s(!1),[Ce,Ne]=s(!1),[Pe]=s(!1),[we,ze]=s(null),Se=(e,t)=>e||t,De=e=>{if(!(e===fe||e<0||e>=ue)&&me.current){const t=me.current.querySelector(`[data-slide-tab="true"][data-index="${e}"]`);t&&t.click()}};o(()=>{if(!me.current||!q)return;const e=e=>{_e&&(e.preventDefault(),e.stopPropagation(),setTimeout(()=>{ye(!1)},0))},t=e=>{ze({x:e.clientX,y:e.clientY})},a=e=>{if(null===we)return;const t=Math.abs(e.clientX-we.x),a=Math.abs(e.clientY-we.y);Math.sqrt(t*t+a*a)>5&&ye(!0)},r=()=>{_e?setTimeout(()=>{ye(!1),ze(null)},50):ze(null)},s=me.current;return s.addEventListener("mousedown",t,!0),s.addEventListener("mousemove",a,!0),s.addEventListener("mouseup",r,!0),s.addEventListener("click",e,!0),()=>{s.removeEventListener("mousedown",t,!0),s.removeEventListener("mousemove",a,!0),s.removeEventListener("mouseup",r,!0),s.removeEventListener("click",e,!0)}},[q,_e,we,5]),o(()=>{if(me.current){const e=me.current.querySelector(`.${y.scroller}`);e&&e instanceof HTMLElement&&(ge<fe?(e.classList.remove(y.slideLeft),e.classList.add(y.slideRight)):ge>fe&&(e.classList.remove(y.slideRight),e.classList.add(y.slideLeft)))}},[fe,ge]),o(()=>{if(!me.current)return;const e=()=>{if(!me.current)return;const e=me.current.querySelector('[data-slide-tab="true"][aria-selected="true"]');if(e){const t=e.dataset.index;if("string"==typeof t&&t.length>0){const e=parseInt(t,10);!isNaN(e)&&e!==fe&&e>=0&&e<ue&&(he(fe),ve(e))}}},t=new MutationObserver(t=>{let a=!1;t.forEach(e=>{"attributes"===e.type&&"aria-selected"===e.attributeName&&(a=!0)}),a&&setTimeout(e,10)});me.current.querySelectorAll('[data-slide-tab="true"]').forEach(e=>{t.observe(e,{attributes:!0,attributeFilter:["aria-selected"]})}),e();const a=setInterval(e,500);return()=>{t.disconnect(),clearInterval(a)}},[fe,ue]);const $e=L?{onMouseEnter:()=>be(!0),onMouseLeave:()=>be(!1),onFocus:()=>Ne(!0),onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||Ne(!1)}}:{},Ae=ue>1&&(!L||xe||Ce),Le=(()=>{const e={};return 1!==se&&(e["--items-per-page"]=String(de)),oe>0&&(e["--space-between-items"]=`${oe}px`),ne&&(e["--scroll-padding"]=ne),Object.keys(e).length>0?e:void 0})(),{focusProps:ke,isFocusVisible:Ee}=g(),Ie=(()=>{const e=fe*Math.floor(de),t=Math.min(e+Math.ceil(de),ae),a=[];for(let r=e;r<t;r++)a.push(r);return a})();/* @__PURE__ */
2
+ return e("div",{className:(()=>{const e=[y.carouselWrapper];return Number.isInteger(de)||e.push(y.showPartialItems),ne&&e.push(y.hasScrollPadding),H&&H.trim()?e.push(H):e.push(y.defaultCarouselWrapper),e.join(" ")})(),ref:me,style:Le,"data-dots-size":E,...$e,"data-arrows-visible":Ae?"true":"false","data-transitioning":Pe?"true":void 0,"data-scroll-padding":ne,role:"region","aria-label":(()=>{if(b)return b;return`Carousel with ${ae} items, currently showing slide ${fe+1} of ${ue}${B?", autoplay enabled":""}`})(),"aria-describedby":C,"aria-roledescription":"carousel",children:/* @__PURE__ */t(i,{className:`${x({looping:N})}`,loop:"infinite"===N?"infinite":"backToStart"===N?"native":"off"!==N?N:void 0,ref:pe,autoplay:B,autoplayInterval:W,mouseDragging:q&&!Pe,onDragStart:e=>{ye(!0),e&&e.nativeEvent&&ze({x:e.nativeEvent.clientX,y:e.nativeEvent.clientY})},onDragEnd:()=>{setTimeout(()=>{ye(!1)},50)},"data-dragging":_e?"true":"false",itemsPerPage:de,scrollPadding:ne,"data-has-space-between":oe>0?"true":void 0,"data-items-per-page":1!==se?de.toString():void 0,onActivePageIndexChange:ee?({index:e})=>ee(e):void 0,children:[
3
+ /* @__PURE__ */e(l,{className:`${y.scroller} ${v({focusStyle:k})}`,...ke,"data-focused":!!Ee||void 0,"data-focus-visible":!!Ee||void 0,"data-transitioning":Pe?"true":void 0,style:(()=>{const e={};if(oe>=0&&(e.gap=`${oe}px`),se>1&&oe>0){const t=oe*(de-1)/de;e.gridAutoColumns=`calc(${100/de}% - ${t}px)`}else se>1&&(e.gridAutoColumns=100/de+"%");return e})(),tabIndex:0,role:"region","aria-label":"Carousel content",onKeyDown:e=>{if("ArrowLeft"===e.key){e.preventDefault();const t=me.current?.querySelector('[dir="prev"]');t&&!t.disabled&&t.click()}else if("ArrowRight"===e.key){e.preventDefault();const t=me.current?.querySelector('[dir="next"]');t&&!t.disabled&&t.click()}else"Home"===e.key?(e.preventDefault(),De(0)):"End"===e.key&&(e.preventDefault(),De(ue-1))},children:te.map((t,a)=>{const r=Ie.includes(a),s=[G||"",y.item,r&&J?J:""].filter(Boolean).join(" ");/* @__PURE__ */
4
+ return e(d,{className:s,"data-is-active":r?"true":void 0,"data-item-index":a,"aria-label":`Slide ${a+1} of ${ae}`,children:t},a)})}),
5
5
  /* @__PURE__ */t("div",{className:`${y.controls} ${L?y.showOnHover:""}`,children:[
6
- /* @__PURE__ */e(m,{dir:"prev",variant:D,size:ie,focusStyle:k,iconType:S,hideDisabledArrow:A,onPress:()=>Q?.("prev"),className:`${ze(O,y.defaultPrevButton)} ${$e?"":y.hidden}`}),
7
- /* @__PURE__ */e(m,{dir:"next",variant:D,size:ie,focusStyle:k,iconType:S,hideDisabledArrow:A,onPress:()=>Q?.("next"),className:`${ze(R,y.defaultNextButton)} ${$e?"":y.hidden}`})]}),
8
- /* @__PURE__ */e("div",{className:y.hiddenTabs,children:/* @__PURE__ */e(u,{children:t=>/* @__PURE__ */e(c,{index:t.index,"data-index":t.index,"data-slide-tab":"true",tabIndex:-1},t.index)})}),B&&/* @__PURE__ */e("div",{className:`${y.autoplayControlWrapper} ${ze(V,y.defaultAutoplayControl)}`,children:/* @__PURE__ */e(f,{variant:j,size:M,className:"",onPress:Z})}),ue&&/* @__PURE__ */e(p,{totalItems:de,currentPage:pe,onDotClick:e=>Se(e),onPress:U,focusStyle:k,dotsSize:E,variant:T,className:ze(F,y.defaultDotsContainer),dotsWrapperClassName:X,dotClassName:Y,activeDotClassName:K,isTransitioning:Ne})]})})};export{b as Carousel,b as default};
6
+ /* @__PURE__ */e(m,{dir:"prev",variant:D,size:ie,focusStyle:k,iconType:S,hideDisabledArrow:A,onPress:()=>Q?.("prev"),className:`${Se(O,y.defaultPrevButton)} ${Ae?"":y.hidden}`}),
7
+ /* @__PURE__ */e(m,{dir:"next",variant:D,size:ie,focusStyle:k,iconType:S,hideDisabledArrow:A,onPress:()=>Q?.("next"),className:`${Se(R,y.defaultNextButton)} ${Ae?"":y.hidden}`})]}),
8
+ /* @__PURE__ */e("div",{className:y.hiddenTabs,children:/* @__PURE__ */e(u,{children:t=>/* @__PURE__ */e(c,{index:t.index,"data-index":t.index,"data-slide-tab":"true",tabIndex:-1},t.index)})}),B&&/* @__PURE__ */e("div",{className:`${y.autoplayControlWrapper} ${Se(V,y.defaultAutoplayControl)}`,children:/* @__PURE__ */e(f,{variant:j,size:M,className:"",onPress:Z})}),ce&&/* @__PURE__ */e(p,{totalItems:ue,currentPage:fe,onDotClick:e=>De(e),onPress:U,focusStyle:k,dotsSize:E,variant:I,className:Se(F,y.defaultDotsContainer),dotsWrapperClassName:X,dotClassName:Y,activeDotClassName:K,isTransitioning:Pe})]})})};export{b as Carousel,b as default};
9
9
  //# sourceMappingURL=Carousel.js.map