@performant-software/semantic-components 0.5.4 → 0.5.7

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 (443) hide show
  1. package/build/278156e41e0ad908cf7f841b17130502.woff2 +0 -0
  2. package/build/38c6d8bab26db77d8c806813e1497763.woff2 +0 -0
  3. package/build/425399f81e4ce7cbd967685402ba0260.woff +0 -0
  4. package/build/5367103510b27b78482794590e1ce3b0.ttf +0 -0
  5. package/build/62d9dae4e0040e81c980950003df0e07.svg +1518 -0
  6. package/build/65a2fb6d9aaa164b41a039302093995b.ttf +0 -0
  7. package/build/6729d29753e000c17489ed43135ba8d5.svg +1008 -0
  8. package/build/687a4990ea22bb1a49d469a5d9319790.woff2 +0 -0
  9. package/build/752905fa5edf21fc52a10a0c1ca9c7a4.eot +0 -0
  10. package/build/99f63ae7a743f21ab30847ed06a698d9.png +0 -0
  11. package/build/9c4845b4b41ef40a22faee76144fa816.svg +366 -0
  12. package/build/a01e3f2d6c83dc3aee175e2482b3f777.eot +0 -0
  13. package/build/c656b8caa454ed19b9a2ef7f4f5b8fea.ttf +0 -0
  14. package/build/cac87dc00c87a5d74711d0276713808a.woff +0 -0
  15. package/build/d68fa3e67dbb653a13cec44b1bcabcfe.eot +0 -0
  16. package/build/ddae9b1ba9b0b42f58809904b0b21349.woff +0 -0
  17. package/build/index.js +1 -1
  18. package/build/index.js.map +1 -1
  19. package/build/main.css +61 -144
  20. package/build/semantic-ui.css +61259 -0
  21. package/package.json +12 -6
  22. package/src/components/AccordionDataList.js +3 -0
  23. package/src/components/AccordionList.js +9 -2
  24. package/src/components/AccordionSelector.js +93 -86
  25. package/src/components/ArrowButtons.js +2 -0
  26. package/src/components/CancelButton.js +1 -2
  27. package/src/components/ColorPickerModal.js +36 -31
  28. package/src/components/DataList.js +1 -0
  29. package/src/components/DataTable.js +1 -0
  30. package/src/components/DataTableColumnSelector.js +18 -2
  31. package/src/components/DataView.js +36 -30
  32. package/src/components/DatabaseView.js +126 -0
  33. package/src/components/DateInput.js +1 -0
  34. package/src/components/DatePicker.css +4 -4
  35. package/src/components/DatePicker.js +4 -0
  36. package/src/components/DropdownButton.js +2 -0
  37. package/src/components/DropdownMenu.js +11 -1
  38. package/src/components/EditModal.js +1 -2
  39. package/src/components/FileUpload.css +3 -3
  40. package/src/components/FileUploadModal.js +43 -38
  41. package/src/components/FuzzyDate.js +114 -99
  42. package/src/components/HorizontalCards.js +3 -0
  43. package/src/components/Items.css +0 -4
  44. package/src/components/Items.js +2 -0
  45. package/src/components/ItemsToggle.js +4 -0
  46. package/src/components/List.js +1 -0
  47. package/src/components/ListFilters.js +115 -109
  48. package/src/components/ListTable.js +7 -4
  49. package/src/components/LoginModal.js +72 -65
  50. package/src/components/MediaList.js +1 -0
  51. package/src/components/MenuBar.js +2 -0
  52. package/src/components/ModalDropdown.js +6 -3
  53. package/src/components/NestedAccordion.css +4 -0
  54. package/src/components/NestedAccordion.js +1 -0
  55. package/src/components/PhotoViewer.js +23 -15
  56. package/src/components/ReferenceCodeModal.js +27 -21
  57. package/src/components/ReferenceTableModal.js +61 -55
  58. package/src/components/RemoteDropdown.js +1 -0
  59. package/src/components/Selectize.js +50 -45
  60. package/src/components/TabbedModal.js +30 -24
  61. package/src/components/VideoFrameSelector.js +90 -78
  62. package/src/components/VideoPlayer.js +58 -30
  63. package/src/components/ViewXML.js +38 -32
  64. package/src/context/ModalContext.js +5 -0
  65. package/src/css/site/collections/breadcrumb.overrides +3 -0
  66. package/src/css/site/collections/breadcrumb.variables +3 -0
  67. package/src/css/site/collections/form.overrides +3 -0
  68. package/src/css/site/collections/form.variables +3 -0
  69. package/src/css/site/collections/grid.overrides +3 -0
  70. package/src/css/site/collections/grid.variables +3 -0
  71. package/src/css/site/collections/menu.overrides +3 -0
  72. package/src/css/site/collections/menu.variables +5 -0
  73. package/src/css/site/collections/message.overrides +3 -0
  74. package/src/css/site/collections/message.variables +3 -0
  75. package/src/css/site/collections/table.overrides +3 -0
  76. package/src/css/site/collections/table.variables +3 -0
  77. package/src/css/site/elements/button.overrides +3 -0
  78. package/src/css/site/elements/button.variables +5 -0
  79. package/src/css/site/elements/container.overrides +3 -0
  80. package/src/css/site/elements/container.variables +3 -0
  81. package/src/css/site/elements/divider.overrides +3 -0
  82. package/src/css/site/elements/divider.variables +3 -0
  83. package/src/css/site/elements/flag.overrides +3 -0
  84. package/src/css/site/elements/flag.variables +3 -0
  85. package/src/css/site/elements/header.overrides +3 -0
  86. package/src/css/site/elements/header.variables +3 -0
  87. package/src/css/site/elements/icon.overrides +3 -0
  88. package/src/css/site/elements/icon.variables +3 -0
  89. package/src/css/site/elements/image.overrides +3 -0
  90. package/src/css/site/elements/image.variables +3 -0
  91. package/src/css/site/elements/input.overrides +3 -0
  92. package/src/css/site/elements/input.variables +3 -0
  93. package/src/css/site/elements/label.overrides +3 -0
  94. package/src/css/site/elements/label.variables +3 -0
  95. package/src/css/site/elements/list.overrides +3 -0
  96. package/src/css/site/elements/list.variables +3 -0
  97. package/src/css/site/elements/loader.overrides +3 -0
  98. package/src/css/site/elements/loader.variables +3 -0
  99. package/src/css/site/elements/rail.overrides +3 -0
  100. package/src/css/site/elements/rail.variables +3 -0
  101. package/src/css/site/elements/reveal.overrides +3 -0
  102. package/src/css/site/elements/reveal.variables +3 -0
  103. package/src/css/site/elements/segment.overrides +3 -0
  104. package/src/css/site/elements/segment.variables +3 -0
  105. package/src/css/site/elements/step.overrides +3 -0
  106. package/src/css/site/elements/step.variables +3 -0
  107. package/src/css/site/globals/reset.overrides +3 -0
  108. package/src/css/site/globals/reset.variables +3 -0
  109. package/src/css/site/globals/site.overrides +3 -0
  110. package/src/css/site/globals/site.variables +11 -0
  111. package/src/css/site/modules/accordion.overrides +3 -0
  112. package/src/css/site/modules/accordion.variables +3 -0
  113. package/src/css/site/modules/chatroom.overrides +3 -0
  114. package/src/css/site/modules/chatroom.variables +3 -0
  115. package/src/css/site/modules/checkbox.overrides +3 -0
  116. package/src/css/site/modules/checkbox.variables +3 -0
  117. package/src/css/site/modules/dimmer.overrides +3 -0
  118. package/src/css/site/modules/dimmer.variables +3 -0
  119. package/src/css/site/modules/dropdown.overrides +3 -0
  120. package/src/css/site/modules/dropdown.variables +3 -0
  121. package/src/css/site/modules/embed.overrides +3 -0
  122. package/src/css/site/modules/embed.variables +0 -0
  123. package/src/css/site/modules/modal.overrides +3 -0
  124. package/src/css/site/modules/modal.variables +3 -0
  125. package/src/css/site/modules/nag.overrides +3 -0
  126. package/src/css/site/modules/nag.variables +3 -0
  127. package/src/css/site/modules/popup.overrides +3 -0
  128. package/src/css/site/modules/popup.variables +3 -0
  129. package/src/css/site/modules/progress.overrides +3 -0
  130. package/src/css/site/modules/progress.variables +3 -0
  131. package/src/css/site/modules/rating.overrides +3 -0
  132. package/src/css/site/modules/rating.variables +3 -0
  133. package/src/css/site/modules/search.overrides +3 -0
  134. package/src/css/site/modules/search.variables +3 -0
  135. package/src/css/site/modules/shape.overrides +3 -0
  136. package/src/css/site/modules/shape.variables +3 -0
  137. package/src/css/site/modules/sidebar.overrides +3 -0
  138. package/src/css/site/modules/sidebar.variables +3 -0
  139. package/src/css/site/modules/sticky.overrides +3 -0
  140. package/src/css/site/modules/sticky.variables +3 -0
  141. package/src/css/site/modules/tab.overrides +3 -0
  142. package/src/css/site/modules/tab.variables +3 -0
  143. package/src/css/site/modules/transition.overrides +3 -0
  144. package/src/css/site/modules/transition.variables +3 -0
  145. package/src/css/site/views/ad.overrides +3 -0
  146. package/src/css/site/views/ad.variables +3 -0
  147. package/src/css/site/views/card.overrides +3 -0
  148. package/src/css/site/views/card.variables +3 -0
  149. package/src/css/site/views/comment.overrides +3 -0
  150. package/src/css/site/views/comment.variables +3 -0
  151. package/src/css/site/views/feed.overrides +3 -0
  152. package/src/css/site/views/feed.variables +3 -0
  153. package/src/css/site/views/item.overrides +3 -0
  154. package/src/css/site/views/item.variables +3 -0
  155. package/src/css/site/views/statistic.overrides +3 -0
  156. package/src/css/site/views/statistic.variables +3 -0
  157. package/src/css/style.less +1 -0
  158. package/src/css/theme.config +94 -0
  159. package/src/css/themes/amazon/elements/button.overrides +46 -0
  160. package/src/css/themes/amazon/elements/button.variables +58 -0
  161. package/src/css/themes/amazon/globals/site.variables +43 -0
  162. package/src/css/themes/basic/assets/fonts/icons.eot +0 -0
  163. package/src/css/themes/basic/assets/fonts/icons.svg +450 -0
  164. package/src/css/themes/basic/assets/fonts/icons.ttf +0 -0
  165. package/src/css/themes/basic/assets/fonts/icons.woff +0 -0
  166. package/src/css/themes/basic/collections/table.overrides +4 -0
  167. package/src/css/themes/basic/collections/table.variables +11 -0
  168. package/src/css/themes/basic/elements/button.overrides +4 -0
  169. package/src/css/themes/basic/elements/button.variables +44 -0
  170. package/src/css/themes/basic/elements/icon.overrides +189 -0
  171. package/src/css/themes/basic/elements/icon.variables +12 -0
  172. package/src/css/themes/basic/elements/step.overrides +10 -0
  173. package/src/css/themes/basic/elements/step.variables +18 -0
  174. package/src/css/themes/basic/globals/reset.overrides +5 -0
  175. package/src/css/themes/basic/globals/reset.variables +3 -0
  176. package/src/css/themes/basic/modules/progress.overrides +3 -0
  177. package/src/css/themes/basic/modules/progress.variables +15 -0
  178. package/src/css/themes/basic/views/card.overrides +4 -0
  179. package/src/css/themes/basic/views/card.variables +35 -0
  180. package/src/css/themes/bookish/elements/header.overrides +15 -0
  181. package/src/css/themes/bookish/elements/header.variables +37 -0
  182. package/src/css/themes/bootstrap3/elements/button.overrides +0 -0
  183. package/src/css/themes/bootstrap3/elements/button.variables +63 -0
  184. package/src/css/themes/chubby/collections/form.overrides +16 -0
  185. package/src/css/themes/chubby/collections/form.variables +9 -0
  186. package/src/css/themes/chubby/collections/menu.overrides +0 -0
  187. package/src/css/themes/chubby/collections/menu.variables +40 -0
  188. package/src/css/themes/chubby/elements/button.overrides +21 -0
  189. package/src/css/themes/chubby/elements/button.variables +57 -0
  190. package/src/css/themes/chubby/elements/header.overrides +5 -0
  191. package/src/css/themes/chubby/elements/header.variables +21 -0
  192. package/src/css/themes/chubby/modules/accordion.overrides +7 -0
  193. package/src/css/themes/chubby/modules/accordion.variables +15 -0
  194. package/src/css/themes/chubby/views/comment.overrides +12 -0
  195. package/src/css/themes/chubby/views/comment.variables +46 -0
  196. package/src/css/themes/classic/collections/table.overrides +3 -0
  197. package/src/css/themes/classic/collections/table.variables +14 -0
  198. package/src/css/themes/classic/elements/button.overrides +3 -0
  199. package/src/css/themes/classic/elements/button.variables +96 -0
  200. package/src/css/themes/classic/elements/header.overrides +3 -0
  201. package/src/css/themes/classic/elements/header.variables +12 -0
  202. package/src/css/themes/classic/modules/progress.overrides +3 -0
  203. package/src/css/themes/classic/modules/progress.variables +9 -0
  204. package/src/css/themes/classic/views/card.overrides +98 -0
  205. package/src/css/themes/classic/views/card.variables +22 -0
  206. package/src/css/themes/colored/modules/checkbox.overrides +0 -0
  207. package/src/css/themes/colored/modules/checkbox.variables +29 -0
  208. package/src/css/themes/default/assets/fonts/brand-icons.eot +0 -0
  209. package/src/css/themes/default/assets/fonts/brand-icons.svg +1008 -0
  210. package/src/css/themes/default/assets/fonts/brand-icons.ttf +0 -0
  211. package/src/css/themes/default/assets/fonts/brand-icons.woff +0 -0
  212. package/src/css/themes/default/assets/fonts/brand-icons.woff2 +0 -0
  213. package/src/css/themes/default/assets/fonts/icons.eot +0 -0
  214. package/src/css/themes/default/assets/fonts/icons.svg +1518 -0
  215. package/src/css/themes/default/assets/fonts/icons.ttf +0 -0
  216. package/src/css/themes/default/assets/fonts/icons.woff +0 -0
  217. package/src/css/themes/default/assets/fonts/icons.woff2 +0 -0
  218. package/src/css/themes/default/assets/fonts/outline-icons.eot +0 -0
  219. package/src/css/themes/default/assets/fonts/outline-icons.svg +366 -0
  220. package/src/css/themes/default/assets/fonts/outline-icons.ttf +0 -0
  221. package/src/css/themes/default/assets/fonts/outline-icons.woff +0 -0
  222. package/src/css/themes/default/assets/fonts/outline-icons.woff2 +0 -0
  223. package/src/css/themes/default/assets/images/flags.png +0 -0
  224. package/src/css/themes/default/collections/breadcrumb.overrides +3 -0
  225. package/src/css/themes/default/collections/breadcrumb.variables +33 -0
  226. package/src/css/themes/default/collections/form.overrides +3 -0
  227. package/src/css/themes/default/collections/form.variables +195 -0
  228. package/src/css/themes/default/collections/grid.overrides +4 -0
  229. package/src/css/themes/default/collections/grid.variables +103 -0
  230. package/src/css/themes/default/collections/menu.overrides +3 -0
  231. package/src/css/themes/default/collections/menu.variables +458 -0
  232. package/src/css/themes/default/collections/message.overrides +3 -0
  233. package/src/css/themes/default/collections/message.variables +158 -0
  234. package/src/css/themes/default/collections/table.overrides +0 -0
  235. package/src/css/themes/default/collections/table.variables +247 -0
  236. package/src/css/themes/default/elements/button.overrides +3 -0
  237. package/src/css/themes/default/elements/button.variables +360 -0
  238. package/src/css/themes/default/elements/container.overrides +3 -0
  239. package/src/css/themes/default/elements/container.variables +58 -0
  240. package/src/css/themes/default/elements/divider.overrides +18 -0
  241. package/src/css/themes/default/elements/divider.variables +53 -0
  242. package/src/css/themes/default/elements/flag.overrides +991 -0
  243. package/src/css/themes/default/elements/flag.variables +13 -0
  244. package/src/css/themes/default/elements/header.overrides +4 -0
  245. package/src/css/themes/default/elements/header.variables +151 -0
  246. package/src/css/themes/default/elements/icon.overrides +1716 -0
  247. package/src/css/themes/default/elements/icon.variables +94 -0
  248. package/src/css/themes/default/elements/image.overrides +3 -0
  249. package/src/css/themes/default/elements/image.variables +44 -0
  250. package/src/css/themes/default/elements/input.overrides +3 -0
  251. package/src/css/themes/default/elements/input.variables +101 -0
  252. package/src/css/themes/default/elements/label.overrides +3 -0
  253. package/src/css/themes/default/elements/label.variables +254 -0
  254. package/src/css/themes/default/elements/list.overrides +3 -0
  255. package/src/css/themes/default/elements/list.variables +224 -0
  256. package/src/css/themes/default/elements/loader.overrides +3 -0
  257. package/src/css/themes/default/elements/loader.variables +73 -0
  258. package/src/css/themes/default/elements/placeholder.overrides +3 -0
  259. package/src/css/themes/default/elements/placeholder.variables +55 -0
  260. package/src/css/themes/default/elements/rail.overrides +3 -0
  261. package/src/css/themes/default/elements/rail.variables +34 -0
  262. package/src/css/themes/default/elements/reveal.overrides +3 -0
  263. package/src/css/themes/default/elements/reveal.variables +18 -0
  264. package/src/css/themes/default/elements/segment.overrides +3 -0
  265. package/src/css/themes/default/elements/segment.variables +154 -0
  266. package/src/css/themes/default/elements/step.overrides +16 -0
  267. package/src/css/themes/default/elements/step.variables +130 -0
  268. package/src/css/themes/default/globals/reset.overrides +447 -0
  269. package/src/css/themes/default/globals/reset.variables +3 -0
  270. package/src/css/themes/default/globals/site.overrides +3 -0
  271. package/src/css/themes/default/globals/site.variables +973 -0
  272. package/src/css/themes/default/modules/accordion.overrides +28 -0
  273. package/src/css/themes/default/modules/accordion.variables +100 -0
  274. package/src/css/themes/default/modules/chatroom.overrides +3 -0
  275. package/src/css/themes/default/modules/chatroom.variables +3 -0
  276. package/src/css/themes/default/modules/checkbox.overrides +36 -0
  277. package/src/css/themes/default/modules/checkbox.variables +193 -0
  278. package/src/css/themes/default/modules/dimmer.overrides +3 -0
  279. package/src/css/themes/default/modules/dimmer.variables +58 -0
  280. package/src/css/themes/default/modules/dropdown.overrides +59 -0
  281. package/src/css/themes/default/modules/dropdown.variables +379 -0
  282. package/src/css/themes/default/modules/embed.overrides +3 -0
  283. package/src/css/themes/default/modules/embed.variables +53 -0
  284. package/src/css/themes/default/modules/modal.overrides +3 -0
  285. package/src/css/themes/default/modules/modal.variables +192 -0
  286. package/src/css/themes/default/modules/nag.overrides +3 -0
  287. package/src/css/themes/default/modules/nag.variables +74 -0
  288. package/src/css/themes/default/modules/popup.overrides +3 -0
  289. package/src/css/themes/default/modules/popup.variables +138 -0
  290. package/src/css/themes/default/modules/progress.overrides +3 -0
  291. package/src/css/themes/default/modules/progress.variables +113 -0
  292. package/src/css/themes/default/modules/rating.overrides +68 -0
  293. package/src/css/themes/default/modules/rating.variables +103 -0
  294. package/src/css/themes/default/modules/search.overrides +3 -0
  295. package/src/css/themes/default/modules/search.variables +161 -0
  296. package/src/css/themes/default/modules/shape.overrides +3 -0
  297. package/src/css/themes/default/modules/shape.variables +40 -0
  298. package/src/css/themes/default/modules/sidebar.overrides +3 -0
  299. package/src/css/themes/default/modules/sidebar.variables +45 -0
  300. package/src/css/themes/default/modules/sticky.overrides +3 -0
  301. package/src/css/themes/default/modules/sticky.variables +7 -0
  302. package/src/css/themes/default/modules/tab.overrides +3 -0
  303. package/src/css/themes/default/modules/tab.variables +11 -0
  304. package/src/css/themes/default/modules/transition.overrides +962 -0
  305. package/src/css/themes/default/modules/transition.variables +10 -0
  306. package/src/css/themes/default/modules/video.overrides +3 -0
  307. package/src/css/themes/default/modules/video.variables +16 -0
  308. package/src/css/themes/default/views/ad.overrides +3 -0
  309. package/src/css/themes/default/views/ad.variables +13 -0
  310. package/src/css/themes/default/views/card.overrides +3 -0
  311. package/src/css/themes/default/views/card.variables +220 -0
  312. package/src/css/themes/default/views/comment.overrides +3 -0
  313. package/src/css/themes/default/views/comment.variables +98 -0
  314. package/src/css/themes/default/views/feed.overrides +3 -0
  315. package/src/css/themes/default/views/feed.variables +141 -0
  316. package/src/css/themes/default/views/item.overrides +3 -0
  317. package/src/css/themes/default/views/item.variables +157 -0
  318. package/src/css/themes/default/views/statistic.overrides +3 -0
  319. package/src/css/themes/default/views/statistic.variables +99 -0
  320. package/src/css/themes/duo/elements/loader.overrides +3 -0
  321. package/src/css/themes/duo/elements/loader.variables +6 -0
  322. package/src/css/themes/fixed-width/collections/grid.overrides +3 -0
  323. package/src/css/themes/fixed-width/collections/grid.variables +23 -0
  324. package/src/css/themes/fixed-width/modules/modal.overrides +3 -0
  325. package/src/css/themes/fixed-width/modules/modal.variables +37 -0
  326. package/src/css/themes/flat/collections/form.overrides +28 -0
  327. package/src/css/themes/flat/collections/form.variables +74 -0
  328. package/src/css/themes/flat/globals/site.overrides +3 -0
  329. package/src/css/themes/flat/globals/site.variables +107 -0
  330. package/src/css/themes/github/assets/fonts/octicons-local.ttf +0 -0
  331. package/src/css/themes/github/assets/fonts/octicons.svg +200 -0
  332. package/src/css/themes/github/assets/fonts/octicons.ttf +0 -0
  333. package/src/css/themes/github/assets/fonts/octicons.woff +0 -0
  334. package/src/css/themes/github/collections/breadcrumb.variables +11 -0
  335. package/src/css/themes/github/collections/form.overrides +16 -0
  336. package/src/css/themes/github/collections/form.variables +40 -0
  337. package/src/css/themes/github/collections/grid.variables +2 -0
  338. package/src/css/themes/github/collections/menu.overrides +7 -0
  339. package/src/css/themes/github/collections/menu.variables +61 -0
  340. package/src/css/themes/github/collections/message.overrides +11 -0
  341. package/src/css/themes/github/collections/message.variables +29 -0
  342. package/src/css/themes/github/collections/table.variables +8 -0
  343. package/src/css/themes/github/elements/button.overrides +4 -0
  344. package/src/css/themes/github/elements/button.variables +77 -0
  345. package/src/css/themes/github/elements/header.variables +9 -0
  346. package/src/css/themes/github/elements/icon.overrides +208 -0
  347. package/src/css/themes/github/elements/icon.variables +13 -0
  348. package/src/css/themes/github/elements/image.variables +5 -0
  349. package/src/css/themes/github/elements/input.overrides +32 -0
  350. package/src/css/themes/github/elements/input.variables +16 -0
  351. package/src/css/themes/github/elements/label.overrides +9 -0
  352. package/src/css/themes/github/elements/label.variables +4 -0
  353. package/src/css/themes/github/elements/segment.overrides +3 -0
  354. package/src/css/themes/github/elements/segment.variables +40 -0
  355. package/src/css/themes/github/elements/step.overrides +26 -0
  356. package/src/css/themes/github/elements/step.variables +26 -0
  357. package/src/css/themes/github/globals/site.variables +47 -0
  358. package/src/css/themes/github/modules/dropdown.overrides +53 -0
  359. package/src/css/themes/github/modules/dropdown.variables +35 -0
  360. package/src/css/themes/github/modules/popup.variables +12 -0
  361. package/src/css/themes/gmail/collections/message.overrides +0 -0
  362. package/src/css/themes/gmail/collections/message.variables +15 -0
  363. package/src/css/themes/instagram/views/card.overrides +12 -0
  364. package/src/css/themes/instagram/views/card.variables +23 -0
  365. package/src/css/themes/material/assets/fonts/icons.eot +0 -0
  366. package/src/css/themes/material/assets/fonts/icons.svg +2373 -0
  367. package/src/css/themes/material/assets/fonts/icons.ttf +0 -0
  368. package/src/css/themes/material/assets/fonts/icons.woff +0 -0
  369. package/src/css/themes/material/assets/fonts/icons.woff2 +0 -0
  370. package/src/css/themes/material/collections/menu.overrides +1 -0
  371. package/src/css/themes/material/collections/menu.variables +10 -0
  372. package/src/css/themes/material/elements/button.overrides +15 -0
  373. package/src/css/themes/material/elements/button.variables +97 -0
  374. package/src/css/themes/material/elements/header.overrides +15 -0
  375. package/src/css/themes/material/elements/header.variables +21 -0
  376. package/src/css/themes/material/elements/icon.overrides +934 -0
  377. package/src/css/themes/material/elements/icon.variables +11 -0
  378. package/src/css/themes/material/globals/site.overrides +0 -0
  379. package/src/css/themes/material/globals/site.variables +128 -0
  380. package/src/css/themes/material/modules/dropdown.overrides +5 -0
  381. package/src/css/themes/material/modules/dropdown.variables +20 -0
  382. package/src/css/themes/material/modules/modal.overrides +6 -0
  383. package/src/css/themes/material/modules/modal.variables +15 -0
  384. package/src/css/themes/pulsar/elements/loader.overrides +70 -0
  385. package/src/css/themes/pulsar/elements/loader.variables +7 -0
  386. package/src/css/themes/raised/elements/button.overrides +3 -0
  387. package/src/css/themes/raised/elements/button.variables +27 -0
  388. package/src/css/themes/resetcss/globals/reset.overrides +52 -0
  389. package/src/css/themes/resetcss/globals/reset.variables +3 -0
  390. package/src/css/themes/round/elements/button.overrides +0 -0
  391. package/src/css/themes/round/elements/button.variables +138 -0
  392. package/src/css/themes/rtl/globals/site.overrides +6 -0
  393. package/src/css/themes/rtl/globals/site.variables +14 -0
  394. package/src/css/themes/striped/modules/progress.overrides +29 -0
  395. package/src/css/themes/striped/modules/progress.variables +3 -0
  396. package/src/css/themes/timeline/views/feed.overrides +27 -0
  397. package/src/css/themes/timeline/views/feed.variables +36 -0
  398. package/src/css/themes/twitter/elements/button.overrides +13 -0
  399. package/src/css/themes/twitter/elements/button.variables +44 -0
  400. package/src/i18n/en.json +1 -0
  401. package/src/index.js +4 -0
  402. package/types/components/AccordionDataList.js.flow +3 -0
  403. package/types/components/AccordionList.js.flow +9 -2
  404. package/types/components/AccordionSelector.js.flow +93 -86
  405. package/types/components/ArrowButtons.js.flow +2 -0
  406. package/types/components/CancelButton.js.flow +1 -2
  407. package/types/components/ColorPickerModal.js.flow +36 -31
  408. package/types/components/DataList.js.flow +1 -0
  409. package/types/components/DataTable.js.flow +1 -0
  410. package/types/components/DataTableColumnSelector.js.flow +18 -2
  411. package/types/components/DataView.js.flow +36 -30
  412. package/types/components/DatabaseView.js.flow +126 -0
  413. package/types/components/DateInput.js.flow +1 -0
  414. package/types/components/DatePicker.js.flow +4 -0
  415. package/types/components/DropdownButton.js.flow +2 -0
  416. package/types/components/DropdownMenu.js.flow +11 -1
  417. package/types/components/EditModal.js.flow +1 -2
  418. package/types/components/FileUploadModal.js.flow +43 -38
  419. package/types/components/FuzzyDate.js.flow +114 -99
  420. package/types/components/HorizontalCards.js.flow +3 -0
  421. package/types/components/Items.js.flow +2 -0
  422. package/types/components/ItemsToggle.js.flow +4 -0
  423. package/types/components/List.js.flow +1 -0
  424. package/types/components/ListFilters.js.flow +115 -109
  425. package/types/components/ListTable.js.flow +7 -4
  426. package/types/components/LoginModal.js.flow +72 -65
  427. package/types/components/MediaList.js.flow +1 -0
  428. package/types/components/MenuBar.js.flow +2 -0
  429. package/types/components/ModalDropdown.js.flow +6 -3
  430. package/types/components/NestedAccordion.js.flow +1 -0
  431. package/types/components/PhotoViewer.js.flow +23 -15
  432. package/types/components/ReferenceCodeModal.js.flow +27 -21
  433. package/types/components/ReferenceTableModal.js.flow +61 -55
  434. package/types/components/RemoteDropdown.js.flow +1 -0
  435. package/types/components/Selectize.js.flow +50 -45
  436. package/types/components/TabbedModal.js.flow +30 -24
  437. package/types/components/VideoFrameSelector.js.flow +90 -78
  438. package/types/components/VideoPlayer.js.flow +58 -30
  439. package/types/components/ViewXML.js.flow +38 -32
  440. package/types/context/ModalContext.js.flow +5 -0
  441. package/types/css/theme.js.flow +5 -0
  442. package/types/index.js.flow +4 -0
  443. package/webpack.config.js +27 -1
