@gisce/react-ooui 1.2.0-rc.9 → 1.2.0-rc.91

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 (355) hide show
  1. package/README.md +0 -6
  2. package/dist/actionbar/ActionButton.d.ts +2 -2
  3. package/dist/actionbar/ActionButton.d.ts.map +1 -1
  4. package/dist/actionbar/AttachmentsButton.d.ts +2 -2
  5. package/dist/actionbar/AttachmentsButton.d.ts.map +1 -1
  6. package/dist/actionbar/AttachmentsButtonWrapper.d.ts +2 -2
  7. package/dist/actionbar/AttachmentsButtonWrapper.d.ts.map +1 -1
  8. package/dist/actionbar/ButtonWithBadge.d.ts +2 -2
  9. package/dist/actionbar/ButtonWithBadge.d.ts.map +1 -1
  10. package/dist/actionbar/ChangeViewButton.d.ts +2 -2
  11. package/dist/actionbar/ChangeViewButton.d.ts.map +1 -1
  12. package/dist/actionbar/DashboardActionBar.d.ts +2 -2
  13. package/dist/actionbar/DashboardActionBar.d.ts.map +1 -1
  14. package/dist/actionbar/DropdownButton.d.ts +2 -2
  15. package/dist/actionbar/DropdownButton.d.ts.map +1 -1
  16. package/dist/actionbar/FormActionBar.d.ts +2 -2
  17. package/dist/actionbar/FormActionBar.d.ts.map +1 -1
  18. package/dist/actionbar/GraphActionBar.d.ts +2 -2
  19. package/dist/actionbar/GraphActionBar.d.ts.map +1 -1
  20. package/dist/actionbar/NewButton.d.ts +2 -2
  21. package/dist/actionbar/NewButton.d.ts.map +1 -1
  22. package/dist/actionbar/SearchBar.d.ts +2 -2
  23. package/dist/actionbar/SearchBar.d.ts.map +1 -1
  24. package/dist/actionbar/TreeActionBar.d.ts +2 -2
  25. package/dist/actionbar/TreeActionBar.d.ts.map +1 -1
  26. package/dist/common/ButtonWithTooltip.d.ts +2 -2
  27. package/dist/common/ButtonWithTooltip.d.ts.map +1 -1
  28. package/dist/common/DatePicker.d.ts +14 -2
  29. package/dist/common/DatePicker.d.ts.map +1 -1
  30. package/dist/common/Field.d.ts +1 -1
  31. package/dist/common/Field.d.ts.map +1 -1
  32. package/dist/context/ActionViewContext.d.ts +5 -1
  33. package/dist/context/ActionViewContext.d.ts.map +1 -1
  34. package/dist/context/ConfigContext.d.ts +7 -0
  35. package/dist/context/ConfigContext.d.ts.map +1 -0
  36. package/dist/context/ContentRootContext.d.ts.map +1 -1
  37. package/dist/context/FormContext.d.ts +4 -2
  38. package/dist/context/FormContext.d.ts.map +1 -1
  39. package/dist/helpers/errorHelper.d.ts +6 -0
  40. package/dist/helpers/errorHelper.d.ts.map +1 -0
  41. package/dist/helpers/filesHelper.d.ts.map +1 -1
  42. package/dist/helpers/formHelper.d.ts +5 -3
  43. package/dist/helpers/formHelper.d.ts.map +1 -1
  44. package/dist/helpers/iconMapper.d.ts +11 -2
  45. package/dist/helpers/iconMapper.d.ts.map +1 -1
  46. package/dist/helpers/one2manyHelper.d.ts +12 -4
  47. package/dist/helpers/one2manyHelper.d.ts.map +1 -1
  48. package/dist/helpers/searchHelper.d.ts +1 -1
  49. package/dist/helpers/searchHelper.d.ts.map +1 -1
  50. package/dist/helpers/treeHelper.d.ts +1 -1
  51. package/dist/helpers/treeHelper.d.ts.map +1 -1
  52. package/dist/hooks/useExport.d.ts +44 -0
  53. package/dist/hooks/useExport.d.ts.map +1 -0
  54. package/dist/index.d.ts +4 -1
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/locales/ca_ES.d.ts +2 -0
  57. package/dist/locales/ca_ES.d.ts.map +1 -1
  58. package/dist/locales/en_US.d.ts +2 -0
  59. package/dist/locales/en_US.d.ts.map +1 -1
  60. package/dist/locales/es_ES.d.ts +2 -0
  61. package/dist/locales/es_ES.d.ts.map +1 -1
  62. package/dist/react-ooui.es.js +9360 -29063
  63. package/dist/react-ooui.es.js.map +1 -1
  64. package/dist/react-ooui.umd.js +16 -265
  65. package/dist/react-ooui.umd.js.map +1 -1
  66. package/dist/style.css +1 -0
  67. package/dist/types/index.d.ts +1 -0
  68. package/dist/types/index.d.ts.map +1 -1
  69. package/dist/ui/ActionErrorDialog.d.ts.map +1 -1
  70. package/dist/ui/ErrorAlert.d.ts +6 -0
  71. package/dist/ui/ErrorAlert.d.ts.map +1 -0
  72. package/dist/ui/FavouriteButton.d.ts +2 -2
  73. package/dist/ui/FavouriteButton.d.ts.map +1 -1
  74. package/dist/ui/GoToResourceModal.d.ts +2 -2
  75. package/dist/ui/GoToResourceModal.d.ts.map +1 -1
  76. package/dist/ui/TitleHeader.d.ts +2 -2
  77. package/dist/ui/TitleHeader.d.ts.map +1 -1
  78. package/dist/views/ActionView.d.ts.map +1 -1
  79. package/dist/views/CurrentTabContent.d.ts +2 -2
  80. package/dist/views/CurrentTabContent.d.ts.map +1 -1
  81. package/dist/views/RootView.d.ts.map +1 -1
  82. package/dist/views/TabContent.d.ts +1 -1
  83. package/dist/views/TabContent.d.ts.map +1 -1
  84. package/dist/views/TabSelector.d.ts +2 -2
  85. package/dist/views/TabSelector.d.ts.map +1 -1
  86. package/dist/views/actionViews/DashboardActionView.d.ts +2 -2
  87. package/dist/views/actionViews/DashboardActionView.d.ts.map +1 -1
  88. package/dist/views/actionViews/FormActionView.d.ts +2 -2
  89. package/dist/views/actionViews/FormActionView.d.ts.map +1 -1
  90. package/dist/views/actionViews/GraphActionView.d.ts +2 -2
  91. package/dist/views/actionViews/GraphActionView.d.ts.map +1 -1
  92. package/dist/views/actionViews/TreeActionView.d.ts +2 -2
  93. package/dist/views/actionViews/TreeActionView.d.ts.map +1 -1
  94. package/dist/views/tabs/Tab.d.ts +2 -2
  95. package/dist/views/tabs/Tab.d.ts.map +1 -1
  96. package/dist/widgets/WidgetFactory.d.ts.map +1 -1
  97. package/dist/widgets/base/Binary.d.ts +3 -3
  98. package/dist/widgets/base/Binary.d.ts.map +1 -1
  99. package/dist/widgets/base/Boolean.d.ts +2 -2
  100. package/dist/widgets/base/Boolean.d.ts.map +1 -1
  101. package/dist/widgets/base/Button.d.ts +2 -2
  102. package/dist/widgets/base/Button.d.ts.map +1 -1
  103. package/dist/widgets/base/Char.d.ts +2 -2
  104. package/dist/widgets/base/Char.d.ts.map +1 -1
  105. package/dist/widgets/base/Date.d.ts +2 -2
  106. package/dist/widgets/base/Date.d.ts.map +1 -1
  107. package/dist/widgets/base/DateTime.d.ts +2 -2
  108. package/dist/widgets/base/DateTime.d.ts.map +1 -1
  109. package/dist/widgets/base/Email.d.ts +2 -2
  110. package/dist/widgets/base/Email.d.ts.map +1 -1
  111. package/dist/widgets/base/Float.d.ts +2 -2
  112. package/dist/widgets/base/Float.d.ts.map +1 -1
  113. package/dist/widgets/base/FloatTime.d.ts +1 -1
  114. package/dist/widgets/base/FloatTime.d.ts.map +1 -1
  115. package/dist/widgets/base/Image.d.ts +3 -3
  116. package/dist/widgets/base/Image.d.ts.map +1 -1
  117. package/dist/widgets/base/Integer.d.ts +2 -2
  118. package/dist/widgets/base/Integer.d.ts.map +1 -1
  119. package/dist/widgets/base/Label.d.ts +2 -2
  120. package/dist/widgets/base/Label.d.ts.map +1 -1
  121. package/dist/widgets/base/LinkInput.d.ts +2 -2
  122. package/dist/widgets/base/LinkInput.d.ts.map +1 -1
  123. package/dist/widgets/base/MultiSelection.d.ts +3 -3
  124. package/dist/widgets/base/MultiSelection.d.ts.map +1 -1
  125. package/dist/widgets/base/ProgressBar.d.ts +3 -3
  126. package/dist/widgets/base/ProgressBar.d.ts.map +1 -1
  127. package/dist/widgets/base/Reference.d.ts +1 -1
  128. package/dist/widgets/base/Reference.d.ts.map +1 -1
  129. package/dist/widgets/base/ReferenceTree.d.ts +8 -0
  130. package/dist/widgets/base/ReferenceTree.d.ts.map +1 -0
  131. package/dist/widgets/base/Selection.d.ts +3 -3
  132. package/dist/widgets/base/Selection.d.ts.map +1 -1
  133. package/dist/widgets/base/Separator.d.ts +2 -2
  134. package/dist/widgets/base/Separator.d.ts.map +1 -1
  135. package/dist/widgets/base/Text.d.ts +2 -2
  136. package/dist/widgets/base/Text.d.ts.map +1 -1
  137. package/dist/widgets/base/Url.d.ts +2 -2
  138. package/dist/widgets/base/Url.d.ts.map +1 -1
  139. package/dist/widgets/base/many2one/Many2one.d.ts +1 -1
  140. package/dist/widgets/base/many2one/Many2one.d.ts.map +1 -1
  141. package/dist/widgets/base/many2one/Many2oneSuffix.d.ts +2 -2
  142. package/dist/widgets/base/many2one/Many2oneSuffix.d.ts.map +1 -1
  143. package/dist/widgets/base/many2one/Many2oneSuffixModal.d.ts +2 -2
  144. package/dist/widgets/base/many2one/Many2oneSuffixModal.d.ts.map +1 -1
  145. package/dist/widgets/base/many2one/Many2oneTree.d.ts +6 -0
  146. package/dist/widgets/base/many2one/Many2oneTree.d.ts.map +1 -0
  147. package/dist/widgets/base/one2many/One2many.d.ts +2 -2
  148. package/dist/widgets/base/one2many/One2many.d.ts.map +1 -1
  149. package/dist/widgets/base/one2many/One2manyInput.d.ts.map +1 -1
  150. package/dist/widgets/base/one2many/One2manyTopBar.d.ts +2 -2
  151. package/dist/widgets/base/one2many/One2manyTopBar.d.ts.map +1 -1
  152. package/dist/widgets/containers/Group.d.ts.map +1 -1
  153. package/dist/widgets/custom/Avatar.d.ts +10 -0
  154. package/dist/widgets/custom/Avatar.d.ts.map +1 -0
  155. package/dist/widgets/custom/ButtonGroup.d.ts +2 -2
  156. package/dist/widgets/custom/ButtonGroup.d.ts.map +1 -1
  157. package/dist/widgets/custom/CodeEditor.d.ts +2 -2
  158. package/dist/widgets/custom/CodeEditor.d.ts.map +1 -1
  159. package/dist/widgets/custom/FiberGrid.d.ts +3 -3
  160. package/dist/widgets/custom/FiberGrid.d.ts.map +1 -1
  161. package/dist/widgets/custom/Indicator.d.ts +2 -2
  162. package/dist/widgets/custom/Indicator.d.ts.map +1 -1
  163. package/dist/widgets/custom/Markdown.d.ts +5 -0
  164. package/dist/widgets/custom/Markdown.d.ts.map +1 -0
  165. package/dist/widgets/custom/MultiCheckbox.d.ts +3 -3
  166. package/dist/widgets/custom/MultiCheckbox.d.ts.map +1 -1
  167. package/dist/widgets/custom/Radio.d.ts +3 -3
  168. package/dist/widgets/custom/Radio.d.ts.map +1 -1
  169. package/dist/widgets/custom/Steps.d.ts +3 -3
  170. package/dist/widgets/custom/Steps.d.ts.map +1 -1
  171. package/dist/widgets/custom/Switch.d.ts +2 -2
  172. package/dist/widgets/custom/Switch.d.ts.map +1 -1
  173. package/dist/widgets/custom/Tag.d.ts +5 -0
  174. package/dist/widgets/custom/Tag.d.ts.map +1 -0
  175. package/dist/widgets/custom/Tags.d.ts +3 -3
  176. package/dist/widgets/custom/Tags.d.ts.map +1 -1
  177. package/dist/widgets/custom/Timeline.d.ts +3 -3
  178. package/dist/widgets/custom/Timeline.d.ts.map +1 -1
  179. package/dist/widgets/modals/ExportModal.d.ts +4 -3
  180. package/dist/widgets/modals/ExportModal.d.ts.map +1 -1
  181. package/dist/widgets/modals/FormModal.d.ts +2 -2
  182. package/dist/widgets/modals/FormModal.d.ts.map +1 -1
  183. package/dist/widgets/modals/SearchModal.d.ts +2 -2
  184. package/dist/widgets/modals/SearchModal.d.ts.map +1 -1
  185. package/dist/widgets/modals/TranslationModal.d.ts +2 -2
  186. package/dist/widgets/modals/TranslationModal.d.ts.map +1 -1
  187. package/dist/widgets/views/Dashboard/Dashboard.d.ts.map +1 -1
  188. package/dist/widgets/views/Dashboard/DashboardForm.d.ts +2 -2
  189. package/dist/widgets/views/Dashboard/DashboardForm.d.ts.map +1 -1
  190. package/dist/widgets/views/Dashboard/DashboardTree.d.ts +2 -2
  191. package/dist/widgets/views/Dashboard/DashboardTree.d.ts.map +1 -1
  192. package/dist/widgets/views/DashboardGrid/DashboardGrid.d.ts +2 -2
  193. package/dist/widgets/views/DashboardGrid/DashboardGrid.d.ts.map +1 -1
  194. package/dist/widgets/views/DashboardGrid/DashboardGridItem.d.ts +2 -2
  195. package/dist/widgets/views/DashboardGrid/DashboardGridItem.d.ts.map +1 -1
  196. package/dist/widgets/views/Form.d.ts.map +1 -1
  197. package/dist/widgets/views/Graph/GraphChart.d.ts +2 -2
  198. package/dist/widgets/views/Graph/GraphChart.d.ts.map +1 -1
  199. package/dist/widgets/views/Graph/GraphDefaults.d.ts +36 -0
  200. package/dist/widgets/views/Graph/GraphDefaults.d.ts.map +1 -1
  201. package/dist/widgets/views/Graph/GraphIndicator.d.ts +2 -2
  202. package/dist/widgets/views/Graph/GraphIndicator.d.ts.map +1 -1
  203. package/dist/widgets/views/SearchTree.d.ts.map +1 -1
  204. package/dist/widgets/views/Tree.d.ts +2 -0
  205. package/dist/widgets/views/Tree.d.ts.map +1 -1
  206. package/dist/widgets/views/searchFilter/DateRangePicker.d.ts +2 -2
  207. package/dist/widgets/views/searchFilter/DateRangePicker.d.ts.map +1 -1
  208. package/dist/widgets/views/searchFilter/DateTimeRangePicker.d.ts +2 -2
  209. package/dist/widgets/views/searchFilter/DateTimeRangePicker.d.ts.map +1 -1
  210. package/dist/widgets/views/searchFilter/SearchField.d.ts +2 -2
  211. package/dist/widgets/views/searchFilter/SearchField.d.ts.map +1 -1
  212. package/dist/widgets/views/searchFilter/SearchFilter.d.ts +3 -2
  213. package/dist/widgets/views/searchFilter/SearchFilter.d.ts.map +1 -1
  214. package/package.json +14 -15
  215. package/src/__tests__/iconMapper.test.ts +20 -5
  216. package/src/__tests__/searchFilterHelper.spec.ts +7 -7
  217. package/src/actionbar/AttachmentsButton.tsx +22 -24
  218. package/src/actionbar/AttachmentsButtonWrapper.tsx +15 -12
  219. package/src/actionbar/ButtonWithBadge.tsx +5 -2
  220. package/src/actionbar/ChangeViewButton.tsx +13 -7
  221. package/src/actionbar/FormActionBar.tsx +73 -11
  222. package/src/actionbar/SearchBar.tsx +8 -4
  223. package/src/actionbar/TreeActionBar.tsx +99 -97
  224. package/src/common/DatePicker.tsx +18 -13
  225. package/src/context/ActionViewContext.tsx +7 -4
  226. package/src/context/ConfigContext.tsx +9 -0
  227. package/src/context/ContentRootContext.tsx +111 -76
  228. package/src/context/FormContext.tsx +1 -4
  229. package/src/helpers/errorHelper.ts +27 -0
  230. package/src/helpers/filesHelper.ts +2 -3
  231. package/src/helpers/formHelper.ts +26 -5
  232. package/src/helpers/iconMapper.ts +141 -108
  233. package/src/helpers/one2manyHelper.ts +94 -39
  234. package/src/helpers/searchHelper.ts +8 -7
  235. package/src/helpers/treeHelper.ts +17 -5
  236. package/src/hooks/useExport.ts +439 -0
  237. package/src/index.ts +6 -0
  238. package/src/locales/ca_ES.tsx +2 -0
  239. package/src/locales/en_US.tsx +2 -0
  240. package/src/locales/es_ES.tsx +2 -0
  241. package/src/stories/Binary.stories.tsx +4 -1
  242. package/src/stories/Boolean.stories.tsx +4 -1
  243. package/src/stories/Button.stories.tsx +4 -1
  244. package/src/stories/Char.stories.tsx +4 -1
  245. package/src/stories/FiberGrid.stories.tsx +4 -1
  246. package/src/stories/Float.stories.tsx +4 -1
  247. package/src/stories/FloatTime.stories.tsx +4 -1
  248. package/src/stories/Image.stories.tsx +4 -1
  249. package/src/stories/Integer.stories.tsx +4 -1
  250. package/src/stories/Label.stories.tsx +11 -9
  251. package/src/stories/Many2one.stories.tsx +4 -1
  252. package/src/stories/One2many.stories.tsx +4 -1
  253. package/src/stories/ProgressBar.stories.tsx +4 -1
  254. package/src/stories/Reference.stories.tsx +4 -1
  255. package/src/stories/Selection.stories.tsx +4 -1
  256. package/src/stories/Separator.stories.tsx +37 -1
  257. package/src/stories/Text.stories.tsx +4 -1
  258. package/src/stories/containers/Group.stories.tsx +28 -1
  259. package/src/stories/containers/NewLine.stories.tsx +4 -1
  260. package/src/stories/containers/Notebook.stories.tsx +31 -1
  261. package/src/stories/custom/Avatar.stories.tsx +27 -0
  262. package/src/stories/custom/ButtonGroup.stories.tsx +4 -1
  263. package/src/stories/custom/CodeEditor.stories.tsx +4 -1
  264. package/src/stories/custom/Indicator.stories.tsx +4 -1
  265. package/src/stories/custom/Markdown.stories.tsx +42 -0
  266. package/src/stories/custom/MultiCheckbox.stories.tsx +4 -1
  267. package/src/stories/custom/Radio.stories.tsx +4 -1
  268. package/src/stories/custom/Steps.stories.tsx +4 -1
  269. package/src/stories/custom/Switch.stories.tsx +4 -1
  270. package/src/stories/custom/Tag.stories.tsx +60 -0
  271. package/src/stories/custom/Tags.stories.tsx +4 -1
  272. package/src/stories/forms/PreferencesForm.stories.tsx +4 -1
  273. package/src/stories/mocks/models/company.ts +2 -2
  274. package/src/stories/mocks/models/crm_case.ts +7 -10
  275. package/src/stories/ui/ActionBar.stories.tsx +2 -1
  276. package/src/stories/ui/FavouriteButton.stories.tsx +2 -1
  277. package/src/stories/ui/GoToResourceModal.stories.tsx +2 -1
  278. package/src/stories/views/SearchTree.stories.tsx +3 -1
  279. package/src/stories/views/Tab.stories.tsx +3 -1
  280. package/src/stories/views/TabsAndContent.stories.tsx +3 -1
  281. package/src/stories/views/Tree.stories.jsx +20 -6
  282. package/src/stories/views/searchFilter/DateRangePicker.stories.tsx +3 -1
  283. package/src/stories/views/searchFilter/DateTimeRangePicker.stories.tsx +4 -1
  284. package/src/stories/views/searchFilter/PairFields.stories.tsx +4 -1
  285. package/src/stories/views/searchFilter/SearchFilter.stories.tsx +4 -1
  286. package/src/stories/views/searchFilter/examples/PartnersSearchFilter.stories.tsx +4 -1
  287. package/src/types/index.ts +1 -0
  288. package/src/ui/ActionErrorDialog.tsx +4 -21
  289. package/src/ui/ErrorAlert.tsx +37 -0
  290. package/src/ui/FavouriteButton.tsx +20 -9
  291. package/src/ui/GoToResourceModal.tsx +3 -3
  292. package/src/ui/TitleHeader.tsx +18 -4
  293. package/src/views/ActionView.tsx +6 -2
  294. package/src/views/RootView.tsx +7 -1
  295. package/src/views/actionViews/GraphActionView.tsx +1 -0
  296. package/src/views/actionViews/TreeActionView.tsx +10 -1
  297. package/src/views/tabs/Tab.tsx +12 -6
  298. package/src/widgets/WidgetFactory.tsx +6 -0
  299. package/src/widgets/base/Binary.tsx +8 -5
  300. package/src/widgets/base/Boolean.tsx +8 -7
  301. package/src/widgets/base/Char.tsx +14 -12
  302. package/src/widgets/base/Float.tsx +11 -5
  303. package/src/widgets/base/FloatTime.tsx +9 -5
  304. package/src/widgets/base/Integer.tsx +10 -5
  305. package/src/widgets/base/Label.tsx +12 -12
  306. package/src/widgets/base/LinkInput.tsx +11 -6
  307. package/src/widgets/base/MultiSelection.tsx +6 -2
  308. package/src/widgets/base/Reference.tsx +13 -3
  309. package/src/widgets/base/ReferenceTree.tsx +62 -0
  310. package/src/widgets/base/Selection.tsx +6 -2
  311. package/src/widgets/base/Separator.tsx +11 -3
  312. package/src/widgets/base/Text.tsx +14 -12
  313. package/src/widgets/base/many2one/Many2one.tsx +27 -33
  314. package/src/widgets/base/many2one/Many2oneSuffixModal.tsx +3 -3
  315. package/src/widgets/base/many2one/Many2oneTree.tsx +18 -0
  316. package/src/widgets/base/one2many/One2manyInput.tsx +82 -28
  317. package/src/widgets/base/one2many/One2manyTopBar.tsx +10 -1
  318. package/src/widgets/containers/Group.tsx +7 -4
  319. package/src/widgets/custom/Avatar.tsx +33 -0
  320. package/src/widgets/custom/ButtonGroup.tsx +31 -21
  321. package/src/widgets/custom/FiberGrid.tsx +2 -5
  322. package/src/widgets/custom/Indicator.tsx +16 -15
  323. package/src/widgets/custom/Markdown.tsx +22 -0
  324. package/src/widgets/custom/MultiCheckbox.tsx +1 -0
  325. package/src/widgets/custom/Tag.tsx +24 -0
  326. package/src/widgets/custom/Tags.tsx +27 -28
  327. package/src/widgets/custom/Timeline.tsx +9 -3
  328. package/src/widgets/modals/ExportModal.tsx +33 -134
  329. package/src/widgets/modals/FormModal.tsx +3 -3
  330. package/src/widgets/modals/SearchModal.tsx +29 -31
  331. package/src/widgets/modals/TranslationModal.tsx +3 -3
  332. package/src/widgets/views/Dashboard/Dashboard.tsx +15 -4
  333. package/src/widgets/views/Dashboard/DashboardTree.tsx +1 -0
  334. package/src/widgets/views/DashboardGrid/DashboardGridItem.tsx +10 -6
  335. package/src/widgets/views/Form.tsx +41 -39
  336. package/src/widgets/views/Graph/GraphChart.tsx +6 -1
  337. package/src/widgets/views/Graph/GraphDefaults.ts +113 -0
  338. package/src/widgets/views/Graph/GraphIndicator.tsx +19 -7
  339. package/src/widgets/views/SearchTree.tsx +3 -0
  340. package/src/widgets/views/Tree.tsx +118 -26
  341. package/src/widgets/views/searchFilter/SearchField.tsx +9 -23
  342. package/src/widgets/views/searchFilter/SearchFilter.tsx +17 -8
  343. package/dist/Config.d.ts +0 -6
  344. package/dist/Config.d.ts.map +0 -1
  345. package/dist/helpers/icons/antd_icons.d.ts +0 -4
  346. package/dist/helpers/icons/antd_icons.d.ts.map +0 -1
  347. package/dist/helpers/icons/tabler_icons.d.ts +0 -4
  348. package/dist/helpers/icons/tabler_icons.d.ts.map +0 -1
  349. package/dist/main.css +0 -1
  350. package/dist/ui/Fieldset.d.ts +0 -8
  351. package/dist/ui/Fieldset.d.ts.map +0 -1
  352. package/src/Config.ts +0 -4
  353. package/src/helpers/icons/antd_icons.ts +0 -1583
  354. package/src/helpers/icons/tabler_icons.ts +0 -5367
  355. package/src/ui/Fieldset.tsx +0 -31
