@deviceinsight/ng-ui-components 6.18.0 → 6.19.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 (359) hide show
  1. package/lib/cjs/__mocks__/i18n.d.ts +12 -4
  2. package/lib/cjs/__mocks__/i18n.d.ts.map +1 -1
  3. package/lib/cjs/__mocks__/i18n.js +20 -7
  4. package/lib/cjs/components/chart/Chart.d.ts +1 -1
  5. package/lib/cjs/components/colorpicker/ColorPickerPopper.d.ts +1 -1
  6. package/lib/cjs/components/colorpicker/GradientColorPicker.d.ts +2 -2
  7. package/lib/cjs/components/colorpicker/GridColorPicker.d.ts +2 -2
  8. package/lib/cjs/components/contentHeader/ContentHeader.d.ts +1 -1
  9. package/lib/cjs/components/contentHeader/ContentHeader.d.ts.map +1 -1
  10. package/lib/cjs/components/infobox/InfoBox.d.ts +1 -1
  11. package/lib/cjs/components/infobox/InfoBox.d.ts.map +1 -1
  12. package/lib/cjs/components/input/DateInput.d.ts +2 -2
  13. package/lib/cjs/components/input/DateInput.d.ts.map +1 -1
  14. package/lib/cjs/components/input/DateTimeInput.d.ts +2 -2
  15. package/lib/cjs/components/input/DateTimeInput.d.ts.map +1 -1
  16. package/lib/cjs/components/input/SelectWithSearch.d.ts +4 -1
  17. package/lib/cjs/components/input/SelectWithSearch.d.ts.map +1 -1
  18. package/lib/cjs/components/input/SelectWithSearch.js +25 -4
  19. package/lib/cjs/components/input/SelectWithSearchAsync.d.ts +1 -1
  20. package/lib/cjs/components/input/UrnInput.d.ts +1 -1
  21. package/lib/cjs/components/input/ValidatedTextInput.d.ts +1 -1
  22. package/lib/cjs/components/input/__tests__/DateInput.spec.js +24 -24
  23. package/lib/cjs/components/input/__tests__/DateTimeInput.spec.js +5 -4
  24. package/lib/cjs/components/input/__tests__/SelectWithSearchAsync.spec.js +12 -11
  25. package/lib/cjs/components/link/RouteLink.d.ts +2 -2
  26. package/lib/cjs/components/link/RouteLink.d.ts.map +1 -1
  27. package/lib/cjs/components/multiMenu/MultiMenu.d.ts +1 -1
  28. package/lib/cjs/components/multiMenu/components/MultiMenuItem.d.ts +1 -1
  29. package/lib/cjs/components/pagination/Pagination.d.ts +1 -1
  30. package/lib/cjs/components/pagination/__tests__/Pagination.spec.js +70 -70
  31. package/lib/cjs/components/periodpicker/PeriodPicker.d.ts +2 -2
  32. package/lib/cjs/components/periodpicker/PeriodPicker.d.ts.map +1 -1
  33. package/lib/cjs/components/periodpicker/components/Inputs.d.ts +2 -2
  34. package/lib/cjs/components/periodpicker/components/Inputs.d.ts.map +1 -1
  35. package/lib/cjs/components/periodpicker/components/Menu.d.ts +2 -2
  36. package/lib/cjs/components/periodpicker/components/Menu.d.ts.map +1 -1
  37. package/lib/cjs/components/periodpicker/components/MonthPicker.d.ts +2 -2
  38. package/lib/cjs/components/periodpicker/components/MonthPicker.d.ts.map +1 -1
  39. package/lib/cjs/components/periodpicker/usePeriodName.d.ts +1 -1
  40. package/lib/cjs/components/periodpicker/usePeriodName.d.ts.map +1 -1
  41. package/lib/cjs/components/periodpicker/usePeriodName.js +2 -2
  42. package/lib/cjs/components/prompt/Prompt.d.ts +2 -2
  43. package/lib/cjs/components/prompt/Prompt.d.ts.map +1 -1
  44. package/lib/cjs/components/reactable/Reactable.d.ts +1 -1
  45. package/lib/cjs/components/reactable/helpers/ReactableTable.d.ts +1 -1
  46. package/lib/cjs/components/reactable/helpers/ReactableTableHeader.d.ts +2 -2
  47. package/lib/cjs/components/reactable/helpers/ReactableTableHeader.d.ts.map +1 -1
  48. package/lib/cjs/components/reactable/helpers/ReactableTableRow.d.ts +1 -1
  49. package/lib/cjs/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.d.ts +1 -1
  50. package/lib/cjs/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.js +64 -72
  51. package/lib/cjs/components/slider/Slider.d.ts +2 -2
  52. package/lib/cjs/components/slider/Slider.d.ts.map +1 -1
  53. package/lib/cjs/components/svg/SvgImage.d.ts +2 -2
  54. package/lib/cjs/components/svg/SvgImage.d.ts.map +1 -1
  55. package/lib/cjs/components/svg/utils/__tests__/getMutableNodeList.spec.js +11 -10
  56. package/lib/cjs/components/tabs/RouteTabs.d.ts +1 -1
  57. package/lib/cjs/components/tabs/RouteTabs.d.ts.map +1 -1
  58. package/lib/cjs/components/tabs/RouteTabs.js +2 -2
  59. package/lib/cjs/components/treeview/TreeView.d.ts +1 -1
  60. package/lib/cjs/components/treeview/components/Node.d.ts +1 -1
  61. package/lib/cjs/components/treeview/components/NodeInfo.d.ts +1 -1
  62. package/lib/cjs/components/upload/FileUpload.d.ts +1 -1
  63. package/lib/cjs/components/upload/ImageUpload.d.ts +1 -1
  64. package/lib/cjs/modules/messageBox/messageBox.d.ts +2 -2
  65. package/lib/cjs/modules/messageBox/messageBox.d.ts.map +1 -1
  66. package/lib/esm/__mocks__/i18n.d.ts +12 -4
  67. package/lib/esm/__mocks__/i18n.d.ts.map +1 -1
  68. package/lib/esm/__mocks__/i18n.js +20 -5
  69. package/lib/esm/components/chart/Chart.d.ts +1 -1
  70. package/lib/esm/components/colorpicker/ColorPickerPopper.d.ts +1 -1
  71. package/lib/esm/components/colorpicker/GradientColorPicker.d.ts +2 -2
  72. package/lib/esm/components/colorpicker/GridColorPicker.d.ts +2 -2
  73. package/lib/esm/components/contentHeader/ContentHeader.d.ts +1 -1
  74. package/lib/esm/components/contentHeader/ContentHeader.d.ts.map +1 -1
  75. package/lib/esm/components/infobox/InfoBox.d.ts +1 -1
  76. package/lib/esm/components/infobox/InfoBox.d.ts.map +1 -1
  77. package/lib/esm/components/input/DateInput.d.ts +2 -2
  78. package/lib/esm/components/input/DateInput.d.ts.map +1 -1
  79. package/lib/esm/components/input/DateTimeInput.d.ts +2 -2
  80. package/lib/esm/components/input/DateTimeInput.d.ts.map +1 -1
  81. package/lib/esm/components/input/SelectWithSearch.d.ts +4 -1
  82. package/lib/esm/components/input/SelectWithSearch.d.ts.map +1 -1
  83. package/lib/esm/components/input/SelectWithSearch.js +25 -4
  84. package/lib/esm/components/input/SelectWithSearchAsync.d.ts +1 -1
  85. package/lib/esm/components/input/UrnInput.d.ts +1 -1
  86. package/lib/esm/components/input/ValidatedTextInput.d.ts +1 -1
  87. package/lib/esm/components/input/__tests__/DateInput.spec.js +4 -4
  88. package/lib/esm/components/input/__tests__/DateTimeInput.spec.js +1 -0
  89. package/lib/esm/components/input/__tests__/SelectWithSearchAsync.spec.js +3 -2
  90. package/lib/esm/components/link/RouteLink.d.ts +2 -2
  91. package/lib/esm/components/link/RouteLink.d.ts.map +1 -1
  92. package/lib/esm/components/multiMenu/MultiMenu.d.ts +1 -1
  93. package/lib/esm/components/multiMenu/components/MultiMenuItem.d.ts +1 -1
  94. package/lib/esm/components/pagination/Pagination.d.ts +1 -1
  95. package/lib/esm/components/pagination/__tests__/Pagination.spec.js +53 -53
  96. package/lib/esm/components/periodpicker/PeriodPicker.d.ts +2 -2
  97. package/lib/esm/components/periodpicker/PeriodPicker.d.ts.map +1 -1
  98. package/lib/esm/components/periodpicker/components/Inputs.d.ts +2 -2
  99. package/lib/esm/components/periodpicker/components/Inputs.d.ts.map +1 -1
  100. package/lib/esm/components/periodpicker/components/Menu.d.ts +2 -2
  101. package/lib/esm/components/periodpicker/components/Menu.d.ts.map +1 -1
  102. package/lib/esm/components/periodpicker/components/MonthPicker.d.ts +2 -2
  103. package/lib/esm/components/periodpicker/components/MonthPicker.d.ts.map +1 -1
  104. package/lib/esm/components/periodpicker/usePeriodName.d.ts +1 -1
  105. package/lib/esm/components/periodpicker/usePeriodName.d.ts.map +1 -1
  106. package/lib/esm/components/periodpicker/usePeriodName.js +1 -1
  107. package/lib/esm/components/prompt/Prompt.d.ts +2 -2
  108. package/lib/esm/components/prompt/Prompt.d.ts.map +1 -1
  109. package/lib/esm/components/reactable/Reactable.d.ts +1 -1
  110. package/lib/esm/components/reactable/helpers/ReactableTable.d.ts +1 -1
  111. package/lib/esm/components/reactable/helpers/ReactableTableHeader.d.ts +2 -2
  112. package/lib/esm/components/reactable/helpers/ReactableTableHeader.d.ts.map +1 -1
  113. package/lib/esm/components/reactable/helpers/ReactableTableRow.d.ts +1 -1
  114. package/lib/esm/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.d.ts +1 -1
  115. package/lib/esm/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.js +55 -63
  116. package/lib/esm/components/slider/Slider.d.ts +2 -2
  117. package/lib/esm/components/slider/Slider.d.ts.map +1 -1
  118. package/lib/esm/components/svg/SvgImage.d.ts +2 -2
  119. package/lib/esm/components/svg/SvgImage.d.ts.map +1 -1
  120. package/lib/esm/components/svg/utils/__tests__/getMutableNodeList.spec.js +1 -0
  121. package/lib/esm/components/tabs/RouteTabs.d.ts +1 -1
  122. package/lib/esm/components/tabs/RouteTabs.d.ts.map +1 -1
  123. package/lib/esm/components/tabs/RouteTabs.js +2 -2
  124. package/lib/esm/components/treeview/TreeView.d.ts +1 -1
  125. package/lib/esm/components/treeview/components/Node.d.ts +1 -1
  126. package/lib/esm/components/treeview/components/NodeInfo.d.ts +1 -1
  127. package/lib/esm/components/upload/FileUpload.d.ts +1 -1
  128. package/lib/esm/components/upload/ImageUpload.d.ts +1 -1
  129. package/lib/esm/modules/messageBox/messageBox.d.ts +2 -2
  130. package/lib/esm/modules/messageBox/messageBox.d.ts.map +1 -1
  131. package/lib/esm/src/__mocks__/i18n.d.ts +13 -0
  132. package/lib/esm/src/__mocks__/i18n.d.ts.map +1 -0
  133. package/lib/esm/src/__mocks__/i18n.js +20 -0
  134. package/lib/esm/src/components/chart/Chart.d.ts +38 -0
  135. package/lib/esm/src/components/chart/Chart.d.ts.map +1 -0
  136. package/lib/esm/src/components/chart/Chart.js +202 -0
  137. package/lib/esm/src/components/colorpicker/ColorPickerPopper.d.ts +24 -0
  138. package/lib/esm/src/components/colorpicker/ColorPickerPopper.d.ts.map +1 -0
  139. package/lib/esm/src/components/colorpicker/ColorPickerPopper.js +46 -0
  140. package/lib/esm/src/components/colorpicker/GradientColorPicker.d.ts +63 -0
  141. package/lib/esm/src/components/colorpicker/GradientColorPicker.d.ts.map +1 -0
  142. package/lib/esm/src/components/colorpicker/GradientColorPicker.js +125 -0
  143. package/lib/esm/src/components/colorpicker/GridColorPicker.d.ts +41 -0
  144. package/lib/esm/src/components/colorpicker/GridColorPicker.d.ts.map +1 -0
  145. package/lib/esm/src/components/colorpicker/GridColorPicker.js +30 -0
  146. package/lib/esm/src/components/contentHeader/ContentHeader.d.ts +25 -0
  147. package/lib/esm/src/components/contentHeader/ContentHeader.d.ts.map +1 -0
  148. package/lib/esm/src/components/contentHeader/ContentHeader.js +53 -0
  149. package/lib/esm/src/components/infobox/InfoBox.d.ts +22 -0
  150. package/lib/esm/src/components/infobox/InfoBox.d.ts.map +1 -0
  151. package/lib/esm/src/components/infobox/InfoBox.js +36 -0
  152. package/lib/esm/src/components/input/DateInput.d.ts +28 -0
  153. package/lib/esm/src/components/input/DateInput.d.ts.map +1 -0
  154. package/lib/esm/src/components/input/DateInput.js +157 -0
  155. package/lib/esm/src/components/input/DateTimeInput.d.ts +27 -0
  156. package/lib/esm/src/components/input/DateTimeInput.d.ts.map +1 -0
  157. package/lib/esm/src/components/input/DateTimeInput.js +50 -0
  158. package/lib/esm/src/components/input/SelectWithSearch.d.ts +65 -0
  159. package/lib/esm/src/components/input/SelectWithSearch.d.ts.map +1 -0
  160. package/lib/esm/src/components/input/SelectWithSearch.js +111 -0
  161. package/lib/esm/src/components/input/SelectWithSearchAsync.d.ts +58 -0
  162. package/lib/esm/src/components/input/SelectWithSearchAsync.d.ts.map +1 -0
  163. package/lib/esm/src/components/input/SelectWithSearchAsync.js +100 -0
  164. package/lib/esm/src/components/input/UrnInput.d.ts +22 -0
  165. package/lib/esm/src/components/input/UrnInput.d.ts.map +1 -0
  166. package/lib/esm/src/components/input/UrnInput.js +33 -0
  167. package/lib/esm/src/components/input/ValidatedTextInput.d.ts +35 -0
  168. package/lib/esm/src/components/input/ValidatedTextInput.d.ts.map +1 -0
  169. package/lib/esm/src/components/input/ValidatedTextInput.js +30 -0
  170. package/lib/esm/src/components/input/__tests__/DateInput.spec.d.ts +2 -0
  171. package/lib/esm/src/components/input/__tests__/DateInput.spec.d.ts.map +1 -0
  172. package/lib/esm/src/components/input/__tests__/DateInput.spec.js +85 -0
  173. package/lib/esm/src/components/input/__tests__/DateTimeInput.spec.d.ts +2 -0
  174. package/lib/esm/src/components/input/__tests__/DateTimeInput.spec.d.ts.map +1 -0
  175. package/lib/esm/src/components/input/__tests__/DateTimeInput.spec.js +13 -0
  176. package/lib/esm/src/components/input/__tests__/SelectWithSearchAsync.spec.d.ts +2 -0
  177. package/lib/esm/src/components/input/__tests__/SelectWithSearchAsync.spec.d.ts.map +1 -0
  178. package/lib/esm/src/components/input/__tests__/SelectWithSearchAsync.spec.js +44 -0
  179. package/lib/esm/src/components/link/RouteLink.d.ts +31 -0
  180. package/lib/esm/src/components/link/RouteLink.d.ts.map +1 -0
  181. package/lib/esm/src/components/link/RouteLink.js +55 -0
  182. package/lib/esm/src/components/multiMenu/MultiMenu.d.ts +27 -0
  183. package/lib/esm/src/components/multiMenu/MultiMenu.d.ts.map +1 -0
  184. package/lib/esm/src/components/multiMenu/MultiMenu.js +30 -0
  185. package/lib/esm/src/components/multiMenu/components/MultiMenuContext.d.ts +7 -0
  186. package/lib/esm/src/components/multiMenu/components/MultiMenuContext.d.ts.map +1 -0
  187. package/lib/esm/src/components/multiMenu/components/MultiMenuContext.js +5 -0
  188. package/lib/esm/src/components/multiMenu/components/MultiMenuItem.d.ts +14 -0
  189. package/lib/esm/src/components/multiMenu/components/MultiMenuItem.d.ts.map +1 -0
  190. package/lib/esm/src/components/multiMenu/components/MultiMenuItem.js +24 -0
  191. package/lib/esm/src/components/pagination/Pagination.d.ts +37 -0
  192. package/lib/esm/src/components/pagination/Pagination.d.ts.map +1 -0
  193. package/lib/esm/src/components/pagination/Pagination.js +114 -0
  194. package/lib/esm/src/components/pagination/__tests__/Pagination.spec.d.ts +2 -0
  195. package/lib/esm/src/components/pagination/__tests__/Pagination.spec.d.ts.map +1 -0
  196. package/lib/esm/src/components/pagination/__tests__/Pagination.spec.js +87 -0
  197. package/lib/esm/src/components/periodpicker/PeriodPicker.d.ts +23 -0
  198. package/lib/esm/src/components/periodpicker/PeriodPicker.d.ts.map +1 -0
  199. package/lib/esm/src/components/periodpicker/PeriodPicker.js +11 -0
  200. package/lib/esm/src/components/periodpicker/components/Inputs.d.ts +12 -0
  201. package/lib/esm/src/components/periodpicker/components/Inputs.d.ts.map +1 -0
  202. package/lib/esm/src/components/periodpicker/components/Inputs.js +59 -0
  203. package/lib/esm/src/components/periodpicker/components/Menu.d.ts +11 -0
  204. package/lib/esm/src/components/periodpicker/components/Menu.d.ts.map +1 -0
  205. package/lib/esm/src/components/periodpicker/components/Menu.js +96 -0
  206. package/lib/esm/src/components/periodpicker/components/MonthPicker.d.ts +19 -0
  207. package/lib/esm/src/components/periodpicker/components/MonthPicker.d.ts.map +1 -0
  208. package/lib/esm/src/components/periodpicker/components/MonthPicker.js +62 -0
  209. package/lib/esm/src/components/periodpicker/periods.d.ts +33 -0
  210. package/lib/esm/src/components/periodpicker/periods.d.ts.map +1 -0
  211. package/lib/esm/src/components/periodpicker/periods.js +56 -0
  212. package/lib/esm/src/components/periodpicker/types.d.ts +5 -0
  213. package/lib/esm/src/components/periodpicker/types.d.ts.map +1 -0
  214. package/lib/esm/src/components/periodpicker/types.js +1 -0
  215. package/lib/esm/src/components/periodpicker/usePeriodName.d.ts +7 -0
  216. package/lib/esm/src/components/periodpicker/usePeriodName.d.ts.map +1 -0
  217. package/lib/esm/src/components/periodpicker/usePeriodName.js +38 -0
  218. package/lib/esm/src/components/prompt/Prompt.d.ts +23 -0
  219. package/lib/esm/src/components/prompt/Prompt.d.ts.map +1 -0
  220. package/lib/esm/src/components/prompt/Prompt.js +31 -0
  221. package/lib/esm/src/components/prompt/withPrompt.d.ts +7 -0
  222. package/lib/esm/src/components/prompt/withPrompt.d.ts.map +1 -0
  223. package/lib/esm/src/components/prompt/withPrompt.js +33 -0
  224. package/lib/esm/src/components/reactable/Reactable.d.ts +38 -0
  225. package/lib/esm/src/components/reactable/Reactable.d.ts.map +1 -0
  226. package/lib/esm/src/components/reactable/Reactable.js +18 -0
  227. package/lib/esm/src/components/reactable/helpers/ReactableTable.d.ts +21 -0
  228. package/lib/esm/src/components/reactable/helpers/ReactableTable.d.ts.map +1 -0
  229. package/lib/esm/src/components/reactable/helpers/ReactableTable.js +33 -0
  230. package/lib/esm/src/components/reactable/helpers/ReactableTableFilterRow.d.ts +9 -0
  231. package/lib/esm/src/components/reactable/helpers/ReactableTableFilterRow.d.ts.map +1 -0
  232. package/lib/esm/src/components/reactable/helpers/ReactableTableFilterRow.js +57 -0
  233. package/lib/esm/src/components/reactable/helpers/ReactableTableHeader.d.ts +16 -0
  234. package/lib/esm/src/components/reactable/helpers/ReactableTableHeader.d.ts.map +1 -0
  235. package/lib/esm/src/components/reactable/helpers/ReactableTableHeader.js +52 -0
  236. package/lib/esm/src/components/reactable/helpers/ReactableTableRow.d.ts +16 -0
  237. package/lib/esm/src/components/reactable/helpers/ReactableTableRow.d.ts.map +1 -0
  238. package/lib/esm/src/components/reactable/helpers/ReactableTableRow.js +56 -0
  239. package/lib/esm/src/components/reactable/helpers/ReactableTextFilter.d.ts +9 -0
  240. package/lib/esm/src/components/reactable/helpers/ReactableTextFilter.d.ts.map +1 -0
  241. package/lib/esm/src/components/reactable/helpers/ReactableTextFilter.js +18 -0
  242. package/lib/esm/src/components/reactable/helpers/helper.d.ts +7 -0
  243. package/lib/esm/src/components/reactable/helpers/helper.d.ts.map +1 -0
  244. package/lib/esm/src/components/reactable/helpers/helper.js +90 -0
  245. package/lib/esm/src/components/reactable/types.d.ts +38 -0
  246. package/lib/esm/src/components/reactable/types.d.ts.map +1 -0
  247. package/lib/esm/src/components/reactable/types.js +1 -0
  248. package/lib/esm/src/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.d.ts +69 -0
  249. package/lib/esm/src/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.d.ts.map +1 -0
  250. package/lib/esm/src/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.js +155 -0
  251. package/lib/esm/src/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.d.ts +2 -0
  252. package/lib/esm/src/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.d.ts.map +1 -0
  253. package/lib/esm/src/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.js +130 -0
  254. package/lib/esm/src/components/slider/Slider.d.ts +30 -0
  255. package/lib/esm/src/components/slider/Slider.d.ts.map +1 -0
  256. package/lib/esm/src/components/slider/Slider.js +35 -0
  257. package/lib/esm/src/components/slider/useLimitStyling.d.ts +3 -0
  258. package/lib/esm/src/components/slider/useLimitStyling.d.ts.map +1 -0
  259. package/lib/esm/src/components/slider/useLimitStyling.js +49 -0
  260. package/lib/esm/src/components/svg/SvgImage.d.ts +12 -0
  261. package/lib/esm/src/components/svg/SvgImage.d.ts.map +1 -0
  262. package/lib/esm/src/components/svg/SvgImage.js +37 -0
  263. package/lib/esm/src/components/svg/storybookHelper.d.ts +7 -0
  264. package/lib/esm/src/components/svg/storybookHelper.d.ts.map +1 -0
  265. package/lib/esm/src/components/svg/storybookHelper.js +53 -0
  266. package/lib/esm/src/components/svg/types.d.ts +58 -0
  267. package/lib/esm/src/components/svg/types.d.ts.map +1 -0
  268. package/lib/esm/src/components/svg/types.js +1 -0
  269. package/lib/esm/src/components/svg/utils/__tests__/getMutableNodeList.spec.d.ts +2 -0
  270. package/lib/esm/src/components/svg/utils/__tests__/getMutableNodeList.spec.d.ts.map +1 -0
  271. package/lib/esm/src/components/svg/utils/__tests__/getMutableNodeList.spec.js +24 -0
  272. package/lib/esm/src/components/svg/utils/createHyperlinkModification.d.ts +4 -0
  273. package/lib/esm/src/components/svg/utils/createHyperlinkModification.d.ts.map +1 -0
  274. package/lib/esm/src/components/svg/utils/createHyperlinkModification.js +35 -0
  275. package/lib/esm/src/components/svg/utils/createPositionModification.d.ts +3 -0
  276. package/lib/esm/src/components/svg/utils/createPositionModification.d.ts.map +1 -0
  277. package/lib/esm/src/components/svg/utils/createPositionModification.js +19 -0
  278. package/lib/esm/src/components/svg/utils/findConflicts.d.ts +2 -0
  279. package/lib/esm/src/components/svg/utils/findConflicts.d.ts.map +1 -0
  280. package/lib/esm/src/components/svg/utils/findConflicts.js +23 -0
  281. package/lib/esm/src/components/svg/utils/getMutableNodeList.d.ts +3 -0
  282. package/lib/esm/src/components/svg/utils/getMutableNodeList.d.ts.map +1 -0
  283. package/lib/esm/src/components/svg/utils/getMutableNodeList.js +12 -0
  284. package/lib/esm/src/components/svg/utils/getSvgElement.d.ts +3 -0
  285. package/lib/esm/src/components/svg/utils/getSvgElement.d.ts.map +1 -0
  286. package/lib/esm/src/components/svg/utils/getSvgElement.js +10 -0
  287. package/lib/esm/src/components/svg/utils/renderSvg.d.ts +3 -0
  288. package/lib/esm/src/components/svg/utils/renderSvg.d.ts.map +1 -0
  289. package/lib/esm/src/components/svg/utils/renderSvg.js +88 -0
  290. package/lib/esm/src/components/svg/utils/transformPositionModifications.d.ts +4 -0
  291. package/lib/esm/src/components/svg/utils/transformPositionModifications.d.ts.map +1 -0
  292. package/lib/esm/src/components/svg/utils/transformPositionModifications.js +42 -0
  293. package/lib/esm/src/components/svg/utils/validateSvg.d.ts +3 -0
  294. package/lib/esm/src/components/svg/utils/validateSvg.d.ts.map +1 -0
  295. package/lib/esm/src/components/svg/utils/validateSvg.js +5 -0
  296. package/lib/esm/src/components/tabs/RouteTabs.d.ts +24 -0
  297. package/lib/esm/src/components/tabs/RouteTabs.d.ts.map +1 -0
  298. package/lib/esm/src/components/tabs/RouteTabs.js +67 -0
  299. package/lib/esm/src/components/treeview/TreeView.d.ts +50 -0
  300. package/lib/esm/src/components/treeview/TreeView.d.ts.map +1 -0
  301. package/lib/esm/src/components/treeview/TreeView.js +104 -0
  302. package/lib/esm/src/components/treeview/components/Node.d.ts +37 -0
  303. package/lib/esm/src/components/treeview/components/Node.d.ts.map +1 -0
  304. package/lib/esm/src/components/treeview/components/Node.js +111 -0
  305. package/lib/esm/src/components/treeview/components/NodeInfo.d.ts +25 -0
  306. package/lib/esm/src/components/treeview/components/NodeInfo.d.ts.map +1 -0
  307. package/lib/esm/src/components/treeview/components/NodeInfo.js +64 -0
  308. package/lib/esm/src/components/treeview/constants.d.ts +6 -0
  309. package/lib/esm/src/components/treeview/constants.d.ts.map +1 -0
  310. package/lib/esm/src/components/treeview/constants.js +6 -0
  311. package/lib/esm/src/components/treeview/treeutils.d.ts +59 -0
  312. package/lib/esm/src/components/treeview/treeutils.d.ts.map +1 -0
  313. package/lib/esm/src/components/treeview/treeutils.js +158 -0
  314. package/lib/esm/src/components/treeview/types.d.ts +37 -0
  315. package/lib/esm/src/components/treeview/types.d.ts.map +1 -0
  316. package/lib/esm/src/components/treeview/types.js +1 -0
  317. package/lib/esm/src/components/upload/FileUpload.d.ts +67 -0
  318. package/lib/esm/src/components/upload/FileUpload.d.ts.map +1 -0
  319. package/lib/esm/src/components/upload/FileUpload.js +95 -0
  320. package/lib/esm/src/components/upload/ImageUpload.d.ts +21 -0
  321. package/lib/esm/src/components/upload/ImageUpload.d.ts.map +1 -0
  322. package/lib/esm/src/components/upload/ImageUpload.js +45 -0
  323. package/lib/esm/src/hoc/outsideClick.d.ts +4 -0
  324. package/lib/esm/src/hoc/outsideClick.d.ts.map +1 -0
  325. package/lib/esm/src/hoc/outsideClick.js +73 -0
  326. package/lib/esm/src/i18n/index.d.ts +16 -0
  327. package/lib/esm/src/i18n/index.d.ts.map +1 -0
  328. package/lib/esm/src/i18n/index.js +6 -0
  329. package/lib/esm/src/index.d.ts +52 -0
  330. package/lib/esm/src/index.d.ts.map +1 -0
  331. package/lib/esm/src/index.js +39 -0
  332. package/lib/esm/src/modules/messageBox/messageBox.d.ts +14 -0
  333. package/lib/esm/src/modules/messageBox/messageBox.d.ts.map +1 -0
  334. package/lib/esm/src/modules/messageBox/messageBox.js +56 -0
  335. package/lib/esm/src/modules/utils/nanoidGen.d.ts +2 -0
  336. package/lib/esm/src/modules/utils/nanoidGen.d.ts.map +1 -0
  337. package/lib/esm/src/modules/utils/nanoidGen.js +3 -0
  338. package/lib/esm/src/modules/utils/uuidGen.d.ts +2 -0
  339. package/lib/esm/src/modules/utils/uuidGen.d.ts.map +1 -0
  340. package/lib/esm/src/modules/utils/uuidGen.js +13 -0
  341. package/lib/esm/src/types/i18n.d.ts +5 -0
  342. package/lib/esm/src/types/i18n.d.ts.map +1 -0
  343. package/lib/esm/src/types/i18n.js +1 -0
  344. package/lib/esm/src/types/pagination.d.ts +19 -0
  345. package/lib/esm/src/types/pagination.d.ts.map +1 -0
  346. package/lib/esm/src/types/pagination.js +1 -0
  347. package/lib/esm/src/utils/dayjsLocales.d.ts +10 -0
  348. package/lib/esm/src/utils/dayjsLocales.d.ts.map +1 -0
  349. package/lib/esm/src/utils/dayjsLocales.js +12 -0
  350. package/lib/esm/src/utils/resolvePath.d.ts +2 -0
  351. package/lib/esm/src/utils/resolvePath.d.ts.map +1 -0
  352. package/lib/esm/src/utils/resolvePath.js +4 -0
  353. package/lib/esm/vite.config.d.mts +3 -0
  354. package/lib/esm/vite.config.d.mts.map +1 -0
  355. package/lib/esm/vite.config.mjs +9 -0
  356. package/lib/esm/vitest.setup.d.ts +3 -0
  357. package/lib/esm/vitest.setup.d.ts.map +1 -0
  358. package/lib/esm/vitest.setup.js +10 -0
  359. package/package.json +24 -54