package/package.json CHANGED
@@ -1,18 +1,20 @@
1
1
  {
2
2
  "name": "@performant-software/semantic-components",
3
- "version": "0.5.4",
3
+ "version": "0.5.7",
4
4
  "description": "A package of shared components based on the Semantic UI Framework.",
5
5
  "license": "MIT",
6
6
  "main": "./build/index.js",
7
- "style": "./build/styles.css",
7
+ "style": [
8
+ "./build/main.css",
9
+ "./build/semantic-ui.css"
10
+ ],
8
11
  "scripts": {
9
12
  "build": "webpack --mode production && flow-copy-source -v src types"
10
13
  },
11
14
  "dependencies": {
12
- "@performant-software/shared-components": "^0.5.4",
15
+ "@performant-software/shared-components": "^0.5.7",
13
16
  "@react-google-maps/api": "^2.8.1",
14
17
  "axios": "^0.26.1",
15
- "flow-copy-source": "^2.0.9",
16
18
  "i18next": "^19.4.4",
17
19
  "react-calendar": "^3.3.0",
18
20
  "react-color": "^2.18.1",
@@ -21,7 +23,7 @@
21
23
  "react-i18next": "^11.4.0",
22
24
  "react-syntax-highlighter": "^15.5.0",
23
25
  "react-uuid": "^1.0.2",
24
- "semantic-ui-css": "^2.4.1",
26
+ "semantic-ui-less": "^2.4.1",
25
27
  "semantic-ui-react": "^2.1.2",
26
28
  "underscore": "^1.13.2"
27
29
  },
@@ -30,7 +32,11 @@
30
32
  "react-dom": ">= 16.13.1 < 18.0.0"
31
33
  },
