@k-int/stripes-kint-components 1.2.5 → 1.6.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 (430) hide show
  1. package/CHANGELOG.md +32 -11
  2. package/artifacts/coverage-jest/lcov-report/base.css +224 -0
  3. package/artifacts/coverage-jest/lcov-report/block-navigation.js +87 -0
  4. package/artifacts/coverage-jest/lcov-report/es/lib/ActionList/ActionList.js.html +389 -0
  5. package/artifacts/coverage-jest/lcov-report/es/lib/ActionList/ActionListFieldArray.js.html +1076 -0
  6. package/artifacts/coverage-jest/lcov-report/es/lib/ActionList/index.html +147 -0
  7. package/artifacts/coverage-jest/lcov-report/es/lib/ActionList/index.js.html +140 -0
  8. package/artifacts/coverage-jest/lcov-report/es/lib/EditableRefdataList/EditableRefdataList.js.html +680 -0
  9. package/artifacts/coverage-jest/lcov-report/es/lib/EditableRefdataList/index.html +132 -0
  10. package/artifacts/coverage-jest/lcov-report/es/lib/EditableRefdataList/index.js.html +140 -0
  11. package/artifacts/coverage-jest/lcov-report/es/lib/EditableSettingsList/EditableSettingsList.js.html +353 -0
  12. package/artifacts/coverage-jest/lcov-report/es/lib/EditableSettingsList/EditableSettingsListFieldArray.js.html +353 -0
  13. package/artifacts/coverage-jest/lcov-report/es/lib/EditableSettingsList/SettingField/EditSettingValue.js.html +482 -0
  14. package/artifacts/coverage-jest/lcov-report/es/lib/EditableSettingsList/SettingField/RenderSettingValue.js.html +434 -0
  15. package/artifacts/coverage-jest/lcov-report/es/lib/EditableSettingsList/SettingField/SettingField.js.html +644 -0
  16. package/artifacts/coverage-jest/lcov-report/es/lib/EditableSettingsList/SettingField/index.html +162 -0
  17. package/artifacts/coverage-jest/lcov-report/es/lib/EditableSettingsList/SettingField/index.js.html +188 -0
  18. package/artifacts/coverage-jest/lcov-report/es/lib/EditableSettingsList/index.html +147 -0
  19. package/artifacts/coverage-jest/lcov-report/es/lib/EditableSettingsList/index.js.html +188 -0
  20. package/artifacts/coverage-jest/lcov-report/es/lib/NoResultsMessage/NoResultsMessage.js.html +449 -0
  21. package/artifacts/coverage-jest/lcov-report/es/lib/NoResultsMessage/index.html +132 -0
  22. package/artifacts/coverage-jest/lcov-report/es/lib/NoResultsMessage/index.js.html +140 -0
  23. package/artifacts/coverage-jest/lcov-report/es/lib/QueryTypedown/QueryTypedown.js.html +413 -0
  24. package/artifacts/coverage-jest/lcov-report/es/lib/QueryTypedown/index.html +132 -0
  25. package/artifacts/coverage-jest/lcov-report/es/lib/QueryTypedown/index.js.html +140 -0
  26. package/artifacts/coverage-jest/lcov-report/es/lib/RefdataButtons/RefdataButtons.js.html +512 -0
  27. package/artifacts/coverage-jest/lcov-report/es/lib/RefdataButtons/index.html +132 -0
  28. package/artifacts/coverage-jest/lcov-report/es/lib/RefdataButtons/index.js.html +140 -0
  29. package/artifacts/coverage-jest/lcov-report/es/lib/SASQLookupComponent/SASQLookupComponent.js.html +1115 -0
  30. package/artifacts/coverage-jest/lcov-report/es/lib/SASQLookupComponent/index.html +132 -0
  31. package/artifacts/coverage-jest/lcov-report/es/lib/SASQLookupComponent/index.js.html +140 -0
  32. package/artifacts/coverage-jest/lcov-report/es/lib/SASQRoute/SASQRoute.js.html +404 -0
  33. package/artifacts/coverage-jest/lcov-report/es/lib/SASQRoute/index.html +132 -0
  34. package/artifacts/coverage-jest/lcov-report/es/lib/SASQRoute/index.js.html +140 -0
  35. package/artifacts/coverage-jest/lcov-report/es/lib/SASQViewComponent/SASQViewComponent.js.html +413 -0
  36. package/artifacts/coverage-jest/lcov-report/es/lib/SASQViewComponent/index.html +132 -0
  37. package/artifacts/coverage-jest/lcov-report/es/lib/SASQViewComponent/index.js.html +140 -0
  38. package/artifacts/coverage-jest/lcov-report/es/lib/SearchField/SearchField.js.html +353 -0
  39. package/artifacts/coverage-jest/lcov-report/es/lib/SearchField/index.html +132 -0
  40. package/artifacts/coverage-jest/lcov-report/es/lib/SearchField/index.js.html +140 -0
  41. package/artifacts/coverage-jest/lcov-report/es/lib/SettingPage/SettingPage.js.html +380 -0
  42. package/artifacts/coverage-jest/lcov-report/es/lib/SettingPage/SettingPagePane.js.html +308 -0
  43. package/artifacts/coverage-jest/lcov-report/es/lib/SettingPage/index.html +147 -0
  44. package/artifacts/coverage-jest/lcov-report/es/lib/SettingPage/index.js.html +164 -0
  45. package/artifacts/coverage-jest/lcov-report/es/lib/TypeDown/TypeDown.js.html +839 -0
  46. package/artifacts/coverage-jest/lcov-report/es/lib/TypeDown/index.html +132 -0
  47. package/artifacts/coverage-jest/lcov-report/es/lib/TypeDown/index.js.html +140 -0
  48. package/artifacts/coverage-jest/lcov-report/es/lib/Typedown/Typedown.js.html +887 -0
  49. package/artifacts/coverage-jest/lcov-report/es/lib/Typedown/index.html +132 -0
  50. package/artifacts/coverage-jest/lcov-report/es/lib/Typedown/index.js.html +140 -0
  51. package/artifacts/coverage-jest/lcov-report/es/lib/constants/eventCodes.js.html +209 -0
  52. package/artifacts/coverage-jest/lcov-report/es/lib/constants/index.html +117 -0
  53. package/artifacts/coverage-jest/lcov-report/es/lib/contexts/SettingsContext.js.html +206 -0
  54. package/artifacts/coverage-jest/lcov-report/es/lib/contexts/index.html +132 -0
  55. package/artifacts/coverage-jest/lcov-report/es/lib/contexts/index.js.html +140 -0
  56. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/index.html +252 -0
  57. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/index.js.html +374 -0
  58. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/settingsHooks/index.html +147 -0
  59. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/settingsHooks/index.js.html +164 -0
  60. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/settingsHooks/useSettingSection.js.html +305 -0
  61. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/settingsHooks/useSettings.js.html +584 -0
  62. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/typedownHooks/index.html +162 -0
  63. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/typedownHooks/index.js.html +188 -0
  64. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/typedownHooks/useTypedown.js.html +644 -0
  65. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/typedownHooks/useTypedownData.js.html +335 -0
  66. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/typedownHooks/useTypedownToggle.js.html +350 -0
  67. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/useActiveElement.js.html +323 -0
  68. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/useHelperApp.js.html +488 -0
  69. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/useKiwtFieldArray.js.html +509 -0
  70. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/useKiwtSASQuery.js.html +467 -0
  71. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/useLocalStorageState.js.html +329 -0
  72. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/useMutateRefdataValue.js.html +488 -0
  73. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/useQIndex.js.html +407 -0
  74. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/useRefdata.js.html +401 -0
  75. package/artifacts/coverage-jest/lcov-report/es/lib/hooks/useTemplates.js.html +314 -0
  76. package/artifacts/coverage-jest/lcov-report/es/lib/utils/buildUrl.js.html +296 -0
  77. package/artifacts/coverage-jest/lcov-report/es/lib/utils/generateKiwtQuery.js.html +230 -0
  78. package/artifacts/coverage-jest/lcov-report/es/lib/utils/generateKiwtQueryParams.js.html +545 -0
  79. package/artifacts/coverage-jest/lcov-report/es/lib/utils/getFocusableElements.js.html +572 -0
  80. package/artifacts/coverage-jest/lcov-report/es/lib/utils/index.html +237 -0
  81. package/artifacts/coverage-jest/lcov-report/es/lib/utils/index.js.html +284 -0
  82. package/artifacts/coverage-jest/lcov-report/es/lib/utils/renderHelpText.js.html +410 -0
  83. package/artifacts/coverage-jest/lcov-report/es/lib/utils/selectorSafe.js.html +209 -0
  84. package/artifacts/coverage-jest/lcov-report/es/lib/utils/sortByLabel.js.html +248 -0
  85. package/artifacts/coverage-jest/lcov-report/es/lib/utils/toCamelCase.js.html +227 -0
  86. package/artifacts/coverage-jest/lcov-report/favicon.png +0 -0
  87. package/artifacts/coverage-jest/lcov-report/index.html +717 -0
  88. package/artifacts/coverage-jest/lcov-report/prettify.css +1 -0
  89. package/artifacts/coverage-jest/lcov-report/prettify.js +2 -0
  90. package/artifacts/coverage-jest/lcov-report/sort-arrow-sprite.png +0 -0
  91. package/artifacts/coverage-jest/lcov-report/sorter.js +196 -0
  92. package/artifacts/coverage-jest/lcov-report/src/index.html +117 -0
  93. package/artifacts/coverage-jest/lcov-report/src/index.js.html +305 -0
  94. package/artifacts/coverage-jest/lcov-report/src/lib/ActionList/ActionList.js.html +248 -0
  95. package/artifacts/coverage-jest/lcov-report/src/lib/ActionList/ActionListFieldArray.js.html +764 -0
  96. package/artifacts/coverage-jest/lcov-report/src/lib/ActionList/index.html +147 -0
  97. package/artifacts/coverage-jest/lcov-report/src/lib/ActionList/index.js.html +89 -0
  98. package/artifacts/coverage-jest/lcov-report/src/lib/EditableRefdataList/EditableRefdataList.js.html +362 -0
  99. package/artifacts/coverage-jest/lcov-report/src/lib/EditableRefdataList/index.html +132 -0
  100. package/artifacts/coverage-jest/lcov-report/src/lib/EditableRefdataList/index.js.html +86 -0
  101. package/artifacts/coverage-jest/lcov-report/src/lib/EditableSettingsList/EditableSettingsList.js.html +224 -0
  102. package/artifacts/coverage-jest/lcov-report/src/lib/EditableSettingsList/EditableSettingsListFieldArray.js.html +212 -0
  103. package/artifacts/coverage-jest/lcov-report/src/lib/EditableSettingsList/SettingField/EditSettingValue.js.html +308 -0
  104. package/artifacts/coverage-jest/lcov-report/src/lib/EditableSettingsList/SettingField/RenderSettingValue.js.html +260 -0
  105. package/artifacts/coverage-jest/lcov-report/src/lib/EditableSettingsList/SettingField/SettingField.js.html +437 -0
  106. package/artifacts/coverage-jest/lcov-report/src/lib/EditableSettingsList/SettingField/index.html +162 -0
  107. package/artifacts/coverage-jest/lcov-report/src/lib/EditableSettingsList/SettingField/index.js.html +95 -0
  108. package/artifacts/coverage-jest/lcov-report/src/lib/EditableSettingsList/index.html +147 -0
  109. package/artifacts/coverage-jest/lcov-report/src/lib/EditableSettingsList/index.js.html +95 -0
  110. package/artifacts/coverage-jest/lcov-report/src/lib/NoResultsMessage/NoResultsMessage.js.html +320 -0
  111. package/artifacts/coverage-jest/lcov-report/src/lib/NoResultsMessage/index.html +132 -0
  112. package/artifacts/coverage-jest/lcov-report/src/lib/NoResultsMessage/index.js.html +89 -0
  113. package/artifacts/coverage-jest/lcov-report/src/lib/QueryTypedown/QueryTypedown.js.html +185 -0
  114. package/artifacts/coverage-jest/lcov-report/src/lib/QueryTypedown/index.html +132 -0
  115. package/artifacts/coverage-jest/lcov-report/src/lib/QueryTypedown/index.js.html +89 -0
  116. package/artifacts/coverage-jest/lcov-report/src/lib/RefdataButtons/RefdataButtons.js.html +371 -0
  117. package/artifacts/coverage-jest/lcov-report/src/lib/RefdataButtons/index.html +132 -0
  118. package/artifacts/coverage-jest/lcov-report/src/lib/RefdataButtons/index.js.html +89 -0
  119. package/artifacts/coverage-jest/lcov-report/src/lib/SASQLookupComponent/SASQLookupComponent.js.html +932 -0
  120. package/artifacts/coverage-jest/lcov-report/src/lib/SASQLookupComponent/index.html +132 -0
  121. package/artifacts/coverage-jest/lcov-report/src/lib/SASQLookupComponent/index.js.html +89 -0
  122. package/artifacts/coverage-jest/lcov-report/src/lib/SASQRoute/SASQRoute.js.html +275 -0
  123. package/artifacts/coverage-jest/lcov-report/src/lib/SASQRoute/index.html +132 -0
  124. package/artifacts/coverage-jest/lcov-report/src/lib/SASQRoute/index.js.html +89 -0
  125. package/artifacts/coverage-jest/lcov-report/src/lib/SASQViewComponent/SASQViewComponent.js.html +251 -0
  126. package/artifacts/coverage-jest/lcov-report/src/lib/SASQViewComponent/index.html +132 -0
  127. package/artifacts/coverage-jest/lcov-report/src/lib/SASQViewComponent/index.js.html +89 -0
  128. package/artifacts/coverage-jest/lcov-report/src/lib/SearchField/SearchField.js.html +215 -0
  129. package/artifacts/coverage-jest/lcov-report/src/lib/SearchField/index.html +132 -0
  130. package/artifacts/coverage-jest/lcov-report/src/lib/SearchField/index.js.html +89 -0
  131. package/artifacts/coverage-jest/lcov-report/src/lib/SettingPage/SettingPage.js.html +212 -0
  132. package/artifacts/coverage-jest/lcov-report/src/lib/SettingPage/SettingPagePane.js.html +149 -0
  133. package/artifacts/coverage-jest/lcov-report/src/lib/SettingPage/index.html +147 -0
  134. package/artifacts/coverage-jest/lcov-report/src/lib/SettingPage/index.js.html +92 -0
  135. package/artifacts/coverage-jest/lcov-report/src/lib/TypeDown/TypeDown.js.html +764 -0
  136. package/artifacts/coverage-jest/lcov-report/src/lib/TypeDown/index.html +132 -0
  137. package/artifacts/coverage-jest/lcov-report/src/lib/TypeDown/index.js.html +89 -0
  138. package/artifacts/coverage-jest/lcov-report/src/lib/Typedown/Typedown.js.html +788 -0
  139. package/artifacts/coverage-jest/lcov-report/src/lib/Typedown/index.html +132 -0
  140. package/artifacts/coverage-jest/lcov-report/src/lib/Typedown/index.js.html +89 -0
  141. package/artifacts/coverage-jest/lcov-report/src/lib/constants/eventCodes.js.html +95 -0
  142. package/artifacts/coverage-jest/lcov-report/src/lib/constants/index.html +117 -0
  143. package/artifacts/coverage-jest/lcov-report/src/lib/contexts/SettingsContext.js.html +98 -0
  144. package/artifacts/coverage-jest/lcov-report/src/lib/contexts/index.html +132 -0
  145. package/artifacts/coverage-jest/lcov-report/src/lib/contexts/index.js.html +86 -0
  146. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/index.html +252 -0
  147. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/index.js.html +116 -0
  148. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/settingsHooks/index.html +147 -0
  149. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/settingsHooks/index.js.html +92 -0
  150. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/settingsHooks/useSettingSection.js.html +164 -0
  151. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/settingsHooks/useSettings.js.html +377 -0
  152. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/typedownHooks/index.html +162 -0
  153. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/typedownHooks/index.js.html +95 -0
  154. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/typedownHooks/useTypedown.js.html +524 -0
  155. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/typedownHooks/useTypedownData.js.html +164 -0
  156. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/typedownHooks/useTypedownToggle.js.html +164 -0
  157. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/useActiveElement.js.html +158 -0
  158. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/useHelperApp.js.html +284 -0
  159. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/useKiwtFieldArray.js.html +275 -0
  160. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/useKiwtSASQuery.js.html +179 -0
  161. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/useLocalStorageState.js.html +137 -0
  162. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/useMutateRefdataValue.js.html +302 -0
  163. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/useQIndex.js.html +209 -0
  164. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/useRefdata.js.html +287 -0
  165. package/artifacts/coverage-jest/lcov-report/src/lib/hooks/useTemplates.js.html +167 -0
  166. package/artifacts/coverage-jest/lcov-report/src/lib/utils/buildUrl.js.html +194 -0
  167. package/artifacts/coverage-jest/lcov-report/src/lib/utils/generateKiwtQuery.js.html +110 -0
  168. package/artifacts/coverage-jest/lcov-report/src/lib/utils/generateKiwtQueryParams.js.html +287 -0
  169. package/artifacts/coverage-jest/lcov-report/src/lib/utils/getFocusableElements.js.html +380 -0
  170. package/artifacts/coverage-jest/lcov-report/src/lib/utils/index.html +237 -0
  171. package/artifacts/coverage-jest/lcov-report/src/lib/utils/index.js.html +116 -0
  172. package/artifacts/coverage-jest/lcov-report/src/lib/utils/renderHelpText.js.html +167 -0
  173. package/artifacts/coverage-jest/lcov-report/src/lib/utils/selectorSafe.js.html +104 -0
  174. package/artifacts/coverage-jest/lcov-report/src/lib/utils/sortByLabel.js.html +131 -0
  175. package/artifacts/coverage-jest/lcov-report/src/lib/utils/toCamelCase.js.html +128 -0
  176. package/artifacts/coverage-jest/lcov.info +10040 -0
  177. package/es/artifacts/coverage-jest/lcov-report/block-navigation.js +109 -0
  178. package/es/artifacts/coverage-jest/lcov-report/prettify.js +998 -0
  179. package/es/artifacts/coverage-jest/lcov-report/sorter.js +238 -0
  180. package/es/index.js +104 -12
  181. package/es/lib/ActionList/ActionList.js +58 -24
  182. package/es/lib/ActionList/ActionListFieldArray.js +129 -84
  183. package/es/lib/ActionList/index.js +7 -3
  184. package/es/lib/EditableRefdataList/EditableRefdataList.js +52 -16
  185. package/es/lib/EditableRefdataList/index.js +7 -3
  186. package/es/lib/EditableSettingsList/EditableSettingsList.js +90 -0
  187. package/es/lib/{Settings → EditableSettingsList}/EditableSettingsListFieldArray.js +45 -14
  188. package/es/lib/EditableSettingsList/EditableSettingsListFieldArray.test.js +181 -0
  189. package/es/lib/{Settings → EditableSettingsList/SettingField}/EditSettingValue.js +72 -9
  190. package/es/lib/EditableSettingsList/SettingField/EditSettingValue.test.js +447 -0
  191. package/es/lib/{Settings → EditableSettingsList/SettingField}/RenderSettingValue.js +45 -7
  192. package/es/lib/EditableSettingsList/SettingField/RenderSettingValue.test.js +495 -0
  193. package/es/lib/{Settings → EditableSettingsList/SettingField}/SettingField.js +79 -36
  194. package/es/lib/EditableSettingsList/SettingField/SettingField.test.js +180 -0
  195. package/es/lib/EditableSettingsList/SettingField/index.js +35 -0
  196. package/es/lib/EditableSettingsList/index.js +35 -0
  197. package/es/lib/NoResultsMessage/NoResultsMessage.js +122 -0
  198. package/es/lib/NoResultsMessage/index.js +19 -0
  199. package/es/lib/QueryTypedown/QueryTypedown.js +110 -0
  200. package/es/lib/QueryTypedown/index.js +19 -0
  201. package/es/lib/RefdataButtons/RefdataButtons.js +143 -0
  202. package/es/lib/RefdataButtons/index.js +19 -0
  203. package/es/lib/SASQLookupComponent/SASQLookupComponent.js +344 -0
  204. package/es/lib/SASQLookupComponent/index.js +19 -0
  205. package/es/lib/SASQRoute/SASQRoute.js +107 -0
  206. package/es/lib/SASQRoute/index.js +19 -0
  207. package/es/lib/SASQViewComponent/SASQViewComponent.js +110 -0
  208. package/es/lib/SASQViewComponent/index.js +19 -0
  209. package/es/lib/SearchField/SearchField.js +48 -13
  210. package/es/lib/SearchField/index.js +6 -2
  211. package/es/lib/SettingPage/SettingPage.js +99 -0
  212. package/es/lib/SettingPage/SettingPagePane.js +83 -0
  213. package/es/lib/SettingPage/index.js +27 -0
  214. package/es/lib/TypeDown/TypeDown.js +156 -95
  215. package/es/lib/TypeDown/index.js +6 -2
  216. package/es/lib/Typedown/Typedown.js +269 -0
  217. package/es/lib/Typedown/index.js +19 -0
  218. package/es/lib/constants/eventCodes.js +31 -1
  219. package/es/lib/contexts/SettingsContext.js +41 -0
  220. package/es/lib/contexts/index.js +19 -0
  221. package/es/lib/hooks/index.js +49 -7
  222. package/es/lib/hooks/settingsHooks/index.js +27 -0
  223. package/es/lib/hooks/settingsHooks/useSettingSection.js +74 -0
  224. package/es/lib/{Settings → hooks/settingsHooks}/useSettings.js +70 -21
  225. package/es/lib/hooks/typedownHooks/index.js +8 -28
  226. package/es/lib/hooks/typedownHooks/useTypedown.js +132 -11
  227. package/es/lib/hooks/typedownHooks/useTypedownData.js +35 -2
  228. package/es/lib/hooks/typedownHooks/useTypedownToggle.js +39 -6
  229. package/es/lib/hooks/useActiveElement.js +33 -2
  230. package/es/lib/hooks/useHelperApp.js +48 -9
  231. package/es/lib/hooks/useKiwtFieldArray.js +142 -0
  232. package/es/lib/hooks/useKiwtSASQuery.js +61 -6
  233. package/es/lib/hooks/useLocalStorageState.js +82 -0
  234. package/es/lib/hooks/useMutateRefdataValue.js +42 -9
  235. package/es/lib/hooks/useQIndex.js +108 -0
  236. package/es/lib/hooks/useRefdata.js +63 -13
  237. package/es/lib/hooks/useTemplates.js +36 -3
  238. package/es/lib/utils/buildUrl.js +43 -10
  239. package/es/lib/utils/generateKiwtQuery.js +31 -92
  240. package/es/lib/utils/generateKiwtQueryParams.js +154 -0
  241. package/es/lib/utils/index.js +47 -3
  242. package/es/lib/utils/renderHelpText.js +109 -0
  243. package/es/lib/utils/selectorSafe.js +31 -2
  244. package/es/lib/utils/sortByLabel.js +55 -0
  245. package/es/lib/utils/toCamelCase.js +48 -0
  246. package/jest.config.js +15 -1
  247. package/junit.xml +79 -0
  248. package/package.json +17 -10
  249. package/src/artifacts/coverage-jest/lcov-report/ActionList/ActionList.js.html +248 -0
  250. package/src/artifacts/coverage-jest/lcov-report/ActionList/ActionListFieldArray.js.html +764 -0
  251. package/src/artifacts/coverage-jest/lcov-report/ActionList/index.html +147 -0
  252. package/src/artifacts/coverage-jest/lcov-report/ActionList/index.js.html +89 -0
  253. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/EditableRefdataList.js.html +362 -0
  254. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/index.html +132 -0
  255. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/index.js.html +89 -0
  256. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/EditableSettingsList.js.html +224 -0
  257. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/EditableSettingsListFieldArray.js.html +212 -0
  258. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/EditSettingValue.js.html +377 -0
  259. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/RenderSettingValue.js.html +263 -0
  260. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/SettingField.js.html +437 -0
  261. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/index.html +162 -0
  262. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/index.js.html +95 -0
  263. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/index.html +147 -0
  264. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/index.js.html +95 -0
  265. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/NoResultsMessage.js.html +320 -0
  266. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/index.html +132 -0
  267. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/index.js.html +89 -0
  268. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/QueryTypedown.js.html +185 -0
  269. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/index.html +132 -0
  270. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/index.js.html +89 -0
  271. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/RefdataButtons.js.html +371 -0
  272. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/index.html +132 -0
  273. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/index.js.html +89 -0
  274. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/SASQLookupComponent.js.html +932 -0
  275. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/index.html +132 -0
  276. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/index.js.html +89 -0
  277. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/SASQRoute.js.html +275 -0
  278. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/index.html +132 -0
  279. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/index.js.html +89 -0
  280. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/SASQViewComponent.js.html +251 -0
  281. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/index.html +132 -0
  282. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/index.js.html +89 -0
  283. package/src/artifacts/coverage-jest/lcov-report/SearchField/SearchField.js.html +215 -0
  284. package/src/artifacts/coverage-jest/lcov-report/SearchField/index.html +132 -0
  285. package/src/artifacts/coverage-jest/lcov-report/SearchField/index.js.html +89 -0
  286. package/src/artifacts/coverage-jest/lcov-report/SettingPage/SettingPage.js.html +212 -0
  287. package/src/artifacts/coverage-jest/lcov-report/SettingPage/SettingPagePane.js.html +179 -0
  288. package/src/artifacts/coverage-jest/lcov-report/SettingPage/index.html +147 -0
  289. package/src/artifacts/coverage-jest/lcov-report/SettingPage/index.js.html +92 -0
  290. package/src/artifacts/coverage-jest/lcov-report/TypeDown/TypeDown.js.html +770 -0
  291. package/src/artifacts/coverage-jest/lcov-report/TypeDown/index.html +132 -0
  292. package/src/artifacts/coverage-jest/lcov-report/TypeDown/index.js.html +89 -0
  293. package/src/artifacts/coverage-jest/lcov-report/Typedown/Typedown.js.html +791 -0
  294. package/src/artifacts/coverage-jest/lcov-report/Typedown/index.html +132 -0
  295. package/src/artifacts/coverage-jest/lcov-report/Typedown/index.js.html +89 -0
  296. package/src/artifacts/coverage-jest/lcov-report/base.css +224 -0
  297. package/src/artifacts/coverage-jest/lcov-report/block-navigation.js +87 -0
  298. package/src/artifacts/coverage-jest/lcov-report/constants/eventCodes.js.html +95 -0
  299. package/src/artifacts/coverage-jest/lcov-report/constants/index.html +117 -0
  300. package/src/artifacts/coverage-jest/lcov-report/contexts/SettingsContext.js.html +98 -0
  301. package/src/artifacts/coverage-jest/lcov-report/contexts/index.html +132 -0
  302. package/src/artifacts/coverage-jest/lcov-report/contexts/index.js.html +92 -0
  303. package/src/artifacts/coverage-jest/lcov-report/favicon.png +0 -0
  304. package/src/artifacts/coverage-jest/lcov-report/hooks/index.html +252 -0
  305. package/src/artifacts/coverage-jest/lcov-report/hooks/index.js.html +116 -0
  306. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/index.html +147 -0
  307. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/index.js.html +92 -0
  308. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/useSettingSection.js.html +164 -0
  309. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/useSettings.js.html +404 -0
  310. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/index.html +162 -0
  311. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/index.js.html +95 -0
  312. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedown.js.html +524 -0
  313. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedownData.js.html +164 -0
  314. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedownToggle.js.html +164 -0
  315. package/src/artifacts/coverage-jest/lcov-report/hooks/useActiveElement.js.html +158 -0
  316. package/src/artifacts/coverage-jest/lcov-report/hooks/useHelperApp.js.html +284 -0
  317. package/src/artifacts/coverage-jest/lcov-report/hooks/useKiwtFieldArray.js.html +275 -0
  318. package/src/artifacts/coverage-jest/lcov-report/hooks/useKiwtSASQuery.js.html +179 -0
  319. package/src/artifacts/coverage-jest/lcov-report/hooks/useLocalStorageState.js.html +137 -0
  320. package/src/artifacts/coverage-jest/lcov-report/hooks/useMutateRefdataValue.js.html +302 -0
  321. package/src/artifacts/coverage-jest/lcov-report/hooks/useQIndex.js.html +209 -0
  322. package/src/artifacts/coverage-jest/lcov-report/hooks/useRefdata.js.html +287 -0
  323. package/src/artifacts/coverage-jest/lcov-report/hooks/useTemplates.js.html +167 -0
  324. package/src/artifacts/coverage-jest/lcov-report/index.html +402 -0
  325. package/src/artifacts/coverage-jest/lcov-report/prettify.css +1 -0
  326. package/src/artifacts/coverage-jest/lcov-report/prettify.js +2 -0
  327. package/src/artifacts/coverage-jest/lcov-report/sort-arrow-sprite.png +0 -0
  328. package/src/artifacts/coverage-jest/lcov-report/sorter.js +196 -0
  329. package/src/artifacts/coverage-jest/lcov-report/utils/buildUrl.js.html +194 -0
  330. package/src/artifacts/coverage-jest/lcov-report/utils/generateKiwtQuery.js.html +110 -0
  331. package/src/artifacts/coverage-jest/lcov-report/utils/generateKiwtQueryParams.js.html +287 -0
  332. package/src/artifacts/coverage-jest/lcov-report/utils/getFocusableElements.js.html +386 -0
  333. package/src/artifacts/coverage-jest/lcov-report/utils/index.html +237 -0
  334. package/src/artifacts/coverage-jest/lcov-report/utils/index.js.html +116 -0
  335. package/src/artifacts/coverage-jest/lcov-report/utils/renderHelpText.js.html +167 -0
  336. package/src/artifacts/coverage-jest/lcov-report/utils/selectorSafe.js.html +104 -0
  337. package/src/artifacts/coverage-jest/lcov-report/utils/sortByLabel.js.html +131 -0
  338. package/src/artifacts/coverage-jest/lcov-report/utils/toCamelCase.js.html +128 -0
  339. package/src/artifacts/coverage-jest/lcov.info +2073 -0
  340. package/src/index.js +44 -6
  341. package/src/lib/ActionList/index.js +1 -1
  342. package/src/lib/EditableRefdataList/EditableRefdataList.js +1 -1
  343. package/src/lib/EditableRefdataList/README.md +1 -1
  344. package/src/lib/EditableRefdataList/index.js +1 -1
  345. package/src/lib/{Settings → EditableSettingsList}/EditableSettingsList.js +0 -0
  346. package/src/lib/{Settings → EditableSettingsList}/EditableSettingsListFieldArray.js +2 -2
  347. package/src/lib/EditableSettingsList/EditableSettingsListFieldArray.test.js +111 -0
  348. package/src/lib/{Settings → EditableSettingsList/SettingField}/EditSettingValue.js +24 -1
  349. package/src/lib/EditableSettingsList/SettingField/EditSettingValue.test.js +379 -0
  350. package/src/lib/{Settings → EditableSettingsList/SettingField}/RenderSettingValue.js +2 -1
  351. package/src/lib/EditableSettingsList/SettingField/RenderSettingValue.test.js +368 -0
  352. package/src/lib/{Settings → EditableSettingsList/SettingField}/SettingField.js +7 -7
  353. package/src/lib/EditableSettingsList/SettingField/SettingField.test.js +80 -0
  354. package/src/lib/EditableSettingsList/SettingField/index.js +3 -0
  355. package/src/lib/EditableSettingsList/index.js +3 -0
  356. package/src/lib/NoResultsMessage/NoResultsMessage.js +78 -0
  357. package/src/lib/NoResultsMessage/index.js +1 -0
  358. package/src/lib/QueryTypedown/QueryTypedown.js +33 -0
  359. package/src/lib/QueryTypedown/index.js +1 -0
  360. package/src/lib/{Settings → RefdataButtons}/RefdataButtons.js +1 -1
  361. package/src/lib/RefdataButtons/index.js +1 -0
  362. package/src/lib/SASQLookupComponent/SASQLookupComponent.js +282 -0
  363. package/src/lib/SASQLookupComponent/index.js +1 -0
  364. package/src/lib/SASQRoute/README.md +55 -0
  365. package/src/lib/SASQRoute/SASQRoute.js +63 -0
  366. package/src/lib/SASQRoute/index.js +1 -0
  367. package/src/lib/SASQViewComponent/SASQViewComponent.js +55 -0
  368. package/src/lib/SASQViewComponent/index.js +1 -0
  369. package/src/lib/{Settings → SettingPage}/SettingPage.js +5 -5
  370. package/src/lib/{Settings → SettingPage}/SettingPagePane.js +12 -2
  371. package/src/lib/SettingPage/index.js +2 -0
  372. package/src/lib/TypeDown/README.md +1 -0
  373. package/src/lib/TypeDown/TypeDown.js +24 -3
  374. package/src/lib/Typedown/README.md +115 -0
  375. package/src/lib/Typedown/Typedown.js +235 -0
  376. package/src/lib/Typedown/index.js +1 -0
  377. package/src/lib/{Settings → contexts}/SettingsContext.js +1 -1
  378. package/src/lib/contexts/index.js +2 -0
  379. package/src/lib/hooks/README.md +109 -2
  380. package/src/lib/hooks/index.js +4 -0
  381. package/src/lib/hooks/settingsHooks/index.js +2 -0
  382. package/src/lib/{Settings → hooks/settingsHooks}/useSettingSection.js +0 -0
  383. package/src/lib/{Settings → hooks/settingsHooks}/useSettings.js +14 -6
  384. package/src/lib/hooks/typedownHooks/index.js +0 -3
  385. package/src/lib/hooks/typedownHooks/useTypedown.js +95 -11
  386. package/src/lib/hooks/useHelperApp.js +5 -1
  387. package/src/lib/hooks/useKiwtFieldArray.js +63 -0
  388. package/src/lib/hooks/useKiwtSASQuery.js +9 -1
  389. package/src/lib/hooks/useLocalStorageState.js +17 -0
  390. package/src/lib/hooks/useQIndex.js +41 -0
  391. package/src/lib/hooks/useRefdata.js +23 -6
  392. package/src/lib/utils/README.md +39 -1
  393. package/src/lib/utils/generateKiwtQuery.js +3 -57
  394. package/src/lib/utils/generateKiwtQueryParams.js +67 -0
  395. package/src/lib/utils/index.js +8 -0
  396. package/src/lib/{Settings/utils → utils}/renderHelpText.js +1 -1
  397. package/src/lib/{Settings/utils → utils}/sortByLabel.js +1 -1
  398. package/src/lib/{Settings/utils → utils}/toCamelCase.js +0 -0
  399. package/styles/NoResultsMessage.css +38 -0
  400. package/test/helpers/index.js +1 -0
  401. package/test/helpers/translationsProperties.js +40 -0
  402. package/test/jest/helpers/KintHarness.js +36 -0
  403. package/test/jest/helpers/index.js +2 -0
  404. package/test/jest/helpers/renderWithKintHarness.js +15 -0
  405. package/test/jest/jest-transformer.js +4 -0
  406. package/test/jest/setupTests.js +1 -0
  407. package/translations/stripes-kint-components/en.json +6 -1
  408. package/yarn-error.log +15050 -0
  409. package/babelOptions.js +0 -30
  410. package/es/lib/Settings/EditableSettingsList.js +0 -57
  411. package/es/lib/Settings/RefdataButtons.js +0 -100
  412. package/es/lib/Settings/SettingPage.js +0 -64
  413. package/es/lib/Settings/SettingPagePane.js +0 -43
  414. package/es/lib/Settings/SettingsContext.js +0 -18
  415. package/es/lib/Settings/index.js +0 -71
  416. package/es/lib/Settings/useSettingSection.js +0 -41
  417. package/es/lib/Settings/utils/index.js +0 -31
  418. package/es/lib/Settings/utils/renderHelpText.js +0 -57
  419. package/es/lib/Settings/utils/sortByLabel.js +0 -26
  420. package/es/lib/Settings/utils/toCamelCase.js +0 -19
  421. package/es/lib/hooks/typedownHooks/useTypedownFooter.js +0 -47
  422. package/es/lib/hooks/typedownHooks/useTypedownList.js +0 -45
  423. package/es/lib/hooks/typedownHooks/useTypedownSearchField.js +0 -47
  424. package/es/lib/utils/getFocusableElements.js +0 -132
  425. package/src/lib/Settings/index.js +0 -8
  426. package/src/lib/Settings/utils/index.js +0 -3
  427. package/src/lib/hooks/typedownHooks/useTypedownFooter.js +0 -43
  428. package/src/lib/hooks/typedownHooks/useTypedownList.js +0 -36
  429. package/src/lib/hooks/typedownHooks/useTypedownSearchField.js +0 -39
  430. package/src/lib/utils/getFocusableElements.js +0 -99
