@sis-cc/dotstatsuite-visions 12.55.0 → 13.0.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 (498) hide show
  1. package/README.md +2 -34
  2. package/dist/Alert/Alert.js +185 -0
  3. package/dist/Alert/Alert.js.map +1 -0
  4. package/dist/ApiQueries/ApiQueries.js +163 -0
  5. package/dist/ApiQueries/ApiQueries.js.map +1 -0
  6. package/dist/AuthDialog/AuthDialog.js +114 -0
  7. package/dist/AuthDialog/AuthDialog.js.map +1 -0
  8. package/dist/Breadcrumbs/Breadcrumbs.js +51 -0
  9. package/dist/Breadcrumbs/Breadcrumbs.js.map +1 -0
  10. package/dist/Button/Button.js +50 -0
  11. package/dist/Button/Button.js.map +1 -0
  12. package/dist/ChartsConfig/ChartsConfig.js +507 -0
  13. package/dist/ChartsConfig/ChartsConfig.js.map +1 -0
  14. package/dist/CollapseButtons/CollapseButtons.js +320 -0
  15. package/dist/CollapseButtons/CollapseButtons.js.map +1 -0
  16. package/dist/CollapsibleTree/CollapsibleTree.js +199 -0
  17. package/dist/CollapsibleTree/CollapsibleTree.js.map +1 -0
  18. package/dist/Contact/Contact.js +439 -0
  19. package/dist/Contact/Contact.js.map +1 -0
  20. package/dist/DataFooter/DataFooter.js +106 -0
  21. package/dist/DataFooter/DataFooter.js.map +1 -0
  22. package/dist/DataHeader/DataHeader.js +341 -0
  23. package/dist/DataHeader/DataHeader.js.map +1 -0
  24. package/dist/Dataflow/Dataflow.js +325 -0
  25. package/dist/Dataflow/Dataflow.js.map +1 -0
  26. package/dist/DeleteAllChip/DeleteAllChip.js +24 -0
  27. package/dist/DeleteAllChip/DeleteAllChip.js.map +1 -0
  28. package/dist/DynamicDrawer/DynamicDrawer.js +875 -0
  29. package/dist/DynamicDrawer/DynamicDrawer.js.map +1 -0
  30. package/dist/ExpansionPanel/ExpansionPanel.js +199 -0
  31. package/dist/ExpansionPanel/ExpansionPanel.js.map +1 -0
  32. package/dist/GroupedChips/GroupedChips.js +78 -0
  33. package/dist/GroupedChips/GroupedChips.js.map +1 -0
  34. package/dist/HierarchicalFilter/HierarchicalFilter.js +144 -0
  35. package/dist/HierarchicalFilter/HierarchicalFilter.js.map +1 -0
  36. package/dist/Icons/AccessibilityFilled.js +8 -0
  37. package/dist/Icons/AccessibilityFilled.js.map +1 -0
  38. package/dist/Icons/AccessibilityOutlined.js +8 -0
  39. package/dist/Icons/AccessibilityOutlined.js.map +1 -0
  40. package/dist/Icons/AccountFilled.js +8 -0
  41. package/dist/Icons/AccountFilled.js.map +1 -0
  42. package/dist/Icons/AccountOutlined.js +8 -0
  43. package/dist/Icons/AccountOutlined.js.map +1 -0
  44. package/dist/Icons/Api.js +8 -0
  45. package/dist/Icons/Api.js.map +1 -0
  46. package/dist/Icons/Asterisk.js +8 -0
  47. package/dist/Icons/Asterisk.js.map +1 -0
  48. package/dist/Icons/Bar.js +8 -0
  49. package/dist/Icons/Bar.js.map +1 -0
  50. package/dist/Icons/CopyContent.js +8 -0
  51. package/dist/Icons/CopyContent.js.map +1 -0
  52. package/dist/Icons/Cross.js +8 -0
  53. package/dist/Icons/Cross.js.map +1 -0
  54. package/dist/Icons/HSymbol.js +8 -0
  55. package/dist/Icons/HSymbol.js.map +1 -0
  56. package/dist/Icons/Row.js +8 -0
  57. package/dist/Icons/Row.js.map +1 -0
  58. package/dist/Icons/Scatter.js +8 -0
  59. package/dist/Icons/Scatter.js.map +1 -0
  60. package/dist/Icons/StackedBar.js +8 -0
  61. package/dist/Icons/StackedBar.js.map +1 -0
  62. package/dist/Icons/StackedRow.js +8 -0
  63. package/dist/Icons/StackedRow.js.map +1 -0
  64. package/dist/Icons/Timeline.js +8 -0
  65. package/dist/Icons/Timeline.js.map +1 -0
  66. package/dist/Icons/VSymbol.js +8 -0
  67. package/dist/Icons/VSymbol.js.map +1 -0
  68. package/dist/Icons/Warning.js +18 -0
  69. package/dist/Icons/Warning.js.map +1 -0
  70. package/dist/Input/Input.js +72 -0
  71. package/dist/Input/Input.js.map +1 -0
  72. package/dist/InputNumber/InputNumber.js +86 -0
  73. package/dist/InputNumber/InputNumber.js.map +1 -0
  74. package/dist/LabelDivider/LabelDivider.js +35 -0
  75. package/dist/LabelDivider/LabelDivider.js.map +1 -0
  76. package/dist/Loading/Loading.js +72 -0
  77. package/dist/Loading/Loading.js.map +1 -0
  78. package/dist/Logo/Logo.js +38 -0
  79. package/dist/Logo/Logo.js.map +1 -0
  80. package/dist/Mode/Mode.js +90 -0
  81. package/dist/Mode/Mode.js.map +1 -0
  82. package/dist/NoData/NoData.js +27 -0
  83. package/dist/NoData/NoData.js.map +1 -0
  84. package/dist/Pagination/Pagination.js +142 -0
  85. package/dist/Pagination/Pagination.js.map +1 -0
  86. package/dist/PeriodPicker/PeriodPicker.js +550 -0
  87. package/dist/PeriodPicker/PeriodPicker.js.map +1 -0
  88. package/dist/Select/Select.js +125 -0
  89. package/dist/Select/Select.js.map +1 -0
  90. package/dist/Share/Share.js +292 -0
  91. package/dist/Share/Share.js.map +1 -0
  92. package/dist/ShortUrls/ShortUrls.js +106 -0
  93. package/dist/ShortUrls/ShortUrls.js.map +1 -0
  94. package/dist/SisccFooter/SisccFooter.js +65 -0
  95. package/dist/SisccFooter/SisccFooter.js.map +1 -0
  96. package/dist/Spotlight/Spotlight.js +349 -0
  97. package/dist/Spotlight/Spotlight.js.map +1 -0
  98. package/dist/TableFooter/TableFooter.js +42 -0
  99. package/dist/TableFooter/TableFooter.js.map +1 -0
  100. package/dist/TableHeader/TableHeader.js +35 -0
  101. package/dist/TableHeader/TableHeader.js.map +1 -0
  102. package/dist/TableHtml5/TableHtml5.js +1045 -0
  103. package/dist/TableHtml5/TableHtml5.js.map +1 -0
  104. package/dist/TableLayout/TableLayout.js +529 -0
  105. package/dist/TableLayout/TableLayout.js.map +1 -0
  106. package/dist/TablePreview/TablePreview.js +209 -0
  107. package/dist/TablePreview/TablePreview.js.map +1 -0
  108. package/dist/Tag/Tag.js +23 -0
  109. package/dist/Tag/Tag.js.map +1 -0
  110. package/dist/Tooltip/Tooltip.js +54 -0
  111. package/dist/Tooltip/Tooltip.js.map +1 -0
  112. package/dist/UserRightForm/UserRightForm.js +545 -0
  113. package/dist/UserRightForm/UserRightForm.js.map +1 -0
  114. package/dist/VerticalButton/VerticalButton.js +43 -0
  115. package/dist/VerticalButton/VerticalButton.js.map +1 -0
  116. package/dist/chunks/CustomChip-CMYCIorJ.js +181 -0
  117. package/dist/chunks/CustomChip-CMYCIorJ.js.map +1 -0
  118. package/dist/chunks/useKeybordEscapeHandler-DRsOrnwc.js +22 -0
  119. package/dist/chunks/useKeybordEscapeHandler-DRsOrnwc.js.map +1 -0
  120. package/dist/chunks/utils-BQc_rN44.js +15 -0
  121. package/dist/chunks/utils-BQc_rN44.js.map +1 -0
  122. package/dist/chunks/utils-kslX1mzh.js +20 -0
  123. package/dist/chunks/utils-kslX1mzh.js.map +1 -0
  124. package/dist/chunks/with-input-DRWNlMdA.js +35 -0
  125. package/dist/chunks/with-input-DRWNlMdA.js.map +1 -0
  126. package/dist/chunks/withSpotlight-CYQVWD78.js +903 -0
  127. package/dist/chunks/withSpotlight-CYQVWD78.js.map +1 -0
  128. package/{es → dist/theme}/theme.js +147 -149
  129. package/dist/theme/theme.js.map +1 -0
  130. package/package.json +55 -199
  131. package/es/AdvancedFilterDialog/AdvancedFilterDialog.js +0 -583
  132. package/es/AdvancedFilterDialog/SelectionModeMenu.js +0 -85
  133. package/es/AdvancedFilterDialog/images/all-selection.png +0 -0
  134. package/es/AdvancedFilterDialog/images/branch-selection.png +0 -0
  135. package/es/AdvancedFilterDialog/images/children-selection.png +0 -0
  136. package/es/AdvancedFilterDialog/images/level-selection.png +0 -0
  137. package/es/AdvancedFilterDialog/images/single-selection.png +0 -0
  138. package/es/AdvancedFilterDialog/images/small-all-selection.png +0 -0
  139. package/es/AdvancedFilterDialog/images/small-branch-selection.png +0 -0
  140. package/es/AdvancedFilterDialog/images/small-children-selection.png +0 -0
  141. package/es/AdvancedFilterDialog/images/small-level-selection.png +0 -0
  142. package/es/AdvancedFilterDialog/images/small-single-selection.png +0 -0
  143. package/es/AdvancedFilterDialog/index.js +0 -26
  144. package/es/Alert/Alert.js +0 -284
  145. package/es/Alert/index.js +0 -13
  146. package/es/ApiQueries/ApiQueries.js +0 -107
  147. package/es/ApiQueries/Query.js +0 -175
  148. package/es/ApiQueries/index.js +0 -45
  149. package/es/AuthDialog/index.js +0 -211
  150. package/es/Breadcrumbs/Breadcrumbs.js +0 -72
  151. package/es/Breadcrumbs/index.js +0 -30
  152. package/es/Button/Button.js +0 -63
  153. package/es/Button/index.js +0 -52
  154. package/es/ChartsConfig/ChartsConfig.js +0 -470
  155. package/es/ChartsConfig/Input.js +0 -152
  156. package/es/ChartsConfig/InputProxy.js +0 -57
  157. package/es/ChartsConfig/Proxy.js +0 -20
  158. package/es/ChartsConfig/Title.js +0 -37
  159. package/es/ChartsConfig/index.js +0 -213
  160. package/es/ChartsConfig/useAxisOptions.js +0 -9
  161. package/es/ChartsConfig/useDimensionOptions.js +0 -12
  162. package/es/ChartsConfig/useFocusOptions.js +0 -22
  163. package/es/ChartsConfig/utils.js +0 -6
  164. package/es/Chips/CustomChip.js +0 -139
  165. package/es/Chips/DeleteChip.js +0 -32
  166. package/es/Chips/GroupedChips.js +0 -106
  167. package/es/Chips/index.js +0 -69
  168. package/es/Chips/styles.js +0 -67
  169. package/es/Chips/utils.js +0 -21
  170. package/es/CollapseButtons/CollapseButtons.js +0 -159
  171. package/es/CollapseButtons/Item.js +0 -146
  172. package/es/CollapseButtons/Paper.js +0 -58
  173. package/es/CollapseButtons/index.js +0 -90
  174. package/es/CollapsibleTree/Collapse.js +0 -98
  175. package/es/CollapsibleTree/CollapsibleTree.js +0 -229
  176. package/es/CollapsibleTree/index.js +0 -49
  177. package/es/Contact/Contact.js +0 -360
  178. package/es/Contact/Input.js +0 -129
  179. package/es/Contact/Mode.js +0 -134
  180. package/es/Contact/index.js +0 -36
  181. package/es/DataEdit/DataEdit.js +0 -154
  182. package/es/DataEdit/Input.js +0 -151
  183. package/es/DataEdit/index.js +0 -70
  184. package/es/DataFooter/DataFooter.js +0 -178
  185. package/es/DataFooter/index.js +0 -33
  186. package/es/DataHeader/DataHeader.js +0 -314
  187. package/es/DataHeader/Flags.js +0 -42
  188. package/es/DataHeader/Title.js +0 -27
  189. package/es/DataHeader/TooltipHeader.js +0 -78
  190. package/es/DataHeader/index.js +0 -82
  191. package/es/DataHeader/utils.js +0 -19
  192. package/es/Dataflow/Dataflow.js +0 -441
  193. package/es/Dataflow/index.js +0 -62
  194. package/es/DynamicDrawer/AdvancedSelection.js +0 -503
  195. package/es/DynamicDrawer/DynamicDrawer.js +0 -418
  196. package/es/DynamicDrawer/SelectionModesMobile.js +0 -88
  197. package/es/DynamicDrawer/index.js +0 -44
  198. package/es/ExpansionPanel/ExpansionPanel.js +0 -151
  199. package/es/ExpansionPanel/index.js +0 -58
  200. package/es/ExpansionPanel/styles.js +0 -89
  201. package/es/HierarchicalFilter/HierarchicalFilter.js +0 -178
  202. package/es/HierarchicalFilter/index.js +0 -26
  203. package/es/Icons/AccessibilityFilled.js +0 -12
  204. package/es/Icons/AccessibilityOutlined.js +0 -12
  205. package/es/Icons/AccountFilled.js +0 -12
  206. package/es/Icons/AccountOutlined.js +0 -12
  207. package/es/Icons/Api.js +0 -12
  208. package/es/Icons/Asterisk.js +0 -12
  209. package/es/Icons/Bar.js +0 -12
  210. package/es/Icons/CopyContent.js +0 -12
  211. package/es/Icons/Cross.js +0 -12
  212. package/es/Icons/HSymbol.js +0 -12
  213. package/es/Icons/Row.js +0 -12
  214. package/es/Icons/Scatter.js +0 -12
  215. package/es/Icons/StackedBar.js +0 -12
  216. package/es/Icons/StackedRow.js +0 -12
  217. package/es/Icons/Timeline.js +0 -12
  218. package/es/Icons/VSymbol.js +0 -12
  219. package/es/Icons/Warning.js +0 -25
  220. package/es/Icons/index.js +0 -28
  221. package/es/Input/Input.js +0 -128
  222. package/es/Input/index.js +0 -26
  223. package/es/Input/with-input.js +0 -55
  224. package/es/InputNumber/InputNumber.js +0 -116
  225. package/es/InputNumber/index.js +0 -23
  226. package/es/LabelDivider/LabelDivider.js +0 -52
  227. package/es/LabelDivider/index.js +0 -32
  228. package/es/Loading/Loading.js +0 -84
  229. package/es/Loading/index.js +0 -24
  230. package/es/Logo/Logo.js +0 -55
  231. package/es/Logo/index.js +0 -18
  232. package/es/Mode/Mode.js +0 -135
  233. package/es/Mode/index.js +0 -24
  234. package/es/NoData/NoData.js +0 -48
  235. package/es/NoData/index.js +0 -15
  236. package/es/Pagination/Pagination.js +0 -207
  237. package/es/Pagination/index.js +0 -31
  238. package/es/PeriodPicker/PeriodPicker.js +0 -236
  239. package/es/PeriodPicker/constants.js +0 -39
  240. package/es/PeriodPicker/index.js +0 -26
  241. package/es/PeriodPicker/lib.js +0 -206
  242. package/es/PeriodPicker/styles.js +0 -23
  243. package/es/ScopeList/Header.js +0 -80
  244. package/es/ScopeList/Item.js +0 -245
  245. package/es/ScopeList/ScopeList.js +0 -323
  246. package/es/ScopeList/Selection.js +0 -129
  247. package/es/ScopeList/index.deprecated.js +0 -94
  248. package/es/ScopeList/index.js +0 -94
  249. package/es/ScopeList/styles.js +0 -143
  250. package/es/ScopeList/with-scope-list.js +0 -492
  251. package/es/Select/Select.js +0 -169
  252. package/es/Select/index.js +0 -33
  253. package/es/Share/Form.js +0 -164
  254. package/es/Share/Mode.js +0 -136
  255. package/es/Share/Share.js +0 -115
  256. package/es/Share/index.js +0 -64
  257. package/es/ShortUrls/ShortUrls.js +0 -136
  258. package/es/ShortUrls/index.js +0 -22
  259. package/es/SisccFooter/SisccFooter.js +0 -99
  260. package/es/SisccFooter/index.js +0 -27
  261. package/es/Spotlight/Fields.js +0 -100
  262. package/es/Spotlight/Spotlight.js +0 -157
  263. package/es/Spotlight/index.js +0 -75
  264. package/es/Spotlight/useSpotlight.js +0 -75
  265. package/es/Spotlight/useStyles.js +0 -77
  266. package/es/TableFooter/TableFooter.js +0 -100
  267. package/es/TableFooter/index.js +0 -33
  268. package/es/TableHeader/TableHeader.js +0 -63
  269. package/es/TableHeader/index.js +0 -17
  270. package/es/TableHtml5/TableHtml5.js +0 -213
  271. package/es/TableHtml5/cell.js +0 -130
  272. package/es/TableHtml5/flags.js +0 -138
  273. package/es/TableHtml5/header.js +0 -177
  274. package/es/TableHtml5/index.js +0 -62
  275. package/es/TableHtml5/section.js +0 -243
  276. package/es/TableHtml5/sectionHeader.js +0 -171
  277. package/es/TableHtml5/subHeader.js +0 -154
  278. package/es/TableHtml5/utils.js +0 -23
  279. package/es/TableLayout/Box.js +0 -123
  280. package/es/TableLayout/DnDItem.js +0 -142
  281. package/es/TableLayout/TableLayout.js +0 -427
  282. package/es/TableLayout/constants.js +0 -11
  283. package/es/TableLayout/index.js +0 -75
  284. package/es/TableLayout/lib.js +0 -31
  285. package/es/TablePreview/TablePreview.js +0 -244
  286. package/es/TablePreview/index.js +0 -44
  287. package/es/TablePreview/lib.js +0 -34
  288. package/es/TablePreview/styles.js +0 -71
  289. package/es/Tag/Tag.js +0 -44
  290. package/es/Tag/index.js +0 -30
  291. package/es/ToggleButton/ToggleButton.js +0 -79
  292. package/es/ToggleButton/index.js +0 -50
  293. package/es/Tooltip/Tooltip.js +0 -69
  294. package/es/Tooltip/index.js +0 -36
  295. package/es/UserRightForm/Input.js +0 -129
  296. package/es/UserRightForm/Permissions.js +0 -124
  297. package/es/UserRightForm/PermsissionsTabs.js +0 -107
  298. package/es/UserRightForm/UserRightForm.js +0 -445
  299. package/es/UserRightForm/index.js +0 -60
  300. package/es/VerticalButton/VerticalButton.js +0 -67
  301. package/es/VerticalButton/index.js +0 -27
  302. package/es/VirtualizedTree/Item.js +0 -200
  303. package/es/VirtualizedTree/VirtualizedTree.js +0 -366
  304. package/es/VirtualizedTree/index.js +0 -38
  305. package/es/VirtualizedTree/utils.js +0 -170
  306. package/es/VirtualizedTree/withExpansionTree.js +0 -65
  307. package/es/VirtualizedTree/withSpotlight.js +0 -113
  308. package/es/hooks/useKeybordEscapeHandler.js +0 -22
  309. package/es/index.js +0 -52
  310. package/es/utils.js +0 -78
  311. package/lib/AdvancedFilterDialog/AdvancedFilterDialog.js +0 -658
  312. package/lib/AdvancedFilterDialog/SelectionModeMenu.js +0 -118
  313. package/lib/AdvancedFilterDialog/images/all-selection.png +0 -0
  314. package/lib/AdvancedFilterDialog/images/branch-selection.png +0 -0
  315. package/lib/AdvancedFilterDialog/images/children-selection.png +0 -0
  316. package/lib/AdvancedFilterDialog/images/level-selection.png +0 -0
  317. package/lib/AdvancedFilterDialog/images/single-selection.png +0 -0
  318. package/lib/AdvancedFilterDialog/images/small-all-selection.png +0 -0
  319. package/lib/AdvancedFilterDialog/images/small-branch-selection.png +0 -0
  320. package/lib/AdvancedFilterDialog/images/small-children-selection.png +0 -0
  321. package/lib/AdvancedFilterDialog/images/small-level-selection.png +0 -0
  322. package/lib/AdvancedFilterDialog/images/small-single-selection.png +0 -0
  323. package/lib/AdvancedFilterDialog/index.js +0 -16
  324. package/lib/Alert/Alert.js +0 -325
  325. package/lib/Alert/index.js +0 -16
  326. package/lib/ApiQueries/ApiQueries.js +0 -139
  327. package/lib/ApiQueries/Query.js +0 -205
  328. package/lib/ApiQueries/index.js +0 -16
  329. package/lib/AuthDialog/index.js +0 -251
  330. package/lib/Breadcrumbs/Breadcrumbs.js +0 -107
  331. package/lib/Breadcrumbs/index.js +0 -16
  332. package/lib/Button/Button.js +0 -89
  333. package/lib/Button/index.js +0 -16
  334. package/lib/ChartsConfig/ChartsConfig.js +0 -533
  335. package/lib/ChartsConfig/Input.js +0 -187
  336. package/lib/ChartsConfig/InputProxy.js +0 -80
  337. package/lib/ChartsConfig/Proxy.js +0 -34
  338. package/lib/ChartsConfig/Title.js +0 -63
  339. package/lib/ChartsConfig/index.js +0 -16
  340. package/lib/ChartsConfig/useAxisOptions.js +0 -18
  341. package/lib/ChartsConfig/useDimensionOptions.js +0 -22
  342. package/lib/ChartsConfig/useFocusOptions.js +0 -32
  343. package/lib/ChartsConfig/utils.js +0 -15
  344. package/lib/Chips/CustomChip.js +0 -183
  345. package/lib/Chips/DeleteChip.js +0 -56
  346. package/lib/Chips/GroupedChips.js +0 -138
  347. package/lib/Chips/index.js +0 -23
  348. package/lib/Chips/styles.js +0 -77
  349. package/lib/Chips/utils.js +0 -30
  350. package/lib/CollapseButtons/CollapseButtons.js +0 -198
  351. package/lib/CollapseButtons/Item.js +0 -179
  352. package/lib/CollapseButtons/Paper.js +0 -82
  353. package/lib/CollapseButtons/index.js +0 -16
  354. package/lib/CollapsibleTree/Collapse.js +0 -130
  355. package/lib/CollapsibleTree/CollapsibleTree.js +0 -288
  356. package/lib/CollapsibleTree/index.js +0 -16
  357. package/lib/Contact/Contact.js +0 -409
  358. package/lib/Contact/Input.js +0 -165
  359. package/lib/Contact/Mode.js +0 -174
  360. package/lib/Contact/index.js +0 -16
  361. package/lib/DataEdit/DataEdit.js +0 -190
  362. package/lib/DataEdit/Input.js +0 -186
  363. package/lib/DataEdit/index.js +0 -16
  364. package/lib/DataFooter/DataFooter.js +0 -219
  365. package/lib/DataFooter/index.js +0 -16
  366. package/lib/DataHeader/DataHeader.js +0 -358
  367. package/lib/DataHeader/Flags.js +0 -61
  368. package/lib/DataHeader/Title.js +0 -40
  369. package/lib/DataHeader/TooltipHeader.js +0 -99
  370. package/lib/DataHeader/index.js +0 -16
  371. package/lib/DataHeader/utils.js +0 -29
  372. package/lib/Dataflow/Dataflow.js +0 -505
  373. package/lib/Dataflow/index.js +0 -16
  374. package/lib/DynamicDrawer/AdvancedSelection.js +0 -563
  375. package/lib/DynamicDrawer/DynamicDrawer.js +0 -466
  376. package/lib/DynamicDrawer/SelectionModesMobile.js +0 -119
  377. package/lib/DynamicDrawer/index.js +0 -16
  378. package/lib/ExpansionPanel/ExpansionPanel.js +0 -198
  379. package/lib/ExpansionPanel/index.js +0 -16
  380. package/lib/ExpansionPanel/styles.js +0 -103
  381. package/lib/HierarchicalFilter/HierarchicalFilter.js +0 -208
  382. package/lib/HierarchicalFilter/index.js +0 -16
  383. package/lib/Icons/AccessibilityFilled.js +0 -25
  384. package/lib/Icons/AccessibilityOutlined.js +0 -25
  385. package/lib/Icons/AccountFilled.js +0 -25
  386. package/lib/Icons/AccountOutlined.js +0 -25
  387. package/lib/Icons/Api.js +0 -25
  388. package/lib/Icons/Asterisk.js +0 -25
  389. package/lib/Icons/Bar.js +0 -25
  390. package/lib/Icons/CopyContent.js +0 -25
  391. package/lib/Icons/Cross.js +0 -25
  392. package/lib/Icons/HSymbol.js +0 -25
  393. package/lib/Icons/Row.js +0 -25
  394. package/lib/Icons/Scatter.js +0 -25
  395. package/lib/Icons/StackedBar.js +0 -25
  396. package/lib/Icons/StackedRow.js +0 -25
  397. package/lib/Icons/Timeline.js +0 -25
  398. package/lib/Icons/VSymbol.js +0 -25
  399. package/lib/Icons/Warning.js +0 -45
  400. package/lib/Icons/index.js +0 -155
  401. package/lib/Input/Input.js +0 -164
  402. package/lib/Input/index.js +0 -16
  403. package/lib/Input/with-input.js +0 -69
  404. package/lib/InputNumber/InputNumber.js +0 -152
  405. package/lib/InputNumber/index.js +0 -16
  406. package/lib/LabelDivider/LabelDivider.js +0 -78
  407. package/lib/LabelDivider/index.js +0 -16
  408. package/lib/Loading/Loading.js +0 -110
  409. package/lib/Loading/index.js +0 -16
  410. package/lib/Logo/Logo.js +0 -73
  411. package/lib/Logo/index.js +0 -16
  412. package/lib/Mode/Mode.js +0 -168
  413. package/lib/Mode/index.js +0 -16
  414. package/lib/NoData/NoData.js +0 -69
  415. package/lib/NoData/index.js +0 -16
  416. package/lib/Pagination/Pagination.js +0 -250
  417. package/lib/Pagination/index.js +0 -16
  418. package/lib/PeriodPicker/PeriodPicker.js +0 -266
  419. package/lib/PeriodPicker/constants.js +0 -43
  420. package/lib/PeriodPicker/index.js +0 -16
  421. package/lib/PeriodPicker/lib.js +0 -222
  422. package/lib/PeriodPicker/styles.js +0 -32
  423. package/lib/ScopeList/Header.js +0 -110
  424. package/lib/ScopeList/Item.js +0 -284
  425. package/lib/ScopeList/ScopeList.js +0 -377
  426. package/lib/ScopeList/Selection.js +0 -170
  427. package/lib/ScopeList/index.deprecated.js +0 -16
  428. package/lib/ScopeList/index.js +0 -16
  429. package/lib/ScopeList/styles.js +0 -153
  430. package/lib/ScopeList/with-scope-list.js +0 -507
  431. package/lib/Select/Select.js +0 -201
  432. package/lib/Select/index.js +0 -16
  433. package/lib/Share/Form.js +0 -201
  434. package/lib/Share/Mode.js +0 -176
  435. package/lib/Share/Share.js +0 -148
  436. package/lib/Share/index.js +0 -16
  437. package/lib/ShortUrls/ShortUrls.js +0 -181
  438. package/lib/ShortUrls/index.js +0 -16
  439. package/lib/SisccFooter/SisccFooter.js +0 -131
  440. package/lib/SisccFooter/index.js +0 -16
  441. package/lib/Spotlight/Fields.js +0 -132
  442. package/lib/Spotlight/Spotlight.js +0 -202
  443. package/lib/Spotlight/index.js +0 -16
  444. package/lib/Spotlight/useSpotlight.js +0 -85
  445. package/lib/Spotlight/useStyles.js +0 -91
  446. package/lib/TableFooter/TableFooter.js +0 -129
  447. package/lib/TableFooter/index.js +0 -16
  448. package/lib/TableHeader/TableHeader.js +0 -89
  449. package/lib/TableHeader/index.js +0 -16
  450. package/lib/TableHtml5/TableHtml5.js +0 -249
  451. package/lib/TableHtml5/cell.js +0 -164
  452. package/lib/TableHtml5/flags.js +0 -174
  453. package/lib/TableHtml5/header.js +0 -215
  454. package/lib/TableHtml5/index.js +0 -23
  455. package/lib/TableHtml5/section.js +0 -289
  456. package/lib/TableHtml5/sectionHeader.js +0 -212
  457. package/lib/TableHtml5/subHeader.js +0 -191
  458. package/lib/TableHtml5/utils.js +0 -32
  459. package/lib/TableLayout/Box.js +0 -159
  460. package/lib/TableLayout/DnDItem.js +0 -177
  461. package/lib/TableLayout/TableLayout.js +0 -487
  462. package/lib/TableLayout/constants.js +0 -14
  463. package/lib/TableLayout/index.js +0 -16
  464. package/lib/TableLayout/lib.js +0 -40
  465. package/lib/TablePreview/TablePreview.js +0 -279
  466. package/lib/TablePreview/index.js +0 -16
  467. package/lib/TablePreview/lib.js +0 -48
  468. package/lib/TablePreview/styles.js +0 -81
  469. package/lib/Tag/Tag.js +0 -67
  470. package/lib/Tag/index.js +0 -16
  471. package/lib/ToggleButton/ToggleButton.js +0 -111
  472. package/lib/ToggleButton/index.js +0 -16
  473. package/lib/Tooltip/Tooltip.js +0 -95
  474. package/lib/Tooltip/index.js +0 -16
  475. package/lib/UserRightForm/Input.js +0 -165
  476. package/lib/UserRightForm/Permissions.js +0 -159
  477. package/lib/UserRightForm/PermsissionsTabs.js +0 -145
  478. package/lib/UserRightForm/UserRightForm.js +0 -484
  479. package/lib/UserRightForm/index.js +0 -16
  480. package/lib/VerticalButton/VerticalButton.js +0 -88
  481. package/lib/VerticalButton/index.js +0 -16
  482. package/lib/VirtualizedTree/Item.js +0 -244
  483. package/lib/VirtualizedTree/VirtualizedTree.js +0 -402
  484. package/lib/VirtualizedTree/index.js +0 -16
  485. package/lib/VirtualizedTree/utils.js +0 -179
  486. package/lib/VirtualizedTree/withExpansionTree.js +0 -80
  487. package/lib/VirtualizedTree/withSpotlight.js +0 -129
  488. package/lib/hooks/useKeybordEscapeHandler.js +0 -28
  489. package/lib/index.js +0 -460
  490. package/lib/theme.js +0 -437
  491. package/lib/utils.js +0 -96
  492. package/umd/@sis-cc/dotstatsuite-visions.js +0 -82495
  493. package/umd/@sis-cc/dotstatsuite-visions.min.js +0 -222
  494. package/umd/@sis-cc/dotstatsuite-visions.min.js.map +0 -1
  495. package/umd/branch-selection.54dd3bc1.png +0 -0
  496. package/umd/children-selection.20d94242.png +0 -0
  497. package/umd/level-selection.df116629.png +0 -0
  498. package/umd/single-selection.a729a6c8.png +0 -0
