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

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 (353) 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 +9335 -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/ButtonGroup.d.ts +2 -2
  154. package/dist/widgets/custom/ButtonGroup.d.ts.map +1 -1
  155. package/dist/widgets/custom/CodeEditor.d.ts +2 -2
  156. package/dist/widgets/custom/CodeEditor.d.ts.map +1 -1
  157. package/dist/widgets/custom/FiberGrid.d.ts +3 -3
  158. package/dist/widgets/custom/FiberGrid.d.ts.map +1 -1
  159. package/dist/widgets/custom/Indicator.d.ts +2 -2
  160. package/dist/widgets/custom/Indicator.d.ts.map +1 -1
  161. package/dist/widgets/custom/Markdown.d.ts +5 -0
  162. package/dist/widgets/custom/Markdown.d.ts.map +1 -0
  163. package/dist/widgets/custom/MultiCheckbox.d.ts +3 -3
  164. package/dist/widgets/custom/MultiCheckbox.d.ts.map +1 -1
  165. package/dist/widgets/custom/Radio.d.ts +3 -3
  166. package/dist/widgets/custom/Radio.d.ts.map +1 -1
  167. package/dist/widgets/custom/Steps.d.ts +3 -3
  168. package/dist/widgets/custom/Steps.d.ts.map +1 -1
  169. package/dist/widgets/custom/Switch.d.ts +2 -2
  170. package/dist/widgets/custom/Switch.d.ts.map +1 -1
  171. package/dist/widgets/custom/Tag.d.ts +5 -0
  172. package/dist/widgets/custom/Tag.d.ts.map +1 -0
  173. package/dist/widgets/custom/Tags.d.ts +3 -3
  174. package/dist/widgets/custom/Tags.d.ts.map +1 -1
  175. package/dist/widgets/custom/Timeline.d.ts +3 -3
  176. package/dist/widgets/custom/Timeline.d.ts.map +1 -1
  177. package/dist/widgets/modals/ExportModal.d.ts +4 -3
  178. package/dist/widgets/modals/ExportModal.d.ts.map +1 -1
  179. package/dist/widgets/modals/FormModal.d.ts +2 -2
  180. package/dist/widgets/modals/FormModal.d.ts.map +1 -1
  181. package/dist/widgets/modals/SearchModal.d.ts +2 -2
  182. package/dist/widgets/modals/SearchModal.d.ts.map +1 -1
  183. package/dist/widgets/modals/TranslationModal.d.ts +2 -2
  184. package/dist/widgets/modals/TranslationModal.d.ts.map +1 -1
  185. package/dist/widgets/views/Dashboard/Dashboard.d.ts.map +1 -1
  186. package/dist/widgets/views/Dashboard/DashboardForm.d.ts +2 -2
  187. package/dist/widgets/views/Dashboard/DashboardForm.d.ts.map +1 -1
  188. package/dist/widgets/views/Dashboard/DashboardTree.d.ts +2 -2
  189. package/dist/widgets/views/Dashboard/DashboardTree.d.ts.map +1 -1
  190. package/dist/widgets/views/DashboardGrid/DashboardGrid.d.ts +2 -2
  191. package/dist/widgets/views/DashboardGrid/DashboardGrid.d.ts.map +1 -1
  192. package/dist/widgets/views/DashboardGrid/DashboardGridItem.d.ts +2 -2
  193. package/dist/widgets/views/DashboardGrid/DashboardGridItem.d.ts.map +1 -1
  194. package/dist/widgets/views/Form.d.ts.map +1 -1
  195. package/dist/widgets/views/Graph/GraphChart.d.ts +2 -2
  196. package/dist/widgets/views/Graph/GraphChart.d.ts.map +1 -1
  197. package/dist/widgets/views/Graph/GraphDefaults.d.ts +36 -0
  198. package/dist/widgets/views/Graph/GraphDefaults.d.ts.map +1 -1
  199. package/dist/widgets/views/Graph/GraphIndicator.d.ts +2 -2
  200. package/dist/widgets/views/Graph/GraphIndicator.d.ts.map +1 -1
  201. package/dist/widgets/views/SearchTree.d.ts.map +1 -1
  202. package/dist/widgets/views/Tree.d.ts +2 -0
  203. package/dist/widgets/views/Tree.d.ts.map +1 -1
  204. package/dist/widgets/views/searchFilter/DateRangePicker.d.ts +2 -2
  205. package/dist/widgets/views/searchFilter/DateRangePicker.d.ts.map +1 -1
  206. package/dist/widgets/views/searchFilter/DateTimeRangePicker.d.ts +2 -2
  207. package/dist/widgets/views/searchFilter/DateTimeRangePicker.d.ts.map +1 -1
  208. package/dist/widgets/views/searchFilter/SearchField.d.ts +2 -2
  209. package/dist/widgets/views/searchFilter/SearchField.d.ts.map +1 -1
  210. package/dist/widgets/views/searchFilter/SearchFilter.d.ts +3 -2
  211. package/dist/widgets/views/searchFilter/SearchFilter.d.ts.map +1 -1
  212. package/package.json +14 -15
  213. package/src/__tests__/iconMapper.test.ts +20 -5
  214. package/src/__tests__/searchFilterHelper.spec.ts +7 -7
  215. package/src/actionbar/AttachmentsButton.tsx +22 -24
  216. package/src/actionbar/AttachmentsButtonWrapper.tsx +15 -12
  217. package/src/actionbar/ButtonWithBadge.tsx +5 -2
  218. package/src/actionbar/ChangeViewButton.tsx +13 -7
  219. package/src/actionbar/FormActionBar.tsx +73 -11
  220. package/src/actionbar/SearchBar.tsx +8 -4
  221. package/src/actionbar/TreeActionBar.tsx +99 -97
  222. package/src/common/DatePicker.tsx +18 -13
  223. package/src/context/ActionViewContext.tsx +7 -4
  224. package/src/context/ConfigContext.tsx +9 -0
  225. package/src/context/ContentRootContext.tsx +111 -76
  226. package/src/context/FormContext.tsx +1 -4
  227. package/src/helpers/errorHelper.ts +27 -0
  228. package/src/helpers/filesHelper.ts +2 -3
  229. package/src/helpers/formHelper.ts +26 -5
  230. package/src/helpers/iconMapper.ts +141 -108
  231. package/src/helpers/one2manyHelper.ts +94 -39
  232. package/src/helpers/searchHelper.ts +8 -7
  233. package/src/helpers/treeHelper.ts +17 -5
  234. package/src/hooks/useExport.ts +439 -0
  235. package/src/index.ts +6 -0
  236. package/src/locales/ca_ES.tsx +2 -0
  237. package/src/locales/en_US.tsx +2 -0
  238. package/src/locales/es_ES.tsx +2 -0
  239. package/src/stories/Binary.stories.tsx +4 -1
  240. package/src/stories/Boolean.stories.tsx +4 -1
  241. package/src/stories/Button.stories.tsx +4 -1
  242. package/src/stories/Char.stories.tsx +4 -1
  243. package/src/stories/FiberGrid.stories.tsx +4 -1
  244. package/src/stories/Float.stories.tsx +4 -1
  245. package/src/stories/FloatTime.stories.tsx +4 -1
  246. package/src/stories/Image.stories.tsx +4 -1
  247. package/src/stories/Integer.stories.tsx +4 -1
  248. package/src/stories/Label.stories.tsx +11 -9
  249. package/src/stories/Many2one.stories.tsx +4 -1
  250. package/src/stories/One2many.stories.tsx +4 -1
  251. package/src/stories/ProgressBar.stories.tsx +4 -1
  252. package/src/stories/Reference.stories.tsx +4 -1
  253. package/src/stories/Selection.stories.tsx +4 -1
  254. package/src/stories/Separator.stories.tsx +37 -1
  255. package/src/stories/Text.stories.tsx +4 -1
  256. package/src/stories/containers/Group.stories.tsx +28 -1
  257. package/src/stories/containers/NewLine.stories.tsx +4 -1
  258. package/src/stories/containers/Notebook.stories.tsx +31 -1
  259. package/src/stories/custom/Avatar.stories.tsx +27 -0
  260. package/src/stories/custom/ButtonGroup.stories.tsx +4 -1
  261. package/src/stories/custom/CodeEditor.stories.tsx +4 -1
  262. package/src/stories/custom/Indicator.stories.tsx +4 -1
  263. package/src/stories/custom/Markdown.stories.tsx +42 -0
  264. package/src/stories/custom/MultiCheckbox.stories.tsx +4 -1
  265. package/src/stories/custom/Radio.stories.tsx +4 -1
  266. package/src/stories/custom/Steps.stories.tsx +4 -1
  267. package/src/stories/custom/Switch.stories.tsx +4 -1
  268. package/src/stories/custom/Tag.stories.tsx +60 -0
  269. package/src/stories/custom/Tags.stories.tsx +4 -1
  270. package/src/stories/forms/PreferencesForm.stories.tsx +4 -1
  271. package/src/stories/mocks/models/company.ts +2 -2
  272. package/src/stories/mocks/models/crm_case.ts +7 -10
  273. package/src/stories/ui/ActionBar.stories.tsx +2 -1
  274. package/src/stories/ui/FavouriteButton.stories.tsx +2 -1
  275. package/src/stories/ui/GoToResourceModal.stories.tsx +2 -1
  276. package/src/stories/views/SearchTree.stories.tsx +3 -1
  277. package/src/stories/views/Tab.stories.tsx +3 -1
  278. package/src/stories/views/TabsAndContent.stories.tsx +3 -1
  279. package/src/stories/views/Tree.stories.jsx +20 -6
  280. package/src/stories/views/searchFilter/DateRangePicker.stories.tsx +3 -1
  281. package/src/stories/views/searchFilter/DateTimeRangePicker.stories.tsx +4 -1
  282. package/src/stories/views/searchFilter/PairFields.stories.tsx +4 -1
  283. package/src/stories/views/searchFilter/SearchFilter.stories.tsx +4 -1
  284. package/src/stories/views/searchFilter/examples/PartnersSearchFilter.stories.tsx +4 -1
  285. package/src/types/index.ts +1 -0
  286. package/src/ui/ActionErrorDialog.tsx +4 -21
  287. package/src/ui/ErrorAlert.tsx +37 -0
  288. package/src/ui/FavouriteButton.tsx +20 -9
  289. package/src/ui/GoToResourceModal.tsx +3 -3
  290. package/src/ui/TitleHeader.tsx +18 -4
  291. package/src/views/ActionView.tsx +6 -2
  292. package/src/views/RootView.tsx +7 -1
  293. package/src/views/actionViews/GraphActionView.tsx +1 -0
  294. package/src/views/actionViews/TreeActionView.tsx +10 -1
  295. package/src/views/tabs/Tab.tsx +12 -6
  296. package/src/widgets/WidgetFactory.tsx +6 -0
  297. package/src/widgets/base/Binary.tsx +8 -5
  298. package/src/widgets/base/Boolean.tsx +8 -7
  299. package/src/widgets/base/Char.tsx +14 -12
  300. package/src/widgets/base/Float.tsx +11 -5
  301. package/src/widgets/base/FloatTime.tsx +9 -5
  302. package/src/widgets/base/Integer.tsx +10 -5
  303. package/src/widgets/base/Label.tsx +12 -12
  304. package/src/widgets/base/LinkInput.tsx +11 -6
  305. package/src/widgets/base/MultiSelection.tsx +6 -2
  306. package/src/widgets/base/Reference.tsx +13 -3
  307. package/src/widgets/base/ReferenceTree.tsx +62 -0
  308. package/src/widgets/base/Selection.tsx +6 -2
  309. package/src/widgets/base/Separator.tsx +11 -3
  310. package/src/widgets/base/Text.tsx +14 -12
  311. package/src/widgets/base/many2one/Many2one.tsx +27 -33
  312. package/src/widgets/base/many2one/Many2oneSuffixModal.tsx +3 -3
  313. package/src/widgets/base/many2one/Many2oneTree.tsx +18 -0
  314. package/src/widgets/base/one2many/One2manyInput.tsx +82 -28
  315. package/src/widgets/base/one2many/One2manyTopBar.tsx +10 -1
  316. package/src/widgets/containers/Group.tsx +7 -4
  317. package/src/widgets/custom/Avatar.tsx +33 -0
  318. package/src/widgets/custom/ButtonGroup.tsx +31 -21
  319. package/src/widgets/custom/FiberGrid.tsx +2 -5
  320. package/src/widgets/custom/Indicator.tsx +16 -15
  321. package/src/widgets/custom/Markdown.tsx +22 -0
  322. package/src/widgets/custom/MultiCheckbox.tsx +1 -0
  323. package/src/widgets/custom/Tag.tsx +24 -0
  324. package/src/widgets/custom/Tags.tsx +27 -28
  325. package/src/widgets/custom/Timeline.tsx +9 -3
  326. package/src/widgets/modals/ExportModal.tsx +33 -134
  327. package/src/widgets/modals/FormModal.tsx +3 -3
  328. package/src/widgets/modals/SearchModal.tsx +29 -31
  329. package/src/widgets/modals/TranslationModal.tsx +3 -3
  330. package/src/widgets/views/Dashboard/Dashboard.tsx +15 -4
  331. package/src/widgets/views/Dashboard/DashboardTree.tsx +1 -0
  332. package/src/widgets/views/DashboardGrid/DashboardGridItem.tsx +10 -6
  333. package/src/widgets/views/Form.tsx +41 -39
  334. package/src/widgets/views/Graph/GraphChart.tsx +6 -1
  335. package/src/widgets/views/Graph/GraphDefaults.ts +113 -0
  336. package/src/widgets/views/Graph/GraphIndicator.tsx +19 -7
  337. package/src/widgets/views/SearchTree.tsx +3 -0
  338. package/src/widgets/views/Tree.tsx +112 -26
  339. package/src/widgets/views/searchFilter/SearchField.tsx +9 -23
  340. package/src/widgets/views/searchFilter/SearchFilter.tsx +17 -8
  341. package/dist/Config.d.ts +0 -6
  342. package/dist/Config.d.ts.map +0 -1
  343. package/dist/helpers/icons/antd_icons.d.ts +0 -4
  344. package/dist/helpers/icons/antd_icons.d.ts.map +0 -1
  345. package/dist/helpers/icons/tabler_icons.d.ts +0 -4
  346. package/dist/helpers/icons/tabler_icons.d.ts.map +0 -1
  347. package/dist/main.css +0 -1
  348. package/dist/ui/Fieldset.d.ts +0 -8
  349. package/dist/ui/Fieldset.d.ts.map +0 -1
  350. package/src/Config.ts +0 -4
  351. package/src/helpers/icons/antd_icons.ts +0 -1583
  352. package/src/helpers/icons/tabler_icons.ts +0 -5367
  353. 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,15 @@ 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 { DatePickerConfig } from "@/common/DatePicker";