@@ -1,11 +1,10 @@
1
1
  import React, { useContext, useEffect, useRef, useState } from "react";
2
- import { Pagination, Checkbox, Space, Row, Col, Spin } from "antd";
2
+ import { Pagination, Checkbox, Space, Row, Col, Spin, Tag } from "antd";
3
3
  import { getTree, getTableColumns, getTableItems } from "@/helpers/treeHelper";
4
4
  import { Tree as TreeOoui } from "@gisce/ooui";
5
5
 
6
6
  import { TreeView, Column } from "@/types";
7
7
  import { LocaleContext, LocaleContextType } from "@/context/LocaleContext";
8
- import { Many2oneSuffix } from "../base/many2one/Many2oneSuffix";
9
8
  import { calculateColumnsWidth } from "@/helpers/dynamicColumnsHelper";
10
9
  import { parseFloatToString } from "@/helpers/timeHelper";
11
10
  import { ProgressBarInput } from "../base/ProgressBar";
@@ -16,6 +15,16 @@ import {
16
15
  LoadingOutlined,
17
16
  } from "@ant-design/icons";
18
17
  import { One2manyValue } from "../base/one2many/One2manyInput";
18
+ import { Interweave } from "interweave";
19
+ import {
20
+ ActionViewContext,
21
+ ActionViewContextType,
22
+ } from "@/context/ActionViewContext";
23
+ import { Many2oneTree } from "../base/many2one/Many2oneTree";
24
+ import { ReferenceTree } from "../base/ReferenceTree";
25
+ import dayjs from "dayjs";
26
+ import Avatar from "../custom/Avatar";
27
+ import { DatePickerConfig } from "@/common/DatePicker";
19
28
 
