@react-aria/datepicker 3.9.3 → 3.10.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 (77) hide show
  1. package/dist/ar-AE.mjs +1 -1
  2. package/dist/bg-BG.mjs +1 -1
  3. package/dist/cs-CZ.mjs +1 -1
  4. package/dist/da-DK.mjs +1 -1
  5. package/dist/de-DE.mjs +1 -1
  6. package/dist/el-GR.mjs +1 -1
  7. package/dist/en-US.mjs +1 -1
  8. package/dist/es-ES.mjs +1 -1
  9. package/dist/et-EE.mjs +1 -1
  10. package/dist/fi-FI.mjs +1 -1
  11. package/dist/fr-FR.mjs +1 -1
  12. package/dist/he-IL.mjs +1 -1
  13. package/dist/hr-HR.mjs +1 -1
  14. package/dist/hu-HU.mjs +1 -1
  15. package/dist/import.mjs +5 -1047
  16. package/dist/intlStrings.main.js +108 -0
  17. package/dist/intlStrings.main.js.map +1 -0
  18. package/dist/intlStrings.mjs +110 -0
  19. package/dist/intlStrings.module.js +110 -0
  20. package/dist/intlStrings.module.js.map +1 -0
  21. package/dist/it-IT.mjs +1 -1
  22. package/dist/ja-JP.mjs +1 -1
  23. package/dist/ko-KR.mjs +1 -1
  24. package/dist/lt-LT.mjs +1 -1
  25. package/dist/lv-LV.mjs +1 -1
  26. package/dist/main.js +11 -1053
  27. package/dist/main.js.map +1 -1
  28. package/dist/module.js +5 -1047
  29. package/dist/module.js.map +1 -1
  30. package/dist/nb-NO.mjs +1 -1
  31. package/dist/nl-NL.mjs +1 -1
  32. package/dist/pl-PL.mjs +1 -1
  33. package/dist/pt-BR.mjs +1 -1
  34. package/dist/pt-PT.mjs +1 -1
  35. package/dist/ro-RO.mjs +1 -1
  36. package/dist/ru-RU.mjs +1 -1
  37. package/dist/sk-SK.mjs +1 -1
  38. package/dist/sl-SI.mjs +1 -1
  39. package/dist/sr-SP.mjs +1 -1
  40. package/dist/sv-SE.mjs +1 -1
  41. package/dist/tr-TR.mjs +1 -1
  42. package/dist/types.d.ts.map +1 -1
  43. package/dist/uk-UA.mjs +1 -1
  44. package/dist/useDateField.main.js +176 -0
  45. package/dist/useDateField.main.js.map +1 -0
  46. package/dist/useDateField.mjs +167 -0
  47. package/dist/useDateField.module.js +167 -0
  48. package/dist/useDateField.module.js.map +1 -0
  49. package/dist/useDatePicker.main.js +158 -0
  50. package/dist/useDatePicker.main.js.map +1 -0
  51. package/dist/useDatePicker.mjs +153 -0
  52. package/dist/useDatePicker.module.js +153 -0
  53. package/dist/useDatePicker.module.js.map +1 -0
  54. package/dist/useDatePickerGroup.main.js +91 -0
  55. package/dist/useDatePickerGroup.main.js.map +1 -0
  56. package/dist/useDatePickerGroup.mjs +86 -0
  57. package/dist/useDatePickerGroup.module.js +86 -0
  58. package/dist/useDatePickerGroup.module.js.map +1 -0
  59. package/dist/useDateRangePicker.main.js +201 -0
  60. package/dist/useDateRangePicker.main.js.map +1 -0
  61. package/dist/useDateRangePicker.mjs +196 -0
  62. package/dist/useDateRangePicker.module.js +196 -0
  63. package/dist/useDateRangePicker.module.js.map +1 -0
  64. package/dist/useDateSegment.main.js +366 -0
  65. package/dist/useDateSegment.main.js.map +1 -0
  66. package/dist/useDateSegment.mjs +357 -0
  67. package/dist/useDateSegment.module.js +357 -0
  68. package/dist/useDateSegment.module.js.map +1 -0
  69. package/dist/useDisplayNames.main.js +59 -0
  70. package/dist/useDisplayNames.main.js.map +1 -0
  71. package/dist/useDisplayNames.mjs +54 -0
  72. package/dist/useDisplayNames.module.js +54 -0
  73. package/dist/useDisplayNames.module.js.map +1 -0
  74. package/dist/zh-CN.mjs +1 -1
  75. package/dist/zh-TW.mjs +1 -1
  76. package/package.json +19 -19
  77. package/src/useDateSegment.ts +4 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-aria/datepicker",
