@k-int/stripes-kint-components 5.31.0 → 5.31.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/es/lib/ButtonTypedown/ButtonTypedown.js +4 -3
  3. package/es/lib/SearchField/SearchField.js +4 -3
  4. package/es/lib/Typedown/Typedown.js +4 -2
  5. package/es/lib/hooks/typedownHooks/useTypedown.js +130 -90
  6. package/package.json +1 -1
  7. package/src/artifacts/coverage-jest/ActionList/ActionList.js.html +1 -1
  8. package/src/artifacts/coverage-jest/ActionList/ActionListFieldArray.js.html +1 -1
  9. package/src/artifacts/coverage-jest/ActionList/index.html +1 -1
  10. package/src/artifacts/coverage-jest/ActionList/index.js.html +1 -1
  11. package/src/artifacts/coverage-jest/ButtonTypedown/ButtonTypedown.js.html +8 -5
  12. package/src/artifacts/coverage-jest/ButtonTypedown/index.html +1 -1
  13. package/src/artifacts/coverage-jest/ButtonTypedown/index.js.html +1 -1
  14. package/src/artifacts/coverage-jest/ComboButton/ComboButton.js.html +1 -1
  15. package/src/artifacts/coverage-jest/ComboButton/index.html +1 -1
  16. package/src/artifacts/coverage-jest/ComboButton/index.js.html +1 -1
  17. package/src/artifacts/coverage-jest/CustomProperties/Config/CustomPropertiesLookup.js.html +1 -1
  18. package/src/artifacts/coverage-jest/CustomProperties/Config/CustomPropertiesSettings.js.html +1 -1
  19. package/src/artifacts/coverage-jest/CustomProperties/Config/CustomPropertyForm.js.html +1 -1
  20. package/src/artifacts/coverage-jest/CustomProperties/Config/CustomPropertyView.js.html +1 -1
  21. package/src/artifacts/coverage-jest/CustomProperties/Config/index.html +1 -1
  22. package/src/artifacts/coverage-jest/CustomProperties/Config/index.js.html +1 -1
  23. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertiesEdit.js.html +1 -1
  24. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertiesEditCtx.js.html +1 -1
  25. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertiesListField.js.html +1 -1
  26. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertyField.js.html +1 -1
  27. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertyFormCard.js.html +1 -1
  28. package/src/artifacts/coverage-jest/CustomProperties/Edit/index.html +1 -1
  29. package/src/artifacts/coverage-jest/CustomProperties/Edit/index.js.html +1 -1
  30. package/src/artifacts/coverage-jest/CustomProperties/Edit/testResources.js.html +1 -1
  31. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesFilter.js.html +1 -1
  32. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesFilterField.js.html +1 -1
  33. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesFilterFieldArray.js.html +1 -1
  34. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesFilterForm.js.html +1 -1
  35. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesRule.js.html +1 -1
  36. package/src/artifacts/coverage-jest/CustomProperties/Filter/index.html +1 -1
  37. package/src/artifacts/coverage-jest/CustomProperties/Filter/index.js.html +1 -1
  38. package/src/artifacts/coverage-jest/CustomProperties/Filter/testResources.js.html +1 -1
  39. package/src/artifacts/coverage-jest/CustomProperties/Filter/useOperators.js.html +1 -1
  40. package/src/artifacts/coverage-jest/CustomProperties/Filter/useParseActiveFilterStrings.js.html +1 -1
  41. package/src/artifacts/coverage-jest/CustomProperties/Filter/useValueProps.js.html +1 -1
  42. package/src/artifacts/coverage-jest/CustomProperties/View/CustomPropertiesView.js.html +1 -1
  43. package/src/artifacts/coverage-jest/CustomProperties/View/CustomPropertiesViewCtx.js.html +1 -1
  44. package/src/artifacts/coverage-jest/CustomProperties/View/CustomPropertyCard.js.html +1 -1
  45. package/src/artifacts/coverage-jest/CustomProperties/View/index.html +1 -1
  46. package/src/artifacts/coverage-jest/CustomProperties/View/index.js.html +1 -1
  47. package/src/artifacts/coverage-jest/CustomProperties/View/testResources.js.html +1 -1
  48. package/src/artifacts/coverage-jest/CustomProperties/index.html +1 -1
  49. package/src/artifacts/coverage-jest/CustomProperties/index.js.html +1 -1
  50. package/src/artifacts/coverage-jest/CycleButton/CycleButton.js.html +1 -1
  51. package/src/artifacts/coverage-jest/CycleButton/index.html +1 -1
  52. package/src/artifacts/coverage-jest/CycleButton/index.js.html +1 -1
  53. package/src/artifacts/coverage-jest/FieldLabel/FieldLabel.js.html +1 -1
  54. package/src/artifacts/coverage-jest/FieldLabel/index.html +1 -1
  55. package/src/artifacts/coverage-jest/FieldLabel/index.js.html +1 -1
  56. package/src/artifacts/coverage-jest/FormModal/FormModal.js.html +1 -1
  57. package/src/artifacts/coverage-jest/FormModal/index.html +1 -1
  58. package/src/artifacts/coverage-jest/FormModal/index.js.html +1 -1
  59. package/src/artifacts/coverage-jest/FormattedKintMessage/FormattedKintMessage.js.html +1 -1
  60. package/src/artifacts/coverage-jest/FormattedKintMessage/index.html +1 -1
  61. package/src/artifacts/coverage-jest/FormattedKintMessage/index.js.html +1 -1
  62. package/src/artifacts/coverage-jest/IconSelect/IconSelect.js.html +1 -1
  63. package/src/artifacts/coverage-jest/IconSelect/index.html +1 -1
  64. package/src/artifacts/coverage-jest/IconSelect/index.js.html +1 -1
  65. package/src/artifacts/coverage-jest/NoResultsMessage/NoResultsMessage.js.html +1 -1
  66. package/src/artifacts/coverage-jest/NoResultsMessage/index.html +1 -1
  67. package/src/artifacts/coverage-jest/NoResultsMessage/index.js.html +1 -1
  68. package/src/artifacts/coverage-jest/NumberField/NumberField.js.html +1 -1
  69. package/src/artifacts/coverage-jest/NumberField/index.html +1 -1
  70. package/src/artifacts/coverage-jest/NumberField/index.js.html +1 -1
  71. package/src/artifacts/coverage-jest/QueryTypedown/QueryTypedown.js.html +1 -1
  72. package/src/artifacts/coverage-jest/QueryTypedown/index.html +1 -1
  73. package/src/artifacts/coverage-jest/QueryTypedown/index.js.html +1 -1
  74. package/src/artifacts/coverage-jest/RefdataButtons/RefdataButtons.js.html +1 -1
  75. package/src/artifacts/coverage-jest/RefdataButtons/index.html +1 -1
  76. package/src/artifacts/coverage-jest/RefdataButtons/index.js.html +1 -1
  77. package/src/artifacts/coverage-jest/ResponsiveButtonGroup/ResponsiveButtonGroup.js.html +1 -1
  78. package/src/artifacts/coverage-jest/ResponsiveButtonGroup/index.html +1 -1
  79. package/src/artifacts/coverage-jest/ResponsiveButtonGroup/index.js.html +1 -1
  80. package/src/artifacts/coverage-jest/ResponsiveButtonGroup/useResponsiveButtonGroupSizing.js.html +1 -1
  81. package/src/artifacts/coverage-jest/RichSelect/RichSelect.js.html +1 -1
  82. package/src/artifacts/coverage-jest/RichSelect/index.html +1 -1
  83. package/src/artifacts/coverage-jest/RichSelect/index.js.html +1 -1
  84. package/src/artifacts/coverage-jest/RichSelect/useSelectedOption.js.html +1 -1
  85. package/src/artifacts/coverage-jest/SASQLookupComponent/SASQLookupComponent.js.html +1 -1
  86. package/src/artifacts/coverage-jest/SASQLookupComponent/TableBody/TableBody.js.html +1 -1
  87. package/src/artifacts/coverage-jest/SASQLookupComponent/TableBody/index.html +1 -1
  88. package/src/artifacts/coverage-jest/SASQLookupComponent/TableBody/index.js.html +1 -1
  89. package/src/artifacts/coverage-jest/SASQLookupComponent/index.html +1 -1
  90. package/src/artifacts/coverage-jest/SASQLookupComponent/index.js.html +1 -1
  91. package/src/artifacts/coverage-jest/SASQRoute/SASQRoute.js.html +1 -1
  92. package/src/artifacts/coverage-jest/SASQRoute/index.html +1 -1
  93. package/src/artifacts/coverage-jest/SASQRoute/index.js.html +1 -1
  94. package/src/artifacts/coverage-jest/SASQViewComponent/SASQViewComponent.js.html +1 -1
  95. package/src/artifacts/coverage-jest/SASQViewComponent/index.html +1 -1
  96. package/src/artifacts/coverage-jest/SASQViewComponent/index.js.html +1 -1
  97. package/src/artifacts/coverage-jest/SearchField/SearchField.js.html +8 -5
  98. package/src/artifacts/coverage-jest/SearchField/index.html +1 -1
  99. package/src/artifacts/coverage-jest/SearchField/index.js.html +1 -1
  100. package/src/artifacts/coverage-jest/SearchKeyControl/SearchKeyControl.js.html +1 -1
  101. package/src/artifacts/coverage-jest/SearchKeyControl/index.html +1 -1
  102. package/src/artifacts/coverage-jest/SearchKeyControl/index.js.html +1 -1
  103. package/src/artifacts/coverage-jest/Settings/EditableRefdataCategoryList/EditableRefdataCategoryList.js.html +1 -1
  104. package/src/artifacts/coverage-jest/Settings/EditableRefdataCategoryList/index.html +1 -1
  105. package/src/artifacts/coverage-jest/Settings/EditableRefdataCategoryList/index.js.html +1 -1
  106. package/src/artifacts/coverage-jest/Settings/EditableRefdataList/EditableRefdataList.js.html +1 -1
  107. package/src/artifacts/coverage-jest/Settings/EditableRefdataList/index.html +1 -1
  108. package/src/artifacts/coverage-jest/Settings/EditableRefdataList/index.js.html +1 -1
  109. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/EditableSettingsList.js.html +1 -1
  110. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/EditableSettingsListFieldArray/EditableSettingsListFieldArray.js.html +1 -1
  111. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/EditableSettingsListFieldArray/index.html +1 -1
  112. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/EditableSettingsListFieldArray/index.js.html +1 -1
  113. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/EditSettingValue/EditSettingValue.js.html +1 -1
  114. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/EditSettingValue/index.html +1 -1
  115. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/EditSettingValue/index.js.html +1 -1
  116. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/RenderSettingValue/RenderSettingValue.js.html +1 -1
  117. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/RenderSettingValue/index.html +1 -1
  118. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/RenderSettingValue/index.js.html +1 -1
  119. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/SettingField.js.html +1 -1
  120. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/index.html +1 -1
  121. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/index.js.html +1 -1
  122. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/index.html +1 -1
  123. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/index.js.html +1 -1
  124. package/src/artifacts/coverage-jest/Settings/RefdataCategoriesSettings/RefdataCategoriesSettings.js.html +1 -1
  125. package/src/artifacts/coverage-jest/Settings/RefdataCategoriesSettings/index.html +1 -1
  126. package/src/artifacts/coverage-jest/Settings/RefdataCategoriesSettings/index.js.html +1 -1
  127. package/src/artifacts/coverage-jest/Settings/SettingPage/SettingPage.js.html +1 -1
  128. package/src/artifacts/coverage-jest/Settings/SettingPage/SettingPagePane/SettingPagePane.js.html +1 -1
  129. package/src/artifacts/coverage-jest/Settings/SettingPage/SettingPagePane/index.html +1 -1
  130. package/src/artifacts/coverage-jest/Settings/SettingPage/SettingPagePane/index.js.html +1 -1
  131. package/src/artifacts/coverage-jest/Settings/SettingPage/index.html +1 -1
  132. package/src/artifacts/coverage-jest/Settings/SettingPage/index.js.html +1 -1
  133. package/src/artifacts/coverage-jest/Settings/SettingsFormContainer/SettingsFormContainer.js.html +1 -1
  134. package/src/artifacts/coverage-jest/Settings/SettingsFormContainer/index.html +1 -1
  135. package/src/artifacts/coverage-jest/Settings/SettingsFormContainer/index.js.html +1 -1
  136. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/StaticSettingsField.js.html +1 -1
  137. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/StaticSettingsFieldComponent/StaticSettingsFieldComponent.js.html +1 -1
  138. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/StaticSettingsFieldComponent/index.html +1 -1
  139. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/StaticSettingsFieldComponent/index.js.html +1 -1
  140. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/index.html +1 -1
  141. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/index.js.html +1 -1
  142. package/src/artifacts/coverage-jest/Settings/constants/index.html +1 -1
  143. package/src/artifacts/coverage-jest/Settings/constants/index.js.html +1 -1
  144. package/src/artifacts/coverage-jest/Settings/constants/queryKeys.js.html +1 -1
  145. package/src/artifacts/coverage-jest/Settings/contexts/SettingsContext.js.html +1 -1
  146. package/src/artifacts/coverage-jest/Settings/contexts/index.html +1 -1
  147. package/src/artifacts/coverage-jest/Settings/contexts/index.js.html +1 -1
  148. package/src/artifacts/coverage-jest/Settings/hooks/index.html +1 -1
  149. package/src/artifacts/coverage-jest/Settings/hooks/index.js.html +1 -1
  150. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/index.html +1 -1
  151. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/index.js.html +1 -1
  152. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingCallout/index.html +1 -1
  153. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingCallout/index.js.html +1 -1
  154. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingCallout/useSettingCallout.js.html +1 -1
  155. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/index.html +1 -1
  156. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/index.js.html +1 -1
  157. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/useSettingsSectionInitalValues.js.html +1 -1
  158. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useStaticSettingsSection.js.html +1 -1
  159. package/src/artifacts/coverage-jest/Settings/hooks/useAppSettings/index.html +1 -1
  160. package/src/artifacts/coverage-jest/Settings/hooks/useAppSettings/index.js.html +1 -1
  161. package/src/artifacts/coverage-jest/Settings/hooks/useAppSettings/useAppSettings.js.html +1 -1
  162. package/src/artifacts/coverage-jest/Settings/hooks/useSettingSection/index.html +1 -1
  163. package/src/artifacts/coverage-jest/Settings/hooks/useSettingSection/index.js.html +1 -1
  164. package/src/artifacts/coverage-jest/Settings/hooks/useSettingSection/useSettingSection.js.html +1 -1
  165. package/src/artifacts/coverage-jest/Settings/hooks/useSettings/index.html +1 -1
  166. package/src/artifacts/coverage-jest/Settings/hooks/useSettings/index.js.html +1 -1
  167. package/src/artifacts/coverage-jest/Settings/hooks/useSettings/useSettings.js.html +1 -1
  168. package/src/artifacts/coverage-jest/Settings/index.html +1 -1
  169. package/src/artifacts/coverage-jest/Settings/index.js.html +1 -1
  170. package/src/artifacts/coverage-jest/Tags/Tags.js.html +1 -1
  171. package/src/artifacts/coverage-jest/Tags/hooks/index.html +1 -1
  172. package/src/artifacts/coverage-jest/Tags/hooks/index.js.html +1 -1
  173. package/src/artifacts/coverage-jest/Tags/hooks/useTags.js.html +1 -1
  174. package/src/artifacts/coverage-jest/Tags/hooks/useTagsEnabled.js.html +1 -1
  175. package/src/artifacts/coverage-jest/Tags/index.html +1 -1
  176. package/src/artifacts/coverage-jest/Tags/index.js.html +1 -1
  177. package/src/artifacts/coverage-jest/Tags/tagsConfig.js.html +1 -1
  178. package/src/artifacts/coverage-jest/Typedown/Typedown.js.html +17 -8
  179. package/src/artifacts/coverage-jest/Typedown/index.html +10 -10
  180. package/src/artifacts/coverage-jest/Typedown/index.js.html +1 -1
  181. package/src/artifacts/coverage-jest/cobertura-coverage.xml +151 -99
  182. package/src/artifacts/coverage-jest/constants/comparators.js.html +1 -1
  183. package/src/artifacts/coverage-jest/constants/customProperties.js.html +1 -1
  184. package/src/artifacts/coverage-jest/constants/endpoints.js.html +1 -1
  185. package/src/artifacts/coverage-jest/constants/eventCodes.js.html +1 -1
  186. package/src/artifacts/coverage-jest/constants/index.html +1 -1
  187. package/src/artifacts/coverage-jest/constants/pagination.js.html +1 -1
  188. package/src/artifacts/coverage-jest/hooks/index.html +1 -1
  189. package/src/artifacts/coverage-jest/hooks/index.js.html +1 -1
  190. package/src/artifacts/coverage-jest/hooks/intlHooks/index.html +1 -1
  191. package/src/artifacts/coverage-jest/hooks/intlHooks/index.js.html +1 -1
  192. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKey/index.html +1 -1
  193. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKey/index.js.html +1 -1
  194. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKey/useIntlKey.js.html +1 -1
  195. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKeyStore/index.html +1 -1
  196. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKeyStore/index.js.html +1 -1
  197. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKeyStore/useIntlKeyStore.js.html +1 -1
  198. package/src/artifacts/coverage-jest/hooks/intlHooks/useKintIntl/index.html +1 -1
  199. package/src/artifacts/coverage-jest/hooks/intlHooks/useKintIntl/index.js.html +1 -1
  200. package/src/artifacts/coverage-jest/hooks/intlHooks/useKintIntl/useKintIntl.js.html +1 -1
  201. package/src/artifacts/coverage-jest/hooks/typedownHooks/index.html +14 -14
  202. package/src/artifacts/coverage-jest/hooks/typedownHooks/index.js.html +1 -1
  203. package/src/artifacts/coverage-jest/hooks/typedownHooks/useTypedown.js.html +266 -107
  204. package/src/artifacts/coverage-jest/hooks/typedownHooks/useTypedownData.js.html +1 -1
  205. package/src/artifacts/coverage-jest/hooks/typedownHooks/useTypedownToggle.js.html +1 -1
  206. package/src/artifacts/coverage-jest/hooks/useActionListRef.js.html +1 -1
  207. package/src/artifacts/coverage-jest/hooks/useActiveElement.js.html +1 -1
  208. package/src/artifacts/coverage-jest/hooks/useCustomProperties.js.html +1 -1
  209. package/src/artifacts/coverage-jest/hooks/useHelperApp.js.html +1 -1
  210. package/src/artifacts/coverage-jest/hooks/useInvalidateRefdata/index.html +1 -1
  211. package/src/artifacts/coverage-jest/hooks/useInvalidateRefdata/index.js.html +1 -1
  212. package/src/artifacts/coverage-jest/hooks/useInvalidateRefdata/useInvalidateRefdata.js.html +1 -1
  213. package/src/artifacts/coverage-jest/hooks/useKiwtFieldArray.js.html +1 -1
  214. package/src/artifacts/coverage-jest/hooks/useKiwtSASQuery.js.html +1 -1
  215. package/src/artifacts/coverage-jest/hooks/useLocalPageStore.js.html +1 -1
  216. package/src/artifacts/coverage-jest/hooks/useLocalStorageState.js.html +1 -1
  217. package/src/artifacts/coverage-jest/hooks/useModConfigEntries.js.html +1 -1
  218. package/src/artifacts/coverage-jest/hooks/useMutateCustomProperties/index.html +1 -1
  219. package/src/artifacts/coverage-jest/hooks/useMutateCustomProperties/index.js.html +1 -1
  220. package/src/artifacts/coverage-jest/hooks/useMutateCustomProperties/useMutateCustomProperties.js.html +1 -1
  221. package/src/artifacts/coverage-jest/hooks/useMutateGeneric/index.html +1 -1
  222. package/src/artifacts/coverage-jest/hooks/useMutateGeneric/index.js.html +1 -1
  223. package/src/artifacts/coverage-jest/hooks/useMutateGeneric/useMutateGeneric.js.html +1 -1
  224. package/src/artifacts/coverage-jest/hooks/useMutateModConfigEntry.js.html +1 -1
  225. package/src/artifacts/coverage-jest/hooks/useMutateRefdataCategory/index.html +1 -1
  226. package/src/artifacts/coverage-jest/hooks/useMutateRefdataCategory/index.js.html +1 -1
  227. package/src/artifacts/coverage-jest/hooks/useMutateRefdataCategory/useMutateRefdataCategory.js.html +1 -1
  228. package/src/artifacts/coverage-jest/hooks/useMutateRefdataValue/index.html +1 -1
  229. package/src/artifacts/coverage-jest/hooks/useMutateRefdataValue/index.js.html +1 -1
  230. package/src/artifacts/coverage-jest/hooks/useMutateRefdataValue/useMutateRefdataValue.js.html +1 -1
  231. package/src/artifacts/coverage-jest/hooks/usePrevNextPagination.js.html +1 -1
  232. package/src/artifacts/coverage-jest/hooks/useQIndex.js.html +1 -1
  233. package/src/artifacts/coverage-jest/hooks/useRefdata.js.html +1 -1
  234. package/src/artifacts/coverage-jest/hooks/useSASQQueryMeta.js.html +1 -1
  235. package/src/artifacts/coverage-jest/hooks/useStandaloneSASQQueryParameter/index.html +1 -1
  236. package/src/artifacts/coverage-jest/hooks/useStandaloneSASQQueryParameter/index.js.html +1 -1
  237. package/src/artifacts/coverage-jest/hooks/useStandaloneSASQQueryParameter/useStandaloneSASQQueryParameter.js.html +1 -1
  238. package/src/artifacts/coverage-jest/hooks/useTemplates.js.html +1 -1
  239. package/src/artifacts/coverage-jest/index.html +22 -22
  240. package/src/artifacts/coverage-jest/utils/buildUrl.js.html +1 -1
  241. package/src/artifacts/coverage-jest/utils/filterParsers/deparseKiwtQueryFilters.js.html +1 -1
  242. package/src/artifacts/coverage-jest/utils/filterParsers/index.html +1 -1
  243. package/src/artifacts/coverage-jest/utils/filterParsers/index.js.html +1 -1
  244. package/src/artifacts/coverage-jest/utils/filterParsers/parseKiwtQueryFilters.js.html +1 -1
  245. package/src/artifacts/coverage-jest/utils/filterParsers/parseKiwtQueryGroups.js.html +1 -1
  246. package/src/artifacts/coverage-jest/utils/filterParsers/parseKiwtQueryString.js.html +1 -1
  247. package/src/artifacts/coverage-jest/utils/generateKiwtQuery.js.html +1 -1
  248. package/src/artifacts/coverage-jest/utils/generateKiwtQueryParams/generateKiwtQueryParams.js.html +1 -1
  249. package/src/artifacts/coverage-jest/utils/generateKiwtQueryParams/index.html +1 -1
  250. package/src/artifacts/coverage-jest/utils/generateKiwtQueryParams/index.js.html +1 -1
  251. package/src/artifacts/coverage-jest/utils/groupCustomPropertiesByCtx.js.html +1 -1
  252. package/src/artifacts/coverage-jest/utils/highlightString.js.html +1 -1
  253. package/src/artifacts/coverage-jest/utils/index.html +1 -1
  254. package/src/artifacts/coverage-jest/utils/index.js.html +1 -1
  255. package/src/artifacts/coverage-jest/utils/matchString.js.html +1 -1
  256. package/src/artifacts/coverage-jest/utils/modConfigEntriesQueryKey.js.html +1 -1
  257. package/src/artifacts/coverage-jest/utils/parseErrorResponse.js.html +1 -1
  258. package/src/artifacts/coverage-jest/utils/parseModConfigEntry.js.html +1 -1
  259. package/src/artifacts/coverage-jest/utils/refdataOptions.js.html +1 -1
  260. package/src/artifacts/coverage-jest/utils/refdataQueryKey/index.html +1 -1
  261. package/src/artifacts/coverage-jest/utils/refdataQueryKey/index.js.html +1 -1
  262. package/src/artifacts/coverage-jest/utils/refdataQueryKey/refdataQueryKey.js.html +1 -1
  263. package/src/artifacts/coverage-jest/utils/selectorSafe.js.html +1 -1
  264. package/src/artifacts/coverage-jest/utils/sortByLabel.js.html +1 -1
  265. package/src/artifacts/coverage-jest/utils/toCamelCase.js.html +1 -1
  266. package/src/artifacts/coverage-jest/utils/typedownQueryKey.js.html +1 -1
  267. package/src/artifacts/coverage-jest/validators/index.html +1 -1
  268. package/src/artifacts/coverage-jest/validators/index.js.html +1 -1
  269. package/src/artifacts/coverage-jest/validators/validators.js.html +1 -1
  270. package/src/lib/ButtonTypedown/ButtonTypedown.js +4 -3
  271. package/src/lib/SearchField/SearchField.js +4 -3
  272. package/src/lib/Typedown/Typedown.js +5 -2
  273. package/src/lib/hooks/typedownHooks/useTypedown.js +145 -92
