panelui-native 0.71.0 → 0.75.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 (306) hide show
  1. package/README.md +5 -2
  2. package/lib/module/components/accordion/index.js +10 -4
  3. package/lib/module/components/accordion/index.js.map +1 -1
  4. package/lib/module/components/area-chart/index.js +1 -0
  5. package/lib/module/components/area-chart/index.js.map +1 -1
  6. package/lib/module/components/avatar/avatar-group.js +64 -0
  7. package/lib/module/components/avatar/avatar-group.js.map +1 -0
  8. package/lib/module/components/avatar/index.js +84 -2
  9. package/lib/module/components/avatar/index.js.map +1 -1
  10. package/lib/module/components/breadcrumb/index.js +2 -1
  11. package/lib/module/components/breadcrumb/index.js.map +1 -1
  12. package/lib/module/components/button/index.js +7 -5
  13. package/lib/module/components/button/index.js.map +1 -1
  14. package/lib/module/components/carousel/index.js +1 -1
  15. package/lib/module/components/carousel/index.js.map +1 -1
  16. package/lib/module/components/chip/index.js +2 -2
  17. package/lib/module/components/chip/index.js.map +1 -1
  18. package/lib/module/components/code-block/index.js.map +1 -1
  19. package/lib/module/components/collapsible/index.js +5 -1
  20. package/lib/module/components/collapsible/index.js.map +1 -1
  21. package/lib/module/components/color-picker/color-picker-accessibility.js +12 -0
  22. package/lib/module/components/color-picker/color-picker-accessibility.js.map +1 -0
  23. package/lib/module/components/color-picker/index.js +9 -5
  24. package/lib/module/components/color-picker/index.js.map +1 -1
  25. package/lib/module/components/date-time-picker/index.js +11 -3
  26. package/lib/module/components/date-time-picker/index.js.map +1 -1
  27. package/lib/module/components/drawer/index.js +58 -13
  28. package/lib/module/components/drawer/index.js.map +1 -1
  29. package/lib/module/components/fab/index.js +7 -6
  30. package/lib/module/components/fab/index.js.map +1 -1
  31. package/lib/module/components/flow/index.js +1 -1
  32. package/lib/module/components/flow/index.js.map +1 -1
  33. package/lib/module/components/frame/index.js +2 -2
  34. package/lib/module/components/frame/index.js.map +1 -1
  35. package/lib/module/components/grid-item/index.js +2 -2
  36. package/lib/module/components/grid-item/index.js.map +1 -1
  37. package/lib/module/components/heatmap-chart/index.js +1 -0
  38. package/lib/module/components/heatmap-chart/index.js.map +1 -1
  39. package/lib/module/components/hex-chart/index.js +1 -0
  40. package/lib/module/components/hex-chart/index.js.map +1 -1
  41. package/lib/module/components/input/index.js +7 -4
  42. package/lib/module/components/input/index.js.map +1 -1
  43. package/lib/module/components/input/input-content-padding.js +6 -0
  44. package/lib/module/components/input/input-content-padding.js.map +1 -0
  45. package/lib/module/components/input-group/index.js +21 -11
  46. package/lib/module/components/input-group/index.js.map +1 -1
  47. package/lib/module/components/input-group/input-group-measurements.js +60 -0
  48. package/lib/module/components/input-group/input-group-measurements.js.map +1 -0
  49. package/lib/module/components/item/index.js +2 -2
  50. package/lib/module/components/item/index.js.map +1 -1
  51. package/lib/module/components/line-chart/index.js +1 -0
  52. package/lib/module/components/line-chart/index.js.map +1 -1
  53. package/lib/module/components/marker/index.js +2 -2
  54. package/lib/module/components/marker/index.js.map +1 -1
  55. package/lib/module/components/marquee/index.js +9 -12
  56. package/lib/module/components/marquee/index.js.map +1 -1
  57. package/lib/module/components/marquee/marquee-math.js +39 -0
  58. package/lib/module/components/marquee/marquee-math.js.map +1 -0
  59. package/lib/module/components/menu/index.js +11 -3
  60. package/lib/module/components/menu/index.js.map +1 -1
  61. package/lib/module/components/otp-input/index.js +3 -1
  62. package/lib/module/components/otp-input/index.js.map +1 -1
  63. package/lib/module/components/otp-input/otp-input-state.js +7 -0
  64. package/lib/module/components/otp-input/otp-input-state.js.map +1 -0
  65. package/lib/module/components/pagination/index.js +27 -11
  66. package/lib/module/components/pagination/index.js.map +1 -1
  67. package/lib/module/components/panelside/index.js +7 -2
  68. package/lib/module/components/panelside/index.js.map +1 -1
  69. package/lib/module/components/planner/index.js +46 -11
  70. package/lib/module/components/planner/index.js.map +1 -1
  71. package/lib/module/components/planner/planner-today.js +8 -0
  72. package/lib/module/components/planner/planner-today.js.map +1 -0
  73. package/lib/module/components/plot/index.js +113 -53
  74. package/lib/module/components/plot/index.js.map +1 -1
  75. package/lib/module/components/plot/plot-series-registry.js +32 -0
  76. package/lib/module/components/plot/plot-series-registry.js.map +1 -0
  77. package/lib/module/components/post/index.js +4 -4
  78. package/lib/module/components/post/index.js.map +1 -1
  79. package/lib/module/components/radio-group/index.js +2 -1
  80. package/lib/module/components/radio-group/index.js.map +1 -1
  81. package/lib/module/components/radio-group/radio-group-value.js +8 -0
  82. package/lib/module/components/radio-group/radio-group-value.js.map +1 -0
  83. package/lib/module/components/rating/index.js +7 -4
  84. package/lib/module/components/rating/index.js.map +1 -1
  85. package/lib/module/components/rating/rating-inputs.js +15 -0
  86. package/lib/module/components/rating/rating-inputs.js.map +1 -0
  87. package/lib/module/components/search-bar/index.js +331 -0
  88. package/lib/module/components/search-bar/index.js.map +1 -0
  89. package/lib/module/components/search-bar/search-bar-debounce.js +23 -0
  90. package/lib/module/components/search-bar/search-bar-debounce.js.map +1 -0
  91. package/lib/module/components/select/index.js +9 -1
  92. package/lib/module/components/select/index.js.map +1 -1
  93. package/lib/module/components/select/native-select-contract.js +11 -0
  94. package/lib/module/components/select/native-select-contract.js.map +1 -0
  95. package/lib/module/components/split-view/index.js +439 -0
  96. package/lib/module/components/split-view/index.js.map +1 -0
  97. package/lib/module/components/split-view/split-view-math.js +132 -0
  98. package/lib/module/components/split-view/split-view-math.js.map +1 -0
  99. package/lib/module/components/splitter/index.js +433 -0
  100. package/lib/module/components/splitter/index.js.map +1 -0
  101. package/lib/module/components/splitter/splitter-math.js +206 -0
  102. package/lib/module/components/splitter/splitter-math.js.map +1 -0
  103. package/lib/module/components/steps/index.js +16 -5
  104. package/lib/module/components/steps/index.js.map +1 -1
  105. package/lib/module/components/steps/steps-trigger.js +6 -0
  106. package/lib/module/components/steps/steps-trigger.js.map +1 -0
  107. package/lib/module/components/table/index.js +3 -4
  108. package/lib/module/components/table/index.js.map +1 -1
  109. package/lib/module/components/tag-input/index.js +15 -10
  110. package/lib/module/components/tag-input/index.js.map +1 -1
  111. package/lib/module/components/tag-input/tag-input-state.js +14 -0
  112. package/lib/module/components/tag-input/tag-input-state.js.map +1 -0
  113. package/lib/module/components/textarea/index.js +9 -4
  114. package/lib/module/components/textarea/index.js.map +1 -1
  115. package/lib/module/components/textarea/textarea-disabled.js +6 -0
  116. package/lib/module/components/textarea/textarea-disabled.js.map +1 -0
  117. package/lib/module/components/timeline/index.js +352 -47
  118. package/lib/module/components/timeline/index.js.map +1 -1
  119. package/lib/module/components/timeline/timeline-geometry.js +11 -0
  120. package/lib/module/components/timeline/timeline-geometry.js.map +1 -0
  121. package/lib/module/components/toast/index.js +18 -1
  122. package/lib/module/components/toast/index.js.map +1 -1
  123. package/lib/module/components/toast/toast-store.js +36 -4
  124. package/lib/module/components/toast/toast-store.js.map +1 -1
  125. package/lib/module/components/toggle-button/index.js +1 -1
  126. package/lib/module/components/toggle-button/index.js.map +1 -1
  127. package/lib/module/components/tour/index.js +4 -2
  128. package/lib/module/components/tour/index.js.map +1 -1
  129. package/lib/module/components/tour/tour-card-measurement.js +24 -0
  130. package/lib/module/components/tour/tour-card-measurement.js.map +1 -0
  131. package/lib/module/components/tree/index.js +13 -8
  132. package/lib/module/components/tree/index.js.map +1 -1
  133. package/lib/module/hooks/use-keyboard-avoidance.js.map +1 -1
  134. package/lib/module/index.js +3 -0
  135. package/lib/module/index.js.map +1 -1
  136. package/lib/module/utils/chart.js +50 -7
  137. package/lib/module/utils/chart.js.map +1 -1
  138. package/lib/typescript/src/components/accordion/index.d.ts +2 -2
  139. package/lib/typescript/src/components/accordion/index.d.ts.map +1 -1
  140. package/lib/typescript/src/components/area-chart/index.d.ts.map +1 -1
  141. package/lib/typescript/src/components/avatar/avatar-group.d.ts +46 -0
  142. package/lib/typescript/src/components/avatar/avatar-group.d.ts.map +1 -0
  143. package/lib/typescript/src/components/avatar/index.d.ts +23 -1
  144. package/lib/typescript/src/components/avatar/index.d.ts.map +1 -1
  145. package/lib/typescript/src/components/breadcrumb/index.d.ts.map +1 -1
  146. package/lib/typescript/src/components/button/index.d.ts.map +1 -1
  147. package/lib/typescript/src/components/code-block/index.d.ts +3 -3
  148. package/lib/typescript/src/components/code-block/index.d.ts.map +1 -1
  149. package/lib/typescript/src/components/collapsible/index.d.ts +2 -2
  150. package/lib/typescript/src/components/collapsible/index.d.ts.map +1 -1
  151. package/lib/typescript/src/components/color-picker/color-picker-accessibility.d.ts +8 -0
  152. package/lib/typescript/src/components/color-picker/color-picker-accessibility.d.ts.map +1 -0
  153. package/lib/typescript/src/components/color-picker/index.d.ts.map +1 -1
  154. package/lib/typescript/src/components/date-time-picker/index.d.ts.map +1 -1
  155. package/lib/typescript/src/components/drawer/index.d.ts.map +1 -1
  156. package/lib/typescript/src/components/fab/index.d.ts +4 -2
  157. package/lib/typescript/src/components/fab/index.d.ts.map +1 -1
  158. package/lib/typescript/src/components/heatmap-chart/index.d.ts.map +1 -1
  159. package/lib/typescript/src/components/hex-chart/index.d.ts.map +1 -1
  160. package/lib/typescript/src/components/input/index.d.ts.map +1 -1
  161. package/lib/typescript/src/components/input/input-content-padding.d.ts +2 -0
  162. package/lib/typescript/src/components/input/input-content-padding.d.ts.map +1 -0
  163. package/lib/typescript/src/components/input-group/index.d.ts.map +1 -1
  164. package/lib/typescript/src/components/input-group/input-group-measurements.d.ts +16 -0
  165. package/lib/typescript/src/components/input-group/input-group-measurements.d.ts.map +1 -0
  166. package/lib/typescript/src/components/line-chart/index.d.ts.map +1 -1
  167. package/lib/typescript/src/components/marquee/index.d.ts +1 -1
  168. package/lib/typescript/src/components/marquee/index.d.ts.map +1 -1
  169. package/lib/typescript/src/components/marquee/marquee-math.d.ts +21 -0
  170. package/lib/typescript/src/components/marquee/marquee-math.d.ts.map +1 -0
  171. package/lib/typescript/src/components/menu/index.d.ts +1 -1
  172. package/lib/typescript/src/components/menu/index.d.ts.map +1 -1
  173. package/lib/typescript/src/components/otp-input/index.d.ts.map +1 -1
  174. package/lib/typescript/src/components/otp-input/otp-input-state.d.ts +3 -0
  175. package/lib/typescript/src/components/otp-input/otp-input-state.d.ts.map +1 -0
  176. package/lib/typescript/src/components/pagination/index.d.ts.map +1 -1
  177. package/lib/typescript/src/components/panelside/index.d.ts +1 -1
  178. package/lib/typescript/src/components/panelside/index.d.ts.map +1 -1
  179. package/lib/typescript/src/components/plan/index.d.ts +2 -2
  180. package/lib/typescript/src/components/planner/index.d.ts.map +1 -1
  181. package/lib/typescript/src/components/planner/planner-today.d.ts +2 -0
  182. package/lib/typescript/src/components/planner/planner-today.d.ts.map +1 -0
  183. package/lib/typescript/src/components/plot/index.d.ts +60 -6
  184. package/lib/typescript/src/components/plot/index.d.ts.map +1 -1
  185. package/lib/typescript/src/components/plot/plot-series-registry.d.ts +8 -0
  186. package/lib/typescript/src/components/plot/plot-series-registry.d.ts.map +1 -0
  187. package/lib/typescript/src/components/radio-group/index.d.ts.map +1 -1
  188. package/lib/typescript/src/components/radio-group/radio-group-value.d.ts +2 -0
  189. package/lib/typescript/src/components/radio-group/radio-group-value.d.ts.map +1 -0
  190. package/lib/typescript/src/components/rating/index.d.ts.map +1 -1
  191. package/lib/typescript/src/components/rating/rating-inputs.d.ts +4 -0
  192. package/lib/typescript/src/components/rating/rating-inputs.d.ts.map +1 -0
  193. package/lib/typescript/src/components/search-bar/index.d.ts +216 -0
  194. package/lib/typescript/src/components/search-bar/index.d.ts.map +1 -0
  195. package/lib/typescript/src/components/search-bar/search-bar-debounce.d.ts +7 -0
  196. package/lib/typescript/src/components/search-bar/search-bar-debounce.d.ts.map +1 -0
  197. package/lib/typescript/src/components/select/index.d.ts.map +1 -1
  198. package/lib/typescript/src/components/select/native-select-contract.d.ts +11 -0
  199. package/lib/typescript/src/components/select/native-select-contract.d.ts.map +1 -0
  200. package/lib/typescript/src/components/split-view/index.d.ts +159 -0
  201. package/lib/typescript/src/components/split-view/index.d.ts.map +1 -0
  202. package/lib/typescript/src/components/split-view/split-view-math.d.ts +54 -0
  203. package/lib/typescript/src/components/split-view/split-view-math.d.ts.map +1 -0
  204. package/lib/typescript/src/components/splitter/index.d.ts +78 -0
  205. package/lib/typescript/src/components/splitter/index.d.ts.map +1 -0
  206. package/lib/typescript/src/components/splitter/splitter-math.d.ts +67 -0
  207. package/lib/typescript/src/components/splitter/splitter-math.d.ts.map +1 -0
  208. package/lib/typescript/src/components/steps/index.d.ts +2 -2
  209. package/lib/typescript/src/components/steps/index.d.ts.map +1 -1
  210. package/lib/typescript/src/components/steps/steps-trigger.d.ts +2 -0
  211. package/lib/typescript/src/components/steps/steps-trigger.d.ts.map +1 -0
  212. package/lib/typescript/src/components/tag-input/index.d.ts.map +1 -1
  213. package/lib/typescript/src/components/tag-input/tag-input-state.d.ts +12 -0
  214. package/lib/typescript/src/components/tag-input/tag-input-state.d.ts.map +1 -0
  215. package/lib/typescript/src/components/textarea/index.d.ts.map +1 -1
  216. package/lib/typescript/src/components/textarea/textarea-disabled.d.ts +2 -0
  217. package/lib/typescript/src/components/textarea/textarea-disabled.d.ts.map +1 -0
  218. package/lib/typescript/src/components/timeline/index.d.ts +36 -2
  219. package/lib/typescript/src/components/timeline/index.d.ts.map +1 -1
  220. package/lib/typescript/src/components/timeline/timeline-geometry.d.ts +4 -0
  221. package/lib/typescript/src/components/timeline/timeline-geometry.d.ts.map +1 -0
  222. package/lib/typescript/src/components/toast/index.d.ts.map +1 -1
  223. package/lib/typescript/src/components/toast/toast-store.d.ts +7 -2
  224. package/lib/typescript/src/components/toast/toast-store.d.ts.map +1 -1
  225. package/lib/typescript/src/components/tour/index.d.ts.map +1 -1
  226. package/lib/typescript/src/components/tour/tour-card-measurement.d.ts +14 -0
  227. package/lib/typescript/src/components/tour/tour-card-measurement.d.ts.map +1 -0
  228. package/lib/typescript/src/components/tree/index.d.ts +3 -4
  229. package/lib/typescript/src/components/tree/index.d.ts.map +1 -1
  230. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts +2 -2
  231. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts.map +1 -1
  232. package/lib/typescript/src/index.d.ts +5 -2
  233. package/lib/typescript/src/index.d.ts.map +1 -1
  234. package/lib/typescript/src/utils/chart.d.ts +28 -3
  235. package/lib/typescript/src/utils/chart.d.ts.map +1 -1
  236. package/package.json +1 -1
  237. package/src/components/accordion/index.tsx +17 -7
  238. package/src/components/area-chart/index.tsx +8 -0
  239. package/src/components/avatar/avatar-group.ts +78 -0
  240. package/src/components/avatar/index.tsx +121 -1
  241. package/src/components/breadcrumb/index.tsx +2 -1
  242. package/src/components/button/index.tsx +3 -2
  243. package/src/components/carousel/index.tsx +1 -1
  244. package/src/components/chip/index.tsx +2 -2
  245. package/src/components/code-block/index.tsx +3 -3
  246. package/src/components/collapsible/index.tsx +13 -4
  247. package/src/components/color-picker/color-picker-accessibility.ts +12 -0
  248. package/src/components/color-picker/index.tsx +30 -10
  249. package/src/components/date-time-picker/index.tsx +11 -3
  250. package/src/components/drawer/index.tsx +42 -14
  251. package/src/components/fab/index.tsx +21 -11
  252. package/src/components/flow/index.tsx +1 -1
  253. package/src/components/frame/index.tsx +2 -2
  254. package/src/components/grid-item/index.tsx +2 -2
  255. package/src/components/heatmap-chart/index.tsx +7 -1
  256. package/src/components/hex-chart/index.tsx +7 -1
  257. package/src/components/input/index.tsx +6 -2
  258. package/src/components/input/input-content-padding.ts +3 -0
  259. package/src/components/input-group/index.tsx +45 -12
  260. package/src/components/input-group/input-group-measurements.ts +98 -0
  261. package/src/components/item/index.tsx +2 -2
  262. package/src/components/line-chart/index.tsx +9 -0
  263. package/src/components/marker/index.tsx +2 -2
  264. package/src/components/marquee/index.tsx +14 -12
  265. package/src/components/marquee/marquee-math.ts +37 -0
  266. package/src/components/menu/index.tsx +11 -3
  267. package/src/components/otp-input/index.tsx +3 -1
  268. package/src/components/otp-input/otp-input-state.ts +7 -0
  269. package/src/components/pagination/index.tsx +26 -13
  270. package/src/components/panelside/index.tsx +7 -2
  271. package/src/components/plan/index.tsx +2 -2
  272. package/src/components/planner/index.tsx +44 -11
  273. package/src/components/planner/planner-today.ts +5 -0
  274. package/src/components/plot/index.tsx +199 -51
  275. package/src/components/plot/plot-series-registry.ts +41 -0
  276. package/src/components/post/index.tsx +4 -4
  277. package/src/components/radio-group/index.tsx +4 -1
  278. package/src/components/radio-group/radio-group-value.ts +9 -0
  279. package/src/components/rating/index.tsx +11 -4
  280. package/src/components/rating/rating-inputs.ts +19 -0
  281. package/src/components/search-bar/index.tsx +441 -0
  282. package/src/components/search-bar/search-bar-debounce.ts +35 -0
  283. package/src/components/select/index.tsx +10 -1
  284. package/src/components/select/native-select-contract.ts +12 -0
  285. package/src/components/split-view/index.tsx +565 -0
  286. package/src/components/split-view/split-view-math.ts +146 -0
  287. package/src/components/splitter/index.tsx +589 -0
  288. package/src/components/splitter/splitter-math.ts +244 -0
  289. package/src/components/steps/index.tsx +35 -9
  290. package/src/components/steps/steps-trigger.ts +6 -0
  291. package/src/components/table/index.tsx +2 -2
  292. package/src/components/tag-input/index.tsx +13 -11
  293. package/src/components/tag-input/tag-input-state.ts +18 -0
  294. package/src/components/textarea/index.tsx +8 -4
  295. package/src/components/textarea/textarea-disabled.ts +6 -0
  296. package/src/components/timeline/index.tsx +405 -46
  297. package/src/components/timeline/timeline-geometry.ts +9 -0
  298. package/src/components/toast/index.tsx +26 -1
  299. package/src/components/toast/toast-store.ts +43 -8
  300. package/src/components/toggle-button/index.tsx +1 -1
  301. package/src/components/tour/index.tsx +11 -3
  302. package/src/components/tour/tour-card-measurement.ts +29 -0
  303. package/src/components/tree/index.tsx +17 -12
  304. package/src/hooks/use-keyboard-avoidance.ts +7 -2
  305. package/src/index.ts +19 -0
  306. package/src/utils/chart.ts +66 -7
