@oxy.so/bloom 3.0.0 → 3.1.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 (271) hide show
  1. package/docs/adoption-matrix.mdx +266 -0
  2. package/docs/checkbox.mdx +16 -0
  3. package/docs/composition.mdx +88 -16
  4. package/docs/date-picker.mdx +11 -0
  5. package/docs/field.mdx +35 -4
  6. package/docs/file-upload.mdx +13 -0
  7. package/docs/glass.mdx +15 -0
  8. package/docs/input-group.mdx +22 -0
  9. package/docs/input-otp.mdx +14 -0
  10. package/docs/layout.mdx +34 -0
  11. package/docs/migrating-to-3.0.mdx +43 -4
  12. package/docs/page-header.mdx +46 -1
  13. package/docs/phone-input.mdx +17 -0
  14. package/docs/radio.mdx +16 -0
  15. package/docs/rating.mdx +14 -0
  16. package/docs/segmented-control.mdx +16 -4
  17. package/docs/select.mdx +22 -0
  18. package/docs/slider.mdx +14 -0
  19. package/docs/stepper.mdx +3 -1
  20. package/docs/switch.mdx +14 -0
  21. package/docs/text-field.mdx +14 -0
  22. package/docs/textarea.mdx +20 -0
  23. package/lib/commonjs/bottom-sheet/BottomSheetBase.js +11 -4
  24. package/lib/commonjs/bottom-sheet/BottomSheetBase.js.map +1 -1
  25. package/lib/commonjs/checkbox/Checkbox.js +24 -8
  26. package/lib/commonjs/checkbox/Checkbox.js.map +1 -1
  27. package/lib/commonjs/date-picker/TimeField.js +18 -6
  28. package/lib/commonjs/date-picker/TimeField.js.map +1 -1
  29. package/lib/commonjs/dialog/DialogContent.js +36 -29
  30. package/lib/commonjs/dialog/DialogContent.js.map +1 -1
  31. package/lib/commonjs/field/index.js +7 -0
  32. package/lib/commonjs/field/index.js.map +1 -1
  33. package/lib/commonjs/field/membership.js +105 -0
  34. package/lib/commonjs/field/membership.js.map +1 -0
  35. package/lib/commonjs/file-upload/FileUpload.js +17 -3
  36. package/lib/commonjs/file-upload/FileUpload.js.map +1 -1
  37. package/lib/commonjs/index.js +21 -0
  38. package/lib/commonjs/index.js.map +1 -1
  39. package/lib/commonjs/index.web.js +21 -0
  40. package/lib/commonjs/index.web.js.map +1 -1
  41. package/lib/commonjs/input-group/InputGroup.js +18 -5
  42. package/lib/commonjs/input-group/InputGroup.js.map +1 -1
  43. package/lib/commonjs/input-otp/InputOtp.js +20 -8
  44. package/lib/commonjs/input-otp/InputOtp.js.map +1 -1
  45. package/lib/commonjs/layout/index.js +7 -0
  46. package/lib/commonjs/layout/index.js.map +1 -1
  47. package/lib/commonjs/layout/screen-scope.js +61 -0
  48. package/lib/commonjs/layout/screen-scope.js.map +1 -0
  49. package/lib/commonjs/phone-input/PhoneInput.js +20 -8
  50. package/lib/commonjs/phone-input/PhoneInput.js.map +1 -1
  51. package/lib/commonjs/radio/Radio.js +35 -9
  52. package/lib/commonjs/radio/Radio.js.map +1 -1
  53. package/lib/commonjs/rating/RatingInput.js +14 -6
  54. package/lib/commonjs/rating/RatingInput.js.map +1 -1
  55. package/lib/commonjs/segmented-control/SegmentedControl.js +38 -8
  56. package/lib/commonjs/segmented-control/SegmentedControl.js.map +1 -1
  57. package/lib/commonjs/select/Select.js +15 -3
  58. package/lib/commonjs/select/Select.js.map +1 -1
  59. package/lib/commonjs/select/Select.web.js +13 -5
  60. package/lib/commonjs/select/Select.web.js.map +1 -1
  61. package/lib/commonjs/slider/Slider.js +17 -3
  62. package/lib/commonjs/slider/Slider.js.map +1 -1
  63. package/lib/commonjs/stepper/Stepper.js +16 -7
  64. package/lib/commonjs/stepper/Stepper.js.map +1 -1
  65. package/lib/commonjs/styles/styled-primitives.js.map +1 -1
  66. package/lib/commonjs/switch/Switch.js +23 -8
  67. package/lib/commonjs/switch/Switch.js.map +1 -1
  68. package/lib/commonjs/text-field/TextField.js +19 -4
  69. package/lib/commonjs/text-field/TextField.js.map +1 -1
  70. package/lib/commonjs/textarea/Textarea.js +39 -15
  71. package/lib/commonjs/textarea/Textarea.js.map +1 -1
  72. package/lib/module/bottom-sheet/BottomSheetBase.js +8 -1
  73. package/lib/module/bottom-sheet/BottomSheetBase.js.map +1 -1
  74. package/lib/module/checkbox/Checkbox.js +24 -8
  75. package/lib/module/checkbox/Checkbox.js.map +1 -1
  76. package/lib/module/date-picker/TimeField.js +19 -5
  77. package/lib/module/date-picker/TimeField.js.map +1 -1
  78. package/lib/module/dialog/DialogContent.js +37 -30
  79. package/lib/module/dialog/DialogContent.js.map +1 -1
  80. package/lib/module/field/index.js +1 -0
  81. package/lib/module/field/index.js.map +1 -1
  82. package/lib/module/field/membership.js +101 -0
  83. package/lib/module/field/membership.js.map +1 -0
  84. package/lib/module/file-upload/FileUpload.js +17 -3
  85. package/lib/module/file-upload/FileUpload.js.map +1 -1
  86. package/lib/module/index.js +2 -2
  87. package/lib/module/index.js.map +1 -1
  88. package/lib/module/index.web.js +2 -2
  89. package/lib/module/index.web.js.map +1 -1
  90. package/lib/module/input-group/InputGroup.js +19 -4
  91. package/lib/module/input-group/InputGroup.js.map +1 -1
  92. package/lib/module/input-otp/InputOtp.js +21 -7
  93. package/lib/module/input-otp/InputOtp.js.map +1 -1
  94. package/lib/module/layout/index.js +4 -1
  95. package/lib/module/layout/index.js.map +1 -1
  96. package/lib/module/layout/screen-scope.js +57 -0
  97. package/lib/module/layout/screen-scope.js.map +1 -0
  98. package/lib/module/phone-input/PhoneInput.js +22 -9
  99. package/lib/module/phone-input/PhoneInput.js.map +1 -1
  100. package/lib/module/radio/Radio.js +35 -9
  101. package/lib/module/radio/Radio.js.map +1 -1
  102. package/lib/module/rating/RatingInput.js +15 -5
  103. package/lib/module/rating/RatingInput.js.map +1 -1
  104. package/lib/module/segmented-control/SegmentedControl.js +38 -8
  105. package/lib/module/segmented-control/SegmentedControl.js.map +1 -1
  106. package/lib/module/select/Select.js +15 -3
  107. package/lib/module/select/Select.js.map +1 -1
  108. package/lib/module/select/Select.web.js +14 -4
  109. package/lib/module/select/Select.web.js.map +1 -1
  110. package/lib/module/slider/Slider.js +17 -3
  111. package/lib/module/slider/Slider.js.map +1 -1
  112. package/lib/module/stepper/Stepper.js +17 -6
  113. package/lib/module/stepper/Stepper.js.map +1 -1
  114. package/lib/module/styles/styled-primitives.js.map +1 -1
  115. package/lib/module/switch/Switch.js +23 -8
  116. package/lib/module/switch/Switch.js.map +1 -1
  117. package/lib/module/text-field/TextField.js +19 -4
  118. package/lib/module/text-field/TextField.js.map +1 -1
  119. package/lib/module/textarea/Textarea.js +39 -15
  120. package/lib/module/textarea/Textarea.js.map +1 -1
  121. package/lib/typescript/commonjs/bottom-sheet/BottomSheetBase.d.ts.map +1 -1
  122. package/lib/typescript/commonjs/checkbox/Checkbox.d.ts.map +1 -1
  123. package/lib/typescript/commonjs/checkbox/types.d.ts +5 -0
  124. package/lib/typescript/commonjs/checkbox/types.d.ts.map +1 -1
  125. package/lib/typescript/commonjs/date-picker/TimeField.d.ts +1 -1
  126. package/lib/typescript/commonjs/date-picker/TimeField.d.ts.map +1 -1
  127. package/lib/typescript/commonjs/date-picker/types.d.ts +6 -3
  128. package/lib/typescript/commonjs/date-picker/types.d.ts.map +1 -1
  129. package/lib/typescript/commonjs/dialog/DialogContent.d.ts.map +1 -1
  130. package/lib/typescript/commonjs/field/index.d.ts +2 -0
  131. package/lib/typescript/commonjs/field/index.d.ts.map +1 -1
  132. package/lib/typescript/commonjs/field/membership.d.ts +60 -0
  133. package/lib/typescript/commonjs/field/membership.d.ts.map +1 -0
  134. package/lib/typescript/commonjs/file-upload/FileUpload.d.ts +1 -1
  135. package/lib/typescript/commonjs/file-upload/FileUpload.d.ts.map +1 -1
  136. package/lib/typescript/commonjs/floating/types.d.ts +13 -0
  137. package/lib/typescript/commonjs/floating/types.d.ts.map +1 -1
  138. package/lib/typescript/commonjs/index.d.ts +3 -3
  139. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  140. package/lib/typescript/commonjs/index.web.d.ts +3 -3
  141. package/lib/typescript/commonjs/index.web.d.ts.map +1 -1
  142. package/lib/typescript/commonjs/input-group/InputGroup.d.ts +1 -1
  143. package/lib/typescript/commonjs/input-group/InputGroup.d.ts.map +1 -1
  144. package/lib/typescript/commonjs/input-otp/InputOtp.d.ts.map +1 -1
  145. package/lib/typescript/commonjs/input-otp/types.d.ts +7 -1
  146. package/lib/typescript/commonjs/input-otp/types.d.ts.map +1 -1
  147. package/lib/typescript/commonjs/layout/index.d.ts +4 -1
  148. package/lib/typescript/commonjs/layout/index.d.ts.map +1 -1
  149. package/lib/typescript/commonjs/layout/screen-scope.d.ts +40 -0
  150. package/lib/typescript/commonjs/layout/screen-scope.d.ts.map +1 -0
  151. package/lib/typescript/commonjs/phone-input/PhoneInput.d.ts.map +1 -1
  152. package/lib/typescript/commonjs/radio/Radio.d.ts +1 -1
  153. package/lib/typescript/commonjs/radio/Radio.d.ts.map +1 -1
  154. package/lib/typescript/commonjs/radio/types.d.ts +11 -3
  155. package/lib/typescript/commonjs/radio/types.d.ts.map +1 -1
  156. package/lib/typescript/commonjs/rating/RatingInput.d.ts +1 -1
  157. package/lib/typescript/commonjs/rating/RatingInput.d.ts.map +1 -1
  158. package/lib/typescript/commonjs/rating/types.d.ts +6 -3
  159. package/lib/typescript/commonjs/rating/types.d.ts.map +1 -1
  160. package/lib/typescript/commonjs/segmented-control/SegmentedControl.d.ts +18 -2
  161. package/lib/typescript/commonjs/segmented-control/SegmentedControl.d.ts.map +1 -1
  162. package/lib/typescript/commonjs/select/Select.d.ts.map +1 -1
  163. package/lib/typescript/commonjs/select/Select.web.d.ts.map +1 -1
  164. package/lib/typescript/commonjs/select/types.d.ts +8 -1
  165. package/lib/typescript/commonjs/select/types.d.ts.map +1 -1
  166. package/lib/typescript/commonjs/slider/Slider.d.ts.map +1 -1
  167. package/lib/typescript/commonjs/stepper/Stepper.d.ts +1 -1
  168. package/lib/typescript/commonjs/stepper/Stepper.d.ts.map +1 -1
  169. package/lib/typescript/commonjs/stepper/types.d.ts +8 -1
  170. package/lib/typescript/commonjs/stepper/types.d.ts.map +1 -1
  171. package/lib/typescript/commonjs/styles/styled-primitives.d.ts +16 -0
  172. package/lib/typescript/commonjs/styles/styled-primitives.d.ts.map +1 -1
  173. package/lib/typescript/commonjs/switch/Switch.d.ts.map +1 -1
  174. package/lib/typescript/commonjs/switch/types.d.ts +7 -0
  175. package/lib/typescript/commonjs/switch/types.d.ts.map +1 -1
  176. package/lib/typescript/commonjs/text-field/TextField.d.ts.map +1 -1
  177. package/lib/typescript/commonjs/textarea/Textarea.d.ts +1 -1
  178. package/lib/typescript/commonjs/textarea/Textarea.d.ts.map +1 -1
  179. package/lib/typescript/module/bottom-sheet/BottomSheetBase.d.ts.map +1 -1
  180. package/lib/typescript/module/checkbox/Checkbox.d.ts.map +1 -1
  181. package/lib/typescript/module/checkbox/types.d.ts +5 -0
  182. package/lib/typescript/module/checkbox/types.d.ts.map +1 -1
  183. package/lib/typescript/module/date-picker/TimeField.d.ts +1 -1
  184. package/lib/typescript/module/date-picker/TimeField.d.ts.map +1 -1
  185. package/lib/typescript/module/date-picker/types.d.ts +6 -3
  186. package/lib/typescript/module/date-picker/types.d.ts.map +1 -1
  187. package/lib/typescript/module/dialog/DialogContent.d.ts.map +1 -1
  188. package/lib/typescript/module/field/index.d.ts +2 -0
  189. package/lib/typescript/module/field/index.d.ts.map +1 -1
  190. package/lib/typescript/module/field/membership.d.ts +60 -0
  191. package/lib/typescript/module/field/membership.d.ts.map +1 -0
  192. package/lib/typescript/module/file-upload/FileUpload.d.ts +1 -1
  193. package/lib/typescript/module/file-upload/FileUpload.d.ts.map +1 -1
  194. package/lib/typescript/module/floating/types.d.ts +13 -0
  195. package/lib/typescript/module/floating/types.d.ts.map +1 -1
  196. package/lib/typescript/module/index.d.ts +3 -3
  197. package/lib/typescript/module/index.d.ts.map +1 -1
  198. package/lib/typescript/module/index.web.d.ts +3 -3
  199. package/lib/typescript/module/index.web.d.ts.map +1 -1
  200. package/lib/typescript/module/input-group/InputGroup.d.ts +1 -1
  201. package/lib/typescript/module/input-group/InputGroup.d.ts.map +1 -1
  202. package/lib/typescript/module/input-otp/InputOtp.d.ts.map +1 -1
  203. package/lib/typescript/module/input-otp/types.d.ts +7 -1
  204. package/lib/typescript/module/input-otp/types.d.ts.map +1 -1
  205. package/lib/typescript/module/layout/index.d.ts +4 -1
  206. package/lib/typescript/module/layout/index.d.ts.map +1 -1
  207. package/lib/typescript/module/layout/screen-scope.d.ts +40 -0
  208. package/lib/typescript/module/layout/screen-scope.d.ts.map +1 -0
  209. package/lib/typescript/module/phone-input/PhoneInput.d.ts.map +1 -1
  210. package/lib/typescript/module/radio/Radio.d.ts +1 -1
  211. package/lib/typescript/module/radio/Radio.d.ts.map +1 -1
  212. package/lib/typescript/module/radio/types.d.ts +11 -3
  213. package/lib/typescript/module/radio/types.d.ts.map +1 -1
  214. package/lib/typescript/module/rating/RatingInput.d.ts +1 -1
  215. package/lib/typescript/module/rating/RatingInput.d.ts.map +1 -1
  216. package/lib/typescript/module/rating/types.d.ts +6 -3
  217. package/lib/typescript/module/rating/types.d.ts.map +1 -1
  218. package/lib/typescript/module/segmented-control/SegmentedControl.d.ts +18 -2
  219. package/lib/typescript/module/segmented-control/SegmentedControl.d.ts.map +1 -1
  220. package/lib/typescript/module/select/Select.d.ts.map +1 -1
  221. package/lib/typescript/module/select/Select.web.d.ts.map +1 -1
  222. package/lib/typescript/module/select/types.d.ts +8 -1
  223. package/lib/typescript/module/select/types.d.ts.map +1 -1
  224. package/lib/typescript/module/slider/Slider.d.ts.map +1 -1
  225. package/lib/typescript/module/stepper/Stepper.d.ts +1 -1
  226. package/lib/typescript/module/stepper/Stepper.d.ts.map +1 -1
  227. package/lib/typescript/module/stepper/types.d.ts +8 -1
  228. package/lib/typescript/module/stepper/types.d.ts.map +1 -1
  229. package/lib/typescript/module/styles/styled-primitives.d.ts +16 -0
  230. package/lib/typescript/module/styles/styled-primitives.d.ts.map +1 -1
  231. package/lib/typescript/module/switch/Switch.d.ts.map +1 -1
  232. package/lib/typescript/module/switch/types.d.ts +7 -0
  233. package/lib/typescript/module/switch/types.d.ts.map +1 -1
  234. package/lib/typescript/module/text-field/TextField.d.ts.map +1 -1
  235. package/lib/typescript/module/textarea/Textarea.d.ts +1 -1
  236. package/lib/typescript/module/textarea/Textarea.d.ts.map +1 -1
  237. package/package.json +2 -1
  238. package/src/bottom-sheet/BottomSheetBase.tsx +6 -1
  239. package/src/checkbox/Checkbox.tsx +24 -8
  240. package/src/checkbox/types.ts +5 -0
  241. package/src/date-picker/TimeField.tsx +14 -3
  242. package/src/date-picker/types.ts +6 -3
  243. package/src/dialog/DialogContent.tsx +6 -2
  244. package/src/field/index.ts +2 -0
  245. package/src/field/membership.ts +164 -0
  246. package/src/file-upload/FileUpload.tsx +14 -3
  247. package/src/floating/types.ts +13 -0
  248. package/src/index.ts +9 -2
  249. package/src/index.web.ts +9 -2
  250. package/src/input-group/InputGroup.tsx +13 -2
  251. package/src/input-otp/InputOtp.tsx +19 -5
  252. package/src/input-otp/types.ts +7 -1
  253. package/src/layout/index.ts +4 -1
  254. package/src/layout/screen-scope.tsx +54 -0
  255. package/src/phone-input/PhoneInput.tsx +20 -8
  256. package/src/radio/Radio.tsx +32 -9
  257. package/src/radio/types.ts +11 -3
  258. package/src/rating/RatingInput.tsx +10 -3
  259. package/src/rating/types.ts +6 -3
  260. package/src/segmented-control/SegmentedControl.tsx +51 -8
  261. package/src/select/Select.tsx +14 -2
  262. package/src/select/Select.web.tsx +11 -2
  263. package/src/select/types.ts +8 -1
  264. package/src/slider/Slider.tsx +13 -3
  265. package/src/stepper/Stepper.tsx +12 -4
  266. package/src/stepper/types.ts +8 -1
  267. package/src/styles/styled-primitives.ts +16 -0
  268. package/src/switch/Switch.tsx +22 -9
  269. package/src/switch/types.ts +7 -0
  270. package/src/text-field/TextField.tsx +16 -4
  271. package/src/textarea/Textarea.tsx +38 -15