20
29
  type Props = {
21
30
  total?: number;
@@ -34,6 +43,8 @@ type Props = {
34
43
  sorter?: any;
35
44
  onFetchChildrenForRecord?: (item: any) => Promise<any[]>;
36
45
  childField?: string;
46
+ rootTree?: boolean;
47
+ context?: any;
37
48
  };
38
49
 
39
50
  const booleanComponentFn = (value: boolean): React.ReactElement => {
@@ -51,18 +62,30 @@ const booleanComponentFn = (value: boolean): React.ReactElement => {
51
62
  };
52
63
 
53
64
  const many2OneComponentFn = (m2oField: any): React.ReactElement => {
54
- if (!m2oField) {
55
- return <></>;
56
- }
57
- return (
58
- <Space>
59
- <>{m2oField.value}</>
60
- <Many2oneSuffix id={m2oField.id} model={m2oField.model} />
61
- </Space>
62
- );
65
+ return <Many2oneTree m2oField={m2oField} />;
63
66
  };
67
+
64
68
  const textComponentFn = (value: any): React.ReactElement => {
65
- return <div style={{ whiteSpace: "pre-line" }}>{value}</div>;
69
+ return <Interweave content={value?.replace(/(?:\r\n|\r|\n)/g, "<br>")} />;
70
+ };
71
+
72
+ const dateComponentFn = (value: any): React.ReactElement => {
73
+ if (!value || (value && value.length === 0)) return <></>;
74
+
75
+ const formattedValue = dayjs(
76
+ value,
77
+ DatePickerConfig.date.dateInternalFormat
78
+ ).format(DatePickerConfig.date.dateDisplayFormat);
79
+ return <>{formattedValue}</>;
80
+ };
81
+
82
+ const dateTimeComponentFn = (value: any): React.ReactElement => {
83
+ if (!value || (value && value.length === 0)) return <></>;
84
+ const formattedValue = dayjs(
85
+ value,
86
+ DatePickerConfig.time.dateInternalFormat
87
+ ).format(DatePickerConfig.time.dateDisplayFormat);
88
+ return <>{formattedValue}</>;
66
89
  };
67
90
 
68
91
  const one2ManyComponentFn = (value: One2manyValue): React.ReactElement => {
@@ -91,6 +114,51 @@ const imageComponent = (value: string): React.ReactElement => {
91
114
  );
92
115
  };
93
116
 
117
+ const TagComponent = (
118
+ value: any,
119
+ key: string,
120
+ ooui: any,
121
+ context: any
122
+ ): React.ReactElement => {
123
+ return (
124
+ <>
125
+ {value ? <Tag color={ooui.colors[value]}>{ooui.selectionValues.get(value)}</Tag> : null}
126
+ </>
127
+ );
128
+ };
129
+
130
+ const SelectionComponent = (
131
+ value: any,
132
+ key: string,
133
+ ooui: any,
134
+ context: any
135
+ ): React.ReactElement => {
136
+ return (
137
+ <>{ooui.selectionValues.get(value)}</>
138
+ );
139
+ };
140
+
141
+ const referenceComponent = (
142
+ value: any,
143
+ key: string,
144
+ ooui: any,
145
+ context: any
146
+ ): React.ReactElement => {
147
+ return (
148
+ <>
149
+ <ReferenceTree
150
+ value={value}
151
+ selectionValues={ooui.selectionValues}
152
+ context={context}
153
+ />
154
+ </>
155
+ );
156
+ };
157
+
158
+ const AvatarFn = (value: any, key:string, ooui: any, context: any): React.ReactElement => (
159
+ <Avatar ooui={ooui} value={value} />
160
+ )
161
+
94
162
  function Tree(props: Props): React.ReactElement {
95
163
  const {
96
164
  page = 1,
@@ -109,6 +177,8 @@ function Tree(props: Props): React.ReactElement {
109
177
  sorter,
110
178
  onFetchChildrenForRecord,
111
179
  childField,
180
+ rootTree = false,
181
+ context,
112
182
  } = props;
113
183
 
114
184
  const [items, setItems] = useState<Array<any>>([]);
@@ -121,23 +191,43 @@ function Tree(props: Props): React.ReactElement {
121
191
  const { t } = useContext(LocaleContext) as LocaleContextType;
122
192
  const internalLimit = useRef(limit);
123
193
 
194
+ const actionViewContext = useContext(
195
+ ActionViewContext
196
+ ) as ActionViewContextType;
197
+ const { title = undefined, setTitle = undefined } =
198
+ (rootTree ? actionViewContext : {}) || {};
199
+
124
200
  useEffect(() => {
125
201
  treeOoui.current = getTree(treeView);
126
202
 
127
- const columns = getTableColumns(treeOoui.current, {
128
- boolean: booleanComponentFn,
129
- many2one: many2OneComponentFn,
130
- text: textComponentFn,
131
- one2many: one2ManyComponentFn,
132
- many2many: one2ManyComponentFn,
133
- progressbar: progressBarComponentFn,
134
- float_time: floatTimeComponent,
135
- image: imageComponent,
136
- integer: numberComponent,
137
- float: numberComponent,
138
- });
203
+ const columns = getTableColumns(
204
+ treeOoui.current,
205
+ {
206
+ boolean: booleanComponentFn,
207
+ many2one: many2OneComponentFn,
208
+ text: textComponentFn,
209
+ one2many: one2ManyComponentFn,
210
+ many2many: one2ManyComponentFn,
211
+ progressbar: progressBarComponentFn,
212
+ float_time: floatTimeComponent,
213
+ image: imageComponent,
214
+ integer: numberComponent,
215
+ float: numberComponent,
216
+ reference: referenceComponent,
217
+ tag: TagComponent,
218
+ selection: SelectionComponent,
219
+ date: dateComponentFn,
220
+ datetime: dateTimeComponentFn,
221
+ avatar: AvatarFn,
222
+ },
223
+ context
224
+ );
139
225
 
140
226
  setColumns(columns);
227
+
228
+ if (treeOoui.current.string && title !== treeOoui.current.string) {
229
+ setTitle?.(treeOoui.current.string);
230
+ }
141
231
  }, [treeView]);
142
232
 
143
233
  useEffect(() => {
@@ -171,7 +261,9 @@ function Tree(props: Props): React.ReactElement {
171
261
  <Col span={12}>
172
262
  <Pagination
173
263
  total={total}
174
- pageSize={internalLimit.current}
264
+ pageSize={
265
+ internalLimit.current === 0 ? total : internalLimit.current
266
+ }
175
267
  current={page}
176
268
  showSizeChanger={false}
177
269
  onChange={onRequestPageChange}
@@ -216,7 +308,7 @@ function Tree(props: Props): React.ReactElement {
216
308
  });
217
309
 
218
310
  return (
219
- <div className="p-1 pb-0 pl-2 mt-2 bg-gray-50">{summary.join(", ")}</div>
311
+ <div className="p-1 pb-0 pl-2 mt-2 ">{summary.join(", ")}</div>
220
312
  );
221
313
  }
222
314
 
@@ -8,27 +8,13 @@ import { PairFields } from "./PairFields";
8
8
 
9
9
  import { LocaleContext, LocaleContextType } from "@/context/LocaleContext";
10
10
 
11
- import { Field, Selection as SelectionOoui } from "@gisce/ooui";
11
+ import { Field, SearchFieldTypes, Selection as SelectionOoui } from "@gisce/ooui";
12
12
  import { MultiSelection } from "@/widgets/base/MultiSelection";
13
13
 
14
14
  type Props = {
15
15
  field: Field;
16
16
  };
17
17
 
18
- const types = {
19
- text: "text",
20
- many2one: "many2one",
21
- char: "char",
22
- boolean: "boolean",
23
- selection: "selection",
24
- float: "float",
25
- float_time: "float_time",
26
- progressbar: "progressbar",
27
- integer: "integer",
28
- date: "date",
29
- datetime: "datetime",
30
- };
31
-
32
18
  export function SearchField(props: Props) {
33
19
  const { field } = props;
34
20
  field.readOnly = false;
@@ -39,7 +25,7 @@ export function SearchField(props: Props) {
39
25
  const widgetType = field.type;
40
26
 
41
27
  switch (widgetType) {
42
- case types.boolean: {
28
+ case SearchFieldTypes.boolean: {
43
29
  const ooui = new SelectionOoui({
44
30
  name: field._id,
45
31
  string: field.label,
@@ -51,19 +37,19 @@ export function SearchField(props: Props) {
51
37
 
52
38
  return <Selection layout="vertical" ooui={ooui} showLabel />;
53
39
  }
54
- case types.float:
55
- case types.progressbar:
56
- case types.float_time:
57
- case types.integer: {
40
+ case SearchFieldTypes.float:
41
+ case SearchFieldTypes.progressbar:
42
+ case SearchFieldTypes.float_time:
43
+ case SearchFieldTypes.integer: {
58
44
  return <PairFields ooui={field} showLabel />;
59
45
  }
60
- case types.date: {
46
+ case SearchFieldTypes.date: {
61
47
  return <DateRangePicker ooui={field} layout="vertical" showLabel />;
62
48
  }
63
- case types.datetime: {
49
+ case SearchFieldTypes.datetime: {
64
50
  return <DateTimeRangePicker ooui={field} layout="vertical" showLabel />;
65
51
  }
66
- case types.selection: {
52
+ case SearchFieldTypes.selection: {
67
53
  return <MultiSelection layout="vertical" ooui={field} showLabel />;
68
54
  }
69
55
  default: {
@@ -1,5 +1,5 @@
1
- import React, { useEffect, useState } from "react";
2
- import { Form, Row, Col, Alert } from "antd";
1
+ import React, { useEffect, useRef, useState } from "react";
2
+ import { Form, Row, Col, Alert, theme } from "antd";
3
3
  import useDeepCompareEffect from "use-deep-compare-effect";
4
4
 
5
5
  import {
@@ -15,6 +15,7 @@ import { SearchParams } from "./SearchParams";
15
15
 
16
16
  import { getParamsForFields } from "@/helpers/searchHelper";
17
17
  import Measure from "react-measure";
18
+ const { useToken } = theme;
18
19
 
19
20
  type Props = {
20
21
  fields: any;
@@ -30,6 +31,7 @@ type Props = {
30
31
  searchError?: string;
31
32
  searchValues?: any;
32
33
  showLimitOptions?: boolean;
34
+ formXml: string;
33
35
  };
34
36
 
35
37
  function SearchFilter(props: Props) {
@@ -47,11 +49,14 @@ function SearchFilter(props: Props) {
47
49
  searchError,
48
50
  searchValues,
49
51
  showLimitOptions = true,
52
+ formXml,
50
53
  } = props;
51
54
 
52
55
  const [simpleSearchFields, setSimpleSearchFields] = useState<Container>();
53
56
  const [advancedSearchFields, setAdvancedSearchFields] = useState<Container>();
54
57
  const [advancedFilter, setAdvancedFilter] = useState(false);
58
+ const sfo = useRef<SearchFilterOoui>();
59
+ const { token } = useToken();
55
60
 
56
61
  const [form] = Form.useForm();
57
62
 
@@ -84,10 +89,10 @@ function SearchFilter(props: Props) {
84
89
 
85
90
  useDeepCompareEffect(() => {
86
91
  setAdvancedFilter(false);
87
- const sfo = new SearchFilterOoui(searchFields, fields);
88
- sfo.parse();
89
- setSimpleSearchFields(sfo._simpleSearchContainer);
90
- setAdvancedSearchFields(sfo._advancedSearchContainer);
92
+ sfo.current = new SearchFilterOoui(searchFields, fields, formXml);
93
+ sfo.current.parse();
94
+ setSimpleSearchFields(sfo.current._simpleSearchContainer);
95
+ setAdvancedSearchFields(sfo.current._advancedSearchContainer);
91
96
  }, [fields, searchFields]);
92
97
 
93
98
  const rows = getRowsAndCols();
@@ -96,7 +101,10 @@ function SearchFilter(props: Props) {
96
101
  const { limit, offset } = values;
97
102
  delete values.offset;
98
103
  delete values.limit;
99
- const newParams = getParamsForFields(values, fields);
104
+ const newParams = getParamsForFields(
105
+ values,
106
+ sfo.current?._advancedSearchContainer
107
+ );
100
108
 
101
109
  onSubmit({ params: newParams, offset, limit, searchValues: values });
102
110
  };
@@ -112,7 +120,8 @@ function SearchFilter(props: Props) {
112
120
  <div ref={measureRef}>
113
121
  <div style={{ display: searchVisible ? "block" : "none" }}>
114
122
  <Form
115
- className="p-3 rounded shadow-md bg-gray-50"
123
+ className="p-3 shadow-md"
124
+ style={{ borderRadius: token.borderRadius }}
116
125
  form={form}
117
126
  onFinish={onFinish}
118
127
  initialValues={{ offset, limit }}
package/dist/Config.d.ts DELETED
@@ -1,6 +0,0 @@
1
- declare const _default: {
2
- requiredClass: string;
3
- requiredColor: string;
4
- };
5
- export default _default;
6
- //# sourceMappingURL=Config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["Config.ts"],"names":[],"mappings":";;;;AAAA,wBAGE"}
@@ -1,4 +0,0 @@
1
- export declare const AntIcons: {
2
- [key: string]: any;
3
- };
4
- //# sourceMappingURL=antd_icons.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"antd_icons.d.ts","sourceRoot":"","sources":["antd_icons.ts"],"names":[],"mappings":"AAwxBA,eAAO,MAAM,QAAQ,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAsxB1C,CAAC"}
@@ -1,4 +0,0 @@
1
- export declare const TablerIcons: {
2
- [key: string]: any;
3
- };
4
- //# sourceMappingURL=tabler_icons.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tabler_icons.d.ts","sourceRoot":"","sources":["tabler_icons.ts"],"names":[],"mappings":"AA4nFA,eAAO,MAAM,WAAW,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CA0nF7C,CAAC"}
package/dist/main.css DELETED
@@ -1 +0,0 @@
1
- .react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;-webkit-transform:rotate(270deg);transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;-webkit-transform:rotate(135deg);transform:rotate(135deg)}.react-resizable-handle-e{right:0;-webkit-transform:rotate(315deg);transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;-webkit-transform:rotate(225deg);transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.react-grid-item.resizing{z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;-o-user-select:none;user-select:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;-webkit-transform:rotate(270deg);transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;-webkit-transform:rotate(135deg);transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;-webkit-transform:rotate(315deg);transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;-webkit-transform:rotate(225deg);transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- declare type Props = {
3
- label: string;
4
- children: any;
5
- };
6
- declare const Fieldset: (props: Props) => React.ReactElement;
7
- export default Fieldset;
8
- //# sourceMappingURL=Fieldset.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Fieldset.d.ts","sourceRoot":"","sources":["Fieldset.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,aAAK,KAAK,GAAG;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;CACf,CAAC;AAEF,QAAA,MAAM,QAAQ,UAAW,KAAK,KAAG,MAAM,YAqBtC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
package/src/Config.ts DELETED
@@ -1,4 +0,0 @@
1
- export default {
2
- requiredClass: "bg-blue-100",
3
- requiredColor: "#DBEAFE",
4
- };