@@ -0,0 +1,282 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { FormattedMessage } from 'react-intl';
4
+ import { useInfiniteQuery } from 'react-query';
5
+
6
+ import {
7
+ useNamespace,
8
+ useOkapiKy
9
+ } from '@folio/stripes/core';
10
+
11
+ import {
12
+ SearchAndSortQuery,
13
+ PersistedPaneset,
14
+ } from '@folio/stripes/smart-components';
15
+
16
+ import {
17
+ Button,
18
+ IconButton,
19
+ Icon,
20
+ MultiColumnList,
21
+ Pane,
22
+ PaneMenu,
23
+ SearchField,
24
+ } from '@folio/stripes/components';
25
+ import NoResultsMessage from '../NoResultsMessage';
26
+
27
+ import { generateKiwtQuery } from '../utils';
28
+ import { useKiwtSASQuery, useLocalStorageState } from '../hooks';
29
+
30
+
31
+ const SASQLookupComponent = ({
32
+ children,
33
+ fetchParameters = {},
34
+ FilterComponent = () => null,
35
+ history,
36
+ id,
37
+ location,
38
+ mainPaneProps,
39
+ match,
40
+ mclProps,
41
+ noSearchField,
42
+ path,
43
+ resultColumns = [],
44
+ RenderBody,
45
+ sasqProps,
46
+ }) => {
47
+ const { query, queryGetter, querySetter } = useKiwtSASQuery();
48
+ const { 0: namespace } = useNamespace();
49
+ const ky = useOkapiKy();
50
+
51
+ const filterPaneVisibileKey = `${namespace}-${id}-filterPaneVisibility`;
52
+
53
+ const fetchPageData = ({ pageParam = 0 }) => {
54
+ const queryMap = fetchParameters.SASQ_MAP;
55
+ queryMap.offset = pageParam;
56
+ return ky(`${fetchParameters.endpoint}${generateKiwtQuery(queryMap, query)}`).json();
57
+ };
58
+
59
+ const [filterPaneVisible, setFilterPaneVisible] = useLocalStorageState(filterPaneVisibileKey, true);
60
+ const toggleFilterPane = () => setFilterPaneVisible(!filterPaneVisible);
61
+
62
+ const {
63
+ data: totalData = {},
64
+ error,
65
+ isError,
66
+ isLoading,
67
+ fetchNextPage,
68
+ } = useInfiniteQuery(
69
+ [namespace, id, 'data', query],
70
+ fetchPageData
71
+ );
72
+
73
+ const data = totalData.pages?.reduce(
74
+ (acc, curr) => {
75
+ const newAcc = { ...acc };
76
+ for (const [key, value] of Object.entries(curr)) {
77
+ if (
78
+ key !== 'page' &&
79
+ key !== 'result' &&
80
+ acc[key] !== value
81
+ ) {
82
+ newAcc[key] = value;
83
+ }
84
+ }
85
+
86
+ const newResults = [...(acc.results ?? [])];
87
+ newResults.push(...(curr.results ?? []));
88
+ newAcc.results = newResults;
89
+
90
+ return newAcc;
91
+ },
92
+ {}
93
+ ) ?? {};
94
+
95
+ // TODO focus handling to stop redraw movin to top
96
+
97
+ const onNeedMoreData = (_askAmount, index) => {
98
+ fetchNextPage({ pageParam: index });
99
+ };
100
+
101
+ // Build the map of column definitions
102
+ const columnMapping = Object.fromEntries(
103
+ resultColumns.map(e => [e.propertyPath, e.label])
104
+ );
105
+
106
+ // Build the list of visible columns
107
+ const visibleColumns = resultColumns.map(e => e.propertyPath);
108
+
109
+ return (
110
+ <SearchAndSortQuery
111
+ initialSearchState={{ query: '' }}
112
+ queryGetter={queryGetter}
113
+ querySetter={querySetter}
114
+ {...sasqProps}
115
+ >
116
+ {
117
+ ({
118
+ activeFilters,
119
+ filterChanged,
120
+ getFilterHandlers,
121
+ getSearchHandlers,
122
+ onSort,
123
+ onSubmitSearch,
124
+ resetAll,
125
+ searchChanged,
126
+ searchValue
127
+ }) => {
128
+ const searchHandlers = getSearchHandlers();
129
+ const sortOrder = query.sort ?? '';
130
+ const disableReset = !filterChanged && !searchChanged;
131
+
132
+ const filterCount = activeFilters.string ? activeFilters.string.split(',').length : 0;
133
+
134
+ const TableBody = () => (
135
+ <MultiColumnList
136
+ autosize
137
+ columnMapping={columnMapping}
138
+ contentData={data?.results}
139
+ isEmptyMessage={
140
+ <NoResultsMessage
141
+ {...{
142
+ error,
143
+ isError,
144
+ isLoading,
145
+ filterPaneIsVisible: filterPaneVisible,
146
+ searchTerm: query.query,
147
+ toggleFilterPane
148
+ }}
149
+ />
150
+ }
151
+ isSelected={({ item }) => item.id === match?.params?.id}
152
+ onHeaderClick={onSort}
153
+ onNeedMoreData={onNeedMoreData}
154
+ onRowClick={(_e, rowData) => {
155
+ history.push(`${path}/${rowData?.id}${location?.search}`);
156
+ }}
157
+ pagingType="click"
158
+ sortDirection={sortOrder.startsWith('-') ? 'descending' : 'ascending'}
159
+ sortOrder={sortOrder.replace(/^-/, '').replace(/,.*/, '')}
160
+ totalCount={data.totalRecords}
161
+ virtualize
162
+ visibleColumns={visibleColumns}
163
+ {...mclProps}
164
+ />
165
+ );
166
+
167
+ const Body = RenderBody ?? TableBody;
168
+
169
+ return (
170
+ <PersistedPaneset
171
+ appId={namespace}
172
+ id={`${id}-paneset`}
173
+ >
174
+ {filterPaneVisible &&
175
+ <Pane
176
+ defaultWidth="20%"
177
+ lastMenu={
178
+ <PaneMenu>
179
+ <IconButton
180
+ icon="caret-left"
181
+ onClick={() => setFilterPaneVisible(false)}
182
+ />
183
+ </PaneMenu>
184
+ }
185
+ paneTitle={<FormattedMessage id="stripes-smart-components.searchAndFilter" />}
186
+ >
187
+ <form onSubmit={onSubmitSearch}>
188
+ {!noSearchField &&
189
+ <>
190
+ <SearchField
191
+ autoFocus
192
+ name="query"
193
+ onChange={searchHandlers.query}
194
+ onClear={searchHandlers.reset}
195
+ value={searchValue.query}
196
+ />
197
+ <Button
198
+ buttonStyle="primary"
199
+ disabled={!searchValue.query}
200
+ fullWidth
201
+ type="submit"
202
+ >
203
+ <FormattedMessage id="stripes-smart-components.search" />
204
+ </Button>
205
+ <Button
206
+ buttonStyle="none"
207
+ disabled={disableReset}
208
+ id="clickable-reset-all"
209
+ onClick={resetAll}
210
+ >
211
+ <Icon icon="times-circle-solid">
212
+ <FormattedMessage id="stripes-smart-components.resetAll" />
213
+ </Icon>
214
+ </Button>
215
+ </>
216
+ }
217
+ <FilterComponent
218
+ activeFilters={activeFilters.state}
219
+ filterChanged={filterChanged}
220
+ filterHandlers={getFilterHandlers()}
221
+ resetAll={resetAll}
222
+ searchChanged={searchChanged}
223
+ searchHandlers={getSearchHandlers()}
224
+ searchValue={searchValue}
225
+ />
226
+ </form>
227
+ </Pane>
228
+ }
229
+ <Pane
230
+ defaultWidth="fill"
231
+ firstMenu={!filterPaneVisible ?
232
+ <PaneMenu>
233
+ <IconButton
234
+ badgeCount={filterCount}
235
+ icon="caret-right"
236
+ onClick={() => setFilterPaneVisible(true)}
237
+ />
238
+ </PaneMenu>
239
+ :
240
+ null}
241
+ paneSub={<FormattedMessage id="stripes-kint-components.sasqLookupComponent.mainPane.found" values={{ total: data?.total }} />}
242
+ {...mainPaneProps}
243
+ >
244
+ <Body data={data} />
245
+ </Pane>
246
+ {children}
247
+ </PersistedPaneset>
248
+ );
249
+ }
250
+ }
251
+ </SearchAndSortQuery>
252
+ );
253
+ };
254
+
255
+ SASQLookupComponent.propTypes = {
256
+ children: PropTypes.oneOfType([
257
+ PropTypes.func,
258
+ PropTypes.node
259
+ ]),
260
+ fetchParameters: PropTypes.object,
261
+ FilterComponent: PropTypes.oneOfType([
262
+ PropTypes.func,
263
+ PropTypes.node
264
+ ]),
265
+ history: PropTypes.object,
266
+ id: PropTypes.string.isRequired,
267
+ location: PropTypes.object,
268
+ mainPaneProps: PropTypes.object,
269
+ match: PropTypes.object,
270
+ mclProps: PropTypes.object,
271
+ noSearchField: PropTypes.bool,
272
+ path: PropTypes.string.isRequired,
273
+ RenderBody: PropTypes.oneOfType([
274
+ PropTypes.func,
275
+ PropTypes.node
276
+ ]),
277
+ resource: PropTypes.object,
278
+ resultColumns: PropTypes.arrayOf(PropTypes.object),
279
+ sasqProps: PropTypes.object
280
+ };
281
+
282
+ export default SASQLookupComponent;
@@ -0,0 +1 @@
1
+ export { default } from './SASQLookupComponent';
@@ -0,0 +1,55 @@
1
+ # SASQRoute
2
+ A component designed to speed up the basic 3-pane layout setup process, SASQRoute is an all in one Routing, SASQ and MCL setup
3
+
4
+ ## Basic Usage
5
+ ```
6
+ import React from 'react';
7
+ import { FormattedMessage } from 'react-intl';
8
+
9
+ import { SASQRoute } from '@k-int/stripes-kint-components';
10
+ import ActionItem from '../components/ActionItem';
11
+
12
+ const ActionedRoute = ({ path }) => {
13
+
14
+ const fetchParameters = {
15
+ endpoint: "remote-sync/feedback/done",
16
+ itemEndpoint: "remote-sync/feedback",
17
+ SASQ_MAP: {
18
+ searchKey: 'description',
19
+ filterKeys: {
20
+ }
21
+ }
22
+ };
23
+
24
+ const resultColumns = [
25
+ { propertyPath: "selected", label: " " },
26
+ { propertyPath:"description", label: <FormattedMessage id="ui-remote-sync.prop.feedback.description" /> },
27
+ { propertyPath:"status", label: <FormattedMessage id="ui-remote-sync.prop.feedback.status" /> },
28
+ { propertyPath:"correlationId", label: <FormattedMessage id="ui-remote-sync.prop.feedback.correlationId" /> },
29
+ { propertyPath:"caseIndicator", label: <FormattedMessage id="ui-remote-sync.prop.feedback.caseIndicator" /> }
30
+ ];
31
+
32
+ return (
33
+ <SASQRoute
34
+ fetchParameters={fetchParameters}
35
+ id="actioned"
36
+ resultColumns={resultColumns}
37
+ path={path}
38
+ ViewComponent={ActionItem}
39
+ />
40
+ );
41
+ };
42
+ ```
43
+
44
+ NOTE - The following prop list is incomplete
45
+ ## Props
46
+
47
+ Name | Type | Description | default | required
48
+ --- | --- | --- | --- | ---
49
+ fetchParameters | object | An object containing the parameters needed to make the fetches necessary for both the table and the view components. `endpoint` contains the main fetch endpoint, which regularly will be used for both fetching all data, and also for fetching an individual item (It is assumed that this endpoint will have `/{id}` appended to it.) If `itemEndpoint` is provided that will be used instead (this will also have `/{:id}` appended to it). `SASQ_MAP` is an object of the shape taken by `generateKiwtQuery` | | ✓ |
50
+ id | string | A unique identifier for this route. IMPORTANT that this is unique, as it drives paneset logic | | ✓ |
51
+ path | string | The main path for this route. In the above example the path is `remote-sync/actioned`. This component will set up the main 3 pane layout under this path, and also the view pane route under `remote-sync/actioned/:id` | | ✓ |
52
+ resultColumns | array | An array containing objects with a `propertyPath` and `label`. These will be used to drive the MCL columns. | | ✓ |
53
+ ViewComponent | Element | The component to render on clicking a row entry. | | ✓ |
54
+
55
+
@@ -0,0 +1,63 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+
4
+ import {
5
+ Route
6
+ } from 'react-router-dom';
7
+
8
+ import SASQLookupComponent from '../SASQLookupComponent';
9
+ import SASQViewComponent from '../SASQViewComponent';
10
+
11
+ const SASQRoute = ({ path, fetchParameters, ...props }) => {
12
+ // Grab the SASQ_MAP and tweak it
13
+ const { SASQ_MAP = {} } = fetchParameters;
14
+
15
+ if (!SASQ_MAP.perPage) {
16
+ SASQ_MAP.perPage = 25;
17
+ }
18
+
19
+ SASQ_MAP.stats = true;
20
+
21
+ // Reinsert the SASQ_MAP
22
+ fetchParameters.SASQ_MAP = SASQ_MAP;
23
+
24
+ return (
25
+ <Route
26
+ path={`${path}/:id?`}
27
+ render={routeProps => {
28
+ return (
29
+ <SASQLookupComponent
30
+ {...routeProps}
31
+ fetchParameters={fetchParameters}
32
+ path={path}
33
+ {...props}
34
+ >
35
+ <Route
36
+ path={`${path}/:id`}
37
+ render={innerProps => (
38
+ <SASQViewComponent
39
+ {...innerProps}
40
+ fetchParameters={fetchParameters}
41
+ path={path}
42
+ ViewComponent={props.ViewComponent}
43
+ {...props}
44
+ />
45
+ )}
46
+ />
47
+ </SASQLookupComponent>
48
+ );
49
+ }}
50
+ />
51
+ );
52
+ };
53
+
54
+ SASQRoute.propTypes = {
55
+ fetchParameters: PropTypes.object,
56
+ path: PropTypes.string,
57
+ ViewComponent: PropTypes.oneOfType([
58
+ PropTypes.func,
59
+ PropTypes.node
60
+ ])
61
+ };
62
+
63
+ export default SASQRoute;
@@ -0,0 +1 @@
1
+ export { default } from './SASQRoute';
@@ -0,0 +1,55 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+
4
+ import { useQuery } from 'react-query';
5
+
6
+ import {
7
+ useNamespace,
8
+ useOkapiKy
9
+ } from '@folio/stripes/core';
10
+
11
+ const SASQViewComponent = ({
12
+ fetchParameters,
13
+ history,
14
+ location,
15
+ match,
16
+ path,
17
+ ViewComponent,
18
+ ...props
19
+ }) => {
20
+ const { 0: namespace } = useNamespace();
21
+
22
+ // If itemEndpoint is available, use that, otherwise use standard endpoint
23
+ const endpoint = fetchParameters?.itemEndpoint ?? fetchParameters?.endpoint;
24
+
25
+ const ky = useOkapiKy();
26
+ const { data = {} } = useQuery(
27
+ [namespace, 'data', 'view', match?.params?.id],
28
+ () => ky(`${endpoint}/${match?.params?.id}`).json(),
29
+ {
30
+ enabled: !!match?.params?.id
31
+ }
32
+ );
33
+
34
+ return (
35
+ <ViewComponent
36
+ onClose={() => history.push(`${path}${location.search}`)}
37
+ resource={data}
38
+ {...props}
39
+ />
40
+ );
41
+ };
42
+
43
+ SASQViewComponent.propTypes = {
44
+ fetchParameters: PropTypes.object,
45
+ history: PropTypes.object,
46
+ location: PropTypes.object,
47
+ match: PropTypes.object,
48
+ path: PropTypes.string.isRequired,
49
+ ViewComponent: PropTypes.oneOfType([
50
+ PropTypes.func,
51
+ PropTypes.node
52
+ ]),
53
+ };
54
+
55
+ export default SASQViewComponent;
@@ -0,0 +1 @@
1
+ export { default } from './SASQViewComponent';
@@ -1,9 +1,9 @@
1
1
  import React, { useContext } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
 