@@ -0,0 +1,331 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * SearchBar — a text field for querying a list, with the two controls a search
5
+ * needs and an ordinary field does not.
6
+ *
7
+ * ```tsx
8
+ * <SearchBar placeholder="Search orders" onSubmit={run} />
9
+ * <SearchBar variant="filled" shape="pill" cancel="focus" />
10
+ * <SearchBar debounce={250} onDebouncedChange={filter} loading={pending} />
11
+ * ```
12
+ *
13
+ * ## The clear button, and why it is not the platform's
14
+ *
15
+ * A ✕ appears inside the field as soon as there is something to clear, and
16
+ * takes it back to empty without dismissing the keyboard — clearing a query is
17
+ * the start of the next one, not the end of the search. It is drawn here
18
+ * rather than left to `clearButtonMode`, which exists on iOS only, cannot be
19
+ * labelled for a screen reader and cannot be swapped for a spinner while
20
+ * results are in flight.
21
+ *
22
+ * The glyph is 24 points and its touch box is 48, made up with slop rather
23
+ * than with size. A 48-point circle inside a 40-point field either overflows
24
+ * it or forces every search bar in an app to be as tall as the largest one.
25
+ *
26
+ * ## Cancel is a row, not a decoration
27
+ *
28
+ * `cancel="focus"` puts a Cancel button beside the field and slides it in
29
+ * while the field is being edited, which is the platform's own answer to
30
+ * "how do I get out of this search". It is a sibling of the field rather than
31
+ * something inside it, because it acts on the search as a whole: it empties
32
+ * the query, drops focus and calls `onCancel`, and a control that ends the
33
+ * thing it sits inside reads as part of the query it is about to discard.
34
+ *
35
+ * Its width is measured once and animated on the UI thread. The button is
36
+ * always mounted when `cancel` is not `never`, so the measurement is already
37
+ * there the first time the field is touched and the first slide is as smooth
38
+ * as the tenth.
39
+ *
40
+ * ## Debouncing belongs to the caller's search, not to the field
41
+ *
42
+ * `onChangeText` always fires on every keystroke — a controlled field that
43
+ * lags its own input is unusable. `debounce` is about the *query*: it holds
44
+ * `onDebouncedChange` until typing pauses, so a network search runs once per
45
+ * pause instead of once per letter. Submitting flushes it immediately, since
46
+ * a return key is somebody saying they are done waiting.
47
+ */
48
+ import { forwardRef, useCallback, useEffect, useImperativeHandle, useRef, useState } from 'react';
49
+ import { View } from 'react-native';
50
+ import Animated, { useAnimatedStyle, useSharedValue, withTiming } from 'react-native-reanimated';
51
+ import { tv } from 'tailwind-variants';
52
+ import { SearchIcon, XIcon } from "../../icons/index.js";
53
+ import { AnimatedPressable } from "../../primitives/animated-pressable.js";
54
+ import { Text } from "../../primitives/text.js";
55
+ import { Input } from "../input/index.js";
56
+ import { Spinner } from "../spinner/index.js";
57
+ import { cancelSearchBarDebounce, flushSearchBarDebounce, scheduleSearchBarDebounce } from "./search-bar-debounce.js";
58
+
59
+ /** Matches the field's own focus crossfade, so the row settles as one thing. */
60
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
61
+ const CANCEL_DURATION = 180;
62
+
63
+ /** Space kept between the field and the Cancel button while it is out. */
64
+ const CANCEL_GAP = 8;
65
+
66
+ /**
67
+ * Slop around the 24-point clear glyph, taking its touch box to 48 without
68
+ * changing the height of the field it sits in.
69
+ */
70
+ const CLEAR_HIT_SLOP = 12;
71
+ const searchBarVariants = tv({
72
+ slots: {
73
+ row: 'w-full flex-row items-center',
74
+ field: '',
75
+ // Clipped, because this is what the Cancel button is revealed out of: the
76
+ // button keeps its measured width and the container's grows past it.
77
+ //
78
+ // `self-stretch` gives it the row's height, which it has no other way of
79
+ // getting — its only child is positioned absolutely, so it has no content
80
+ // to be as tall as.
81
+ cancelClip: 'self-stretch overflow-hidden',
82
+ cancelButton: 'absolute bottom-0 end-0 top-0 items-center justify-center ps-2',
83
+ cancelLabel: 'font-medium text-primary',
84
+ clear: 'items-center justify-center rounded-full'
85
+ },
86
+ variants: {
87
+ size: {
88
+ sm: {
89
+ cancelLabel: 'text-[14px]',
90
+ clear: 'h-6 w-6'
91
+ },
92
+ md: {
93
+ cancelLabel: 'text-[16px]',
94
+ clear: 'h-6 w-6'
95
+ },
96
+ lg: {
97
+ cancelLabel: 'text-[16px]',
98
+ clear: 'h-7 w-7'
99
+ }
100
+ },
101
+ /**
102
+ * The field's corner. `pill` is the shape a search field takes when it is
103
+ * chrome — sitting above a list, in a header — and `rounded` the one it
104
+ * takes inside a form beside other fields.
105
+ */
106
+ shape: {
107
+ rounded: {
108
+ field: ''
109
+ },
110
+ pill: {
111
+ field: 'rounded-full'
112
+ }
113
+ }
114
+ },
115
+ defaultVariants: {
116
+ size: 'md',
117
+ shape: 'rounded'
118
+ }
119
+ });
120
+ /** Glyph sizes per field size — the icon tracks the text, not the box. */
121
+ const ICON_SIZE = {
122
+ sm: 16,
123
+ md: 18,
124
+ lg: 20
125
+ };
126
+
127
+ /**
128
+ * What SearchBar takes from Input, minus everything it owns itself. The form
129
+ * furniture is dropped along with it: a label and an error line stack above
130
+ * and below the field, and Cancel sits beside the whole stack rather than
131
+ * beside the field it belongs to. Use `Field` for a search that is one answer
132
+ * in a form.
133
+ */
134
+
135
+ export const SearchBar = /*#__PURE__*/forwardRef(({
136
+ value: valueProp,
137
+ defaultValue,
138
+ onChangeText,
139
+ onSubmit,
140
+ debounce = 0,
141
+ onDebouncedChange,
142
+ onClear,
143
+ onCancel,
144
+ isClearable = true,
145
+ cancel = 'never',
146
+ cancelLabel = 'Cancel',
147
+ clearLabel = 'Clear search',
148
+ loading = false,
149
+ icon,
150
+ shape,
151
+ size = 'md',
152
+ className,
153
+ containerClassName,
154
+ disabled,
155
+ onFocus,
156
+ onBlur,
157
+ onSubmitEditing,
158
+ ...props
159
+ }, ref) => {
160
+ const controlled = valueProp !== undefined;
161
+ const [internal, setInternal] = useState(defaultValue ?? '');
162
+ const text = controlled ? valueProp : internal;
163
+ const [focused, setFocused] = useState(false);
164
+ const inputRef = useRef(null);
165
+ useImperativeHandle(ref, () => inputRef.current, []);
166
+ const slots = searchBarVariants({
167
+ size,
168
+ shape
169
+ });
170
+ const setText = useCallback(next => {
171
+ if (!controlled) setInternal(next);
172
+ onChangeText?.(next);
173
+ }, [controlled, onChangeText]);
174
+
175
+ /*
176
+ * The debounced callback is read through a ref so an inline arrow function
177
+ * — which is what a caller writes — does not restart the timer on every
178
+ * render and push the pause out forever.
179
+ */
180
+ const debouncedRef = useRef(onDebouncedChange);
181
+ const debounceTimerRef = useRef(null);
182
+ useEffect(() => {
183
+ debouncedRef.current = onDebouncedChange;
184
+ });
185
+
186
+ // Skipped on mount: nothing was typed, so there is no pause to be at the
187
+ // end of, and firing here would run a search for the initial value.
188
+ const settled = useRef(false);
189
+ useEffect(() => {
190
+ if (!settled.current) {
191
+ settled.current = true;
192
+ return;
193
+ }
194
+ scheduleSearchBarDebounce(debounceTimerRef, debouncedRef.current, text, debounce);
195
+ return () => {
196
+ cancelSearchBarDebounce(debounceTimerRef);
197
+ };
198
+ }, [text, debounce]);
199
+ const handleFocus = useCallback(event => {
200
+ setFocused(true);
201
+ onFocus?.(event);
202
+ }, [onFocus]);
203
+ const handleBlur = useCallback(event => {
204
+ setFocused(false);
205
+ onBlur?.(event);
206
+ }, [onBlur]);
207
+ const handleSubmit = useCallback(event => {
208
+ // A return key is somebody saying they are done waiting, so the
209
+ // pending pause is spent rather than waited out.
210
+ flushSearchBarDebounce(debounceTimerRef, debouncedRef.current, text);
211
+ onSubmit?.(text);
212
+ onSubmitEditing?.(event);
213
+ }, [onSubmit, onSubmitEditing, text]);
214
+ const handleClear = useCallback(() => {
215
+ setText('');
216
+ onClear?.();
217
+ // The keyboard stays: clearing a query is the start of the next one.
218
+ // Android takes focus away with the press, so it is asked back.
219
+ inputRef.current?.focus();
220
+ }, [onClear, setText]);
221
+ const handleCancel = useCallback(() => {
222
+ setText('');
223
+ inputRef.current?.blur();
224
+ onCancel?.();
225
+ }, [onCancel, setText]);
226
+
227
+ /*
228
+ * Cancel's width is measured once and driven from a shared value, so the
229
+ * slide costs no re-render. `cancelWidth` is a shared value rather than
230
+ * state for the same reason — a measurement that arrives as state would
231
+ * re-render the field it is beside.
232
+ */
233
+ const cancelWidth = useSharedValue(0);
234
+ const cancelOut = cancel === 'always' || cancel === 'focus' && focused;
235
+ const cancelProgress = useSharedValue(cancel === 'always' ? 1 : 0);
236
+ useEffect(() => {
237
+ if (cancel === 'never') return;
238
+ cancelProgress.value = withTiming(cancelOut ? 1 : 0, {
239
+ duration: CANCEL_DURATION
240
+ });
241
+ }, [cancel, cancelOut, cancelProgress]);
242
+ const cancelStyle = useAnimatedStyle(() => ({
243
+ width: (cancelWidth.value + CANCEL_GAP) * cancelProgress.value,
244
+ opacity: cancelProgress.value
245
+ }));
246
+ const handleCancelLayout = useCallback(event => {
247
+ cancelWidth.value = event.nativeEvent.layout.width;
248
+ }, [cancelWidth]);
249
+ const startContent =
250
+ /*#__PURE__*/
251
+ /*
252
+ * Decorative, and said so here rather than through Input's
253
+ * `interactiveContent` — that flag covers both ends of the field, and
254
+ * turning it off to quieten the magnifier would take the clear button's
255
+ * touches with it.
256
+ */
257
+ _jsx(View, {
258
+ pointerEvents: "none",
259
+ accessibilityElementsHidden: true,
260
+ importantForAccessibility: "no-hide-descendants",
261
+ children: icon ?? /*#__PURE__*/_jsx(SearchIcon, {
262
+ size: ICON_SIZE[size]
263
+ })
264
+ });
265
+ const endContent = loading ? /*#__PURE__*/_jsx(Spinner, {
266
+ size: "sm"
267
+ }) : isClearable && text.length > 0 ? /*#__PURE__*/_jsx(AnimatedPressable, {
268
+ onPress: handleClear,
269
+ disabled: disabled,
270
+ hitSlop: CLEAR_HIT_SLOP,
271
+ accessibilityRole: "button",
272
+ accessibilityLabel: clearLabel,
273
+ className: slots.clear(),
274
+ children: /*#__PURE__*/_jsx(XIcon, {
275
+ size: ICON_SIZE[size]
276
+ })
277
+ }) : null;
278
+ const field = /*#__PURE__*/_jsx(Input, {
279
+ ref: inputRef,
280
+ size: size,
281
+ disabled: disabled,
282
+ className: slots.field({
283
+ className
284
+ }),
285
+ containerClassName: cancel === 'never' ? containerClassName : 'flex-1',
286
+ startContent: startContent,
287
+ endContent: endContent,
288
+ value: text,
289
+ onChangeText: setText,
290
+ onFocus: handleFocus,
291
+ onBlur: handleBlur,
292
+ onSubmitEditing: handleSubmit,
293
+ accessibilityRole: "search",
294
+ returnKeyType: "search"
295
+ // The platform's own ✕ would sit on top of this component's, and only
296
+ // on iOS.
297
+ ,
298
+ clearButtonMode: "never",
299
+ autoCapitalize: "none",
300
+ autoCorrect: false,
301
+ spellCheck: false,
302
+ placeholder: "Search",
303
+ ...props
304
+ });
305
+ if (cancel === 'never') return field;
306
+ return /*#__PURE__*/_jsxs(View, {
307
+ className: slots.row({
308
+ className: containerClassName
309
+ }),
310
+ children: [field, /*#__PURE__*/_jsx(Animated.View, {
311
+ style: cancelStyle,
312
+ className: slots.cancelClip(),
313
+ pointerEvents: cancelOut ? 'auto' : 'none',
314
+ accessibilityElementsHidden: !cancelOut,
315
+ importantForAccessibility: cancelOut ? 'auto' : 'no-hide-descendants',
316
+ children: /*#__PURE__*/_jsx(AnimatedPressable, {
317
+ onLayout: handleCancelLayout,
318
+ onPress: handleCancel,
319
+ hitSlop: 8,
320
+ accessibilityRole: "button",
321
+ className: slots.cancelButton(),
322
+ children: /*#__PURE__*/_jsx(Text, {
323
+ className: slots.cancelLabel(),
324
+ children: cancelLabel
325
+ })
326
+ })
327
+ })]
328
+ });
329
+ });
330
+ SearchBar.displayName = 'SearchBar';
331
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["forwardRef","useCallback","useEffect","useImperativeHandle","useRef","useState","View","Animated","useAnimatedStyle","useSharedValue","withTiming","tv","SearchIcon","XIcon","AnimatedPressable","Text","Input","Spinner","cancelSearchBarDebounce","flushSearchBarDebounce","scheduleSearchBarDebounce","jsx","_jsx","jsxs","_jsxs","CANCEL_DURATION","CANCEL_GAP","CLEAR_HIT_SLOP","searchBarVariants","slots","row","field","cancelClip","cancelButton","cancelLabel","clear","variants","size","sm","md","lg","shape","rounded","pill","defaultVariants","ICON_SIZE","SearchBar","value","valueProp","defaultValue","onChangeText","onSubmit","debounce","onDebouncedChange","onClear","onCancel","isClearable","cancel","clearLabel","loading","icon","className","containerClassName","disabled","onFocus","onBlur","onSubmitEditing","props","ref","controlled","undefined","internal","setInternal","text","focused","setFocused","inputRef","current","setText","next","debouncedRef","debounceTimerRef","settled","handleFocus","event","handleBlur","handleSubmit","handleClear","focus","handleCancel","blur","cancelWidth","cancelOut","cancelProgress","duration","cancelStyle","width","opacity","handleCancelLayout","nativeEvent","layout","startContent","pointerEvents","accessibilityElementsHidden","importantForAccessibility","children","endContent","length","onPress","hitSlop","accessibilityRole","accessibilityLabel","returnKeyType","clearButtonMode","autoCapitalize","autoCorrect","spellCheck","placeholder","style","onLayout","displayName"],"sourceRoot":"../../../../src","sources":["components/search-bar/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ export function cancelSearchBarDebounce(timer) {
4
+ if (timer.current === null) return;
5
+ clearTimeout(timer.current);
6
+ timer.current = null;
7
+ }
8
+ export function scheduleSearchBarDebounce(timer, callback, value, delay) {
9
+ cancelSearchBarDebounce(timer);
10
+ if (!Number.isFinite(delay) || delay <= 0) {
11
+ callback?.(value);
12
+ return;
13
+ }
14
+ timer.current = setTimeout(() => {
15
+ timer.current = null;
16
+ callback?.(value);
17
+ }, delay);
18
+ }
19
+ export function flushSearchBarDebounce(timer, callback, value) {
20
+ cancelSearchBarDebounce(timer);
21
+ callback?.(value);
22
+ }
23
+ //# sourceMappingURL=search-bar-debounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["cancelSearchBarDebounce","timer","current","clearTimeout","scheduleSearchBarDebounce","callback","value","delay","Number","isFinite","setTimeout","flushSearchBarDebounce"],"sourceRoot":"../../../../src","sources":["components/search-bar/search-bar-debounce.ts"],"mappings":";;AAIA,OAAO,SAASA,uBAAuBA,CAACC,KAA6B,EAAQ;EAC3E,IAAIA,KAAK,CAACC,OAAO,KAAK,IAAI,EAAE;EAC5BC,YAAY,CAACF,KAAK,CAACC,OAAO,CAAC;EAC3BD,KAAK,CAACC,OAAO,GAAG,IAAI;AACtB;AAEA,OAAO,SAASE,yBAAyBA,CACvCH,KAA6B,EAC7BI,QAA+C,EAC/CC,KAAa,EACbC,KAAa,EACP;EACNP,uBAAuB,CAACC,KAAK,CAAC;EAC9B,IAAI,CAACO,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,IAAIA,KAAK,IAAI,CAAC,EAAE;IACzCF,QAAQ,GAAGC,KAAK,CAAC;IACjB;EACF;EACAL,KAAK,CAACC,OAAO,GAAGQ,UAAU,CAAC,MAAM;IAC/BT,KAAK,CAACC,OAAO,GAAG,IAAI;IACpBG,QAAQ,GAAGC,KAAK,CAAC;EACnB,CAAC,EAAEC,KAAK,CAAC;AACX;AAEA,OAAO,SAASI,sBAAsBA,CACpCV,KAA6B,EAC7BI,QAA+C,EAC/CC,KAAa,EACP;EACNN,uBAAuB,CAACC,KAAK,CAAC;EAC9BI,QAAQ,GAAGC,KAAK,CAAC;AACnB","ignoreList":[]}
@@ -48,6 +48,7 @@ import { useBackHandler } from "../../hooks/use-back-handler.js";
48
48
  import { cn } from "../../utils/cn.js";
