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.
- package/README.md +5 -2
- package/lib/module/components/accordion/index.js +10 -4
- package/lib/module/components/accordion/index.js.map +1 -1
- package/lib/module/components/area-chart/index.js +1 -0
- package/lib/module/components/area-chart/index.js.map +1 -1
- package/lib/module/components/avatar/avatar-group.js +64 -0
- package/lib/module/components/avatar/avatar-group.js.map +1 -0
- package/lib/module/components/avatar/index.js +84 -2
- package/lib/module/components/avatar/index.js.map +1 -1
- package/lib/module/components/breadcrumb/index.js +2 -1
- package/lib/module/components/breadcrumb/index.js.map +1 -1
- package/lib/module/components/button/index.js +7 -5
- package/lib/module/components/button/index.js.map +1 -1
- package/lib/module/components/carousel/index.js +1 -1
- package/lib/module/components/carousel/index.js.map +1 -1
- package/lib/module/components/chip/index.js +2 -2
- package/lib/module/components/chip/index.js.map +1 -1
- package/lib/module/components/code-block/index.js.map +1 -1
- package/lib/module/components/collapsible/index.js +5 -1
- package/lib/module/components/collapsible/index.js.map +1 -1
- package/lib/module/components/color-picker/color-picker-accessibility.js +12 -0
- package/lib/module/components/color-picker/color-picker-accessibility.js.map +1 -0
- package/lib/module/components/color-picker/index.js +9 -5
- package/lib/module/components/color-picker/index.js.map +1 -1
- package/lib/module/components/date-time-picker/index.js +11 -3
- package/lib/module/components/date-time-picker/index.js.map +1 -1
- package/lib/module/components/drawer/index.js +58 -13
- package/lib/module/components/drawer/index.js.map +1 -1
- package/lib/module/components/fab/index.js +7 -6
- package/lib/module/components/fab/index.js.map +1 -1
- package/lib/module/components/flow/index.js +1 -1
- package/lib/module/components/flow/index.js.map +1 -1
- package/lib/module/components/frame/index.js +2 -2
- package/lib/module/components/frame/index.js.map +1 -1
- package/lib/module/components/grid-item/index.js +2 -2
- package/lib/module/components/grid-item/index.js.map +1 -1
- package/lib/module/components/heatmap-chart/index.js +1 -0
- package/lib/module/components/heatmap-chart/index.js.map +1 -1
- package/lib/module/components/hex-chart/index.js +1 -0
- package/lib/module/components/hex-chart/index.js.map +1 -1
- package/lib/module/components/input/index.js +7 -4
- package/lib/module/components/input/index.js.map +1 -1
- package/lib/module/components/input/input-content-padding.js +6 -0
- package/lib/module/components/input/input-content-padding.js.map +1 -0
- package/lib/module/components/input-group/index.js +21 -11
- package/lib/module/components/input-group/index.js.map +1 -1
- package/lib/module/components/input-group/input-group-measurements.js +60 -0
- package/lib/module/components/input-group/input-group-measurements.js.map +1 -0
- package/lib/module/components/item/index.js +2 -2
- package/lib/module/components/item/index.js.map +1 -1
- package/lib/module/components/line-chart/index.js +1 -0
- package/lib/module/components/line-chart/index.js.map +1 -1
- package/lib/module/components/marker/index.js +2 -2
- package/lib/module/components/marker/index.js.map +1 -1
- package/lib/module/components/marquee/index.js +9 -12
- package/lib/module/components/marquee/index.js.map +1 -1
- package/lib/module/components/marquee/marquee-math.js +39 -0
- package/lib/module/components/marquee/marquee-math.js.map +1 -0
- package/lib/module/components/menu/index.js +11 -3
- package/lib/module/components/menu/index.js.map +1 -1
- package/lib/module/components/otp-input/index.js +3 -1
- package/lib/module/components/otp-input/index.js.map +1 -1
- package/lib/module/components/otp-input/otp-input-state.js +7 -0
- package/lib/module/components/otp-input/otp-input-state.js.map +1 -0
- package/lib/module/components/pagination/index.js +27 -11
- package/lib/module/components/pagination/index.js.map +1 -1
- package/lib/module/components/panelside/index.js +7 -2
- package/lib/module/components/panelside/index.js.map +1 -1
- package/lib/module/components/planner/index.js +46 -11
- package/lib/module/components/planner/index.js.map +1 -1
- package/lib/module/components/planner/planner-today.js +8 -0
- package/lib/module/components/planner/planner-today.js.map +1 -0
- package/lib/module/components/plot/index.js +113 -53
- package/lib/module/components/plot/index.js.map +1 -1
- package/lib/module/components/plot/plot-series-registry.js +32 -0
- package/lib/module/components/plot/plot-series-registry.js.map +1 -0
- package/lib/module/components/post/index.js +4 -4
- package/lib/module/components/post/index.js.map +1 -1
- package/lib/module/components/radio-group/index.js +2 -1
- package/lib/module/components/radio-group/index.js.map +1 -1
- package/lib/module/components/radio-group/radio-group-value.js +8 -0
- package/lib/module/components/radio-group/radio-group-value.js.map +1 -0
- package/lib/module/components/rating/index.js +7 -4
- package/lib/module/components/rating/index.js.map +1 -1
- package/lib/module/components/rating/rating-inputs.js +15 -0
- package/lib/module/components/rating/rating-inputs.js.map +1 -0
- package/lib/module/components/search-bar/index.js +331 -0
- package/lib/module/components/search-bar/index.js.map +1 -0
- package/lib/module/components/search-bar/search-bar-debounce.js +23 -0
- package/lib/module/components/search-bar/search-bar-debounce.js.map +1 -0
- package/lib/module/components/select/index.js +9 -1
- package/lib/module/components/select/index.js.map +1 -1
- package/lib/module/components/select/native-select-contract.js +11 -0
- package/lib/module/components/select/native-select-contract.js.map +1 -0
- package/lib/module/components/split-view/index.js +439 -0
- package/lib/module/components/split-view/index.js.map +1 -0
- package/lib/module/components/split-view/split-view-math.js +132 -0
- package/lib/module/components/split-view/split-view-math.js.map +1 -0
- package/lib/module/components/splitter/index.js +433 -0
- package/lib/module/components/splitter/index.js.map +1 -0
- package/lib/module/components/splitter/splitter-math.js +206 -0
- package/lib/module/components/splitter/splitter-math.js.map +1 -0
- package/lib/module/components/steps/index.js +16 -5
- package/lib/module/components/steps/index.js.map +1 -1
- package/lib/module/components/steps/steps-trigger.js +6 -0
- package/lib/module/components/steps/steps-trigger.js.map +1 -0
- package/lib/module/components/table/index.js +3 -4
- package/lib/module/components/table/index.js.map +1 -1
- package/lib/module/components/tag-input/index.js +15 -10
- package/lib/module/components/tag-input/index.js.map +1 -1
- package/lib/module/components/tag-input/tag-input-state.js +14 -0
- package/lib/module/components/tag-input/tag-input-state.js.map +1 -0
- package/lib/module/components/textarea/index.js +9 -4
- package/lib/module/components/textarea/index.js.map +1 -1
- package/lib/module/components/textarea/textarea-disabled.js +6 -0
- package/lib/module/components/textarea/textarea-disabled.js.map +1 -0
- package/lib/module/components/timeline/index.js +352 -47
- package/lib/module/components/timeline/index.js.map +1 -1
- package/lib/module/components/timeline/timeline-geometry.js +11 -0
- package/lib/module/components/timeline/timeline-geometry.js.map +1 -0
- package/lib/module/components/toast/index.js +18 -1
- package/lib/module/components/toast/index.js.map +1 -1
- package/lib/module/components/toast/toast-store.js +36 -4
- package/lib/module/components/toast/toast-store.js.map +1 -1
- package/lib/module/components/toggle-button/index.js +1 -1
- package/lib/module/components/toggle-button/index.js.map +1 -1
- package/lib/module/components/tour/index.js +4 -2
- package/lib/module/components/tour/index.js.map +1 -1
- package/lib/module/components/tour/tour-card-measurement.js +24 -0
- package/lib/module/components/tour/tour-card-measurement.js.map +1 -0
- package/lib/module/components/tree/index.js +13 -8
- package/lib/module/components/tree/index.js.map +1 -1
- package/lib/module/hooks/use-keyboard-avoidance.js.map +1 -1
- package/lib/module/index.js +3 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/chart.js +50 -7
- package/lib/module/utils/chart.js.map +1 -1
- package/lib/typescript/src/components/accordion/index.d.ts +2 -2
- package/lib/typescript/src/components/accordion/index.d.ts.map +1 -1
- package/lib/typescript/src/components/area-chart/index.d.ts.map +1 -1
- package/lib/typescript/src/components/avatar/avatar-group.d.ts +46 -0
- package/lib/typescript/src/components/avatar/avatar-group.d.ts.map +1 -0
- package/lib/typescript/src/components/avatar/index.d.ts +23 -1
- package/lib/typescript/src/components/avatar/index.d.ts.map +1 -1
- package/lib/typescript/src/components/breadcrumb/index.d.ts.map +1 -1
- package/lib/typescript/src/components/button/index.d.ts.map +1 -1
- package/lib/typescript/src/components/code-block/index.d.ts +3 -3
- package/lib/typescript/src/components/code-block/index.d.ts.map +1 -1
- package/lib/typescript/src/components/collapsible/index.d.ts +2 -2
- package/lib/typescript/src/components/collapsible/index.d.ts.map +1 -1
- package/lib/typescript/src/components/color-picker/color-picker-accessibility.d.ts +8 -0
- package/lib/typescript/src/components/color-picker/color-picker-accessibility.d.ts.map +1 -0
- package/lib/typescript/src/components/color-picker/index.d.ts.map +1 -1
- package/lib/typescript/src/components/date-time-picker/index.d.ts.map +1 -1
- package/lib/typescript/src/components/drawer/index.d.ts.map +1 -1
- package/lib/typescript/src/components/fab/index.d.ts +4 -2
- package/lib/typescript/src/components/fab/index.d.ts.map +1 -1
- package/lib/typescript/src/components/heatmap-chart/index.d.ts.map +1 -1
- package/lib/typescript/src/components/hex-chart/index.d.ts.map +1 -1
- package/lib/typescript/src/components/input/index.d.ts.map +1 -1
- package/lib/typescript/src/components/input/input-content-padding.d.ts +2 -0
- package/lib/typescript/src/components/input/input-content-padding.d.ts.map +1 -0
- package/lib/typescript/src/components/input-group/index.d.ts.map +1 -1
- package/lib/typescript/src/components/input-group/input-group-measurements.d.ts +16 -0
- package/lib/typescript/src/components/input-group/input-group-measurements.d.ts.map +1 -0
- package/lib/typescript/src/components/line-chart/index.d.ts.map +1 -1
- package/lib/typescript/src/components/marquee/index.d.ts +1 -1
- package/lib/typescript/src/components/marquee/index.d.ts.map +1 -1
- package/lib/typescript/src/components/marquee/marquee-math.d.ts +21 -0
- package/lib/typescript/src/components/marquee/marquee-math.d.ts.map +1 -0
- package/lib/typescript/src/components/menu/index.d.ts +1 -1
- package/lib/typescript/src/components/menu/index.d.ts.map +1 -1
- package/lib/typescript/src/components/otp-input/index.d.ts.map +1 -1
- package/lib/typescript/src/components/otp-input/otp-input-state.d.ts +3 -0
- package/lib/typescript/src/components/otp-input/otp-input-state.d.ts.map +1 -0
- package/lib/typescript/src/components/pagination/index.d.ts.map +1 -1
- package/lib/typescript/src/components/panelside/index.d.ts +1 -1
- package/lib/typescript/src/components/panelside/index.d.ts.map +1 -1
- package/lib/typescript/src/components/plan/index.d.ts +2 -2
- package/lib/typescript/src/components/planner/index.d.ts.map +1 -1
- package/lib/typescript/src/components/planner/planner-today.d.ts +2 -0
- package/lib/typescript/src/components/planner/planner-today.d.ts.map +1 -0
- package/lib/typescript/src/components/plot/index.d.ts +60 -6
- package/lib/typescript/src/components/plot/index.d.ts.map +1 -1
- package/lib/typescript/src/components/plot/plot-series-registry.d.ts +8 -0
- package/lib/typescript/src/components/plot/plot-series-registry.d.ts.map +1 -0
- package/lib/typescript/src/components/radio-group/index.d.ts.map +1 -1
- package/lib/typescript/src/components/radio-group/radio-group-value.d.ts +2 -0
- package/lib/typescript/src/components/radio-group/radio-group-value.d.ts.map +1 -0
- package/lib/typescript/src/components/rating/index.d.ts.map +1 -1
- package/lib/typescript/src/components/rating/rating-inputs.d.ts +4 -0
- package/lib/typescript/src/components/rating/rating-inputs.d.ts.map +1 -0
- package/lib/typescript/src/components/search-bar/index.d.ts +216 -0
- package/lib/typescript/src/components/search-bar/index.d.ts.map +1 -0
- package/lib/typescript/src/components/search-bar/search-bar-debounce.d.ts +7 -0
- package/lib/typescript/src/components/search-bar/search-bar-debounce.d.ts.map +1 -0
- package/lib/typescript/src/components/select/index.d.ts.map +1 -1
- package/lib/typescript/src/components/select/native-select-contract.d.ts +11 -0
- package/lib/typescript/src/components/select/native-select-contract.d.ts.map +1 -0
- package/lib/typescript/src/components/split-view/index.d.ts +159 -0
- package/lib/typescript/src/components/split-view/index.d.ts.map +1 -0
- package/lib/typescript/src/components/split-view/split-view-math.d.ts +54 -0
- package/lib/typescript/src/components/split-view/split-view-math.d.ts.map +1 -0
- package/lib/typescript/src/components/splitter/index.d.ts +78 -0
- package/lib/typescript/src/components/splitter/index.d.ts.map +1 -0
- package/lib/typescript/src/components/splitter/splitter-math.d.ts +67 -0
- package/lib/typescript/src/components/splitter/splitter-math.d.ts.map +1 -0
- package/lib/typescript/src/components/steps/index.d.ts +2 -2
- package/lib/typescript/src/components/steps/index.d.ts.map +1 -1
- package/lib/typescript/src/components/steps/steps-trigger.d.ts +2 -0
- package/lib/typescript/src/components/steps/steps-trigger.d.ts.map +1 -0
- package/lib/typescript/src/components/tag-input/index.d.ts.map +1 -1
- package/lib/typescript/src/components/tag-input/tag-input-state.d.ts +12 -0
- package/lib/typescript/src/components/tag-input/tag-input-state.d.ts.map +1 -0
- package/lib/typescript/src/components/textarea/index.d.ts.map +1 -1
- package/lib/typescript/src/components/textarea/textarea-disabled.d.ts +2 -0
- package/lib/typescript/src/components/textarea/textarea-disabled.d.ts.map +1 -0
- package/lib/typescript/src/components/timeline/index.d.ts +36 -2
- package/lib/typescript/src/components/timeline/index.d.ts.map +1 -1
- package/lib/typescript/src/components/timeline/timeline-geometry.d.ts +4 -0
- package/lib/typescript/src/components/timeline/timeline-geometry.d.ts.map +1 -0
- package/lib/typescript/src/components/toast/index.d.ts.map +1 -1
- package/lib/typescript/src/components/toast/toast-store.d.ts +7 -2
- package/lib/typescript/src/components/toast/toast-store.d.ts.map +1 -1
- package/lib/typescript/src/components/tour/index.d.ts.map +1 -1
- package/lib/typescript/src/components/tour/tour-card-measurement.d.ts +14 -0
- package/lib/typescript/src/components/tour/tour-card-measurement.d.ts.map +1 -0
- package/lib/typescript/src/components/tree/index.d.ts +3 -4
- package/lib/typescript/src/components/tree/index.d.ts.map +1 -1
- package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts +2 -2
- package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +5 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/utils/chart.d.ts +28 -3
- package/lib/typescript/src/utils/chart.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/accordion/index.tsx +17 -7
- package/src/components/area-chart/index.tsx +8 -0
- package/src/components/avatar/avatar-group.ts +78 -0
- package/src/components/avatar/index.tsx +121 -1
- package/src/components/breadcrumb/index.tsx +2 -1
- package/src/components/button/index.tsx +3 -2
- package/src/components/carousel/index.tsx +1 -1
- package/src/components/chip/index.tsx +2 -2
- package/src/components/code-block/index.tsx +3 -3
- package/src/components/collapsible/index.tsx +13 -4
- package/src/components/color-picker/color-picker-accessibility.ts +12 -0
- package/src/components/color-picker/index.tsx +30 -10
- package/src/components/date-time-picker/index.tsx +11 -3
- package/src/components/drawer/index.tsx +42 -14
- package/src/components/fab/index.tsx +21 -11
- package/src/components/flow/index.tsx +1 -1
- package/src/components/frame/index.tsx +2 -2
- package/src/components/grid-item/index.tsx +2 -2
- package/src/components/heatmap-chart/index.tsx +7 -1
- package/src/components/hex-chart/index.tsx +7 -1
- package/src/components/input/index.tsx +6 -2
- package/src/components/input/input-content-padding.ts +3 -0
- package/src/components/input-group/index.tsx +45 -12
- package/src/components/input-group/input-group-measurements.ts +98 -0
- package/src/components/item/index.tsx +2 -2
- package/src/components/line-chart/index.tsx +9 -0
- package/src/components/marker/index.tsx +2 -2
- package/src/components/marquee/index.tsx +14 -12
- package/src/components/marquee/marquee-math.ts +37 -0
- package/src/components/menu/index.tsx +11 -3
- package/src/components/otp-input/index.tsx +3 -1
- package/src/components/otp-input/otp-input-state.ts +7 -0
- package/src/components/pagination/index.tsx +26 -13
- package/src/components/panelside/index.tsx +7 -2
- package/src/components/plan/index.tsx +2 -2
- package/src/components/planner/index.tsx +44 -11
- package/src/components/planner/planner-today.ts +5 -0
- package/src/components/plot/index.tsx +199 -51
- package/src/components/plot/plot-series-registry.ts +41 -0
- package/src/components/post/index.tsx +4 -4
- package/src/components/radio-group/index.tsx +4 -1
- package/src/components/radio-group/radio-group-value.ts +9 -0
- package/src/components/rating/index.tsx +11 -4
- package/src/components/rating/rating-inputs.ts +19 -0
- package/src/components/search-bar/index.tsx +441 -0
- package/src/components/search-bar/search-bar-debounce.ts +35 -0
- package/src/components/select/index.tsx +10 -1
- package/src/components/select/native-select-contract.ts +12 -0
- package/src/components/split-view/index.tsx +565 -0
- package/src/components/split-view/split-view-math.ts +146 -0
- package/src/components/splitter/index.tsx +589 -0
- package/src/components/splitter/splitter-math.ts +244 -0
- package/src/components/steps/index.tsx +35 -9
- package/src/components/steps/steps-trigger.ts +6 -0
- package/src/components/table/index.tsx +2 -2
- package/src/components/tag-input/index.tsx +13 -11
- package/src/components/tag-input/tag-input-state.ts +18 -0
- package/src/components/textarea/index.tsx +8 -4
- package/src/components/textarea/textarea-disabled.ts +6 -0
- package/src/components/timeline/index.tsx +405 -46
- package/src/components/timeline/timeline-geometry.ts +9 -0
- package/src/components/toast/index.tsx +26 -1
- package/src/components/toast/toast-store.ts +43 -8
- package/src/components/toggle-button/index.tsx +1 -1
- package/src/components/tour/index.tsx +11 -3
- package/src/components/tour/tour-card-measurement.ts +29 -0
- package/src/components/tree/index.tsx +17 -12
- package/src/hooks/use-keyboard-avoidance.ts +7 -2
- package/src/index.ts +19 -0
- 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":";;AAAA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SACEA,UAAU,EACVC,WAAW,EACXC,SAAS,EACTC,mBAAmB,EACnBC,MAAM,EACNC,QAAQ,QAEH,OAAO;AACd,SACEC,IAAI,QAKC,cAAc;AACrB,OAAOC,QAAQ,IACbC,gBAAgB,EAChBC,cAAc,EACdC,UAAU,QACL,yBAAyB;AAChC,SAASC,EAAE,QAA2B,mBAAmB;AACzD,SAASC,UAAU,EAAEC,KAAK,QAAQ,sBAAa;AAC/C,SAASC,iBAAiB,QAAQ,wCAAqC;AACvE,SAASC,IAAI,QAAQ,0BAAuB;AAC5C,SAASC,KAAK,QAAyB,mBAAU;AACjD,SAASC,OAAO,QAAQ,qBAAY;AACpC,SACEC,uBAAuB,EACvBC,sBAAsB,EACtBC,yBAAyB,QAEpB,0BAAuB;;AAE9B;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AACA,MAAMC,eAAe,GAAG,GAAG;;AAE3B;AACA,MAAMC,UAAU,GAAG,CAAC;;AAEpB;AACA;AACA;AACA;AACA,MAAMC,cAAc,GAAG,EAAE;AAEzB,MAAMC,iBAAiB,GAAGjB,EAAE,CAAC;EAC3BkB,KAAK,EAAE;IACLC,GAAG,EAAE,8BAA8B;IACnCC,KAAK,EAAE,EAAE;IACT;IACA;IACA;IACA;IACA;IACA;IACAC,UAAU,EAAE,8BAA8B;IAC1CC,YAAY,EAAE,gEAAgE;IAC9EC,WAAW,EAAE,0BAA0B;IACvCC,KAAK,EAAE;EACT,CAAC;EACDC,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJC,EAAE,EAAE;QAAEJ,WAAW,EAAE,aAAa;QAAEC,KAAK,EAAE;MAAU,CAAC;MACpDI,EAAE,EAAE;QAAEL,WAAW,EAAE,aAAa;QAAEC,KAAK,EAAE;MAAU,CAAC;MACpDK,EAAE,EAAE;QAAEN,WAAW,EAAE,aAAa;QAAEC,KAAK,EAAE;MAAU;IACrD,CAAC;IACD;AACJ;AACA;AACA;AACA;IACIM,KAAK,EAAE;MACLC,OAAO,EAAE;QAAEX,KAAK,EAAE;MAAG,CAAC;MACtBY,IAAI,EAAE;QAAEZ,KAAK,EAAE;MAAe;IAChC;EACF,CAAC;EACDa,eAAe,EAAE;IACfP,IAAI,EAAE,IAAI;IACVI,KAAK,EAAE;EACT;AACF,CAAC,CAAC;AAIF;AACA,MAAMI,SAAS,GAAG;EAAEP,EAAE,EAAE,EAAE;EAAEC,EAAE,EAAE,EAAE;EAAEC,EAAE,EAAE;AAAG,CAAU;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;;AAmEA,OAAO,MAAMM,SAAS,gBAAG9C,UAAU,CACjC,CACE;EACE+C,KAAK,EAAEC,SAAS;EAChBC,YAAY;EACZC,YAAY;EACZC,QAAQ;EACRC,QAAQ,GAAG,CAAC;EACZC,iBAAiB;EACjBC,OAAO;EACPC,QAAQ;EACRC,WAAW,GAAG,IAAI;EAClBC,MAAM,GAAG,OAAO;EAChBvB,WAAW,GAAG,QAAQ;EACtBwB,UAAU,GAAG,cAAc;EAC3BC,OAAO,GAAG,KAAK;EACfC,IAAI;EACJnB,KAAK;EACLJ,IAAI,GAAG,IAAI;EACXwB,SAAS;EACTC,kBAAkB;EAClBC,QAAQ;EACRC,OAAO;EACPC,MAAM;EACNC,eAAe;EACf,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAMC,UAAU,GAAGrB,SAAS,KAAKsB,SAAS;EAC1C,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGnE,QAAQ,CAAC4C,YAAY,IAAI,EAAE,CAAC;EAC5D,MAAMwB,IAAI,GAAGJ,UAAU,GAAGrB,SAAS,GAAGuB,QAAQ;EAE9C,MAAM,CAACG,OAAO,EAAEC,UAAU,CAAC,GAAGtE,QAAQ,CAAC,KAAK,CAAC;EAC7C,MAAMuE,QAAQ,GAAGxE,MAAM,CAAmB,IAAI,CAAC;EAC/CD,mBAAmB,CAACiE,GAAG,EAAE,MAAMQ,QAAQ,CAACC,OAAoB,EAAE,EAAE,CAAC;EAEjE,MAAMhD,KAAK,GAAGD,iBAAiB,CAAC;IAAES,IAAI;IAAEI;EAAM,CAAC,CAAC;EAEhD,MAAMqC,OAAO,GAAG7E,WAAW,CACxB8E,IAAY,IAAK;IAChB,IAAI,CAACV,UAAU,EAAEG,WAAW,CAACO,IAAI,CAAC;IAClC7B,YAAY,GAAG6B,IAAI,CAAC;EACtB,CAAC,EACD,CAACV,UAAU,EAAEnB,YAAY,CAC3B,CAAC;;EAED;AACJ;AACA;AACA;AACA;EACI,MAAM8B,YAAY,GAAG5E,MAAM,CAACiD,iBAAiB,CAAC;EAC9C,MAAM4B,gBAAgB,GAAG7E,MAAM,CAAoC,IAAI,CAAC;EACxEF,SAAS,CAAC,MAAM;IACd8E,YAAY,CAACH,OAAO,GAAGxB,iBAAiB;EAC1C,CAAC,CAAC;;EAEF;EACA;EACA,MAAM6B,OAAO,GAAG9E,MAAM,CAAC,KAAK,CAAC;EAC7BF,SAAS,CAAC,MAAM;IACd,IAAI,CAACgF,OAAO,CAACL,OAAO,EAAE;MACpBK,OAAO,CAACL,OAAO,GAAG,IAAI;MACtB;IACF;IACAzD,yBAAyB,CAAC6D,gBAAgB,EAAED,YAAY,CAACH,OAAO,EAAEJ,IAAI,EAAErB,QAAQ,CAAC;IACjF,OAAO,MAAM;MACXlC,uBAAuB,CAAC+D,gBAAgB,CAAC;IAC3C,CAAC;EACH,CAAC,EAAE,CAACR,IAAI,EAAErB,QAAQ,CAAC,CAAC;EAEpB,MAAM+B,WAAW,GAAGlF,WAAW,CAC5BmF,KAAK,IAAK;IACTT,UAAU,CAAC,IAAI,CAAC;IAChBX,OAAO,GAAGoB,KAAK,CAAC;EAClB,CAAC,EACD,CAACpB,OAAO,CACV,CAAC;EAED,MAAMqB,UAAU,GAAGpF,WAAW,CAC3BmF,KAAK,IAAK;IACTT,UAAU,CAAC,KAAK,CAAC;IACjBV,MAAM,GAAGmB,KAAK,CAAC;EACjB,CAAC,EACD,CAACnB,MAAM,CACT,CAAC;EAED,MAAMqB,YAAY,GAAGrF,WAAW,CAC7BmF,KAA4D,IAAK;IAChE;IACA;IACAjE,sBAAsB,CAAC8D,gBAAgB,EAAED,YAAY,CAACH,OAAO,EAAEJ,IAAI,CAAC;IACpEtB,QAAQ,GAAGsB,IAAI,CAAC;IAChBP,eAAe,GAAGkB,KAAK,CAAC;EAC1B,CAAC,EACD,CAACjC,QAAQ,EAAEe,eAAe,EAAEO,IAAI,CAClC,CAAC;EAED,MAAMc,WAAW,GAAGtF,WAAW,CAAC,MAAM;IACpC6E,OAAO,CAAC,EAAE,CAAC;IACXxB,OAAO,GAAG,CAAC;IACX;IACA;IACAsB,QAAQ,CAACC,OAAO,EAAEW,KAAK,CAAC,CAAC;EAC3B,CAAC,EAAE,CAAClC,OAAO,EAAEwB,OAAO,CAAC,CAAC;EAEtB,MAAMW,YAAY,GAAGxF,WAAW,CAAC,MAAM;IACrC6E,OAAO,CAAC,EAAE,CAAC;IACXF,QAAQ,CAACC,OAAO,EAAEa,IAAI,CAAC,CAAC;IACxBnC,QAAQ,GAAG,CAAC;EACd,CAAC,EAAE,CAACA,QAAQ,EAAEuB,OAAO,CAAC,CAAC;;EAEvB;AACJ;AACA;AACA;AACA;AACA;EACI,MAAMa,WAAW,GAAGlF,cAAc,CAAC,CAAC,CAAC;EACrC,MAAMmF,SAAS,GAAGnC,MAAM,KAAK,QAAQ,IAAKA,MAAM,KAAK,OAAO,IAAIiB,OAAQ;EACxE,MAAMmB,cAAc,GAAGpF,cAAc,CAACgD,MAAM,KAAK,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC;EAElEvD,SAAS,CAAC,MAAM;IACd,IAAIuD,MAAM,KAAK,OAAO,EAAE;IACxBoC,cAAc,CAAC9C,KAAK,GAAGrC,UAAU,CAACkF,SAAS,GAAG,CAAC,GAAG,CAAC,EAAE;MACnDE,QAAQ,EAAErE;IACZ,CAAC,CAAC;EACJ,CAAC,EAAE,CAACgC,MAAM,EAAEmC,SAAS,EAAEC,cAAc,CAAC,CAAC;EAEvC,MAAME,WAAW,GAAGvF,gBAAgB,CAAC,OAAO;IAC1CwF,KAAK,EAAE,CAACL,WAAW,CAAC5C,KAAK,GAAGrB,UAAU,IAAImE,cAAc,CAAC9C,KAAK;IAC9DkD,OAAO,EAAEJ,cAAc,CAAC9C;EAC1B,CAAC,CAAC,CAAC;EAEH,MAAMmD,kBAAkB,GAAGjG,WAAW,CACnCmF,KAAwB,IAAK;IAC5BO,WAAW,CAAC5C,KAAK,GAAGqC,KAAK,CAACe,WAAW,CAACC,MAAM,CAACJ,KAAK;EACpD,CAAC,EACD,CAACL,WAAW,CACd,CAAC;EAED,MAAMU,YAAY;EAAA;EAChB;AACN;AACA;AACA;AACA;AACA;EACM/E,IAAA,CAAChB,IAAI;IACHgG,aAAa,EAAC,MAAM;IACpBC,2BAA2B;IAC3BC,yBAAyB,EAAC,qBAAqB;IAAAC,QAAA,EAE9C7C,IAAI,iBAAItC,IAAA,CAACV,UAAU;MAACyB,IAAI,EAAEQ,SAAS,CAACR,IAAI;IAAE,CAAE;EAAC,CAC1C,CACP;EAED,MAAMqE,UAAU,GAAG/C,OAAO,gBACxBrC,IAAA,CAACL,OAAO;IAACoB,IAAI,EAAC;EAAI,CAAE,CAAC,GACnBmB,WAAW,IAAIiB,IAAI,CAACkC,MAAM,GAAG,CAAC,gBAChCrF,IAAA,CAACR,iBAAiB;IAChB8F,OAAO,EAAErB,WAAY;IACrBxB,QAAQ,EAAEA,QAAS;IACnB8C,OAAO,EAAElF,cAAe;IACxBmF,iBAAiB,EAAC,QAAQ;IAC1BC,kBAAkB,EAAErD,UAAW;IAC/BG,SAAS,EAAEhC,KAAK,CAACM,KAAK,CAAC,CAAE;IAAAsE,QAAA,eAEzBnF,IAAA,CAACT,KAAK;MAACwB,IAAI,EAAEQ,SAAS,CAACR,IAAI;IAAE,CAAE;EAAC,CACf,CAAC,GAClB,IAAI;EAER,MAAMN,KAAK,gBACTT,IAAA,CAACN,KAAK;IACJoD,GAAG,EAAEQ,QAAS;IACdvC,IAAI,EAAEA,IAAK;IACX0B,QAAQ,EAAEA,QAAS;IACnBF,SAAS,EAAEhC,KAAK,CAACE,KAAK,CAAC;MAAE8B;IAAU,CAAC,CAAE;IACtCC,kBAAkB,EAAEL,MAAM,KAAK,OAAO,GAAGK,kBAAkB,GAAG,QAAS;IACvEuC,YAAY,EAAEA,YAAa;IAC3BK,UAAU,EAAEA,UAAW;IACvB3D,KAAK,EAAE0B,IAAK;IACZvB,YAAY,EAAE4B,OAAQ;IACtBd,OAAO,EAAEmB,WAAY;IACrBlB,MAAM,EAAEoB,UAAW;IACnBnB,eAAe,EAAEoB,YAAa;IAC9BwB,iBAAiB,EAAC,QAAQ;IAC1BE,aAAa,EAAC;IACd;IACA;IAAA;IACAC,eAAe,EAAC,OAAO;IACvBC,cAAc,EAAC,MAAM;IACrBC,WAAW,EAAE,KAAM;IACnBC,UAAU,EAAE,KAAM;IAClBC,WAAW,EAAC,QAAQ;IAAA,GAChBlD;EAAK,CACV,CACF;EAED,IAAIV,MAAM,KAAK,OAAO,EAAE,OAAO1B,KAAK;EAEpC,oBACEP,KAAA,CAAClB,IAAI;IAACuD,SAAS,EAAEhC,KAAK,CAACC,GAAG,CAAC;MAAE+B,SAAS,EAAEC;IAAmB,CAAC,CAAE;IAAA2C,QAAA,GAC3D1E,KAAK,eACNT,IAAA,CAACf,QAAQ,CAACD,IAAI;MACZgH,KAAK,EAAEvB,WAAY;MACnBlC,SAAS,EAAEhC,KAAK,CAACG,UAAU,CAAC,CAAE;MAC9BsE,aAAa,EAAEV,SAAS,GAAG,MAAM,GAAG,MAAO;MAC3CW,2BAA2B,EAAE,CAACX,SAAU;MACxCY,yBAAyB,EAAEZ,SAAS,GAAG,MAAM,GAAG,qBAAsB;MAAAa,QAAA,eAStEnF,IAAA,CAACR,iBAAiB;QAChByG,QAAQ,EAAErB,kBAAmB;QAC7BU,OAAO,EAAEnB,YAAa;QACtBoB,OAAO,EAAE,CAAE;QACXC,iBAAiB,EAAC,QAAQ;QAC1BjD,SAAS,EAAEhC,KAAK,CAACI,YAAY,CAAC,CAAE;QAAAwE,QAAA,eAEhCnF,IAAA,CAACP,IAAI;UAAC8C,SAAS,EAAEhC,KAAK,CAACK,WAAW,CAAC,CAAE;UAAAuE,QAAA,EAAEvE;QAAW,CAAO;MAAC,CACzC;IAAC,CACP,CAAC;EAAA,CACZ,CAAC;AAEX,CACF,CAAC;AAEDY,SAAS,CAAC0E,WAAW,GAAG,WAAW","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":[]}
|