@@ -0,0 +1,529 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { Fragment, useState, useEffect, useMemo } from 'react';
3
+ import cx from 'classnames';
4
+ import * as R from 'ramda';
5
+ import Grid from '@mui/material/Grid';
6
+ import Typography from '@mui/material/Typography';
7
+ import { ViewColumnOutlined, Reorder, ViewListOutlined, ViewQuiltOutlined, Done, CheckBoxOutlineBlankOutlined, Undo } from '@mui/icons-material';
8
+ import { visuallyHidden } from '@mui/utils';
9
+ import { makeStyles as makeStyles$1 } from '@mui/styles';
10
+ import { Draggable, Droppable, DragDropContext } from '@hello-pangea/dnd';
11
+ import { a as getLight, b as getDark, w as withBlank } from '../chunks/utils-kslX1mzh.js';
12
+ import { TablePreview } from '../TablePreview/TablePreview.js';
13
+ import PropTypes from 'prop-types';
14
+ import makeStyles from '@mui/styles/makeStyles';
15
+ import Select from '@mui/material/Select';
16
+ import MenuItem from '@mui/material/MenuItem';
17
+ import { Button } from '../Button/Button.js';
18
+
19
+ const BOX = {
20
+ header: 'header',
21
+ sections: 'sections',
22
+ rows: 'rows',
23
+ };
24
+
25
+ const wcagId = 'dnd-how-drag-item';
26
+
27
+ const useStyles$2 = makeStyles((theme) => ({
28
+ containerButton: {
29
+ display: "flex",
30
+ justifyContent: "space-between",
31
+ padding: theme.spacing(1),
32
+ borderRadius: theme.spacing(0.5),
33
+ userSelect: "none"
34
+ },
35
+ styledItemContainer: {
36
+ cursor: "grab",
37
+ minHeight: 32,
38
+ borderRadius: theme.spacing(0.5),
39
+ alignItems: "center",
40
+ paddingTop: theme.spacing(0.25),
41
+ paddingBottom: theme.spacing(0.25),
42
+ margin: theme.spacing(0.25),
43
+ opacity: 1,
44
+ flexFlow: "wrap"
45
+ },
46
+ [`${BOX.sections}Item`]: {
47
+ color: theme.palette.getContrastText(getDark(theme) || theme.palette.secondary.dark),
48
+ backgroundColor: getDark(theme) || theme.palette.secondary.dark
49
+ },
50
+ [`${BOX.rows}Item`]: {
51
+ color: theme.palette.getContrastText(getLight(theme) || theme.palette.secondary.light),
52
+ backgroundColor: getLight(theme) || theme.palette.secondary.light
53
+ },
54
+ [`${BOX.header}Item`]: {
55
+ color: theme.palette.getContrastText(theme.palette.primary.main),
56
+ backgroundColor: theme.palette.primary.main
57
+ },
58
+ cantMove: {
59
+ cursor: "no-drop"
60
+ },
61
+ text: {
62
+ fontStyle: "italic",
63
+ fontSize: theme.typography.fontSize - 2,
64
+ fontWeight: theme.typography.fontWeightBold
65
+ },
66
+ itemButton: {
67
+ // paddingTop: theme.spacing(0.25),
68
+ // paddingBottom: theme.spacing(0.25),
69
+ // paddingRight: 0,
70
+ },
71
+ select: {
72
+ backgroundColor: theme.palette.common.white,
73
+ "&:focus": {
74
+ backgroundColor: theme.palette.common.white
75
+ }
76
+ },
77
+ spaceButton: {
78
+ margin: theme.spacing(0, 1, 0, 0)
79
+ }
80
+ }));
81
+ const DnDItem = ({ item, index, itemRenderer, dropZoneLabel, itemButtonProps, canDrag }) => {
82
+ const classes = useStyles$2();
83
+ const selectItem = R.prop(item.id)(itemButtonProps);
84
+ return /* @__PURE__ */ jsx(Draggable, { draggableId: item.id, index, isDragDisabled: R.not(canDrag), children: (provided) => /* @__PURE__ */ jsx(
85
+ "div",
86
+ {
87
+ "data-testid": `draggable-${item.id}`,
88
+ ref: provided.innerRef,
89
+ ...provided.draggableProps,
90
+ ...provided.dragHandleProps,
91
+ className: cx(
92
+ classes.styledItemContainer,
93
+ classes.containerButton,
94
+ [R.prop(`${dropZoneLabel}Item`)(classes)],
95
+ {
96
+ [classes.cantMove]: R.not(canDrag)
97
+ }
98
+ ),
99
+ "aria-label": itemRenderer(item),
100
+ "aria-describedby": wcagId,
101
+ children: /* @__PURE__ */ jsxs(Fragment, { children: [
102
+ /* @__PURE__ */ jsx(
103
+ Typography,
104
+ {
105
+ variant: "body2",
106
+ className: cx(classes.text, { [classes.spaceButton]: selectItem }),
107
+ children: itemRenderer(item)
108
+ }
109
+ ),
110
+ selectItem && /* @__PURE__ */ jsx(
111
+ Select,
112
+ {
113
+ id: item.id,
114
+ value: selectItem.value,
115
+ onChange: (e) => selectItem.onChange(e.target.value),
116
+ classes: { root: classes.select },
117
+ variant: "outlined",
118
+ size: "small",
119
+ autoWidth: true,
120
+ children: R.map((v) => /* @__PURE__ */ jsx(MenuItem, { value: v, children: v }, v))(selectItem.options)
121
+ }
122
+ )
123
+ ] })
124
+ }
125
+ ) }, item.id);
126
+ };
127
+ DnDItem.propTypes = {
128
+ item: PropTypes.object,
129
+ index: PropTypes.number,
130
+ itemRenderer: PropTypes.func,
131
+ dropZoneLabel: PropTypes.string,
132
+ onChangeLayout: PropTypes.func,
133
+ itemButtonProps: PropTypes.object,
134
+ handleChangeBox: PropTypes.func,
135
+ canDrag: PropTypes.bool,
136
+ dropZoneIndex: PropTypes.number
137
+ };
138
+
139
+ const useStyles$1 = makeStyles((theme) => ({
140
+ blockDnd: {
141
+ width: "100%",
142
+ paddingBottom: theme.spacing(1),
143
+ marginTop: theme.spacing(0.5),
144
+ marginRight: theme.spacing(1),
145
+ minHeight: 30,
146
+ marginBottom: theme.spacing(1),
147
+ borderRadius: theme.spacing(0.5),
148
+ borderWidth: 2,
149
+ borderStyle: "solid"
150
+ },
151
+ canDrop: {
152
+ borderStyle: "dashed"
153
+ },
154
+ [`${BOX.sections}Container`]: {
155
+ borderColor: getDark(theme) || theme.palette.secondary.dark
156
+ },
157
+ [`${BOX.rows}Container`]: {
158
+ borderColor: getLight(theme) || theme.palette.secondary.light
159
+ },
160
+ [`${BOX.header}Container`]: {
161
+ borderColor: theme.palette.primary.main
162
+ },
163
+ iconTitle: {
164
+ display: "flex",
165
+ flexDirection: "row",
166
+ alignItems: "center",
167
+ flexFlow: "nowrap"
168
+ },
169
+ title: theme.typography.subtitle1
170
+ }));
171
+ const Box = ({
172
+ items,
173
+ itemRenderer,
174
+ dropZoneLabel,
175
+ title,
176
+ Icon,
177
+ onChangeLayout,
178
+ itemButtonProps,
179
+ accessibility,
180
+ md
181
+ }) => {
182
+ const classes = useStyles$1();
183
+ const canDrag = R.equals(dropZoneLabel, BOX.rows) ? R.pipe(R.length, R.lt(1))(items) : R.T();
184
+ return /* @__PURE__ */ jsxs(Grid, { item: true, xs: accessibility ? 4 : 12, md, children: [
185
+ /* @__PURE__ */ jsxs("div", { className: classes.iconTitle, children: [
186
+ /* @__PURE__ */ jsx(Icon, {}),
187
+ /* @__PURE__ */ jsx("span", { className: classes.title, children: title }),
188
+ /* @__PURE__ */ jsx(Typography, { style: visuallyHidden, children: title })
189
+ ] }),
190
+ /* @__PURE__ */ jsx(Droppable, { droppableId: dropZoneLabel, children: (provided, snapshot) => /* @__PURE__ */ jsxs(
191
+ "div",
192
+ {
193
+ "data-testid": `droppable-${dropZoneLabel}`,
194
+ ref: provided.innerRef,
195
+ className: cx(classes.blockDnd, R.prop(`${dropZoneLabel}Container`)(classes), {
196
+ [classes.canDrop]: snapshot.isDraggingOver
197
+ }),
198
+ children: [
199
+ R.addIndex(R.map)((item, index) => /* @__PURE__ */ jsx(
200
+ DnDItem,
201
+ {
202
+ index,
203
+ item,
204
+ itemRenderer,
205
+ dropZoneLabel,
206
+ onChangeLayout,
207
+ itemButtonProps,
208
+ canDrag
209
+ },
210
+ item.id
211
+ ))(R.values(items)),
212
+ provided.placeholder
213
+ ]
214
+ }
215
+ ) })
216
+ ] });
217
+ };
218
+ Box.propTypes = {
219
+ items: PropTypes.array,
220
+ itemRenderer: PropTypes.func,
221
+ dropZoneLabel: PropTypes.string,
222
+ title: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
223
+ Icon: PropTypes.object,
224
+ onChangeLayout: PropTypes.func,
225
+ putItem: PropTypes.func,
226
+ itemButtonProps: PropTypes.object,
227
+ accessibility: PropTypes.bool,
228
+ md: PropTypes.number
229
+ };
230
+
231
+ const changeLayout = ({ dragIndex, hoverIndex, dragZone, dropZone, currentLayout }) => {
232
+ if (R.equals(dragZone, dropZone)) {
233
+ return R.over(R.lensProp(dropZone), R.move(dragIndex, hoverIndex), currentLayout);
234
+ }
235
+ const item = R.pipe(R.prop(dragZone), R.nth(dragIndex))(currentLayout);
236
+ return R.pipe(
237
+ R.over(R.lensProp(dragZone), R.without([item])),
238
+ R.over(R.lensProp(dropZone), R.insert(hoverIndex, item)),
239
+ )(currentLayout);
240
+ };
241
+
242
+ const getIsOptionalActivated = (layout, optionalId) => {
243
+ const founded = R.pipe(R.values, R.unnest, R.find(R.equals(optionalId)))(layout);
244
+ return !R.isNil(founded);
245
+ };
246
+
247
+ const useStyles = makeStyles$1((theme) => ({
248
+ dnd: {
249
+ userSelect: "none"
250
+ },
251
+ buttonContainer: {
252
+ margin: theme.spacing(2, 0)
253
+ },
254
+ iconTitle: {
255
+ display: "flex",
256
+ flexDirection: "row",
257
+ alignItems: "center",
258
+ flexFlow: "nowrap"
259
+ },
260
+ activationButton: {
261
+ backgroundColor: theme.palette.action.hover,
262
+ "&:hover": {
263
+ backgroundColor: theme.palette.action.selected
264
+ }
265
+ }
266
+ }));
267
+ const transform = {
268
+ index: R.add(1)
269
+ };
270
+ const CustomTableLayout = ({
271
+ layout = {},
272
+ items = [],
273
+ optionalItem = {},
274
+ itemRenderer = R.prop("name"),
275
+ itemButtonProps,
276
+ labels,
277
+ commit,
278
+ noPreview,
279
+ accessibility
280
+ }) => {
281
+ const classes = useStyles();
282
+ const [currentLayout, setCurrentLayout] = useState(layout);
283
+ const boxLabel = {
284
+ [BOX.header]: labels.column || BOX.header,
285
+ [BOX.sections]: labels.section || BOX.sections,
286
+ [BOX.rows]: labels.row || BOX.rows
287
+ };
288
+ useEffect(() => {
289
+ setCurrentLayout(layout);
290
+ }, [layout]);
291
+ const indexedItems = useMemo(() => {
292
+ const indexed = R.indexBy(R.prop("id"), items);
293
+ if (!R.isEmpty(optionalItem) && !R.isNil(optionalItem)) {
294
+ return R.assoc(optionalItem.id, optionalItem, indexed);
295
+ }
296
+ return indexed;
297
+ }, [items, optionalItem]);
298
+ const onChangeLayout = (props) => setCurrentLayout(changeLayout({ ...props }));
299
+ const activateOptionalItem = () => {
300
+ const nextLayout = R.over(R.lensProp("header"), R.append(optionalItem.id), currentLayout);
301
+ setCurrentLayout(nextLayout);
302
+ };
303
+ const deactivateOptionalItem = () => {
304
+ setCurrentLayout(R.map(R.reject(R.equals(optionalItem.id)), currentLayout));
305
+ };
306
+ const onCommit = () => {
307
+ if (R.is(Function)(commit)) {
308
+ commit(currentLayout);
309
+ }
310
+ };
311
+ const onCancel = () => {
312
+ if (R.is(Function)(setCurrentLayout)) {
313
+ setCurrentLayout(layout);
314
+ }
315
+ };
316
+ const onDragStart = ({ draggableId, source }, provided) => {
317
+ if (R.is(Function)(labels.wcagDragStart)) {
318
+ const dragZoneId = source.droppableId;
319
+ const dragLabel = R.pipe(
320
+ R.prop(dragZoneId),
321
+ R.find(R.propEq("id", draggableId)),
322
+ itemRenderer
323
+ )(currentLayout);
324
+ R.pipe(
325
+ R.evolve(transform),
326
+ R.prop("wcagDragStart", labels),
327
+ provided.announce
328
+ )({
329
+ dragZone: R.prop(dragZoneId)(boxLabel),
330
+ ...source,
331
+ dragLabel
332
+ });
333
+ }
334
+ };
335
+ const onDragUpdate = ({ destination, source }, provided) => {
336
+ if (R.isNil(destination)) {
337
+ return;
338
+ }
339
+ if (R.is(Function)(labels.wcagDragUpdate)) {
340
+ const { droppableId, index } = destination;
341
+ const length = R.ifElse(
342
+ R.always(R.equals(droppableId, source.droppableId)),
343
+ R.pipe(R.prop(droppableId), R.length),
344
+ R.pipe(R.prop(droppableId), R.length, R.add(1))
345
+ )(currentLayout);
346
+ R.pipe(
347
+ R.evolve(transform),
348
+ R.prop("wcagDragUpdate", labels),
349
+ provided.announce
350
+ )({
351
+ dropZone: R.prop(droppableId)(boxLabel),
352
+ dragZone: R.prop(source.droppableId)(boxLabel),
353
+ index,
354
+ length
355
+ });
356
+ }
357
+ };
358
+ const onDragEnd = (layout2) => ({ reason, destination, source }, provided) => {
359
+ if (R.is(String)(labels.wcagDragCancel)) {
360
+ if (R.equals(reason, "CANCEL")) {
361
+ provided.announce(labels.wcagDragCancel);
362
+ }
363
+ }
364
+ if (R.isNil(destination)) {
365
+ return;
366
+ }
367
+ if (R.is(Function)(labels.wcagDragEnd)) {
368
+ if (R.equals(reason, "DROP")) {
369
+ const { droppableId, index } = destination;
370
+ R.pipe(
371
+ R.evolve(transform),
372
+ R.prop("wcagDragEnd", labels),
373
+ provided.announce
374
+ )({
375
+ dropZone: R.prop(droppableId)(boxLabel),
376
+ dragZone: R.prop(source.droppableId)(boxLabel),
377
+ index
378
+ });
379
+ }
380
+ }
381
+ onChangeLayout({
382
+ dragIndex: source.index,
383
+ hoverIndex: destination.index,
384
+ dragZone: source.droppableId,
385
+ dropZone: destination.droppableId,
386
+ currentLayout: layout2
387
+ });
388
+ };
389
+ const getItems = (level) => R.pipe(R.prop(level), (ids) => R.props(ids, indexedItems), R.filter(R.identity))(currentLayout);
390
+ const header = /* @__PURE__ */ jsx(
391
+ Box,
392
+ {
393
+ title: labels.column,
394
+ Icon: ViewColumnOutlined,
395
+ items: getItems("header"),
396
+ labels,
397
+ dropZoneLabel: BOX.header,
398
+ itemRenderer,
399
+ itemButtonProps,
400
+ accessibility,
401
+ md: accessibility ? 4 : 6
402
+ }
403
+ );
404
+ const sectionsAndRows = /* @__PURE__ */ jsxs(Fragment, { children: [
405
+ /* @__PURE__ */ jsx(
406
+ Box,
407
+ {
408
+ title: labels.section,
409
+ Icon: Reorder,
410
+ items: getItems("sections"),
411
+ labels,
412
+ dropZoneLabel: BOX.sections,
413
+ itemRenderer,
414
+ itemButtonProps,
415
+ accessibility,
416
+ md: accessibility ? 4 : 12
417
+ }
418
+ ),
419
+ /* @__PURE__ */ jsx(
420
+ Box,
421
+ {
422
+ title: labels.row,
423
+ Icon: ViewListOutlined,
424
+ items: getItems("rows"),
425
+ labels,
426
+ dropZoneLabel: BOX.rows,
427
+ itemRenderer,
428
+ itemButtonProps,
429
+ accessibility,
430
+ md: accessibility ? 4 : 12
431
+ }
432
+ )
433
+ ] });
434
+ const isOptionalActivated = getIsOptionalActivated(currentLayout, R.prop("id", optionalItem));
435
+ return /* @__PURE__ */ jsxs(Grid, { "data-testid": "table-layout-test-id", container: true, children: [
436
+ /* @__PURE__ */ jsx("div", { id: wcagId, "aria-live": "assertive", style: { display: "none" }, children: labels.wcagDragExplanation }),
437
+ /* @__PURE__ */ jsx(
438
+ DragDropContext,
439
+ {
440
+ onDragEnd: onDragEnd(currentLayout),
441
+ onDragStart,
442
+ onDragUpdate,
443
+ children: /* @__PURE__ */ jsxs(Grid, { container: true, direction: "row", spacing: 1, className: classes.dnd, children: [
444
+ /* @__PURE__ */ jsx(Grid, { item: true, xs: 12, children: /* @__PURE__ */ jsxs(Grid, { container: true, spacing: 1, children: [
445
+ /* @__PURE__ */ jsxs(Grid, { tabIndex: 0, item: true, xs: 12, md: accessibility ? 12 : 6, children: [
446
+ /* @__PURE__ */ jsx("span", { children: labels.help }),
447
+ /* @__PURE__ */ jsx(Typography, { style: visuallyHidden, children: labels.wcagDragExplanation })
448
+ ] }),
449
+ R.not(accessibility) && header
450
+ ] }) }),
451
+ /* @__PURE__ */ jsxs(Grid, { container: true, spacing: 1, children: [
452
+ accessibility && header,
453
+ accessibility && sectionsAndRows,
454
+ R.not(accessibility) && /* @__PURE__ */ jsx(Grid, { item: true, xs: 12, md: 6, children: sectionsAndRows }),
455
+ !noPreview && /* @__PURE__ */ jsxs(Grid, { item: true, xs: 12, md: accessibility ? 12 : 6, className: cx(classes.wrapper), children: [
456
+ /* @__PURE__ */ jsxs("div", { className: classes.iconTitle, children: [
457
+ /* @__PURE__ */ jsx(ViewQuiltOutlined, {}),
458
+ /* @__PURE__ */ jsx(Typography, { tabIndex: 0, variant: "subtitle1", children: labels.table })
459
+ ] }),
460
+ /* @__PURE__ */ jsx(
461
+ TablePreview,
462
+ {
463
+ header: R.props(R.prop("header", currentLayout), indexedItems),
464
+ sections: R.props(R.prop("sections", currentLayout), indexedItems),
465
+ rows: R.props(R.prop("rows", currentLayout), indexedItems),
466
+ itemRenderer
467
+ }
468
+ )
469
+ ] })
470
+ ] })
471
+ ] })
472
+ }
473
+ ),
474
+ /* @__PURE__ */ jsxs(
475
+ Grid,
476
+ {
477
+ container: true,
478
+ justifyContent: "space-between",
479
+ className: classes.buttonContainer,
480
+ spacing: 1,
481
+ children: [
482
+ /* @__PURE__ */ jsx(
483
+ Grid,
484
+ {
485
+ item: true,
486
+ "data-testid": isOptionalActivated ? "table-layout-deactivate-optional" : "table-layout-activate-optional",
487
+ children: !R.isNil(optionalItem) && !R.isEmpty(optionalItem) && /* @__PURE__ */ jsx(
488
+ Button,
489
+ {
490
+ className: classes.activationButton,
491
+ "aria-label": R.prop("activationLabel", optionalItem),
492
+ color: "primary",
493
+ onClick: isOptionalActivated ? deactivateOptionalItem : activateOptionalItem,
494
+ startIcon: isOptionalActivated ? /* @__PURE__ */ jsx(Done, {}) : /* @__PURE__ */ jsx(CheckBoxOutlineBlankOutlined, {}),
495
+ children: /* @__PURE__ */ jsx(Typography, { variant: "body2", children: R.prop("activationLabel", optionalItem) })
496
+ }
497
+ )
498
+ }
499
+ ),
500
+ /* @__PURE__ */ jsx(Grid, { item: true, children: /* @__PURE__ */ jsx(Grid, { container: true, justifyContent: "flex-end", display: "flex", spacing: 1, children: R.map((button) => /* @__PURE__ */ jsx(Grid, { item: true, "data-testid": button["data-testid"], children: /* @__PURE__ */ jsx(Button, { "aria-label": button.label, color: "primary", ...button, children: /* @__PURE__ */ jsx(Typography, { variant: "body2", children: button.label }) }) }, button.id))([
501
+ {
502
+ id: 2,
503
+ label: labels.cancel,
504
+ onClick: onCancel,
505
+ startIcon: /* @__PURE__ */ jsx(Undo, {}),
506
+ "datatest-id": "table-layout-cancel"
507
+ },
508
+ {
509
+ id: 1,
510
+ label: labels.commit,
511
+ onClick: onCommit,
512
+ startIcon: /* @__PURE__ */ jsx(Done, {}),
513
+ variant: "contained",
514
+ alternative: "siscc",
515
+ className: classes.applyButton,
516
+ "data-testid": "table-layout-apply"
517
+ }
518
+ ]) }) })
519
+ ]
520
+ }
521
+ )
522
+ ] });
523
+ };
524
+ const TableLayout = withBlank(({ layout = [], isBlank }) => ({
525
+ isBlank: R.or(isBlank, R.pipe(R.values, R.all(R.isEmpty))(layout))
526
+ }))(CustomTableLayout);
527
+
528
+ export { TableLayout, useStyles };
529
+ //# sourceMappingURL=TableLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableLayout.js","sources":["../../src/TableLayout/constants.js","../../src/TableLayout/DnDItem.jsx","../../src/TableLayout/Box.jsx","../../src/TableLayout/lib.js","../../src/TableLayout/TableLayout.jsx"],"sourcesContent":["export const BOX = {\n header: 'header',\n sections: 'sections',\n rows: 'rows',\n};\n\nexport const wcagId = 'dnd-how-drag-item';\n","import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport * as R from 'ramda';\nimport cx from 'classnames';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Typography from '@mui/material/Typography';\nimport Select from '@mui/material/Select';\nimport MenuItem from '@mui/material/MenuItem';\nimport { Draggable } from '@hello-pangea/dnd';\nimport { getLight, getDark } from '../utils';\nimport { BOX, wcagId } from './constants';\n\nconst useStyles = makeStyles(theme => ({\n containerButton: {\n display: 'flex',\n justifyContent: 'space-between',\n padding: theme.spacing(1),\n borderRadius: theme.spacing(0.5),\n userSelect: 'none',\n },\n styledItemContainer: {\n cursor: 'grab',\n minHeight: 32,\n borderRadius: theme.spacing(0.5),\n alignItems: 'center',\n paddingTop: theme.spacing(0.25),\n paddingBottom: theme.spacing(0.25),\n margin: theme.spacing(0.25),\n opacity: 1,\n flexFlow: 'wrap',\n },\n [`${BOX.sections}Item`]: {\n color: theme.palette.getContrastText(getDark(theme) || theme.palette.secondary.dark),\n backgroundColor: getDark(theme) || theme.palette.secondary.dark,\n },\n [`${BOX.rows}Item`]: {\n color: theme.palette.getContrastText(getLight(theme) || theme.palette.secondary.light),\n backgroundColor: getLight(theme) || theme.palette.secondary.light,\n },\n [`${BOX.header}Item`]: {\n color: theme.palette.getContrastText(theme.palette.primary.main),\n backgroundColor: theme.palette.primary.main,\n },\n cantMove: {\n cursor: 'no-drop',\n },\n text: {\n fontStyle: 'italic',\n fontSize: theme.typography.fontSize - 2,\n fontWeight: theme.typography.fontWeightBold,\n },\n itemButton: {\n // paddingTop: theme.spacing(0.25),\n // paddingBottom: theme.spacing(0.25),\n // paddingRight: 0,\n },\n select: {\n backgroundColor: theme.palette.common.white,\n '&:focus': {\n backgroundColor: theme.palette.common.white,\n },\n },\n spaceButton: {\n margin: theme.spacing(0, 1, 0, 0),\n },\n}));\n\nconst DnDItem = ({ item, index, itemRenderer, dropZoneLabel, itemButtonProps, canDrag }) => {\n const classes = useStyles();\n const selectItem = R.prop(item.id)(itemButtonProps);\n return (\n <Draggable key={item.id} draggableId={item.id} index={index} isDragDisabled={R.not(canDrag)}>\n {provided => (\n <div\n data-testid={`draggable-${item.id}`}\n ref={provided.innerRef}\n {...provided.draggableProps}\n {...provided.dragHandleProps}\n className={cx(\n classes.styledItemContainer,\n classes.containerButton,\n [R.prop(`${dropZoneLabel}Item`)(classes)],\n {\n [classes.cantMove]: R.not(canDrag),\n },\n )}\n aria-label={itemRenderer(item)}\n aria-describedby={wcagId}\n >\n <Fragment>\n <Typography\n variant={'body2'}\n className={cx(classes.text, { [classes.spaceButton]: selectItem })}\n >\n {itemRenderer(item)}\n </Typography>\n {selectItem && (\n <Select\n id={item.id}\n value={selectItem.value}\n onChange={e => selectItem.onChange(e.target.value)}\n classes={{ root: classes.select }}\n variant=\"outlined\"\n size=\"small\"\n autoWidth\n >\n {R.map(v => (\n <MenuItem key={v} value={v}>\n {v}\n </MenuItem>\n ))(selectItem.options)}\n </Select>\n )}\n </Fragment>\n </div>\n )}\n </Draggable>\n );\n};\n\nDnDItem.propTypes = {\n item: PropTypes.object,\n index: PropTypes.number,\n itemRenderer: PropTypes.func,\n dropZoneLabel: PropTypes.string,\n onChangeLayout: PropTypes.func,\n itemButtonProps: PropTypes.object,\n handleChangeBox: PropTypes.func,\n canDrag: PropTypes.bool,\n dropZoneIndex: PropTypes.number,\n};\n\nexport default DnDItem;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport * as R from 'ramda';\nimport cx from 'classnames';\nimport { Droppable } from '@hello-pangea/dnd';\nimport Typography from '@mui/material/Typography';\nimport Grid from '@mui/material/Grid';\nimport makeStyles from '@mui/styles/makeStyles';\nimport DnDItem from './DnDItem';\nimport { visuallyHidden } from '@mui/utils';\nimport { getLight, getDark } from '../utils';\nimport { BOX } from './constants';\n\nconst useStyles = makeStyles(theme => ({\n blockDnd: {\n width: '100%',\n paddingBottom: theme.spacing(1),\n marginTop: theme.spacing(0.5),\n marginRight: theme.spacing(1),\n minHeight: 30,\n marginBottom: theme.spacing(1),\n borderRadius: theme.spacing(0.5),\n borderWidth: 2,\n borderStyle: 'solid',\n },\n canDrop: {\n borderStyle: 'dashed',\n },\n [`${BOX.sections}Container`]: {\n borderColor: getDark(theme) || theme.palette.secondary.dark,\n },\n [`${BOX.rows}Container`]: {\n borderColor: getLight(theme) || theme.palette.secondary.light,\n },\n [`${BOX.header}Container`]: {\n borderColor: theme.palette.primary.main,\n },\n iconTitle: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n flexFlow: 'nowrap',\n },\n title: theme.typography.subtitle1,\n}));\n\nconst Box = ({\n items,\n itemRenderer,\n dropZoneLabel,\n title,\n Icon,\n onChangeLayout,\n itemButtonProps,\n accessibility,\n md,\n}) => {\n const classes = useStyles();\n const canDrag = R.equals(dropZoneLabel, BOX.rows) ? R.pipe(R.length, R.lt(1))(items) : R.T();\n\n return (\n <Grid item xs={accessibility ? 4 : 12} md={md}>\n <div className={classes.iconTitle}>\n <Icon />\n <span className={classes.title}>{title}</span>\n <Typography style={visuallyHidden}>{title}</Typography>\n </div>\n <Droppable droppableId={dropZoneLabel}>\n {(provided, snapshot) => (\n <div\n data-testid={`droppable-${dropZoneLabel}`}\n ref={provided.innerRef}\n className={cx(classes.blockDnd, R.prop(`${dropZoneLabel}Container`)(classes), {\n [classes.canDrop]: snapshot.isDraggingOver,\n })}\n >\n {R.addIndex(R.map)((item, index) => (\n <DnDItem\n key={item.id}\n index={index}\n item={item}\n itemRenderer={itemRenderer}\n dropZoneLabel={dropZoneLabel}\n onChangeLayout={onChangeLayout}\n itemButtonProps={itemButtonProps}\n canDrag={canDrag}\n />\n ))(R.values(items))}\n {provided.placeholder}\n </div>\n )}\n </Droppable>\n </Grid>\n );\n};\n\nBox.propTypes = {\n items: PropTypes.array,\n itemRenderer: PropTypes.func,\n dropZoneLabel: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n Icon: PropTypes.object,\n onChangeLayout: PropTypes.func,\n putItem: PropTypes.func,\n itemButtonProps: PropTypes.object,\n accessibility: PropTypes.bool,\n md: PropTypes.number,\n};\n\nexport default Box;\n","import * as R from 'ramda';\n\nexport const changeLayout = ({ dragIndex, hoverIndex, dragZone, dropZone, currentLayout }) => {\n if (R.equals(dragZone, dropZone)) {\n return R.over(R.lensProp(dropZone), R.move(dragIndex, hoverIndex), currentLayout);\n }\n const item = R.pipe(R.prop(dragZone), R.nth(dragIndex))(currentLayout);\n return R.pipe(\n R.over(R.lensProp(dragZone), R.without([item])),\n R.over(R.lensProp(dropZone), R.insert(hoverIndex, item)),\n )(currentLayout);\n};\n\nexport const getIsOptionalActivated = (layout, optionalId) => {\n const founded = R.pipe(R.values, R.unnest, R.find(R.equals(optionalId)))(layout);\n return !R.isNil(founded);\n};\n","import React, { Fragment, useState, useMemo, useEffect } from 'react';\nimport cx from 'classnames';\nimport * as R from 'ramda';\nimport Grid from '@mui/material/Grid';\nimport Typography from '@mui/material/Typography';\nimport { CheckBoxOutlineBlankOutlined, Done, Reorder, Undo, ViewColumnOutlined, ViewListOutlined, ViewQuiltOutlined } from '@mui/icons-material';\nimport { visuallyHidden } from '@mui/utils';\nimport { makeStyles } from '@mui/styles';\nimport { DragDropContext } from '@hello-pangea/dnd';\nimport { withBlank } from '../utils';\nimport { TablePreview } from '../TablePreview/TablePreview';\nimport Box from './Box';\nimport { changeLayout, getIsOptionalActivated } from './lib';\nimport { BOX, wcagId } from './constants';\nimport { Button } from '../Button/Button';\n\nexport const useStyles = makeStyles(theme => ({\n dnd: {\n userSelect: 'none',\n },\n buttonContainer: {\n margin: theme.spacing(2, 0),\n },\n iconTitle: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n flexFlow: 'nowrap',\n },\n activationButton: {\n backgroundColor: theme.palette.action.hover,\n '&:hover': {\n backgroundColor: theme.palette.action.selected,\n },\n },\n}));\n\nconst transform = {\n index: R.add(1),\n};\n\nconst CustomTableLayout = ({\n layout = {},\n items = [],\n optionalItem = {},\n itemRenderer = R.prop('name'),\n itemButtonProps,\n labels,\n commit,\n noPreview,\n accessibility,\n}) => {\n const classes = useStyles();\n const [currentLayout, setCurrentLayout] = useState(layout);\n const boxLabel = {\n [BOX.header]: labels.column || BOX.header,\n [BOX.sections]: labels.section || BOX.sections,\n [BOX.rows]: labels.row || BOX.rows,\n };\n useEffect(() => {\n setCurrentLayout(layout);\n }, [layout]);\n const indexedItems = useMemo(() => {\n const indexed = R.indexBy(R.prop('id'), items);\n if (!R.isEmpty(optionalItem) && !R.isNil(optionalItem)) {\n return R.assoc(optionalItem.id, optionalItem, indexed);\n }\n return indexed;\n }, [items, optionalItem]);\n\n const onChangeLayout = props => setCurrentLayout(changeLayout({ ...props }));\n\n const activateOptionalItem = () => {\n const nextLayout = R.over(R.lensProp('header'), R.append(optionalItem.id), currentLayout);\n setCurrentLayout(nextLayout);\n };\n\n const deactivateOptionalItem = () => {\n setCurrentLayout(R.map(R.reject(R.equals(optionalItem.id)), currentLayout));\n };\n\n const onCommit = () => {\n if (R.is(Function)(commit)) {\n commit(currentLayout);\n }\n };\n\n const onCancel = () => {\n if (R.is(Function)(setCurrentLayout)) {\n setCurrentLayout(layout);\n }\n };\n\n const onDragStart = ({ draggableId, source }, provided) => {\n if (R.is(Function)(labels.wcagDragStart)) {\n // start.source = droppableId & index\n const dragZoneId = source.droppableId;\n const dragLabel = R.pipe(\n R.prop(dragZoneId),\n R.find(R.propEq('id', draggableId)),\n itemRenderer,\n )(currentLayout);\n R.pipe(\n R.evolve(transform),\n R.prop('wcagDragStart', labels),\n provided.announce,\n )({\n dragZone: R.prop(dragZoneId)(boxLabel),\n ...source,\n dragLabel,\n });\n }\n };\n\n const onDragUpdate = ({ destination, source }, provided) => {\n if (R.isNil(destination)) {\n return;\n }\n\n if (R.is(Function)(labels.wcagDragUpdate)) {\n const { droppableId, index } = destination;\n const length = R.ifElse(\n R.always(R.equals(droppableId, source.droppableId)),\n R.pipe(R.prop(droppableId), R.length),\n R.pipe(R.prop(droppableId), R.length, R.add(1)),\n )(currentLayout);\n\n R.pipe(\n R.evolve(transform),\n R.prop('wcagDragUpdate', labels),\n provided.announce,\n )({\n dropZone: R.prop(droppableId)(boxLabel),\n dragZone: R.prop(source.droppableId)(boxLabel),\n index,\n length,\n });\n }\n };\n\n const onDragEnd =\n layout =>\n ({ reason, destination, source }, provided) => {\n if (R.is(String)(labels.wcagDragCancel)) {\n if (R.equals(reason, 'CANCEL')) {\n provided.announce(labels.wcagDragCancel);\n }\n }\n\n if (R.isNil(destination)) {\n return;\n }\n if (R.is(Function)(labels.wcagDragEnd)) {\n if (R.equals(reason, 'DROP')) {\n const { droppableId, index } = destination;\n R.pipe(\n R.evolve(transform),\n R.prop('wcagDragEnd', labels),\n provided.announce,\n )({\n dropZone: R.prop(droppableId)(boxLabel),\n dragZone: R.prop(source.droppableId)(boxLabel),\n index,\n });\n }\n }\n\n onChangeLayout({\n dragIndex: source.index,\n hoverIndex: destination.index,\n dragZone: source.droppableId,\n dropZone: destination.droppableId,\n currentLayout: layout,\n });\n };\n\n const getItems = level =>\n R.pipe(R.prop(level), ids => R.props(ids, indexedItems), R.filter(R.identity))(currentLayout);\n\n const header = (\n <Box\n title={labels.column}\n Icon={ViewColumnOutlined}\n items={getItems('header')}\n labels={labels}\n dropZoneLabel={BOX.header}\n itemRenderer={itemRenderer}\n itemButtonProps={itemButtonProps}\n accessibility={accessibility}\n md={accessibility ? 4 : 6}\n />\n );\n\n const sectionsAndRows = (\n <Fragment>\n <Box\n title={labels.section}\n Icon={Reorder}\n items={getItems('sections')}\n labels={labels}\n dropZoneLabel={BOX.sections}\n itemRenderer={itemRenderer}\n itemButtonProps={itemButtonProps}\n accessibility={accessibility}\n md={accessibility ? 4 : 12}\n />\n <Box\n title={labels.row}\n Icon={ViewListOutlined}\n items={getItems('rows')}\n labels={labels}\n dropZoneLabel={BOX.rows}\n itemRenderer={itemRenderer}\n itemButtonProps={itemButtonProps}\n accessibility={accessibility}\n md={accessibility ? 4 : 12}\n />\n </Fragment>\n );\n\n const isOptionalActivated = getIsOptionalActivated(currentLayout, R.prop('id', optionalItem));\n\n return (\n <Grid data-testid=\"table-layout-test-id\" container>\n <div id={wcagId} aria-live=\"assertive\" style={{ display: 'none' }}>\n {labels.wcagDragExplanation}\n </div>\n <DragDropContext\n onDragEnd={onDragEnd(currentLayout)}\n onDragStart={onDragStart}\n onDragUpdate={onDragUpdate}\n >\n <Grid container direction=\"row\" spacing={1} className={classes.dnd}>\n <Grid item xs={12}>\n <Grid container spacing={1}>\n <Grid tabIndex={0} item xs={12} md={accessibility ? 12 : 6}>\n <span>{labels.help}</span>\n <Typography style={visuallyHidden}>{labels.wcagDragExplanation}</Typography>\n </Grid>\n {R.not(accessibility) && header}\n </Grid>\n </Grid>\n <Grid container spacing={1}>\n {accessibility && header}\n {accessibility && sectionsAndRows}\n {R.not(accessibility) && (\n <Grid item xs={12} md={6}>\n {sectionsAndRows}\n </Grid>\n )}\n {!noPreview && (\n <Grid item xs={12} md={accessibility ? 12 : 6} className={cx(classes.wrapper)}>\n <div className={classes.iconTitle}>\n <ViewQuiltOutlined />\n <Typography tabIndex={0} variant=\"subtitle1\">\n {labels.table}\n </Typography>\n </div>\n <TablePreview\n header={R.props(R.prop('header', currentLayout), indexedItems)}\n sections={R.props(R.prop('sections', currentLayout), indexedItems)}\n rows={R.props(R.prop('rows', currentLayout), indexedItems)}\n itemRenderer={itemRenderer}\n />\n </Grid>\n )}\n </Grid>\n </Grid>\n </DragDropContext>\n <Grid\n container\n justifyContent=\"space-between\"\n className={classes.buttonContainer}\n spacing={1}\n >\n <Grid\n item\n data-testid={\n isOptionalActivated\n ? 'table-layout-deactivate-optional'\n : 'table-layout-activate-optional'\n }\n >\n {!R.isNil(optionalItem) && !R.isEmpty(optionalItem) && (\n <Button\n className={classes.activationButton}\n aria-label={R.prop('activationLabel', optionalItem)}\n color=\"primary\"\n onClick={isOptionalActivated ? deactivateOptionalItem : activateOptionalItem}\n startIcon={isOptionalActivated ? <Done /> : <CheckBoxOutlineBlankOutlined />}\n >\n <Typography variant=\"body2\">{R.prop('activationLabel', optionalItem)}</Typography>\n </Button>\n )}\n </Grid>\n <Grid item>\n <Grid container justifyContent=\"flex-end\" display=\"flex\" spacing={1}>\n {R.map(button => (\n <Grid item key={button.id} data-testid={button['data-testid']}>\n <Button aria-label={button.label} color=\"primary\" {...button}>\n <Typography variant=\"body2\">{button.label}</Typography>\n </Button>\n </Grid>\n ))([\n {\n id: 2,\n label: labels.cancel,\n onClick: onCancel,\n startIcon: <Undo />,\n 'datatest-id': 'table-layout-cancel',\n },\n {\n id: 1,\n label: labels.commit,\n onClick: onCommit,\n startIcon: <Done />,\n variant: 'contained',\n alternative: 'siscc',\n className: classes.applyButton,\n 'data-testid': 'table-layout-apply',\n },\n ])}\n </Grid>\n </Grid>\n </Grid>\n </Grid>\n );\n};\n\nexport const TableLayout = withBlank(({ layout = [], isBlank }) => ({\n isBlank: R.or(isBlank, R.pipe(R.values, R.all(R.isEmpty))(layout)),\n}))(CustomTableLayout);\n"],"names":["useStyles","makeStyles","layout"],"mappings":"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"}