49
49
  import { BottomSheet } from "../bottom-sheet/index.js";
50
50
  import { InputGroup } from "../input-group/index.js";
51
+ import { nativeSelectSupportsOptions } from "./native-select-contract.js";
51
52
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
52
53
  const selectVariants = tv({
53
54
  slots: {
@@ -256,12 +257,19 @@ function SelectRoot({
256
257
  const {
257
258
  height: screenHeight
258
259
  } = useWindowDimensions();
259
- const nativeUI = native ? getNativeUI() : null;
260
260
  const options = useMemo(() => {
261
261
  const collected = [];
262
262
  eachOption(children, option => collected.push(option));
263
263
  return collected;
264
264
  }, [children]);
265
+
266
+ /*
267
+ * @expo/ui's portable Picker only has a control-wide `enabled` flag. Its
268
+ * items accept label and value, but no disabled state, so handing it a
269
+ * disabled Select.Item would make that option selectable again. Preserve
270
+ * the public item contract by using the styled Select for that list.
271
+ */
272
+ const nativeUI = native && nativeSelectSupportsOptions(options) ? getNativeUI() : null;
265
273
  const selectedLabel = useMemo(() => options.find(option => option.value === value)?.label, [options, value]);
266
274
 
267
275
  /*
@@ -1 +1 @@
1
- {"version":3,"names":["Children","cloneElement","createContext","isValidElement","useCallback","useContext","useMemo","useRef","useState","Pressable","ScrollView","useWindowDimensions","View","Animated","FadeIn","FadeOut","useAnimatedStyle","useSharedValue","withTiming","tv","useCSSVariable","CheckIcon","ChevronDownIcon","SearchIcon","getNativeUI","Portal","Text","textChildren","useBackHandler","cn","BottomSheet","InputGroup","jsx","_jsx","jsxs","_jsxs","selectVariants","slots","trigger","triggerLabel","placeholder","list","item","itemLabel","itemIndicator","group","groupLabel","variants","selected","true","disabled","itemDisabled","presentation","sheet","inline","overlay","defaultVariants","SelectContext","SelectItem","value","label","context","Error","checkColor","accessibilityRole","accessibilityState","onPress","onSelect","className","children","size","color","SelectGroup","labelClassName","weight","muted","eachOption","visit","forEach","child","type","props","filterOptions","needle","kept","inner","length","push","toLowerCase","includes","SelectRoot","onValueChange","title","contentWidth","offset","onOpenChange","searchable","searchPlaceholder","emptyMessage","native","nativeAppearance","open","setOpen","query","setQuery","anchor","setAnchor","listHeight","setListHeight","triggerRef","chevron","height","screenHeight","nativeUI","options","collected","option","selectedLabel","find","filtered","trim","close","duration","toggle","show","current","measureInWindow","x","y","width","next","chevronColor","chevronStyle","transform","rotate","Host","Picker","firstEnabled","matchContents","vertical","selectedValue","appearance","enabled","map","Item","ref","expanded","style","search","Prefix","isDecorative","Input","variant","onChangeText","accessibilityLabel","autoCapitalize","autoCorrect","returnKeyType","clearButtonMode","optionList","Provider","Content","bounces","keyboardDismissMode","keyboardShouldPersistTaps","entering","exiting","spaceBelow","flip","overlayPosition","position","left","bottom","top","minWidth","maxHeight","Math","max","onListLayout","event","nativeEvent","layout","accessible","importantForAccessibility","accessibilityElementsHidden","right","onLayout","accessibilityViewIsModal","showsVerticalScrollIndicator","displayName","Select","Object","assign","Group"],"sourceRoot":"../../../../src","sources":["components/select/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Children","cloneElement","createContext","isValidElement","useCallback","useContext","useMemo","useRef","useState","Pressable","ScrollView","useWindowDimensions","View","Animated","FadeIn","FadeOut","useAnimatedStyle","useSharedValue","withTiming","tv","useCSSVariable","CheckIcon","ChevronDownIcon","SearchIcon","getNativeUI","Portal","Text","textChildren","useBackHandler","cn","BottomSheet","InputGroup","nativeSelectSupportsOptions","jsx","_jsx","jsxs","_jsxs","selectVariants","slots","trigger","triggerLabel","placeholder","list","item","itemLabel","itemIndicator","group","groupLabel","variants","selected","true","disabled","itemDisabled","presentation","sheet","inline","overlay","defaultVariants","SelectContext","SelectItem","value","label","context","Error","checkColor","accessibilityRole","accessibilityState","onPress","onSelect","className","children","size","color","SelectGroup","labelClassName","weight","muted","eachOption","visit","forEach","child","type","props","filterOptions","needle","kept","inner","length","push","toLowerCase","includes","SelectRoot","onValueChange","title","contentWidth","offset","onOpenChange","searchable","searchPlaceholder","emptyMessage","native","nativeAppearance","open","setOpen","query","setQuery","anchor","setAnchor","listHeight","setListHeight","triggerRef","chevron","height","screenHeight","options","collected","option","nativeUI","selectedLabel","find","filtered","trim","close","duration","toggle","show","current","measureInWindow","x","y","width","next","chevronColor","chevronStyle","transform","rotate","Host","Picker","firstEnabled","matchContents","vertical","selectedValue","appearance","enabled","map","Item","ref","expanded","style","search","Prefix","isDecorative","Input","variant","onChangeText","accessibilityLabel","autoCapitalize","autoCorrect","returnKeyType","clearButtonMode","optionList","Provider","Content","bounces","keyboardDismissMode","keyboardShouldPersistTaps","entering","exiting","spaceBelow","flip","overlayPosition","position","left","bottom","top","minWidth","maxHeight","Math","max","onListLayout","event","nativeEvent","layout","accessible","importantForAccessibility","accessibilityElementsHidden","right","onLayout","accessibilityViewIsModal","showsVerticalScrollIndicator","displayName","Select","Object","assign","Group"],"sourceRoot":"../../../../src","sources":["components/select/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * The portable @expo/ui picker can disable the whole control, but not one
5
+ * option. Keep the styled Select when an item needs that distinction rather
6
+ * than silently turning a disabled choice back into a selectable one.
7
+ */
8
+ export function nativeSelectSupportsOptions(options) {
9
+ return options.every(option => !option.disabled);
10
+ }
11
+ //# sourceMappingURL=native-select-contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["nativeSelectSupportsOptions","options","every","option","disabled"],"sourceRoot":"../../../../src","sources":["components/select/native-select-contract.ts"],"mappings":";;AAIA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,2BAA2BA,CAACC,OAA6B,EAAW;EAClF,OAAOA,OAAO,CAACC,KAAK,CAAEC,MAAM,IAAK,CAACA,MAAM,CAACC,QAAQ,CAAC;AACpD","ignoreList":[]}