@bookjane2/bookjane-design-library 9.0.6 → 9.0.8
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/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.d.ts.map +1 -1
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.js +23 -9
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.js.map +1 -1
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.stories.d.ts +2 -0
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.stories.d.ts.map +1 -1
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.stories.js +7 -3
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.stories.js.map +1 -1
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.styled.d.ts +2 -0
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.styled.d.ts.map +1 -0
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.styled.js +6 -0
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.styled.js.map +1 -0
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.test.d.ts +2 -0
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.test.d.ts.map +1 -0
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.test.js +114 -0
- package/lib/components/BKJCheckboxListItem/BKJCheckboxListItem.test.js.map +1 -0
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.d.ts +1 -1
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.js +2 -2
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.js.map +1 -1
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.stories.d.ts +3 -1
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.stories.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.stories.js +48 -0
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.stories.js.map +1 -1
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.test.d.ts +22 -0
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.test.d.ts.map +1 -0
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.test.js +561 -0
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.test.js.map +1 -0
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.types.d.ts +41 -0
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.types.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.utils.d.ts +6 -0
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.utils.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.utils.js +14 -0
- package/lib/components/BKJComboBoxAsync/BKJComboBoxAsync.utils.js.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.hooks.d.ts +48 -0
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.hooks.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.hooks.js +99 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.hooks.js.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.js +107 -26
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.js.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncInput.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncInput.js +29 -3
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncInput.js.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncItem.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncItem.js +7 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncItem.js.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncOptions.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncOptions.js +25 -6
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncOptions.js.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncOptionsMapper.d.ts.map +1 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncOptionsMapper.js +6 -1
- package/lib/components/BKJComboBoxAsync/src/BKJComboBoxAsyncOptionsMapper.js.map +1 -1
- package/package.json +1 -1
|
@@ -50,6 +50,28 @@ export interface IBKJComboBoxAsyncProps extends Omit<IBKJTextInputProps, 'value'
|
|
|
50
50
|
*/
|
|
51
51
|
subLabelPosition?: 'left' | 'right';
|
|
52
52
|
showFullFocusBorder?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* WEB-4815 / FR-011a: overrides the text of the live-region "Loading
|
|
55
|
+
* results…" announcement fired when an async fetch exceeds the 1-second
|
|
56
|
+
* threshold while the dropdown is open. Defaults to "Loading results…".
|
|
57
|
+
*/
|
|
58
|
+
loadingLabel?: string;
|
|
59
|
+
/**
|
|
60
|
+
* WEB-4815 / FR-011a: overrides the text of the live-region results-count
|
|
61
|
+
* announcement fired when an async fetch resolves with one or more
|
|
62
|
+
* options. Accepts either a function of the option count or a template
|
|
63
|
+
* string (where `{N}` is substituted with the count). Defaults to English
|
|
64
|
+
* singular / plural: "1 result found" / "{N} results found".
|
|
65
|
+
*/
|
|
66
|
+
resultsCountLabel?: string | ((count: number) => string);
|
|
67
|
+
/**
|
|
68
|
+
* WEB-4815 / FR-011a / R1: overrides the text of the in-listbox
|
|
69
|
+
* `role="option" aria-disabled="true"` "No results" element rendered
|
|
70
|
+
* when an async fetch resolves with zero options. Defaults to `undefined`;
|
|
71
|
+
* when unset, the existing `i18next.t('translations:NO_RESULTS')` lookup
|
|
72
|
+
* is preserved (non-breaking for French-locale consumers).
|
|
73
|
+
*/
|
|
74
|
+
noResultsLabel?: string;
|
|
53
75
|
}
|
|
54
76
|
export interface IBKJComboBoxAsyncOption {
|
|
55
77
|
value: string | number;
|
|
@@ -86,6 +108,9 @@ export interface IBKJComboBoxAsyncProviderProps {
|
|
|
86
108
|
onSearchChange: IBKJComboBoxAsyncProps['onSearchChange'];
|
|
87
109
|
required?: IBKJComboBoxAsyncProps['required'];
|
|
88
110
|
subLabelPosition?: IBKJComboBoxAsyncProps['subLabelPosition'];
|
|
111
|
+
loadingLabel?: IBKJComboBoxAsyncProps['loadingLabel'];
|
|
112
|
+
resultsCountLabel?: IBKJComboBoxAsyncProps['resultsCountLabel'];
|
|
113
|
+
noResultsLabel?: IBKJComboBoxAsyncProps['noResultsLabel'];
|
|
89
114
|
}
|
|
90
115
|
interface ScrollToOptions {
|
|
91
116
|
align: 'start' | 'center' | 'end' | 'auto';
|
|
@@ -126,6 +151,22 @@ export interface IBKJComboBoxAsyncContextValue extends Omit<UseComboboxReturnVal
|
|
|
126
151
|
cacheKey?: IBKJComboBoxAsyncProps['cacheKey'];
|
|
127
152
|
onSearchChange: IBKJComboBoxAsyncProps['onSearchChange'];
|
|
128
153
|
subLabelPosition?: IBKJComboBoxAsyncProps['subLabelPosition'];
|
|
154
|
+
/**
|
|
155
|
+
* WEB-4815 / I-A01 / I-A02: live message to announce in the async
|
|
156
|
+
* listbox's live region (loading or results-count). Empty string when
|
|
157
|
+
* no message is live. Written by `useLoadingAnnouncer`.
|
|
158
|
+
*/
|
|
159
|
+
liveMessage: string;
|
|
160
|
+
/**
|
|
161
|
+
* WEB-4815 / I-A01: whether the listbox should carry `aria-busy="true"`.
|
|
162
|
+
* Keys off `isLoading` alone per R3. Written by `useLoadingAnnouncer`.
|
|
163
|
+
*/
|
|
164
|
+
isBusy: boolean;
|
|
165
|
+
/**
|
|
166
|
+
* WEB-4815 / FR-011a / R1: consumer-supplied label that overrides the
|
|
167
|
+
* existing i18next lookup for the NoResults element text when defined.
|
|
168
|
+
*/
|
|
169
|
+
noResultsLabel?: IBKJComboBoxAsyncProps['noResultsLabel'];
|
|
129
170
|
}
|
|
130
171
|
export interface IBKJComboBoxAsyncExtractInitialSelectedItem {
|
|
131
172
|
value: IBKJComboBoxAsyncProps['value'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJComboBoxAsync.types.d.ts","sourceRoot":"","sources":["../../../src/components/BKJComboBoxAsync/BKJComboBoxAsync.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EACL,kBAAkB,EAClB,8BAA8B,EAC9B,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE,MAAM,WAAW,sBACf,SAAQ,IAAI,CAAC,kBAAkB,EAAE,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACjC,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,YAAY,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC;IAC5B;;OAEG;IACH,OAAO,EAAE,IAAI,CAAC,uBAAuB,EAAE,OAAO,CAAC,EAAE,CAAC;IAClD,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,WAAW,CAAC,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAChD;;;;OAIG;IACH,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B;;;;OAIG;IACH,KAAK,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,cAAc,EAAE,kBAAkB,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,MAAM,EAAE,iBAAiB,GAAG,YAAY,CAAC;IACzC,KAAK,CAAC,EAAE,8BAA8B,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACtC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACpC,mBAAmB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BKJComboBoxAsync.types.d.ts","sourceRoot":"","sources":["../../../src/components/BKJComboBoxAsync/BKJComboBoxAsync.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EACL,kBAAkB,EAClB,8BAA8B,EAC9B,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE,MAAM,WAAW,sBACf,SAAQ,IAAI,CAAC,kBAAkB,EAAE,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACjC,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,YAAY,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC;IAC5B;;OAEG;IACH,OAAO,EAAE,IAAI,CAAC,uBAAuB,EAAE,OAAO,CAAC,EAAE,CAAC;IAClD,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,WAAW,CAAC,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAChD;;;;OAIG;IACH,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B;;;;OAIG;IACH,KAAK,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,cAAc,EAAE,kBAAkB,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,MAAM,EAAE,iBAAiB,GAAG,YAAY,CAAC;IACzC,KAAK,CAAC,EAAE,8BAA8B,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACtC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACpC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IACzD;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC;CAClE;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,MAAM,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACzC,KAAK,CAAC,EAAE,8BAA8B,CAAC;IACvC,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACrC,QAAQ,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC3C,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC/C,mBAAmB,EAAE,WAAW,CAAC;IACjC,IAAI,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACrC,KAAK,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC3C,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC3C,QAAQ,CAAC,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC9C,IAAI,CAAC,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACtC,WAAW,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACnD,cAAc,EAAE,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;IACzD,QAAQ,CAAC,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC9C,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;IAC9D,YAAY,CAAC,EAAE,sBAAsB,CAAC,cAAc,CAAC,CAAC;IACtD,iBAAiB,CAAC,EAAE,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;IAChE,cAAc,CAAC,EAAE,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;CAC3D;AACD,UAAU,eAAe;IACvB,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;CAC5C;AAED,MAAM,WAAW,6BACf,SAAQ,IAAI,CACV,sBAAsB,CAAC,uBAAuB,CAAC,EAC/C,YAAY,GAAG,eAAe,GAAG,YAAY,GAAG,SAAS,CAC1D;IACD,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,gBAAgB,EAAE,QAAQ,CAAC,cAAc,CAAC,6BAA6B,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC3F,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,kBAAkB,EAAE,QAAQ,CAAC,cAAc,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC/F,cAAc,EAAE,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IACvD,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,OAAO,EAAE,uBAAuB,EAAE,CAAC;IACnC,SAAS,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IAC9C,cAAc,EAAE;QACd,YAAY,EAAE,WAAW,EAAE,CAAC;QAC5B,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;QACnE,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;QAClE,OAAO,EAAE,MAAM,IAAI,CAAC;KACrB,CAAC;IACF,mBAAmB,EAAE,8BAA8B,CAAC,qBAAqB,CAAC,CAAC;IAC3E,IAAI,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,8BAA8B,CAAC;IACvC,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACrC,KAAK,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACvC,WAAW,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACnD,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAC/C,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC3C,QAAQ,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC7C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC7C,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC/C,MAAM,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,sBAAsB,CAAC,eAAe,CAAC,CAAC;IACxD,QAAQ,CAAC,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC9C,QAAQ,CAAC,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC9C,cAAc,EAAE,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;IACzD,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;IAC9D;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,cAAc,CAAC,EAAE,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;CAC3D;AAED,MAAM,WAAW,2CAA2C;IAC1D,KAAK,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;CAC5C"}
|
|
@@ -5,6 +5,12 @@ import { IBKJTextInputProps } from '../BKJTextInput/BKJTextInput.types.js';
|
|
|
5
5
|
import { IBKJComboBoxAsyncOption, IBKJComboBoxAsyncProps } from './BKJComboBoxAsync.types.js';
|
|
6
6
|
export declare const itemToString: (option: IBKJComboBoxAsyncOption | null) => string;
|
|
7
7
|
export declare const optionsVariant: 'Search';
|
|
8
|
+
/**
|
|
9
|
+
* WEB-4815 / FR-011a: resolves the results-count announcement text from
|
|
10
|
+
* either a function (called with `count`), a template string (with `{N}`
|
|
11
|
+
* substituted), or the English singular/plural default.
|
|
12
|
+
*/
|
|
13
|
+
export declare function resolveResultsCountLabel(label: string | ((count: number) => string) | undefined, count: number): string;
|
|
8
14
|
export declare function getPopperOptions(): {
|
|
9
15
|
modifiers: Array<Modifier<'sameWidth', ComputeStylesModifier['options']> | Partial<Modifier<'offset', PopperOffsetsModifier['options']>>>;
|
|
10
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJComboBoxAsync.utils.d.ts","sourceRoot":"","sources":["../../../src/components/BKJComboBoxAsync/BKJComboBoxAsync.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAG3F,eAAO,MAAM,YAAY,GAAa,QAAQ,uBAAuB,GAAG,IAAI,KAAG,MAE9E,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QAAmB,CAAC;AAEjD,wBAAgB,gBAAgB,IAAI;IAClC,SAAS,EAAE,KAAK,CACZ,QAAQ,CAAC,WAAW,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC,GACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,CAChE,CAAC;CACH,CAsDA;AAED,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,sBAAsB,CAAC,QAAQ,CAAC,EACxC,WAAW,OAAO,KACjB,kBAAkB,CAAC,gBAAgB,CAyBrC,CAAC"}
|
|
1
|
+
{"version":3,"file":"BKJComboBoxAsync.utils.d.ts","sourceRoot":"","sources":["../../../src/components/BKJComboBoxAsync/BKJComboBoxAsync.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAG3F,eAAO,MAAM,YAAY,GAAa,QAAQ,uBAAuB,GAAG,IAAI,KAAG,MAE9E,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QAAmB,CAAC;AAEjD;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,EACvD,KAAK,EAAE,MAAM,GACZ,MAAM,CAKR;AAED,wBAAgB,gBAAgB,IAAI;IAClC,SAAS,EAAE,KAAK,CACZ,QAAQ,CAAC,WAAW,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC,GACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,CAChE,CAAC;CACH,CAsDA;AAED,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,sBAAsB,CAAC,QAAQ,CAAC,EACxC,WAAW,OAAO,KACjB,kBAAkB,CAAC,gBAAgB,CAyBrC,CAAC"}
|
|
@@ -3,6 +3,20 @@ export const itemToString = function (option) {
|
|
|
3
3
|
return typeof option?.label === 'string' ? option?.label : '';
|
|
4
4
|
};
|
|
5
5
|
export const optionsVariant = 'Search';
|
|
6
|
+
/**
|
|
7
|
+
* WEB-4815 / FR-011a: resolves the results-count announcement text from
|
|
8
|
+
* either a function (called with `count`), a template string (with `{N}`
|
|
9
|
+
* substituted), or the English singular/plural default.
|
|
10
|
+
*/
|
|
11
|
+
export function resolveResultsCountLabel(label, count) {
|
|
12
|
+
if (typeof label === 'function')
|
|
13
|
+
return label(count);
|
|
14
|
+
if (typeof label === 'string')
|
|
15
|
+
return label.replace('{N}', String(count));
|
|
16
|
+
if (count === 1)
|
|
17
|
+
return '1 result found';
|
|
18
|
+
return `${count} results found`;
|
|
19
|
+
}
|
|
6
20
|
export function getPopperOptions() {
|
|
7
21
|
return {
|
|
8
22
|
modifiers: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJComboBoxAsync.utils.js","sourceRoot":"","sources":["../../../src/components/BKJComboBoxAsync/BKJComboBoxAsync.utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BKJComboBoxAsync.utils.js","sourceRoot":"","sources":["../../../src/components/BKJComboBoxAsync/BKJComboBoxAsync.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJComboBoxAsync.context.d.ts","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,EAAE,EAAuD,MAAM,OAAO,CAAC;AAG/F,OAAO,EACL,6BAA6B,EAE7B,8BAA8B,EAC/B,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"BKJComboBoxAsync.context.d.ts","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,EAAE,EAAuD,MAAM,OAAO,CAAC;AAG/F,OAAO,EACL,6BAA6B,EAE7B,8BAA8B,EAC/B,MAAM,2BAA2B,CAAC;AAmCnC,eAAO,MAAM,uBAAuB,wDAAqD,CAAC;AAE1F,eAAO,MAAM,wBAAwB,EAAE,EAAE,CAAC,8BAA8B,CA8TvE,CAAC;AAEF,eAAO,MAAM,0BAA0B,qCAA4C,CAAC"}
|
|
@@ -9,4 +9,52 @@ export declare function useBKJComboBoxAsyncContextHooks(): [
|
|
|
9
9
|
setDropdownElement: Dispatch<SetStateAction<HTMLUListElement | undefined>>;
|
|
10
10
|
}
|
|
11
11
|
];
|
|
12
|
+
/**
|
|
13
|
+
* WEB-4815 / FR-002 / FR-003 / FR-004 / FR-005 / FR-006 / R5:
|
|
14
|
+
* Derives the listbox `aria-busy` state and the live-region message for
|
|
15
|
+
* async loading / results-count announcements.
|
|
16
|
+
*
|
|
17
|
+
* Contract:
|
|
18
|
+
* - `isBusy` equals the consumer's `isLoading` flag (per R3 — does NOT
|
|
19
|
+
* consider `hasNextPage`).
|
|
20
|
+
* - On `isLoading` rising edge (false → true), a 1-second timer is armed.
|
|
21
|
+
* If the timer fires while the dropdown is still open, the `liveMessage`
|
|
22
|
+
* is set to the loadingLabel. The timer is NOT reset by subsequent
|
|
23
|
+
* keystrokes / superseded fetches — it anchors to the first in-flight
|
|
24
|
+
* fetch of a wait period (per Q3 clarification + Edge Case "steady
|
|
25
|
+
* typing").
|
|
26
|
+
* - On `isLoading` falling edge (true → false):
|
|
27
|
+
* - If `optionsCount > 0`: `liveMessage` is replaced with the
|
|
28
|
+
* results-count message on every non-superseded resolve (including
|
|
29
|
+
* cache-hit resolves where the options are identical — per Q4 / FR-004).
|
|
30
|
+
* - If `optionsCount === 0`: `liveMessage` is cleared; the empty state
|
|
31
|
+
* is conveyed by the in-listbox NoResults element (per Q2 / I-A05),
|
|
32
|
+
* NOT by a live-region announcement.
|
|
33
|
+
* - If the dropdown closes during a busy period, the live region unmounts
|
|
34
|
+
* and any armed timer is cleaned up (per FR-006 / I-A08).
|
|
35
|
+
* - If `isOpen` is false when `isLoading` transitions, no announcement is
|
|
36
|
+
* produced; the pending results-count write is suppressed.
|
|
37
|
+
*/
|
|
38
|
+
export interface UseLoadingAnnouncerInput {
|
|
39
|
+
isLoading: boolean;
|
|
40
|
+
isOpen: boolean;
|
|
41
|
+
optionsCount: number;
|
|
42
|
+
labels: {
|
|
43
|
+
loadingLabel?: string;
|
|
44
|
+
resultsCountLabel?: string | ((count: number) => string);
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export interface UseLoadingAnnouncerOutput {
|
|
48
|
+
liveMessage: string;
|
|
49
|
+
isBusy: boolean;
|
|
50
|
+
}
|
|
51
|
+
export declare function useLoadingAnnouncer({ isLoading, isOpen, optionsCount, labels, }: UseLoadingAnnouncerInput): UseLoadingAnnouncerOutput;
|
|
52
|
+
/**
|
|
53
|
+
* WEB-4815 / R1: exposes the i18next-based fallback for callers that need
|
|
54
|
+
* to resolve the NoResults text when the consumer has not supplied
|
|
55
|
+
* `noResultsLabel`. Kept here so the i18next import lives next to its only
|
|
56
|
+
* remaining consumer and the dependency can be removed with a single file
|
|
57
|
+
* change in the future cleanup ticket.
|
|
58
|
+
*/
|
|
59
|
+
export declare function resolveNoResultsLabel(noResultsLabel: string | undefined): string;
|
|
12
60
|
//# sourceMappingURL=BKJComboBoxAsync.context.hooks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJComboBoxAsync.context.hooks.d.ts","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"BKJComboBoxAsync.context.hooks.d.ts","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAwC,MAAM,OAAO,CAAC;AAIvF,wBAAgB,+BAA+B,IAAI;IACjD;QACE,aAAa,CAAC,EAAE,gBAAgB,CAAC;QACjC,eAAe,CAAC,EAAE,gBAAgB,CAAC;KACpC;IACD;QACE,gBAAgB,EAAE,QAAQ,CAAC,cAAc,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC;QACzE,kBAAkB,EAAE,QAAQ,CAAC,cAAc,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC;KAC5E;CACF,CAWA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;KAC1D,CAAC;CACH;AAED,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CACjB;AAKD,wBAAgB,mBAAmB,CAAC,EAClC,SAAS,EACT,MAAM,EACN,YAAY,EACZ,MAAM,GACP,EAAE,wBAAwB,GAAG,yBAAyB,CAqFtD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAGhF"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import { useMemo, useState } from 'react';
|
|
1
|
+
import { useEffect, useMemo, useRef, useState } from 'react';
|
|
2
|
+
import i18next from 'i18next';
|
|
3
|
+
import { resolveResultsCountLabel } from '../BKJComboBoxAsync.utils.js';
|
|
2
4
|
export function useBKJComboBoxAsyncContextHooks() {
|
|
3
5
|
const [anchorElement, setAnchorElement] = useState();
|
|
4
6
|
const [dropdownElement, setDropdownElement] = useState();
|
|
@@ -6,4 +8,100 @@ export function useBKJComboBoxAsyncContextHooks() {
|
|
|
6
8
|
const setMethods = useMemo(() => ({ setAnchorElement, setDropdownElement }), []);
|
|
7
9
|
return [values, setMethods];
|
|
8
10
|
}
|
|
11
|
+
const LOADING_ANNOUNCEMENT_DELAY_MS = 1000;
|
|
12
|
+
const DEFAULT_LOADING_LABEL = 'Loading results…';
|
|
13
|
+
export function useLoadingAnnouncer({ isLoading, isOpen, optionsCount, labels, }) {
|
|
14
|
+
const [liveMessage, setLiveMessage] = useState('');
|
|
15
|
+
const timerRef = useRef(null);
|
|
16
|
+
const firedRef = useRef(false);
|
|
17
|
+
const isOpenRef = useRef(isOpen);
|
|
18
|
+
const prevIsLoadingRef = useRef(isLoading);
|
|
19
|
+
// Keep isOpenRef synchronised so the timer callback can read the latest
|
|
20
|
+
// value without stale-closure bugs (per R5).
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
isOpenRef.current = isOpen;
|
|
23
|
+
}, [isOpen]);
|
|
24
|
+
// When the dropdown closes, cancel any pending announcement (FR-006).
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
if (!isOpen) {
|
|
27
|
+
if (timerRef.current) {
|
|
28
|
+
clearTimeout(timerRef.current);
|
|
29
|
+
timerRef.current = null;
|
|
30
|
+
}
|
|
31
|
+
firedRef.current = false;
|
|
32
|
+
setLiveMessage('');
|
|
33
|
+
}
|
|
34
|
+
}, [isOpen]);
|
|
35
|
+
// Observe isLoading transitions. Rising edge arms the 1s timer; falling
|
|
36
|
+
// edge clears the timer and (when dropdown still open) writes the
|
|
37
|
+
// results-count message for non-empty resolves.
|
|
38
|
+
useEffect(() => {
|
|
39
|
+
const prev = prevIsLoadingRef.current;
|
|
40
|
+
prevIsLoadingRef.current = isLoading;
|
|
41
|
+
if (!prev && isLoading) {
|
|
42
|
+
// Rising edge: start the 1s timer (per R5).
|
|
43
|
+
if (!timerRef.current && !firedRef.current) {
|
|
44
|
+
timerRef.current = setTimeout(() => {
|
|
45
|
+
timerRef.current = null;
|
|
46
|
+
if (!isOpenRef.current)
|
|
47
|
+
return; // Closed during fetch — suppress (FR-006).
|
|
48
|
+
if (firedRef.current)
|
|
49
|
+
return;
|
|
50
|
+
firedRef.current = true;
|
|
51
|
+
setLiveMessage(labels.loadingLabel ?? DEFAULT_LOADING_LABEL);
|
|
52
|
+
}, LOADING_ANNOUNCEMENT_DELAY_MS);
|
|
53
|
+
}
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
if (prev && !isLoading) {
|
|
57
|
+
// Falling edge: clear timer, reset fired-flag, announce results.
|
|
58
|
+
if (timerRef.current) {
|
|
59
|
+
clearTimeout(timerRef.current);
|
|
60
|
+
timerRef.current = null;
|
|
61
|
+
}
|
|
62
|
+
firedRef.current = false;
|
|
63
|
+
if (!isOpenRef.current) {
|
|
64
|
+
setLiveMessage('');
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
if (optionsCount > 0) {
|
|
68
|
+
// Non-empty resolve: announce results count on EVERY resolve
|
|
69
|
+
// (no cache-hit suppression, per Q4 / I-A04).
|
|
70
|
+
setLiveMessage(resolveResultsCountLabel(labels.resultsCountLabel, optionsCount));
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
// Empty resolve: clear any stale loading message. No live-region
|
|
74
|
+
// "No results" announcement — the in-listbox element conveys it
|
|
75
|
+
// (per Q2 / I-A05).
|
|
76
|
+
setLiveMessage('');
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}, [isLoading, optionsCount, labels.loadingLabel, labels.resultsCountLabel]);
|
|
80
|
+
// Cleanup on unmount.
|
|
81
|
+
useEffect(() => {
|
|
82
|
+
return () => {
|
|
83
|
+
if (timerRef.current) {
|
|
84
|
+
clearTimeout(timerRef.current);
|
|
85
|
+
timerRef.current = null;
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
}, []);
|
|
89
|
+
// WEB-4815 / FR-002 / FR-006 / I-A08: aria-busy is meaningful only while
|
|
90
|
+
// the listbox is open (the only time AT can observe it). Gating isBusy
|
|
91
|
+
// on isOpen also ensures no stuck aria-busy="true" after dropdown close
|
|
92
|
+
// during a still-in-flight fetch.
|
|
93
|
+
return { liveMessage, isBusy: isLoading && isOpen };
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* WEB-4815 / R1: exposes the i18next-based fallback for callers that need
|
|
97
|
+
* to resolve the NoResults text when the consumer has not supplied
|
|
98
|
+
* `noResultsLabel`. Kept here so the i18next import lives next to its only
|
|
99
|
+
* remaining consumer and the dependency can be removed with a single file
|
|
100
|
+
* change in the future cleanup ticket.
|
|
101
|
+
*/
|
|
102
|
+
export function resolveNoResultsLabel(noResultsLabel) {
|
|
103
|
+
if (typeof noResultsLabel === 'string' && noResultsLabel.length > 0)
|
|
104
|
+
return noResultsLabel;
|
|
105
|
+
return i18next.t('translations:NO_RESULTS');
|
|
106
|
+
}
|
|
9
107
|
//# sourceMappingURL=BKJComboBoxAsync.context.hooks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJComboBoxAsync.context.hooks.js","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BKJComboBoxAsync.context.hooks.js","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,7 @@ import { createContext, useCallback, useContext, useEffect, useMemo, useRef } fr
|
|
|
4
4
|
import { useVirtual } from 'react-virtual';
|
|
5
5
|
import { isNumber } from '../../../common.types.js';
|
|
6
6
|
import { itemToString } from '../BKJComboBoxAsync.utils.js';
|
|
7
|
-
import { useBKJComboBoxAsyncContextHooks } from './BKJComboBoxAsync.context.hooks.js';
|
|
8
|
-
import i18next from 'i18next';
|
|
7
|
+
import { resolveNoResultsLabel, useBKJComboBoxAsyncContextHooks, useLoadingAnnouncer, } from './BKJComboBoxAsync.context.hooks.js';
|
|
9
8
|
const loadElement = (name) => ({
|
|
10
9
|
type: 'Loader',
|
|
11
10
|
id: 'Loader',
|
|
@@ -15,17 +14,23 @@ const loadElement = (name) => ({
|
|
|
15
14
|
disabled: true,
|
|
16
15
|
label: 'Loader',
|
|
17
16
|
});
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
17
|
+
// WEB-4815 / R1: noResultsLabel overrides the existing i18next fallback
|
|
18
|
+
// when provided; when undefined, i18next.t('translations:NO_RESULTS') is
|
|
19
|
+
// used unchanged so French-locale consumers retain their translated text.
|
|
20
|
+
const noResultsElement = (name, noResultsLabel) => {
|
|
21
|
+
const text = resolveNoResultsLabel(noResultsLabel);
|
|
22
|
+
return {
|
|
23
|
+
type: 'NoResults',
|
|
24
|
+
id: 'No Results',
|
|
25
|
+
value: text,
|
|
26
|
+
key: 'No Results',
|
|
27
|
+
name,
|
|
28
|
+
disabled: true,
|
|
29
|
+
label: text,
|
|
30
|
+
};
|
|
31
|
+
};
|
|
27
32
|
export const BKJComboBoxAsyncContext = createContext({});
|
|
28
|
-
export const BKJComboBoxAsyncProvider = ({ icon, type, name, value, label, error, action, variant, options: __options__ = [], context, disabled, onChange, children, required, searchKey, placeholder, searchValue, onSearchChange, portalTargetElement, subLabelPosition, }) => {
|
|
33
|
+
export const BKJComboBoxAsyncProvider = ({ icon, type, name, value, label, error, action, variant, options: __options__ = [], context, disabled, onChange, children, required, searchKey, placeholder, searchValue, onSearchChange, portalTargetElement, subLabelPosition, loadingLabel, resultsCountLabel, noResultsLabel, }) => {
|
|
29
34
|
const { pageInfo, isLoading } = useContext(context);
|
|
30
35
|
const hasNextPage = pageInfo?.hasNextPage;
|
|
31
36
|
const [{ anchorElement, dropdownElement }, { setAnchorElement, setDropdownElement }] = useBKJComboBoxAsyncContextHooks();
|
|
@@ -35,11 +40,11 @@ export const BKJComboBoxAsyncProvider = ({ icon, type, name, value, label, error
|
|
|
35
40
|
if (hasNextPage || isLoading)
|
|
36
41
|
__o__ = __o__.concat(loadElement(name));
|
|
37
42
|
if (__o__.length === 0)
|
|
38
|
-
__o__ = [noResultsElement(name)].concat(__o__);
|
|
43
|
+
__o__ = [noResultsElement(name, noResultsLabel)].concat(__o__);
|
|
39
44
|
return __o__.map((opts, index) => {
|
|
40
45
|
return { ...opts, index };
|
|
41
46
|
});
|
|
42
|
-
}, [__options__, hasNextPage, isLoading, name]);
|
|
47
|
+
}, [__options__, hasNextPage, isLoading, name, noResultsLabel]);
|
|
43
48
|
const parentRef = useRef(null);
|
|
44
49
|
const rowVirtualizer = useVirtual({
|
|
45
50
|
size: options.length,
|
|
@@ -51,19 +56,44 @@ export const BKJComboBoxAsyncProvider = ({ icon, type, name, value, label, error
|
|
|
51
56
|
itemToString,
|
|
52
57
|
items: options,
|
|
53
58
|
initialSelectedItem: value,
|
|
59
|
+
// WEB-4815 / T031 / FR-005b (inherited from WEB-4811 FR-005b): on every
|
|
60
|
+
// open transition, highlight the selected option (if any) or the first
|
|
61
|
+
// real option (skipping Group / Loader / NoResults). Mirrors WEB-4811's
|
|
62
|
+
// stateReducer pattern in BKJComboBox.context.tsx.
|
|
63
|
+
stateReducer: (state, actionAndChanges) => {
|
|
64
|
+
const { changes } = actionAndChanges;
|
|
65
|
+
const isOpening = !state.isOpen && changes.isOpen === true;
|
|
66
|
+
if (isOpening && (changes.highlightedIndex ?? -1) < 0) {
|
|
67
|
+
const activeSelectedItem = changes.selectedItem ?? state.selectedItem;
|
|
68
|
+
const selectedIdx = activeSelectedItem
|
|
69
|
+
? options.findIndex((opt) => String(opt.value) === String(activeSelectedItem.value))
|
|
70
|
+
: -1;
|
|
71
|
+
const firstRealIdx = options.findIndex((opt) => !['Group', 'Loader', 'NoResults'].includes(opt.type));
|
|
72
|
+
const desired = selectedIdx >= 0 ? selectedIdx : firstRealIdx;
|
|
73
|
+
return { ...changes, highlightedIndex: desired };
|
|
74
|
+
}
|
|
75
|
+
return changes;
|
|
76
|
+
},
|
|
54
77
|
scrollIntoView: () => void 0,
|
|
55
78
|
onHighlightedIndexChange: ({ highlightedIndex: __i__ = 0, type }) => {
|
|
56
|
-
|
|
79
|
+
// WEB-4815 / T025 / I-A06: walk past Group/Loader/NoResults rows
|
|
80
|
+
// in the arrow direction. If no real option is reachable (e.g.,
|
|
81
|
+
// the listbox contains only NoResults), set INDEX = -1 so
|
|
82
|
+
// aria-activedescendant does not reference a non-selectable row.
|
|
83
|
+
// Previous implementation wrapped to 0, which landed on the
|
|
84
|
+
// NoResults row when it was the only entry — violated I-A06.
|
|
85
|
+
const SKIP_TYPES = ['Group', 'Loader', 'NoResults'];
|
|
57
86
|
let INDEX = __i__;
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
87
|
+
const highlightedItem = options[__i__];
|
|
88
|
+
if (highlightedItem && SKIP_TYPES.includes(highlightedItem.type)) {
|
|
89
|
+
const direction = type === '__input_keydown_arrow_up__' ? -1 : 1;
|
|
90
|
+
let probe = __i__ + direction;
|
|
91
|
+
while (probe >= 0 &&
|
|
92
|
+
probe < options.length &&
|
|
93
|
+
SKIP_TYPES.includes(options[probe].type)) {
|
|
94
|
+
probe += direction;
|
|
66
95
|
}
|
|
96
|
+
INDEX = probe >= 0 && probe < options.length ? probe : -1;
|
|
67
97
|
}
|
|
68
98
|
if (isNumber(INDEX) && INDEX >= 0) {
|
|
69
99
|
rowVirtualizer.scrollToIndex(INDEX);
|
|
@@ -114,12 +144,49 @@ export const BKJComboBoxAsyncProvider = ({ icon, type, name, value, label, error
|
|
|
114
144
|
}
|
|
115
145
|
},
|
|
116
146
|
});
|
|
147
|
+
// WEB-4815 / T011 / FR-002 / FR-003 / FR-004: derives aria-busy and the
|
|
148
|
+
// live-region message for loading / results-count announcements.
|
|
149
|
+
// optionsCount reads from __options__ (real consumer data) not from the
|
|
150
|
+
// memoised options array which contains synthetic Loader / NoResults rows.
|
|
151
|
+
const { liveMessage, isBusy } = useLoadingAnnouncer({
|
|
152
|
+
isLoading: !!isLoading,
|
|
153
|
+
isOpen,
|
|
154
|
+
optionsCount: __options__.length,
|
|
155
|
+
labels: { loadingLabel, resultsCountLabel },
|
|
156
|
+
});
|
|
117
157
|
const handleInputFocus = useCallback(openMenu, [openMenu]);
|
|
158
|
+
// WEB-4815 / T032 / FR-005 (inherited): audit outcome.
|
|
159
|
+
//
|
|
160
|
+
// Pre-WEB-4815, this handler blurred the input on Escape+empty-search and
|
|
161
|
+
// Enter+empty-search, causing Downshift's InputBlur to commit the
|
|
162
|
+
// highlighted item. That silent commit was harmless before because
|
|
163
|
+
// highlightedIndex was -1 on open (no highlight to commit). Now that the
|
|
164
|
+
// WEB-4815 stateReducer implements the initial-highlight rule (FR-005b),
|
|
165
|
+
// the first option is highlighted on open, and the blur-on-Escape
|
|
166
|
+
// becomes a latent bug: pressing Escape commits the highlighted option
|
|
167
|
+
// (violates FR-005 — Escape must not change selection).
|
|
168
|
+
//
|
|
169
|
+
// Resolution: keep the async search-clearing UX (first Escape clears the
|
|
170
|
+
// search, second closes — product contract), but:
|
|
171
|
+
// - Escape path: do NOT blur. closeMenu() alone keeps focus on the
|
|
172
|
+
// input (WAI-ARIA APG editable combobox pattern) and prevents the
|
|
173
|
+
// spurious blur-commit.
|
|
174
|
+
// - Enter path: keep blur() — Enter SHOULD commit the highlighted
|
|
175
|
+
// option, and Downshift's InputBlur-commit is how that happens.
|
|
118
176
|
const handleInputKeyDown = useCallback(({ key, nativeEvent }) => {
|
|
119
177
|
switch (action) {
|
|
120
178
|
case 'OpenToggle':
|
|
121
179
|
switch (key) {
|
|
122
180
|
case 'Escape':
|
|
181
|
+
nativeEvent.preventDownshiftDefault = true;
|
|
182
|
+
if (isOpen && searchValue !== '')
|
|
183
|
+
onSearchChange({ target: { value: '', name: searchKey } });
|
|
184
|
+
if (isOpen && searchValue === '') {
|
|
185
|
+
closeMenu();
|
|
186
|
+
// No blur — WEB-4815 / FR-005: Escape must not commit
|
|
187
|
+
// the highlighted option.
|
|
188
|
+
}
|
|
189
|
+
break;
|
|
123
190
|
case 'Enter':
|
|
124
191
|
nativeEvent.preventDownshiftDefault = true;
|
|
125
192
|
if (isOpen && searchValue !== '')
|
|
@@ -136,11 +203,22 @@ export const BKJComboBoxAsyncProvider = ({ icon, type, name, value, label, error
|
|
|
136
203
|
}
|
|
137
204
|
}
|
|
138
205
|
}, [action, anchorElement, closeMenu, isOpen, onSearchChange, searchKey, searchValue]);
|
|
206
|
+
// WEB-4815: filter-auto-highlight effect. Previously this set
|
|
207
|
+
// highlightedIndex=0 when searchValue was non-empty and index was -1,
|
|
208
|
+
// which forced the NoResults row to be highlighted when it was the
|
|
209
|
+
// only entry (violates I-A06 — feedback loop with onHighlightedIndexChange).
|
|
210
|
+
// Now we only auto-highlight the FIRST REAL option's index, or leave
|
|
211
|
+
// highlightedIndex at -1 if the options contain no real selectable rows.
|
|
139
212
|
useEffect(() => {
|
|
140
|
-
if (options.length === 0)
|
|
213
|
+
if (options.length === 0) {
|
|
141
214
|
setHighlightedIndex(-1);
|
|
142
|
-
|
|
143
|
-
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
if (searchValue !== '' && highlightedIndex === -1) {
|
|
218
|
+
const firstRealIdx = options.findIndex((opt) => !['Group', 'Loader', 'NoResults'].includes(opt.type));
|
|
219
|
+
if (firstRealIdx >= 0)
|
|
220
|
+
setHighlightedIndex(firstRealIdx);
|
|
221
|
+
}
|
|
144
222
|
}, [highlightedIndex, options, searchValue, setHighlightedIndex]);
|
|
145
223
|
return (_jsx(BKJComboBoxAsyncContext.Provider, { value: {
|
|
146
224
|
type,
|
|
@@ -185,6 +263,9 @@ export const BKJComboBoxAsyncProvider = ({ icon, type, name, value, label, error
|
|
|
185
263
|
onInputKeyDown: handleInputKeyDown,
|
|
186
264
|
leftIconProps: icon ? { iconName: icon } : undefined,
|
|
187
265
|
subLabelPosition,
|
|
266
|
+
liveMessage,
|
|
267
|
+
isBusy,
|
|
268
|
+
noResultsLabel,
|
|
188
269
|
}, children: children }));
|
|
189
270
|
};
|
|
190
271
|
export const useBKJComboBoxAsyncContext = () => useContext(BKJComboBoxAsyncContext);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJComboBoxAsync.context.js","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"BKJComboBoxAsync.context.js","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsync.context.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJComboBoxAsyncInput.d.ts","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsyncInput.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAQnE,eAAO,MAAM,qBAAqB;mBAGf,IAAI,GAAG,KAAK;gBACf,MAAM;gBACN,sBAAsB,CAAC,WAAW,CAAC;0BACzB,OAAO;
|
|
1
|
+
{"version":3,"file":"BKJComboBoxAsyncInput.d.ts","sourceRoot":"","sources":["../../../../src/components/BKJComboBoxAsync/src/BKJComboBoxAsyncInput.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAQnE,eAAO,MAAM,qBAAqB;mBAGf,IAAI,GAAG,KAAK;gBACf,MAAM;gBACN,sBAAsB,CAAC,WAAW,CAAC;0BACzB,OAAO;oDAsH/B,CAAC"}
|