@reltio/dashboard 1.4.1584 → 1.4.1586-mui5

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 (263) hide show
  1. package/.DS_Store +0 -0
  2. package/index.ts +12 -0
  3. package/package.json +42 -25
  4. package/public/bundle.js +205 -0
  5. package/public/bundle.js.LICENSE.txt +59 -0
  6. package/public/package.json +26 -0
  7. package/public/types/components/DashboardConfigItem/styles.d.ts +1 -0
  8. package/{types → public/types}/components/DashboardError/styles.d.ts +1 -1
  9. package/public/types/components/DashboardLayout/styles.d.ts +1 -0
  10. package/public/types/components/DashboardLayoutItem/styles.d.ts +1 -0
  11. package/public/types/components/DashboardLayoutPanel/styles.d.ts +1 -0
  12. package/public/types/components/DashboardLinearLoader/styles.d.ts +1 -0
  13. package/{types → public/types}/components/DashboardNoData/styles.d.ts +1 -1
  14. package/public/types/components/DashboardPerspectiveHeader/styles.d.ts +2 -0
  15. package/{types → public/types}/components/DashboardPopupMenu/DashboardPopupMenu.d.ts +1 -1
  16. package/public/types/components/DashboardPopupMenu/styles.d.ts +1 -0
  17. package/public/types/components/EntityTable/cell-renderers/styles.d.ts +1 -0
  18. package/{types → public/types}/components/EntityTable/styles.d.ts +1 -1
  19. package/public/types/components/LayoutItemContent/styles.d.ts +1 -0
  20. package/public/types/components/LayoutItemHeader/styles.d.ts +1 -0
  21. package/public/types/components/LayoutItemView/styles.d.ts +1 -0
  22. package/public/types/components/StatsChart/customized/styles.d.ts +1 -0
  23. package/public/types/components/WorkflowTaskItem/styles.d.ts +1 -0
  24. package/public/types/perspective/styles.d.ts +1 -0
  25. package/public/types/views/chartBased/styles.d.ts +1 -0
  26. package/public/types/views/custom/styles.d.ts +1 -0
  27. package/public/types/views/tableBased/styles.d.ts +1 -0
  28. package/scripts/build/index.js +21 -0
  29. package/src/HOCs/withPagination.tsx +39 -0
  30. package/src/components/DashboardConfigItem/DashboardConfigItem.tsx +101 -0
  31. package/src/components/DashboardConfigItem/__tests__/DashboardConfigItem.specs.tsx +81 -0
  32. package/src/components/DashboardConfigItem/icons/barChart.svg +12 -0
  33. package/src/components/DashboardConfigItem/icons/bubbleChart.svg +18 -0
  34. package/src/components/DashboardConfigItem/icons/customChart.svg +66 -0
  35. package/src/components/DashboardConfigItem/icons/donutChart.svg +33 -0
  36. package/src/components/DashboardConfigItem/icons/geomap.svg +23 -0
  37. package/src/components/DashboardConfigItem/icons/lineChart.svg +16 -0
  38. package/src/components/DashboardConfigItem/icons/pieChart.svg +27 -0
  39. package/src/components/DashboardConfigItem/icons/tableWithBars.svg +27 -0
  40. package/src/components/DashboardConfigItem/icons/treemap.svg +15 -0
  41. package/src/components/DashboardConfigItem/icons/wordCloud.svg +27 -0
  42. package/src/components/DashboardConfigItem/styles.ts +56 -0
  43. package/src/components/DashboardError/DashboardError.tsx +34 -0
  44. package/src/components/DashboardError/__tests__/DashboardError.test.js +34 -0
  45. package/src/components/DashboardError/icons/error.svg +113 -0
  46. package/src/components/DashboardError/styles.ts +30 -0
  47. package/src/components/DashboardLayout/DashboardLayout.tsx +59 -0
  48. package/src/components/DashboardLayout/__tests__/DashboardLayout.specs.tsx +56 -0
  49. package/src/components/DashboardLayout/styles.ts +30 -0
  50. package/src/components/DashboardLayoutItem/DashboardLayoutItem.tsx +59 -0
  51. package/src/components/DashboardLayoutItem/__tests__/DashboardLayoutItem.specs.tsx +145 -0
  52. package/src/components/DashboardLayoutItem/styles.ts +10 -0
  53. package/src/components/DashboardLayoutPanel/DashboardLayoutPanel.tsx +59 -0
  54. package/src/components/DashboardLayoutPanel/__tests__/DashboardLayoutPanel.specs.tsx +58 -0
  55. package/src/components/DashboardLayoutPanel/styles.ts +43 -0
  56. package/src/components/DashboardLinearLoader/DashboardLinearLoader.tsx +10 -0
  57. package/src/components/DashboardLinearLoader/__tests__/DashboardLinearLoader.test.js +12 -0
  58. package/src/components/DashboardLinearLoader/styles.ts +11 -0
  59. package/src/components/DashboardNoData/.DS_Store +0 -0
  60. package/src/components/DashboardNoData/DashboardNoData.tsx +21 -0
  61. package/src/components/DashboardNoData/__tests__/DashboardNoData.test.js +15 -0
  62. package/src/components/DashboardNoData/icons/noData.svg +68 -0
  63. package/src/components/DashboardNoData/styles.ts +21 -0
  64. package/src/components/DashboardPerspectiveHeader/DashboardPerspectiveHeader.tsx +43 -0
  65. package/src/components/DashboardPerspectiveHeader/__tests__/DashboardPerspectiveHeader.specs.tsx +41 -0
  66. package/src/components/DashboardPerspectiveHeader/styles.ts +24 -0
  67. package/src/components/DashboardPopupMenu/DashboardPopupMenu.tsx +75 -0
  68. package/src/components/DashboardPopupMenu/__tests__/DashboardPopupMenu.test.tsx +51 -0
  69. package/src/components/DashboardPopupMenu/styles.ts +20 -0
  70. package/src/components/EntityTable/EntityTable.tsx +49 -0
  71. package/src/components/EntityTable/__tests__/EntityTable.test.tsx +33 -0
  72. package/src/components/EntityTable/cell-renderers/EntityLabelRenderer.tsx +24 -0
  73. package/src/components/EntityTable/cell-renderers/HeadCellRenderer.tsx +34 -0
  74. package/src/components/EntityTable/cell-renderers/__tests__/EntityLabelRenderer.test.tsx +25 -0
  75. package/src/components/EntityTable/cell-renderers/styles.ts +46 -0
  76. package/src/components/EntityTable/styles.ts +19 -0
  77. package/src/components/LayoutItemContent/LayoutItemContent.tsx +63 -0
  78. package/src/components/LayoutItemContent/__tests__/LayoutItemContent.test.tsx +71 -0
  79. package/src/components/LayoutItemContent/styles.ts +36 -0
  80. package/src/components/LayoutItemHeader/LayoutItemHeader.tsx +86 -0
  81. package/src/components/LayoutItemHeader/__tests__/LayoutItemHeader.specs.tsx +48 -0
  82. package/src/components/LayoutItemHeader/styles.ts +44 -0
  83. package/src/components/LayoutItemView/LayoutItemView.tsx +24 -0
  84. package/src/components/LayoutItemView/styles.ts +11 -0
  85. package/src/components/StatsChart/StatsChart.tsx +77 -0
  86. package/src/components/StatsChart/__tests__/StatsChart.test.tsx +106 -0
  87. package/src/components/StatsChart/customized/CustomAxisTick.tsx +28 -0
  88. package/src/components/StatsChart/customized/CustomLegend.tsx +37 -0
  89. package/src/components/StatsChart/customized/CustomTooltip.tsx +41 -0
  90. package/src/components/StatsChart/customized/styles.ts +53 -0
  91. package/src/components/StatsChart/getStatsChartSettings.ts +65 -0
  92. package/src/components/WorkflowTaskItem/WorkflowTaskItem.tsx +67 -0
  93. package/src/components/WorkflowTaskItem/WorkflowTaskObject.tsx +54 -0
  94. package/src/components/WorkflowTaskItem/__tests__/WorkflowTaskItem.test.tsx +73 -0
  95. package/src/components/WorkflowTaskItem/__tests__/WorkflowTaskObject.test.tsx +95 -0
  96. package/src/components/WorkflowTaskItem/styles.ts +74 -0
  97. package/src/components/WorkflowTasksList/WorkflowTasksList.tsx +34 -0
  98. package/src/components/WorkflowTasksList/__tests__/WorkflowTasksList.test.tsx +98 -0
  99. package/src/components/index.ts +8 -0
  100. package/src/contexts/DashboardViewIdContext/index.ts +5 -0
  101. package/src/hooks/__tests__/useActivititesRequest.specs.tsx +106 -0
  102. package/src/hooks/__tests__/useEntityByTypeRequest.specs.tsx +280 -0
  103. package/src/hooks/__tests__/useFacetRequest.specs.tsx +437 -0
  104. package/src/hooks/__tests__/useFilteredEntitiesRequest.specs.tsx +103 -0
  105. package/src/hooks/__tests__/useSavedSearchesRequest.specs.tsx +201 -0
  106. package/src/hooks/__tests__/useStatsRequest.specs.tsx +212 -0
  107. package/src/hooks/__tests__/useWorkflowTasksRequest.specs.tsx +388 -0
  108. package/src/hooks/useActivitiesRequest.ts +50 -0
  109. package/src/hooks/useEntityByTypeRequest.ts +67 -0
  110. package/src/hooks/useFacetRequest.ts +117 -0
  111. package/src/hooks/useFilteredEntitiesRequest.ts +57 -0
  112. package/src/hooks/useSavedSearchesRequest.ts +82 -0
  113. package/src/hooks/useStatsRequest.ts +47 -0
  114. package/src/hooks/useWorkflowTasksRequest.ts +66 -0
  115. package/src/index.ts +25 -0
  116. package/src/perspective/DashboardPerspectiveView.tsx +132 -0
  117. package/src/perspective/__tests__/DashboardPerspectiveView.specs.tsx +276 -0
  118. package/src/perspective/__tests__/data/metadata.data.ts +33 -0
  119. package/src/perspective/__tests__/data/store.data.ts +15 -0
  120. package/src/perspective/__tests__/helpers.specs.ts +33 -0
  121. package/src/perspective/helpers.ts +19 -0
  122. package/src/perspective/index.tsx +65 -0
  123. package/src/perspective/styles.ts +16 -0
  124. package/src/services/__tests__/facets.specs.ts +42 -0
  125. package/src/services/__tests__/filters.specs.ts +60 -0
  126. package/src/services/__tests__/period.test.ts +33 -0
  127. package/src/services/__tests__/stats.test.ts +319 -0
  128. package/src/services/entityTypes.ts +66 -0
  129. package/src/services/facets.ts +178 -0
  130. package/src/services/filters.ts +87 -0
  131. package/src/services/period.ts +33 -0
  132. package/src/services/savedSearches.ts +20 -0
  133. package/src/services/stats.ts +191 -0
  134. package/src/services/workflowTasks.ts +116 -0
  135. package/src/types/ActivitiesViewFacetConfig.ts +5 -0
  136. package/src/types/CustomActionViewFacetConfig.ts +5 -0
  137. package/src/types/DashboardPerspectiveConfig.ts +18 -0
  138. package/src/types/DashboardSavedState.ts +7 -0
  139. package/src/types/EntityByTypeViewFacetConfig.ts +7 -0
  140. package/src/types/EntityData.ts +4 -0
  141. package/src/types/FilteredEntitiesFacetConfig.ts +6 -0
  142. package/src/types/FilteredSavedSearchesFacetConfig.ts +6 -0
  143. package/src/types/PeriodStep.ts +4 -0
  144. package/src/types/SavedSearchData.ts +6 -0
  145. package/src/types/SearchOptions.ts +10 -0
  146. package/src/types/StatsData.ts +14 -0
  147. package/src/types/WorkflowTasks.ts +26 -0
  148. package/src/types/index.ts +14 -0
  149. package/src/views/ViewsFactory.tsx +79 -0
  150. package/src/views/__tests__/ViewsFactory.specs.tsx +70 -0
  151. package/src/views/chartBased/DashboardFacet.tsx +71 -0
  152. package/src/views/chartBased/EntitiesByTypeViewFacet.tsx +60 -0
  153. package/src/views/chartBased/ProfileStatsFacet.tsx +54 -0
  154. package/src/views/chartBased/__tests__/DashboardFacet.specs.tsx +358 -0
  155. package/src/views/chartBased/__tests__/EntitiesByTypeViewFacet.specs.tsx +101 -0
  156. package/src/views/chartBased/__tests__/ProfileStatsFacet.specs.tsx +106 -0
  157. package/src/views/chartBased/styles.ts +13 -0
  158. package/src/views/custom/CustomActionViewFacet.tsx +36 -0
  159. package/src/views/custom/NotificationInboxFacet.tsx +86 -0
  160. package/src/views/custom/__tests__/CustomActionViewFacet.specs.tsx +35 -0
  161. package/src/views/custom/__tests__/NotificationInboxFacet.specs.tsx +144 -0
  162. package/src/views/custom/styles.ts +31 -0
  163. package/src/views/tableBased/ActivitiesViewFacet.tsx +79 -0
  164. package/src/views/tableBased/FilteredEntitiesViewFacet.tsx +67 -0
  165. package/src/views/tableBased/FilteredSavedSearchesFacet.tsx +85 -0
  166. package/src/views/tableBased/__tests__/ActivitiesViewFacet.specs.tsx +113 -0
  167. package/src/views/tableBased/__tests__/FIlteredEntitiesViewFacet.specs.tsx +90 -0
  168. package/src/views/tableBased/__tests__/FilteredSavedSearchesFacet.specs.tsx +133 -0
  169. package/src/views/tableBased/helpers.ts +8 -0
  170. package/src/views/tableBased/styles.ts +7 -0
  171. package/stories/Dashboards.stories.js +118 -0
  172. package/stories/utils/dashboardPerspectiveConfig.js +78 -0
  173. package/stories/utils/dashboardsViewConfig.js +17 -0
  174. package/stories/utils/mdmStore.js +73 -0
  175. package/stories/utils/responses.js +10 -0
  176. package/tsconfig.json +14 -0
  177. package/webpack.config.js +10 -0
  178. package/bundle.js +0 -2
  179. package/bundle.js.LICENSE.txt +0 -22
  180. package/types/components/DashboardConfigItem/styles.d.ts +0 -1
  181. package/types/components/DashboardLayout/styles.d.ts +0 -1
  182. package/types/components/DashboardLayoutItem/styles.d.ts +0 -1
  183. package/types/components/DashboardLayoutPanel/styles.d.ts +0 -1
  184. package/types/components/DashboardLinearLoader/styles.d.ts +0 -1
  185. package/types/components/DashboardPerspectiveHeader/styles.d.ts +0 -2
  186. package/types/components/DashboardPopupMenu/styles.d.ts +0 -1
  187. package/types/components/EntityTable/cell-renderers/styles.d.ts +0 -1
  188. package/types/components/LayoutItemContent/styles.d.ts +0 -1
  189. package/types/components/LayoutItemHeader/styles.d.ts +0 -1
  190. package/types/components/LayoutItemView/styles.d.ts +0 -1
  191. package/types/components/StatsChart/customized/styles.d.ts +0 -1
  192. package/types/components/WorkflowTaskItem/styles.d.ts +0 -1
  193. package/types/perspective/styles.d.ts +0 -1
  194. package/types/views/chartBased/styles.d.ts +0 -1
  195. package/types/views/custom/styles.d.ts +0 -1
  196. package/types/views/tableBased/styles.d.ts +0 -1
  197. /package/{types → public/types}/HOCs/withPagination.d.ts +0 -0
  198. /package/{types → public/types}/components/DashboardConfigItem/DashboardConfigItem.d.ts +0 -0
  199. /package/{types → public/types}/components/DashboardError/DashboardError.d.ts +0 -0
  200. /package/{types → public/types}/components/DashboardLayout/DashboardLayout.d.ts +0 -0
  201. /package/{types → public/types}/components/DashboardLayoutItem/DashboardLayoutItem.d.ts +0 -0
  202. /package/{types → public/types}/components/DashboardLayoutPanel/DashboardLayoutPanel.d.ts +0 -0
  203. /package/{types → public/types}/components/DashboardLinearLoader/DashboardLinearLoader.d.ts +0 -0
  204. /package/{types → public/types}/components/DashboardNoData/DashboardNoData.d.ts +0 -0
  205. /package/{types → public/types}/components/DashboardPerspectiveHeader/DashboardPerspectiveHeader.d.ts +0 -0
  206. /package/{types → public/types}/components/EntityTable/EntityTable.d.ts +0 -0
  207. /package/{types → public/types}/components/EntityTable/cell-renderers/EntityLabelRenderer.d.ts +0 -0
  208. /package/{types → public/types}/components/EntityTable/cell-renderers/HeadCellRenderer.d.ts +0 -0
  209. /package/{types → public/types}/components/LayoutItemContent/LayoutItemContent.d.ts +0 -0
  210. /package/{types → public/types}/components/LayoutItemHeader/LayoutItemHeader.d.ts +0 -0
  211. /package/{types → public/types}/components/LayoutItemView/LayoutItemView.d.ts +0 -0
  212. /package/{types → public/types}/components/StatsChart/StatsChart.d.ts +0 -0
  213. /package/{types → public/types}/components/StatsChart/customized/CustomAxisTick.d.ts +0 -0
  214. /package/{types → public/types}/components/StatsChart/customized/CustomLegend.d.ts +0 -0
  215. /package/{types → public/types}/components/StatsChart/customized/CustomTooltip.d.ts +0 -0
  216. /package/{types → public/types}/components/StatsChart/getStatsChartSettings.d.ts +0 -0
  217. /package/{types → public/types}/components/WorkflowTaskItem/WorkflowTaskItem.d.ts +0 -0
  218. /package/{types → public/types}/components/WorkflowTaskItem/WorkflowTaskObject.d.ts +0 -0
  219. /package/{types → public/types}/components/WorkflowTasksList/WorkflowTasksList.d.ts +0 -0
  220. /package/{types → public/types}/components/index.d.ts +0 -0
  221. /package/{types → public/types}/contexts/DashboardViewIdContext/index.d.ts +0 -0
  222. /package/{types → public/types}/hooks/useActivitiesRequest.d.ts +0 -0
  223. /package/{types → public/types}/hooks/useEntityByTypeRequest.d.ts +0 -0
  224. /package/{types → public/types}/hooks/useFacetRequest.d.ts +0 -0
  225. /package/{types → public/types}/hooks/useFilteredEntitiesRequest.d.ts +0 -0
  226. /package/{types → public/types}/hooks/useSavedSearchesRequest.d.ts +0 -0
  227. /package/{types → public/types}/hooks/useStatsRequest.d.ts +0 -0
  228. /package/{types → public/types}/hooks/useWorkflowTasksRequest.d.ts +0 -0
  229. /package/{types → public/types}/index.d.ts +0 -0
  230. /package/{types → public/types}/perspective/DashboardPerspectiveView.d.ts +0 -0
  231. /package/{types → public/types}/perspective/helpers.d.ts +0 -0
  232. /package/{types → public/types}/perspective/index.d.ts +0 -0
  233. /package/{types → public/types}/services/entityTypes.d.ts +0 -0
  234. /package/{types → public/types}/services/facets.d.ts +0 -0
  235. /package/{types → public/types}/services/filters.d.ts +0 -0
  236. /package/{types → public/types}/services/period.d.ts +0 -0
  237. /package/{types → public/types}/services/savedSearches.d.ts +0 -0
  238. /package/{types → public/types}/services/stats.d.ts +0 -0
  239. /package/{types → public/types}/services/workflowTasks.d.ts +0 -0
  240. /package/{types → public/types}/types/ActivitiesViewFacetConfig.d.ts +0 -0
  241. /package/{types → public/types}/types/CustomActionViewFacetConfig.d.ts +0 -0
  242. /package/{types → public/types}/types/DashboardPerspectiveConfig.d.ts +0 -0
  243. /package/{types → public/types}/types/DashboardSavedState.d.ts +0 -0
  244. /package/{types → public/types}/types/EntityByTypeViewFacetConfig.d.ts +0 -0
  245. /package/{types → public/types}/types/EntityData.d.ts +0 -0
  246. /package/{types → public/types}/types/FilteredEntitiesFacetConfig.d.ts +0 -0
  247. /package/{types → public/types}/types/FilteredSavedSearchesFacetConfig.d.ts +0 -0
  248. /package/{types → public/types}/types/PeriodStep.d.ts +0 -0
  249. /package/{types → public/types}/types/SavedSearchData.d.ts +0 -0
  250. /package/{types → public/types}/types/SearchOptions.d.ts +0 -0
  251. /package/{types → public/types}/types/StatsData.d.ts +0 -0
  252. /package/{types → public/types}/types/WorkflowTasks.d.ts +0 -0
  253. /package/{types → public/types}/types/index.d.ts +0 -0
  254. /package/{types → public/types}/views/ViewsFactory.d.ts +0 -0
  255. /package/{types → public/types}/views/chartBased/DashboardFacet.d.ts +0 -0
  256. /package/{types → public/types}/views/chartBased/EntitiesByTypeViewFacet.d.ts +0 -0
  257. /package/{types → public/types}/views/chartBased/ProfileStatsFacet.d.ts +0 -0
  258. /package/{types → public/types}/views/custom/CustomActionViewFacet.d.ts +0 -0
  259. /package/{types → public/types}/views/custom/NotificationInboxFacet.d.ts +0 -0
  260. /package/{types → public/types}/views/tableBased/ActivitiesViewFacet.d.ts +0 -0
  261. /package/{types → public/types}/views/tableBased/FilteredEntitiesViewFacet.d.ts +0 -0
  262. /package/{types → public/types}/views/tableBased/FilteredSavedSearchesFacet.d.ts +0 -0
  263. /package/{types → public/types}/views/tableBased/helpers.d.ts +0 -0