@@ -0,0 +1,58 @@
1
+ import * as React from 'react';
2
+ import { Pageable } from '../../types/pagination';
3
+ import '../../assets/react-select.css';
4
+ import '../../assets/react-select-custom.css';
5
+ export declare type Props<Item, ID> = {
6
+ /** Flag to preselect the status of the checkbox */
7
+ value: ID | null | undefined;
8
+ /** Function, executed when selecting value */
9
+ onChange: (item: ID | null | undefined) => void;
10
+ /** Identifier for value */
11
+ valueKey: string;
12
+ /** Identifier for label */
13
+ labelKey: string;
14
+ /** Function, executed when the component mounts and updates */
15
+ searchByQuery: (query: string, offset: number) => Promise<Pageable<Item>>;
16
+ /** Function, executed when the component mounts and updates */
17
+ searchById: (id: ID) => Promise<Item | null | undefined>;
18
+ /** (Optional) if set, returns a custom message if no results are available*/
19
+ noResultsMessage?: string;
20
+ /** (Optional) if true, enables button to clear field on click */
21
+ clearable?: boolean;
22
+ /** (Optional) indicates if the component is disabled or not */
23
+ disabled?: boolean;
24
+ /** (Optional) Whether the menu should use a portal, and where it should attach */
25
+ menuPortalTarget?: HTMLElement;
26
+ /** Placeholder */
27
+ placeholder?: string;
28
+ /** @ignore */
29
+ 'data-testid'?: string;
30
+ };
31
+ declare type SelectItem<ID> = {
32
+ value: ID;
33
+ label: string;
34
+ };
35
+ declare type State<ID extends string | number> = {
36
+ cache: Record<ID, SelectItem<ID>>;
37
+ currentItem: SelectItem<ID> | null | undefined;
38
+ };
39
+ /**
40
+ * SelectWithSearchAsync enhances a native select list by applying a search functionality to it.
41
+ * Fetches selectable results asynchronously while showing small loading indicator
42
+ */
43
+ export default class SelectWithSearchAsync<Item, ID extends string | number> extends React.Component<Props<Item, ID>, State<ID>> {
44
+ state: State<ID>;
45
+ componentDidMount(): void;
46
+ componentDidUpdate(): void;
47
+ transformBackendItemToSelectItem: (backendItem: any) => SelectItem<ID>;
48
+ reloadItemFromCache: () => boolean;
49
+ addBackendItemToCache: (item: Item | null | undefined) => void;
50
+ fetchOptions: (input: string, options: Array<Item>) => Promise<{
51
+ hasMore: boolean;
52
+ options: Array<any>;
53
+ }>;
54
+ handleChange: (item: SelectItem<ID> | null | undefined) => void;
55
+ render(): React.JSX.Element;
56
+ }
57
+ export {};
58
+ //# sourceMappingURL=SelectWithSearchAsync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectWithSearchAsync.d.ts","sourceRoot":"","sources":["../../../../../src/components/input/SelectWithSearchAsync.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAC,QAAQ,EAAC,MAAM,wBAAwB,CAAC;AAChD,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAE9C,oBAAY,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI;IAC7B,mDAAmD;IACnD,KAAK,EAAE,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IAE7B,8CAA8C;IAC9C,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;IAEhD,2BAA2B;IAC3B,QAAQ,EAAE,MAAM,CAAC;IAEjB,2BAA2B;IAC3B,QAAQ,EAAE,MAAM,CAAC;IAEjB,+DAA+D;IAC/D,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAE1E,+DAA+D;IAC/D,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,OAAO,CAAC,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IAEzD,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,iEAAiE;IACjE,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,kFAAkF;IAClF,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAE/B,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,aAAK,UAAU,CAAC,EAAE,IAAI;IACrB,KAAK,EAAE,EAAE,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,aAAK,KAAK,CAAC,EAAE,SAAS,MAAM,GAAG,MAAM,IAAI;IACxC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;CAC/C,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,qBAAqB,CAAC,IAAI,EAAE,EAAE,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,KAAK,CAAC,SAAS,CACnG,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,EACf,KAAK,CAAC,EAAE,CAAC,CACT;IACA,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAGd;IAEF,iBAAiB;IAQjB,kBAAkB;IAiBlB,gCAAgC,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,UAAU,CAAC,EAAE,CAAC,CAMpE;IACF,mBAAmB,EAAE,MAAM,OAAO,CAYhC;IACF,qBAAqB,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,KAAK,IAAI,CAQ5D;IAEF,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;KAAC,CAAC,CAgBrG;IAEF,YAAY,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,KAAK,IAAI,CAgB7D;IAEF,MAAM;CAmBN"}
@@ -0,0 +1,100 @@
1
+ import * as React from 'react';
2
+ import { AsyncPaginate } from 'react-select-async-paginate';
3
+ import '../../assets/react-select.css';
4
+ import '../../assets/react-select-custom.css';
5
+ /**
6
+ * SelectWithSearchAsync enhances a native select list by applying a search functionality to it.
7
+ * Fetches selectable results asynchronously while showing small loading indicator
8
+ */
9
+ export default class SelectWithSearchAsync extends React.Component {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.state = {
13
+ cache: {},
14
+ currentItem: null
15
+ };
16
+ this.transformBackendItemToSelectItem = (backendItem) => {
17
+ const { labelKey, valueKey } = this.props;
18
+ return {
19
+ value: backendItem[valueKey],
20
+ label: backendItem[labelKey]
21
+ };
22
+ };
23
+ this.reloadItemFromCache = () => {
24
+ const { value } = this.props;
25
+ const { currentItem, cache } = this.state;
26
+ if (value && (!currentItem || currentItem.value !== value) && cache[value]) {
27
+ this.setState({
28
+ currentItem: cache[value]
29
+ });
30
+ return true;
31
+ }
32
+ return false;
33
+ };
34
+ this.addBackendItemToCache = (item) => {
35
+ if (item) {
36
+ const selectItem = this.transformBackendItemToSelectItem(item);
37
+ const id = selectItem.value;
38
+ this.setState(({ cache }) => ({
39
+ cache: { ...cache, [id]: selectItem }
40
+ }));
41
+ }
42
+ };
43
+ this.fetchOptions = async (input, options) => {
44
+ const { searchByQuery } = this.props;
45
+ try {
46
+ const { content, number, totalPages } = await searchByQuery(input, options.length);
47
+ return {
48
+ options: content.map(this.transformBackendItemToSelectItem),
49
+ hasMore: number < totalPages - 1
50
+ };
51
+ }
52
+ catch (error) {
53
+ console.error('Error fetching options:', error);
54
+ return { hasMore: false, options: [] };
55
+ }
56
+ };
57
+ this.handleChange = (item) => {
58
+ const { onChange } = this.props;
59
+ if (item) {
60
+ const id = item.value;
61
+ this.setState(({ cache }) => ({
62
+ cache: { ...cache, [id]: item }
63
+ }), () => {
64
+ onChange(id);
65
+ });
66
+ }
67
+ else {
68
+ onChange(null);
69
+ }
70
+ };
71
+ }
72
+ componentDidMount() {
73
+ const { value, searchById } = this.props;
74
+ if (value) {
75
+ searchById(value).then(this.addBackendItemToCache);
76
+ }
77
+ }
78
+ componentDidUpdate() {
79
+ const { value, searchById } = this.props;
80
+ const { currentItem } = this.state;
81
+ if (value && (!currentItem || currentItem.value !== value)) {
82
+ const foundInCache = this.reloadItemFromCache();
83
+ if (!foundInCache) {
84
+ searchById(value).then(this.addBackendItemToCache);
85
+ }
86
+ }
87
+ else if (!value && currentItem) {
88
+ this.setState({
89
+ currentItem: null
90
+ });
91
+ }
92
+ }
93
+ render() {
94
+ const { clearable, noResultsMessage, disabled, menuPortalTarget } = this.props;
95
+ const { currentItem } = this.state;
96
+ return (React.createElement(AsyncPaginate, { className: "select-search-container", classNamePrefix: "select-search", isClearable: clearable, noResultsText: noResultsMessage, value: currentItem, onChange: this.handleChange,
97
+ // @ts-ignore
98
+ loadOptions: this.fetchOptions, isDisabled: disabled, menuPortalTarget: menuPortalTarget, placeholder: this.props.placeholder }));
99
+ }
100
+ }
@@ -0,0 +1,22 @@
1
+ import * as React from 'react';
2
+ export declare type Props = {
3
+ /** Current value of input field */
4
+ value: string;
5
+ /** Function, executed on change */
6
+ onChange: (value: string) => any;
7
+ };
8
+ declare type State = {
9
+ editMode: boolean;
10
+ };
11
+ /**
12
+ * UrnInput offers a convenient way to add or edit Asset URNs.
13
+ * Usually, a generated default value is passed in as prop.
14
+ */
15
+ export default class UrnInput extends React.Component<Props, State> {
16
+ state: State;
17
+ handleEdit: () => void;
18
+ handleChangeValue: (event: React.SyntheticEvent<HTMLInputElement>) => any;
19
+ render(): React.JSX.Element;
20
+ }
21
+ export {};
22
+ //# sourceMappingURL=UrnInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UrnInput.d.ts","sourceRoot":"","sources":["../../../../../src/components/input/UrnInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,oBAAY,KAAK,GAAG;IACnB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IAEd,mCAAmC;IACnC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC;CACjC,CAAC;AAEF,aAAK,KAAK,GAAG;IACZ,QAAQ,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IAClE,KAAK,EAAE,KAAK,CAEV;IAEF,UAAU,EAAE,MAAM,IAAI,CAGlB;IAEJ,iBAAiB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,GAAG,CAEN;IAEnE,MAAM;CA+BN"}
@@ -0,0 +1,33 @@
1
+ import * as React from 'react';
2
+ import { Button, Icon } from '@deviceinsight/ng-ui-basic-components';
3
+ /**
4
+ * UrnInput offers a convenient way to add or edit Asset URNs.
5
+ * Usually, a generated default value is passed in as prop.
6
+ */
7
+ export default class UrnInput extends React.Component {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.state = {
11
+ editMode: false
12
+ };
13
+ this.handleEdit = () => this.setState({
14
+ editMode: true
15
+ });
16
+ this.handleChangeValue = (event) => this.props.onChange(event.target.value);
17
+ }
18
+ render() {
19
+ const { editMode } = this.state;
20
+ const { value } = this.props;
21
+ if (editMode) {
22
+ return (React.createElement("input", { value: value, onChange: this.handleChangeValue, autoCorrect: "off", spellCheck: "false", autoComplete: "off" }));
23
+ }
24
+ else {
25
+ return (React.createElement("span", null,
26
+ React.createElement("span", { style: {
27
+ marginRight: 10
28
+ } }, value),
29
+ React.createElement(Button, { small: true, onClick: this.handleEdit },
30
+ React.createElement(Icon, { edit: true }))));
31
+ }
32
+ }
33
+ }
@@ -0,0 +1,35 @@
1
+ import React from 'react';
2
+ export declare type Props = {
3
+ /** Value of the input field */
4
+ value: string;
5
+ /** Function, executed on change, takes value and valid as arguments */
6
+ onChange: (value: string, valid: boolean) => void;
7
+ /** Pattern to validate the input */
8
+ pattern: RegExp;
9
+ /** If true, marks the input field as mandatory */
10
+ required: boolean;
11
+ /** Placeholder */
12
+ placeholder: string;
13
+ /** @ignore */
14
+ style?: React.CSSProperties;
15
+ /** @ignore */
16
+ className?: string;
17
+ /** @ignore */
18
+ onBlur?: () => void;
19
+ /** @ignore */
20
+ disabled?: boolean;
21
+ /** (Optional) sets custom styles if the input field's value isn't valid */
22
+ invalidStyle?: React.CSSProperties;
23
+ };
24
+ /**
25
+ * ValidatedTextInput provides an easy way to validate a text inputs value for a certain pattern.
26
+ * This is best used for any form of forms.
27
+ */
28
+ export default class ValidatedTextInput extends React.Component<Props> {
29
+ static defaultProps: {
30
+ required: boolean;
31
+ };
32
+ handleChange: (e: React.SyntheticEvent<HTMLInputElement>) => void;
33
+ render(): React.JSX.Element;
34
+ }
35
+ //# sourceMappingURL=ValidatedTextInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValidatedTextInput.d.ts","sourceRoot":"","sources":["../../../../../src/components/input/ValidatedTextInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,oBAAY,KAAK,GAAG;IACnB,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IAEd,uEAAuE;IACvE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAElD,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAEhB,kDAAkD;IAClD,QAAQ,EAAE,OAAO,CAAC;IAElB,kBAAkB;IAClB,WAAW,EAAE,MAAM,CAAC;IAEpB,cAAc;IACd,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAE5B,cAAc;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,cAAc;IACd,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IAEpB,cAAc;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACnC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC;IACrE,MAAM,CAAC,YAAY,EAAE;QACpB,QAAQ,EAAE,OAAO,CAAC;KAClB,CAEC;IAEF,YAAY,MAAO,MAAM,cAAc,CAAC,gBAAgB,CAAC,UAKvD;IAEF,MAAM;CAaN"}
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ const isValid = (value, pattern, required) => {
3
+ if (!value.length) {
4
+ return !required;
5
+ }
6
+ return pattern.test(value);
7
+ };
8
+ /**
9
+ * ValidatedTextInput provides an easy way to validate a text inputs value for a certain pattern.
10
+ * This is best used for any form of forms.
11
+ */
12
+ export default class ValidatedTextInput extends React.Component {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.handleChange = (e) => {
16
+ const { value } = e.target;
17
+ const { pattern, required, onChange } = this.props;
18
+ const valid = isValid(value, pattern, required);
19
+ onChange(value, valid);
20
+ };
21
+ }
22
+ render() {
23
+ const { style, invalidStyle, value, ...props } = this.props;
24
+ const { pattern, required, ...otherProps } = props;
25
+ return (React.createElement("input", { ...otherProps, value: value, onChange: this.handleChange, style: isValid(value, pattern, required) ? style : { ...style, ...invalidStyle }, type: "text" }));
26
+ }
27
+ }
28
+ ValidatedTextInput.defaultProps = {
29
+ required: false
30
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=DateInput.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateInput.spec.d.ts","sourceRoot":"","sources":["../../../../../../src/components/input/__tests__/DateInput.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,85 @@
1
+ import React, { useState } from 'react';
2
+ import { describe, expect, it, vi } from 'vitest';
3
+ import dayjs from 'dayjs';
4
+ import { act, fireEvent, render, screen, waitFor } from '@testing-library/react';
5
+ import DateInput from '../DateInput';
6
+ const DateStateProvider = ({ children, initialValue }) => {
7
+ const [state, setState] = useState(initialValue);
8
+ return children(state, setState);
9
+ };
10
+ describe('DateInput.js', () => {
11
+ describe('Locale support', () => {
12
+ it('should render date in correct format for de-DE locale', async () => {
13
+ render(React.createElement(DateInput, { value: new Date('2019-02-01').getTime(), onChange: () => { } }));
14
+ await waitFor(() => expect(screen.getByTestId('date-input')).toHaveValue('01.02.2019'));
15
+ });
16
+ });
17
+ describe('Changing values via text input', () => {
18
+ it('should render correct date typed into text input without "invalid" class', async () => {
19
+ await act(async () => {
20
+ render(React.createElement(DateStateProvider, { initialValue: new Date('2019-02-01').getTime() }, (date, setDate) => React.createElement(DateInput, { value: date, onChange: (date) => setDate(date) })));
21
+ });
22
+ await act(async () => {
23
+ fireEvent.change(screen.getByTestId('date-input'), { target: { value: '02.02.2019' } });
24
+ });
25
+ expect(screen.getByTestId('date-input')).toHaveValue('02.02.2019');
26
+ expect(screen.getByTestId('date-input')).not.toHaveClass('invalid');
27
+ });
28
+ it('should render incorrect date typed into text input with "invalid" class', async () => {
29
+ await act(async () => {
30
+ render(React.createElement(DateStateProvider, { initialValue: new Date('2019-02-01').getTime() }, (date, setDate) => React.createElement(DateInput, { value: date, onChange: (date) => setDate(date) })));
31
+ });
32
+ await act(async () => {
33
+ fireEvent.change(screen.getByTestId('date-input'), { target: { value: '02.02.201' } });
34
+ });
35
+ expect(screen.getByTestId('date-input')).toHaveClass('invalid');
36
+ });
37
+ it('should call onChange callback with parsed value of the input during the input is being changed when the value is valid', async () => {
38
+ const onChange = vi.fn();
39
+ await act(async () => {
40
+ render(React.createElement(DateInput, { value: new Date('2019-02-01').getTime(), onChange: onChange }));
41
+ });
42
+ await act(async () => {
43
+ fireEvent.change(screen.getByTestId('date-input'), { target: { value: '02.02.2019' } });
44
+ });
45
+ const currentValue = onChange.mock.calls[onChange.mock.calls.length - 1][0];
46
+ expect(dayjs(currentValue).toISOString()).toEqual(dayjs('2019-02-02').toISOString());
47
+ });
48
+ it('should not call onChange callback while editing the input when the input value is invalid', async () => {
49
+ const onChange = vi.fn();
50
+ await act(async () => {
51
+ render(React.createElement(DateInput, { value: new Date('2019-02-01').getTime(), onChange: onChange }));
52
+ });
53
+ await act(async () => {
54
+ fireEvent.change(screen.getByTestId('date-input'), { target: { value: '02.02.201' } });
55
+ });
56
+ expect(onChange).not.toHaveBeenCalled();
57
+ });
58
+ it('should display the current value in the input field if the input value is invalid and the input became blurred', async () => {
59
+ await act(async () => {
60
+ render(React.createElement(DateStateProvider, { initialValue: new Date('2019-02-01').getTime() }, (date, setDate) => React.createElement(DateInput, { value: date, onChange: (date) => setDate(date) })));
61
+ });
62
+ await act(async () => {
63
+ fireEvent.change(screen.getByTestId('date-input'), { target: { value: '02.02.201' } });
64
+ fireEvent.blur(screen.getByTestId('date-input'));
65
+ });
66
+ expect(screen.getByTestId('date-input')).toHaveValue('01.02.2019');
67
+ });
68
+ it('should display invalid date text in the input when the value is NaN', async () => {
69
+ await act(async () => {
70
+ render(React.createElement(DateInput, { value: NaN, onChange: () => { } }));
71
+ });
72
+ expect(screen.getByTestId('date-input')).toHaveValue('dateInput.invalidDate');
73
+ });
74
+ it('should call onChange callback with [null, true] when empty string is set to input field', async () => {
75
+ const onChange = vi.fn();
76
+ await act(async () => {
77
+ render(React.createElement(DateInput, { value: Date.now(), onChange: onChange }));
78
+ });
79
+ await act(async () => {
80
+ fireEvent.change(screen.getByTestId('date-input'), { target: { value: '' } });
81
+ });
82
+ expect(onChange.mock.calls).toEqual([[null, true]]);
83
+ });
84
+ });
85
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=DateTimeInput.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateTimeInput.spec.d.ts","sourceRoot":"","sources":["../../../../../../src/components/input/__tests__/DateTimeInput.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { describe, expect, it } from 'vitest';
3
+ import DateTimeInput from '../DateTimeInput';
4
+ import { render, screen } from '@testing-library/react';
5
+ describe('DateTimeInput.js', () => {
6
+ it('should update time when timestamp has changed', () => {
7
+ const { rerender } = render(React.createElement(DateTimeInput, { timestamp: new Date('2019-02-01T11:11:00').getTime(), onChange: () => { } }));
8
+ const timeElement = screen.queryByDisplayValue('11:11');
9
+ expect(timeElement).toBeInTheDocument();
10
+ rerender(React.createElement(DateTimeInput, { timestamp: new Date('2019-02-02T03:24:00').getTime(), onChange: () => { } }));
11
+ expect(timeElement).toHaveDisplayValue('03:24');
12
+ });
13
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=SelectWithSearchAsync.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectWithSearchAsync.spec.d.ts","sourceRoot":"","sources":["../../../../../../src/components/input/__tests__/SelectWithSearchAsync.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,44 @@
1
+ import React from 'react';
2
+ import { beforeEach, describe, expect, it, vi } from 'vitest';
3
+ import SelectWithSearchAsync from '../SelectWithSearchAsync';
4
+ import { render, screen, waitFor } from '@testing-library/react';
5
+ // helper data
6
+ const obj1 = { id: 1, label: 'obj 1' };
7
+ const obj5 = { id: 5, label: 'obj 5' };
8
+ const content = [obj1, obj5];
9
+ const searchByQuery = vi.fn(() => Promise.resolve({
10
+ content,
11
+ totalElements: 2,
12
+ totalPages: 1,
13
+ number: 0,
14
+ size: 5,
15
+ sort: []
16
+ }));
17
+ const searchById = vi.fn((id) => Promise.resolve(content.find((item) => item.id === id)));
18
+ const noop = () => { };
19
+ describe('SelectWithSearchAsync.js', () => {
20
+ beforeEach(() => {
21
+ searchByQuery.mockClear();
22
+ searchById.mockClear();
23
+ });
24
+ it(`should fetch initial value`, async () => {
25
+ render(React.createElement(SelectWithSearchAsync, { value: 5, onChange: noop, valueKey: "id", labelKey: "label", searchByQuery: searchByQuery, searchById: searchById }));
26
+ await waitFor(() => {
27
+ expect(searchById).toHaveBeenCalledTimes(1);
28
+ expect(searchById).toHaveBeenCalledWith(5);
29
+ });
30
+ await waitFor(() => {
31
+ expect(screen.queryByText(obj5.label)).toBeInTheDocument();
32
+ });
33
+ });
34
+ it(`should fetch and display current value's label if the values is changed from outside`, async () => {
35
+ const { rerender } = render(React.createElement(SelectWithSearchAsync, { value: 5, onChange: noop, valueKey: "id", labelKey: "label", searchByQuery: searchByQuery, searchById: searchById }));
36
+ await waitFor(() => {
37
+ expect(screen.queryByText(obj5.label)).toBeInTheDocument();
38
+ });
39
+ rerender(React.createElement(SelectWithSearchAsync, { value: 1, onChange: noop, valueKey: "id", labelKey: "label", searchByQuery: searchByQuery, searchById: searchById }));
40
+ await waitFor(() => {
41
+ expect(screen.queryByText(obj1.label)).toBeInTheDocument();
42
+ });
43
+ });
44
+ });
@@ -0,0 +1,31 @@
1
+ import React from 'react';
2
+ import { RouteComponentProps } from 'react-router-dom';
3
+ import { TranslationDescriptor } from '../../types/i18n';
4
+ declare type LocationShape = RouteComponentProps['location'];
5
+ export declare type Props = {
6
+ to: string | LocationShape;
7
+ /** a title tooltip */
8
+ title?: TranslationDescriptor;
9
+ /** a keyboard shortcut that activates the link */
10
+ keyboardShortcut?: string;
11
+ /**
12
+ * a function called before the link is activated, should return a promise that either
13
+ * - rejects: to abort the navigation
14
+ * - resolves: to continue the navigation with
15
+ * - resolves with a new location: to continue the navigation with a new path
16
+ * */
17
+ confirm?: () => Promise<(string | null | undefined) | (LocationShape | null | undefined)>;
18
+ /** @ignore */
19
+ children?: any;
20
+ /** @ignore */
21
+ className?: string;
22
+ /** @ignore */
23
+ 'data-testid'?: string;
24
+ };
25
+ /**
26
+ * RouteLink enables the possibility to add new links to existing routes.
27
+ * Those routes can also be accessed via `keyboardShortcut`
28
+ */
29
+ export default function RouteLink({ to, confirm, className, title, children, keyboardShortcut, ...otherProps }: Props): React.JSX.Element;
30
+ export {};
31
+ //# sourceMappingURL=RouteLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RouteLink.d.ts","sourceRoot":"","sources":["../../../../../src/components/link/RouteLink.tsx"],"names":[],"mappings":"AACA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAC,mBAAmB,EAAa,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAC,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AAEvD,aAAK,aAAa,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;AAKrD,oBAAY,KAAK,GAAG;IACnB,EAAE,EAAE,MAAM,GAAG,aAAa,CAAC;IAE3B,sBAAsB;IACtB,KAAK,CAAC,EAAE,qBAAqB,CAAC;IAE9B,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;SAKK;IACL,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC;IAE1F,cAAc;IACd,QAAQ,CAAC,EAAE,GAAG,CAAC;IAEf,cAAc;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAAC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAC,EAAE,KAAK,qBAkElH"}
@@ -0,0 +1,55 @@
1
+ /* eslint no-unused-vars: 0 */
2
+ import React, { useCallback, useEffect } from 'react';
3
+ import { useTranslation } from '../../i18n';
4
+ import { useHistory } from 'react-router-dom';
5
+ const isModifiedEvent = (event) => !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);
6
+ /**
7
+ * RouteLink enables the possibility to add new links to existing routes.
8
+ * Those routes can also be accessed via `keyboardShortcut`
9
+ */
10
+ export default function RouteLink({ to, confirm, className, title, children, keyboardShortcut, ...otherProps }) {
11
+ const history = useHistory();
12
+ const { t } = useTranslation();
13
+ const pushRoute = useCallback(() => {
14
+ if (confirm) {
15
+ confirm()
16
+ .then((location) => history.push(location || to))
17
+ .catch(() => {
18
+ // Exception means that the user didn't confirm, we don't need to react for that.
19
+ });
20
+ }
21
+ else {
22
+ history.push(to);
23
+ }
24
+ }, [confirm, history, to]);
25
+ const handleKeyEvent = useCallback((event) => {
26
+ if (keyboardShortcut &&
27
+ event.key === keyboardShortcut &&
28
+ !isModifiedEvent(event) && // @ts-ignore EventTarget is a Node and has a tagName
29
+ event.target.tagName && // @ts-ignore EventTarget is a Node and has a tagName
30
+ !['INPUT', 'SELECT', 'TEXTAREA'].includes(event.target.tagName)) {
31
+ event.preventDefault();
32
+ pushRoute();
33
+ }
34
+ }, [keyboardShortcut, pushRoute]);
35
+ useEffect(() => {
36
+ if (keyboardShortcut) {
37
+ window.addEventListener('keydown', handleKeyEvent);
38
+ return () => {
39
+ window.removeEventListener('keydown', handleKeyEvent);
40
+ };
41
+ }
42
+ }, [keyboardShortcut, handleKeyEvent]);
43
+ const handleClickEvent = (event) => {
44
+ if (event.button === 0 && !isModifiedEvent(event)) {
45
+ event.preventDefault();
46
+ pushRoute();
47
+ }
48
+ };
49
+ const href = history.createHref(typeof to === 'string' ? { pathname: to } : to);
50
+ return (React.createElement("a", { href: href, onClick: handleClickEvent, className: `di route-link ${className || ''}`, title: title
51
+ ? t(title.id, {
52
+ defaultValue: title.defaultValue
53
+ })
54
+ : undefined, ...otherProps }, children));
55
+ }
@@ -0,0 +1,27 @@
1
+ import * as React from 'react';
2
+ import { Placement, Modifier } from '@popperjs/core';
3
+ export declare type Props = {
4
+ /** Enabler for the Multimenu */
5
+ menuButton: React.ReactNode;
6
+ /** (Optional) if set, sets the direction in which the MultiMenu should open */
7
+ direction?: Placement;
8
+ /** Should contain several &lt;MultiMenuItem/&gt; elements */
9
+ children?: React.ReactNode;
10
+ /** (Optional) sets additional (css) classes */
11
+ className?: string;
12
+ /** (Optional) https://popper.js.org/popper-documentation.html#modifiers..preventOverflow */
13
+ popperModifiers?: Modifier<any, any>[];
14
+ };
15
+ declare type State = {
16
+ contentVisible: boolean;
17
+ };
18
+ /**
19
+ * MultiMenu enables a toggleable menu to either show more content and further functionality.
20
+ */
21
+ export default class MultiMenu extends React.Component<Props, State> {
22
+ state: State;
23
+ toggleMenu: () => void;
24
+ render(): React.JSX.Element;
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=MultiMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiMenu.d.ts","sourceRoot":"","sources":["../../../../../src/components/multiMenu/MultiMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AAMnD,oBAAY,KAAK,GAAG;IACnB,gCAAgC;IAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC;IAE5B,+EAA+E;IAC/E,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,4FAA4F;IAC5F,eAAe,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;CACvC,CAAC;AAEF,aAAK,KAAK,GAAG;IACZ,cAAc,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IACnE,KAAK,EAAE,KAAK,CAEV;IAEF,UAAU,EAAE,MAAM,IAAI,CAIpB;IAEF,MAAM;CA6BN"}
@@ -0,0 +1,30 @@
1
+ import * as React from 'react';
2
+ import { Popup } from '@deviceinsight/ng-ui-basic-components';
3
+ import Context from './components/MultiMenuContext';
4
+ /**
5
+ * MultiMenu enables a toggleable menu to either show more content and further functionality.
6
+ */
7
+ export default class MultiMenu extends React.Component {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.state = {
11
+ contentVisible: false
12
+ };
13
+ this.toggleMenu = () => {
14
+ this.setState((prevState) => ({
15
+ contentVisible: !prevState.contentVisible
16
+ }));
17
+ };
18
+ }
19
+ render() {
20
+ const { contentVisible } = this.state;
21
+ const { menuButton, children, direction, className, popperModifiers } = this.props;
22
+ return (React.createElement("span", null,
23
+ React.createElement(Popup, { active: contentVisible, onHide: this.toggleMenu, handler: menuButton, direction: direction, className: className ? className : '', modifiers: popperModifiers, onHandlerClick: this.toggleMenu },
24
+ React.createElement("div", { className: "di multimenu" },
25
+ React.createElement("div", { className: `drop ${direction ? direction : 'bottom'} ${contentVisible ? 'show' : ''}` },
26
+ React.createElement(Context.Provider, { value: {
27
+ toggleMenu: this.toggleMenu
28
+ } }, children))))));
29
+ }
30
+ }
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ declare type ContextType = {
3
+ toggleMenu: () => void;
4
+ };
5
+ declare const MultiMenuContext: React.Context<ContextType>;
6
+ export default MultiMenuContext;
7
+ //# sourceMappingURL=MultiMenuContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiMenuContext.d.ts","sourceRoot":"","sources":["../../../../../../src/components/multiMenu/components/MultiMenuContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,aAAK,WAAW,GAAG;IAClB,UAAU,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,QAAA,MAAM,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAE/C,CAAC;AAEH,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ const MultiMenuContext = React.createContext({
3
+ toggleMenu: () => { }
4
+ });
5
+ export default MultiMenuContext;