19
27
 
20
28
  type Props = {
21
29
  total?: number;
@@ -34,6 +42,8 @@ type Props = {
34
42
  sorter?: any;
35
43
  onFetchChildrenForRecord?: (item: any) => Promise<any[]>;
36
44
  childField?: string;
45
+ rootTree?: boolean;
46
+ context?: any;
37
47
  };
38
48
 
39
49
  const booleanComponentFn = (value: boolean): React.ReactElement => {
@@ -51,18 +61,30 @@ const booleanComponentFn = (value: boolean): React.ReactElement => {
51
61
  };
52
62
 
53
63
  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
- );
64
+ return <Many2oneTree m2oField={m2oField} />;
63
65
  };
66
+
64
67
  const textComponentFn = (value: any): React.ReactElement => {
65
- return <div style={{ whiteSpace: "pre-line" }}>{value}</div>;
68
+ return <Interweave content={value?.replace(/(?:\r\n|\r|\n)/g, "<br>")} />;
69
+ };
70
+
71
+ const dateComponentFn = (value: any): React.ReactElement => {
72
+ if (!value || (value && value.length === 0)) return <></>;
73
+
74
+ const formattedValue = dayjs(
75
+ value,
76
+ DatePickerConfig.date.dateInternalFormat
77
+ ).format(DatePickerConfig.date.dateDisplayFormat);
78
+ return <>{formattedValue}</>;
79
+ };
80
+
81
+ const dateTimeComponentFn = (value: any): React.ReactElement => {
82
+ if (!value || (value && value.length === 0)) return <></>;
83
+ const formattedValue = dayjs(
84
+ value,
85
+ DatePickerConfig.time.dateInternalFormat
86
+ ).format(DatePickerConfig.time.dateDisplayFormat);
87
+ return <>{formattedValue}</>;
66
88
  };