@@ -116,7 +116,7 @@
116
116
  <div class='footer quiet pad2 space-top1 center small'>
117
117
  Code coverage generated by
118
118
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
- at 2025-12-12T16:39:50.848Z
119
+ at 2025-12-15T10:03:18.716Z
120
120
  </div>
121
121
  <script src="../../prettify.js"></script>
122
122
  <script>
@@ -73,7 +73,7 @@
73
73
  <div class='footer quiet pad2 space-top1 center small'>
74
74
  Code coverage generated by
75
75
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
76
- at 2025-12-12T16:39:50.848Z
76
+ at 2025-12-15T10:03:18.716Z
77
77
  </div>
78
78
  <script src="../../prettify.js"></script>
79
79
  <script>
@@ -97,7 +97,7 @@ export default refdataQueryKey;
97
97
  <div class='footer quiet pad2 space-top1 center small'>
98
98
  Code coverage generated by
99
99
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
100
- at 2025-12-12T16:39:50.848Z
100
+ at 2025-12-15T10:03:18.716Z
101
101
  </div>
102
102
  <script src="../../prettify.js"></script>
103
103
  <script>
@@ -130,7 +130,7 @@ export default selectorSafe;
130
130
  <div class='footer quiet pad2 space-top1 center small'>
131
131
  Code coverage generated by