@@ -11,6 +11,7 @@ var _index = require("../typography/index.js");
11
11
  var _interactiveWebCss = require("../styles/interactive-web-css.js");
12
12
  var _useInteractionState = require("../hooks/use-interaction-state.js");
13
13
  var _shared = require("./shared.js");
14
+ var _membership = require("../field/membership.js");
14
15
  var _jsxRuntime = require("react/jsx-runtime");
15
16
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
17
  /**
@@ -85,9 +86,21 @@ const CheckboxComponent = ({
85
86
  style,
86
87
  labelStyle,
87
88
  accessibilityLabel,
89
+ nativeID,
88
90
  testID
89
91
  }) => {
90
92
  const theme = (0, _useTheme.useTheme)();
93
+ // The label is ADJACENT — the words beside the box ARE the control, so they
94
+ // name it and a `Field` around it only supplies what is missing. `disabled`
95
+ // is the other direction: the field's constrains, so it is OR-ed in.
96
+ const field = (0, _membership.useFieldMembership)({
97
+ accessibilityLabel,
98
+ label,
99
+ labelPlacement: 'adjacent',
100
+ disabled,
101
+ nativeID
102
+ });
103
+ const isDisabled = field.disabled;
91
104
  (0, _interactiveWebCss.useInteractiveWebCss)(STYLE_ID, BLOOM_CHECKBOX_CSS);
92
105
  (0, _interactiveWebCss.useInteractiveWebCss)(_shared.CHECKBOX_GLYPH_STYLE_ID, _shared.CHECKBOX_GLYPH_CSS);
93
106
  const {
@@ -104,12 +117,12 @@ const CheckboxComponent = ({
104
117
  } = (0, _useInteractionState.useInteractionState)();
105
118
  const sizeConfig = _shared.CHECKBOX_SIZE_CONFIG[size];
106
119
  const paint = (0, _react.useMemo)(() => (0, _shared.resolveCheckboxPaint)(theme, color), [theme, color]);
107
- const highlighted = !disabled && (hovered || pressed);
120
+ const highlighted = !isDisabled && (hovered || pressed);
108
121
  const handlePress = (0, _react.useCallback)(() => {
109
- if (!disabled) {
122
+ if (!isDisabled) {
110
123
  onCheckedChange(!checked);
111
124
  }
112
- }, [checked, disabled, onCheckedChange]);
125
+ }, [checked, isDisabled, onCheckedChange]);
113
126
  const hasText = Boolean(label || description);
114
127
  const rowStyle = (0, _react.useMemo)(() => ({
115
128
  flexDirection: 'row',
@@ -134,11 +147,14 @@ const CheckboxComponent = ({
134
147
  } : {}),
135
148
  style: [rowStyle, style],
136
149
  onPress: handlePress,
137
- onPressIn: disabled ? undefined : onPressIn,
138
- onPressOut: disabled ? undefined : onPressOut,
150
+ onPressIn: isDisabled ? undefined : onPressIn,
151
+ onPressOut: isDisabled ? undefined : onPressOut,
139
152
  onHoverIn: onHoverIn,
140
153
  onHoverOut: onHoverOut,
141
- disabled: disabled,
154
+ disabled: isDisabled,
155
+ nativeID: field.nativeID,
156
+ "aria-describedby": field.describedBy,
157
+ "aria-invalid": field.invalid || undefined,
142
158
  accessibilityRole: "checkbox"
143
159
  // `aria-checked`, not `accessibilityState`: react-native-web's
144
160
  // `createDOMProps` never reads `accessibilityState`, so a checkbox that
@@ -149,7 +165,7 @@ const CheckboxComponent = ({
149
165
  // travels on the `disabled` prop above, which both platforms map.
150
166
  ,
151
167
  "aria-checked": indeterminate ? 'mixed' : checked,
152
- accessibilityLabel: accessibilityLabel ?? label,
168
+ accessibilityLabel: field.accessibilityLabel,
153
169
  hitSlop: {
154
170
  top: slop,
155
171
  bottom: slop,
@@ -161,7 +177,7 @@ const CheckboxComponent = ({
161
177
  size: size,
162
178
  checked: checked,
163
179
  indeterminate: indeterminate,
164
- disabled: disabled,
180
+ disabled: isDisabled,
165
181
  highlighted: highlighted,
166
182
  paint: paint
167
183
  // Centre the box on the label's first line box.
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useTheme","_index","_interactiveWebCss","_useInteractionState","_shared","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DESCRIPTION_GAP","MIN_TOUCH_TARGET","IS_WEB","Platform","OS","STYLE_ID","ROW","BLOOM_CHECKBOX_CSS","interactiveWebCss","selector","varPrefix","base","transition","hover","declarations","outlineOffset","extraRules","CheckboxComponent","checked","onCheckedChange","label","description","size","disabled","indeterminate","color","style","labelStyle","accessibilityLabel","testID","theme","useTheme","useInteractiveWebCss","CHECKBOX_GLYPH_STYLE_ID","CHECKBOX_GLYPH_CSS","state","hovered","onIn","onHoverIn","onOut","onHoverOut","useInteractionState","pressed","onPressIn","onPressOut","sizeConfig","CHECKBOX_SIZE_CONFIG","paint","useMemo","resolveCheckboxPaint","highlighted","handlePress","useCallback","hasText","Boolean","rowStyle","flexDirection","alignItems","gap","opacity","slop","Math","max","ceil","box","jsxs","Pressable","dataSet","bloomCheckbox","bloomCheckboxFocusable","onPress","undefined","accessibilityRole","hitSlop","top","bottom","left","right","children","jsx","CheckboxGlyph","marginTop","checkboxLabelLineHeight","View","flex","Text","variant","text","Checkbox","exports","memo","displayName"],"sourceRoot":"../../../src","sources":["checkbox/Checkbox.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useTheme","_index","_interactiveWebCss","_useInteractionState","_shared","_membership","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DESCRIPTION_GAP","MIN_TOUCH_TARGET","IS_WEB","Platform","OS","STYLE_ID","ROW","BLOOM_CHECKBOX_CSS","interactiveWebCss","selector","varPrefix","base","transition","hover","declarations","outlineOffset","extraRules","CheckboxComponent","checked","onCheckedChange","label","description","size","disabled","indeterminate","color","style","labelStyle","accessibilityLabel","nativeID","testID","theme","useTheme","field","useFieldMembership","labelPlacement","isDisabled","useInteractiveWebCss","CHECKBOX_GLYPH_STYLE_ID","CHECKBOX_GLYPH_CSS","state","hovered","onIn","onHoverIn","onOut","onHoverOut","useInteractionState","pressed","onPressIn","onPressOut","sizeConfig","CHECKBOX_SIZE_CONFIG","paint","useMemo","resolveCheckboxPaint","highlighted","handlePress","useCallback","hasText","Boolean","rowStyle","flexDirection","alignItems","gap","opacity","slop","Math","max","ceil","box","jsxs","Pressable","dataSet","bloomCheckbox","bloomCheckboxFocusable","onPress","undefined","describedBy","invalid","accessibilityRole","hitSlop","top","bottom","left","right","children","jsx","CheckboxGlyph","marginTop","checkboxLabelLineHeight","View","flex","Text","variant","text","Checkbox","exports","memo","displayName"],"sourceRoot":"../../../src","sources":["checkbox/Checkbox.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAJ,OAAA;AAEA,IAAAK,oBAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAQA,IAAAO,WAAA,GAAAP,OAAA;AAAyD,IAAAQ,WAAA,GAAAR,OAAA;AAAA,SAAAD,wBAAAU,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAZ,uBAAA,YAAAA,CAAAU,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMkB,eAAe,GAAG,CAAC;;AAEzB;AACA;AACA;AACA;AACA;AACA,MAAMC,gBAAgB,GAAG,EAAE;AAE3B,MAAMC,MAAM,GAAGC,qBAAQ,CAACC,EAAE,KAAK,KAAK;;AAEpC;AACA;AACA,MAAMC,QAAQ,GAAG,wBAAwB;AACzC,MAAMC,GAAG,GAAG,uBAAuB;AAEnC,MAAMC,kBAAkB,GAAG,IAAAC,oCAAiB,EAAC;EAC3CC,QAAQ,EAAEH,GAAG;EACbI,SAAS,EAAE,gBAAgB;EAC3B;EACA;EACA;EACA;EACAC,IAAI,EAAE;AACR;AACA;AACA;AACA;AACA,GAAG;EACDC,UAAU,EAAE,MAAM;EAClBC,KAAK,EAAE;IAAEC,YAAY,EAAE;EAAc,CAAC;EACtCC,aAAa,EAAE,CAAC;EAChBC,UAAU,EAAE,GAAGV,GAAG;AACpB,EAAEA,GAAG;AACL;AACA;AACA;AACA,EAAEA,GAAG;AACL;AACA;AACA,CAAC,CAAC;AAEF,MAAMW,iBAA0C,GAAGA,CAAC;EAClDC,OAAO;EACPC,eAAe;EACfC,KAAK;EACLC,WAAW;EACXC,IAAI,GAAG,QAAQ;EACfC,QAAQ,GAAG,KAAK;EAChBC,aAAa,GAAG,KAAK;EACrBC,KAAK;EACLC,KAAK;EACLC,UAAU;EACVC,kBAAkB;EAClBC,QAAQ;EACRC;AACF,CAAC,KAAK;EACJ,MAAMC,KAAK,GAAG,IAAAC,kBAAQ,EAAC,CAAC;EACxB;EACA;EACA;EACA,MAAMC,KAAK,GAAG,IAAAC,8BAAkB,EAAC;IAC/BN,kBAAkB;IAClBR,KAAK;IACLe,cAAc,EAAE,UAAU;IAC1BZ,QAAQ;IACRM;EACF,CAAC,CAAC;EACF,MAAMO,UAAU,GAAGH,KAAK,CAACV,QAAQ;EACjC,IAAAc,uCAAoB,EAAChC,QAAQ,EAAEE,kBAAkB,CAAC;EAClD,IAAA8B,uCAAoB,EAACC,+BAAuB,EAAEC,0BAAkB,CAAC;EACjE,MAAM;IAAEC,KAAK,EAAEC,OAAO;IAAEC,IAAI,EAAEC,SAAS;IAAEC,KAAK,EAAEC;EAAW,CAAC,GAAG,IAAAC,wCAAmB,EAAC,CAAC;EACpF;EACA;EACA,MAAM;IAAEN,KAAK,EAAEO,OAAO;IAAEL,IAAI,EAAEM,SAAS;IAAEJ,KAAK,EAAEK;EAAW,CAAC,GAAG,IAAAH,wCAAmB,EAAC,CAAC;EACpF,MAAMI,UAAU,GAAGC,4BAAoB,CAAC7B,IAAI,CAAC;EAC7C,MAAM8B,KAAK,GAAG,IAAAC,cAAO,EAAC,MAAM,IAAAC,4BAAoB,EAACvB,KAAK,EAAEN,KAAK,CAAC,EAAE,CAACM,KAAK,EAAEN,KAAK,CAAC,CAAC;EAC/E,MAAM8B,WAAW,GAAG,CAACnB,UAAU,KAAKK,OAAO,IAAIM,OAAO,CAAC;EAEvD,MAAMS,WAAW,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACpC,IAAI,CAACrB,UAAU,EAAE;MACfjB,eAAe,CAAC,CAACD,OAAO,CAAC;IAC3B;EACF,CAAC,EAAE,CAACA,OAAO,EAAEkB,UAAU,EAAEjB,eAAe,CAAC,CAAC;EAE1C,MAAMuC,OAAO,GAAGC,OAAO,CAACvC,KAAK,IAAIC,WAAW,CAAC;EAE7C,MAAMuC,QAAQ,GAAG,IAAAP,cAAO,EACtB,OAAoB;IAClBQ,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,YAAY;IACxBC,GAAG,EAAEb,UAAU,CAACa,GAAG;IACnB;IACA;IACAC,OAAO,EAAE;EACX,CAAC,CAAC,EACF,CAACd,UAAU,CACb,CAAC;EAED,MAAMe,IAAI,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,IAAI,CAAC,CAACnE,gBAAgB,GAAGiD,UAAU,CAACmB,GAAG,IAAI,CAAC,CAAC,CAAC;EAE5E,oBACE,IAAAzF,WAAA,CAAA0F,IAAA,EAACjG,YAAA,CAAAkG;EACC;EACA;EACA;EACA;EAAA;IAAA,IACKrE,MAAM,GACN;MAAEsE,OAAO,EAAE;QAAEC,aAAa,EAAE,EAAE;QAAEC,sBAAsB,EAAE;MAAG;IAAE,CAAC,GAC/D,CAAC,CAAC;IACNhD,KAAK,EAAE,CAACkC,QAAQ,EAAElC,KAAK,CAAE;IACzBiD,OAAO,EAAEnB,WAAY;IACrBR,SAAS,EAAEZ,UAAU,GAAGwC,SAAS,GAAG5B,SAAU;IAC9CC,UAAU,EAAEb,UAAU,GAAGwC,SAAS,GAAG3B,UAAW;IAChDN,SAAS,EAAEA,SAAU;IACrBE,UAAU,EAAEA,UAAW;IACvBtB,QAAQ,EAAEa,UAAW;IACrBP,QAAQ,EAAEI,KAAK,CAACJ,QAAS;IACzB,oBAAkBI,KAAK,CAAC4C,WAAY;IACpC,gBAAc5C,KAAK,CAAC6C,OAAO,IAAIF,SAAU;IACzCG,iBAAiB,EAAC;IAClB;IACA;IACA;IACA;IACA;IACA;IACA;IAAA;IACA,gBAAcvD,aAAa,GAAG,OAAO,GAAGN,OAAQ;IAChDU,kBAAkB,EAAEK,KAAK,CAACL,kBAAmB;IAC7CoD,OAAO,EAAE;MAAEC,GAAG,EAAEhB,IAAI;MAAEiB,MAAM,EAAEjB,IAAI;MAAEkB,IAAI,EAAElB,IAAI;MAAEmB,KAAK,EAAEnB;IAAK,CAAE;IAC9DnC,MAAM,EAAEA,MAAO;IAAAuD,QAAA,gBAEf,IAAAzG,WAAA,CAAA0G,GAAA,EAAC5G,OAAA,CAAA6G,aAAa;MACZjE,IAAI,EAAEA,IAAK;MACXJ,OAAO,EAAEA,OAAQ;MACjBM,aAAa,EAAEA,aAAc;MAC7BD,QAAQ,EAAEa,UAAW;MACrBmB,WAAW,EAAEA,WAAY;MACzBH,KAAK,EAAEA;MACP;MAAA;MACAoC,SAAS,EAAE9B,OAAO,GAAG,CAAC,IAAA+B,+BAAuB,EAACnE,IAAI,CAAC,GAAG4B,UAAU,CAACmB,GAAG,IAAI,CAAC,GAAG;IAAE,CAC/E,CAAC,EAEDX,OAAO,iBACN,IAAA9E,WAAA,CAAA0F,IAAA,EAACjG,YAAA,CAAAqH,IAAI;MAAChE,KAAK,EAAE;QAAEiE,IAAI,EAAE;MAAE,CAAE;MAAAN,QAAA,GACtBjE,KAAK,iBACJ,IAAAxC,WAAA,CAAA0G,GAAA,EAAC/G,MAAA,CAAAqH,IAAI;QAACC,OAAO,EAAE3C,UAAU,CAAC9B,KAAM;QAACM,KAAK,EAAE,CAAC;UAAED,KAAK,EAAE2B,KAAK,CAAC0C;QAAK,CAAC,EAAEnE,UAAU,CAAE;QAAA0D,QAAA,EACzEjE;MAAK,CACF,CACP,EACAC,WAAW,iBACV,IAAAzC,WAAA,CAAA0G,GAAA,EAAC/G,MAAA,CAAAqH,IAAI;QACHC,OAAO,EAAE3C,UAAU,CAAC7B,WAAY;QAChCK,KAAK,EAAE;UAAED,KAAK,EAAE2B,KAAK,CAAC/B,WAAW;UAAEmE,SAAS,EAAEpE,KAAK,GAAGpB,eAAe,GAAG;QAAE,CAAE;QAAAqF,QAAA,EAE3EhE;MAAW,CACR,CACP;IAAA,CACG,CACP;EAAA,CACQ,CAAC;AAEhB,CAAC;AAEM,MAAM0E,QAAQ,GAAAC,OAAA,CAAAD,QAAA,gBAAG,IAAAE,WAAI,EAAChF,iBAAiB,CAAC;AAC/C8E,QAAQ,CAACG,WAAW,GAAG,UAAU","ignoreList":[]}
@@ -12,6 +12,8 @@ var _useTheme = require("../theme/use-theme.js");
12
12
  var _index = require("../typography/index.js");
13
13
  var _palette = require("./palette.js");
14
14
  var _time = require("./time.js");
15
+ var _index2 = require("../control-surface/index.js");
16
+ var _membership = require("../field/membership.js");
15
17
  var _jsxRuntime = require("react/jsx-runtime");
16
18
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
17
19
  /**
@@ -44,9 +46,7 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
44
46
  * The VALUE is always 24h `"HH:mm"`, whatever `hourFormat` draws, so it drops
45
47
  * straight into `MeetingScheduler`'s `timeSlots` and needs no locale from the
46
48
  * caller.
47
- */
48
-
49
- const SIZE_CONFIG = {
49
+ */const SIZE_CONFIG = {
50
50
  small: {
51
51
  width: 96,
52
52
  height: 32,
@@ -72,8 +72,8 @@ function TimeFieldComponent({
72
72
  max,
73
73
  step = 1,
74
74
  hourFormat = '24h',
75
- size = 'medium',
76
- disabled = false,
75
+ size: sizeProp,
76
+ disabled: disabledProp = false,
77
77
  accessibilityLabel,
78
78
  placeholder,
79
79
  width,
@@ -81,6 +81,15 @@ function TimeFieldComponent({
81
81
  testID
82
82
  }) {
83
83
  const theme = (0, _useTheme.useTheme)();
84
+ // `"--:--"` names nothing, so the name is a prop — or, inside a `Field`, the
85
+ // field's label. The density contract supplies the size the same way: a
86
+ // container can ask for `small` once instead of on every control.
87
+ const size = (0, _index2.useInheritedControl)('density', sizeProp, 'medium');
88
+ const field = (0, _membership.useFieldMembership)({
89
+ accessibilityLabel,
90
+ disabled: disabledProp
91
+ });
92
+ const disabled = field.disabled;
84
93
  const palette = (0, _react.useMemo)(() => (0, _palette.resolveCalendarPalette)(theme), [theme]);
85
94
  const config = SIZE_CONFIG[size];
86
95
  const shown = value ? (0, _time.formatTime)(value, hourFormat) : '';
@@ -164,7 +173,10 @@ function TimeFieldComponent({
164
173
  placeholder: placeholder ?? (hourFormat === '12h' ? '--:-- --' : '--:--'),
165
174
  placeholderTextColor: palette.secondaryText,
166
175
  inputMode: hourFormat === '12h' ? 'text' : 'numeric',
167
- accessibilityLabel: accessibilityLabel,
176
+ nativeID: field.nativeID,
177
+ accessibilityLabel: field.accessibilityLabel,
178
+ "aria-describedby": field.describedBy,
179
+ "aria-invalid": field.invalid || undefined,
168
180
  "aria-disabled": disabled || undefined,
169
181
  style: [FIELD_TRANSITION, fieldStyle, style],
170
182
  testID: testID
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_menuType","_tokens","_useTheme","_index","_palette","_time","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SIZE_CONFIG","small","width","height","type","medium","FIELD_TRANSITION","Platform","OS","transitionProperty","transitionDuration","transitionTimingFunction","TimeFieldComponent","value","onChange","min","max","step","hourFormat","size","disabled","accessibilityLabel","placeholder","style","testID","theme","useTheme","palette","useMemo","resolveCalendarPalette","config","shown","formatTime","text","setText","useState","focused","setFocused","useEffect","commit","draft","trim","parsed","parseTime","next","snapTime","nudge","direction","stepTime","fieldStyle","paddingLeft","paddingRight","borderWidth","borderRadius","borderColor","chipBorderFocused","chipBorder","backgroundColor","panel","boxShadow","shadowXs","color","disabledText","opacity","DISABLED_OPACITY","TYPE_SCALE","MENU_FONT_FAMILY","outlineWidth","jsx","TextInput","editable","onChangeText","onFocus","onBlur","onSubmitEditing","onKeyPress","event","key","nativeEvent","preventDefault","placeholderTextColor","secondaryText","inputMode","undefined","TimeField","exports","memo","displayName"],"sourceRoot":"../../../src","sources":["date-picker/TimeField.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAEA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AAAmE,IAAAQ,WAAA,GAAAR,OAAA;AAAA,SAAAD,wBAAAU,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAZ,uBAAA,YAAAA,CAAAU,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMkB,WAA4G,GAAG;EACnHC,KAAK,EAAE;IAAEC,KAAK,EAAE,EAAE;IAAEC,MAAM,EAAE,EAAE;IAAEC,IAAI,EAAE;EAAgB,CAAC;EACvDC,MAAM,EAAE;IAAEH,KAAK,EAAE,GAAG;IAAEC,MAAM,EAAE,EAAE;IAAEC,IAAI,EAAE;EAAc;AACxD,CAAC;;AAED;AACA,MAAME,gBAAoC,GACxCC,qBAAQ,CAACC,EAAE,KAAK,KAAK,GACjB;EAAEC,kBAAkB,EAAE,cAAc;EAAEC,kBAAkB,EAAE,OAAO;EAAEC,wBAAwB,EAAE;AAAW,CAAC,GACzG,IAAI;AAEV,SAASC,kBAAkBA,CAAC;EAC1BC,KAAK;EACLC,QAAQ;EACRC,GAAG;EACHC,GAAG;EACHC,IAAI,GAAG,CAAC;EACRC,UAAU,GAAG,KAAK;EAClBC,IAAI,GAAG,QAAQ;EACfC,QAAQ,GAAG,KAAK;EAChBC,kBAAkB;EAClBC,WAAW;EACXpB,KAAK;EACLqB,KAAK;EACLC;AACc,CAAC,EAAE;EACjB,MAAMC,KAAK,GAAG,IAAAC,kBAAQ,EAAC,CAAC;EACxB,MAAMC,OAAO,GAAG,IAAAC,cAAO,EAAC,MAAM,IAAAC,+BAAsB,EAACJ,KAAK,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EACrE,MAAMK,MAAM,GAAG9B,WAAW,CAACmB,IAAI,CAAC;EAEhC,MAAMY,KAAK,GAAGlB,KAAK,GAAG,IAAAmB,gBAAU,EAACnB,KAAK,EAAEK,UAAU,CAAC,GAAG,EAAE;EACxD,MAAM,CAACe,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAACJ,KAAK,CAAC;EACvC,MAAM,CAACK,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;;EAE7C;EACA;EACA,IAAAG,gBAAS,EAAC,MAAM;IACdJ,OAAO,CAACH,KAAK,CAAC;EAChB,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,MAAMQ,MAAM,GAAIC,KAAa,IAAK;IAChC,IAAIA,KAAK,CAACC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;MACvBP,OAAO,CAAC,EAAE,CAAC;MACX,IAAIrB,KAAK,KAAK,IAAI,EAAEC,QAAQ,CAAC,IAAI,CAAC;MAClC;IACF;IACA,MAAM4B,MAAM,GAAG,IAAAC,eAAS,EAACH,KAAK,EAAEtB,UAAU,CAAC;IAC3C,MAAM0B,IAAI,GAAGF,MAAM,GAAG,IAAAG,cAAQ,EAACH,MAAM,EAAE;MAAEzB,IAAI;MAAEF,GAAG;MAAEC;IAAI,CAAC,CAAC,GAAG,IAAI;IACjE,IAAI,CAAC4B,IAAI,EAAE;MACTV,OAAO,CAACH,KAAK,CAAC;MACd;IACF;IACAG,OAAO,CAAC,IAAAF,gBAAU,EAACY,IAAI,EAAE1B,UAAU,CAAC,CAAC;IACrC,IAAI0B,IAAI,KAAK/B,KAAK,EAAEC,QAAQ,CAAC8B,IAAI,CAAC;EACpC,CAAC;EAED,MAAME,KAAK,GAAIC,SAAiB,IAAK;IACnC,MAAMH,IAAI,GAAG,IAAAI,cAAQ,EAACnC,KAAK,EAAEkC,SAAS,EAAE;MAAE9B,IAAI;MAAEF,GAAG;MAAEC;IAAI,CAAC,CAAC;IAC3D,IAAI,CAAC4B,IAAI,EAAE;IACXV,OAAO,CAAC,IAAAF,gBAAU,EAACY,IAAI,EAAE1B,UAAU,CAAC,CAAC;IACrC,IAAI0B,IAAI,KAAK/B,KAAK,EAAEC,QAAQ,CAAC8B,IAAI,CAAC;EACpC,CAAC;EAED,MAAMK,UAAqB,GAAG;IAC5B/C,KAAK,EAAEA,KAAK,IAAI4B,MAAM,CAAC5B,KAAK;IAC5BC,MAAM,EAAE2B,MAAM,CAAC3B,MAAM;IACrB+C,WAAW,EAAE,CAAC;IACdC,YAAY,EAAE,CAAC;IACfC,WAAW,EAAE,CAAC;IACdC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAElB,OAAO,GAAGT,OAAO,CAAC4B,iBAAiB,GAAG5B,OAAO,CAAC6B,UAAU;IACrEC,eAAe,EAAE9B,OAAO,CAAC+B,KAAK;IAC9BC,SAAS,EAAEhC,OAAO,CAACiC,QAAQ;IAC3BC,KAAK,EAAEzC,QAAQ,GAAGO,OAAO,CAACmC,YAAY,GAAGnC,OAAO,CAACM,IAAI;IACrD8B,OAAO,EAAE3C,QAAQ,GAAG4C,wBAAgB,GAAG,CAAC;IACxC;IACA,GAAGC,iBAAU,CAACnC,MAAM,CAAC1B,IAAI,CAAC;IAC1B,GAAG8D,0BAAgB;IACnB;IACAC,YAAY,EAAE;EAChB,CAAC;EAED,oBACE,IAAAvF,WAAA,CAAAwF,GAAA,EAAC/F,YAAA,CAAAgG,SAAS;IACRxD,KAAK,EAAEoB,IAAK;IACZqC,QAAQ,EAAE,CAAClD,QAAS;IACpBmD,YAAY,EAAErC,OAAQ;IACtBsC,OAAO,EAAEA,CAAA,KAAMnC,UAAU,CAAC,IAAI,CAAE;IAChCoC,MAAM,EAAEA,CAAA,KAAM;MACZpC,UAAU,CAAC,KAAK,CAAC;MACjBE,MAAM,CAACN,IAAI,CAAC;IACd,CAAE;IACFyC,eAAe,EAAEA,CAAA,KAAMnC,MAAM,CAACN,IAAI,CAAE;IACpC0C,UAAU,EAAGC,KAAK,IAAK;MACrB,MAAMC,GAAG,GAAGD,KAAK,CAACE,WAAW,CAACD,GAAG;MACjC,IAAIA,GAAG,KAAK,QAAQ,EAAE;QACpB3C,OAAO,CAACH,KAAK,CAAC;MAChB,CAAC,MAAM,IAAI8C,GAAG,KAAK,SAAS,EAAE;QAC3BD,KAAK,CAAgDG,cAAc,GAAG,CAAC;QACxEjC,KAAK,CAAC,CAAC,CAAC;MACV,CAAC,MAAM,IAAI+B,GAAG,KAAK,WAAW,EAAE;QAC7BD,KAAK,CAAgDG,cAAc,GAAG,CAAC;QACxEjC,KAAK,CAAC,CAAC,CAAC,CAAC;MACX;IACF,CAAE;IACFxB,WAAW,EAAEA,WAAW,KAAKJ,UAAU,KAAK,KAAK,GAAG,UAAU,GAAG,OAAO,CAAE;IAC1E8D,oBAAoB,EAAErD,OAAO,CAACsD,aAAc;IAC5CC,SAAS,EAAEhE,UAAU,KAAK,KAAK,GAAG,MAAM,GAAG,SAAU;IACrDG,kBAAkB,EAAEA,kBAAmB;IACvC,iBAAeD,QAAQ,IAAI+D,SAAU;IACrC5D,KAAK,EAAE,CAACjB,gBAAgB,EAAE2C,UAAU,EAAE1B,KAAK,CAAE;IAC7CC,MAAM,EAAEA;EAAO,CAChB,CAAC;AAEN;AAEO,MAAM4D,SAAS,GAAAC,OAAA,CAAAD,SAAA,gBAAG,IAAAE,WAAI,EAAC1E,kBAAkB,CAAC;AACjDwE,SAAS,CAACG,WAAW,GAAG,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_menuType","_tokens","_useTheme","_index","_palette","_time","_index2","_membership","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SIZE_CONFIG","small","width","height","type","medium","FIELD_TRANSITION","Platform","OS","transitionProperty","transitionDuration","transitionTimingFunction","TimeFieldComponent","value","onChange","min","max","step","hourFormat","size","sizeProp","disabled","disabledProp","accessibilityLabel","placeholder","style","testID","theme","useTheme","useInheritedControl","field","useFieldMembership","palette","useMemo","resolveCalendarPalette","config","shown","formatTime","text","setText","useState","focused","setFocused","useEffect","commit","draft","trim","parsed","parseTime","next","snapTime","nudge","direction","stepTime","fieldStyle","paddingLeft","paddingRight","borderWidth","borderRadius","borderColor","chipBorderFocused","chipBorder","backgroundColor","panel","boxShadow","shadowXs","color","disabledText","opacity","DISABLED_OPACITY","TYPE_SCALE","MENU_FONT_FAMILY","outlineWidth","jsx","TextInput","editable","onChangeText","onFocus","onBlur","onSubmitEditing","onKeyPress","event","key","nativeEvent","preventDefault","placeholderTextColor","secondaryText","inputMode","nativeID","describedBy","invalid","undefined","TimeField","exports","memo","displayName"],"sourceRoot":"../../../src","sources":["date-picker/TimeField.tsx"],"mappings":"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","ignoreList":[]}
@@ -9,6 +9,7 @@ var _react = _interopRequireWildcard(require("react"));
9
9
  var _reactNative = require("react-native");
10
10
  var _index = require("../typography/index.js");
11
11
  var _useTheme = require("../theme/use-theme.js");
12
+ var _index2 = require("../layout/index.js");
12
13
  var _button = require("../button");
13
14
  var _context = require("./context.js");
14
15
  var _jsxRuntime = require("react/jsx-runtime");
@@ -36,36 +37,42 @@ function DialogBody({
36
37
  children
37
38
  }) {
38
39
  const theme = (0, _useTheme.useTheme)();
39
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
40
- children: [title ?
40
+ return (
41
41
  /*#__PURE__*/
42
- // Bloom's `Text`, not react-native's: the raw one renders in whatever
43
- // font the platform picks and takes no theme colour, so every dialog
44
- // title in the library was the system face while the rest of the surface
45
- // was Bloom's. The sizes stay explicit — the typography ROLES
46
- // (`H1`…`H6`, `P`) carry family and weight, not a size ramp.
47
- (0, _jsxRuntime.jsx)(_index.Text, {
48
- nativeID: titleId,
49
- style: {
50
- fontSize: 22,
51
- fontWeight: '600',
52
- paddingBottom: description ? 4 : 16,
53
- lineHeight: 30
54
- },
55
- children: title
56
- }) : null, description ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.Text, {
57
- nativeID: descriptionId,
58
- style: {
59
- fontSize: 16,
60
- color: theme.colors.textSecondary,
61
- paddingBottom: 16,
62
- lineHeight: 22
63
- },
64
- children: description
65
- }) : null, children, actions && actions.length > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(ActionRow, {
66
- actions: actions
67
- }) : null]
68
- });
42
+ // A dialog is its own screen: chrome inside it claims THIS surface's top
43
+ // edge and follows THIS surface's scroller, not the page's underneath
44
+ // (`layout/screen-scope.tsx`).
45
+ (0, _jsxRuntime.jsxs)(_index2.ScreenScope, {
46
+ children: [title ?
47
+ /*#__PURE__*/
48
+ // Bloom's `Text`, not react-native's: the raw one renders in whatever
49
+ // font the platform picks and takes no theme colour, so every dialog
50
+ // title in the library was the system face while the rest of the surface
51
+ // was Bloom's. The sizes stay explicit — the typography ROLES
52
+ // (`H1`…`H6`, `P`) carry family and weight, not a size ramp.
53
+ (0, _jsxRuntime.jsx)(_index.Text, {
54
+ nativeID: titleId,
55
+ style: {
56
+ fontSize: 22,
57
+ fontWeight: '600',
58
+ paddingBottom: description ? 4 : 16,
59
+ lineHeight: 30
60
+ },
61
+ children: title
62
+ }) : null, description ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.Text, {
63
+ nativeID: descriptionId,
64
+ style: {
65
+ fontSize: 16,
66
+ color: theme.colors.textSecondary,
67
+ paddingBottom: 16,
68
+ lineHeight: 22
69
+ },
70
+ children: description
71
+ }) : null, children, actions && actions.length > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(ActionRow, {
72
+ actions: actions
73
+ }) : null]
74
+ })
75
+ );
69
76
  }
70
77
  function ActionRow({
71
78
  actions
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_index","_useTheme","_button","_context","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DialogBody","titleId","descriptionId","title","description","actions","children","theme","useTheme","jsxs","Fragment","jsx","Text","nativeID","style","fontSize","fontWeight","paddingBottom","lineHeight","color","colors","textSecondary","length","ActionRow","View","width","gap","justifyContent","map","action","idx","ActionButton","label","close","useDialogContext","shouldCloseOnPress","handlePress","useCallback","onPress","event","undefined","Button","variant","ACTION_VARIANT","size","disabled","accessibilityLabel","testID","fullWidth","alignSelf","cancel","destructive"],"sourceRoot":"../../../src","sources":["dialog/DialogContent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_index","_useTheme","_index2","_button","_context","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DialogBody","titleId","descriptionId","title","description","actions","children","theme","useTheme","jsxs","ScreenScope","jsx","Text","nativeID","style","fontSize","fontWeight","paddingBottom","lineHeight","color","colors","textSecondary","length","ActionRow","View","width","gap","justifyContent","map","action","idx","ActionButton","label","close","useDialogContext","shouldCloseOnPress","handlePress","useCallback","onPress","event","undefined","Button","variant","ACTION_VARIANT","size","disabled","accessibilityLabel","testID","fullWidth","alignSelf","cancel","destructive"],"sourceRoot":"../../../src","sources":["dialog/DialogContent.tsx"],"mappings":"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","ignoreList":[]}
@@ -15,6 +15,13 @@ Object.defineProperty(exports, "useFieldControl", {
15
15
  return _context.useFieldControl;
16
16
  }
17
17
  });
18
+ Object.defineProperty(exports, "useFieldMembership", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _membership.useFieldMembership;
22
+ }
23
+ });
18
24
  var _Field = require("./Field.js");
19
25
  var _context = require("./context.js");
26
+ var _membership = require("./membership.js");
20
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_Field","require","_context"],"sourceRoot":"../../../src","sources":["field/index.ts"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA","ignoreList":[]}
1
+ {"version":3,"names":["_Field","require","_context","_membership"],"sourceRoot":"../../../src","sources":["field/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA","ignoreList":[]}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useFieldMembership = useFieldMembership;
7
+ var _react = require("react");
8
+ var _context = require("./context.js");
9
+ /**
10
+ * ONE resolution of field membership, for every control that opts in.
11
+ *
12
+ * `useFieldControl()` hands a control the field's ids and state; applying them
13
+ * is four separate decisions, and each has a direction that is silently wrong:
14
+ *
15
+ * the NAME defers to the field (`??`) — a control inside a labelled
16
+ * field must not announce nothing
17
+ * the CONSTRAINTS combine with the field (`||`) — `disabled` and `invalid`
18
+ * restrict, so a control cannot opt out
19
+ * the ID is the field's (`??` the caller's own, which wins)
20
+ * `describedBy` is a LIST, so the two are joined rather than one chosen
21
+ *
22
+ * Fifteen families resolving that by hand is fifteen chances to write `??` where
23
+ * `||` belongs — and the failure is silent in both directions: a control that
24
+ * re-enables itself inside a disabled field looks fine and a field-labelled
25
+ * control that announces nothing looks fine too. So it is a function, for the
26
+ * same reason `useInheritedControl` is one.
27
+ *
28
+ * `TextFieldInput` is the one family that resolves the same rule inline, because
29
+ * it also reconciles the text-field shell's own context and its standalone
30
+ * branch. It is not exempt from the RULE: `FieldMembership.test.tsx` asserts the
31
+ * observable properties for every family, so the two implementations cannot
32
+ * disagree about what a field means without going red.
33
+ *
34
+ * ## The name, and why placement decides it
35
+ *
36
+ * A control's own label is either STACKED above it (`TextField`, `Textarea`:
37
+ * the field's label and the control's label are two spellings of one thing, and
38
+ * a `Field` around it should win) or ADJACENT to it (a checkbox's caption, a
39
+ * radio's option text: the words the user reads AS the control, which the
40
+ * announced name must match). Getting that backwards makes a screen reader say
41
+ * one thing while the eye reads another, so it is a declared property of the
42
+ * family rather than a guess this hook could make.
43
+ *
44
+ * A control with neither — `Switch`, `Slider`, a progress bar — can be named by
45
+ * NOTHING but the field, which is the case this hook exists for.
46
+ */
47
+
48
+ /** Where the control renders its own label, which decides which name wins. */
49
+
50
+ /**
51
+ * Resolve what an enclosing `Field` contributes to one control.
52
+ *
53
+ * ```tsx
54
+ * const field = useFieldMembership({ accessibilityLabel, label, labelPlacement: 'adjacent', disabled });
55
+ * <Pressable
56
+ * nativeID={field.nativeID}
57
+ * accessibilityLabel={field.accessibilityLabel}
58
+ * aria-describedby={field.describedBy}
59
+ * aria-invalid={field.invalid || undefined}
60
+ * disabled={field.disabled}
61
+ * />
62
+ * ```
63
+ *
64
+ * Outside a `Field` it returns the control's own values unchanged, so a control
65
+ * can call it unconditionally.
66
+ */
67
+ function useFieldMembership(input = {}) {
68
+ const field = (0, _context.useFieldControl)();
69
+ const {
70
+ accessibilityLabel,
71
+ label,
72
+ labelPlacement = 'stacked',
73
+ disabled = false,
74
+ invalid = false,
75
+ required = false,
76
+ nativeID,
77
+ describedBy
78
+ } = input;
79
+ const fieldLabel = field?.labelText;
80
+ const fieldDescribedBy = field?.describedBy;
81
+ const fieldControlId = field?.controlId;
82
+ const fieldDisabled = field?.disabled === true;
83
+ const fieldInvalid = field?.invalid === true;
84
+ const fieldRequired = field?.required === true;
85
+ return (0, _react.useMemo)(() => {
86
+ const own = label ?? undefined;
87
+ const name = accessibilityLabel ?? (labelPlacement === 'adjacent' ? own ?? fieldLabel : fieldLabel ?? own);
88
+
89
+ // An id LIST: a control that already points at its own hint keeps it, and
90
+ // the field's error is added rather than swapped in. Duplicates are
91
+ // dropped — an id named twice is read twice by some screen readers.
92
+ const described = [describedBy, fieldDescribedBy].filter(id => typeof id === 'string' && id.length > 0);
93
+ const uniqueDescribed = Array.from(new Set(described.flatMap(ids => ids.split(/\s+/))));
94
+ return {
95
+ inField: field != null,
96
+ nativeID: nativeID ?? fieldControlId,
97
+ accessibilityLabel: name,
98
+ describedBy: uniqueDescribed.length > 0 ? uniqueDescribed.join(' ') : undefined,
99
+ disabled: disabled || fieldDisabled,
100
+ invalid: invalid || fieldInvalid,
101
+ required: required || fieldRequired
102
+ };
103
+ }, [field, accessibilityLabel, label, labelPlacement, disabled, invalid, required, nativeID, describedBy, fieldLabel, fieldDescribedBy, fieldControlId, fieldDisabled, fieldInvalid, fieldRequired]);
104
+ }
105
+ //# sourceMappingURL=membership.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_context","useFieldMembership","input","field","useFieldControl","accessibilityLabel","label","labelPlacement","disabled","invalid","required","nativeID","describedBy","fieldLabel","labelText","fieldDescribedBy","fieldControlId","controlId","fieldDisabled","fieldInvalid","fieldRequired","useMemo","own","undefined","name","described","filter","id","length","uniqueDescribed","Array","from","Set","flatMap","ids","split","inField","join"],"sourceRoot":"../../../src","sources":["field/membership.ts"],"mappings":";;;;;;AAsCA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AAxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA;;AA4CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,kBAAkBA,CAACC,KAA2B,GAAG,CAAC,CAAC,EAAmB;EACpF,MAAMC,KAAK,GAAG,IAAAC,wBAAe,EAAC,CAAC;EAC/B,MAAM;IACJC,kBAAkB;IAClBC,KAAK;IACLC,cAAc,GAAG,SAAS;IAC1BC,QAAQ,GAAG,KAAK;IAChBC,OAAO,GAAG,KAAK;IACfC,QAAQ,GAAG,KAAK;IAChBC,QAAQ;IACRC;EACF,CAAC,GAAGV,KAAK;EAET,MAAMW,UAAU,GAAGV,KAAK,EAAEW,SAAS;EACnC,MAAMC,gBAAgB,GAAGZ,KAAK,EAAES,WAAW;EAC3C,MAAMI,cAAc,GAAGb,KAAK,EAAEc,SAAS;EACvC,MAAMC,aAAa,GAAGf,KAAK,EAAEK,QAAQ,KAAK,IAAI;EAC9C,MAAMW,YAAY,GAAGhB,KAAK,EAAEM,OAAO,KAAK,IAAI;EAC5C,MAAMW,aAAa,GAAGjB,KAAK,EAAEO,QAAQ,KAAK,IAAI;EAE9C,OAAO,IAAAW,cAAO,EAAkB,MAAM;IACpC,MAAMC,GAAG,GAAGhB,KAAK,IAAIiB,SAAS;IAC9B,MAAMC,IAAI,GACRnB,kBAAkB,KACjBE,cAAc,KAAK,UAAU,GAAIe,GAAG,IAAIT,UAAU,GAAKA,UAAU,IAAIS,GAAI,CAAC;;IAE7E;IACA;IACA;IACA,MAAMG,SAAS,GAAG,CAACb,WAAW,EAAEG,gBAAgB,CAAC,CAACW,MAAM,CACrDC,EAAE,IAAmB,OAAOA,EAAE,KAAK,QAAQ,IAAIA,EAAE,CAACC,MAAM,GAAG,CAC9D,CAAC;IACD,MAAMC,eAAe,GAAGC,KAAK,CAACC,IAAI,CAAC,IAAIC,GAAG,CAACP,SAAS,CAACQ,OAAO,CAAEC,GAAG,IAAKA,GAAG,CAACC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEzF,OAAO;MACLC,OAAO,EAAEjC,KAAK,IAAI,IAAI;MACtBQ,QAAQ,EAAEA,QAAQ,IAAIK,cAAc;MACpCX,kBAAkB,EAAEmB,IAAI;MACxBZ,WAAW,EAAEiB,eAAe,CAACD,MAAM,GAAG,CAAC,GAAGC,eAAe,CAACQ,IAAI,CAAC,GAAG,CAAC,GAAGd,SAAS;MAC/Ef,QAAQ,EAAEA,QAAQ,IAAIU,aAAa;MACnCT,OAAO,EAAEA,OAAO,IAAIU,YAAY;MAChCT,QAAQ,EAAEA,QAAQ,IAAIU;IACxB,CAAC;EACH,CAAC,EAAE,CACDjB,KAAK,EACLE,kBAAkB,EAClBC,KAAK,EACLC,cAAc,EACdC,QAAQ,EACRC,OAAO,EACPC,QAAQ,EACRC,QAAQ,EACRC,WAAW,EACXC,UAAU,EACVE,gBAAgB,EAChBC,cAAc,EACdE,aAAa,EACbC,YAAY,EACZC,aAAa,CACd,CAAC;AACJ","ignoreList":[]}
@@ -24,6 +24,7 @@ var _useTheme = require("../theme/use-theme.js");
24
24
  var _index2 = require("../typography/index.js");
25
25
  var _shared2 = require("./shared.js");
26
26
  var _tokens = require("../styles/tokens.js");
27
+ var _membership = require("../field/membership.js");
27
28
  var _jsxRuntime = require("react/jsx-runtime");
28
29
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
29
30
  /**
@@ -407,12 +408,22 @@ const FileUploadComponent = function FileUpload({
407
408
  maxBytes = DEFAULT_MAX_BYTES,
408
409
  renderFileIcon,
409
410
  labels: labelOverrides,
410
- disabled = false,
411
- accessibilityLabel = 'Upload a file',
411
+ disabled: disabledProp = false,
412
+ accessibilityLabel,
412
413
  style,
413
414
  testID
414
415
  }) {
415
416
  const theme = (0, _useTheme.useTheme)();
417
+ // The drop zone draws a prompt but names itself with a prop, so a `Field`
418
+ // around it is the other place the name can come from — and the field's
419
+ // `disabled` blocks the picker whatever the caller passed. `'Upload a file'`
420
+ // stays the last resort rather than a default that would outrank a label the
421
+ // user can read.
422
+ const field = (0, _membership.useFieldMembership)({
423
+ accessibilityLabel,
424
+ disabled: disabledProp
425
+ });
426
+ const disabled = field.disabled;
416
427
  (0, _interactiveWebCss.useInteractiveWebCss)(STYLE_ID, BLOOM_FILE_UPLOAD_CSS);
417
428
  const reducedMotion = (0, _reactNativeReanimated.useReducedMotion)();
418
429
  const paint = (0, _react.useMemo)(() => resolveFileUploadPaint(theme), [theme]);
@@ -594,7 +605,10 @@ const FileUploadComponent = function FileUpload({
594
605
  bloomFileUpload: busy ? 'busy' : 'idle'
595
606
  }),
596
607
  accessibilityRole: "button",
597
- accessibilityLabel: accessibilityLabel,
608
+ nativeID: field.nativeID,
609
+ accessibilityLabel: field.accessibilityLabel ?? 'Upload a file',
610
+ "aria-describedby": field.describedBy,
611
+ "aria-invalid": field.invalid || undefined,
598
612
  "aria-busy": busy,
599
613
  disabled: disabled,
600
614
  focusable: !blocked