@react-spectrum/s2 0.10.0 → 0.11.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 (296) hide show
  1. package/dist/Accordion.cjs +2 -2
  2. package/dist/Accordion.css +2 -2
  3. package/dist/Accordion.mjs +2 -2
  4. package/dist/ActionBar.cjs +62 -62
  5. package/dist/ActionBar.css +61 -61
  6. package/dist/ActionBar.mjs +62 -62
  7. package/dist/ActionButton.cjs +202 -202
  8. package/dist/ActionButton.css +138 -138
  9. package/dist/ActionButton.mjs +202 -202
  10. package/dist/ActionButtonGroup.cjs +15 -15
  11. package/dist/ActionButtonGroup.css +9 -9
  12. package/dist/ActionButtonGroup.mjs +15 -15
  13. package/dist/Add.cjs +10 -10
  14. package/dist/Add.css +6 -6
  15. package/dist/Add.mjs +10 -10
  16. package/dist/AlertDialog.cjs +3 -3
  17. package/dist/AlertDialog.css +3 -3
  18. package/dist/AlertDialog.mjs +3 -3
  19. package/dist/Asterisk.cjs +6 -6
  20. package/dist/Asterisk.css +4 -4
  21. package/dist/Asterisk.mjs +6 -6
  22. package/dist/Avatar.cjs +14 -14
  23. package/dist/Avatar.css +14 -14
  24. package/dist/Avatar.mjs +14 -14
  25. package/dist/AvatarGroup.cjs +134 -134
  26. package/dist/AvatarGroup.css +33 -33
  27. package/dist/AvatarGroup.mjs +134 -134
  28. package/dist/Badge.cjs +206 -206
  29. package/dist/Badge.css +127 -127
  30. package/dist/Badge.mjs +206 -206
  31. package/dist/Breadcrumbs.cjs +254 -254
  32. package/dist/Breadcrumbs.css +109 -109
  33. package/dist/Breadcrumbs.mjs +254 -254
  34. package/dist/Button.cjs +341 -341
  35. package/dist/Button.css +177 -177
  36. package/dist/Button.mjs +341 -341
  37. package/dist/ButtonGroup.cjs +20 -20
  38. package/dist/ButtonGroup.css +15 -15
  39. package/dist/ButtonGroup.mjs +20 -20
  40. package/dist/Calendar.cjs +151 -139
  41. package/dist/Calendar.cjs.map +1 -1
  42. package/dist/Calendar.css +134 -134
  43. package/dist/Calendar.css.map +1 -1
  44. package/dist/Calendar.mjs +153 -141
  45. package/dist/Calendar.mjs.map +1 -1
  46. package/dist/Card.cjs +304 -304
  47. package/dist/Card.css +209 -209
  48. package/dist/Card.mjs +304 -304
  49. package/dist/CardView.cjs +16 -16
  50. package/dist/CardView.css +16 -16
  51. package/dist/CardView.mjs +16 -16
  52. package/dist/CenterBaseline.cjs +1 -1
  53. package/dist/CenterBaseline.css +2 -2
  54. package/dist/CenterBaseline.mjs +1 -1
  55. package/dist/Checkbox.cjs +170 -170
  56. package/dist/Checkbox.css +92 -92
  57. package/dist/Checkbox.mjs +170 -170
  58. package/dist/CheckboxGroup.cjs +45 -45
  59. package/dist/CheckboxGroup.css +38 -38
  60. package/dist/CheckboxGroup.mjs +45 -45
  61. package/dist/Checkmark.cjs +12 -12
  62. package/dist/Checkmark.css +8 -8
  63. package/dist/Checkmark.mjs +12 -12
  64. package/dist/Chevron.cjs +12 -12
  65. package/dist/Chevron.css +10 -10
  66. package/dist/Chevron.mjs +12 -12
  67. package/dist/ClearButton.cjs +29 -29
  68. package/dist/ClearButton.css +29 -29
  69. package/dist/ClearButton.mjs +29 -29
  70. package/dist/CloseButton.cjs +54 -54
  71. package/dist/CloseButton.css +46 -46
  72. package/dist/CloseButton.mjs +54 -54
  73. package/dist/ColorArea.cjs +16 -16
  74. package/dist/ColorArea.css +16 -16
  75. package/dist/ColorArea.mjs +16 -16
  76. package/dist/ColorField.cjs +32 -32
  77. package/dist/ColorField.css +28 -28
  78. package/dist/ColorField.mjs +32 -32
  79. package/dist/ColorHandle.cjs +27 -27
  80. package/dist/ColorHandle.css +42 -42
  81. package/dist/ColorHandle.mjs +27 -27
  82. package/dist/ColorSlider.cjs +118 -118
  83. package/dist/ColorSlider.css +54 -54
  84. package/dist/ColorSlider.mjs +118 -118
  85. package/dist/ColorSwatch.cjs +29 -29
  86. package/dist/ColorSwatch.css +29 -29
  87. package/dist/ColorSwatch.mjs +29 -29
  88. package/dist/ColorSwatchPicker.cjs +27 -27
  89. package/dist/ColorSwatchPicker.css +46 -46
  90. package/dist/ColorSwatchPicker.mjs +27 -27
  91. package/dist/ColorWheel.cjs +26 -26
  92. package/dist/ColorWheel.css +17 -17
  93. package/dist/ColorWheel.mjs +26 -26
  94. package/dist/ComboBox.cjs +415 -400
  95. package/dist/ComboBox.cjs.map +1 -1
  96. package/dist/ComboBox.css +181 -181
  97. package/dist/ComboBox.css.map +1 -1
  98. package/dist/ComboBox.mjs +415 -400
  99. package/dist/ComboBox.mjs.map +1 -1
  100. package/dist/ContextualHelp.cjs +5 -5
  101. package/dist/ContextualHelp.css +60 -60
  102. package/dist/ContextualHelp.mjs +5 -5
  103. package/dist/Cross.cjs +14 -14
  104. package/dist/Cross.css +10 -10
  105. package/dist/Cross.mjs +14 -14
  106. package/dist/CustomDialog.cjs +25 -25
  107. package/dist/CustomDialog.css +25 -25
  108. package/dist/CustomDialog.mjs +25 -25
  109. package/dist/Dash.cjs +10 -10
  110. package/dist/Dash.css +6 -6
  111. package/dist/Dash.mjs +10 -10
  112. package/dist/DateField.cjs +73 -73
  113. package/dist/DateField.css +77 -77
  114. package/dist/DateField.mjs +73 -73
  115. package/dist/DatePicker.cjs +182 -185
  116. package/dist/DatePicker.cjs.map +1 -1
  117. package/dist/DatePicker.css +126 -126
  118. package/dist/DatePicker.css.map +1 -1
  119. package/dist/DatePicker.mjs +182 -185
  120. package/dist/DatePicker.mjs.map +1 -1
  121. package/dist/DateRangePicker.cjs +58 -61
  122. package/dist/DateRangePicker.cjs.map +1 -1
  123. package/dist/DateRangePicker.css +60 -60
  124. package/dist/DateRangePicker.css.map +1 -1
  125. package/dist/DateRangePicker.mjs +58 -61
  126. package/dist/DateRangePicker.mjs.map +1 -1
  127. package/dist/Dialog.cjs +17 -17
  128. package/dist/Dialog.css +82 -82
  129. package/dist/Dialog.mjs +17 -17
  130. package/dist/Disclosure.cjs +135 -135
  131. package/dist/Disclosure.css +106 -106
  132. package/dist/Disclosure.mjs +135 -135
  133. package/dist/Divider.cjs +25 -25
  134. package/dist/Divider.css +25 -25
  135. package/dist/Divider.mjs +25 -25
  136. package/dist/DropZone.cjs +62 -62
  137. package/dist/DropZone.css +58 -58
  138. package/dist/DropZone.mjs +62 -62
  139. package/dist/Field.cjs +370 -370
  140. package/dist/Field.cjs.map +1 -1
  141. package/dist/Field.css +142 -142
  142. package/dist/Field.mjs +370 -370
  143. package/dist/Field.mjs.map +1 -1
  144. package/dist/Form.cjs +9 -9
  145. package/dist/Form.css +9 -9
  146. package/dist/Form.mjs +9 -9
  147. package/dist/FullscreenDialog.cjs +5 -5
  148. package/dist/FullscreenDialog.css +91 -91
  149. package/dist/FullscreenDialog.mjs +5 -5
  150. package/dist/IllustratedMessage.cjs +256 -256
  151. package/dist/IllustratedMessage.css +78 -78
  152. package/dist/IllustratedMessage.mjs +256 -256
  153. package/dist/Image.cjs +13 -13
  154. package/dist/Image.css +14 -14
  155. package/dist/Image.mjs +13 -13
  156. package/dist/InlineAlert.cjs +117 -117
  157. package/dist/InlineAlert.css +98 -98
  158. package/dist/InlineAlert.mjs +117 -117
  159. package/dist/Link.cjs +54 -54
  160. package/dist/Link.css +46 -46
  161. package/dist/Link.mjs +54 -54
  162. package/dist/LinkOut.cjs +8 -8
  163. package/dist/LinkOut.css +8 -8
  164. package/dist/LinkOut.mjs +8 -8
  165. package/dist/Menu.cjs +459 -459
  166. package/dist/Menu.css +185 -185
  167. package/dist/Menu.mjs +459 -459
  168. package/dist/Meter.cjs +163 -163
  169. package/dist/Meter.css +93 -93
  170. package/dist/Meter.mjs +163 -163
  171. package/dist/Modal.cjs +58 -58
  172. package/dist/Modal.css +50 -50
  173. package/dist/Modal.mjs +58 -58
  174. package/dist/NotificationBadge.cjs +58 -58
  175. package/dist/NotificationBadge.css +51 -51
  176. package/dist/NotificationBadge.mjs +58 -58
  177. package/dist/NumberField.cjs +115 -115
  178. package/dist/NumberField.css +100 -100
  179. package/dist/NumberField.mjs +115 -115
  180. package/dist/Picker.cjs +283 -283
  181. package/dist/Picker.css +169 -169
  182. package/dist/Picker.mjs +283 -283
  183. package/dist/Popover.cjs +86 -86
  184. package/dist/Popover.css +66 -66
  185. package/dist/Popover.mjs +86 -86
  186. package/dist/ProgressBar.cjs +173 -173
  187. package/dist/ProgressBar.css +101 -101
  188. package/dist/ProgressBar.mjs +173 -173
  189. package/dist/ProgressCircle.cjs +31 -31
  190. package/dist/ProgressCircle.css +24 -24
  191. package/dist/ProgressCircle.mjs +31 -31
  192. package/dist/Provider.cjs +11 -11
  193. package/dist/Provider.css +10 -10
  194. package/dist/Provider.mjs +11 -11
  195. package/dist/Radio.cjs +154 -154
  196. package/dist/Radio.css +79 -79
  197. package/dist/Radio.mjs +154 -154
  198. package/dist/RadioGroup.cjs +42 -42
  199. package/dist/RadioGroup.css +38 -38
  200. package/dist/RadioGroup.mjs +42 -42
  201. package/dist/RangeCalendar.cjs +32 -20
  202. package/dist/RangeCalendar.cjs.map +1 -1
  203. package/dist/RangeCalendar.css +10 -10
  204. package/dist/RangeCalendar.css.map +1 -1
  205. package/dist/RangeCalendar.mjs +34 -22
  206. package/dist/RangeCalendar.mjs.map +1 -1
  207. package/dist/SearchField.cjs +42 -42
  208. package/dist/SearchField.css +46 -46
  209. package/dist/SearchField.mjs +42 -42
  210. package/dist/SegmentedControl.cjs +181 -181
  211. package/dist/SegmentedControl.css +118 -118
  212. package/dist/SegmentedControl.mjs +181 -181
  213. package/dist/SelectBoxGroup.cjs +342 -0
  214. package/dist/SelectBoxGroup.cjs.map +1 -0
  215. package/dist/SelectBoxGroup.css +503 -0
  216. package/dist/SelectBoxGroup.css.map +1 -0
  217. package/dist/SelectBoxGroup.mjs +335 -0
  218. package/dist/SelectBoxGroup.mjs.map +1 -0
  219. package/dist/SkeletonCollection.cjs +6 -1
  220. package/dist/SkeletonCollection.cjs.map +1 -1
  221. package/dist/SkeletonCollection.mjs +7 -2
  222. package/dist/SkeletonCollection.mjs.map +1 -1
  223. package/dist/Slider.cjs +299 -299
  224. package/dist/Slider.css +151 -151
  225. package/dist/Slider.mjs +299 -299
  226. package/dist/StatusLight.cjs +125 -125
  227. package/dist/StatusLight.css +61 -61
  228. package/dist/StatusLight.mjs +125 -125
  229. package/dist/Switch.cjs +162 -162
  230. package/dist/Switch.css +74 -74
  231. package/dist/Switch.mjs +162 -162
  232. package/dist/TableView.cjs +319 -319
  233. package/dist/TableView.css +172 -172
  234. package/dist/TableView.mjs +319 -319
  235. package/dist/Tabs.cjs +213 -188
  236. package/dist/Tabs.cjs.map +1 -1
  237. package/dist/Tabs.css +105 -101
  238. package/dist/Tabs.css.map +1 -1
  239. package/dist/Tabs.mjs +213 -188
  240. package/dist/Tabs.mjs.map +1 -1
  241. package/dist/TabsPicker.cjs +127 -127
  242. package/dist/TabsPicker.css +111 -111
  243. package/dist/TabsPicker.mjs +127 -127
  244. package/dist/TagGroup.cjs +213 -213
  245. package/dist/TagGroup.css +147 -147
  246. package/dist/TagGroup.mjs +213 -213
  247. package/dist/TextField.cjs +59 -59
  248. package/dist/TextField.css +54 -54
  249. package/dist/TextField.mjs +59 -59
  250. package/dist/TimeField.cjs +52 -52
  251. package/dist/TimeField.css +48 -48
  252. package/dist/TimeField.mjs +52 -52
  253. package/dist/Toast.cjs +120 -120
  254. package/dist/Toast.css +107 -107
  255. package/dist/Toast.mjs +120 -120
  256. package/dist/ToggleButton.cjs +3 -3
  257. package/dist/ToggleButton.css +12 -12
  258. package/dist/ToggleButton.mjs +3 -3
  259. package/dist/Tooltip.cjs +83 -83
  260. package/dist/Tooltip.css +70 -70
  261. package/dist/Tooltip.mjs +83 -83
  262. package/dist/TreeView.cjs +146 -146
  263. package/dist/TreeView.css +147 -147
  264. package/dist/TreeView.mjs +146 -146
  265. package/dist/main.cjs +5 -0
  266. package/dist/main.cjs.map +1 -1
  267. package/dist/module.mjs +3 -1
  268. package/dist/module.mjs.map +1 -1
  269. package/dist/types.d.ts +43 -1
  270. package/dist/types.d.ts.map +1 -1
  271. package/icons/Icon.cjs +10 -10
  272. package/icons/Icon.css +9 -9
  273. package/icons/Icon.mjs +10 -10
  274. package/icons/Skeleton.cjs +2 -2
  275. package/icons/Skeleton.cjs.map +1 -1
  276. package/icons/Skeleton.css +6 -6
  277. package/icons/Skeleton.mjs +2 -2
  278. package/icons/Skeleton.mjs.map +1 -1
  279. package/package.json +21 -21
  280. package/src/Calendar.tsx +13 -6
  281. package/src/ComboBox.tsx +20 -5
  282. package/src/DatePicker.tsx +1 -7
  283. package/src/DateRangePicker.tsx +1 -7
  284. package/src/RangeCalendar.tsx +13 -6
  285. package/src/SelectBoxGroup.tsx +408 -0
  286. package/src/SkeletonCollection.tsx +6 -2
  287. package/src/Tabs.tsx +49 -24
  288. package/src/index.ts +2 -0
  289. package/style/__tests__/style-macro.test.js +162 -166
  290. package/style/dist/main.cjs +24 -24
  291. package/style/dist/module.mjs +13 -13
  292. package/style/dist/properties.mjs +3 -3
  293. package/style/dist/spectrum-theme.cjs +219 -219
  294. package/style/dist/spectrum-theme.mjs +210 -210
  295. package/style/dist/style-macro.cjs +80 -80
  296. package/style/dist/style-macro.mjs +75 -75
