@k-int/stripes-kint-components 5.0.0 → 5.1.1

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 (375) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/es/__mocks__/@folio/stripes/components.js +10 -21
  3. package/es/__mocks__/@folio/stripes/core.js +4 -7
  4. package/es/__mocks__/@folio/stripes/smart-components.js +4 -7
  5. package/es/__mocks__/react-query.js +4 -7
  6. package/es/__mocks__/react-router-dom.js +6 -7
  7. package/es/artifacts/coverage-jest/lcov-report/prettify.js +2 -2
  8. package/es/artifacts/coverage-jest/lcov-report/sorter.js +6 -6
  9. package/es/index.js +56 -49
  10. package/es/lib/ActionList/ActionList.js +39 -53
  11. package/es/lib/ActionList/ActionListFieldArray.js +144 -169
  12. package/es/lib/ActionList/index.js +1 -1
  13. package/es/lib/ComboButton/ComboButton.js +73 -91
  14. package/es/lib/ComboButton/index.js +1 -1
  15. package/es/lib/CustomProperties/Config/CustomPropertiesLookup.js +58 -79
  16. package/es/lib/CustomProperties/Config/CustomPropertiesLookup.test.js +15 -19
  17. package/es/lib/CustomProperties/Config/CustomPropertiesSettings.js +112 -162
  18. package/es/lib/CustomProperties/Config/CustomPropertiesSettings.test.js +30 -67
  19. package/es/lib/CustomProperties/Config/CustomPropertyForm.js +37 -50
  20. package/es/lib/CustomProperties/Config/CustomPropertyForm.test.js +83 -121
  21. package/es/lib/CustomProperties/Config/CustomPropertyView.js +10 -10
  22. package/es/lib/CustomProperties/Config/CustomPropertyView.test.js +48 -135
  23. package/es/lib/CustomProperties/Config/index.js +4 -4
  24. package/es/lib/CustomProperties/Edit/CustomPropertiesEdit.js +20 -23
  25. package/es/lib/CustomProperties/Edit/CustomPropertiesEdit.test.js +11 -16
  26. package/es/lib/CustomProperties/Edit/CustomPropertiesEditCtx.js +30 -29
  27. package/es/lib/CustomProperties/Edit/CustomPropertiesEditCtx.test.js +11 -16
  28. package/es/lib/CustomProperties/Edit/CustomPropertiesListField.js +87 -105
  29. package/es/lib/CustomProperties/Edit/CustomPropertiesListField.test.js +26 -63
  30. package/es/lib/CustomProperties/Edit/CustomPropertyField.js +124 -117
  31. package/es/lib/CustomProperties/Edit/CustomPropertyField.test.js +101 -179
  32. package/es/lib/CustomProperties/Edit/CustomPropertyFormCard.js +44 -46
  33. package/es/lib/CustomProperties/Edit/CustomPropertyFormCard.test.js +23 -27
  34. package/es/lib/CustomProperties/Edit/index.js +5 -5
  35. package/es/lib/CustomProperties/Edit/testResources.js +14 -38
  36. package/es/lib/CustomProperties/Filter/CustomPropertiesFilter.js +61 -83
  37. package/es/lib/CustomProperties/Filter/CustomPropertiesFilter.test.js +23 -57
  38. package/es/lib/CustomProperties/Filter/CustomPropertiesFilterField.js +40 -56
  39. package/es/lib/CustomProperties/Filter/CustomPropertiesFilterField.test.js +17 -16
  40. package/es/lib/CustomProperties/Filter/CustomPropertiesFilterFieldArray.js +28 -25
  41. package/es/lib/CustomProperties/Filter/CustomPropertiesFilterFieldArray.test.js +19 -47
  42. package/es/lib/CustomProperties/Filter/CustomPropertiesFilterForm.js +19 -22
  43. package/es/lib/CustomProperties/Filter/CustomPropertiesFilterForm.test.js +23 -52
  44. package/es/lib/CustomProperties/Filter/CustomPropertiesRule.js +38 -43
  45. package/es/lib/CustomProperties/Filter/CustomPropertiesRule.test.js +94 -226
  46. package/es/lib/CustomProperties/Filter/index.js +6 -6
  47. package/es/lib/CustomProperties/Filter/testResources.js +13 -36
  48. package/es/lib/CustomProperties/Filter/useOperators.js +18 -18
  49. package/es/lib/CustomProperties/Filter/useParseActiveFilterStrings.js +18 -32
  50. package/es/lib/CustomProperties/Filter/useValueProps.js +23 -29
  51. package/es/lib/CustomProperties/View/CustomPropertiesView.js +20 -23
  52. package/es/lib/CustomProperties/View/CustomPropertiesView.test.js +11 -16
  53. package/es/lib/CustomProperties/View/CustomPropertiesViewCtx.js +50 -59
  54. package/es/lib/CustomProperties/View/CustomPropertiesViewCtx.test.js +14 -23
  55. package/es/lib/CustomProperties/View/CustomPropertyCard.js +18 -20
  56. package/es/lib/CustomProperties/View/index.js +3 -3
  57. package/es/lib/CustomProperties/View/testResources.js +5 -9
  58. package/es/lib/CustomProperties/index.js +18 -18
  59. package/es/lib/CycleButton/CycleButton.js +18 -34
  60. package/es/lib/CycleButton/index.js +1 -1
  61. package/es/lib/EditableRefdataCategoryList/EditableRefdataCategoryList.js +109 -152
  62. package/es/lib/EditableRefdataCategoryList/index.js +1 -1
  63. package/es/lib/EditableRefdataList/EditableRefdataList.js +128 -172
  64. package/es/lib/EditableRefdataList/index.js +1 -1
  65. package/es/lib/EditableSettingsList/EditableSettingsList.js +17 -15
  66. package/es/lib/EditableSettingsList/EditableSettingsListFieldArray.js +19 -27
  67. package/es/lib/EditableSettingsList/EditableSettingsListFieldArray.test.js +61 -90
  68. package/es/lib/EditableSettingsList/SettingField/EditSettingValue.js +22 -36
  69. package/es/lib/EditableSettingsList/SettingField/EditSettingValue.test.js +99 -83
  70. package/es/lib/EditableSettingsList/SettingField/RenderSettingValue.js +18 -21
  71. package/es/lib/EditableSettingsList/SettingField/RenderSettingValue.test.js +187 -275
  72. package/es/lib/EditableSettingsList/SettingField/SettingField.js +75 -111
  73. package/es/lib/EditableSettingsList/SettingField/SettingField.test.js +55 -168
  74. package/es/lib/EditableSettingsList/SettingField/index.js +3 -3
  75. package/es/lib/EditableSettingsList/index.js +3 -3
  76. package/es/lib/FormModal/FormModal.js +44 -48
  77. package/es/lib/FormModal/index.js +1 -1
  78. package/es/lib/FormattedKintMessage/FormattedKintMessage.js +25 -29
  79. package/es/lib/FormattedKintMessage/index.js +1 -1
  80. package/es/lib/IconSelect/IconSelect.js +50 -70
  81. package/es/lib/IconSelect/index.js +1 -1
  82. package/es/lib/NoResultsMessage/NoResultsMessage.js +19 -19
  83. package/es/lib/NoResultsMessage/index.js +1 -1
  84. package/es/lib/QueryTypedown/QueryTypedown.js +18 -40
  85. package/es/lib/QueryTypedown/index.js +1 -1
  86. package/es/lib/RefdataButtons/RefdataButtons.js +27 -31
  87. package/es/lib/RefdataButtons/index.js +1 -1
  88. package/es/lib/ResponsiveButtonGroup/ResponsiveButtonGroup.js +84 -90
  89. package/es/lib/ResponsiveButtonGroup/index.js +1 -1
  90. package/es/lib/ResponsiveButtonGroup/useResponsiveButtonGroupSizing.js +28 -42
  91. package/es/lib/RichSelect/RichSelect.js +71 -88
  92. package/es/lib/RichSelect/index.js +2 -2
  93. package/es/lib/RichSelect/useSelectedOption.js +4 -14
  94. package/es/lib/SASQLookupComponent/SASQLookupComponent.js +116 -139
  95. package/es/lib/SASQLookupComponent/TableBody/TableBody.js +40 -47
  96. package/es/lib/SASQLookupComponent/TableBody/index.js +1 -1
  97. package/es/lib/SASQLookupComponent/index.js +2 -2
  98. package/es/lib/SASQRoute/SASQRoute.js +32 -39
  99. package/es/lib/SASQRoute/index.js +1 -1
  100. package/es/lib/SASQViewComponent/SASQViewComponent.js +39 -47
  101. package/es/lib/SASQViewComponent/index.js +1 -1
  102. package/es/lib/SearchField/SearchField.js +12 -18
  103. package/es/lib/SearchField/index.js +1 -1
  104. package/es/lib/SettingPage/SettingPage.js +22 -22
  105. package/es/lib/SettingPage/SettingPagePane.js +9 -8
  106. package/es/lib/SettingPage/index.js +2 -2
  107. package/es/lib/SettingsFormContainer/SettingsFormContainer.js +51 -55
  108. package/es/lib/SettingsFormContainer/index.js +1 -1
  109. package/es/lib/Typedown/Typedown.js +62 -81
  110. package/es/lib/Typedown/index.js +1 -1
  111. package/es/lib/constants/comparators.js +7 -0
  112. package/es/lib/constants/customProperties.js +11 -22
  113. package/es/lib/constants/endpoints.js +1 -2
  114. package/es/lib/constants/eventCodes.js +3 -6
  115. package/es/lib/contexts/SettingsContext.js +2 -3
  116. package/es/lib/contexts/index.js +1 -1
  117. package/es/lib/hooks/__mocks__/index.js +9 -29
  118. package/es/lib/hooks/index.js +19 -19
  119. package/es/lib/hooks/typedownHooks/index.js +3 -3
  120. package/es/lib/hooks/typedownHooks/useTypedown.js +49 -50
  121. package/es/lib/hooks/typedownHooks/useTypedownData.js +12 -23
  122. package/es/lib/hooks/typedownHooks/useTypedownToggle.js +13 -22
  123. package/es/lib/hooks/useActiveElement.js +9 -19
  124. package/es/lib/hooks/useCustomProperties.js +23 -32
  125. package/es/lib/hooks/useHelperApp.js +31 -51
  126. package/es/lib/hooks/useIntlKey.js +4 -7
  127. package/es/lib/hooks/useIntlKeyStore.js +44 -51
  128. package/es/lib/hooks/useInvalidateRefdata.js +4 -7
  129. package/es/lib/hooks/useKintIntl.js +29 -33
  130. package/es/lib/hooks/useKiwtFieldArray.js +35 -47
  131. package/es/lib/hooks/useKiwtSASQuery.js +38 -51
  132. package/es/lib/hooks/useLocalStorageState.js +7 -20
  133. package/es/lib/hooks/useModConfigEntries.js +27 -27
  134. package/es/lib/hooks/useMutateCustomProperties.js +20 -64
  135. package/es/lib/hooks/useMutateModConfigEntry.js +22 -61
  136. package/es/lib/hooks/useMutateRefdataCategory.js +20 -62
  137. package/es/lib/hooks/useMutateRefdataValue.js +29 -67
  138. package/es/lib/hooks/useQIndex.js +13 -28
  139. package/es/lib/hooks/useRefdata.js +18 -21
  140. package/es/lib/hooks/useSASQQueryMeta.js +14 -22
  141. package/es/lib/hooks/useTemplates.js +14 -14
  142. package/es/lib/settingsHooks/index.js +3 -3
  143. package/es/lib/settingsHooks/useAppSettings.js +19 -27
  144. package/es/lib/settingsHooks/useSettingSection.js +17 -19
  145. package/es/lib/settingsHooks/useSettings.js +59 -74
  146. package/es/lib/utils/buildUrl.js +6 -8
  147. package/es/lib/utils/filterParsers/deparseKiwtQueryFilters.js +36 -0
  148. package/es/lib/utils/filterParsers/index.js +48 -0
  149. package/es/lib/utils/filterParsers/parseKiwtQueryFilters.js +47 -0
  150. package/es/lib/utils/{parseKiwtQueryGroups.js → filterParsers/parseKiwtQueryGroups.js} +12 -13
  151. package/es/lib/utils/{parseKiwtQueryGroups.test.js → filterParsers/parseKiwtQueryGroups.test.js} +15 -15
  152. package/es/lib/utils/filterParsers/parseKiwtQueryString.js +34 -0
  153. package/es/lib/utils/generateKiwtQuery.js +4 -5
  154. package/es/lib/utils/generateKiwtQueryParams.js +93 -99
  155. package/es/lib/utils/groupCustomPropertiesByCtx.js +9 -20
  156. package/es/lib/utils/highlightString.js +17 -37
  157. package/es/lib/utils/index.js +49 -19
  158. package/es/lib/utils/matchString.js +5 -10
  159. package/es/lib/utils/modConfigEntriesQueryKey.js +9 -9
  160. package/es/lib/utils/parseErrorResponse.js +23 -65
  161. package/es/lib/utils/parseModConfigEntry.js +3 -4
  162. package/es/lib/utils/refdataOptions.js +2 -3
  163. package/es/lib/utils/refdataQueryKey.js +3 -4
  164. package/es/lib/utils/selectorSafe.js +5 -6
  165. package/es/lib/utils/sortByLabel.js +4 -5
  166. package/es/lib/utils/toCamelCase.js +8 -14
  167. package/es/lib/utils/typedownQueryKey.js +3 -4
  168. package/es/lib/validators/index.js +1 -1
  169. package/es/lib/validators/validators.js +22 -29
  170. package/junit.xml +161 -161
  171. package/package.json +5 -5
  172. package/src/artifacts/coverage-jest/lcov-report/ActionList/ActionList.js.html +1 -1
  173. package/src/artifacts/coverage-jest/lcov-report/ActionList/ActionListFieldArray.js.html +1 -1
  174. package/src/artifacts/coverage-jest/lcov-report/ActionList/ActionTrigger.js.html +418 -0
  175. package/src/artifacts/coverage-jest/lcov-report/ActionList/index.html +1 -1
  176. package/src/artifacts/coverage-jest/lcov-report/ActionList/index.js.html +1 -1
  177. package/src/artifacts/coverage-jest/lcov-report/ComboButton/ComboButton.js.html +1 -1
  178. package/src/artifacts/coverage-jest/lcov-report/ComboButton/index.html +1 -1
  179. package/src/artifacts/coverage-jest/lcov-report/ComboButton/index.js.html +1 -1
  180. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertiesLookup.js.html +1 -1
  181. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertiesSettings.js.html +1 -1
  182. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertyForm.js.html +1 -1
  183. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertyView.js.html +1 -1
  184. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/index.html +1 -1
  185. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/index.js.html +1 -1
  186. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Edit/CustomPropertiesEdit.js.html +1 -1
  187. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Edit/CustomPropertiesEditCtx.js.html +1 -1
  188. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Edit/CustomPropertiesListField.js.html +1 -1
  189. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Edit/CustomPropertyField.js.html +10 -10
  190. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Edit/CustomPropertyFormCard.js.html +1 -1
  191. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Edit/index.html +15 -15
  192. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Edit/index.js.html +1 -1
  193. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Edit/testResources.js.html +1 -1
  194. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/CustomPropertiesFilter.js.html +1 -1
  195. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/CustomPropertiesFilterField.js.html +1 -1
  196. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/CustomPropertiesFilterFieldArray.js.html +1 -1
  197. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/CustomPropertiesFilterForm.js.html +1 -1
  198. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/CustomPropertiesRule.js.html +1 -1
  199. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/index.html +1 -1
  200. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/index.js.html +1 -1
  201. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/testResources.js.html +1 -1
  202. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/useOperators.js.html +1 -1
  203. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/useParseActiveFilterStrings.js.html +1 -1
  204. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Filter/useValueProps.js.html +1 -1
  205. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/View/CustomPropertiesView.js.html +1 -1
  206. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/View/CustomPropertiesViewCtx.js.html +1 -1
  207. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/View/CustomPropertyCard.js.html +1 -1
  208. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/View/index.html +1 -1
  209. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/View/index.js.html +1 -1
  210. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/View/testResources.js.html +1 -1
  211. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/index.html +1 -1
  212. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/index.js.html +1 -1
  213. package/src/artifacts/coverage-jest/lcov-report/CycleButton/CycleButton.js.html +1 -1
  214. package/src/artifacts/coverage-jest/lcov-report/CycleButton/index.html +1 -1
  215. package/src/artifacts/coverage-jest/lcov-report/CycleButton/index.js.html +1 -1
  216. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataCategoryList/EditableRefdataCategoryList.js.html +1 -1
  217. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataCategoryList/index.html +1 -1
  218. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataCategoryList/index.js.html +1 -1
  219. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/EditableRefdataList.js.html +1 -1
  220. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/index.html +1 -1
  221. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/index.js.html +1 -1
  222. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/EditableSettingsList.js.html +1 -1
  223. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/EditableSettingsListFieldArray.js.html +1 -1
  224. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/EditSettingValue.js.html +1 -1
  225. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/RenderSettingValue.js.html +1 -1
  226. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/SettingField.js.html +1 -1
  227. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/index.html +1 -1
  228. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/index.js.html +1 -1
  229. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/index.html +1 -1
  230. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/index.js.html +1 -1
  231. package/src/artifacts/coverage-jest/lcov-report/FormModal/FormModal.js.html +1 -1
  232. package/src/artifacts/coverage-jest/lcov-report/FormModal/index.html +1 -1
  233. package/src/artifacts/coverage-jest/lcov-report/FormModal/index.js.html +1 -1
  234. package/src/artifacts/coverage-jest/lcov-report/FormattedKintMessage/FormattedKintMessage.js.html +1 -1
  235. package/src/artifacts/coverage-jest/lcov-report/FormattedKintMessage/index.html +1 -1
  236. package/src/artifacts/coverage-jest/lcov-report/FormattedKintMessage/index.js.html +1 -1
  237. package/src/artifacts/coverage-jest/lcov-report/IconSelect/IconSelect.js.html +1 -1
  238. package/src/artifacts/coverage-jest/lcov-report/IconSelect/index.html +1 -1
  239. package/src/artifacts/coverage-jest/lcov-report/IconSelect/index.js.html +1 -1
  240. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/NoResultsMessage.js.html +1 -1
  241. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/index.html +1 -1
  242. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/index.js.html +1 -1
  243. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/QueryTypedown.js.html +1 -1
  244. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/index.html +1 -1
  245. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/index.js.html +1 -1
  246. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/RefdataButtons.js.html +1 -1
  247. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/index.html +1 -1
  248. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/index.js.html +1 -1
  249. package/src/artifacts/coverage-jest/lcov-report/ResponsiveButtonGroup/ResponsiveButtonGroup.js.html +1 -1
  250. package/src/artifacts/coverage-jest/lcov-report/ResponsiveButtonGroup/index.html +1 -1
  251. package/src/artifacts/coverage-jest/lcov-report/ResponsiveButtonGroup/index.js.html +1 -1
  252. package/src/artifacts/coverage-jest/lcov-report/ResponsiveButtonGroup/useResponsiveButtonGroupSizing.js.html +1 -1
  253. package/src/artifacts/coverage-jest/lcov-report/RichSelect/RichSelect.js.html +1 -1
  254. package/src/artifacts/coverage-jest/lcov-report/RichSelect/index.html +1 -1
  255. package/src/artifacts/coverage-jest/lcov-report/RichSelect/index.js.html +1 -1
  256. package/src/artifacts/coverage-jest/lcov-report/RichSelect/useSelectedOption.js.html +1 -1
  257. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/SASQLookupComponent.js.html +1 -1
  258. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/TableBody/TableBody.js.html +1 -1
  259. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/TableBody/index.html +1 -1
  260. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/TableBody/index.js.html +1 -1
  261. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/index.html +1 -1
  262. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/index.js.html +1 -1
  263. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/SASQRoute.js.html +1 -1
  264. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/index.html +1 -1
  265. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/index.js.html +1 -1
  266. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/SASQViewComponent.js.html +1 -1
  267. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/index.html +1 -1
  268. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/index.js.html +1 -1
  269. package/src/artifacts/coverage-jest/lcov-report/SearchField/SearchField.js.html +1 -1
  270. package/src/artifacts/coverage-jest/lcov-report/SearchField/index.html +1 -1
  271. package/src/artifacts/coverage-jest/lcov-report/SearchField/index.js.html +1 -1
  272. package/src/artifacts/coverage-jest/lcov-report/SettingPage/SettingPage.js.html +1 -1
  273. package/src/artifacts/coverage-jest/lcov-report/SettingPage/SettingPagePane.js.html +1 -1
  274. package/src/artifacts/coverage-jest/lcov-report/SettingPage/index.html +1 -1
  275. package/src/artifacts/coverage-jest/lcov-report/SettingPage/index.js.html +1 -1
  276. package/src/artifacts/coverage-jest/lcov-report/SettingsActionList/EditSettingValue.js.html +514 -0
  277. package/src/artifacts/coverage-jest/lcov-report/SettingsActionList/RenderSettingValue.js.html +358 -0
  278. package/src/artifacts/coverage-jest/lcov-report/SettingsActionList/SettingsActionList.js.html +736 -0
  279. package/src/artifacts/coverage-jest/lcov-report/SettingsActionList/index.html +161 -0
  280. package/src/artifacts/coverage-jest/lcov-report/SettingsActionList/index.js.html +88 -0
  281. package/src/artifacts/coverage-jest/lcov-report/SettingsFormContainer/SettingsFormContainer.js.html +1 -1
  282. package/src/artifacts/coverage-jest/lcov-report/SettingsFormContainer/index.html +1 -1
  283. package/src/artifacts/coverage-jest/lcov-report/SettingsFormContainer/index.js.html +1 -1
  284. package/src/artifacts/coverage-jest/lcov-report/Typedown/Typedown.js.html +1 -1
  285. package/src/artifacts/coverage-jest/lcov-report/Typedown/index.html +1 -1
  286. package/src/artifacts/coverage-jest/lcov-report/Typedown/index.js.html +1 -1
  287. package/src/artifacts/coverage-jest/lcov-report/constants/comparators.js.html +121 -0
  288. package/src/artifacts/coverage-jest/lcov-report/constants/customProperties.js.html +1 -1
  289. package/src/artifacts/coverage-jest/lcov-report/constants/endpoints.js.html +1 -1
  290. package/src/artifacts/coverage-jest/lcov-report/constants/eventCodes.js.html +1 -1
  291. package/src/artifacts/coverage-jest/lcov-report/constants/index.html +16 -1
  292. package/src/artifacts/coverage-jest/lcov-report/contexts/SettingsContext.js.html +1 -1
  293. package/src/artifacts/coverage-jest/lcov-report/contexts/index.html +1 -1
  294. package/src/artifacts/coverage-jest/lcov-report/contexts/index.js.html +1 -1
  295. package/src/artifacts/coverage-jest/lcov-report/hooks/index.html +1 -1
  296. package/src/artifacts/coverage-jest/lcov-report/hooks/index.js.html +1 -1
  297. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/index.html +161 -0
  298. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/index.js.html +94 -0
  299. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/useAppSettings.js.html +292 -0
  300. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/useSettingSection.js.html +214 -0
  301. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/useSettings.js.html +463 -0
  302. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/index.html +1 -1
  303. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/index.js.html +1 -1
  304. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedown.js.html +1 -1
  305. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedownData.js.html +1 -1
  306. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedownToggle.js.html +1 -1
  307. package/src/artifacts/coverage-jest/lcov-report/hooks/useActiveElement.js.html +1 -1
  308. package/src/artifacts/coverage-jest/lcov-report/hooks/useCustomProperties.js.html +1 -1
  309. package/src/artifacts/coverage-jest/lcov-report/hooks/useHelperApp.js.html +1 -1
  310. package/src/artifacts/coverage-jest/lcov-report/hooks/useIntlKey.js.html +1 -1
  311. package/src/artifacts/coverage-jest/lcov-report/hooks/useIntlKeyStore.js.html +1 -1
  312. package/src/artifacts/coverage-jest/lcov-report/hooks/useInvalidateRefdata.js.html +1 -1
  313. package/src/artifacts/coverage-jest/lcov-report/hooks/useKintIntl.js.html +1 -1
  314. package/src/artifacts/coverage-jest/lcov-report/hooks/useKiwtFieldArray.js.html +1 -1
  315. package/src/artifacts/coverage-jest/lcov-report/hooks/useKiwtSASQuery.js.html +2 -2
  316. package/src/artifacts/coverage-jest/lcov-report/hooks/useLocalStorageState.js.html +1 -1
  317. package/src/artifacts/coverage-jest/lcov-report/hooks/useModConfigEntries.js.html +1 -1
  318. package/src/artifacts/coverage-jest/lcov-report/hooks/useMutateCustomProperties.js.html +1 -1
  319. package/src/artifacts/coverage-jest/lcov-report/hooks/useMutateModConfigEntry.js.html +1 -1
  320. package/src/artifacts/coverage-jest/lcov-report/hooks/useMutateRefdataCategory.js.html +1 -1
  321. package/src/artifacts/coverage-jest/lcov-report/hooks/useMutateRefdataValue.js.html +1 -1
  322. package/src/artifacts/coverage-jest/lcov-report/hooks/useQIndex.js.html +1 -1
  323. package/src/artifacts/coverage-jest/lcov-report/hooks/useRefdata.js.html +1 -1
  324. package/src/artifacts/coverage-jest/lcov-report/hooks/useSASQQueryMeta.js.html +1 -1
  325. package/src/artifacts/coverage-jest/lcov-report/hooks/useTemplates.js.html +1 -1
  326. package/src/artifacts/coverage-jest/lcov-report/index.html +41 -26
  327. package/src/artifacts/coverage-jest/lcov-report/settingsHooks/index.html +1 -1
  328. package/src/artifacts/coverage-jest/lcov-report/settingsHooks/index.js.html +1 -1
  329. package/src/artifacts/coverage-jest/lcov-report/settingsHooks/useAppSettings.js.html +1 -1
  330. package/src/artifacts/coverage-jest/lcov-report/settingsHooks/useSettingSection.js.html +1 -1
  331. package/src/artifacts/coverage-jest/lcov-report/settingsHooks/useSettings.js.html +1 -1
  332. package/src/artifacts/coverage-jest/lcov-report/utils/buildUrl.js.html +6 -18
  333. package/src/artifacts/coverage-jest/lcov-report/utils/filterParsers/deparseKiwtQueryFilters.js.html +181 -0
  334. package/src/artifacts/coverage-jest/lcov-report/utils/filterParsers/index.html +176 -0
  335. package/src/artifacts/coverage-jest/lcov-report/utils/filterParsers/index.js.html +124 -0
  336. package/src/artifacts/coverage-jest/lcov-report/utils/filterParsers/parseKiwtQueryFilters.js.html +211 -0
  337. package/src/artifacts/coverage-jest/lcov-report/utils/filterParsers/parseKiwtQueryGroups.js.html +367 -0
  338. package/src/artifacts/coverage-jest/lcov-report/utils/filterParsers/parseKiwtQueryString.js.html +184 -0
  339. package/src/artifacts/coverage-jest/lcov-report/utils/generateKiwtQuery.js.html +1 -1
  340. package/src/artifacts/coverage-jest/lcov-report/utils/generateKiwtQueryParams.js.html +13 -7
  341. package/src/artifacts/coverage-jest/lcov-report/utils/groupCustomPropertiesByCtx.js.html +1 -1
  342. package/src/artifacts/coverage-jest/lcov-report/utils/highlightString.js.html +1 -1
  343. package/src/artifacts/coverage-jest/lcov-report/utils/index.html +13 -28
  344. package/src/artifacts/coverage-jest/lcov-report/utils/index.js.html +24 -3
  345. package/src/artifacts/coverage-jest/lcov-report/utils/matchString.js.html +1 -1
  346. package/src/artifacts/coverage-jest/lcov-report/utils/modConfigEntriesQueryKey.js.html +1 -1
  347. package/src/artifacts/coverage-jest/lcov-report/utils/parseErrorResponse.js.html +1 -1
  348. package/src/artifacts/coverage-jest/lcov-report/utils/parseKiwtQueryGroups.js.html +1 -1
  349. package/src/artifacts/coverage-jest/lcov-report/utils/parseModConfigEntry.js.html +1 -1
  350. package/src/artifacts/coverage-jest/lcov-report/utils/refdataOptions.js.html +1 -1
  351. package/src/artifacts/coverage-jest/lcov-report/utils/refdataQueryKey.js.html +1 -1
  352. package/src/artifacts/coverage-jest/lcov-report/utils/selectorSafe.js.html +1 -1
  353. package/src/artifacts/coverage-jest/lcov-report/utils/sortByLabel.js.html +1 -1
  354. package/src/artifacts/coverage-jest/lcov-report/utils/toCamelCase.js.html +1 -1
  355. package/src/artifacts/coverage-jest/lcov-report/utils/typedownQueryKey.js.html +1 -1
  356. package/src/artifacts/coverage-jest/lcov-report/utils/validators.js.html +370 -0
  357. package/src/artifacts/coverage-jest/lcov-report/validators/index.html +1 -1
  358. package/src/artifacts/coverage-jest/lcov-report/validators/index.js.html +1 -1
  359. package/src/artifacts/coverage-jest/lcov-report/validators/validators.js.html +1 -1
  360. package/src/artifacts/coverage-jest/lcov.info +352 -228
  361. package/src/index.js +1 -0
  362. package/src/lib/CustomProperties/Edit/CustomPropertyField.test.js +9 -5
  363. package/src/lib/CustomProperties/Filter/CustomPropertiesFilterFieldArray.test.js +1 -4
  364. package/src/lib/CustomProperties/Filter/CustomPropertiesRule.test.js +26 -10
  365. package/src/lib/constants/comparators.js +13 -0
  366. package/src/lib/hooks/useKiwtSASQuery.js +1 -1
  367. package/src/lib/utils/buildUrl.js +1 -5
  368. package/src/lib/utils/filterParsers/deparseKiwtQueryFilters.js +32 -0
  369. package/src/lib/utils/filterParsers/index.js +13 -0
  370. package/src/lib/utils/filterParsers/parseKiwtQueryFilters.js +42 -0
  371. package/src/lib/utils/{parseKiwtQueryGroups.js → filterParsers/parseKiwtQueryGroups.js} +3 -1
  372. package/src/lib/utils/filterParsers/parseKiwtQueryString.js +33 -0
  373. package/src/lib/utils/generateKiwtQueryParams.js +6 -4
  374. package/src/lib/utils/index.js +8 -1
  375. /package/src/lib/utils/{parseKiwtQueryGroups.test.js → filterParsers/parseKiwtQueryGroups.test.js} +0 -0
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
@@ -16,85 +15,69 @@ var _utils = require("../utils");
16
15
  var _hooks = require("../hooks");