67
89
 
68
90
  const one2ManyComponentFn = (value: One2manyValue): React.ReactElement => {
@@ -91,6 +113,47 @@ const imageComponent = (value: string): React.ReactElement => {
91
113
  );
92
114
  };
93
115
 
116
+ const TagComponent = (
117
+ value: any,
118
+ key: string,
119
+ ooui: any,
120
+ context: any
121
+ ): React.ReactElement => {
122
+ return (
123
+ <>
124
+ {value ? <Tag color={ooui.colors[value]}>{ooui.selectionValues.get(value)}</Tag> : null}
125
+ </>
126
+ );
127
+ };
128
+
129
+ const SelectionComponent = (
130
+ value: any,
131
+ key: string,
132
+ ooui: any,
133
+ context: any
134
+ ): React.ReactElement => {
135
+ return (
136
+ <>{ooui.selectionValues.get(value)}</>
137
+ );
138
+ };
139
+
140
+ const referenceComponent = (
141
+ value: any,
142
+ key: string,
143
+ ooui: any,
144
+ context: any
145
+ ): React.ReactElement => {
146
+ return (
147
+ <>
148
+ <ReferenceTree
149
+ value={value}
150
+ selectionValues={ooui.selectionValues}
151
+ context={context}
152
+ />
153
+ </>
154
+ );
155
+ };
156
+
94
157
  function Tree(props: Props): React.ReactElement {
95
158
  const {
96
159
  page = 1,
@@ -109,6 +172,8 @@ function Tree(props: Props): React.ReactElement {
109
172
  sorter,
110
173
  onFetchChildrenForRecord,
111
174
  childField,
175
+ rootTree = false,
176
+ context,
112
177
  } = props;
113
178
 
114
179
  const [items, setItems] = useState<Array<any>>([]);
@@ -121,23 +186,42 @@ function Tree(props: Props): React.ReactElement {
121
186
  const { t } = useContext(LocaleContext) as LocaleContextType;
122
187
  const internalLimit = useRef(limit);
123
188
 
189
+ const actionViewContext = useContext(
190
+ ActionViewContext
191
+ ) as ActionViewContextType;
192
+ const { title = undefined, setTitle = undefined } =
193
+ (rootTree ? actionViewContext : {}) || {};
194
+
124
195
  useEffect(() => {
125
196
  treeOoui.current = getTree(treeView);
126
197
 
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
- });
198
+ const columns = getTableColumns(
199
+ treeOoui.current,
200
+ {
201
+ boolean: booleanComponentFn,
202
+ many2one: many2OneComponentFn,
203
+ text: textComponentFn,
204
+ one2many: one2ManyComponentFn,
205
+ many2many: one2ManyComponentFn,
206
+ progressbar: progressBarComponentFn,
207
+ float_time: floatTimeComponent,
208
+ image: imageComponent,
209
+ integer: numberComponent,
210
+ float: numberComponent,
211
+ reference: referenceComponent,
212
+ tag: TagComponent,
213
+ selection: SelectionComponent,
214
+ date: dateComponentFn,
215
+ datetime: dateTimeComponentFn,
216
+ },
217
+ context
218
+ );
139
219
 
140
220
  setColumns(columns);
221
+
222
+ if (treeOoui.current.string && title !== treeOoui.current.string) {
223
+ setTitle?.(treeOoui.current.string);
224
+ }
141
225
  }, [treeView]);
142
226
 
143
227
  useEffect(() => {
@@ -171,7 +255,9 @@ function Tree(props: Props): React.ReactElement {
171
255
  <Col span={12}>
172
256
  <Pagination
173
257
  total={total}
174
- pageSize={internalLimit.current}
258
+ pageSize={
259
+ internalLimit.current === 0 ? total : internalLimit.current
260
+ }
175
261
  current={page}
176
262
  showSizeChanger={false}
177
263
  onChange={onRequestPageChange}
@@ -216,7 +302,7 @@ function Tree(props: Props): React.ReactElement {
216
302
  });
217
303
 
218
304
  return (
219
- <div className="p-1 pb-0 pl-2 mt-2 bg-gray-50">{summary.join(", ")}</div>
305
+ <div className="p-1 pb-0 pl-2 mt-2 ">{summary.join(", ")}</div>
220
306
  );
221
307
  }
222
308
 
@@ -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
- };