@k-int/stripes-kint-components 5.34.0 → 5.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (301) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/es/lib/CustomProperties/Config/CustomPropertiesSettings.js +32 -1
  3. package/es/lib/NoResultsMessage/NoResultsMessage.js +28 -10
  4. package/es/lib/SASQLookupComponent/SASQLookupComponent.js +109 -60
  5. package/es/lib/SASQLookupComponent/SASQLookupComponent.test.js +11 -0
  6. package/es/lib/SASQLookupComponent/TableBody/TableBody.js +6 -0
  7. package/es/lib/hooks/index.js +8 -0
  8. package/es/lib/hooks/useMutateTemplates/index.js +13 -0
  9. package/es/lib/hooks/useMutateTemplates/useMutateTemplates.js +45 -0
  10. package/es/lib/utils/parseErrorResponse.js +6 -1
  11. package/package.json +1 -1
  12. package/src/artifacts/coverage-jest/ActionList/ActionList.js.html +1 -1
  13. package/src/artifacts/coverage-jest/ActionList/ActionListFieldArray.js.html +1 -1
  14. package/src/artifacts/coverage-jest/ActionList/index.html +1 -1
  15. package/src/artifacts/coverage-jest/ActionList/index.js.html +1 -1
  16. package/src/artifacts/coverage-jest/ButtonTypedown/ButtonTypedown.js.html +1 -1
  17. package/src/artifacts/coverage-jest/ButtonTypedown/index.html +1 -1
  18. package/src/artifacts/coverage-jest/ButtonTypedown/index.js.html +1 -1
  19. package/src/artifacts/coverage-jest/ComboButton/ComboButton.js.html +1 -1
  20. package/src/artifacts/coverage-jest/ComboButton/index.html +1 -1
  21. package/src/artifacts/coverage-jest/ComboButton/index.js.html +1 -1
  22. package/src/artifacts/coverage-jest/CustomProperties/Config/CustomPropertiesLookup.js.html +1 -1
  23. package/src/artifacts/coverage-jest/CustomProperties/Config/CustomPropertiesSettings.js.html +136 -10
  24. package/src/artifacts/coverage-jest/CustomProperties/Config/CustomPropertyForm.js.html +1 -1
  25. package/src/artifacts/coverage-jest/CustomProperties/Config/CustomPropertyView.js.html +1 -1
  26. package/src/artifacts/coverage-jest/CustomProperties/Config/index.html +19 -19
  27. package/src/artifacts/coverage-jest/CustomProperties/Config/index.js.html +1 -1
  28. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertiesEdit.js.html +1 -1
  29. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertiesEditCtx.js.html +1 -1
  30. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertiesListField.js.html +1 -1
  31. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertyField.js.html +1 -1
  32. package/src/artifacts/coverage-jest/CustomProperties/Edit/CustomPropertyFormCard.js.html +1 -1
  33. package/src/artifacts/coverage-jest/CustomProperties/Edit/index.html +1 -1
  34. package/src/artifacts/coverage-jest/CustomProperties/Edit/index.js.html +1 -1
  35. package/src/artifacts/coverage-jest/CustomProperties/Edit/testResources.js.html +1 -1
  36. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesFilter.js.html +1 -1
  37. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesFilterField.js.html +1 -1
  38. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesFilterFieldArray.js.html +1 -1
  39. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesFilterForm.js.html +1 -1
  40. package/src/artifacts/coverage-jest/CustomProperties/Filter/CustomPropertiesRule.js.html +1 -1
  41. package/src/artifacts/coverage-jest/CustomProperties/Filter/index.html +1 -1
  42. package/src/artifacts/coverage-jest/CustomProperties/Filter/index.js.html +1 -1
  43. package/src/artifacts/coverage-jest/CustomProperties/Filter/testResources.js.html +1 -1
  44. package/src/artifacts/coverage-jest/CustomProperties/Filter/useOperators.js.html +1 -1
  45. package/src/artifacts/coverage-jest/CustomProperties/Filter/useParseActiveFilterStrings.js.html +1 -1
  46. package/src/artifacts/coverage-jest/CustomProperties/Filter/useValueProps.js.html +1 -1
  47. package/src/artifacts/coverage-jest/CustomProperties/View/CustomPropertiesView.js.html +1 -1
  48. package/src/artifacts/coverage-jest/CustomProperties/View/CustomPropertiesViewCtx.js.html +1 -1
  49. package/src/artifacts/coverage-jest/CustomProperties/View/CustomPropertyCard.js.html +1 -1
  50. package/src/artifacts/coverage-jest/CustomProperties/View/index.html +1 -1
  51. package/src/artifacts/coverage-jest/CustomProperties/View/index.js.html +1 -1
  52. package/src/artifacts/coverage-jest/CustomProperties/View/testResources.js.html +1 -1
  53. package/src/artifacts/coverage-jest/CustomProperties/index.html +1 -1
  54. package/src/artifacts/coverage-jest/CustomProperties/index.js.html +1 -1
  55. package/src/artifacts/coverage-jest/CycleButton/CycleButton.js.html +1 -1
  56. package/src/artifacts/coverage-jest/CycleButton/index.html +1 -1
  57. package/src/artifacts/coverage-jest/CycleButton/index.js.html +1 -1
  58. package/src/artifacts/coverage-jest/FieldLabel/FieldLabel.js.html +1 -1
  59. package/src/artifacts/coverage-jest/FieldLabel/index.html +1 -1
  60. package/src/artifacts/coverage-jest/FieldLabel/index.js.html +1 -1
  61. package/src/artifacts/coverage-jest/FormModal/FormModal.js.html +1 -1
  62. package/src/artifacts/coverage-jest/FormModal/index.html +1 -1
  63. package/src/artifacts/coverage-jest/FormModal/index.js.html +1 -1
  64. package/src/artifacts/coverage-jest/FormattedKintMessage/FormattedKintMessage.js.html +1 -1
  65. package/src/artifacts/coverage-jest/FormattedKintMessage/index.html +1 -1
  66. package/src/artifacts/coverage-jest/FormattedKintMessage/index.js.html +1 -1
  67. package/src/artifacts/coverage-jest/IconSelect/IconSelect.js.html +1 -1
  68. package/src/artifacts/coverage-jest/IconSelect/index.html +1 -1
  69. package/src/artifacts/coverage-jest/IconSelect/index.js.html +1 -1
  70. package/src/artifacts/coverage-jest/NoResultsMessage/NoResultsMessage.js.html +70 -13
  71. package/src/artifacts/coverage-jest/NoResultsMessage/index.html +3 -3
  72. package/src/artifacts/coverage-jest/NoResultsMessage/index.js.html +1 -1
  73. package/src/artifacts/coverage-jest/NumberField/NumberField.js.html +1 -1
  74. package/src/artifacts/coverage-jest/NumberField/index.html +1 -1
  75. package/src/artifacts/coverage-jest/NumberField/index.js.html +1 -1
  76. package/src/artifacts/coverage-jest/QueryTypedown/QueryTypedown.js.html +1 -1
  77. package/src/artifacts/coverage-jest/QueryTypedown/index.html +1 -1
  78. package/src/artifacts/coverage-jest/QueryTypedown/index.js.html +1 -1
  79. package/src/artifacts/coverage-jest/RefdataButtons/RefdataButtons.js.html +1 -1
  80. package/src/artifacts/coverage-jest/RefdataButtons/index.html +1 -1
  81. package/src/artifacts/coverage-jest/RefdataButtons/index.js.html +1 -1
  82. package/src/artifacts/coverage-jest/ResponsiveButtonGroup/ResponsiveButtonGroup.js.html +1 -1
  83. package/src/artifacts/coverage-jest/ResponsiveButtonGroup/index.html +1 -1
  84. package/src/artifacts/coverage-jest/ResponsiveButtonGroup/index.js.html +1 -1
  85. package/src/artifacts/coverage-jest/ResponsiveButtonGroup/useResponsiveButtonGroupSizing.js.html +1 -1
  86. package/src/artifacts/coverage-jest/RichSelect/RichSelect.js.html +1 -1
  87. package/src/artifacts/coverage-jest/RichSelect/index.html +1 -1
  88. package/src/artifacts/coverage-jest/RichSelect/index.js.html +1 -1
  89. package/src/artifacts/coverage-jest/RichSelect/useSelectedOption.js.html +1 -1
  90. package/src/artifacts/coverage-jest/SASQLookupComponent/SASQLookupComponent.js.html +298 -136
  91. package/src/artifacts/coverage-jest/SASQLookupComponent/TableBody/TableBody.js.html +12 -3
  92. package/src/artifacts/coverage-jest/SASQLookupComponent/TableBody/index.html +1 -1
  93. package/src/artifacts/coverage-jest/SASQLookupComponent/TableBody/index.js.html +1 -1
  94. package/src/artifacts/coverage-jest/SASQLookupComponent/index.html +16 -16
  95. package/src/artifacts/coverage-jest/SASQLookupComponent/index.js.html +1 -1
  96. package/src/artifacts/coverage-jest/SASQRoute/SASQRoute.js.html +1 -1
  97. package/src/artifacts/coverage-jest/SASQRoute/index.html +1 -1
  98. package/src/artifacts/coverage-jest/SASQRoute/index.js.html +1 -1
  99. package/src/artifacts/coverage-jest/SASQViewComponent/SASQViewComponent.js.html +1 -1
  100. package/src/artifacts/coverage-jest/SASQViewComponent/index.html +1 -1
  101. package/src/artifacts/coverage-jest/SASQViewComponent/index.js.html +1 -1
  102. package/src/artifacts/coverage-jest/SearchField/SearchField.js.html +1 -1
  103. package/src/artifacts/coverage-jest/SearchField/index.html +1 -1
  104. package/src/artifacts/coverage-jest/SearchField/index.js.html +1 -1
  105. package/src/artifacts/coverage-jest/SearchKeyControl/SearchKeyControl.js.html +1 -1
  106. package/src/artifacts/coverage-jest/SearchKeyControl/index.html +1 -1
  107. package/src/artifacts/coverage-jest/SearchKeyControl/index.js.html +1 -1
  108. package/src/artifacts/coverage-jest/Settings/EditableRefdataCategoryList/EditableRefdataCategoryList.js.html +1 -1
  109. package/src/artifacts/coverage-jest/Settings/EditableRefdataCategoryList/index.html +1 -1
  110. package/src/artifacts/coverage-jest/Settings/EditableRefdataCategoryList/index.js.html +1 -1
  111. package/src/artifacts/coverage-jest/Settings/EditableRefdataList/EditableRefdataList.js.html +1 -1
  112. package/src/artifacts/coverage-jest/Settings/EditableRefdataList/index.html +1 -1
  113. package/src/artifacts/coverage-jest/Settings/EditableRefdataList/index.js.html +1 -1
  114. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/EditableSettingsList.js.html +1 -1
  115. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/EditableSettingsListFieldArray/EditableSettingsListFieldArray.js.html +1 -1
  116. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/EditableSettingsListFieldArray/index.html +1 -1
  117. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/EditableSettingsListFieldArray/index.js.html +1 -1
  118. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/EditSettingValue/EditSettingValue.js.html +1 -1
  119. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/EditSettingValue/index.html +1 -1
  120. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/EditSettingValue/index.js.html +1 -1
  121. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/RenderSettingValue/RenderSettingValue.js.html +1 -1
  122. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/RenderSettingValue/index.html +1 -1
  123. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/RenderSettingValue/index.js.html +1 -1
  124. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/SettingField.js.html +1 -1
  125. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/index.html +1 -1
  126. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/SettingField/index.js.html +1 -1
  127. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/index.html +1 -1
  128. package/src/artifacts/coverage-jest/Settings/EditableSettingsList/index.js.html +1 -1
  129. package/src/artifacts/coverage-jest/Settings/RefdataCategoriesSettings/RefdataCategoriesSettings.js.html +1 -1
  130. package/src/artifacts/coverage-jest/Settings/RefdataCategoriesSettings/index.html +1 -1
  131. package/src/artifacts/coverage-jest/Settings/RefdataCategoriesSettings/index.js.html +1 -1
  132. package/src/artifacts/coverage-jest/Settings/SettingPage/SettingPage.js.html +1 -1
  133. package/src/artifacts/coverage-jest/Settings/SettingPage/SettingPagePane/SettingPagePane.js.html +1 -1
  134. package/src/artifacts/coverage-jest/Settings/SettingPage/SettingPagePane/index.html +1 -1
  135. package/src/artifacts/coverage-jest/Settings/SettingPage/SettingPagePane/index.js.html +1 -1
  136. package/src/artifacts/coverage-jest/Settings/SettingPage/index.html +1 -1
  137. package/src/artifacts/coverage-jest/Settings/SettingPage/index.js.html +1 -1
  138. package/src/artifacts/coverage-jest/Settings/Settings/Settings.js.html +1 -1
  139. package/src/artifacts/coverage-jest/Settings/Settings/index.html +1 -1
  140. package/src/artifacts/coverage-jest/Settings/Settings/index.js.html +1 -1
  141. package/src/artifacts/coverage-jest/Settings/SettingsFormContainer/SettingsFormContainer.js.html +1 -1
  142. package/src/artifacts/coverage-jest/Settings/SettingsFormContainer/index.html +1 -1
  143. package/src/artifacts/coverage-jest/Settings/SettingsFormContainer/index.js.html +1 -1
  144. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/StaticSettingsField.js.html +1 -1
  145. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/StaticSettingsFieldComponent/StaticSettingsFieldComponent.js.html +1 -1
  146. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/StaticSettingsFieldComponent/index.html +1 -1
  147. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/StaticSettingsFieldComponent/index.js.html +1 -1
  148. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/index.html +1 -1
  149. package/src/artifacts/coverage-jest/Settings/StaticSettingsField/index.js.html +1 -1
  150. package/src/artifacts/coverage-jest/Settings/constants/index.html +1 -1
  151. package/src/artifacts/coverage-jest/Settings/constants/index.js.html +1 -1
  152. package/src/artifacts/coverage-jest/Settings/constants/queryKeys.js.html +1 -1
  153. package/src/artifacts/coverage-jest/Settings/contexts/SettingsContext.js.html +1 -1
  154. package/src/artifacts/coverage-jest/Settings/contexts/index.html +1 -1
  155. package/src/artifacts/coverage-jest/Settings/contexts/index.js.html +1 -1
  156. package/src/artifacts/coverage-jest/Settings/hooks/index.html +1 -1
  157. package/src/artifacts/coverage-jest/Settings/hooks/index.js.html +1 -1
  158. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/index.html +1 -1
  159. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/index.js.html +1 -1
  160. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingCallout/index.html +1 -1
  161. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingCallout/index.js.html +1 -1
  162. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingCallout/useSettingCallout.js.html +1 -1
  163. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/index.html +1 -1
  164. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/index.js.html +1 -1
  165. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/useSettingsSectionInitalValues.js.html +1 -1
  166. package/src/artifacts/coverage-jest/Settings/hooks/staticSettingsPages/useStaticSettingsSection.js.html +1 -1
  167. package/src/artifacts/coverage-jest/Settings/hooks/useAppSettings/index.html +1 -1
  168. package/src/artifacts/coverage-jest/Settings/hooks/useAppSettings/index.js.html +1 -1
  169. package/src/artifacts/coverage-jest/Settings/hooks/useAppSettings/useAppSettings.js.html +1 -1
  170. package/src/artifacts/coverage-jest/Settings/hooks/useSettingSection/index.html +1 -1
  171. package/src/artifacts/coverage-jest/Settings/hooks/useSettingSection/index.js.html +1 -1
  172. package/src/artifacts/coverage-jest/Settings/hooks/useSettingSection/useSettingSection.js.html +1 -1
  173. package/src/artifacts/coverage-jest/Settings/hooks/useSettings/index.html +1 -1
  174. package/src/artifacts/coverage-jest/Settings/hooks/useSettings/index.js.html +1 -1
  175. package/src/artifacts/coverage-jest/Settings/hooks/useSettings/useSettings.js.html +1 -1
  176. package/src/artifacts/coverage-jest/Settings/index.html +1 -1
  177. package/src/artifacts/coverage-jest/Settings/index.js.html +1 -1
  178. package/src/artifacts/coverage-jest/Tags/Tags.js.html +1 -1
  179. package/src/artifacts/coverage-jest/Tags/hooks/index.html +1 -1
  180. package/src/artifacts/coverage-jest/Tags/hooks/index.js.html +1 -1
  181. package/src/artifacts/coverage-jest/Tags/hooks/useTags.js.html +1 -1
  182. package/src/artifacts/coverage-jest/Tags/hooks/useTagsEnabled.js.html +1 -1
  183. package/src/artifacts/coverage-jest/Tags/index.html +1 -1
  184. package/src/artifacts/coverage-jest/Tags/index.js.html +1 -1
  185. package/src/artifacts/coverage-jest/Tags/tagsConfig.js.html +1 -1
  186. package/src/artifacts/coverage-jest/Typedown/Typedown.js.html +1 -1
  187. package/src/artifacts/coverage-jest/Typedown/index.html +1 -1
  188. package/src/artifacts/coverage-jest/Typedown/index.js.html +1 -1
  189. package/src/artifacts/coverage-jest/cobertura-coverage.xml +418 -334
  190. package/src/artifacts/coverage-jest/constants/comparators.js.html +1 -1
  191. package/src/artifacts/coverage-jest/constants/customProperties.js.html +1 -1
  192. package/src/artifacts/coverage-jest/constants/endpoints.js.html +1 -1
  193. package/src/artifacts/coverage-jest/constants/eventCodes.js.html +1 -1
  194. package/src/artifacts/coverage-jest/constants/index.html +1 -1
  195. package/src/artifacts/coverage-jest/constants/pagination.js.html +1 -1
  196. package/src/artifacts/coverage-jest/hooks/index.html +1 -1
  197. package/src/artifacts/coverage-jest/hooks/index.js.html +8 -2
  198. package/src/artifacts/coverage-jest/hooks/intlHooks/index.html +1 -1
  199. package/src/artifacts/coverage-jest/hooks/intlHooks/index.js.html +1 -1
  200. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKey/index.html +1 -1
  201. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKey/index.js.html +1 -1
  202. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKey/useIntlKey.js.html +7 -7
  203. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKeyStore/index.html +1 -1
  204. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKeyStore/index.js.html +1 -1
  205. package/src/artifacts/coverage-jest/hooks/intlHooks/useIntlKeyStore/useIntlKeyStore.js.html +11 -11
  206. package/src/artifacts/coverage-jest/hooks/intlHooks/useKintIntl/index.html +1 -1
  207. package/src/artifacts/coverage-jest/hooks/intlHooks/useKintIntl/index.js.html +1 -1
  208. package/src/artifacts/coverage-jest/hooks/intlHooks/useKintIntl/useKintIntl.js.html +9 -9
  209. package/src/artifacts/coverage-jest/hooks/typedownHooks/index.html +1 -1
  210. package/src/artifacts/coverage-jest/hooks/typedownHooks/index.js.html +1 -1
  211. package/src/artifacts/coverage-jest/hooks/typedownHooks/useTypedown.js.html +1 -1
  212. package/src/artifacts/coverage-jest/hooks/typedownHooks/useTypedownData.js.html +1 -1
  213. package/src/artifacts/coverage-jest/hooks/typedownHooks/useTypedownToggle.js.html +1 -1
  214. package/src/artifacts/coverage-jest/hooks/useActionListRef.js.html +1 -1
  215. package/src/artifacts/coverage-jest/hooks/useActiveElement.js.html +1 -1
  216. package/src/artifacts/coverage-jest/hooks/useCustProps.js.html +1 -1
  217. package/src/artifacts/coverage-jest/hooks/useCustomProperties.js.html +1 -1
  218. package/src/artifacts/coverage-jest/hooks/useHelperApp.js.html +1 -1
  219. package/src/artifacts/coverage-jest/hooks/useInvalidateRefdata/index.html +1 -1
  220. package/src/artifacts/coverage-jest/hooks/useInvalidateRefdata/index.js.html +1 -1
  221. package/src/artifacts/coverage-jest/hooks/useInvalidateRefdata/useInvalidateRefdata.js.html +1 -1
  222. package/src/artifacts/coverage-jest/hooks/useKiwtFieldArray.js.html +1 -1
  223. package/src/artifacts/coverage-jest/hooks/useKiwtSASQuery.js.html +16 -16
  224. package/src/artifacts/coverage-jest/hooks/useLocalPageStore.js.html +1 -1
  225. package/src/artifacts/coverage-jest/hooks/useLocalStorageState.js.html +5 -5
  226. package/src/artifacts/coverage-jest/hooks/useModConfigEntries.js.html +1 -1
  227. package/src/artifacts/coverage-jest/hooks/useMutateCustomProperties/index.html +1 -1
  228. package/src/artifacts/coverage-jest/hooks/useMutateCustomProperties/index.js.html +1 -1
  229. package/src/artifacts/coverage-jest/hooks/useMutateCustomProperties/useMutateCustomProperties.js.html +1 -1
  230. package/src/artifacts/coverage-jest/hooks/useMutateGeneric/index.html +1 -1
  231. package/src/artifacts/coverage-jest/hooks/useMutateGeneric/index.js.html +1 -1
  232. package/src/artifacts/coverage-jest/hooks/useMutateGeneric/useMutateGeneric.js.html +1 -1
  233. package/src/artifacts/coverage-jest/hooks/useMutateModConfigEntry.js.html +1 -1
  234. package/src/artifacts/coverage-jest/hooks/useMutateRefdataCategory/index.html +1 -1
  235. package/src/artifacts/coverage-jest/hooks/useMutateRefdataCategory/index.js.html +1 -1
  236. package/src/artifacts/coverage-jest/hooks/useMutateRefdataCategory/useMutateRefdataCategory.js.html +1 -1
  237. package/src/artifacts/coverage-jest/hooks/useMutateRefdataValue/index.html +1 -1
  238. package/src/artifacts/coverage-jest/hooks/useMutateRefdataValue/index.js.html +1 -1
  239. package/src/artifacts/coverage-jest/hooks/useMutateRefdataValue/useMutateRefdataValue.js.html +1 -1
  240. package/src/artifacts/coverage-jest/hooks/useMutateTemplates/index.html +131 -0
  241. package/src/artifacts/coverage-jest/hooks/useMutateTemplates/index.js.html +88 -0
  242. package/src/artifacts/coverage-jest/hooks/useMutateTemplates/useMutateTemplates.js.html +217 -0
  243. package/src/artifacts/coverage-jest/hooks/useParallelBatchFetch.js.html +1 -1
  244. package/src/artifacts/coverage-jest/hooks/usePrevNextPagination.js.html +37 -37
  245. package/src/artifacts/coverage-jest/hooks/useQIndex.js.html +9 -9
  246. package/src/artifacts/coverage-jest/hooks/useRefdata.js.html +1 -1
  247. package/src/artifacts/coverage-jest/hooks/useSASQQueryMeta.js.html +1 -1
  248. package/src/artifacts/coverage-jest/hooks/useStandaloneSASQQueryParameter/index.html +1 -1
  249. package/src/artifacts/coverage-jest/hooks/useStandaloneSASQQueryParameter/index.js.html +1 -1
  250. package/src/artifacts/coverage-jest/hooks/useStandaloneSASQQueryParameter/useStandaloneSASQQueryParameter.js.html +1 -1
  251. package/src/artifacts/coverage-jest/hooks/useTemplates.js.html +1 -1
  252. package/src/artifacts/coverage-jest/index.html +50 -35
  253. package/src/artifacts/coverage-jest/utils/buildUrl.js.html +12 -12
  254. package/src/artifacts/coverage-jest/utils/filterParsers/deparseKiwtQueryFilters.js.html +1 -1
  255. package/src/artifacts/coverage-jest/utils/filterParsers/index.html +1 -1
  256. package/src/artifacts/coverage-jest/utils/filterParsers/index.js.html +1 -1
  257. package/src/artifacts/coverage-jest/utils/filterParsers/parseKiwtQueryFilters.js.html +1 -1
  258. package/src/artifacts/coverage-jest/utils/filterParsers/parseKiwtQueryGroups.js.html +1 -1
  259. package/src/artifacts/coverage-jest/utils/filterParsers/parseKiwtQueryString.js.html +1 -1
  260. package/src/artifacts/coverage-jest/utils/generateKiwtQuery.js.html +3 -3
  261. package/src/artifacts/coverage-jest/utils/generateKiwtQueryParams/generateKiwtQueryParams.js.html +19 -19
  262. package/src/artifacts/coverage-jest/utils/generateKiwtQueryParams/index.html +1 -1
  263. package/src/artifacts/coverage-jest/utils/generateKiwtQueryParams/index.js.html +1 -1
  264. package/src/artifacts/coverage-jest/utils/groupCustomPropertiesByCtx.js.html +1 -1
  265. package/src/artifacts/coverage-jest/utils/index.html +13 -13
  266. package/src/artifacts/coverage-jest/utils/index.js.html +1 -1
  267. package/src/artifacts/coverage-jest/utils/matchString/index.html +1 -1
  268. package/src/artifacts/coverage-jest/utils/matchString/index.js.html +1 -1
  269. package/src/artifacts/coverage-jest/utils/matchString/matchString.js.html +1 -1
  270. package/src/artifacts/coverage-jest/utils/modConfigEntriesQueryKey.js.html +1 -1
  271. package/src/artifacts/coverage-jest/utils/parseErrorResponse.js.html +26 -8
  272. package/src/artifacts/coverage-jest/utils/parseModConfigEntry.js.html +1 -1
  273. package/src/artifacts/coverage-jest/utils/refdataOptions.js.html +1 -1
  274. package/src/artifacts/coverage-jest/utils/refdataQueryKey/index.html +1 -1
  275. package/src/artifacts/coverage-jest/utils/refdataQueryKey/index.js.html +1 -1
  276. package/src/artifacts/coverage-jest/utils/refdataQueryKey/refdataQueryKey.js.html +1 -1
  277. package/src/artifacts/coverage-jest/utils/selectorSafe.js.html +1 -1
  278. package/src/artifacts/coverage-jest/utils/sortByLabel.js.html +1 -1
  279. package/src/artifacts/coverage-jest/utils/stringStyling/boldString.js.html +1 -1
  280. package/src/artifacts/coverage-jest/utils/stringStyling/highlightString.js.html +1 -1
  281. package/src/artifacts/coverage-jest/utils/stringStyling/index.html +1 -1
  282. package/src/artifacts/coverage-jest/utils/stringStyling/index.js.html +1 -1
  283. package/src/artifacts/coverage-jest/utils/toCamelCase.js.html +1 -1
  284. package/src/artifacts/coverage-jest/utils/typedownQueryKey.js.html +1 -1
  285. package/src/artifacts/coverage-jest/validators/index.html +1 -1
  286. package/src/artifacts/coverage-jest/validators/index.js.html +1 -1
  287. package/src/artifacts/coverage-jest/validators/validators.js.html +1 -1
  288. package/src/lib/CustomProperties/Config/CustomPropertiesSettings.js +42 -0
  289. package/src/lib/NoResultsMessage/NoResultsMessage.js +29 -10
  290. package/src/lib/NoResultsMessage/README.md +16 -13
  291. package/src/lib/SASQLookupComponent/README.md +12 -0
  292. package/src/lib/SASQLookupComponent/SASQLookupComponent.js +127 -73
  293. package/src/lib/SASQLookupComponent/SASQLookupComponent.test.js +13 -1
  294. package/src/lib/SASQLookupComponent/TableBody/TableBody.js +4 -1
  295. package/src/lib/SASQRoute/README.md +6 -1
  296. package/src/lib/hooks/index.js +2 -0
  297. package/src/lib/hooks/useMutateTemplates/index.js +1 -0
  298. package/src/lib/hooks/useMutateTemplates/useMutateTemplates.js +44 -0
  299. package/src/lib/utils/parseErrorResponse.js +7 -1
  300. package/styles/NoResultsMessage.css +1 -0
  301. package/styles/SASQLookupComponent.css +15 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,18 @@