17
16
  var _jsxRuntime = require("react/jsx-runtime");
18
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
20
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
21
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
22
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
23
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
24
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
25
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
26
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
27
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
28
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
29
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
30
- var useSettings = function useSettings(_ref) {
31
- var _ref$allowGlobalEdit = _ref.allowGlobalEdit,
32
- allowGlobalEdit = _ref$allowGlobalEdit === void 0 ? true : _ref$allowGlobalEdit,
33
- dynamicPageExclusions = _ref.dynamicPageExclusions,
34
- passedIntlKey = _ref.intlKey,
35
- passedIntlNS = _ref.intlNS,
36
- _ref$labelOverrides = _ref.labelOverrides,
37
- labelOverrides = _ref$labelOverrides === void 0 ? {} : _ref$labelOverrides,
38
- persistentPages = _ref.persistentPages,
39
- refdataEndpoint = _ref.refdataEndpoint,
40
- settingEndpoint = _ref.settingEndpoint,
41
- templateEndpoint = _ref.templateEndpoint;
42
- var ky = (0, _core.useOkapiKy)();
43
- var kintIntl = (0, _hooks.useKintIntl)(passedIntlKey, passedIntlNS);
44
- var queryParams = (0, _utils.generateKiwtQueryParams)({
45
- filters: dynamicPageExclusions === null || dynamicPageExclusions === void 0 ? void 0 : dynamicPageExclusions.map(function (dpe) {
46
- return {
47
- path: 'section',
48
- comparator: '!=',
49
- value: dpe
50
- };
51
- }),
18
+ const useSettings = _ref => {
19
+ let {
20
+ allowGlobalEdit = true,
21
+ dynamicPageExclusions,
22
+ intlKey: passedIntlKey,
23
+ intlNS: passedIntlNS,
24
+ labelOverrides = {},
25
+ persistentPages,
26
+ refdataEndpoint,
27
+ settingEndpoint,
28
+ templateEndpoint
29
+ } = _ref;
30
+ const ky = (0, _core.useOkapiKy)();
31
+ const kintIntl = (0, _hooks.useKintIntl)(passedIntlKey, passedIntlNS);
32
+ const queryParams = (0, _utils.generateKiwtQueryParams)({
33
+ filters: dynamicPageExclusions === null || dynamicPageExclusions === void 0 ? void 0 : dynamicPageExclusions.map(dpe => ({
34
+ path: 'section',
35
+ comparator: '!=',
36
+ value: dpe
37
+ })),
52
38
  perPage: 100,
53
39
  stats: false
54
40
  }, {});
55
- var _useQuery = (0, _reactQuery.useQuery)(['stripes-kint-components', 'useSettings', 'appSettings', settingEndpoint, queryParams], function () {
56
- return ky("".concat(settingEndpoint, "?").concat(queryParams === null || queryParams === void 0 ? void 0 : queryParams.join('&'))).json();
57
- }),
58
- _useQuery$data = _useQuery.data,
59
- appSettings = _useQuery$data === void 0 ? [] : _useQuery$data,
60
- isLoading = _useQuery.isLoading;
61
- var sections = _toConsumableArray(new Set(appSettings.map(function (s) {
62
- return s.section;
63
- })));
64
- var dynamic = sections.map(function (section) {
41
+ const {
42
+ data: appSettings = [],
43
+ isLoading
44
+ } = (0, _reactQuery.useQuery)(['stripes-kint-components', 'useSettings', 'appSettings', settingEndpoint, queryParams], () => ky("".concat(settingEndpoint, "?").concat(queryParams === null || queryParams === void 0 ? void 0 : queryParams.join('&'))).json());
45
+ const sections = [...new Set(appSettings.map(s => s.section))];
46
+ const dynamic = sections.map(section => {
65
47
  return {
66
48
  route: section,
67
49
  label: kintIntl.formatKintMessage({
68
50
  id: "settings.settingsSection.".concat((0, _utils.toCamelCase)(section)),
69
51
  fallbackMessage: section
70
52
  }),
71
- component: function component(props) {
72
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingPage.SettingPagePane, {
53
+ component: props => /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingPage.SettingPagePane, {
54
+ intlKey: passedIntlKey,
55
+ intlNS: passedIntlNS,
56
+ sectionName: section,
57
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingPage.SettingPage, {
58
+ allowEdit: allowGlobalEdit,
73
59
  intlKey: passedIntlKey,
74
60
  intlNS: passedIntlNS,
61
+ labelOverrides: labelOverrides,
75
62
  sectionName: section,
76
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingPage.SettingPage, _objectSpread({
77
- allowEdit: allowGlobalEdit,
78
- intlKey: passedIntlKey,
79
- intlNS: passedIntlNS,
80
- labelOverrides: labelOverrides,
81
- sectionName: section
82
- }, props))
83
- });
84
- }
63
+ ...props
64
+ })
65
+ })
85
66
  };
86
67
  });
87
- var pageList = persistentPages.concat(dynamic).sort(_utils.sortByLabel);
88
- var intlKey = (0, _hooks.useIntlKey)(passedIntlKey, passedIntlNS);
89
- var SettingsContextProvider = function SettingsContextProvider(_ref2) {
90
- var children = _ref2.children;
68
+ const pageList = persistentPages.concat(dynamic).sort(_utils.sortByLabel);
69
+ const intlKey = (0, _hooks.useIntlKey)(passedIntlKey, passedIntlNS);
70
+ const SettingsContextProvider = _ref2 => {
71
+ let {
72
+ children
73
+ } = _ref2;
91
74
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_contexts.SettingsContext.Provider, {
92
75
  value: {
93
- intlKey: intlKey,
76
+ intlKey,
94
77
  // This is only here for backwards compatibility... is now grabbed from useIntlKey instead of what's passed in directly
95
- refdataEndpoint: refdataEndpoint,
96
- settingEndpoint: settingEndpoint,
97
- templateEndpoint: templateEndpoint
78
+ refdataEndpoint,
79
+ settingEndpoint,
80
+ templateEndpoint
98
81
  },
99
82
  children: children
100
83
  });
@@ -102,25 +85,27 @@ var useSettings = function useSettings(_ref) {
102
85
  SettingsContextProvider.propTypes = {
103
86
  children: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.node])
104
87
  };
105
- var SettingsComponent = function SettingsComponent(props) {
106
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_smartComponents.Settings, _objectSpread({
88
+ const SettingsComponent = props => {
89
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_smartComponents.Settings, {
107
90
  pages: pageList,
108
91
  paneTitle: kintIntl.formatKintMessage({
109
92
  id: 'meta.title'
110
- })
111
- }, props));
93
+ }),
94
+ ...props
95
+ });
112
96
  };