3
- "version": "3.9.3",
3
+ "version": "3.10.0",
4
4
  "description": "Spectrum UI components in React",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/main.js",
@@ -22,23 +22,23 @@
22
22
  "url": "https://github.com/adobe/react-spectrum"
23
23
  },
24
24
  "dependencies": {
25
- "@internationalized/date": "^3.5.2",
26
- "@internationalized/number": "^3.5.1",
27
- "@internationalized/string": "^3.2.1",
28
- "@react-aria/focus": "^3.16.2",
29
- "@react-aria/form": "^3.0.3",
30
- "@react-aria/i18n": "^3.10.2",
31
- "@react-aria/interactions": "^3.21.1",
32
- "@react-aria/label": "^3.7.6",
33
- "@react-aria/spinbutton": "^3.6.3",
34
- "@react-aria/utils": "^3.23.2",
35
- "@react-stately/datepicker": "^3.9.2",
36
- "@react-stately/form": "^3.0.1",
37
- "@react-types/button": "^3.9.2",
38
- "@react-types/calendar": "^3.4.4",
39
- "@react-types/datepicker": "^3.7.2",
40
- "@react-types/dialog": "^3.5.8",
41
- "@react-types/shared": "^3.22.1",
25
+ "@internationalized/date": "^3.5.3",
26
+ "@internationalized/number": "^3.5.2",
27
+ "@internationalized/string": "^3.2.2",
28
+ "@react-aria/focus": "^3.17.0",
29
+ "@react-aria/form": "^3.0.4",
30
+ "@react-aria/i18n": "^3.11.0",
31
+ "@react-aria/interactions": "^3.21.2",
32
+ "@react-aria/label": "^3.7.7",
33
+ "@react-aria/spinbutton": "^3.6.4",
34
+ "@react-aria/utils": "^3.24.0",
35
+ "@react-stately/datepicker": "^3.9.3",
36
+ "@react-stately/form": "^3.0.2",
37
+ "@react-types/button": "^3.9.3",
38
+ "@react-types/calendar": "^3.4.5",
39
+ "@react-types/datepicker": "^3.7.3",
40
+ "@react-types/dialog": "^3.5.9",
41
+ "@react-types/shared": "^3.23.0",
42
42
  "@swc/helpers": "^0.5.0"
43
43
  },
44
44
  "peerDependencies": {
@@ -48,5 +48,5 @@
48
48
  "publishConfig": {
49
49
  "access": "public"
50
50
  },
51
- "gitHead": "de9f84a22583fc741c29b341d14cd35ef4cca161"
51
+ "gitHead": "f645f29edc1322153fd60af4640cbcab1d992dbd"
52
52
  }
@@ -93,9 +93,13 @@ export function useDateSegment(segment: DateSegment, state: DateFieldState, ref:
93
93
  let parser = useMemo(() => new NumberParser(locale, {maximumFractionDigits: 0}), [locale]);
94
94
 
95
95
  let backspace = () => {
96
+ if (segment.text === segment.placeholder) {
97
+ focusManager.focusPrevious();
98
+ }
96
99
  if (parser.isValidPartialNumber(segment.text) && !state.isReadOnly && !segment.isPlaceholder) {
97
100
  let newValue = segment.text.slice(0, -1);
98
101
  let parsed = parser.parse(newValue);
102
+ newValue = parsed === 0 ? '' : newValue;
99
103
  if (newValue.length === 0 || parsed === 0) {
100
104
  state.clearSegment(segment.type);
101
105
  } else {