1
+ # [5.35.0](https://gitlab.com/knowledge-integration/folio/stripes-kint-components/compare/v5.34.1...v5.35.0) (2026-04-13)
2
+
3
+
4
+ ### Features
5
+
6
+ * Add native abillity for non-filter pane implementations to render filter and search components in body ([496cbff](https://gitlab.com/knowledge-integration/folio/stripes-kint-components/commit/496cbff96641c0b46cd06a53d9e79c4d8d1564b3))
7
+ * useMutateTemplates.js ([76da3d9](https://gitlab.com/knowledge-integration/folio/stripes-kint-components/commit/76da3d99aa31e3e1835af54c3189bd0ff98f604c))
8
+
9
+ ## [5.34.1](https://gitlab.com/knowledge-integration/folio/stripes-kint-components/compare/v5.34.0...v5.34.1) (2026-03-23)
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * **CustomProperties:** errors in custom property creation/edit fail silently ([ea7ba3f](https://gitlab.com/knowledge-integration/folio/stripes-kint-components/commit/ea7ba3f00e0d3548922717b2981278265d366ee3))
15
+
1
16
  # [5.34.0](https://gitlab.com/knowledge-integration/folio/stripes-kint-components/compare/v5.33.2...v5.34.0) (2026-03-18)
2
17
 
3
18
 
@@ -110,6 +110,35 @@ const CustomPropertiesSettings = _ref => {
110
110
  catchQueryCalls: {
111
111
  // Default delete behaviour is to fire a callout, either with kint-components default message
112
112
  // or one provided in labelOverrides, which is passed the error message and customProperty in question
113
+ post: async err => {
114
+ const errorResp = await (0, _utils.parseErrorResponse)(err.response);
115
+ callout.sendCallout({
116
+ message: kintIntl.formatKintMessage({
117
+ id: 'customProperties.config.create.errorMessage',
118
+ overrideValue: labelOverrides?.createError
119
+ }, {
120
+ error: errorResp?.message
121
+ }),
122
+ type: 'error',
123
+ timeout: 0
124
+ });
125
+ throw err;
126
+ },
127
+ put: async err => {
128
+ const errorResp = await (0, _utils.parseErrorResponse)(err.response);
129
+ callout.sendCallout({
130
+ message: kintIntl.formatKintMessage({
131
+ id: 'customProperties.config.edit.errorMessage',
132
+ overrideValue: labelOverrides?.editError
133
+ }, {
134
+ error: errorResp?.message,
135
+ label: customProperty?.label ?? customProperty?.name
136
+ }),
137
+ type: 'error',
138
+ timeout: 0
139
+ });
140
+ throw err;
141
+ },
113
142
  delete: async err => {
114
143
  const errorResp = await (0, _utils.parseErrorResponse)(err.response);
115
144
  callout.sendCallout({
@@ -120,8 +149,10 @@ const CustomPropertiesSettings = _ref => {
120
149
  error: errorResp?.message,
121
150
  label: customProperty?.label
122
151
  }),
123
- type: 'error'
152
+ type: 'error',
153
+ timeout: 0
124
154
  });
155
+ throw err;
125
156
  },
126
157
  ...catchQueryCalls // Override defaults here
127
158
  },
@@ -8,19 +8,28 @@ var _react = _interopRequireDefault(require("react"));
8
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
9
9
  var _reactIntl = require("react-intl");
10
10
  var _components = require("@folio/stripes/components");
11
- var _NoResultsMessage = _interopRequireDefault(require("../../../styles/NoResultsMessage.css"));
12
11
  var _hooks = require("../hooks");
12
+ var _NoResultsMessage = _interopRequireDefault(require("../../../styles/NoResultsMessage.css"));
13
13
  var _jsxRuntime = require("react/jsx-runtime");
14
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
15
  const NoResultsMessage = _ref => {
16
16
  let {
17
+ className,
18
+ error,
19
+ filters,
20
+ filterPaneIsVisible,
17
21
  icon: userIcon,
22
+ iconPresets: {
23
+ noTerms: noTermsIcon,
24
+ noTermsWhenFilterPane: noTermsWhenFilterPaneIcon,
25
+ noResults: noResultsIcon,
26
+ isLoading: isLoadingIcon,
27
+ error: errorIcon
28
+ } = {},
18
29
  intlKey: passedIntlKey,
19
30
  intlNS: passedIntlNS,
20
31
  isLoading,
21
32
  isError,
22
- error,
23
- filterPaneIsVisible,
24
33
  label: userLabel,
25
34
  labelOverrides = {},
26
35
  searchTerm,
@@ -34,34 +43,34 @@ const NoResultsMessage = _ref => {
34
43
  searchTerm
35
44
  }
36
45
  });
37
- if (!isLoading && !searchTerm) {
46
+ if (!isLoading && !searchTerm && !filters) {
38
47
  // No search term and not loading
39
- icon = filterPaneIsVisible ? 'arrow-left' : null;
48
+ icon = noTermsIcon ?? (filterPaneIsVisible ? noTermsWhenFilterPaneIcon ?? 'arrow-left' : null);
40
49
  label = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
41
50
  id: "stripes-smart-components.sas.noResults.noTerms"
42
51
  });
43
52
  } else if (!isLoading) {
44
53
  // Search term but not loading
45
- icon = 'search';
54
+ icon = noResultsIcon ?? 'search';
46
55
  label = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
47
56
  id: "stripes-smart-components.sas.noResults.noResults"
48
57
  });
49
58
  } else if (isLoading) {
50
59
  // Loading
51
- icon = 'spinner-ellipsis';
60
+ icon = isLoadingIcon ?? 'spinner-ellipsis';
52
61
  label = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
53
62
  id: "stripes-smart-components.sas.noResults.loading"
54
63
  });
55
64
  } else if (isError) {
56
65
  // Request failure
57
- icon = 'exclamation-circle';
66
+ icon = errorIcon ?? 'exclamation-circle';
58
67
  label = error?.message;
59
68
  }
60
69
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
61
- className: _NoResultsMessage.default.noResultsMessage,
70
+ className: `${className} ${_NoResultsMessage.default.noResultsMessage}`,
62
71
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
63
72
  className: _NoResultsMessage.default.noResultsMessageLabelWrap,
64
- children: [(icon || userIcon) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
73
+ children: [(userIcon || icon) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
65
74
  icon: userIcon ?? icon,
66
75
  iconRootClass: _NoResultsMessage.default.noResultsMessageIcon
67
76
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
@@ -80,9 +89,18 @@ const NoResultsMessage = _ref => {
80
89
  });
81
90
  };
82
91
  NoResultsMessage.propTypes = {
92
+ className: _propTypes.default.string,
83
93
  error: _propTypes.default.object,
94
+ filters: _propTypes.default.string,
84
95
  filterPaneIsVisible: _propTypes.default.bool.isRequired,
85
96
  icon: _propTypes.default.string,
97
+ iconPresets: _propTypes.default.shape({
98
+ noTerms: _propTypes.default.string,
99
+ noTermsWhenFilterPane: _propTypes.default.string,
100
+ noResults: _propTypes.default.string,
101
+ isLoading: _propTypes.default.string,
102
+ error: _propTypes.default.string
103
+ }),
86
104
  intlKey: _propTypes.default.string,
87
105
  intlNS: _propTypes.default.string,
88
106
  isLoading: _propTypes.default.bool,
@@ -15,6 +15,7 @@ var _utils = require("../utils");
15
15
  var _hooks = require("../hooks");
16
16
  var _TableBody = _interopRequireDefault(require("./TableBody"));
17
17
  var _SearchKeyControl = _interopRequireDefault(require("../SearchKeyControl"));
18
+ var _SASQLookupComponent = _interopRequireDefault(require("../../../styles/SASQLookupComponent.css"));
18
19
  var _jsxRuntime = require("react/jsx-runtime");
19
20
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
21
  const SASQLookupComponent = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
@@ -41,9 +42,7 @@ const SASQLookupComponent = /*#__PURE__*/(0, _react.forwardRef)((props, ref) =>
41
42
  if (passedId) {
42
43
  queryNamespace.push(passedId);
43
44
  }
44
- queryNamespace.push('viewAll');
45
- queryNamespace.push(query);
46
- queryNamespace.push(currentPage);
45
+ queryNamespace.push('viewAll', query, currentPage);
47
46
  return queryNamespace;
48
47
  },
49
48
  lookupQueryPromise = _ref2 => {
@@ -68,6 +67,7 @@ const SASQLookupComponent = /*#__PURE__*/(0, _react.forwardRef)((props, ref) =>
68
67
  // Default navigation onRowClick
69
68
  sasqProps,
70
69
  searchableIndexes = [],
70
+ SearchComponent: PassedSearchComponent,
71
71
  searchFieldAriaLabel,
72
72
  searchFieldProps = {}
73
73
  } = props;
@@ -156,6 +156,53 @@ const SASQLookupComponent = /*#__PURE__*/(0, _react.forwardRef)((props, ref) =>
156
156
  },
157
157
  queryParams
158
158
  }));