@@ -0,0 +1,59 @@
1
+ /*
2
+ object-assign
3
+ (c) Sindre Sorhus
4
+ @license MIT
5
+ */
6
+
7
+ /*! decimal.js-light v2.5.1 https://github.com/MikeMcl/decimal.js-light/LICENCE */
8
+
9
+ /**
10
+ * @license React
11
+ * react-is.production.min.js
12
+ *
13
+ * Copyright (c) Facebook, Inc. and its affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */
18
+
19
+ /**
20
+ * @mui/material v5.13.4
21
+ *
22
+ * @license MIT
23
+ * This source code is licensed under the MIT license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ */
26
+
27
+ /**
28
+ * @mui/styled-engine v5.13.2
29
+ *
30
+ * @license MIT
31
+ * This source code is licensed under the MIT license found in the
32
+ * LICENSE file in the root directory of this source tree.
33
+ */
34
+
35
+ /**
36
+ * A better abstraction over CSS.
37
+ *
38
+ * @copyright Oleg Isonen (Slobodskoi) / Isonen 2014-present
39
+ * @website https://github.com/cssinjs/jss
40
+ * @license MIT
41
+ */
42
+
43
+ /** @license React v16.13.1
44
+ * react-is.production.min.js
45
+ *
46
+ * Copyright (c) Facebook, Inc. and its affiliates.
47
+ *
48
+ * This source code is licensed under the MIT license found in the
49
+ * LICENSE file in the root directory of this source tree.
50
+ */
51
+
52
+ /** @license React v17.0.2
53
+ * react-jsx-runtime.production.min.js
54
+ *
55
+ * Copyright (c) Facebook, Inc. and its affiliates.
56
+ *
57
+ * This source code is licensed under the MIT license found in the
58
+ * LICENSE file in the root directory of this source tree.
59
+ */
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "@reltio/dashboard",
3
+ "version": "1.4.1586-mui5",
4
+ "license": "SEE LICENSE IN LICENSE FILE",
5
+ "main": "bundle.js",
6
+ "types": "./types/index.d.ts",
7
+ "dependencies": {
8
+ "@date-io/moment": "^1.3.5",
9
+ "@reltio/mdm-module": "^1.4.1586-mui5",
10
+ "@reltio/mdm-sdk": "^1.4.1586-mui5",
11
+ "classnames": "^2.2.5",
12
+ "memoize-one": "^5.1.0",
13
+ "object-hash": "^2.1.1",
14
+ "prop-types": "^15.6.2",
15
+ "ramda": "^0.28.0",
16
+ "react-redux": "^7.2.3",
17
+ "react-resize-detector": "^4.2.0",
18
+ "react-simple-maps": "^2.3.0",
19
+ "redux": "^4.1.2",
20
+ "topojson-client": "^3.1.0",
21
+ "ui-i18n": "bitbucket:reltio-ondemand/ui-i18n#v1.4.0"
22
+ },
23
+ "publishConfig": {
24
+ "access": "public"
25
+ }
26
+ }
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"button" | "config" | "backdrop" | "viewContent" | "noBoxShadow" | "addedChart" | "chartIcon" | "previewChartTitle" | "newChartChip" | "backdropRemoved" | "backdropAdded" | "chartTitle">;
@@ -1,5 +1,5 @@
1
1
  type ErrorContainerProps = {
2
2
  height?: number;
3
3
  };