32
34
  "devDependencies": {
33
- "@performant-software/webpack-config": "^0.5.4",
35
+ "@performant-software/webpack-config": "^0.5.7",
36
+ "flow-copy-source": "^2.0.9",
37
+ "less": "^4.1.2",
38
+ "less-loader": "^11.0.0",
39
+ "mini-css-extract-plugin": "^2.6.0",
34
40
  "react": "^17.0.2",
35
41
  "react-dom": "^17.0.2"
36
42
  }
@@ -61,6 +61,7 @@ const Accordion = useList((props: AccordionProps) => {
61
61
  <Button.Group>
62
62
  { _.map(actions, (action, index) => (
63
63
  <Button
64
+ aria-label={action.name}
64
65
  basic
65
66
  color={action.color}
66
67
  icon={action.icon}
@@ -166,11 +167,13 @@ const AccordionDataList = (props: Props) => {
166
167
  }}
167
168
  >
168
169
  <Button
170
+ aria-label='Sort by'
169
171
  content={sortValue}
170
172
  icon={props.sortDirection === SORT_ASCENDING ? 'sort alphabet up' : 'sort alphabet down'}
171
173
  onClick={(e) => sortDropdown.current && sortDropdown.current.handleClick(e)}
172
174
  />
173
175
  <Dropdown
176
+ aria-label='Sort by toggle'
174
177
  className='button icon'
175
178
  floating
176
179
  options={_.map(props.sort, (sort) => ({
@@ -1,6 +1,6 @@
1
1
  // @flow
2
2
 
3
- import { Timer, Utility } from '@performant-software/shared-components';
3
+ import { Object as ObjectUtils, Timer } from '@performant-software/shared-components';
4
4
  import React, { Component } from 'react';
5
5
  import {
6
6
  Button,
@@ -154,7 +154,7 @@ class AccordionList extends Component<Props, State> {
154
154
  let copy;
155
155
  if (this.props.onCopy) {
156
156
  copy = this.props.onCopy(selectedItem);
157
- if (Utility.isPromise(copy)) {
157
+ if (ObjectUtils.isPromise(copy)) {
158
158
  copy.then((item) => {
159
159
  this.setState({ selectedItem: item, modalAdd: true });
160
160
  });
@@ -267,6 +267,7 @@ class AccordionList extends Component<Props, State> {
267
267
  className='accordion-header'
268
268
  >
269
269
  <Input
270
+ aria-label='Search'
270
271
  autoFocus
271
272
  className='search'
272
273
  icon='search'
@@ -329,6 +330,7 @@ class AccordionList extends Component<Props, State> {
329
330
 
330
331
  return (
331
332
  <Button
333
+ aria-label='Add'
332
334
  basic
333
335
  compact
334
336
  icon='plus'
@@ -349,6 +351,7 @@ class AccordionList extends Component<Props, State> {
349
351
 
350
352
  return (
351
353
  <Checkbox
354
+ aria-label='Select All'
352
355
  onClick={(e, el) => this.props.onSelectAll(el, toBeSelected, this.state.items, e)}
353
356
  checked={!toBeSelected.length}
354
357
  />
@@ -399,6 +402,7 @@ class AccordionList extends Component<Props, State> {
399
402
 
400
403
  return (
401
404
  <Button
405
+ aria-label='Delete'
402
406
  basic
403
407
  compact
404
408
  icon='trash'
@@ -421,6 +425,7 @@ class AccordionList extends Component<Props, State> {
421
425
 
422
426
  return (
423
427
  <Button
428
+ aria-label='Edit'
424
429
  basic
425
430
  compact
426
431
  icon='edit'
@@ -443,6 +448,7 @@ class AccordionList extends Component<Props, State> {
443
448
 
444
449
  return (
445
450
  <Button
451
+ aria-label='Copy'
446
452
  basic
447
453
  compact
448
454
  icon='copy'
@@ -551,6 +557,7 @@ class AccordionList extends Component<Props, State> {
551
557
  const selected = this.props.selectedRows.find((r) => r.id === item.id);
552
558
  return (
553
559
  <Checkbox
560
+ aria-label='Select'
554
561
  key={`select-checkbox-${item.id}`}
555
562
  className='row-select-checkbox'
556
563
  onClick={(e, el) => this.props.onRowSelect(el, item, e)}
@@ -15,6 +15,7 @@ import {
15
15
  import _ from 'underscore';
16
16
  import i18n from '../i18n/i18n';
17
17
  import EditModal from './EditModal';
18
+ import ModalContext from '../context/ModalContext';
18
19
  import NestedAccordion from './NestedAccordion';
19
20
  import SelectizeHeader from './SelectizeHeader';
20
21
  import Toaster from './Toaster';
@@ -39,7 +40,6 @@ type Props = {
39
40
  renderItem: (item: any) => string | Element<any>,
40
41
  selectedItems?: Array<any>,
41
42
  showToggle: (item: any) => boolean,
42
- t: (key: string) => string,
43
43
  title?: string
44
44
  };
45
45
 
@@ -187,93 +187,100 @@ class AccordionSelector extends Component<Props, State> {
187
187
  */
188
188
  render() {
189
189
  return (
190
- <Modal
191
- className='accordion-selector'
192
- open={this.props.open}
193
- size='small'
194
- >
195
- <Modal.Header>
196
- <Grid
197
- columns={2}
198
- verticalAlign='middle'
190
+ <ModalContext.Consumer>
191
+ { (mountNode) => (
192
+ <Modal
193
+ className='accordion-selector'
194
+ mountNode={mountNode}
195
+ open={this.props.open}
196
+ size='small'
199
197
  >
200
- <Grid.Column
201
- textAlign='left'
202
- >
203
- <Header
204
- content={this.props.title
205
- ? this.props.title
206
- : i18n.t('AccordionSelector.title')}
198
+ <Modal.Header>
199
+ <Grid
200
+ columns={2}
201
+ verticalAlign='middle'
202
+ >
203
+ <Grid.Column
204
+ textAlign='left'
205
+ width={7}
206
+ >
207
+ <Header
208
+ content={this.props.title
209
+ ? this.props.title
210
+ : i18n.t('AccordionSelector.title')}
211
+ />
212
+ </Grid.Column>
213
+ <Grid.Column
214
+ textAlign='right'
215
+ width={9}
216
+ >
217
+ <Input
218
+ aria-label='Search'
219
+ autoFocus
220
+ icon='search'
221
+ onKeyDown={Timer.clearSearchTimer.bind(this)}
222
+ onKeyUp={Timer.setSearchTimer.bind(this, this.onSearch.bind(this))}
223
+ onChange={this.onSearchChange.bind(this)}
224
+ size='mini'
225
+ type='text'
226
+ value={this.state.searchQuery}
227
+ />
228
+ { this.renderAddButton() }
229
+ </Grid.Column>
230
+ </Grid>
231
+ </Modal.Header>
232
+ <Modal.Content>
233
+ <SelectizeHeader
234
+ isSelected={(item) => this.state.selectedItem === item}
235
+ items={this.state.selectedItems}
236
+ onItemClick={this.onItemSelection.bind(this)}
237
+ renderItem={this.props.renderItem.bind(this)}
207
238
  />
208
- </Grid.Column>
209
- <Grid.Column
210
- textAlign='right'
211
- >
212
- <Input
213
- autoFocus
214
- icon='search'
215
- onKeyDown={Timer.clearSearchTimer.bind(this)}
216
- onKeyUp={Timer.setSearchTimer.bind(this, this.onSearch.bind(this))}
217
- onChange={this.onSearchChange.bind(this)}
218
- size='mini'
219
- type='text'
220
- value={this.state.searchQuery}
239
+ <NestedAccordion
240
+ getChildItems={this.props.getChildItems.bind(this, this.state.items)}
241
+ onItemClick={this.onItemClick.bind(this)}
242
+ onItemToggle={this.onItemToggle.bind(this)}
243
+ renderItem={this.props.renderItem.bind(this)}
244
+ renderRight={this.renderRight.bind(this)}
245
+ rootItems={this.props.getRootItems(this.state.items)}
246
+ showToggle={this.props.showToggle.bind(this)}
221
247
  />
222
- { this.renderAddButton() }
223
- </Grid.Column>
224
- </Grid>
225
- </Modal.Header>
226
- <Modal.Content>
227
- <SelectizeHeader
228
- isSelected={(item) => this.state.selectedItem === item}
229
- items={this.state.selectedItems}
230
- onItemClick={this.onItemSelection.bind(this)}
231
- renderItem={this.props.renderItem.bind(this)}
232
- />
233
- <NestedAccordion
234
- getChildItems={this.props.getChildItems.bind(this, this.state.items)}
235
- onItemClick={this.onItemClick.bind(this)}
236
- onItemToggle={this.onItemToggle.bind(this)}
237
- renderItem={this.props.renderItem.bind(this)}
238
- renderRight={this.renderRight.bind(this)}
239
- rootItems={this.props.getRootItems(this.state.items)}
240
- showToggle={this.props.showToggle.bind(this)}
241
- />
242
- { this.renderAddModal() }
243
- { this.state.saved && (
244
- <Toaster
245
- onDismiss={() => this.setState({ saved: false })}
246
- type={Toaster.MessageTypes.positive}
247
- >
248
- <Message.Header
249
- content={i18n.t('Common.messages.save.header')}
250
- />
251
- <Message.Content
252
- content={i18n.t('Common.messages.save.content')}
253
- />
254
- </Toaster>
255
- )}
256
- </Modal.Content>
257
- <Modal.Actions>
258
- <Button
259
- onClick={this.props.onSave.bind(this, this.state.selectedItems)}
260
- primary
261
- size='medium'
262
- type='submit'
263
- >
264
- { this.props.t('Common.buttons.save') }
265
- </Button>
266
- <Button
267
- inverted
268
- onClick={this.props.onClose.bind(this)}
269
- primary
270
- size='medium'
271
- type='button'
272
- >
273
- { this.props.t('Common.buttons.cancel') }
274
- </Button>
275
- </Modal.Actions>
276
- </Modal>
248
+ { this.renderAddModal() }
249
+ { this.state.saved && (
250
+ <Toaster
251
+ onDismiss={() => this.setState({ saved: false })}
252
+ type={Toaster.MessageTypes.positive}
253
+ >
254
+ <Message.Header
255
+ content={i18n.t('Common.messages.save.header')}
256
+ />
257
+ <Message.Content
258
+ content={i18n.t('Common.messages.save.content')}
259
+ />
260
+ </Toaster>
261
+ )}
262
+ </Modal.Content>
263
+ <Modal.Actions>
264
+ <Button
265
+ onClick={this.props.onSave.bind(this, this.state.selectedItems)}
266
+ primary
267
+ size='medium'
268
+ type='submit'
269
+ >
270
+ { i18n.t('Common.buttons.save') }
271
+ </Button>
272
+ <Button
273
+ basic
274
+ onClick={this.props.onClose.bind(this)}
275
+ size='medium'
276
+ type='button'
277
+ >
278
+ { i18n.t('Common.buttons.cancel') }
279
+ </Button>
280
+ </Modal.Actions>
281
+ </Modal>
282
+ )}
283
+ </ModalContext.Consumer>
277
284
  );
278
285
  }
279
286
 
@@ -291,7 +298,7 @@ class AccordionSelector extends Component<Props, State> {
291
298
  <Button
292
299
  basic
293
300
  className='add-button'
294
- content={this.props.t('Common.buttons.add')}
301
+ content={i18n.t('Common.buttons.add')}
295
302
  icon='plus'
296
303
  onClick={() => this.setState({ modalAdd: true })}
297
304
  />
@@ -23,11 +23,13 @@ const ArrowButtons = (props: Props) => (
23
23
  vertical
24
24
  >
25
25
  <Button
26
+ aria-label='Move Right'
26
27
  basic
27
28
  icon='arrow right'
28
29
  onClick={props.onRight.bind(this)}
29
30
  />
30
31
  <Button
32
+ aria-label='Move Left'
31
33
  basic
32
34
  icon='arrow left'
33
35
  onClick={props.onLeft.bind(this)}
@@ -11,10 +11,9 @@ type Props = {
11
11
 
12
12
  const CancelButton = (props: Props) => (
13
13
  <Button
14
+ basic
14
15
  disabled={props.disabled}
15
- inverted
16
16
  onClick={props.onClick.bind(this)}
17
- primary
18
17
  size='medium'
19
18
  type='button'
20
19
  >
@@ -4,6 +4,7 @@ import React, { Component } from 'react';
4
4
  import { SketchPicker } from 'react-color';
5
5
  import { Button, Modal } from 'semantic-ui-react';
6
6
  import i18n from '../i18n/i18n';
7
+ import ModalContext from '../context/ModalContext';
7
8
  import './ColorPickerModal.css';
8
9
 
9
10
  type Props = {
@@ -38,38 +39,42 @@ class ColorPickerModal extends Component<Props, State> {
38
39
  */
39
40
  render() {
40
41
  return (
41
- <Modal
42
- className='color-picker-modal'
43
- onClose={this.props.onClose.bind(this)}
44
- open={this.props.open}
45
- >
46
- <Modal.Content>
47
- <SketchPicker
48
- color={this.state.selectedColor}
49
- disableAlpha={false}
50
- onChangeComplete={(selectedColor) => this.setState({ selectedColor })}
51
- />
52
- </Modal.Content>
53
- <Modal.Actions>
54
- <Button
55
- onClick={this.props.onSave.bind(this, this.state.selectedColor)}
56
- primary
57
- size='medium'
58
- type='submit'
42
+ <ModalContext.Consumer>
43
+ { (mountNode) => (
44
+ <Modal
45
+ className='color-picker-modal'
46
+ mountNode={mountNode}
47
+ onClose={this.props.onClose.bind(this)}
48
+ open={this.props.open}
59
49
  >
60
- { i18n.t('Common.buttons.save') }
61
- </Button>
62
- <Button
63
- inverted
64
- onClick={this.props.onClose.bind(this)}
65
- primary
66
- size='medium'
67
- type='button'
68
- >
69
- { i18n.t('Common.buttons.cancel') }
70
- </Button>
71
- </Modal.Actions>
72
- </Modal>
50
+ <Modal.Content>
51
+ <SketchPicker
52
+ color={this.state.selectedColor}
53
+ disableAlpha={false}
54
+ onChangeComplete={(selectedColor) => this.setState({ selectedColor })}
55
+ />
56
+ </Modal.Content>
57
+ <Modal.Actions>
58
+ <Button
59
+ onClick={this.props.onSave.bind(this, this.state.selectedColor)}
60
+ primary
61
+ size='medium'
62
+ type='submit'
63
+ >
64
+ { i18n.t('Common.buttons.save') }
65
+ </Button>
66
+ <Button
67
+ basic
68
+ onClick={this.props.onClose.bind(this)}
69
+ size='medium'
70
+ type='button'
71
+ >
72
+ { i18n.t('Common.buttons.cancel') }
73
+ </Button>
74
+ </Modal.Actions>
75
+ </Modal>
76
+ )}
77
+ </ModalContext.Consumer>
73
78
  );
74
79
  }
75
80
  }
@@ -471,6 +471,7 @@ const useDataList = (WrappedComponent: ComponentType<any>) => (
471
471
 
472
472
  return (
473
473
  <Input
474
+ aria-label='Search'
474
475
  type='text'
475
476
  icon='search'
476
477
  input={{
@@ -240,6 +240,7 @@ class DataTable extends Component<Props, State> {
240
240
 
241
241
  const actionButton = (
242
242
  <Button
243
+ aria-label={action.name}
243
244
  basic
244
245
  compact
245
246
  color={action.color}
@@ -43,6 +43,17 @@ const useColumnSelector = (WrappedComponent: ComponentType<any>) => (
43
43
  };
44
44
  }
45
45
 
46
+ /**
47
+ * Reset the columns on the state when the props change.
48
+ *
49
+ * @param prevProps
50
+ */
51
+ componentDidUpdate(prevProps: Props): * {
52
+ if (prevProps.columns !== this.props.columns) {
53
+ this.setState({ columns: this.props.columns });
54
+ }
55
+ }
56
+
46
57
  /**
47
58
  * Toggles the hidden property for the passed column.
48
59
  *
@@ -111,11 +122,12 @@ const useColumnSelector = (WrappedComponent: ComponentType<any>) => (
111
122
  <>
112
123
  { this.props.renderListHeader && this.props.renderListHeader() }
113
124
  <Dropdown
125
+ aria-label='Select Columns'
114
126
  basic
115
127
  button
116
128
  icon='cog'
117
129
  className='icon configure-button open-right'
118
- simple
130
+ closeOnBlur={false}
119
131
  >
120
132
  <Dropdown.Menu>
121
133
  { this.state.columns
@@ -127,11 +139,15 @@ const useColumnSelector = (WrappedComponent: ComponentType<any>) => (
127
139
  key={c.name}
128
140
  onDrag={this.onDrag.bind(this)}
129
141
  >
130
- <Dropdown.Item>
142
+ <Dropdown.Item
143
+ aria-dropeffect='move'
144
+ onClick={(e) => e.stopPropagation()}
145
+ >
131
146
  <Icon
132
147
  name='bars'
133
148
  />
134
149
  <Checkbox
150
+ aria-label='Select Column'
135
151
  checked={!c.hidden}
136
152
  label={c.label}
137
153
  onClick={this.onColumnCheckbox.bind(this, c)}
@@ -15,6 +15,7 @@ import DropdownButton from './DropdownButton';
15
15
  import i18n from '../i18n/i18n';
16
16
  import MenuBar from './MenuBar';
17
17
  import MenuSidebar from './MenuSidebar';
18
+ import ModalContext from '../context/ModalContext';
18
19
  import useDataList, { SORT_ASCENDING, SORT_DESCENDING } from './DataList';
19
20
  import './DataView.css';
20
21
 
@@ -362,38 +363,43 @@ const DataView = (props: Props) => {
362
363
  )}
363
364
  </div>
364
365
  { selectedRecord && (
365
- <Modal
366
- as={Form}
367
- centered={false}
368
- className='data-view-modal'
369
- closeIcon
370
- onClose={() => setSelectedRecord(null)}
371
- open
372
- >
373
- <Modal.Header
374
- content={i18n.t('DataView.labels.details')}
375
- />
376
- <Modal.Content>
377
- <Grid
378
- columns={3}
379
- doubling
366
+ <ModalContext.Consumer>
367
+ { (mountNode) => (
368
+ <Modal
369
+ as={Form}
370
+ centered={false}
371
+ className='data-view-modal'
372
+ closeIcon
373
+ mountNode={mountNode}
374
+ onClose={() => setSelectedRecord(null)}
375
+ open
380
376
  >
381
- { _.map(mergeColumns([selectedRecord]), (column) => (
382
- <Grid.Column
383
- as={Form.Field}
384
- key={column.name}
377
+ <Modal.Header
378
+ content={i18n.t('DataView.labels.details')}
379
+ />
380
+ <Modal.Content>
381
+ <Grid
382
+ columns={3}
383
+ doubling
385
384
  >
386
- <span
387
- className='label'
388
- >
389
- { column.label }
390
- </span>
391
- { resolveValue(selectedRecord, column.name) }
392
- </Grid.Column>
393
- ))}
394
- </Grid>
395
- </Modal.Content>
396
- </Modal>
385
+ { _.map(mergeColumns([selectedRecord]), (column) => (
386
+ <Grid.Column
387
+ as={Form.Field}
388
+ key={column.name}
389
+ >
390
+ <span
391
+ className='label'
392
+ >
393
+ { column.label }
394
+ </span>
395
+ { resolveValue(selectedRecord, column.name) }
396
+ </Grid.Column>
397
+ ))}
398
+ </Grid>
399
+ </Modal.Content>
400
+ </Modal>
401
+ )}
402
+ </ModalContext.Consumer>
397
403
  )}
398
404
  </div>
399
405
  );