159
+ const InternalSearchComponent = (0, _react.useCallback)(_ref3 => {
160
+ let {
161
+ disableReset,
162
+ resetAll,
163
+ searchHandlers,
164
+ searchValue
165
+ } = _ref3;
166
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
167
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.SearchField, {
168
+ ariaLabel: searchFieldAriaLabel,
169
+ autoFocus: true,
170
+ id: `sasq-search-field-${id}`,
171
+ name: "query",
172
+ onChange: e => {
173
+ if (e.target?.value) {
174
+ searchHandlers.query(e); // SASQ needs the whole event here
175
+ } else {
176
+ searchHandlers.reset();
177
+ }
178
+ },
179
+ onClear: searchHandlers.reset,
180
+ value: searchValue.query,
181
+ ...searchFieldProps
182
+ }), searchableIndexes?.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_SearchKeyControl.default, {
183
+ options: searchableIndexes
184
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
185
+ buttonStyle: "primary",
186
+ disabled: !searchValue.query,
187
+ fullWidth: true,
188
+ type: "submit",
189
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
190
+ id: "stripes-smart-components.search"
191
+ })
192
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
193
+ buttonStyle: "none",
194
+ disabled: disableReset,
195
+ id: "clickable-reset-all",
196
+ onClick: resetAll,
197
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
198
+ icon: "times-circle-solid",
199
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
200
+ id: "stripes-smart-components.resetAll"
201
+ })
202
+ })
203
+ })]
204
+ });
205
+ }, [id, searchFieldAriaLabel, searchFieldProps, searchableIndexes]);
159
206
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_smartComponents.SearchAndSortQuery, {
160
207
  initialSearchState: {
161
208
  query: ''
@@ -213,6 +260,7 @@ const SASQLookupComponent = /*#__PURE__*/(0, _react.forwardRef)((props, ref) =>
213
260
  }
214
261
  return null;
215
262
  };
263
+ const SearchComponent = PassedSearchComponent ?? InternalSearchComponent;
216
264
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_smartComponents.PersistedPaneset, {
217
265
  appId: namespace,
218
266
  id: `${id}-paneset`,
@@ -232,46 +280,14 @@ const SASQLookupComponent = /*#__PURE__*/(0, _react.forwardRef)((props, ref) =>
232
280
  ...restOfFilterPaneProps,
233
281
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("form", {
234
282
  onSubmit: onSubmitSearch,
235
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(FilterPaneHeaderComponent, {}), !noSearchField && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
236
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.SearchField, {
237
- ariaLabel: searchFieldAriaLabel,
238
- autoFocus: true,
239
- id: `sasq-search-field-${id}`,
240
- name: "query",
241
- onChange: e => {
242
- if (e.target?.value) {
243
- searchHandlers.query(e); // SASQ needs the whole event here
244
- } else {
245
- searchHandlers.reset();
246
- }
247
- },
248
- onClear: searchHandlers.reset,
249
- value: searchValue.query,
250
- ...searchFieldProps
251
- }), searchableIndexes?.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_SearchKeyControl.default, {
252
- options: searchableIndexes
253
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
254
- buttonStyle: "primary",
255
- disabled: !searchValue.query,
256
- fullWidth: true,
257
- type: "submit",
258
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
259
- id: "stripes-smart-components.search"
260
- })
261
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
262
- buttonStyle: "none",
263
- disabled: disableReset,
264
- id: "clickable-reset-all",
265
- onClick: resetAll,
266
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
267
- icon: "times-circle-solid",
268
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
269
- id: "stripes-smart-components.resetAll"
270
- })
271
- })
272
- })]
283
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(FilterPaneHeaderComponent, {}), !noSearchField && /*#__PURE__*/(0, _jsxRuntime.jsx)(SearchComponent, {
284
+ disableReset: disableReset,
285
+ resetAll: resetAll,
286
+ searchHandlers: searchHandlers,
287
+ searchValue: searchValue
273
288
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(FilterComponent, {
274
- activeFilters: activeFilters.state,
289
+ activeFilters: activeFilters,
290
+ data: data,
275
291
  filterChanged: filterChanged,
276
292
  filterHandlers: getFilterHandlers(),
277
293
  resetAll: resetAll,
@@ -296,24 +312,56 @@ const SASQLookupComponent = /*#__PURE__*/(0, _react.forwardRef)((props, ref) =>
296
312
  total: data?.total ?? data?.totalRecords ?? 0
297
313
  }),
298
314
  ...restOfMainPaneProps,
299
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Body, {
300
- data: data,
301
- filterPaneVisible: filterPaneVisible,
302
- intlKey: passedIntlKey,
303
- intlNS: passedIntlNS,
304
- labelOverrides: labelOverrides,
305
- noResultsProps: noResultsProps,
306
- query: query,
307
- rowNavigation: rowNavigation,
308
- toggleFilterPane: toggleFilterPane,
309
- ...restOfQueryProps,
310
- ...sasqRenderProps,
311
- ...sasqProps,
312
- ...props,
313
- mclProps: {
314
- ...paginationMCLProps,
315
- ...mclProps
316
- }
315
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
316
+ className: _SASQLookupComponent.default.mainPaneContainer,
317
+ children: [!hasFilterPane && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
318
+ className: _SASQLookupComponent.default.controlsContainer,
319
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("form", {
320
+ onSubmit: onSubmitSearch,
321
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(FilterPaneHeaderComponent, {}), !noSearchField && /*#__PURE__*/(0, _jsxRuntime.jsx)(SearchComponent, {
322
+ disableReset: disableReset,
323
+ resetAll: resetAll,
324
+ searchHandlers: searchHandlers,
325
+ searchValue: searchValue
326
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(FilterComponent, {
327
+ activeFilters: activeFilters,
328
+ data: data,
329
+ filterChanged: filterChanged,
330
+ filterHandlers: getFilterHandlers(),
331
+ resetAll: resetAll,
332
+ searchChanged: searchChanged,
333
+ searchHandlers: getSearchHandlers(),
334
+ searchValue: searchValue
335
+ })]
336
+ })
337
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
338
+ className: _SASQLookupComponent.default.bodyContainer,
339
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Body, {
340
+ data: data,
341
+ filterPaneVisible: filterPaneVisible,
342
+ intlKey: passedIntlKey,
343
+ intlNS: passedIntlNS,
344
+ labelOverrides: labelOverrides,
345
+ noResultsProps: {
346
+ ...noResultsProps,
347
+ iconPresets: {
348
+ noTermsWhenFilterPane: hasFilterPane ? null : 'arrow-up',
349
+ ...noResultsProps.iconPresets
350
+ }
351
+ },
352
+ query: query,
353
+ rowNavigation: rowNavigation,
354
+ toggleFilterPane: toggleFilterPane,
355
+ ...restOfQueryProps,
356
+ ...sasqRenderProps,
357
+ ...sasqProps,
358
+ ...props,
359
+ mclProps: {
360
+ ...paginationMCLProps,
361
+ ...mclProps
362
+ }
363
+ })
364
+ })]
317
365
  })