@@ -1 +1 @@
1
- {"mappings":"AC8DoB;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAoDK;;;;EAAA;;;;EAAA;;;;EAAA;;;;EA0CmB;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;;;EAAA;;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EA8BtB;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EA2BU;;;;EAkClB;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAwCM;;;;EAAA;;;;EAAA;;;;;AAjOA;EAAA;;;;EAAA;;;;;AAAA;EAAA;;;;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;;;AA4HE;EAAA;IAAA","sources":["d4ca8e646fea5360","packages/@react-spectrum/s2/src/DatePicker.tsx"],"sourcesContent":["@import \"54172f634399832c\";\n@import \"fa2321f9143b745c\";\n@import \"8b549979924a612a\";\n@import \"b86e209972e15459\";\n@import \"8b256a2bed52f067\";\n@import \"5e26ccdc056a4ced\";\n@import \"fb93b5d68257fecd\";\n","/*\n * Copyright 2024 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\nimport {\n DatePicker as AriaDatePicker,\n DatePickerProps as AriaDatePickerProps,\n Button,\n ButtonRenderProps,\n ContextValue,\n DateValue,\n Dialog,\n FormContext,\n OverlayTriggerStateContext,\n Provider,\n TimeValue\n} from 'react-aria-components';\nimport {baseColor, focusRing, fontRelative, space, style} from '../style' with {type: 'macro'};\nimport {Calendar, CalendarProps, IconContext, TimeField} from '../';\nimport CalendarIcon from '../s2wf-icons/S2_Icon_Calendar_20_N.svg';\nimport {controlBorderRadius, field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};\nimport {createContext, forwardRef, PropsWithChildren, ReactElement, Ref, useContext, useRef, useState} from 'react';\nimport {DateInput, DateInputContainer, InvalidIndicator} from './DateField';\nimport {FieldGroup, FieldLabel, HelpText} from './Field';\nimport {forwardRefType, GlobalDOMAttributes, HelpTextProps, SpectrumLabelableProps} from '@react-types/shared';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {PopoverBase} from './Popover';\nimport {pressScale} from './pressScale';\nimport {useLocalizedStringFormatter} from '@react-aria/i18n';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\n\nexport interface DatePickerProps<T extends DateValue> extends\n Omit<AriaDatePickerProps<T>, 'children' | 'className' | 'style' | keyof GlobalDOMAttributes>,\n Pick<CalendarProps<T>, 'createCalendar' | 'pageBehavior' | 'isDateUnavailable'>,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps {\n /**\n * The size of the DateField.\n *\n * @default 'M'\n */\n size?: 'S' | 'M' | 'L' | 'XL',\n /**\n * The maximum number of months to display at once in the calendar popover, if screen space permits.\n * @default 1\n */\n maxVisibleMonths?: number\n}\n\nexport const DatePickerContext = createContext<ContextValue<Partial<DatePickerProps<any>>, HTMLDivElement>>(null);\n\nconst inputButton = style<ButtonRenderProps & {isOpen: boolean, size: 'S' | 'M' | 'L' | 'XL'}>({\n ...focusRing(),\n ...controlBorderRadius('sm'),\n position: 'relative',\n font: {\n size: {\n S: 'ui-sm',\n M: 'ui',\n L: 'ui-lg',\n XL: 'ui-xl'\n }\n },\n cursor: 'default',\n display: 'flex',\n textAlign: 'center',\n borderStyle: 'none',\n alignItems: 'center',\n justifyContent: 'center',\n width: {\n size: {\n S: 16,\n M: 20,\n L: 24,\n XL: 32\n }\n },\n height: 'auto',\n marginStart: 'text-to-control',\n aspectRatio: 'square',\n flexShrink: 0,\n transition: {\n default: 'default',\n forcedColors: 'none'\n },\n backgroundColor: {\n default: baseColor('gray-100'),\n isOpen: 'gray-200',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonText',\n isHovered: 'Highlight',\n isOpen: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n color: {\n default: baseColor('neutral'),\n isDisabled: 'disabled',\n forcedColors: 'ButtonFace'\n }\n});\n\nexport const timeField = style({\n flexShrink: 1,\n flexGrow: 0,\n minWidth: 0,\n width: 'unset'\n});\n\nexport const DatePicker = /*#__PURE__*/ (forwardRef as forwardRefType)(function DatePicker<T extends DateValue>(\n props: DatePickerProps<T>, ref: Ref<HTMLDivElement>\n): ReactElement {\n [props, ref] = useSpectrumContextProps(props, ref, DatePickerContext);\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');\n let {\n label,\n contextualHelp,\n description: descriptionMessage,\n errorMessage,\n isRequired,\n size = 'M',\n labelPosition = 'top',\n necessityIndicator,\n labelAlign = 'start',\n UNSAFE_style,\n UNSAFE_className,\n styles,\n placeholderValue,\n maxVisibleMonths = 1,\n firstDayOfWeek,\n createCalendar,\n pageBehavior,\n isDateUnavailable,\n ...dateFieldProps\n } = props;\n let formContext = useContext(FormContext);\n let [buttonHasFocus, setButtonHasFocus] = useState(false);\n\n return (\n <AriaDatePicker\n ref={ref}\n isRequired={isRequired}\n {...dateFieldProps}\n style={UNSAFE_style}\n className={(UNSAFE_className || '') + style(field(), getAllowedOverrides())({\n isInForm: !!formContext,\n labelPosition,\n size\n }, styles)}>\n {({isDisabled, isInvalid, isOpen, state}) => {\n let placeholder: DateValue | undefined = placeholderValue ?? undefined;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : undefined;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : undefined;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : undefined;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : undefined;\n let showTimeField = !!timeGranularity;\n return (\n <>\n <FieldLabel\n isDisabled={isDisabled}\n isRequired={isRequired}\n size={size}\n labelPosition={labelPosition}\n labelAlign={labelAlign}\n necessityIndicator={necessityIndicator}\n contextualHelp={contextualHelp}>\n {label}\n </FieldLabel>\n <FieldGroup\n role=\"presentation\"\n shouldTurnOffFocusRing={buttonHasFocus}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n size={size}\n styles={style({\n ...fieldInput(),\n textWrap: 'nowrap',\n paddingStart: 'edge-to-text',\n paddingEnd: {\n size: {\n S: 2,\n M: 4,\n L: space(6),\n XL: space(6)\n }\n }\n })({size})}>\n <DateInputContainer>\n <DateInput />\n </DateInputContainer>\n <InvalidIndicator isInvalid={isInvalid} isDisabled={isDisabled} />\n <CalendarButton isOpen={isOpen} size={size} setButtonHasFocus={setButtonHasFocus} />\n </FieldGroup>\n <CalendarPopover>\n <Calendar\n visibleMonths={maxVisibleMonths}\n createCalendar={createCalendar}\n firstDayOfWeek={firstDayOfWeek}\n isDateUnavailable={isDateUnavailable}\n pageBehavior={pageBehavior} />\n {showTimeField && (\n <div className={style({display: 'flex', gap: 16, contain: 'inline-size'})}>\n <TimeField\n styles={timeField}\n label={stringFormatter.format('datepicker.time')}\n value={state.timeValue}\n // TODO: why do i need the cast?\n onChange={v => state.setTimeValue(v as TimeValue)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone} />\n </div>\n )}\n </CalendarPopover>\n <HelpText\n size={size}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n description={descriptionMessage}>\n {errorMessage}\n </HelpText>\n </>\n );\n }}\n </AriaDatePicker>\n );\n});\n\nexport function CalendarPopover(props: PropsWithChildren): ReactElement {\n return (\n <PopoverBase\n hideArrow\n styles={style({\n paddingX: 16,\n paddingY: 32,\n overflow: 'auto',\n display: 'flex',\n flexDirection: 'column',\n gap: 16\n })}>\n <Dialog>\n <Provider\n values={[\n [OverlayTriggerStateContext, null]\n ]}>\n {props.children}\n </Provider>\n </Dialog>\n </PopoverBase>\n );\n}\n\n\nexport function CalendarButton(props: {isOpen: boolean, size: 'S' | 'M' | 'L' | 'XL', setButtonHasFocus: (hasFocus: boolean) => void}): ReactElement {\n let buttonRef = useRef<HTMLButtonElement>(null);\n let {isOpen, size, setButtonHasFocus} = props;\n return (\n <Button\n ref={buttonRef}\n // Prevent press scale from sticking while DatePicker is open.\n // @ts-ignore\n isPressed={false}\n onFocusChange={setButtonHasFocus}\n style={pressScale(buttonRef)}\n className={renderProps => inputButton({\n ...renderProps,\n size,\n isOpen\n })}>\n <Provider\n values={[\n [IconContext, {\n styles: style({\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n },\n size: fontRelative(14)\n })\n }]\n ]}>\n <CalendarIcon />\n </Provider>\n </Button>\n );\n}\n"],"names":[],"version":3,"file":"DatePicker.css.map"}
1
+ {"mappings":"AC8DoB;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAoDK;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAuCmB;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;;;EAAA;;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EA8BtB;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAwBU;;;;EAkClB;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAAA;;;;EAwCM;;;;EAAA;;;;EAAA;;;;;AA3NA;EAAA;;;;EAAA;;;;;AAAA;EAAA;;;;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;;;;;AAAA;EAAA;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;IAAA;;;;;;AAyHE;EAAA;IAAA","sources":["d4ca8e646fea5360","packages/@react-spectrum/s2/src/DatePicker.tsx"],"sourcesContent":["@import \"54172f634399832c\";\n@import \"fa2321f9143b745c\";\n@import \"8b549979924a612a\";\n@import \"b86e209972e15459\";\n@import \"8b256a2bed52f067\";\n@import \"5e26ccdc056a4ced\";\n@import \"fb93b5d68257fecd\";\n","/*\n * Copyright 2024 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\nimport {\n DatePicker as AriaDatePicker,\n DatePickerProps as AriaDatePickerProps,\n Button,\n ButtonRenderProps,\n ContextValue,\n DateValue,\n Dialog,\n FormContext,\n OverlayTriggerStateContext,\n Provider,\n TimeValue\n} from 'react-aria-components';\nimport {baseColor, focusRing, fontRelative, space, style} from '../style' with {type: 'macro'};\nimport {Calendar, CalendarProps, IconContext, TimeField} from '../';\nimport CalendarIcon from '../s2wf-icons/S2_Icon_Calendar_20_N.svg';\nimport {controlBorderRadius, field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};\nimport {createContext, forwardRef, PropsWithChildren, ReactElement, Ref, useContext, useRef, useState} from 'react';\nimport {DateInput, DateInputContainer, InvalidIndicator} from './DateField';\nimport {FieldGroup, FieldLabel, HelpText} from './Field';\nimport {forwardRefType, GlobalDOMAttributes, HelpTextProps, SpectrumLabelableProps} from '@react-types/shared';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {PopoverBase} from './Popover';\nimport {pressScale} from './pressScale';\nimport {useLocalizedStringFormatter} from '@react-aria/i18n';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\n\nexport interface DatePickerProps<T extends DateValue> extends\n Omit<AriaDatePickerProps<T>, 'children' | 'className' | 'style' | keyof GlobalDOMAttributes>,\n Pick<CalendarProps<T>, 'createCalendar' | 'pageBehavior' | 'isDateUnavailable'>,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps {\n /**\n * The size of the DateField.\n *\n * @default 'M'\n */\n size?: 'S' | 'M' | 'L' | 'XL',\n /**\n * The maximum number of months to display at once in the calendar popover, if screen space permits.\n * @default 1\n */\n maxVisibleMonths?: number\n}\n\nexport const DatePickerContext = createContext<ContextValue<Partial<DatePickerProps<any>>, HTMLDivElement>>(null);\n\nconst inputButton = style<ButtonRenderProps & {isOpen: boolean, size: 'S' | 'M' | 'L' | 'XL'}>({\n ...focusRing(),\n ...controlBorderRadius('sm'),\n position: 'relative',\n font: {\n size: {\n S: 'ui-sm',\n M: 'ui',\n L: 'ui-lg',\n XL: 'ui-xl'\n }\n },\n cursor: 'default',\n display: 'flex',\n textAlign: 'center',\n borderStyle: 'none',\n alignItems: 'center',\n justifyContent: 'center',\n width: {\n size: {\n S: 16,\n M: 20,\n L: 24,\n XL: 32\n }\n },\n height: 'auto',\n marginStart: 'text-to-control',\n aspectRatio: 'square',\n flexShrink: 0,\n transition: {\n default: 'default',\n forcedColors: 'none'\n },\n backgroundColor: {\n default: baseColor('gray-100'),\n isOpen: 'gray-200',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonText',\n isHovered: 'Highlight',\n isOpen: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n color: {\n default: baseColor('neutral'),\n isDisabled: 'disabled',\n forcedColors: 'ButtonFace'\n }\n});\n\nexport const timeField = style({\n flexShrink: 1,\n flexGrow: 0,\n minWidth: 0,\n width: 'unset'\n});\n\nexport const DatePicker = /*#__PURE__*/ (forwardRef as forwardRefType)(function DatePicker<T extends DateValue>(\n props: DatePickerProps<T>, ref: Ref<HTMLDivElement>\n): ReactElement {\n [props, ref] = useSpectrumContextProps(props, ref, DatePickerContext);\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');\n let {\n label,\n contextualHelp,\n description: descriptionMessage,\n errorMessage,\n isRequired,\n size = 'M',\n labelPosition = 'top',\n necessityIndicator,\n labelAlign = 'start',\n UNSAFE_style,\n UNSAFE_className,\n styles,\n placeholderValue,\n maxVisibleMonths = 1,\n createCalendar,\n ...dateFieldProps\n } = props;\n let formContext = useContext(FormContext);\n let [buttonHasFocus, setButtonHasFocus] = useState(false);\n\n return (\n <AriaDatePicker\n ref={ref}\n isRequired={isRequired}\n {...dateFieldProps}\n style={UNSAFE_style}\n className={(UNSAFE_className || '') + style(field(), getAllowedOverrides())({\n isInForm: !!formContext,\n labelPosition,\n size\n }, styles)}>\n {({isDisabled, isInvalid, isOpen, state}) => {\n let placeholder: DateValue | undefined = placeholderValue ?? undefined;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : undefined;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : undefined;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : undefined;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : undefined;\n let showTimeField = !!timeGranularity;\n return (\n <>\n <FieldLabel\n isDisabled={isDisabled}\n isRequired={isRequired}\n size={size}\n labelPosition={labelPosition}\n labelAlign={labelAlign}\n necessityIndicator={necessityIndicator}\n contextualHelp={contextualHelp}>\n {label}\n </FieldLabel>\n <FieldGroup\n role=\"presentation\"\n shouldTurnOffFocusRing={buttonHasFocus}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n size={size}\n styles={style({\n ...fieldInput(),\n textWrap: 'nowrap',\n paddingStart: 'edge-to-text',\n paddingEnd: {\n size: {\n S: 2,\n M: 4,\n L: space(6),\n XL: space(6)\n }\n }\n })({size})}>\n <DateInputContainer>\n <DateInput />\n </DateInputContainer>\n <InvalidIndicator isInvalid={isInvalid} isDisabled={isDisabled} />\n <CalendarButton isOpen={isOpen} size={size} setButtonHasFocus={setButtonHasFocus} />\n </FieldGroup>\n <CalendarPopover>\n <Calendar\n visibleMonths={maxVisibleMonths}\n createCalendar={createCalendar} />\n {showTimeField && (\n <div className={style({display: 'flex', gap: 16, contain: 'inline-size'})}>\n <TimeField\n styles={timeField}\n label={stringFormatter.format('datepicker.time')}\n value={state.timeValue}\n // TODO: why do i need the cast?\n onChange={v => state.setTimeValue(v as TimeValue)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone} />\n </div>\n )}\n </CalendarPopover>\n <HelpText\n size={size}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n description={descriptionMessage}>\n {errorMessage}\n </HelpText>\n </>\n );\n }}\n </AriaDatePicker>\n );\n});\n\nexport function CalendarPopover(props: PropsWithChildren): ReactElement {\n return (\n <PopoverBase\n hideArrow\n styles={style({\n paddingX: 16,\n paddingY: 32,\n overflow: 'auto',\n display: 'flex',\n flexDirection: 'column',\n gap: 16\n })}>\n <Dialog>\n <Provider\n values={[\n [OverlayTriggerStateContext, null]\n ]}>\n {props.children}\n </Provider>\n </Dialog>\n </PopoverBase>\n );\n}\n\n\nexport function CalendarButton(props: {isOpen: boolean, size: 'S' | 'M' | 'L' | 'XL', setButtonHasFocus: (hasFocus: boolean) => void}): ReactElement {\n let buttonRef = useRef<HTMLButtonElement>(null);\n let {isOpen, size, setButtonHasFocus} = props;\n return (\n <Button\n ref={buttonRef}\n // Prevent press scale from sticking while DatePicker is open.\n // @ts-ignore\n isPressed={false}\n onFocusChange={setButtonHasFocus}\n style={pressScale(buttonRef)}\n className={renderProps => inputButton({\n ...renderProps,\n size,\n isOpen\n })}>\n <Provider\n values={[\n [IconContext, {\n styles: style({\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n },\n size: fontRelative(14)\n })\n }]\n ]}>\n <CalendarIcon />\n </Provider>\n </Button>\n );\n}\n"],"names":[],"version":3,"file":"DatePicker.css.map"}
@@ -43,157 +43,157 @@ function $parcel$interopDefault(a) {
43
43
  const $1196aa313ab37be1$export$cf316c7f3b44c11e = /*#__PURE__*/ (0, $djrek$createContext)(null);
44
44
  const $1196aa313ab37be1$var$inputButton = function anonymous(props) {
45
45
  let rules = " ";
46
- if (props.isFocusVisible) rules += ' _Lf1';
47
- else rules += ' _Le1';
48
- rules += ' Oh1';
49
- rules += ' _Mc1';
50
- rules += ' _Kd1';
51
- if (props.size === "XL") rules += ' -SFnbic-_JaP8ec1';
52
- else if (props.size === "L") rules += ' -SFnbic-_J0K2hn1';
53
- else if (props.size === "S") rules += ' -SFnbic-_JJOW22b1';
54
- else if (props.size === "XS") rules += ' -SFnbic-_JICefdd1';
55
- else rules += ' -SFnbic-_Jb1';
56
- rules += ' -Bu7z1c-oa1';
57
- rules += ' oj1';
58
- rules += ' nj1';
59
- rules += ' kj1';
60
- rules += ' jj1';
61
- rules += ' _Pc1';
46
+ if (props.isFocusVisible) rules += ' _Lf11';
47
+ else rules += ' _Le11';
48
+ rules += ' Oh11';
49
+ rules += ' _Mc11';
50
+ rules += ' _Kd11';
51
+ if (props.size === "XL") rules += ' -SFnbic-_JaP8ec11';
52
+ else if (props.size === "L") rules += ' -SFnbic-_J0K2hn11';
53
+ else if (props.size === "S") rules += ' -SFnbic-_JJOW22b11';
54
+ else if (props.size === "XS") rules += ' -SFnbic-_JICefdd11';
55
+ else rules += ' -SFnbic-_Jb11';
56
+ rules += ' -Bu7z1c-oa11';
57
+ rules += ' oj11';
58
+ rules += ' nj11';
59
+ rules += ' kj11';
60
+ rules += ' jj11';
61
+ rules += ' _Pc11';
62
62
  if (props.size === "XL") {
63
- rules += ' uk1';
64
- rules += ' uch1';
65
- rules += ' udi1';
66
- rules += ' uea1';
67
- rules += ' ugb1';
68
- rules += ' uhd1';
69
- rules += ' uje1';
70
- rules += ' u2NhKxcl1';
71
- rules += ' uic1';
63
+ rules += ' uk11';
64
+ rules += ' uch11';
65
+ rules += ' udi11';
66
+ rules += ' uea11';
67
+ rules += ' ugb11';
68
+ rules += ' uhd11';
69
+ rules += ' uje11';
70
+ rules += ' u2NhKxcl11';
71
+ rules += ' uic11';
72
72
  } else if (props.size === "L") {
73
- rules += ' uk1';
74
- rules += ' uch1';
75
- rules += ' udi1';
76
- rules += ' uea1';
77
- rules += ' ugb1';
78
- rules += ' uhd1';
79
- rules += ' uje1';
80
- rules += ' u2NhKxcl1';
81
- rules += ' uic1';
73
+ rules += ' uk11';
74
+ rules += ' uch11';
75
+ rules += ' udi11';
76
+ rules += ' uea11';
77
+ rules += ' ugb11';
78
+ rules += ' uhd11';
79
+ rules += ' uje11';
80
+ rules += ' u2NhKxcl11';
81
+ rules += ' uic11';
82
82
  } else if (props.size === "M") {
83
- rules += ' uk1';
84
- rules += ' uch1';
85
- rules += ' udi1';
86
- rules += ' uea1';
87
- rules += ' ugb1';
88
- rules += ' uhd1';
89
- rules += ' uje1';
90
- rules += ' u2NhKxcl1';
91
- rules += ' uic1';
83
+ rules += ' uk11';
84
+ rules += ' uch11';
85
+ rules += ' udi11';
86
+ rules += ' uea11';
87
+ rules += ' ugb11';
88
+ rules += ' uhd11';
89
+ rules += ' uje11';
90
+ rules += ' u2NhKxcl11';
91
+ rules += ' uic11';
92
92
  } else if (props.size === "S") {
93
- rules += ' uk1';
94
- rules += ' uch1';
95
- rules += ' udi1';
96
- rules += ' uea1';
97
- rules += ' ugb1';
98
- rules += ' uhd1';
99
- rules += ' uje1';
100
- rules += ' u2NhKxcl1';
101
- rules += ' uic1';
93
+ rules += ' uk11';
94
+ rules += ' uch11';
95
+ rules += ' udi11';
96
+ rules += ' uea11';
97
+ rules += ' ugb11';
98
+ rules += ' uhd11';
99
+ rules += ' uje11';
100
+ rules += ' u2NhKxcl11';
101
+ rules += ' uic11';
102
102
  }
103
103
  if (props.size === "XL") {
104
- rules += ' -_6BNtrc-e1';
105
- rules += ' vx1';
104
+ rules += ' -_6BNtrc-e11';
105
+ rules += ' vx11';
106
106
  } else if (props.size === "L") {
107
- rules += ' -_6BNtrc-d1';
108
- rules += ' vx1';
107
+ rules += ' -_6BNtrc-d11';
108
+ rules += ' vx11';
109
109
  } else if (props.size === "M") {
110
- rules += ' -_6BNtrc-c1';
111
- rules += ' vx1';
110
+ rules += ' -_6BNtrc-c11';
111
+ rules += ' vx11';
112
112
  } else if (props.size === "S") {
113
- rules += ' -_6BNtrc-b1';
114
- rules += ' vx1';
113
+ rules += ' -_6BNtrc-b11';
114
+ rules += ' vx11';
115
115
  }
116
116
  if (props.size === "XL") {
117
- rules += ' wb1';
118
- rules += ' xb1';
119
- rules += ' _xa1';
117
+ rules += ' wb11';
118
+ rules += ' xb11';
119
+ rules += ' _xa11';
120
120
  } else if (props.size === "L") {
121
- rules += ' wb1';
122
- rules += ' xb1';
123
- rules += ' _xa1';
121
+ rules += ' wb11';
122
+ rules += ' xb11';
123
+ rules += ' _xa11';
124
124
  } else if (props.size === "M") {
125
- rules += ' wb1';
126
- rules += ' xb1';
127
- rules += ' _xa1';
125
+ rules += ' wb11';
126
+ rules += ' xb11';
127
+ rules += ' _xa11';
128
128
  } else if (props.size === "S") {
129
- rules += ' wb1';
130
- rules += ' xb1';
131
- rules += ' _xa1';
129
+ rules += ' wb11';
130
+ rules += ' xb11';
131
+ rules += ' _xa11';
132
132
  }
133
133
  if (props.size === "XL") {
134
- rules += ' _Fd1';
135
- rules += ' _FezxGHba1';
136
- rules += ' _FnuYUweb1';
134
+ rules += ' _Fd11';
135
+ rules += ' _FezxGHba11';
136
+ rules += ' _FnuYUweb11';
137
137
  } else if (props.size === "L") {
138
- rules += ' _Fd1';
139
- rules += ' _FezxGHba1';
140
- rules += ' _FnuYUweb1';
138
+ rules += ' _Fd11';
139
+ rules += ' _FezxGHba11';
140
+ rules += ' _FnuYUweb11';
141
141
  } else if (props.size === "M") {
142
- rules += ' _Fd1';
143
- rules += ' _FezxGHba1';
144
- rules += ' _FnuYUweb1';
142
+ rules += ' _Fd11';
143
+ rules += ' _FezxGHba11';
144
+ rules += ' _FnuYUweb11';
145
145
  } else if (props.size === "S") {
146
- rules += ' _Fd1';
147
- rules += ' _FezxGHba1';
148
- rules += ' _FnuYUweb1';
146
+ rules += ' _Fd11';
147
+ rules += ' _FezxGHba11';
148
+ rules += ' _FnuYUweb11';
149
149
  }
150
- if (props.isDisabled) rules += ' pp1';
150
+ if (props.isDisabled) rules += ' pp11';
151
151
  else {
152
- if (props.isPressed) rules += ' po1';
153
- else if (props.isFocusVisible) rules += ' po1';
154
- else if (props.isHovered) rules += ' po1';
155
- else rules += ' pt1';
152
+ if (props.isPressed) rules += ' po11';
153
+ else if (props.isFocusVisible) rules += ' po11';
154
+ else if (props.isHovered) rules += ' po11';
155
+ else rules += ' pt11';
156
156
  }
157
- rules += ' pla1';
158
- rules += ' ri1';
159
- rules += ' sd1';
160
- rules += ' _Wa1';
161
- rules += ' _je1';
162
- rules += ' eb1';
163
- rules += ' _Ca1';
164
- if (props.size === "XL") rules += ' ZC1';
165
- else if (props.size === "L") rules += ' Zo1';
166
- else if (props.size === "M") rules += ' Zm1';
167
- else if (props.size === "S") rules += ' Zu1';
168
- rules += ' Fd1';
169
- rules += ' Iw1';
170
- rules += ' fa1';
171
- rules += ' _va1';
172
- rules += ' Yd1';
173
- rules += ' Yle1';
174
- rules += ' Xb1';
175
- rules += ' Xlb1';
176
- rules += ' _2b1';
177
- rules += ' _2lb1';
178
- if (props.isDisabled) rules += ' gH1';
179
- else if (props.isOpen) rules += ' gF1';
157
+ rules += ' pla11';
158
+ rules += ' ri11';
159
+ rules += ' sd11';
160
+ rules += ' _Wa11';
161
+ rules += ' _je11';
162
+ rules += ' eb11';
163
+ rules += ' _Ca11';
164
+ if (props.size === "XL") rules += ' ZC11';
165
+ else if (props.size === "L") rules += ' Zo11';
166
+ else if (props.size === "M") rules += ' Zm11';
167
+ else if (props.size === "S") rules += ' Zu11';
168
+ rules += ' Fd11';
169
+ rules += ' Iw11';
170
+ rules += ' fa11';
171
+ rules += ' _va11';
172
+ rules += ' Yd11';
173
+ rules += ' Yle11';
174
+ rules += ' Xb11';
175
+ rules += ' Xlb11';
176
+ rules += ' _2b11';
177
+ rules += ' _2lb11';
178
+ if (props.isDisabled) rules += ' gH11';
179
+ else if (props.isOpen) rules += ' gF11';
180
180
  else {
181
- if (props.isPressed) rules += ' gF1';
182
- else if (props.isFocusVisible) rules += ' gF1';
183
- else if (props.isHovered) rules += ' gF1';
184
- else rules += ' gH1';
181
+ if (props.isPressed) rules += ' gF11';
182
+ else if (props.isFocusVisible) rules += ' gF11';
183
+ else if (props.isHovered) rules += ' gF11';
184
+ else rules += ' gH11';
185
185
  }
186
- if (props.isDisabled) rules += ' gld1';
187
- else if (props.isOpen) rules += ' gle1';
188
- else if (props.isHovered) rules += ' gle1';
189
- else rules += ' glc1';
186
+ if (props.isDisabled) rules += ' gld11';
187
+ else if (props.isOpen) rules += ' gle11';
188
+ else if (props.isHovered) rules += ' gle11';
189
+ else rules += ' glc11';
190
190
  return rules;
191
191
  };
192
- const $1196aa313ab37be1$export$5320dd0e349ed44d = " _vb1 _ua1 Na1 Ze4mUs1";
192
+ const $1196aa313ab37be1$export$5320dd0e349ed44d = " _vb11 _ua11 Na11 Ze4mUs11";
193
193
  const $1196aa313ab37be1$export$5109c6dd95d8fb00 = /*#__PURE__*/ (0, $djrek$forwardRef)(function DatePicker(props1, ref) {
194
194
  [props1, ref] = (0, $5ce63c423902f47d$export$764f6146fadd77f7)(props1, ref, $1196aa313ab37be1$export$cf316c7f3b44c11e);
195
195
  let stringFormatter = (0, $djrek$useLocalizedStringFormatter)((0, ($parcel$interopDefault($djrek$intlStringsmjs))), '@react-spectrum/s2');
196
- let { label: label, contextualHelp: contextualHelp, description: descriptionMessage, errorMessage: errorMessage, isRequired: isRequired, size: size = 'M', labelPosition: labelPosition = 'top', necessityIndicator: necessityIndicator, labelAlign: labelAlign = 'start', UNSAFE_style: UNSAFE_style, UNSAFE_className: UNSAFE_className, styles: styles, placeholderValue: placeholderValue, maxVisibleMonths: maxVisibleMonths = 1, firstDayOfWeek: firstDayOfWeek, createCalendar: createCalendar, pageBehavior: pageBehavior, isDateUnavailable: isDateUnavailable, ...dateFieldProps } = props1;
196
+ let { label: label, contextualHelp: contextualHelp, description: descriptionMessage, errorMessage: errorMessage, isRequired: isRequired, size: size = 'M', labelPosition: labelPosition = 'top', necessityIndicator: necessityIndicator, labelAlign: labelAlign = 'start', UNSAFE_style: UNSAFE_style, UNSAFE_className: UNSAFE_className, styles: styles, placeholderValue: placeholderValue, maxVisibleMonths: maxVisibleMonths = 1, createCalendar: createCalendar, ...dateFieldProps } = props1;
197
197
  let formContext = (0, $djrek$useContext)((0, $djrek$FormContext));
198
198
  let [buttonHasFocus, setButtonHasFocus] = (0, $djrek$useState)(false);
199
199
  return /*#__PURE__*/ (0, $djrek$jsx)((0, $djrek$DatePicker), {
@@ -211,52 +211,52 @@ const $1196aa313ab37be1$export$5109c6dd95d8fb00 = /*#__PURE__*/ (0, $djrek$forwa
211
211
  if (p[1] === "y") gridColumnEnd = true;
212
212
  rules += p[0];
213
213
  }
214
- rules += ' se1';
214
+ rules += ' se11';
215
215
  if (props.isInForm) {
216
- if (!gridColumnStart) rules += ' z2mU1';
216
+ if (!gridColumnStart) rules += ' z2mU11';
217
217
  }
218
218
  if (props.isInForm) {
219
219
  if (props.labelPosition === "side") {
220
- if (!gridColumnEnd) rules += ' yvoofG1';
220
+ if (!gridColumnEnd) rules += ' yvoofG11';
221
221
  }
222
222
  }
223
- if (props.isInForm) rules += ' DLwlgod1';
223
+ if (props.isInForm) rules += ' DLwlgod11';
224
224
  else {
225
- if (props.labelPosition === "side") rules += ' DPlN5qb1';
226
- else if (props.labelPosition === "top") rules += ' DM8Mfn1';
225
+ if (props.labelPosition === "side") rules += ' DPlN5qb11';
226
+ else if (props.labelPosition === "top") rules += ' DM8Mfn11';
227
227
  }
228
- if (props.labelPosition === "side") rules += ' EPlN5qb1';
229
- else if (props.labelPosition === "top") rules += ' E4w1sLc1';
230
- if (props.labelPosition === "side") rules += ' CbRM95c1';
231
- else if (props.labelPosition === "top") rules += ' Cxaocre1';
228
+ if (props.labelPosition === "side") rules += ' EPlN5qb11';
229
+ else if (props.labelPosition === "top") rules += ' E4w1sLc11';
230
+ if (props.labelPosition === "side") rules += ' CbRM95c11';
231
+ else if (props.labelPosition === "top") rules += ' Cxaocre11';
232
232
  if (props.size === "XL") {
233
- rules += ' -_6BNtrc-e1';
234
- rules += ' vx1';
233
+ rules += ' -_6BNtrc-e11';
234
+ rules += ' vx11';
235
235
  } else if (props.size === "L") {
236
- rules += ' -_6BNtrc-d1';
237
- rules += ' vx1';
236
+ rules += ' -_6BNtrc-d11';
237
+ rules += ' vx11';
238
238
  } else if (props.size === "S") {
239
- rules += ' -_6BNtrc-b1';
240
- rules += ' vx1';
239
+ rules += ' -_6BNtrc-b11';
240
+ rules += ' vx11';
241
241
  } else if (props.size === "XS") {
242
- rules += ' -_6BNtrc-a1';
243
- rules += ' vx1';
242
+ rules += ' -_6BNtrc-a11';
243
+ rules += ' vx11';
244
244
  } else {
245
- rules += ' -_6BNtrc-c1';
246
- rules += ' vx1';
245
+ rules += ' -_6BNtrc-c11';
246
+ rules += ' vx11';
247
247
  }
248
- rules += ' ea1';
249
- rules += ' _Fd1';
250
- rules += ' _FezxGHba1';
251
- rules += ' _FnuYUweb1';
252
- if (props.size === "XL") rules += ' -BhX7R-Fz1';
253
- else if (props.size === "L") rules += ' -BhX7R-Fv1';
254
- else if (props.size === "S") rules += ' -BhX7R-Fp1';
255
- else if (props.size === "XS") rules += ' -BhX7R-Fn1';
256
- else rules += ' -BhX7R-Fx1';
257
- rules += ' -AJjOLd-UVkF0Db1';
258
- rules += ' qg1';
259
- rules += ' __ca1';
248
+ rules += ' ea11';
249
+ rules += ' _Fd11';
250
+ rules += ' _FezxGHba11';
251
+ rules += ' _FnuYUweb11';
252
+ if (props.size === "XL") rules += ' -BhX7R-Fz11';
253
+ else if (props.size === "L") rules += ' -BhX7R-Fv11';
254
+ else if (props.size === "S") rules += ' -BhX7R-Fp11';
255
+ else if (props.size === "XS") rules += ' -BhX7R-Fn11';
256
+ else rules += ' -BhX7R-Fx11';
257
+ rules += ' -AJjOLd-UVkF0Db11';
258
+ rules += ' qg11';
259
+ rules += ' __ca11';
260
260
  return rules;
261
261
  }({
262
262
  isInForm: !!formContext,
@@ -290,30 +290,30 @@ const $1196aa313ab37be1$export$5109c6dd95d8fb00 = /*#__PURE__*/ (0, $djrek$forwa
290
290
  size: size,
291
291
  styles: function anonymous(props) {
292
292
  let rules = " ";
293
- rules += ' zXcEWr1';
294
- rules += ' yXcEWr1';
295
- rules += ' BXcEWr1';
296
- rules += ' AXcEWr1';
297
- if (props.size === "XL") rules += ' Nl1';
298
- else if (props.size === "L") rules += ' Nj1';
299
- else if (props.size === "S") rules += ' Nf1';
300
- else if (props.size === "XS") rules += ' Ne1';
301
- else rules += ' Nk1';
302
- if (props.isQuiet) rules += ' _qd1';
303
- else rules += ' _qtb1';
304
- if (props.size === "XL") rules += ' -Anxdcc-Zt1';
305
- else if (props.size === "L") rules += ' -Anxdcc-ZStdtne1';
306
- else if (props.size === "S") rules += ' -Anxdcc-Zr1';
307
- else rules += ' -Anxdcc-Z3fn9H1';
308
- rules += ' __v6TNLWb1';
309
- rules += ' __Wb1';
310
- rules += ' SMBFGYc1';
311
- rules += ' RfBFGYc1';
312
- rules += ' -S_-Sv1';
313
- if (props.size === "XL") rules += ' -R_-RWJpoB1';
314
- else if (props.size === "L") rules += ' -R_-RWJpoB1';
315
- else if (props.size === "M") rules += ' -R_-Rp1';
316
- else if (props.size === "S") rules += ' -R_-Rj1';
293
+ rules += ' zXcEWr11';
294
+ rules += ' yXcEWr11';
295
+ rules += ' BXcEWr11';
296
+ rules += ' AXcEWr11';
297
+ if (props.size === "XL") rules += ' Nl11';
298
+ else if (props.size === "L") rules += ' Nj11';
299
+ else if (props.size === "S") rules += ' Nf11';
300
+ else if (props.size === "XS") rules += ' Ne11';
301
+ else rules += ' Nk11';
302
+ if (props.isQuiet) rules += ' _qd11';
303
+ else rules += ' _qtb11';
304
+ if (props.size === "XL") rules += ' -Anxdcc-Zt11';
305
+ else if (props.size === "L") rules += ' -Anxdcc-ZStdtne11';
306
+ else if (props.size === "S") rules += ' -Anxdcc-Zr11';
307
+ else rules += ' -Anxdcc-Z3fn9H11';
308
+ rules += ' __v6TNLWb11';
309
+ rules += ' __Wb11';
310
+ rules += ' SMBFGYc11';
311
+ rules += ' RfBFGYc11';
312
+ rules += ' -S_-Sv11';
313
+ if (props.size === "XL") rules += ' -R_-RWJpoB11';
314
+ else if (props.size === "L") rules += ' -R_-RWJpoB11';
315
+ else if (props.size === "M") rules += ' -R_-Rp11';
316
+ else if (props.size === "S") rules += ' -R_-Rj11';
317
317
  return rules;
318
318
  }({
319
319
  size: size
@@ -337,13 +337,10 @@ const $1196aa313ab37be1$export$5109c6dd95d8fb00 = /*#__PURE__*/ (0, $djrek$forwa
337
337
  children: [
338
338
  /*#__PURE__*/ (0, $djrek$jsx)((0, $f06f4d5597ad704c$export$e1aef45b828286de), {
339
339
  visibleMonths: maxVisibleMonths,
340
- createCalendar: createCalendar,
341
- firstDayOfWeek: firstDayOfWeek,
342
- isDateUnavailable: isDateUnavailable,
343
- pageBehavior: pageBehavior
340
+ createCalendar: createCalendar
344
341
  }),
345
342
  showTimeField && /*#__PURE__*/ (0, $djrek$jsx)("div", {
346
- className: " sd1 Ul1 ql1 _qb1",
343
+ className: " sd11 Ul11 ql11 _qb11",
347
344
  children: /*#__PURE__*/ (0, $djrek$jsx)((0, $a4c1b812c7e17006$export$5eaee2322dd727eb), {
348
345
  styles: $1196aa313ab37be1$export$5320dd0e349ed44d,
349
346
  label: stringFormatter.format('datepicker.time'),
@@ -375,7 +372,7 @@ const $1196aa313ab37be1$export$5109c6dd95d8fb00 = /*#__PURE__*/ (0, $djrek$forwa
375
372
  function $1196aa313ab37be1$export$f3ce207574a3cffe(props) {
376
373
  return /*#__PURE__*/ (0, $djrek$jsx)((0, $88b746eba92c8d0d$export$fde1b04c590741a3), {
377
374
  hideArrow: true,
378
- styles: " Sf1 Rf1 Tk1 Qk1 _Na1 Pa1 sd1 _ta1 Ul1 ql1",
375
+ styles: " Sf11 Rf11 Tk11 Qk11 _Na11 Pa11 sd11 _ta11 Ul11 ql11",
379
376
  children: /*#__PURE__*/ (0, $djrek$jsx)((0, $djrek$Dialog), {
380
377
  children: /*#__PURE__*/ (0, $djrek$jsx)((0, $djrek$Provider), {
381
378
  values: [
@@ -409,7 +406,7 @@ function $1196aa313ab37be1$export$adb29da0ac001538(props) {
409
406
  [
410
407
  (0, $ac8c32e6775ddd1f$export$a49f528ae1a4d0ed),
411
408
  {
412
- styles: " -_8sjo0b-t5ZbAob1 Za8Mfn1 Fa8Mfn1"
409
+ styles: " -_8sjo0b-t5ZbAob11 Za8Mfn11 Fa8Mfn11"
413
410
  }
414
411
  ]
415
412
  ],
@@ -1 +1 @@
1
- {"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC;;;;;;;;;;;;AAkDM,MAAM,0DAAoB,CAAA,GAAA,oBAAY,EAA+D;AAE5G,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoDC,MAAM;AAON,MAAM,4CAA2B,AAAd,WAAW,GAAI,CAAA,GAAA,iBAAS,EAAqB,SAAS,WAC9E,MAAyB,EAAE,GAAwB;IAEnD,CAAC,QAAO,IAAI,GAAG,CAAA,GAAA,yCAAsB,EAAE,QAAO,KAAK;IACnD,IAAI,kBAAkB,CAAA,GAAA,kCAA0B,EAAE,CAAA,GAAA,+CAAW,GAAG;IAChE,IAAI,SACF,KAAK,kBACL,cAAc,EACd,aAAa,kBAAkB,gBAC/B,YAAY,cACZ,UAAU,QACV,OAAO,oBACP,gBAAgB,2BAChB,kBAAkB,cAClB,aAAa,uBACb,YAAY,oBACZ,gBAAgB,UAChB,MAAM,oBACN,gBAAgB,oBAChB,mBAAmB,mBACnB,cAAc,kBACd,cAAc,gBACd,YAAY,qBACZ,iBAAiB,EACjB,GAAG,gBACJ,GAAG;IACJ,IAAI,cAAc,CAAA,GAAA,iBAAS,EAAE,CAAA,GAAA,kBAAU;IACvC,IAAI,CAAC,gBAAgB,kBAAkB,GAAG,CAAA,GAAA,eAAO,EAAE;IAEnD,qBACE,gBAAC,CAAA,GAAA,iBAAa;QACZ,KAAK;QACL,YAAY;QACX,GAAG,cAAc;QAClB,OAAO;QACP,WAAW,AAAC,CAAA,oBAAoB,EAAC,IAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAAsC;YAC1E,UAAU,CAAC,CAAC;2BACZ;kBACA;QACF,GAAG;kBACF,CAAC,cAAC,UAAU,aAAE,SAAS,UAAE,MAAM,SAAE,KAAK,EAAC;YACtC,IAAI,cAAqC,oBAAoB;YAC7D,IAAI,kBAAkB,eAAe,UAAU,cAAc,cAAc;YAC3E,IAAI,eAAe,OAAM,QAAQ,IAAI,UAAU,OAAM,QAAQ,GAAG,OAAM,QAAQ,GAAG;YACjF,IAAI,eAAe,OAAM,QAAQ,IAAI,UAAU,OAAM,QAAQ,GAAG,OAAM,QAAQ,GAAG;YACjF,IAAI,kBAAkB,MAAM,WAAW,KAAK,UAAU,MAAM,WAAW,KAAK,YAAY,MAAM,WAAW,KAAK,WAAW,MAAM,WAAW,GAAG;YAC7I,IAAI,gBAAgB,CAAC,CAAC;YACtB,qBACE;;kCACE,gBAAC,CAAA,GAAA,yCAAS;wBACR,YAAY;wBACZ,YAAY;wBACZ,MAAM;wBACN,eAAe;wBACf,YAAY;wBACZ,oBAAoB;wBACpB,gBAAgB;kCACf;;kCAEH,iBAAC,CAAA,GAAA,yCAAS;wBACR,MAAK;wBACL,wBAAwB;wBACxB,YAAY;wBACZ,WAAW;wBACX,MAAM;wBACN,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAYL;kCAAC;wBAAI;;0CACR,gBAAC,CAAA,GAAA,uCAAiB;0CAChB,cAAA,gBAAC,CAAA,GAAA,yCAAQ;;0CAEX,gBAAC,CAAA,GAAA,yCAAe;gCAAE,WAAW;gCAAW,YAAY;;0CACpD,gBAAC;gCAAe,QAAQ;gCAAQ,MAAM;gCAAM,mBAAmB;;;;kCAEjE,iBAAC;;0CACC,gBAAC,CAAA,GAAA,yCAAO;gCACN,eAAe;gCACf,gBAAgB;gCAChB,gBAAgB;gCAChB,mBAAmB;gCACnB,cAAc;;4BACf,+BACC,gBAAC;gCAAI,SAAS;0CACZ,cAAA,gBAAC,CAAA,GAAA,yCAAQ;oCACP,QAAQ;oCACR,OAAO,gBAAgB,MAAM,CAAC;oCAC9B,OAAO,MAAM,SAAS;oCACtB,gCAAgC;oCAChC,UAAU,CAAA,IAAK,MAAM,YAAY,CAAC;oCAClC,kBAAkB;oCAClB,aAAa;oCACb,UAAU;oCACV,UAAU;oCACV,WAAW,OAAM,SAAS;oCAC1B,cAAc,OAAM,YAAY;;;;;kCAIxC,gBAAC,CAAA,GAAA,yCAAO;wBACN,MAAM;wBACN,YAAY;wBACZ,WAAW;wBACX,aAAa;kCACZ;;;;QAIT;;AAGN;AAEO,SAAS,0CAAgB,KAAwB;IACtD,qBACE,gBAAC,CAAA,GAAA,yCAAU;QACT,SAAS;QACT,MAAM;kBAQN,cAAA,gBAAC,CAAA,GAAA,aAAK;sBACJ,cAAA,gBAAC,CAAA,GAAA,eAAO;gBACN,QAAQ;oBACN;wBAAC,CAAA,GAAA,iCAAyB;wBAAG;qBAAK;iBACnC;0BACA,MAAM,QAAQ;;;;AAKzB;AAGO,SAAS,0CAAe,KAAsG;IACnI,IAAI,YAAY,CAAA,GAAA,aAAK,EAAqB;IAC1C,IAAI,UAAC,MAAM,QAAE,IAAI,qBAAE,iBAAiB,EAAC,GAAG;IACxC,qBACE,gBAAC,CAAA,GAAA,aAAK;QACJ,KAAK;QACL,8DAA8D;QAC9D,aAAa;QACb,WAAW;QACX,eAAe;QACf,OAAO,CAAA,GAAA,yCAAS,EAAE;QAClB,WAAW,CAAA,cAAe,kCAAY;gBACpC,GAAG,WAAW;sBACd;wBACA;YACF;kBACA,cAAA,gBAAC,CAAA,GAAA,eAAO;YACN,QAAQ;gBACN;oBAAC,CAAA,GAAA,yCAAU;oBAAG;wBACZ,MAAM;oBAOR;iBAAE;aACH;sBACD,cAAA,gBAAC,CAAA,GAAA,wCAAW;;;AAIpB","sources":["packages/@react-spectrum/s2/src/DatePicker.tsx"],"sourcesContent":["/*\n * Copyright 2024 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\nimport {\n DatePicker as AriaDatePicker,\n DatePickerProps as AriaDatePickerProps,\n Button,\n ButtonRenderProps,\n ContextValue,\n DateValue,\n Dialog,\n FormContext,\n OverlayTriggerStateContext,\n Provider,\n TimeValue\n} from 'react-aria-components';\nimport {baseColor, focusRing, fontRelative, space, style} from '../style' with {type: 'macro'};\nimport {Calendar, CalendarProps, IconContext, TimeField} from '../';\nimport CalendarIcon from '../s2wf-icons/S2_Icon_Calendar_20_N.svg';\nimport {controlBorderRadius, field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};\nimport {createContext, forwardRef, PropsWithChildren, ReactElement, Ref, useContext, useRef, useState} from 'react';\nimport {DateInput, DateInputContainer, InvalidIndicator} from './DateField';\nimport {FieldGroup, FieldLabel, HelpText} from './Field';\nimport {forwardRefType, GlobalDOMAttributes, HelpTextProps, SpectrumLabelableProps} from '@react-types/shared';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {PopoverBase} from './Popover';\nimport {pressScale} from './pressScale';\nimport {useLocalizedStringFormatter} from '@react-aria/i18n';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\n\nexport interface DatePickerProps<T extends DateValue> extends\n Omit<AriaDatePickerProps<T>, 'children' | 'className' | 'style' | keyof GlobalDOMAttributes>,\n Pick<CalendarProps<T>, 'createCalendar' | 'pageBehavior' | 'isDateUnavailable'>,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps {\n /**\n * The size of the DateField.\n *\n * @default 'M'\n */\n size?: 'S' | 'M' | 'L' | 'XL',\n /**\n * The maximum number of months to display at once in the calendar popover, if screen space permits.\n * @default 1\n */\n maxVisibleMonths?: number\n}\n\nexport const DatePickerContext = createContext<ContextValue<Partial<DatePickerProps<any>>, HTMLDivElement>>(null);\n\nconst inputButton = style<ButtonRenderProps & {isOpen: boolean, size: 'S' | 'M' | 'L' | 'XL'}>({\n ...focusRing(),\n ...controlBorderRadius('sm'),\n position: 'relative',\n font: {\n size: {\n S: 'ui-sm',\n M: 'ui',\n L: 'ui-lg',\n XL: 'ui-xl'\n }\n },\n cursor: 'default',\n display: 'flex',\n textAlign: 'center',\n borderStyle: 'none',\n alignItems: 'center',\n justifyContent: 'center',\n width: {\n size: {\n S: 16,\n M: 20,\n L: 24,\n XL: 32\n }\n },\n height: 'auto',\n marginStart: 'text-to-control',\n aspectRatio: 'square',\n flexShrink: 0,\n transition: {\n default: 'default',\n forcedColors: 'none'\n },\n backgroundColor: {\n default: baseColor('gray-100'),\n isOpen: 'gray-200',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonText',\n isHovered: 'Highlight',\n isOpen: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n color: {\n default: baseColor('neutral'),\n isDisabled: 'disabled',\n forcedColors: 'ButtonFace'\n }\n});\n\nexport const timeField = style({\n flexShrink: 1,\n flexGrow: 0,\n minWidth: 0,\n width: 'unset'\n});\n\nexport const DatePicker = /*#__PURE__*/ (forwardRef as forwardRefType)(function DatePicker<T extends DateValue>(\n props: DatePickerProps<T>, ref: Ref<HTMLDivElement>\n): ReactElement {\n [props, ref] = useSpectrumContextProps(props, ref, DatePickerContext);\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');\n let {\n label,\n contextualHelp,\n description: descriptionMessage,\n errorMessage,\n isRequired,\n size = 'M',\n labelPosition = 'top',\n necessityIndicator,\n labelAlign = 'start',\n UNSAFE_style,\n UNSAFE_className,\n styles,\n placeholderValue,\n maxVisibleMonths = 1,\n firstDayOfWeek,\n createCalendar,\n pageBehavior,\n isDateUnavailable,\n ...dateFieldProps\n } = props;\n let formContext = useContext(FormContext);\n let [buttonHasFocus, setButtonHasFocus] = useState(false);\n\n return (\n <AriaDatePicker\n ref={ref}\n isRequired={isRequired}\n {...dateFieldProps}\n style={UNSAFE_style}\n className={(UNSAFE_className || '') + style(field(), getAllowedOverrides())({\n isInForm: !!formContext,\n labelPosition,\n size\n }, styles)}>\n {({isDisabled, isInvalid, isOpen, state}) => {\n let placeholder: DateValue | undefined = placeholderValue ?? undefined;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : undefined;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : undefined;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : undefined;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : undefined;\n let showTimeField = !!timeGranularity;\n return (\n <>\n <FieldLabel\n isDisabled={isDisabled}\n isRequired={isRequired}\n size={size}\n labelPosition={labelPosition}\n labelAlign={labelAlign}\n necessityIndicator={necessityIndicator}\n contextualHelp={contextualHelp}>\n {label}\n </FieldLabel>\n <FieldGroup\n role=\"presentation\"\n shouldTurnOffFocusRing={buttonHasFocus}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n size={size}\n styles={style({\n ...fieldInput(),\n textWrap: 'nowrap',\n paddingStart: 'edge-to-text',\n paddingEnd: {\n size: {\n S: 2,\n M: 4,\n L: space(6),\n XL: space(6)\n }\n }\n })({size})}>\n <DateInputContainer>\n <DateInput />\n </DateInputContainer>\n <InvalidIndicator isInvalid={isInvalid} isDisabled={isDisabled} />\n <CalendarButton isOpen={isOpen} size={size} setButtonHasFocus={setButtonHasFocus} />\n </FieldGroup>\n <CalendarPopover>\n <Calendar\n visibleMonths={maxVisibleMonths}\n createCalendar={createCalendar}\n firstDayOfWeek={firstDayOfWeek}\n isDateUnavailable={isDateUnavailable}\n pageBehavior={pageBehavior} />\n {showTimeField && (\n <div className={style({display: 'flex', gap: 16, contain: 'inline-size'})}>\n <TimeField\n styles={timeField}\n label={stringFormatter.format('datepicker.time')}\n value={state.timeValue}\n // TODO: why do i need the cast?\n onChange={v => state.setTimeValue(v as TimeValue)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone} />\n </div>\n )}\n </CalendarPopover>\n <HelpText\n size={size}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n description={descriptionMessage}>\n {errorMessage}\n </HelpText>\n </>\n );\n }}\n </AriaDatePicker>\n );\n});\n\nexport function CalendarPopover(props: PropsWithChildren): ReactElement {\n return (\n <PopoverBase\n hideArrow\n styles={style({\n paddingX: 16,\n paddingY: 32,\n overflow: 'auto',\n display: 'flex',\n flexDirection: 'column',\n gap: 16\n })}>\n <Dialog>\n <Provider\n values={[\n [OverlayTriggerStateContext, null]\n ]}>\n {props.children}\n </Provider>\n </Dialog>\n </PopoverBase>\n );\n}\n\n\nexport function CalendarButton(props: {isOpen: boolean, size: 'S' | 'M' | 'L' | 'XL', setButtonHasFocus: (hasFocus: boolean) => void}): ReactElement {\n let buttonRef = useRef<HTMLButtonElement>(null);\n let {isOpen, size, setButtonHasFocus} = props;\n return (\n <Button\n ref={buttonRef}\n // Prevent press scale from sticking while DatePicker is open.\n // @ts-ignore\n isPressed={false}\n onFocusChange={setButtonHasFocus}\n style={pressScale(buttonRef)}\n className={renderProps => inputButton({\n ...renderProps,\n size,\n isOpen\n })}>\n <Provider\n values={[\n [IconContext, {\n styles: style({\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n },\n size: fontRelative(14)\n })\n }]\n ]}>\n <CalendarIcon />\n </Provider>\n </Button>\n );\n}\n"],"names":[],"version":3,"file":"DatePicker.mjs.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/s2/src/DatePicker.tsx"],"sourcesContent":["/*\n * Copyright 2024 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\nimport {\n DatePicker as AriaDatePicker,\n DatePickerProps as AriaDatePickerProps,\n Button,\n ButtonRenderProps,\n ContextValue,\n DateValue,\n Dialog,\n FormContext,\n OverlayTriggerStateContext,\n Provider,\n TimeValue\n} from 'react-aria-components';\nimport {baseColor, focusRing, fontRelative, space, style} from '../style' with {type: 'macro'};\nimport {Calendar, CalendarProps, IconContext, TimeField} from '../';\nimport CalendarIcon from '../s2wf-icons/S2_Icon_Calendar_20_N.svg';\nimport {controlBorderRadius, field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'};\nimport {createContext, forwardRef, PropsWithChildren, ReactElement, Ref, useContext, useRef, useState} from 'react';\nimport {DateInput, DateInputContainer, InvalidIndicator} from './DateField';\nimport {FieldGroup, FieldLabel, HelpText} from './Field';\nimport {forwardRefType, GlobalDOMAttributes, HelpTextProps, SpectrumLabelableProps} from '@react-types/shared';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {PopoverBase} from './Popover';\nimport {pressScale} from './pressScale';\nimport {useLocalizedStringFormatter} from '@react-aria/i18n';\nimport {useSpectrumContextProps} from './useSpectrumContextProps';\n\n\nexport interface DatePickerProps<T extends DateValue> extends\n Omit<AriaDatePickerProps<T>, 'children' | 'className' | 'style' | keyof GlobalDOMAttributes>,\n Pick<CalendarProps<T>, 'createCalendar' | 'pageBehavior' | 'isDateUnavailable'>,\n StyleProps,\n SpectrumLabelableProps,\n HelpTextProps {\n /**\n * The size of the DateField.\n *\n * @default 'M'\n */\n size?: 'S' | 'M' | 'L' | 'XL',\n /**\n * The maximum number of months to display at once in the calendar popover, if screen space permits.\n * @default 1\n */\n maxVisibleMonths?: number\n}\n\nexport const DatePickerContext = createContext<ContextValue<Partial<DatePickerProps<any>>, HTMLDivElement>>(null);\n\nconst inputButton = style<ButtonRenderProps & {isOpen: boolean, size: 'S' | 'M' | 'L' | 'XL'}>({\n ...focusRing(),\n ...controlBorderRadius('sm'),\n position: 'relative',\n font: {\n size: {\n S: 'ui-sm',\n M: 'ui',\n L: 'ui-lg',\n XL: 'ui-xl'\n }\n },\n cursor: 'default',\n display: 'flex',\n textAlign: 'center',\n borderStyle: 'none',\n alignItems: 'center',\n justifyContent: 'center',\n width: {\n size: {\n S: 16,\n M: 20,\n L: 24,\n XL: 32\n }\n },\n height: 'auto',\n marginStart: 'text-to-control',\n aspectRatio: 'square',\n flexShrink: 0,\n transition: {\n default: 'default',\n forcedColors: 'none'\n },\n backgroundColor: {\n default: baseColor('gray-100'),\n isOpen: 'gray-200',\n isDisabled: 'disabled',\n forcedColors: {\n default: 'ButtonText',\n isHovered: 'Highlight',\n isOpen: 'Highlight',\n isDisabled: 'GrayText'\n }\n },\n color: {\n default: baseColor('neutral'),\n isDisabled: 'disabled',\n forcedColors: 'ButtonFace'\n }\n});\n\nexport const timeField = style({\n flexShrink: 1,\n flexGrow: 0,\n minWidth: 0,\n width: 'unset'\n});\n\nexport const DatePicker = /*#__PURE__*/ (forwardRef as forwardRefType)(function DatePicker<T extends DateValue>(\n props: DatePickerProps<T>, ref: Ref<HTMLDivElement>\n): ReactElement {\n [props, ref] = useSpectrumContextProps(props, ref, DatePickerContext);\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-spectrum/s2');\n let {\n label,\n contextualHelp,\n description: descriptionMessage,\n errorMessage,\n isRequired,\n size = 'M',\n labelPosition = 'top',\n necessityIndicator,\n labelAlign = 'start',\n UNSAFE_style,\n UNSAFE_className,\n styles,\n placeholderValue,\n maxVisibleMonths = 1,\n createCalendar,\n ...dateFieldProps\n } = props;\n let formContext = useContext(FormContext);\n let [buttonHasFocus, setButtonHasFocus] = useState(false);\n\n return (\n <AriaDatePicker\n ref={ref}\n isRequired={isRequired}\n {...dateFieldProps}\n style={UNSAFE_style}\n className={(UNSAFE_className || '') + style(field(), getAllowedOverrides())({\n isInForm: !!formContext,\n labelPosition,\n size\n }, styles)}>\n {({isDisabled, isInvalid, isOpen, state}) => {\n let placeholder: DateValue | undefined = placeholderValue ?? undefined;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : undefined;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : undefined;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : undefined;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : undefined;\n let showTimeField = !!timeGranularity;\n return (\n <>\n <FieldLabel\n isDisabled={isDisabled}\n isRequired={isRequired}\n size={size}\n labelPosition={labelPosition}\n labelAlign={labelAlign}\n necessityIndicator={necessityIndicator}\n contextualHelp={contextualHelp}>\n {label}\n </FieldLabel>\n <FieldGroup\n role=\"presentation\"\n shouldTurnOffFocusRing={buttonHasFocus}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n size={size}\n styles={style({\n ...fieldInput(),\n textWrap: 'nowrap',\n paddingStart: 'edge-to-text',\n paddingEnd: {\n size: {\n S: 2,\n M: 4,\n L: space(6),\n XL: space(6)\n }\n }\n })({size})}>\n <DateInputContainer>\n <DateInput />\n </DateInputContainer>\n <InvalidIndicator isInvalid={isInvalid} isDisabled={isDisabled} />\n <CalendarButton isOpen={isOpen} size={size} setButtonHasFocus={setButtonHasFocus} />\n </FieldGroup>\n <CalendarPopover>\n <Calendar\n visibleMonths={maxVisibleMonths}\n createCalendar={createCalendar} />\n {showTimeField && (\n <div className={style({display: 'flex', gap: 16, contain: 'inline-size'})}>\n <TimeField\n styles={timeField}\n label={stringFormatter.format('datepicker.time')}\n value={state.timeValue}\n // TODO: why do i need the cast?\n onChange={v => state.setTimeValue(v as TimeValue)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone} />\n </div>\n )}\n </CalendarPopover>\n <HelpText\n size={size}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n description={descriptionMessage}>\n {errorMessage}\n </HelpText>\n </>\n );\n }}\n </AriaDatePicker>\n );\n});\n\nexport function CalendarPopover(props: PropsWithChildren): ReactElement {\n return (\n <PopoverBase\n hideArrow\n styles={style({\n paddingX: 16,\n paddingY: 32,\n overflow: 'auto',\n display: 'flex',\n flexDirection: 'column',\n gap: 16\n })}>\n <Dialog>\n <Provider\n values={[\n [OverlayTriggerStateContext, null]\n ]}>\n {props.children}\n </Provider>\n </Dialog>\n </PopoverBase>\n );\n}\n\n\nexport function CalendarButton(props: {isOpen: boolean, size: 'S' | 'M' | 'L' | 'XL', setButtonHasFocus: (hasFocus: boolean) => void}): ReactElement {\n let buttonRef = useRef<HTMLButtonElement>(null);\n let {isOpen, size, setButtonHasFocus} = props;\n return (\n <Button\n ref={buttonRef}\n // Prevent press scale from sticking while DatePicker is open.\n // @ts-ignore\n isPressed={false}\n onFocusChange={setButtonHasFocus}\n style={pressScale(buttonRef)}\n className={renderProps => inputButton({\n ...renderProps,\n size,\n isOpen\n })}>\n <Provider\n values={[\n [IconContext, {\n styles: style({\n '--iconPrimary': {\n type: 'fill',\n value: 'currentColor'\n },\n size: fontRelative(14)\n })\n }]\n ]}>\n <CalendarIcon />\n </Provider>\n </Button>\n );\n}\n"],"names":[],"version":3,"file":"DatePicker.mjs.map"}