4
- export declare const useStyles: (props: ErrorContainerProps) => import("@material-ui/core/styles/withStyles").ClassNameMap<"errorContainer" | "errorIcon" | "refreshButton" | "refreshIcon">;
4
+ export declare const useStyles: (props: ErrorContainerProps) => import("@mui/styles").ClassNameMap<"errorContainer" | "errorIcon" | "refreshButton" | "refreshIcon">;
5
5
  export {};
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"content" | "pageWrapper" | "rightPanel" | "mainPanel">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"item" | "overflowContainer">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"header" | "root" | "description" | "items" | "headerTitle" | "closeButton">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"loader">;
@@ -1,5 +1,5 @@
1
1
  type NoDataContainer = {
2
2
  height?: number;
3
3
  };
4
- export declare const useStyles: (props: NoDataContainer) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon" | "noDataContainer">;
4
+ export declare const useStyles: (props: NoDataContainer) => import("@mui/styles").ClassNameMap<"icon" | "noDataContainer">;
5
5
  export {};
@@ -0,0 +1,2 @@
1
+ declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"header" | "headerText" | "toggleButton" | "menuButton">;
2
+ export { useStyles };
@@ -1,5 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- import MenuItem from '@material-ui/core/MenuItem';
2
+ import MenuItem from '@mui/material/MenuItem';
3
3
  interface MenuItem {
4
4
  id: string;
5
5
  title: string;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"menuItem" | "itemTitle" | "itemIcon" | "openIcon">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"entityLabel" | "headCell" | "headLabel">;
@@ -2,5 +2,5 @@ type Dimensions = {
2
2
  width: number | string;
3
3
  height: number | string;
4
4
  };
5
- export declare const useStyles: (props: Dimensions) => import("@material-ui/core/styles/withStyles").ClassNameMap<"tableContainer" | "cellBorder">;
5
+ export declare const useStyles: (props: Dimensions) => import("@mui/styles").ClassNameMap<"tableContainer" | "cellBorder">;
6
6
  export {};
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"title" | "viewContent" | "toolbarRoot" | "dragIcon">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"title" | "toolbarRoot" | "dragIcon" | "rightMenu" | "updatedChip">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"view">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"legend" | "tooltipTitle" | "tooltipWrapper" | "tooltipItemColor" | "legendItem" | "legendItemColor" | "legendItemValue">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"hidden" | "entityLabel" | "flag" | "taskItem" | "taskInfo" | "taskTitle" | "taskDetail" | "taskDetailTitle" | "taskDueDate" | "overdue">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"perspectiveView">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"periodSelector">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"pagination" | "iframe" | "viewContent" | "tasksSelector" | "tasksSelectorInput">;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"activityLogFilter">;
@@ -0,0 +1,21 @@
1
+ const path = require('path');
2
+ const fs = require('fs');
3
+
4
+ const outputDir = path.resolve(process.cwd(), 'public');
5
+ const generatePackageJson = () => {
6
+ const packageJson = require('../../package.json');
7
+ const result = {
8
+ name: packageJson.name,
9
+ version: packageJson.version,
10
+ license: 'SEE LICENSE IN LICENSE FILE',
11
+ main: 'bundle.js',
12
+ types: './types/index.d.ts',
13
+ dependencies: packageJson.dependencies,
14
+ peerDependencies: packageJson.peerDependencies,
15
+ publishConfig: packageJson.publishConfig
16
+ };
17
+ const source = JSON.stringify(result, null, 2);
18
+ fs.writeFileSync(path.join(outputDir, 'package.json'), source);
19
+ };
20
+
21
+ generatePackageJson();
@@ -0,0 +1,39 @@
1
+ import React, {useRef} from 'react';
2
+ import {BasicTablePagination} from '@reltio/components';
3
+
4
+ const PAGINATION_HEIGHT = 60;
5
+
6
+ type RefProps = {
7
+ basicTableRef?: React.MutableRefObject<any> | null;
8
+ };
9
+
10
+ type Props = {
11
+ count?: number;
12
+ height?: number;
13
+ onChangePage?: (page: number) => void;
14
+ page?: number;
15
+ rowsPerPageOptions?: number[];
16
+ rowsPerPage?: number;
17
+ onChangeRowsPerPage?: (page: number) => void;
18
+ };
19
+
20
+ export function withPagination<T>(TableComponent: React.ComponentType<T>) {
21
+ const WithPagination = (props: Props & Omit<T, keyof RefProps>) => {
22
+ const basicTableRef = useRef(null);
23
+
24
+ return (
25
+ <>
26
+ <TableComponent
27
+ {...(props as T)}
28
+ basicTableRef={basicTableRef}
29
+ height={props.height - PAGINATION_HEIGHT}
30
+ />
31
+ <BasicTablePagination {...props} basicTableRef={basicTableRef} />
32
+ </>
33
+ );
34
+ };
35
+
36
+ WithPagination.displayName = 'WithPagination';
37
+
38
+ return WithPagination;
39
+ }
@@ -0,0 +1,101 @@
1
+ import React, {memo, useState} from 'react';
2
+ import i18n from 'ui-i18n';
3
+ import classnames from 'classnames';
4
+ import Backdrop from '@mui/material/Backdrop';
5
+ import Button from '@mui/material/Button';
6
+ import Typography from '@mui/material/Typography';
7
+ import Chip from '@mui/material/Chip';
8
+ import {BasicView, BasicViewContent} from '@reltio/components';
9
+ import {ChartTypes, DashboardView} from '@reltio/mdm-sdk';
10
+ import ViewsFactory from '../../views/ViewsFactory';
11
+ import BarChartIcon from './icons/barChart.svg';
12
+ import BubbleChartIcon from './icons/bubbleChart.svg';
13
+ import DonutChartIcon from './icons/donutChart.svg';
14
+ import LineChartIcon from './icons/lineChart.svg';
15
+ import PieChartIcon from './icons/pieChart.svg';
16
+ import TableChartIcon from './icons/tableWithBars.svg';
17
+ import TreeChartIcon from './icons/treemap.svg';
18
+ import MapChartIcon from './icons/geomap.svg';
19
+ import CloudChartIcon from './icons/wordCloud.svg';
20
+ import CustomChartIcon from './icons/customChart.svg';
21
+ import {useStyles} from './styles';
22
+
23
+ type Props = {
24
+ view: DashboardView;
25
+ isAdded: boolean;
26
+ isNew: boolean;
27
+ onRemove: (id: string) => void;
28
+ onAdd: (id: string) => void;
29
+ };
30
+
31
+ const getIconForChartType = (chartType: string | null) => {
32
+ switch (chartType) {
33
+ case ChartTypes.BAR:
34
+ return BarChartIcon;
35
+ case ChartTypes.TREE:
36
+ return TreeChartIcon;
37
+ case ChartTypes.TABLE:
38
+ return TableChartIcon;
39
+ case ChartTypes.BUBBLE:
40
+ return BubbleChartIcon;
41
+ case ChartTypes.DONUT:
42
+ return DonutChartIcon;
43
+ case ChartTypes.PIE:
44
+ return PieChartIcon;
45
+ case ChartTypes.LINE:
46
+ return LineChartIcon;
47
+ case ChartTypes.MAP:
48
+ return MapChartIcon;
49
+ case ChartTypes.CLOUD:
50
+ return CloudChartIcon;
51
+ default:
52
+ return CustomChartIcon;
53
+ }
54
+ };
55
+
56
+ const DashboardConfigItem = ({view, isAdded, isNew, onRemove, onAdd}: Props) => {
57
+ const styles = useStyles();
58
+ const {id, title} = view;
59
+ const chartType = ViewsFactory.getChartType(view);
60
+ const Icon = getIconForChartType(chartType);
61
+ const [isHovered, setIsHovered] = useState<boolean>(false);
62
+
63
+ return (
64
+ <BasicView
65
+ className={classnames(styles.config, {[styles.noBoxShadow]: isAdded})}
66
+ onMouseEnter={() => setIsHovered(true)}
67
+ onMouseLeave={() => setIsHovered(false)}
68
+ data-reltio-id="reltio-dashboard-config-item"
69
+ >
70
+ <BasicViewContent className={classnames(styles.viewContent, {[styles.addedChart]: isAdded})}>
71
+ <div className={styles.previewChartTitle}>
72
+ <Typography className={styles.chartTitle} variant="subtitle2">
73
+ {i18n.text(title || '')}
74
+ </Typography>
75
+ {isNew && <Chip label={i18n.text('New')} className={styles.newChartChip} />}
76
+ </div>
77
+ <Icon className={styles.chartIcon} />
78
+ <Backdrop
79
+ className={classnames(styles.backdrop, {
80
+ [styles.backdropAdded]: isHovered && isAdded,
81
+ [styles.backdropRemoved]: isHovered && !isAdded
82
+ })}
83
+ open={isHovered}
84
+ transitionDuration={100}
85
+ >
86
+ {isHovered && (
87
+ <Button
88
+ variant="outlined"
89
+ className={styles.button}
90
+ onClick={isAdded ? () => onRemove(id) : () => onAdd(id)}
91
+ >
92
+ <Typography>{isAdded ? i18n.text('Remove') : i18n.text('Add')}</Typography>
93
+ </Button>
94
+ )}
95
+ </Backdrop>
96
+ </BasicViewContent>
97
+ </BasicView>
98
+ );
99
+ };
100
+
101
+ export default memo(DashboardConfigItem);
@@ -0,0 +1,81 @@
1
+ import React from 'react';
2
+ import {shallow} from 'enzyme';
3
+ import Backdrop from '@mui/material/Backdrop';
4
+ import Button from '@mui/material/Button';
5
+ import Chip from '@mui/material/Chip';
6
+ import Typography from '@mui/material/Typography';
7
+ import {BasicView, BasicViewContent} from '@reltio/components';
8
+ import DashboardConfigItem from '../DashboardConfigItem';
9
+ import {rerenderWrapper} from '../../../../../../__mocks__/test-utils';
10
+
11
+ describe('DashboardConfigItem tests', () => {
12
+ const view = {
13
+ id: 'id',
14
+ title: 'title',
15
+ component: 'DashboardFacet'
16
+ };
17
+
18
+ const commonProps = {
19
+ view: view,
20
+ isAdded: false,
21
+ isNew: false,
22
+ chartType: 'bar',
23
+ onRemove: jest.fn(),
24
+ onAdd: jest.fn()
25
+ };
26
+
27
+ it('should render DashboardConfigItem', () => {
28
+ const wrapper = shallow(<DashboardConfigItem {...commonProps} />);
29
+ expect(wrapper.find(BasicView).length).toBe(1);
30
+ expect(wrapper.find(BasicViewContent).length).toBe(1);
31
+ expect(wrapper.find(Typography).text()).toBe('title');
32
+ expect(wrapper.find(Chip).length).toBe(0);
33
+ expect(wrapper.find('.chartIcon').length).toBe(1);
34
+ const backdrop = wrapper.find(Backdrop);
35
+ expect(backdrop).toHaveLength(1);
36
+ expect(backdrop.prop('className')).toBe('backdrop');
37
+ expect(backdrop.prop('open')).toBe(false);
38
+ });
39
+
40
+ it('should show new chip if props.isNew = true', () => {
41
+ const wrapper = shallow(<DashboardConfigItem {...commonProps} isNew />);
42
+ expect(wrapper.find(Chip).prop('label')).toBe('New');
43
+ });
44
+
45
+ it('should show Backdrop if hovered', () => {
46
+ const wrapper = shallow(<DashboardConfigItem {...commonProps} />);
47
+
48
+ expect(wrapper.find(Backdrop).prop('open')).toBe(false);
49
+ expect(wrapper.find(Button).length).toBe(0);
50
+ wrapper.find(BasicView).simulate('mouseenter');
51
+ rerenderWrapper(wrapper);
52
+ expect(wrapper.find(Backdrop).prop('open')).toBe(true);
53
+ expect(wrapper.find(Button).length).toBe(1);
54
+ });
55
+
56
+ it('should show Remove button if view is added and call onRemove when clicked', () => {
57
+ const wrapper = shallow(<DashboardConfigItem {...commonProps} isAdded />);
58
+
59
+ wrapper.find(BasicView).simulate('mouseenter');
60
+ rerenderWrapper(wrapper);
61
+ expect(wrapper.find(Backdrop).prop('className')).toContain('backdropAdded');
62
+ const button = wrapper.find(Button);
63
+ expect(button.text()).toBe('Remove');
64
+ button.simulate('click');
65
+ rerenderWrapper(wrapper);
66
+ expect(commonProps.onRemove).toHaveBeenCalledWith(view.id);
67
+ });
68
+
69
+ it('should show Add button if view is not added and call onAdd when clicked', () => {
70
+ const wrapper = shallow(<DashboardConfigItem {...commonProps} />);
71
+
72
+ wrapper.find(BasicView).simulate('mouseenter');
73
+ rerenderWrapper(wrapper);
74
+ expect(wrapper.find(Backdrop).prop('className')).toContain('backdropRemoved');
75
+ const button = wrapper.find(Button);
76
+ expect(button.text()).toBe('Add');
77
+ button.simulate('click');
78
+ rerenderWrapper(wrapper);
79
+ expect(commonProps.onAdd).toHaveBeenCalledWith(view.id);
80
+ });
81
+ });
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="255px" height="110px" viewBox="0 0 255 110" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>Cards / Elements / Column chart</title>
4
+ <g id="Cards-/-Elements-/-Column-chart" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
5
+ <rect id="Rectangle" x="0" y="0" width="255" height="110"></rect>
6
+ <polygon id="Rectangle-12" fill="#97C1EE" opacity="0.400000006" points="18 65.1287129 60.1356784 65.1287129 60.1356784 103 18 103"></polygon>
7
+ <polygon id="Rectangle-12-Copy-2" fill="#97C1EE" opacity="0.800000012" points="106.271357 36.5148515 148.407035 36.5148515 148.407035 103 106.271357 103"></polygon>
8
+ <polygon id="Rectangle-12-Copy-3" fill="#97C1EE" opacity="0.400000006" points="150.407035 65.1287129 192.542714 65.1287129 192.542714 103 150.407035 103"></polygon>
9
+ <polygon id="Rectangle-12-Copy-4" fill="#97C1EE" opacity="0.300000012" points="194.542714 87.8514851 236.678392 87.8514851 236.678392 103 194.542714 103"></polygon>
10
+ <polygon id="Rectangle-12-Copy" fill="#97C1EE" points="62.1356784 18 104.271357 18 104.271357 103 62.1356784 103"></polygon>
11
+ </g>
12
+ </svg>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="255px" height="110px" viewBox="0 0 255 110" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>Cards / Elements / Bubble</title>
4
+ <g id="Cards-/-Elements-/-Bubble" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
5
+ <rect id="Rectangle" x="0" y="0" width="255" height="110"></rect>
6
+ <g id="Group-6" transform="translate(62.000000, 12.000000)">
7
+ <circle id="Oval-5" fill="#9BD8F4" cx="52.7358491" cy="37.3207547" r="29.2075472"></circle>
8
+ <circle id="Oval-5-Copy-3" fill="#7DE2CD" cx="96.5471698" cy="64.9056604" r="21.0943396"></circle>
9
+ <circle id="Oval-5-Copy-4" fill="#9BC8F4" cx="100.198113" cy="23.9339623" r="18.254717"></circle>
10
+ <circle id="Oval-5-Copy" fill="#9BE2F4" cx="12.5754717" cy="39.3490566" r="9.33018868"></circle>
11
+ <circle id="Oval-5-Copy-8" fill="#9BE2F4" opacity="0.400000006" cx="122.103774" cy="44.2169811" r="9.33018868"></circle>
12
+ <circle id="Oval-5-Copy-5" fill="#B4E7FF" cx="66.1226415" cy="75.8584906" r="9.33018868"></circle>
13
+ <circle id="Oval-5-Copy-7" fill="#9BD8F4" cx="39.3490566" cy="72.6132075" r="6.08490566"></circle>
14
+ <circle id="Oval-5-Copy-6" fill="#9BF4E1" cx="77.4811321" cy="7.70754717" r="7.70754717"></circle>
15
+ <circle id="Oval-5-Copy-2" fill="#9BF4E1" cx="15.8207547" cy="66.1226415" r="15.8207547"></circle>
16
+ </g>
17
+ </g>
18
+ </svg>
@@ -0,0 +1,66 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="255px" height="110px" viewBox="0 0 255 110" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>Cards / Elements / Custom</title>
4
+ <defs>
5
+ <linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-1">
6
+ <stop stop-color="#C87AD4" offset="0%"></stop>
7
+ <stop stop-color="#E6B2EC" stop-opacity="0.472801369" offset="100%"></stop>
8
+ </linearGradient>
9
+ <linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-2">
10
+ <stop stop-color="#F7B2D2" offset="0%"></stop>
11
+ <stop stop-color="#FCD9EB" stop-opacity="0.325162021" offset="100%"></stop>
12
+ </linearGradient>
13
+ <linearGradient x1="100%" y1="50%" x2="0%" y2="50%" id="linearGradient-3">
14
+ <stop stop-color="#569ACC" stop-opacity="0.748678247" offset="0%"></stop>
15
+ <stop stop-color="#D5E6F2" stop-opacity="0.308431132" offset="100%"></stop>
16
+ </linearGradient>
17
+ </defs>
18
+ <g id="Cards-/-Elements-/-Custom" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
19
+ <rect id="Rectangle" x="0" y="0" width="255" height="110"></rect>
20
+ <g id="Group-2" transform="translate(47.000000, 15.365073)">
21
+ <g id="Group" stroke="#979797" stroke-linecap="round" stroke-width="2">
22
+ <polyline id="Path-2" points="6.87643678 0 4.4408921e-16 0 4.4408921e-16 6.65334319"></polyline>
23
+ <polyline id="Path-2" transform="translate(158.438218, 77.326672) scale(-1, -1) translate(-158.438218, -77.326672) " points="161.876437 74 155 74 155 80.6533432"></polyline>
24
+ </g>
25
+ <g id="Group" transform="translate(80.938218, 40.326672) scale(1, -1) translate(-80.938218, -40.326672) " stroke="#979797" stroke-linecap="round" stroke-width="2">
26
+ <polyline id="Path-2" points="6.87643678 0 4.4408921e-16 0 4.4408921e-16 6.65334319"></polyline>
27
+ <polyline id="Path-2" transform="translate(158.438218, 77.326672) scale(-1, -1) translate(-158.438218, -77.326672) " points="161.876437 74 155 74 155 80.6533432"></polyline>
28
+ </g>
29
+ <path d="M73,46.634927 L78,46.634927 C79.1045695,46.634927 80,47.5303575 80,48.634927 L80,63.634927 C80,64.7394965 79.1045695,65.634927 78,65.634927 L73,65.634927 C71.8954305,65.634927 71,64.7394965 71,63.634927 L71,48.634927 C71,47.5303575 71.8954305,46.634927 73,46.634927 Z" id="Rectangle-10-Copy-21" fill="#2C81BF" opacity="0.200000003"></path>
30
+ <path d="M63,46.634927 L68,46.634927 C69.1045695,46.634927 70,47.5303575 70,48.634927 L70,63.634927 C70,64.7394965 69.1045695,65.634927 68,65.634927 L63,65.634927 C61.8954305,65.634927 61,64.7394965 61,63.634927 L61,48.634927 C61,47.5303575 61.8954305,46.634927 63,46.634927 Z" id="Rectangle-10-Copy-20" fill="#2C81BF" opacity="0.400000006"></path>
31
+ <path d="M53,46.634927 L58,46.634927 C59.1045695,46.634927 60,47.5303575 60,48.634927 L60,63.634927 C60,64.7394965 59.1045695,65.634927 58,65.634927 L53,65.634927 C51.8954305,65.634927 51,64.7394965 51,63.634927 L51,48.634927 C51,47.5303575 51.8954305,46.634927 53,46.634927 Z" id="Rectangle-10-Copy-19" fill="#2C81BF" opacity="0.400000006"></path>
32
+ <path d="M43,46.634927 L48,46.634927 C49.1045695,46.634927 50,47.5303575 50,48.634927 L50,63.634927 C50,64.7394965 49.1045695,65.634927 48,65.634927 L43,65.634927 C41.8954305,65.634927 41,64.7394965 41,63.634927 L41,48.634927 C41,47.5303575 41.8954305,46.634927 43,46.634927 Z" id="Rectangle-10-Copy-18" fill="#2C81BF" opacity="0.699999988"></path>
33
+ <path d="M33,46.634927 L38,46.634927 C39.1045695,46.634927 40,47.5303575 40,48.634927 L40,63.634927 C40,64.7394965 39.1045695,65.634927 38,65.634927 L33,65.634927 C31.8954305,65.634927 31,64.7394965 31,63.634927 L31,48.634927 C31,47.5303575 31.8954305,46.634927 33,46.634927 Z" id="Rectangle-10-Copy-17" fill="#2C81BF" opacity="0.300000012"></path>
34
+ <path d="M23,46.634927 L28,46.634927 C29.1045695,46.634927 30,47.5303575 30,48.634927 L30,63.634927 C30,64.7394965 29.1045695,65.634927 28,65.634927 L23,65.634927 C21.8954305,65.634927 21,64.7394965 21,63.634927 L21,48.634927 C21,47.5303575 21.8954305,46.634927 23,46.634927 Z" id="Rectangle-10-Copy-16" fill="#2C81BF" opacity="0.300000012"></path>
35
+ <path d="M13,46.634927 L18,46.634927 C19.1045695,46.634927 20,47.5303575 20,48.634927 L20,63.634927 C20,64.7394965 19.1045695,65.634927 18,65.634927 L13,65.634927 C11.8954305,65.634927 11,64.7394965 11,63.634927 L11,48.634927 C11,47.5303575 11.8954305,46.634927 13,46.634927 Z" id="Rectangle-10-Copy-15" fill="#2C81BF" opacity="0.200000003"></path>
36
+ <path d="M73,26.634927 L78,26.634927 C79.1045695,26.634927 80,27.5303575 80,28.634927 L80,43.634927 C80,44.7394965 79.1045695,45.634927 78,45.634927 L73,45.634927 C71.8954305,45.634927 71,44.7394965 71,43.634927 L71,28.634927 C71,27.5303575 71.8954305,26.634927 73,26.634927 Z" id="Rectangle-10-Copy-14" fill="#2C81BF" opacity="0.100000001"></path>
37
+ <path d="M63,26.634927 L68,26.634927 C69.1045695,26.634927 70,27.5303575 70,28.634927 L70,43.634927 C70,44.7394965 69.1045695,45.634927 68,45.634927 L63,45.634927 C61.8954305,45.634927 61,44.7394965 61,43.634927 L61,28.634927 C61,27.5303575 61.8954305,26.634927 63,26.634927 Z" id="Rectangle-10-Copy-13" fill="#2C81BF" opacity="0.200000003"></path>
38
+ <path d="M53,26.634927 L58,26.634927 C59.1045695,26.634927 60,27.5303575 60,28.634927 L60,43.634927 C60,44.7394965 59.1045695,45.634927 58,45.634927 L53,45.634927 C51.8954305,45.634927 51,44.7394965 51,43.634927 L51,28.634927 C51,27.5303575 51.8954305,26.634927 53,26.634927 Z" id="Rectangle-10-Copy-12" fill="#2C81BF" opacity="0.300000012"></path>
39
+ <path d="M43,26.634927 L48,26.634927 C49.1045695,26.634927 50,27.5303575 50,28.634927 L50,43.634927 C50,44.7394965 49.1045695,45.634927 48,45.634927 L43,45.634927 C41.8954305,45.634927 41,44.7394965 41,43.634927 L41,28.634927 C41,27.5303575 41.8954305,26.634927 43,26.634927 Z" id="Rectangle-10-Copy-11" fill="#2C81BF" opacity="0.560000002"></path>
40
+ <path d="M33,26.634927 L38,26.634927 C39.1045695,26.634927 40,27.5303575 40,28.634927 L40,43.634927 C40,44.7394965 39.1045695,45.634927 38,45.634927 L33,45.634927 C31.8954305,45.634927 31,44.7394965 31,43.634927 L31,28.634927 C31,27.5303575 31.8954305,26.634927 33,26.634927 Z" id="Rectangle-10-Copy-10" fill="#2C81BF" opacity="0.800000012"></path>
41
+ <path d="M23,26.634927 L28,26.634927 C29.1045695,26.634927 30,27.5303575 30,28.634927 L30,43.634927 C30,44.7394965 29.1045695,45.634927 28,45.634927 L23,45.634927 C21.8954305,45.634927 21,44.7394965 21,43.634927 L21,28.634927 C21,27.5303575 21.8954305,26.634927 23,26.634927 Z" id="Rectangle-10-Copy-9" fill="#2C81BF" opacity="0.5"></path>
42
+ <path d="M13,26.634927 L18,26.634927 C19.1045695,26.634927 20,27.5303575 20,28.634927 L20,43.634927 C20,44.7394965 19.1045695,45.634927 18,45.634927 L13,45.634927 C11.8954305,45.634927 11,44.7394965 11,43.634927 L11,28.634927 C11,27.5303575 11.8954305,26.634927 13,26.634927 Z" id="Rectangle-10-Copy-8" fill="#2C81BF" opacity="0.100000001"></path>
43
+ <path d="M73,6.63492699 L78,6.63492699 C79.1045695,6.63492699 80,7.53035749 80,8.63492699 L80,23.634927 C80,24.7394965 79.1045695,25.634927 78,25.634927 L73,25.634927 C71.8954305,25.634927 71,24.7394965 71,23.634927 L71,8.63492699 C71,7.53035749 71.8954305,6.63492699 73,6.63492699 Z" id="Rectangle-10-Copy-7" fill="#2C81BF" opacity="0.200000003"></path>
44
+ <path d="M63,6.63492699 L68,6.63492699 C69.1045695,6.63492699 70,7.53035749 70,8.63492699 L70,23.634927 C70,24.7394965 69.1045695,25.634927 68,25.634927 L63,25.634927 C61.8954305,25.634927 61,24.7394965 61,23.634927 L61,8.63492699 C61,7.53035749 61.8954305,6.63492699 63,6.63492699 Z" id="Rectangle-10-Copy-6" fill="#2C81BF" opacity="0.200000003"></path>
45
+ <path d="M53,6.63492699 L58,6.63492699 C59.1045695,6.63492699 60,7.53035749 60,8.63492699 L60,23.634927 C60,24.7394965 59.1045695,25.634927 58,25.634927 L53,25.634927 C51.8954305,25.634927 51,24.7394965 51,23.634927 L51,8.63492699 C51,7.53035749 51.8954305,6.63492699 53,6.63492699 Z" id="Rectangle-10-Copy-5" fill="#2C81BF" opacity="0.5"></path>
46
+ <path d="M43,6.63492699 L48,6.63492699 C49.1045695,6.63492699 50,7.53035749 50,8.63492699 L50,23.634927 C50,24.7394965 49.1045695,25.634927 48,25.634927 L43,25.634927 C41.8954305,25.634927 41,24.7394965 41,23.634927 L41,8.63492699 C41,7.53035749 41.8954305,6.63492699 43,6.63492699 Z" id="Rectangle-10-Copy-4" fill="#2C81BF" opacity="0.300000012"></path>
47
+ <path d="M33,6.63492699 L38,6.63492699 C39.1045695,6.63492699 40,7.53035749 40,8.63492699 L40,23.634927 C40,24.7394965 39.1045695,25.634927 38,25.634927 L33,25.634927 C31.8954305,25.634927 31,24.7394965 31,23.634927 L31,8.63492699 C31,7.53035749 31.8954305,6.63492699 33,6.63492699 Z" id="Rectangle-10-Copy-3" fill="#2C81BF" opacity="0.400000006"></path>
48
+ <path d="M23,6.63492699 L28,6.63492699 C29.1045695,6.63492699 30,7.53035749 30,8.63492699 L30,23.634927 C30,24.7394965 29.1045695,25.634927 28,25.634927 L23,25.634927 C21.8954305,25.634927 21,24.7394965 21,23.634927 L21,8.63492699 C21,7.53035749 21.8954305,6.63492699 23,6.63492699 Z" id="Rectangle-10-Copy-2" fill="#2C81BF" opacity="0.200000003"></path>
49
+ <path d="M13,6.63492699 L18,6.63492699 C19.1045695,6.63492699 20,7.53035749 20,8.63492699 L20,23.634927 C20,24.7394965 19.1045695,25.634927 18,25.634927 L13,25.634927 C11.8954305,25.634927 11,24.7394965 11,23.634927 L11,8.63492699 C11,7.53035749 11.8954305,6.63492699 13,6.63492699 Z" id="Rectangle-10-Copy-2" fill="#2C81BF" opacity="0.200000003"></path>
50
+ <polyline id="Path" stroke="#C87AD4" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" points="89.0114943 58.4234722 101.011131 35.427685 112.76418 41.927685 124.599387 40.9633999 136.434594 45.427685 153.011494 16.427685"></polyline>
51
+ <polygon id="Path" fill="url(#linearGradient-1)" opacity="0.165459043" points="89.0114943 58.4234722 101.011131 35.427685 112.76418 41.927685 124.599387 40.9633999 136.434594 45.427685 153.011494 16.427685 153.011494 65.634927 89.0114943 65.634927"></polygon>
52
+ <polyline id="Path" stroke="#F7B2D2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" points="89.0114943 48.4877112 101.011131 51.427685 112.76418 48.4877112 124.599387 46.9633999 136.434594 51.427685 153.011494 32.427685"></polyline>
53
+ <polygon id="Path" fill="url(#linearGradient-2)" opacity="0.400000006" points="89.0114943 48.4877112 101.011131 51.427685 112.76418 48.4877112 124.599387 46.9633999 136.434594 51.427685 153.011494 32.427685 153.011494 65.634927 89.0114943 65.634927"></polygon>
54
+ <path d="M91.5,6.63492699 C92.8807119,6.63492699 94,7.75421512 94,9.13492699 C94,10.5156389 92.8807119,11.634927 91.5,11.634927 C90.1192881,11.634927 89,10.5156389 89,9.13492699 C89,7.75421512 90.1192881,6.63492699 91.5,6.63492699 Z" id="Rectangle-8-Copy-37" fill="#F7AACE" opacity="0.899999976"></path>
55
+ <path d="M101.5,6.63492699 L124.5,6.63492699 C125.880712,6.63492699 127,7.75421512 127,9.13492699 C127,10.5156389 125.880712,11.634927 124.5,11.634927 L101.5,11.634927 C100.119288,11.634927 99,10.5156389 99,9.13492699 C99,7.75421512 100.119288,6.63492699 101.5,6.63492699 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.3"></path>
56
+ <path d="M90.5,70.634927 L125.5,70.634927 C126.328427,70.634927 127,71.3064999 127,72.134927 C127,72.9633541 126.328427,73.634927 125.5,73.634927 L90.5,73.634927 C89.6715729,73.634927 89,72.9633541 89,72.134927 C89,71.3064999 89.6715729,70.634927 90.5,70.634927 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.3"></path>
57
+ <path d="M91.5,13.634927 C92.8807119,13.634927 94,14.7542151 94,16.134927 C94,17.5156389 92.8807119,18.634927 91.5,18.634927 C90.1192881,18.634927 89,17.5156389 89,16.134927 C89,14.7542151 90.1192881,13.634927 91.5,13.634927 Z" id="Rectangle-8-Copy-37" fill="#C97BD4" opacity="0.899999976"></path>
58
+ <path d="M101.5,13.634927 L110.5,13.634927 C111.880712,13.634927 113,14.7542151 113,16.134927 C113,17.5156389 111.880712,18.634927 110.5,18.634927 L101.5,18.634927 C100.119288,18.634927 99,17.5156389 99,16.134927 C99,14.7542151 100.119288,13.634927 101.5,13.634927 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.3"></path>
59
+ <path d="M12.5,70.634927 L79.5,70.634927 C80.3284271,70.634927 81,71.3064999 81,72.134927 C81,72.9633541 80.3284271,73.634927 79.5,73.634927 L12.5,73.634927 C11.6715729,73.634927 11,72.9633541 11,72.134927 C11,71.3064999 11.6715729,70.634927 12.5,70.634927 Z" id="Rectangle-8-Copy-37" fill="url(#linearGradient-3)"></path>
60
+ </g>
61
+ <g id="Group-3" transform="translate(180.000000, 77.000000)">
62
+ <rect id="Rectangle" stroke="#FFFFFF" stroke-width="2" fill="#FFFFFF" x="0" y="0" width="24" height="14" rx="7"></rect>
63
+ <path d="M17,2 L13,2 L13,4 L17,4 C18.65,4 20,5.35 20,7 C20,8.65 18.65,10 17,10 L13,10 L13,12 L17,12 C19.76,12 22,9.76 22,7 C22,4.24 19.76,2 17,2 Z M11,10 L7,10 C5.35,10 4,8.65 4,7 C4,5.35 5.35,4 7,4 L11,4 L11,2 L7,2 C4.24,2 2,4.24 2,7 C2,9.76 4.24,12 7,12 L11,12 L11,10 Z M8,6 L16,6 L16,8 L8,8 L8,6 Z" id="Shape" fill="#000000" fill-rule="nonzero"></path>
64
+ </g>
65
+ </g>
66
+ </svg>
@@ -0,0 +1,33 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="255px" height="110px" viewBox="0 0 255 110" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>Cards / Elements / Donut</title>
4
+ <defs>
5
+ <path d="M43.5,0 C67.5243866,0 87,19.4756134 87,43.5 C87,67.5243866 67.5243866,87 43.5,87 C19.4756134,87 -5.68434189e-14,67.5243866 -5.68434189e-14,43.5 C-5.68434189e-14,19.4756134 19.4756134,0 43.5,0 Z M43.5,8.5 C24.1700338,8.5 8.5,24.1700338 8.5,43.5 C8.5,62.8299662 24.1700338,78.5 43.5,78.5 C62.8299662,78.5 78.5,62.8299662 78.5,43.5 C78.5,24.1700338 62.8299662,8.5 43.5,8.5 Z" id="path-1"></path>
6
+ </defs>
7
+ <g id="Cards-/-Elements-/-Donut" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
8
+ <rect id="Rectangle" x="0" y="0" width="255" height="110"></rect>
9
+ <g id="Group-6" transform="translate(24.528302, 11.113208)">
10
+ <mask id="mask-2" fill="white">
11
+ <use xlink:href="#path-1"></use>
12
+ </mask>
13
+ <use id="Oval-6" fill="#F0F0F0" xlink:href="#path-1"></use>
14
+ <polygon id="Rectangle" fill="#AC94FB" mask="url(#mask-2)" points="44 0 88 0 88 51.8867925 44 44"></polygon>
15
+ <polygon id="Rectangle" fill="#C26CD0" mask="url(#mask-2)" points="58.7885524 87 88 87 88 51.8867925 44 44"></polygon>
16
+ <polygon id="Rectangle" fill="#FF70A6" mask="url(#mask-2)" points="58.7885524 87 13.5266514 87 44 44"></polygon>
17
+ <polygon id="Rectangle" fill="#D3DD49" mask="url(#mask-2)" points="-4.52830189 22 -4.52830189 51.8867925 44 44"></polygon>
18
+ <polygon id="Rectangle" fill="#FFCB7D" mask="url(#mask-2)" points="13.8148959 89 -4.52830189 89 -4.52830189 51.8867925 44 44"></polygon>
19
+ </g>
20
+ <path d="M142.5,30 C143.880712,30 145,31.1192881 145,32.5 C145,33.8807119 143.880712,35 142.5,35 C141.119288,35 140,33.8807119 140,32.5 C140,31.1192881 141.119288,30 142.5,30 Z" id="Rectangle-8-Copy-37" fill="#AC94FB" opacity="0.899999976"></path>
21
+ <path d="M142.5,41 C143.880712,41 145,42.1192881 145,43.5 C145,44.8807119 143.880712,46 142.5,46 C141.119288,46 140,44.8807119 140,43.5 C140,42.1192881 141.119288,41 142.5,41 Z" id="Rectangle-8-Copy-37" fill="#C26CD0" opacity="0.899999976"></path>
22
+ <path d="M142.5,52 C143.880712,52 145,53.1192881 145,54.5 C145,55.8807119 143.880712,57 142.5,57 C141.119288,57 140,55.8807119 140,54.5 C140,53.1192881 141.119288,52 142.5,52 Z" id="Rectangle-8-Copy-37" fill="#FF70A6" opacity="0.899999976"></path>
23
+ <path d="M142.5,63 C143.880712,63 145,64.1192881 145,65.5 C145,66.8807119 143.880712,68 142.5,68 C141.119288,68 140,66.8807119 140,65.5 C140,64.1192881 141.119288,63 142.5,63 Z" id="Rectangle-8-Copy-37" fill="#FFCB7D" opacity="0.899999976"></path>
24
+ <path d="M154.5,30 L192.357143,30 C193.737855,30 194.857143,31.1192881 194.857143,32.5 C194.857143,33.8807119 193.737855,35 192.357143,35 L154.5,35 C153.119288,35 152,33.8807119 152,32.5 C152,31.1192881 153.119288,30 154.5,30 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.3"></path>
25
+ <path d="M59.5,48 L76.5,48 C78.4329966,48 80,49.5670034 80,51.5 C80,53.4329966 78.4329966,55 76.5,55 L59.5,55 C57.5670034,55 56,53.4329966 56,51.5 C56,49.5670034 57.5670034,48 59.5,48 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.528702509"></path>
26
+ <path d="M63,58 L73,58 C74.1045695,58 75,58.8954305 75,60 C75,61.1045695 74.1045695,62 73,62 L63,62 C61.8954305,62 61,61.1045695 61,60 C61,58.8954305 61.8954305,58 63,58 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.237891788"></path>
27
+ <path d="M154.5,41 L213.785714,41 C215.166426,41 216.285714,42.1192881 216.285714,43.5 C216.285714,44.8807119 215.166426,46 213.785714,46 L154.5,46 C153.119288,46 152,44.8807119 152,43.5 C152,42.1192881 153.119288,41 154.5,41 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.3"></path>
28
+ <path d="M154.5,52 L203.071429,52 C204.45214,52 205.571429,53.1192881 205.571429,54.5 C205.571429,55.8807119 204.45214,57 203.071429,57 L154.5,57 C153.119288,57 152,55.8807119 152,54.5 C152,53.1192881 153.119288,52 154.5,52 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.3"></path>
29
+ <path d="M154.5,63 L224.5,63 C225.880712,63 227,64.1192881 227,65.5 C227,66.8807119 225.880712,68 224.5,68 L154.5,68 C153.119288,68 152,66.8807119 152,65.5 C152,64.1192881 153.119288,63 154.5,63 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.3"></path>
30
+ <path d="M142.5,74 C143.880712,74 145,75.1192881 145,76.5 C145,77.8807119 143.880712,79 142.5,79 C141.119288,79 140,77.8807119 140,76.5 C140,75.1192881 141.119288,74 142.5,74 Z" id="Rectangle-8-Copy-37" fill="#D3DD49" opacity="0.899999976"></path>
31
+ <path d="M154.5,74 L189.5,74 C190.880712,74 192,75.1192881 192,76.5 C192,77.8807119 190.880712,79 189.5,79 L154.5,79 C153.119288,79 152,77.8807119 152,76.5 C152,75.1192881 153.119288,74 154.5,74 Z" id="Rectangle-8-Copy-37" fill="#B1AABD" opacity="0.3"></path>
32
+ </g>
33
+ </svg>