318
366
  }), children]
319
367
  });
@@ -347,6 +395,7 @@ SASQLookupComponent.propTypes = {
347
395
  key: _propTypes.default.string.isRequired,
348
396
  label: _propTypes.default.string
349
397
  })),
398
+ SearchComponent: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.node]),
350
399
  searchFieldAriaLabel: _propTypes.default.string,
351
400
  searchFieldProps: _propTypes.default.object
352
401
  };
@@ -226,6 +226,16 @@ describe('SASQLookupComponent', () => {
226
226
  hasFilterPane: false
227
227
  },
228
228
  expectQueryFire: false,
229
+ expectedSearchField: true,
230
+ expectedFilterPane: false
231
+ }, {
232
+ testLabel: 'with filter pane disabled (and no search)',
233
+ props: {
234
+ ...baseSASQLookupProps,
235
+ hasFilterPane: false,
236
+ noSearchField: true
237
+ },
238
+ expectQueryFire: false,
229
239
  expectedSearchField: false,
230
240
  expectedFilterPane: false
231
241
  }, {
@@ -435,6 +445,7 @@ describe('SASQLookupComponent', () => {
435
445
  beforeEach(async () => {
436
446
  _core.mockKy.mockClear();
437
447
  await (0, _react2.waitFor)(async () => {
448
+ await (0, _stripesErmTesting.SearchField)().fillIn(''); // Needed to avoid flakiness
438
449
  await (0, _stripesErmTesting.SearchField)().fillIn('some test query');
439
450
  await (0, _stripesErmTesting.Button)('Search').click();
440
451
  });
@@ -99,13 +99,18 @@ const TableBody = _ref => {
99
99
  interactive: rowNavigation,
100
100
  isEmptyMessage: /*#__PURE__*/(0, _jsxRuntime.jsx)(NoResultsComponent, {
101
101
  error,
102
+ filters: query.filters,
103
+ // Separate out filters as per "searchTerm" below
102
104
  filterPaneIsVisible: filterPaneVisible,
103
105
  intlKey: passedIntlKey,
104
106
  intlNS: passedIntlNS,
105
107
  isError,
106
108
  isLoading,
107
109
  labelOverrides,
110
+ query,
111
+ // Passing the whole query object just in case
108
112
  searchTerm: query.query,
113
+ // Here for compatibility, probably better to just use "query" prop
109
114
  toggleFilterPane,
110
115
  ...noResultsProps // Anything passed in directly takes precedence
111
116
  }),
@@ -138,6 +143,7 @@ TableBody.propTypes = {
138
143
  location: _propTypes.default.object,
139
144
  match: _propTypes.default.object,
140
145
  mclProps: _propTypes.default.object,
146
+ noResultsProps: _propTypes.default.object,
141
147
  onSort: _propTypes.default.func,
142
148
  path: _propTypes.default.string.isRequired,
143
149
  query: _propTypes.default.object,
@@ -23,6 +23,7 @@ var _exportNames = {
23
23
  useMutateRefdataCategory: true,
24
24
  useMutateCustomProperties: true,
25
25
  useMutateModConfigEntry: true,
26
+ useMutateTemplates: true,
26
27
  usePrevNextPagination: true,
27
28
  useStandaloneSASQQueryParameter: true,
28
29
  useParallelBatchFetch: true
@@ -117,6 +118,12 @@ Object.defineProperty(exports, "useMutateRefdataValue", {
117
118
  return _useMutateRefdataValue.default;
118
119
  }
119
120
  });
121
+ Object.defineProperty(exports, "useMutateTemplates", {
122
+ enumerable: true,
123
+ get: function () {
124
+ return _useMutateTemplates.default;
125
+ }
126
+ });
120
127
  Object.defineProperty(exports, "useParallelBatchFetch", {
121
128
  enumerable: true,
122
129
  get: function () {
@@ -178,6 +185,7 @@ var _useMutateRefdataValue = _interopRequireDefault(require("./useMutateRefdataV
178
185
  var _useMutateRefdataCategory = _interopRequireDefault(require("./useMutateRefdataCategory"));
179
186
  var _useMutateCustomProperties = _interopRequireDefault(require("./useMutateCustomProperties"));
180
187
  var _useMutateModConfigEntry = _interopRequireDefault(require("./useMutateModConfigEntry"));
188
+ var _useMutateTemplates = _interopRequireDefault(require("./useMutateTemplates"));
181
189
  var _usePrevNextPagination = _interopRequireDefault(require("./usePrevNextPagination"));
182
190
  var _useStandaloneSASQQueryParameter = _interopRequireDefault(require("./useStandaloneSASQQueryParameter"));
183
191
  var _useParallelBatchFetch = _interopRequireDefault(require("./useParallelBatchFetch"));
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "default", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _useMutateTemplates.default;
10
+ }
11
+ });
12
+ var _useMutateTemplates = _interopRequireDefault(require("./useMutateTemplates"));
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _noop = _interopRequireDefault(require("lodash/noop"));
8
+ var _useInvalidateRefdata = _interopRequireDefault(require("../useInvalidateRefdata"));
9
+ var _useMutateGeneric = _interopRequireDefault(require("../useMutateGeneric"));
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ const useMutateTemplates = _ref => {
12
+ let {
13
+ afterQueryCalls: {
14
+ delete: afterQueryDelete = _noop.default,
15
+ post: afterQueryPost = _noop.default,
16
+ put: afterQueryPut = _noop.default
17
+ } = {},
18
+ endpoint,
19
+ ...mutateGenericProps
20
+ } = _ref;
21
+ const invalidateRefdata = (0, _useInvalidateRefdata.default)();
22
+ return (0, _useMutateGeneric.default)({
23
+ afterQueryCalls: {
24
+ delete: res => {
25
+ invalidateRefdata().then(() => {
26
+ afterQueryDelete(res);
27
+ });
28
+ },
29
+ post: res => {
30
+ invalidateRefdata().then(() => {
31
+ afterQueryPost(res);
32
+ });
33
+ },
34
+ put: res => {
35
+ invalidateRefdata().then(() => {
36
+ afterQueryPut(res);
37
+ });
38
+ }
39
+ },
40
+ endpoint,
41
+ queryKey: ['stripes-kint-components', 'useMutateTemplates'],
42
+ ...mutateGenericProps
43
+ });
44
+ };
45
+ var _default = exports.default = useMutateTemplates;
@@ -16,7 +16,12 @@ const parseErrorResponse = async responseObj => {
16
16
  // Assume text if we can't find content type
17
17
  const contentType = [...(responseObj?.headers ?? [])]?.find(header => header[0]?.toLowerCase() === 'content-type')?.[1] ?? 'application/text';
18
18
  if (contentType.includes('json')) {
19
- errorResp = await responseObj.json();
19
+ const parsed = await responseObj.json();
20
+ errorResp = {
21
+ code,
22
+ ...parsed,
23
+ message: parsed?.message || parsed?.errors?.[0]?.message || 'something went wrong'
24
+ };
20
25
  } else {
21
26
  try {
22
27
  errorResp = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@k-int/stripes-kint-components",
3
- "version": "5.34.0",
3
+ "version": "5.35.0",
4
4
  "description": "Stripes Component library for K-Int specific applications",
5
5
  "sideEffects": [
6
6
  "*.css"
@@ -358,7 +358,7 @@ export default ActionList;
358
358
  <div class='footer quiet pad2 space-top1 center small'>
359
359
  Code coverage generated by
360
360
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
361
- at 2026-03-18T13:14:53.894Z
361
+ at 2026-04-13T17:20:56.746Z
362
362
  </div>
363
363
  <script src="../prettify.js"></script>
364
364
  <script>
@@ -1495,7 +1495,7 @@ export default ActionListFieldArray;
1495
1495
  <div class='footer quiet pad2 space-top1 center small'>
1496
1496
  Code coverage generated by
1497
1497
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1498
- at 2026-03-18T13:14:53.894Z
1498
+ at 2026-04-13T17:20:56.746Z
1499
1499
  </div>
1500
1500
  <script src="../prettify.js"></script>
1501
1501
  <script>
@@ -131,7 +131,7 @@
131
131
  <div class='footer quiet pad2 space-top1 center small'>
132
132
  Code coverage generated by
133
133
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
134
- at 2026-03-18T13:14:53.894Z
134
+ at 2026-04-13T17:20:56.746Z
135
135
  </div>
136
136
  <script src="../prettify.js"></script>
137
137
  <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 2026-03-18T13:14:53.894Z
76
+ at 2026-04-13T17:20:56.746Z
77
77
  </div>
78
78
  <script src="../prettify.js"></script>
79
79
  <script>
@@ -421,7 +421,7 @@ ButtonTypedown.propTypes = {
421
421
  <div class='footer quiet pad2 space-top1 center small'>
422
422
  Code coverage generated by
423
423
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
424
- at 2026-03-18T13:14:53.894Z
424
+ at 2026-04-13T17:20:56.746Z
425
425
  </div>
426
426
  <script src="../prettify.js"></script>
427
427
  <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 2026-03-18T13:14:53.894Z
119
+ at 2026-04-13T17:20:56.746Z
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 2026-03-18T13:14:53.894Z
76
+ at 2026-04-13T17:20:56.746Z
77
77
  </div>
78
78
  <script src="../prettify.js"></script>
79
79
  <script>
@@ -553,7 +553,7 @@ export default ComboButton;
553
553
  <div class='footer quiet pad2 space-top1 center small'>
554
554
  Code coverage generated by
555
555
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
556
- at 2026-03-18T13:14:53.894Z
556
+ at 2026-04-13T17:20:56.746Z
557
557
  </div>
558
558
  <script src="../prettify.js"></script>
559
559
  <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 2026-03-18T13:14:53.894Z
119
+ at 2026-04-13T17:20:56.746Z
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 2026-03-18T13:14:53.894Z
76
+ at 2026-04-13T17:20:56.746Z
77
77
  </div>
78
78
  <script src="../prettify.js"></script>
79
79
  <script>