113
- var SettingsComponentWithContext = function SettingsComponentWithContext(props) {
97
+ const SettingsComponentWithContext = props => {
114
98
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(SettingsContextProvider, {
115
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(SettingsComponent, _objectSpread({}, props))
99
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(SettingsComponent, {
100
+ ...props
101
+ })
116
102
  });
117
103
  };
118
104
  return {
119
- isLoading: isLoading,
120
- pageList: pageList,
105
+ isLoading,
106
+ pageList,
121
107
  SettingsComponent: SettingsComponentWithContext,
122
- SettingsContextProvider: SettingsContextProvider
108
+ SettingsContextProvider
123
109
  };
124
110
  };
125
- var _default = useSettings;
126
- exports.default = _default;
111
+ var _default = exports.default = useSettings;
@@ -9,20 +9,18 @@ var _lodash = require("lodash");
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  // File copied from https://github.com/folio-org/stripes-smart-components/blob/master/lib/SearchAndSort/buildUrl.js
11
11
 
12
- function getLocationQuery(location) {
13
- return location.query ? location.query : _queryString.default.parse(location.search);
14
- }
15
12
  function removeEmpty(obj) {
16
- var cleanObj = {};
17
- (0, _lodash.forOwn)(obj, function (value, key) {
13
+ const cleanObj = {};
14
+ (0, _lodash.forOwn)(obj, (value, key) => {
18
15
  if (value) cleanObj[key] = value;
19
16
  });
20
17
  return cleanObj;
21
18
  }
22
19
  function buildUrl(location, values, basePath) {
23
- var locationQuery = getLocationQuery(location);
24
- var url = values._path || basePath || location.pathname;
25
- var params = removeEmpty(Object.assign(locationQuery, values));
20
+ var _location$query;
21
+ const locationQuery = (_location$query = location === null || location === void 0 ? void 0 : location.query) !== null && _location$query !== void 0 ? _location$query : _queryString.default.parse(location.search);
22
+ let url = values._path || basePath || location.pathname;
23
+ const params = removeEmpty(Object.assign(locationQuery, values));
26
24
  (0, _lodash.unset)(params, '_path');
27
25
  if (!(0, _lodash.isEmpty)(params)) {
28
26
  url += "?".concat(_queryString.default.stringify(params));
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.deparseKiwtQueryFiltersObject = exports.default = void 0;
7
+ // Does not validate object... make sure you pass it the right thing
8
+ const deparseKiwtQueryFiltersObject = queryObject => {
9
+ let returnString = "".concat(queryObject.path, " ").concat(queryObject.comparator);
10
+ if (queryObject.value) {
11
+ returnString += " ".concat(queryObject.value);
12
+ }
13
+ return returnString;
14
+ };
15
+
16
+ // Takes an Array of the shape defined by parseKiwtQuery and restructures that into an equivalent KIWT queryString
17
+ exports.deparseKiwtQueryFiltersObject = deparseKiwtQueryFiltersObject;
18
+ const deparseKiwtQueryFilters = queryArray => {
19
+ if (Array.isArray(queryArray)) {
20
+ let returnString = '';
21
+ queryArray.forEach(qa => {
22
+ if (Array.isArray(qa)) {
23
+ returnString += " (".concat(deparseKiwtQueryFilters(qa), ")");
24
+ } else if (typeof qa === 'string') {
25
+ returnString += " ".concat(qa);
26
+ } else {
27
+ // Assuming object at this stage
28
+ returnString += " ".concat(deparseKiwtQueryFiltersObject(qa));
29
+ }
30
+ });
31
+ return returnString.trim();
32
+ } else {
33
+ throw new Error("deparseKiwtQuery expects a parameter of type Array, passed: ".concat(queryArray));
34
+ }
35
+ };
36
+ var _default = exports.default = deparseKiwtQueryFilters;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "deparseKiwtQueryFilters", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _deparseKiwtQueryFilters.default;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "deparseKiwtQueryFiltersObject", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _deparseKiwtQueryFilters.deparseKiwtQueryFiltersObject;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "parseKiwtQueryFilters", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _parseKiwtQueryFilters.default;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "parseKiwtQueryFiltersRecursive", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _parseKiwtQueryFilters.parseKiwtQueryFiltersRecursive;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "parseKiwtQueryGroups", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _parseKiwtQueryGroups.default;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "parseKiwtQueryString", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _parseKiwtQueryString.default;
40
+ }
41
+ });
42
+ var _parseKiwtQueryGroups = _interopRequireDefault(require("./parseKiwtQueryGroups"));
43
+ var _parseKiwtQueryString = _interopRequireDefault(require("./parseKiwtQueryString"));
44
+ var _parseKiwtQueryFilters = _interopRequireWildcard(require("./parseKiwtQueryFilters"));
45
+ var _deparseKiwtQueryFilters = _interopRequireWildcard(require("./deparseKiwtQueryFilters"));
46
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
47
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
48
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.parseKiwtQueryFiltersRecursive = exports.default = void 0;
7
+ var _parseKiwtQueryGroups = _interopRequireDefault(require("./parseKiwtQueryGroups"));
8
+ var _parseKiwtQueryString = _interopRequireDefault(require("./parseKiwtQueryString"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ // This is an amalgam of parseKiwtQueryGroups, which splits up grouped queries
11
+ // and parseKiwtQueryString, which figures out comparator vs attribute, etc
12
+
13
+ // This will handle the nested recursion logic, switching between String and Array
14
+ const parseKiwtQueryFiltersRecursive = query => {
15
+ if (Array.isArray(query)) {
16
+ return query.map(q => parseKiwtQueryFiltersRecursive(q));
17
+ } else if (typeof query === 'string') {
18
+ if (query === '&&' || query === '||') {
19
+ return query;
20
+ } else {
21
+ return (0, _parseKiwtQueryString.default)(query);
22
+ }
23
+ } else {
24
+ throw new Error("Unexpected query type: ".concat(query));
25
+ }
26
+ };
27
+
28
+ // This accepts a STRING only
29
+ exports.parseKiwtQueryFiltersRecursive = parseKiwtQueryFiltersRecursive;
30
+ const parseKiwtQueryFilters = queryString => {
31
+ if (typeof queryString === 'string') {
32
+ // parseKiwtQueryGroups already recurses, so we know is the right shape all the way down
33
+ const queryGroups = (0, _parseKiwtQueryGroups.default)(queryString);
34
+ return parseKiwtQueryFiltersRecursive(queryGroups);
35
+ } else {
36
+ throw new Error("parseKiwtQuery expects a parameter of type String, passed: ".concat(queryString));
37
+ }
38
+ };
39
+
40
+ /* RETURN SHAPE
41
+ * This will return nested arrays of Objects, Strings and Arrays.
42
+ * Each array refers to a bracketed group
43
+ * Each object is a single query value (attribute, comparator and value)
44
+ * Each string should be boolean && or ||
45
+ * To be read from left to right
46
+ */
47
+ var _default = exports.default = parseKiwtQueryFilters;
@@ -25,7 +25,7 @@ exports.default = void 0;
25
25
  * @returns [] tokenized query as a series of nested arrays
26
26
  * @throws Error if parens are unmatched
27
27
  */
28
- var parseKiwtQueryGroups = function parseKiwtQueryGroups(query) {
28
+ const parseKiwtQueryGroups = query => {
29
29
  // Split on tokens, keeping them all in tact in the correct position.
30
30
  // This could be handled without the filter, which omits empty-string
31
31
  // matches, using a look-behind:
@@ -33,18 +33,18 @@ var parseKiwtQueryGroups = function parseKiwtQueryGroups(query) {
33
33
  // but Webkit hasn't implemented look-behind yet so that breaks Safari.
34
34
  // https://bugs.webkit.org/show_bug.cgi?id=174931
35
35
  // <sigh>
36
- var splitString = query.split(/(\|\||&&|\(|\))/).filter(Boolean);
36
+ const splitString = query.split(/(\|\||&&|\(|\))/).map(ss => ss.trim()).filter(Boolean);
37
37
 
38
38
  // Keep track of what to skip over when we return from each level of nesting
39
- var skipCount = [0];
39
+ let skipCount = [0];
40
40
 
41
41
  // Ensure parens are properly closed
42
- var unclosedParens = 0;
43
- var groupParser = function groupParser(parseArray) {
44
- var nestLevel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
45
- var group = [];
42
+ let unclosedParens = 0;
43
+ const groupParser = function (parseArray) {
44
+ let nestLevel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
45
+ const group = [];
46
46
  // Iterate over each element in the array, recursively calling this when hitting parens
47
- parseArray === null || parseArray === void 0 ? void 0 : parseArray.every(function (element, index) {
47
+ parseArray === null || parseArray === void 0 || parseArray.every((element, index) => {
48
48
  var _skipCount;
49
49
  if (skipCount[nestLevel] > 0) {
50
50
  skipCount[nestLevel] -= 1;
@@ -57,14 +57,14 @@ var parseKiwtQueryGroups = function parseKiwtQueryGroups(query) {
57
57
  }
58
58
 
59
59
  // At the levels below all of the following will need
60
- skipCount = (_skipCount = skipCount) === null || _skipCount === void 0 ? void 0 : _skipCount.map(function (n, i) {
60
+ skipCount = (_skipCount = skipCount) === null || _skipCount === void 0 ? void 0 : _skipCount.map((n, i) => {
61
61
  if (i < nestLevel) {
62
62
  return n + 1;
63
63
  }
64
64
  return n;
65
65
  });
66
66
  if (element !== '(' && element !== ')') {
67
- group === null || group === void 0 ? void 0 : group.push(element);
67
+ group === null || group === void 0 || group.push(element);
68
68
  } else if (element === ')') {
69
69
  // Remove the corresponding skipCount level because we're going down a nesting level
70
70
  skipCount.pop();
@@ -82,7 +82,7 @@ var parseKiwtQueryGroups = function parseKiwtQueryGroups(query) {
82
82
  });
83
83
  return group;
84
84
  };
85
- var outputGroups = groupParser(splitString);
85
+ const outputGroups = groupParser(splitString);
86
86
 
87
87
  // abort: dangling open-paren
88
88
  if (unclosedParens > 0) {
@@ -90,5 +90,4 @@ var parseKiwtQueryGroups = function parseKiwtQueryGroups(query) {
90
90
  }
91
91
  return outputGroups;
92
92
  };
93
- var _default = parseKiwtQueryGroups;
94
- exports.default = _default;
93
+ var _default = exports.default = parseKiwtQueryGroups;
@@ -2,49 +2,49 @@
2
2
 
3
3
  var _parseKiwtQueryGroups = _interopRequireDefault(require("./parseKiwtQueryGroups"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('parseKiwtQueryGroups', function () {
6
- it('handles simple queries without parens', function () {
7
- var result = (0, _parseKiwtQueryGroups.default)('foo==bar');
5
+ describe('parseKiwtQueryGroups', () => {
6
+ it('handles simple queries without parens', () => {
7
+ const result = (0, _parseKiwtQueryGroups.default)('foo==bar');
8
8
  expect(result).toEqual(['foo==bar']);
9
9
  });
10
- it('handles simple queries with parens', function () {
11
- var result = (0, _parseKiwtQueryGroups.default)('(foo==bar)');
10
+ it('handles simple queries with parens', () => {
11
+ const result = (0, _parseKiwtQueryGroups.default)('(foo==bar)');
12
12
  expect(result).toEqual([['foo==bar']]);
13
13
  });
14
- it('handles conjunctions', function () {
15
- var result = (0, _parseKiwtQueryGroups.default)('(foo==bar&&bat==baz)');
14
+ it('handles conjunctions', () => {
15
+ const result = (0, _parseKiwtQueryGroups.default)('(foo==bar&&bat==baz)');
16
16
  expect(result).toEqual([['foo==bar', '&&', 'bat==baz']]);
17
17
  });
18
- it('handles disjunctions', function () {
19
- var result = (0, _parseKiwtQueryGroups.default)('(foo==bar||bat==baz)');
18
+ it('handles disjunctions', () => {
19
+ const result = (0, _parseKiwtQueryGroups.default)('(foo==bar||bat==baz)');
20
20
  expect(result).toEqual([['foo==bar', '||', 'bat==baz']]);
21
21
  });
22
- it('handles nested clauses', function () {
23
- var result = (0, _parseKiwtQueryGroups.default)('(foo==bar&&(bat==baz||bat==quux))');
22
+ it('handles nested clauses', () => {
23
+ const result = (0, _parseKiwtQueryGroups.default)('(foo==bar&&(bat==baz||bat==quux))');
24
24
  expect(result).toEqual([['foo==bar', '&&', ['bat==baz', '||', 'bat==quux']]]);
25
25
  });
26
- it('throws on dangling (', function () {
26
+ it('throws on dangling (', () => {
27
27
  try {
28
28
  (0, _parseKiwtQueryGroups.default)('(foo==bar');
29
29
  } catch (e) {
30
30
  expect(e.message).toMatch('Found unclosed paretheses, stopping parse.');
31
31
  }
32
32
  });
33
- it('throws on dangling )', function () {
33
+ it('throws on dangling )', () => {
34
34
  try {
35
35
  (0, _parseKiwtQueryGroups.default)('bat==quux)');
36
36
  } catch (e) {
37
37
  expect(e.message).toMatch('Unexpected character \')\' found, stopping parse.');
38
38
  }
39
39
  });
40
- it('throws on nested dangling (', function () {
40
+ it('throws on nested dangling (', () => {
41
41
  try {
42
42
  (0, _parseKiwtQueryGroups.default)('(foo==bar&&(bat==baz||bat==quux)');
43
43
  } catch (e) {
44
44
  expect(e.message).toMatch('Found unclosed paretheses, stopping parse.');
45
45
  }
46
46
  });
47
- it('throws on nested dangling )', function () {
47
+ it('throws on nested dangling )', () => {
48
48
  try {
49
49
  (0, _parseKiwtQueryGroups.default)('foo==bar&&(bat==baz||bat==quux))&&(monkey==bagel||thunder==chicken)');
50
50
  } catch (e) {
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _comparators = _interopRequireDefault(require("../../constants/comparators"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ /*
10
+ * This is designed to take a SINGLE query string of the form
11
+ * attribute == value, or attribute isEmpty, or attribute ~= value, etc
12
+ *
13
+ * Will return an object: {path: 'attribute', comparator: '==', value: 'value'}
14
+ */ // No magic numbers sonarlint -.-
15
+ const FIRST = 0;
16
+ const SECOND = 1;
17
+ const THIRD = 2;
18
+ const parseKiwtQueryString = queryString => {
19
+ const comparatorMatch = new RegExp("(".concat(_comparators.default.join('|'), ")"));
20
+ // See parseKiwtQueryGroups for breakdown of why this filter is needed
21
+ const splitString = queryString.split(comparatorMatch).map(ss => ss.trim()).filter(Boolean);
22
+
23
+ /*
24
+ * As far as I can tell, with input of a SINGLE query string at a time,
25
+ * with 2 entries we will have a special case comparator, with 3 we
26
+ * have a comparator, attribute and value.. value can be null in those cases
27
+ */
28
+ return {
29
+ path: splitString[FIRST],
30
+ comparator: splitString[SECOND],
31
+ value: splitString[THIRD]
32
+ };
33
+ };
34
+ var _default = exports.default = parseKiwtQueryString;
@@ -6,10 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _generateKiwtQueryParams = _interopRequireDefault(require("./generateKiwtQueryParams"));
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
- var generateKiwtQuery = function generateKiwtQuery(options, nsValues) {
10
- var encode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
11
- var paramsArray = (0, _generateKiwtQueryParams.default)(options, nsValues, encode);
9
+ const generateKiwtQuery = function (options, nsValues) {
10
+ let encode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
11
+ const paramsArray = (0, _generateKiwtQueryParams.default)(options, nsValues, encode);
12
12
  return paramsArray.length ? '?' + paramsArray.join('&') : '';
13
13
  };
14
- var _default = generateKiwtQuery;
15
- exports.default = _default;
14
+ var _default = exports.default = generateKiwtQuery;