132
132
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
133
- at 2025-12-12T16:39:50.848Z
133
+ at 2025-12-15T10:03:18.716Z
134
134
  </div>
135
135
  <script src="../prettify.js"></script>
136
136
  <script>
@@ -115,7 +115,7 @@ export default sortByLabel;
115
115
  <div class='footer quiet pad2 space-top1 center small'>
116
116
  Code coverage generated by
117
117
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
118
- at 2025-12-12T16:39:50.848Z
118
+ at 2025-12-15T10:03:18.716Z
119
119
  </div>
120
120
  <script src="../prettify.js"></script>
121
121
  <script>
@@ -112,7 +112,7 @@ export default toCamelCase;
112
112
  <div class='footer quiet pad2 space-top1 center small'>
113
113
  Code coverage generated by
114
114
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
115
- at 2025-12-12T16:39:50.848Z
115
+ at 2025-12-15T10:03:18.716Z
116
116
  </div>
117
117
  <script src="../prettify.js"></script>
118
118
  <script>
@@ -97,7 +97,7 @@ export default typedownQueryKey;
97
97
  <div class='footer quiet pad2 space-top1 center small'>
98
98
  Code coverage generated by
99
99
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
100
- at 2025-12-12T16:39:50.848Z
100
+ at 2025-12-15T10:03:18.716Z
101
101
  </div>