4
- import EditableSettingsList from './EditableSettingsList';
5
- import SettingsContext from './SettingsContext';
6
- import useSettingSection from './useSettingSection';
4
+ import { EditableSettingsList } from '../EditableSettingsList';
5
+ import { SettingsContext } from '../contexts';
6
+ import { useSettingSection } from '../hooks';
7
7
 
8
8
  const SettingPage = ({ sectionName }) => {
9
9
  const { settingEndpoint } = useContext(SettingsContext);
@@ -31,10 +31,10 @@ SettingPage.propTypes = {
31
31
  sectionName: PropTypes.string,
32
32
  resources: PropTypes.shape({
33
33
  settings: PropTypes.shape({
34
- records: PropTypes.array
34
+ records: PropTypes.arrayOf(PropTypes.object)
35
35
  }),
36
36
  refdatavalues: PropTypes.shape({
37
- records: PropTypes.array
37
+ records: PropTypes.arrayOf(PropTypes.object)
38
38
  })
39
39
  })
40
40
  };
@@ -1,8 +1,10 @@
1
1
  import React, { useContext } from 'react';
2
+ import PropTypes from 'prop-types';
3
+
2
4
  import { Pane } from '@folio/stripes/components';
3
5
  import { FormattedMessage } from 'react-intl';
4
- import SettingsContext from './SettingsContext';
5
- import { toCamelCase } from './utils';
6
+ import { SettingsContext } from '../contexts';
7
+ import { toCamelCase } from '../utils';
6
8
 
7
9
  const SettingPagePane = ({ sectionName, children }) => {
8
10
  const { intlKey } = useContext(SettingsContext);
@@ -18,4 +20,12 @@ const SettingPagePane = ({ sectionName, children }) => {
18
20
  );
19
21
  };
20
22
 
23
+ SettingPagePane.propTypes = {
24
+ sectionName: PropTypes.string,
25
+ children: PropTypes.oneOfType([
26
+ PropTypes.func,
27
+ PropTypes.node
28
+ ])
29
+ };
30
+
21
31
  export default SettingPagePane;
@@ -0,0 +1,2 @@
1
+ export { default as SettingPagePane } from './SettingPagePane';
2
+ export { default as SettingPage } from './SettingPage';
@@ -0,0 +1 @@
1
+ DEPRECATED - DO NOT USE. You probably want Typedown
@@ -1,4 +1,4 @@
1
- import React, { useCallback, useState } from 'react';
1
+ import React, { useCallback, useEffect, useState } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import classnames from 'classnames';
4
4
 
@@ -15,15 +15,26 @@ import css from '../../../styles/TypeDown.css';
15
15
  import { useTypedown, useTypedownData } from '../hooks/typedownHooks';
16
16
  import selectorSafe from '../utils/selectorSafe';
17
17
 
18
+ /* @deprecated
19
+ * Replaced by Typedown and QueryTypedown.
20
+ */
18
21
  const TypeDown = ({
19
22
  input,
20
23
  meta,
24
+ onChange,
21
25
  path,
22
26
  pathMutator,
23
27
  renderFooter = null,
24
28
  renderListItem = null,
25
29
  uniqueIdentificationPath = 'id'
26
30
  }) => {
31
+ useEffect(() => {
32
+ if (process.env.NODE_ENV === 'development') {
33
+ // eslint-disable-next-line no-console
34
+ console.warn('TypeDown component is deprecated, you likely want either Typedown or QueryTypedown');
35
+ }
36
+ }, []);
37
+
27
38
  const selectedUniqueId = get(input.value, uniqueIdentificationPath);
28
39
 
29
40
  const [callPath, setCallPath] = useState(pathMutator(null, path));
@@ -61,6 +72,14 @@ const TypeDown = ({
61
72
  </div>
62
73
  ), [renderListItem, uniqueIdentificationPath]);
63
74
 
75
+ const handleChange = useCallback(value => {
76
+ input.onChange(value);
77
+
78
+ if (typeof onChange === 'function') {
79
+ onChange(value);
80
+ }
81
+ }, [input, onChange]);
82
+
64
83
  const dropDown = useCallback(() => {
65
84
  return (
66
85
  <div
@@ -86,7 +105,7 @@ const TypeDown = ({
86
105
  data-selected={isSelected}
87
106
  id={`typedown-button-[${index}]`}
88
107
  onClick={() => {
89
- input.onChange(d);
108
+ handleChange(d);
90
109
  handleNextFocus();
91
110
  }}
92
111
  onKeyDown={listKeyDownHandler}
@@ -114,6 +133,7 @@ const TypeDown = ({
114
133
  }, [
115
134
  data,
116
135
  footerRef,
136
+ handleChange,
117
137
  handleNextFocus,
118
138
  input,
119
139
  listKeyDownHandler,
@@ -186,7 +206,7 @@ const TypeDown = ({
186
206
  <IconButton
187
207
  className={css.clearItem}
188
208
  icon="times-circle-solid"
189
- onClick={() => input.onChange()}
209
+ onClick={() => handleChange()}
190
210
  />
191
211
  </div>
192
212
  }
@@ -197,6 +217,7 @@ const TypeDown = ({
197
217
  TypeDown.propTypes = {
198
218
  input: PropTypes.object,
199
219
  meta: PropTypes.object,
220
+ onChange: PropTypes.func,
200
221
  path: PropTypes.string,
201
222
  pathMutator: PropTypes.func,
202
223
  renderFooter: PropTypes.func,