102
102
  <script src="../prettify.js"></script>
103
103
  <script>
@@ -116,7 +116,7 @@
116
116
  <div class='footer quiet pad2 space-top1 center small'>
117
117
  Code coverage generated by
118
118
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
- at 2025-12-12T16:39:50.848Z
119
+ at 2025-12-15T10:03:18.716Z
120
120
  </div>
121
121
  <script src="../prettify.js"></script>
122
122
  <script>
@@ -73,7 +73,7 @@
73
73
  <div class='footer quiet pad2 space-top1 center small'>
74
74
  Code coverage generated by
75
75
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
76
- at 2025-12-12T16:39:50.848Z
76
+ at 2025-12-15T10:03:18.716Z
77
77
  </div>
78
78
  <script src="../prettify.js"></script>
79
79
  <script>
@@ -355,7 +355,7 @@ export {
355
355
  <div class='footer quiet pad2 space-top1 center small'>
356
356
  Code coverage generated by
357
357
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
358
- at 2025-12-12T16:39:50.848Z
358
+ at 2025-12-15T10:03:18.716Z
359
359
  </div>
360
360
  <script src="../prettify.js"></script>
361
361
  <script>
@@ -6,17 +6,18 @@ import SearchField from '../SearchField';
6
6
  import Typedown from '../Typedown';
7
7
 
8
8
  const ButtonTypedown = ({
9
- onType, // We need these manually
9
+ id,
10
10
  renderListItem,
11
11
  ...typedownProps
12
12
  }) => {
13
13
  return (
14
14
  <Typedown
15
15
  getDisplayValue={() => false}
16
- renderHeader={({ currentlyTyped }) => (
16
+ renderHeader={({ handleType, currentlyTyped }) => (
17
17
  <SearchField
18
+ id={`button-typedown-searchfield-${id}`}
18
19
  marginBottom0
19
- onChange={onType}
20
+ onChange={handleType}
20
21
  value={currentlyTyped}
21
22
  />
22
23
  )}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import { forwardRef } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { Icon, TextField } from '@folio/stripes/components';
4
4
 
@@ -12,7 +12,7 @@ const propTypes = {
12
12
  onClear: PropTypes.func,
13
13
  };
14
14
 
15
- const SearchField = (props) => {
15
+ const SearchField = forwardRef((props, ref) => {
16
16
  const {
17
17
  ariaLabel,
18
18
  ...rest
@@ -32,11 +32,12 @@ const SearchField = (props) => {
32
32
  aria-label={rest['aria-label'] || ariaLabel}
33
33
  focussedclass={css.isFocused}
34
34
  hasClearIcon
35
+ inputRef={ref}
35
36
  startControl={searchIcon}
36
37
  type="search"
37
38
  />
38
39
  );
39
- };
40
+ });
40
41
 
41
42
  SearchField.propTypes = propTypes;
42
43
 
@@ -94,6 +94,7 @@ const Typedown = ({
94
94
  } = useTypedown(
95
95
  input.name,
96
96
  {
97
+ dataOptions,
97
98
  timeout: initialOpenDelay
98
99
  }
99
100
  );
@@ -188,16 +189,18 @@ const Typedown = ({
188
189
  const isSelectedEval = isSelected ? isSelected(input.value, d) : get(input.value, uniqueIdentificationPath) === get(d, uniqueIdentificationPath);
189
190
 
190
191
  const selectedCSS = selectedStyles ?? css.selectedMenuButton;
192
+
193
+ const uniqueButtonKey = `typedown-button-[${get(d, uniqueIdentificationPath)}]`;
191
194
  return (
192
195
  <button
193
- key={`typedown-button-[${index}]`}
196
+ key={uniqueButtonKey}
194
197
  className={classnames(
195
198
  css.fullWidth,
196
199
  css.menuButton,
197
200
  { [`${selectedCSS}`]: isSelectedEval },
198
201
  )}
199
202
  data-selected={isSelectedEval}
200
- id={`typedown-button-[${index}]`}
203
+ id={uniqueButtonKey}
201
204
  onClick={() => {
202
205
  handleChange(d);
203
206
  handleNextFocus();
@@ -18,119 +18,175 @@ import useTypedownToggle from './useTypedownToggle';
18
18
 
19
19
  const useTypedown = (
20
20
  name,
21
- { timeout = 800 } = {}
21
+ {
22
+ dataOptions,
23
+ timeout = 800
24
+ } = {}
22
25
  ) => {
23
26
  // SET UP STATE HOLDING DOM ELEMENTS
24
- const [list, setListElement] = useState();
25
- const [trigger, setTriggerElement] = useState();
26
- const [footer, setFooterElement] = useState();
27
- const [header, setHeaderElement] = useState();
27
+ const [list, setList] = useState();
28
+ const [trigger, setTrigger] = useState();
29
+ const [footer, setFooter] = useState();
30
+ const [header, setHeader] = useState();
28
31
 
29
32
  // SET UP REFS
30
33
  const triggerRef = useRef();
31
34
  const overlayRef = useRef();
32
- const listRef = useCallback(node => setListElement(node), []);
33
- const triggerComponentRef = useCallback(node => setTriggerElement(node), []);
34
- const footerRef = useCallback(node => setFooterElement(node), []);
35
- const headerRef = useCallback(node => setHeaderElement(node), []);
35
+ const listRef = useCallback(node => setList(node), []);
36
+ const triggerComponentRef = useCallback(node => setTrigger(node), []);
37
+ const footerRef = useCallback(node => setFooter(node), []);
38
+ const headerRef = useCallback(node => setHeader(node), []);
36
39
 
37
- useEffect(() => {
38
- const configs = [
39
- // --- HEADER CONFIG ---
40
- {
41
- element: header,
42
- allowTabThroughContents: true,
43
- previousElement: trigger,
44
- nextElement: (footer && getFirstFocusable(footer)) ?? getNextFocusable(trigger, false),
45
- downElement: list && getFirstFocusable(list),
46
- upElement: list && getLastFocusable(list),
47
- },
48
- // --- FOOTER CONFIG ---
49
- {
50
- element: footer,
51
- allowTabThroughContents: true,
52
- previousElement: (header && getLastFocusable(header)) ?? trigger,
53
- nextElement: getNextFocusable(trigger, false),
54
- downElement: list && getFirstFocusable(list),
55
- upElement: list && getLastFocusable(list),
56
- },
57
- // --- LIST/CONTAINER CONFIG ---
58
- {
59
- element: list,
60
- allowUpDownThroughContents: true,
61
- previousElement: (header && getLastFocusable(header)) ?? trigger,
62
- nextElement: (footer && getFirstFocusable(footer)) ?? getNextFocusable(trigger, false)
63
- },
64
- // --- TRIGGER CONFIG ---
65
- {
66
- element: trigger,
67
- nextElement: (header && getFirstFocusable(header)) ?? (footer && getFirstFocusable(footer)) ?? getNextFocusable(trigger, false),
68
- previousElement: getPreviousFocusable(trigger, false),
69
- downElement: list && getFirstFocusable(list),
70
- upElement: list && getLastFocusable(list),
71
- }
72
- ].filter(c => c.element); // Filter out configs where the element (e.g., header) is null
40
+ // OVERLAY PORTAL
41
+ const portal = document.getElementById('OverlayContainer');
42
+
43
+ const getPreviousToTrigger = useCallback(() => {
44
+ const prevElem = getPreviousFocusable(trigger, false, false, false);
45
+ if (prevElem.closest('[id^=OverlayContainer]') !== null) {
46
+ // If we find ourselves inside the OverlayContainer when heading backwards from the trigger
47
+ // then we must be the first focusable element on the page.
48
+ // From here we need to skip over the overlay container and head backwards
49
+ return getPreviousFocusable(portal, false, false, false);
50
+ }
51
+ return prevElem;
52
+ }, [portal, trigger]);
73
53
 
54
+ useEffect(() => {
74
55
  const cleanups = [];
75
- const setupListener = (config) => {
76
- const handler = (e) => {
77
- if (e.code === TAB) {
78
- e.preventDefault();
79
- if (config.allowTabThroughContents) {
80
- const focusFunc = e.shiftKey ? getPreviousFocusable : getNextFocusable;
81
- const elem = focusFunc(config.element, true, true, false, true);
82
-
83
- if (elem) {
84
- // Focus on next focusable element
85
- elem.focus();
86
- } else if (e.shiftKey) {
87
- // We are at the beginning of the list moving backwards, focus on the previous element
88
- config.previousElement.focus();
89
- } else {
90
- // We are at the end of the list, move onto next focusable element in page
91
- config.nextElement.focus();
56
+
57
+ // There appears to be some BIZARRE off-by-one issue with selectors here, that can be fixed by introducing a 1ms delay...
58
+ // I hate it but it is effective
59
+ setTimeout(() => {
60
+ // Split these out to shut up the linter
61
+ const rawFirstItemInList = (list ? getFirstFocusable(list) : null);
62
+ const rawLastItemInList = (list ? getLastFocusable(list) : null);
63
+
64
+ // If there are no dataOptions, this can get a bit stuck, so deliberately set to null when no dataOptions are present
65
+ const firstItemInList = (dataOptions?.length ?? 0) > 0 ? rawFirstItemInList : null;
66
+ const lastItemInList = (dataOptions?.length ?? 0) > 0 ? rawLastItemInList : null;
67
+
68
+ const configs = [
69
+ // --- HEADER CONFIG ---
70
+ {
71
+ element: header,
72
+ allowTabThroughContents: true,
73
+ previousElement: trigger,
74
+ nextElement: (footer ? getFirstFocusable(footer) : null) ?? getNextFocusable(trigger, false),
75
+ downElement: firstItemInList,
76
+ upElement: lastItemInList,
77
+ },
78
+ // --- FOOTER CONFIG ---
79
+ {
80
+ element: footer,
81
+ allowTabThroughContents: true,
82
+ previousElement: (header ? getLastFocusable(header) : null) ?? trigger,
83
+ nextElement: getNextFocusable(trigger, false),
84
+ downElement: firstItemInList,
85
+ upElement: lastItemInList,
86
+ },
87
+ // --- LIST/CONTAINER CONFIG ---
88
+ {
89
+ element: list,
90
+ allowUpDownThroughContents: true,
91
+ previousElement: (header ? getLastFocusable(header) : null) ?? trigger,
92
+ nextElement: (footer ? getFirstFocusable(footer) : null) ?? getNextFocusable(trigger, false)
93
+ },
94
+ // --- TRIGGER CONFIG ---
95
+ {
96
+ element: trigger,
97
+ nextElement: (header ? getFirstFocusable(header) : null) ?? (footer ? getFirstFocusable(footer) : null) ?? getNextFocusable(trigger, false),
98
+ previousElement: getPreviousToTrigger(),
99
+ downElement: firstItemInList,
100
+ upElement: lastItemInList,
101
+ }
102
+ ].filter(c => c.element); // Filter out configs where the element (e.g., header) is null
103
+
104
+ const setupListener = (config) => {
105
+ const {
106
+ element,
107
+ allowTabThroughContents,
108
+ previousElement,
109
+ nextElement,
110
+ allowUpDownThroughContents,
111
+ downElement,
112
+ upElement,
113
+ } = config;
114
+ const handleTab = e => {
115
+ const IS_SHIFT = e.shiftKey;
116
+ const tabIgnoreContents = () => {
117
+ if (IS_SHIFT) {
118
+ return previousElement?.focus();
92
119
  }
93
- } else if (e.shiftKey) {
94
- config.previousElement.focus();
95
- } else {
96
- config.nextElement.focus();
120
+ return nextElement?.focus();
121
+ };
122
+
123
+ if (!allowTabThroughContents) {
124
+ return tabIgnoreContents();
125
+ }
126
+
127
+ const focusFunc = IS_SHIFT ? getPreviousFocusable : getNextFocusable;
128
+ const elem = focusFunc(element, true, true, false, true);
129
+ if (elem) {
130
+ return elem.focus();
97
131
  }
98
- } else if (e.code === DOWN_ARROW || e.code === UP_ARROW) {
99
- e.preventDefault();
132
+
133
+ return tabIgnoreContents();
134
+ };
135
+
136
+ const handleUpDown = e => {
100
137
  // Prevent the default behaviour
101
- e.preventDefault();
138
+ const IS_UP = e.code === UP_ARROW;
102
139
 
103
- if (config.allowUpDownThroughContents) {
104
- const focusFunc = e.code === UP_ARROW ? getPreviousFocusable : getNextFocusable;
105
- const elem = focusFunc(config.element, true, true, true, true); // Allow looping through elements
106
- if (elem) {
107
- elem.focus();
140
+ const upDownIgnoreContents = () => {
141
+ if (IS_UP) {
142
+ return upElement?.focus();
108
143
  }
109
- } else if (e.code === UP_ARROW) {
110
- config.upElement.focus();
111
- } else {
112
- config.downElement.focus();
144
+ return downElement?.focus();
145
+ };
146
+
147
+ if (!allowUpDownThroughContents) {
148
+ return upDownIgnoreContents();
113
149
  }
114
- }
115
- };
116
150
 
117
- // Add event listener and add the removal of said event listener to the cleanup function
118
- config.element.addEventListener('keydown', handler);
119
- cleanups.push(() => config.element.removeEventListener('keydown', handler));
120
- };
151
+ const focusFunc = IS_UP ? getPreviousFocusable : getNextFocusable;
152
+ const elem = focusFunc(element, true, true, true, true); // Allow looping through elements
153
+ if (elem) {
154
+ return elem.focus();
155
+ }
156
+
157
+ return upDownIgnoreContents();
158
+ };
159
+
160
+ const handler = (e) => {
161
+ if (!element.contains(document.activeElement)) {
162
+ return;
163
+ }
164
+
165
+ if (e.code === TAB) {
166
+ e.preventDefault();
167
+ handleTab(e);
168
+ } else if (e.code === DOWN_ARROW || e.code === UP_ARROW) {
169
+ e.preventDefault();
170
+ handleUpDown(e);
171
+ }
172
+ };
173
+
174
+ // Add event listener and add the removal of said event listener to the cleanup function
175
+ element.addEventListener('keydown', handler);
176
+ cleanups.push(() => element.removeEventListener('keydown', handler));
177
+ };
121
178
 
122
- // Setup the event listener for each config entry
123
- configs.forEach(setupListener);
179
+ // Set up the event listener for each config entry
180
+ configs.forEach(setupListener);
181
+ }, 0);
124
182
 
125
183
  // Cleanup any event listeners
126
184
  return () => {
127
185
  cleanups.forEach(cleanup => cleanup());
128
186
  };
129
-
130
187
  // Re-add the listener ANY time any of the elements changes (this is why we're using callback refs)
131
- }, [header, trigger, footer, list]);
188
+ }, [dataOptions, header, trigger, footer, list, getPreviousToTrigger]);
132
189
 
133
- // TODO is this still necessary?
134
190
  const handleNextFocus = () => getNextFocusable(trigger, false).focus();
135
191
 
136
192
  // SET UP VARIABLES
@@ -150,9 +206,6 @@ const useTypedown = (
150
206
  // RESIZE STUFF
151
207
  const { width: searchWidth, ref: resizeRef } = useResizeDetector();
152
208
 
153
- // OVERLAY PORTAL
154
- const portal = document.getElementById('OverlayContainer');
155
-
156
209
  return {
157
210
  refs: {
158
211
  listRef,