voom-presenters 0.2.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (447) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +1 -1
  3. data/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
  4. data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  5. data/.github/ISSUE_TEMPLATE/questions-support.md +10 -0
  6. data/.github/workflows/semantic-release.yml +42 -0
  7. data/.gitignore +3 -2
  8. data/.releaserc +15 -0
  9. data/.ruby-version +2 -1
  10. data/CHANGELOG.md +71 -108
  11. data/CONTRIBUTING.md +60 -0
  12. data/Gemfile +14 -4
  13. data/Gemfile.lock +93 -46
  14. data/Procfile +1 -0
  15. data/README.md +48 -39
  16. data/app/demo/components/avatars.pom +40 -0
  17. data/app/demo/components/cards.pom +11 -4
  18. data/app/demo/components/chips.pom +61 -54
  19. data/app/demo/components/content.pom +96 -16
  20. data/app/demo/components/dialogs.pom +175 -6
  21. data/app/demo/components/file_inputs.pom +38 -2
  22. data/app/demo/components/google_maps.pom +6 -1
  23. data/app/demo/components/headers.pom +80 -20
  24. data/app/demo/components/icons.pom +86 -55
  25. data/app/demo/components/image_lists.pom +100 -0
  26. data/app/demo/components/images.pom +45 -0
  27. data/app/demo/components/layouts.pom +3 -25
  28. data/app/demo/components/lists.pom +24 -4
  29. data/app/demo/components/menus.pom +14 -4
  30. data/app/demo/components/multi_selects.pom +29 -0
  31. data/app/demo/components/nav/menu.pom +39 -7
  32. data/app/demo/components/nav/pattern_menu.pom +2 -2
  33. data/app/demo/components/number_fields.pom +53 -0
  34. data/app/demo/components/padding.pom +96 -0
  35. data/app/demo/components/progress.pom +71 -0
  36. data/app/demo/components/selects.pom +45 -5
  37. data/app/demo/components/sliders.pom +5 -0
  38. data/app/demo/components/tab_bars.pom +15 -0
  39. data/app/demo/components/tables.pom +51 -40
  40. data/app/demo/components/text_areas.pom +23 -16
  41. data/app/demo/components/text_fields.pom +61 -15
  42. data/app/demo/components/toggles.pom +35 -4
  43. data/app/demo/components/tooltips.pom +8 -4
  44. data/app/demo/components/unordered_list.pom +81 -0
  45. data/app/demo/custom_css.pom +37 -0
  46. data/app/demo/events/actions/autocomplete.pom +32 -0
  47. data/app/demo/events/actions/clear.pom +5 -3
  48. data/app/demo/events/actions/dialogs/discard.pom +9 -0
  49. data/app/demo/events/actions/dialogs/show_dialog.pom +4 -2
  50. data/app/demo/events/actions/last_response.pom +40 -0
  51. data/app/demo/events/actions/prompt_if_dirty.pom +54 -0
  52. data/app/demo/events/content_as_form.pom +313 -0
  53. data/app/demo/events/nav/drawer.pom +7 -3
  54. data/app/demo/events/parallel.pom +44 -0
  55. data/app/demo/index.pom +5 -5
  56. data/app/demo/nav/top_nav.pom +10 -4
  57. data/app/demo/patterns/drag_drop.pom +89 -0
  58. data/app/demo/patterns/floating_card.pom +29 -0
  59. data/app/demo/patterns/search_select.pom +9 -7
  60. data/app/demo/plugins/chart.pom +254 -0
  61. data/app/demo/plugins/image_crop.pom +44 -0
  62. data/app/demo/plugins/index.pom +29 -0
  63. data/app/demo/plugins/nav/drawer.pom +19 -0
  64. data/app/demo/shared/context_list.pom +1 -1
  65. data/app/demo/styles.pom +3 -1
  66. data/bin/console +4 -4
  67. data/component-status.yml +15 -15
  68. data/config.ru +20 -10
  69. data/docs/settings.md +81 -0
  70. data/exe/presenters +3 -0
  71. data/lib/hash_ext/traverse.rb +14 -0
  72. data/lib/voom.rb +25 -0
  73. data/lib/voom/container_methods.rb +2 -2
  74. data/lib/voom/engine.rb +5 -0
  75. data/lib/voom/presenters/api/app.rb +31 -11
  76. data/lib/voom/presenters/api/router.rb +3 -49
  77. data/lib/voom/presenters/app.rb +3 -3
  78. data/lib/voom/presenters/cli.rb +28 -0
  79. data/lib/voom/presenters/demo/dragon_drop.rb +48 -0
  80. data/lib/voom/presenters/demo/echo.rb +2 -0
  81. data/lib/voom/presenters/demo/slow.rb +18 -0
  82. data/lib/voom/presenters/dsl/components/actions/autocomplete.rb +15 -0
  83. data/lib/voom/presenters/dsl/components/actions/base.rb +36 -8
  84. data/lib/voom/presenters/dsl/components/actions/clear.rb +0 -2
  85. data/lib/voom/presenters/dsl/components/actions/close_dialog.rb +17 -0
  86. data/lib/voom/presenters/dsl/components/actions/deletes.rb +0 -2
  87. data/lib/voom/presenters/dsl/components/actions/dialog.rb +0 -2
  88. data/lib/voom/presenters/dsl/components/actions/loads.rb +5 -6
  89. data/lib/voom/presenters/dsl/components/actions/navigates.rb +0 -2
  90. data/lib/voom/presenters/dsl/components/actions/post_message.rb +17 -0
  91. data/lib/voom/presenters/dsl/components/actions/posts.rb +5 -2
  92. data/lib/voom/presenters/dsl/components/actions/prompt_if_dirty.rb +15 -0
  93. data/lib/voom/presenters/dsl/components/actions/remove.rb +0 -2
  94. data/lib/voom/presenters/dsl/components/actions/replaces.rb +4 -4
  95. data/lib/voom/presenters/dsl/components/actions/snackbar.rb +0 -2
  96. data/lib/voom/presenters/dsl/components/actions/stepper.rb +0 -2
  97. data/lib/voom/presenters/dsl/components/actions/toggle_disabled.rb +15 -0
  98. data/lib/voom/presenters/dsl/components/actions/toggle_visibility.rb +0 -2
  99. data/lib/voom/presenters/dsl/components/actions/updates.rb +5 -2
  100. data/lib/voom/presenters/dsl/components/avatar.rb +4 -8
  101. data/lib/voom/presenters/dsl/components/badge.rb +0 -2
  102. data/lib/voom/presenters/dsl/components/base.rb +25 -18
  103. data/lib/voom/presenters/dsl/components/button.rb +15 -11
  104. data/lib/voom/presenters/dsl/components/card.rb +49 -36
  105. data/lib/voom/presenters/dsl/components/checkbox.rb +0 -2
  106. data/lib/voom/presenters/dsl/components/chip.rb +5 -7
  107. data/lib/voom/presenters/dsl/components/chipset.rb +33 -0
  108. data/lib/voom/presenters/dsl/components/content.rb +28 -18
  109. data/lib/voom/presenters/dsl/components/datetime_base.rb +0 -2
  110. data/lib/voom/presenters/dsl/components/datetime_field.rb +0 -2
  111. data/lib/voom/presenters/dsl/components/dialog.rb +36 -12
  112. data/lib/voom/presenters/dsl/components/drawer.rb +9 -6
  113. data/lib/voom/presenters/dsl/components/event.rb +106 -65
  114. data/lib/voom/presenters/dsl/components/event_base.rb +1 -3
  115. data/lib/voom/presenters/dsl/components/expansion_panel.rb +0 -3
  116. data/lib/voom/presenters/dsl/components/file_input.rb +18 -6
  117. data/lib/voom/presenters/dsl/components/footer.rb +2 -2
  118. data/lib/voom/presenters/dsl/components/form.rb +2 -17
  119. data/lib/voom/presenters/dsl/components/grid.rb +52 -50
  120. data/lib/voom/presenters/dsl/components/header.rb +17 -1
  121. data/lib/voom/presenters/dsl/components/hidden_field.rb +0 -2
  122. data/lib/voom/presenters/dsl/components/icon.rb +2 -4
  123. data/lib/voom/presenters/dsl/components/icon_base.rb +5 -7
  124. data/lib/voom/presenters/dsl/components/icon_toggle.rb +2 -4
  125. data/lib/voom/presenters/dsl/components/image.rb +61 -13
  126. data/lib/voom/presenters/dsl/components/image_list.rb +43 -0
  127. data/lib/voom/presenters/dsl/components/input.rb +14 -5
  128. data/lib/voom/presenters/dsl/components/link.rb +33 -0
  129. data/lib/voom/presenters/dsl/components/list.rb +6 -13
  130. data/lib/voom/presenters/dsl/components/lists/action.rb +9 -11
  131. data/lib/voom/presenters/dsl/components/lists/actions.rb +0 -3
  132. data/lib/voom/presenters/dsl/components/lists/line.rb +27 -15
  133. data/lib/voom/presenters/dsl/components/menu.rb +51 -9
  134. data/lib/voom/presenters/dsl/components/mixins/append.rb +2 -2
  135. data/lib/voom/presenters/dsl/components/mixins/attaches.rb +0 -2
  136. data/lib/voom/presenters/dsl/components/mixins/avatar.rb +1 -3
  137. data/lib/voom/presenters/dsl/components/mixins/chips.rb +0 -2
  138. data/lib/voom/presenters/dsl/components/mixins/chipset.rb +19 -0
  139. data/lib/voom/presenters/dsl/components/mixins/common.rb +13 -14
  140. data/lib/voom/presenters/dsl/components/mixins/dialogs.rb +0 -2
  141. data/lib/voom/presenters/dsl/components/mixins/event.rb +0 -2
  142. data/lib/voom/presenters/dsl/components/mixins/image_lists.rb +15 -0
  143. data/lib/voom/presenters/dsl/components/mixins/last_response.rb +48 -0
  144. data/lib/voom/presenters/dsl/components/mixins/padding.rb +42 -0
  145. data/lib/voom/presenters/dsl/components/mixins/progress.rb +16 -0
  146. data/lib/voom/presenters/dsl/components/mixins/selects.rb +6 -0
  147. data/lib/voom/presenters/dsl/components/mixins/tab_bars.rb +2 -0
  148. data/lib/voom/presenters/dsl/components/mixins/tables.rb +15 -0
  149. data/lib/voom/presenters/dsl/components/mixins/text_fields.rb +5 -0
  150. data/lib/voom/presenters/dsl/components/mixins/toggles.rb +0 -2
  151. data/lib/voom/presenters/dsl/components/mixins/typography.rb +55 -8
  152. data/lib/voom/presenters/dsl/components/mixins/yield_to.rb +2 -2
  153. data/lib/voom/presenters/dsl/components/multi_select.rb +56 -0
  154. data/lib/voom/presenters/dsl/components/number_field.rb +20 -0
  155. data/lib/voom/presenters/dsl/components/page_title.rb +31 -0
  156. data/lib/voom/presenters/dsl/components/progress.rb +27 -0
  157. data/lib/voom/presenters/dsl/components/radio_button.rb +0 -1
  158. data/lib/voom/presenters/dsl/components/rich_text_area.rb +5 -11
  159. data/lib/voom/presenters/dsl/components/select.rb +18 -9
  160. data/lib/voom/presenters/dsl/components/separator.rb +21 -0
  161. data/lib/voom/presenters/dsl/components/slider.rb +6 -7
  162. data/lib/voom/presenters/dsl/components/stepper.rb +0 -10
  163. data/lib/voom/presenters/dsl/components/switch.rb +0 -2
  164. data/lib/voom/presenters/dsl/components/tab_bar.rb +0 -3
  165. data/lib/voom/presenters/dsl/components/table.rb +39 -20
  166. data/lib/voom/presenters/dsl/components/text_area.rb +1 -3
  167. data/lib/voom/presenters/dsl/components/text_field.rb +54 -11
  168. data/lib/voom/presenters/dsl/components/time_field.rb +0 -2
  169. data/lib/voom/presenters/dsl/components/toggle_base.rb +8 -6
  170. data/lib/voom/presenters/dsl/components/typography.rb +4 -4
  171. data/lib/voom/presenters/dsl/components/unordered_list.rb +50 -0
  172. data/lib/voom/presenters/dsl/definer.rb +0 -4
  173. data/lib/voom/presenters/dsl/definition.rb +6 -5
  174. data/lib/voom/presenters/dsl/protect_from_forgery.rb +43 -0
  175. data/lib/voom/presenters/dsl/user_interface.rb +37 -22
  176. data/lib/voom/presenters/errors.rb +1 -0
  177. data/lib/voom/presenters/errors/invalid_dsl.rb +8 -0
  178. data/lib/voom/presenters/errors/parameter_validation.rb +1 -3
  179. data/lib/voom/presenters/generators/inflectors.rb +59 -0
  180. data/lib/voom/presenters/generators/plugin.rb +115 -0
  181. data/lib/voom/presenters/generators/templates/plugin/.gitignore +12 -0
  182. data/lib/voom/presenters/generators/templates/plugin/Gemfile +6 -0
  183. data/lib/voom/presenters/generators/templates/plugin/LICENSE.txt.tt +21 -0
  184. data/lib/voom/presenters/generators/templates/plugin/README.md +253 -0
  185. data/lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/components/actions/action.rb.tt +16 -0
  186. data/lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/components/actions/dsl.rb.tt +22 -0
  187. data/lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/components/component.rb.tt +18 -0
  188. data/lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/components/dsl.rb.tt +19 -0
  189. data/lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/helpers/helper.rb.tt +15 -0
  190. data/lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/plugin.rb.tt +9 -0
  191. data/lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/web_client/components/actions/data.rb.tt +17 -0
  192. data/lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/web_client/components/render.rb.tt +23 -0
  193. data/lib/voom/presenters/generators/templates/plugin/presenter_plugin.gemspec.tt +21 -0
  194. data/lib/voom/presenters/generators/templates/plugin/views/assets/css/components/component.css.tt +21 -0
  195. data/lib/voom/presenters/generators/templates/plugin/views/assets/js/components/actions/action.js.tt +15 -0
  196. data/lib/voom/presenters/generators/templates/plugin/views/assets/js/components/component.js.tt +39 -0
  197. data/lib/voom/presenters/generators/templates/plugin/views/components/component.erb.tt +14 -0
  198. data/lib/voom/presenters/generators/templates/plugin/views/components/component_header.erb.tt +20 -0
  199. data/lib/voom/presenters/helpers.rb +2 -8
  200. data/lib/voom/presenters/helpers/inflector.rb +1 -1
  201. data/lib/voom/presenters/helpers/rails.rb +15 -8
  202. data/lib/voom/presenters/helpers/redact.rb +13 -0
  203. data/lib/voom/presenters/helpers/route.rb +12 -5
  204. data/lib/voom/presenters/pluggable.rb +37 -0
  205. data/lib/voom/presenters/plugins.rb +7 -0
  206. data/lib/voom/presenters/plugins/google_maps.rb +24 -0
  207. data/lib/voom/presenters/plugins/google_maps/google_map.erb +10 -0
  208. data/lib/voom/presenters/{dsl/components → plugins/google_maps}/google_map.rb +4 -3
  209. data/lib/voom/presenters/{dsl.rb → registry.rb} +13 -15
  210. data/lib/voom/presenters/router.rb +59 -0
  211. data/lib/voom/presenters/settings.rb +18 -8
  212. data/lib/voom/presenters/version.rb +3 -1
  213. data/lib/voom/presenters/web_client/app.rb +86 -29
  214. data/lib/voom/presenters/web_client/component_decorator_factory.rb +27 -0
  215. data/lib/voom/presenters/web_client/component_html_decorator.rb +50 -0
  216. data/lib/voom/presenters/web_client/component_renderer.rb +49 -0
  217. data/lib/voom/presenters/web_client/custom_css.rb +65 -0
  218. data/lib/voom/presenters/web_client/{markdown_render.rb → custom_render.rb} +5 -3
  219. data/lib/voom/presenters/web_client/helpers/expand_hash.rb +19 -0
  220. data/lib/voom/presenters/web_client/helpers/form_helpers.rb +14 -0
  221. data/lib/voom/presenters/web_client/helpers/padding_helpers.rb +21 -0
  222. data/lib/voom/presenters/web_client/plugin_headers.rb +37 -0
  223. data/lib/voom/presenters/web_client/router.rb +3 -54
  224. data/lib/voom/railtie.rb +37 -0
  225. data/lib/voom/symbol/to_str.rb +3 -3
  226. data/lib/voom/trace.rb +0 -2
  227. data/presenters.gemspec +10 -6
  228. data/public/bundle.css +18256 -0
  229. data/public/bundle.js +60106 -0
  230. data/public/img/demo/avatar.jpg +0 -0
  231. data/public/presenters/custom_css.css +26 -0
  232. data/public/wc.js +52861 -0
  233. data/scripts/build.sh +10 -0
  234. data/views/mdc/.eslintrc.yml +1 -0
  235. data/views/mdc/.nvmrc +1 -0
  236. data/views/mdc/assets/js/app.js +13 -2
  237. data/views/mdc/assets/js/components/base-component.js +147 -12
  238. data/views/mdc/assets/js/components/base-container.js +54 -14
  239. data/views/mdc/assets/js/components/base-toggle.js +56 -0
  240. data/views/mdc/assets/js/components/button.js +74 -5
  241. data/views/mdc/assets/js/components/cards.js +3 -3
  242. data/views/mdc/assets/js/components/checkboxes.js +7 -30
  243. data/views/mdc/assets/js/components/chips.js +76 -12
  244. data/views/mdc/assets/js/components/content.js +5 -4
  245. data/views/mdc/assets/js/components/data-tables.js +11 -34
  246. data/views/mdc/assets/js/components/datetime.js +29 -6
  247. data/views/mdc/assets/js/components/dialogs.js +128 -31
  248. data/views/mdc/assets/js/components/drag_n_drop.js +182 -0
  249. data/views/mdc/assets/js/components/drawer.js +43 -0
  250. data/views/mdc/assets/js/components/events.js +190 -73
  251. data/views/mdc/assets/js/components/events/action_parameter.js +62 -0
  252. data/views/mdc/assets/js/components/events/action_parameter.test.js +62 -0
  253. data/views/mdc/assets/js/components/events/autocomplete.js +94 -0
  254. data/views/mdc/assets/js/components/events/base.js +139 -23
  255. data/views/mdc/assets/js/components/events/clears.js +15 -12
  256. data/views/mdc/assets/js/components/events/close_dialog.js +50 -0
  257. data/views/mdc/assets/js/components/events/dialog.js +32 -14
  258. data/views/mdc/assets/js/components/events/encode.js +8 -0
  259. data/views/mdc/assets/js/components/events/errors.js +175 -92
  260. data/views/mdc/assets/js/components/events/loads.js +50 -11
  261. data/views/mdc/assets/js/components/events/navigates.js +17 -15
  262. data/views/mdc/assets/js/components/events/plugin.js +18 -0
  263. data/views/mdc/assets/js/components/events/post_message.js +21 -0
  264. data/views/mdc/assets/js/components/events/posts.js +147 -65
  265. data/views/mdc/assets/js/components/events/prompt_if_dirty.js +67 -0
  266. data/views/mdc/assets/js/components/events/removes.js +7 -6
  267. data/views/mdc/assets/js/components/events/replaces.js +87 -33
  268. data/views/mdc/assets/js/components/events/snackbar.js +10 -10
  269. data/views/mdc/assets/js/components/events/stepper.js +8 -10
  270. data/views/mdc/assets/js/components/events/toggle_disabled.js +41 -0
  271. data/views/mdc/assets/js/components/events/toggle_visibility.js +57 -15
  272. data/views/mdc/assets/js/components/file-inputs.js +68 -21
  273. data/views/mdc/assets/js/components/form-fields.js +16 -0
  274. data/views/mdc/assets/js/components/forms.js +3 -3
  275. data/views/mdc/assets/js/components/get_event_target.js +15 -0
  276. data/views/mdc/assets/js/components/grid.js +7 -6
  277. data/views/mdc/assets/js/components/header.js +20 -0
  278. data/views/mdc/assets/js/components/hidden-fields.js +19 -8
  279. data/views/mdc/assets/js/components/icon-toggles.js +7 -7
  280. data/views/mdc/assets/js/components/images.js +19 -0
  281. data/views/mdc/assets/js/components/initialize.js +54 -27
  282. data/views/mdc/assets/js/components/lists.js +9 -4
  283. data/views/mdc/assets/js/components/menus.js +60 -13
  284. data/views/mdc/assets/js/components/mixins/dirtyable.js +22 -0
  285. data/views/mdc/assets/js/components/mixins/event-handler.js +7 -7
  286. data/views/mdc/assets/js/components/mixins/visibility-observer.js +22 -21
  287. data/views/mdc/assets/js/components/multi-select.js +75 -0
  288. data/views/mdc/assets/js/components/plugins.js +86 -0
  289. data/views/mdc/assets/js/components/progress.js +31 -0
  290. data/views/mdc/assets/js/components/radios.js +6 -31
  291. data/views/mdc/assets/js/components/rich-text-area.js +217 -33
  292. data/views/mdc/assets/js/components/rich-text-area/horizontal-rule-blot.js +23 -0
  293. data/views/mdc/assets/js/components/root_document.js +5 -0
  294. data/views/mdc/assets/js/components/selects.js +18 -8
  295. data/views/mdc/assets/js/components/sliders.js +23 -12
  296. data/views/mdc/assets/js/components/snackbar.js +11 -8
  297. data/views/mdc/assets/js/components/steppers.js +3 -3
  298. data/views/mdc/assets/js/components/switches.js +6 -29
  299. data/views/mdc/assets/js/components/tab-bars.js +18 -4
  300. data/views/mdc/assets/js/components/text-fields.js +94 -22
  301. data/views/mdc/assets/js/components/tooltip.js +17 -0
  302. data/views/mdc/assets/js/components/typography.js +28 -0
  303. data/views/mdc/assets/js/components/uninitialize.js +7 -0
  304. data/views/mdc/assets/js/wc.js +111 -0
  305. data/views/mdc/assets/scss/app.scss +13 -5
  306. data/views/mdc/assets/scss/components/avatar.scss +51 -7
  307. data/views/mdc/assets/scss/components/button.scss +7 -9
  308. data/views/mdc/assets/scss/components/card.scss +6 -5
  309. data/views/mdc/assets/scss/components/chip.scss +4 -0
  310. data/views/mdc/assets/scss/components/content.scss +25 -0
  311. data/views/mdc/assets/scss/components/data-table.scss +12 -1
  312. data/views/mdc/assets/scss/components/datetime.scss +1 -2
  313. data/views/mdc/assets/scss/components/dialog.scss +7 -2
  314. data/views/mdc/assets/scss/components/drag_n_drop.scss +17 -0
  315. data/views/mdc/assets/scss/components/drawer.scss +82 -0
  316. data/views/mdc/assets/scss/components/expansion-panel.scss +2 -2
  317. data/views/mdc/assets/scss/components/fab.scss +23 -5
  318. data/views/mdc/assets/scss/components/file-input.scss +10 -14
  319. data/views/mdc/assets/scss/components/grid.scss +32 -17
  320. data/views/mdc/assets/scss/components/header.scss +21 -0
  321. data/views/mdc/assets/scss/components/icon-button-toggles.scss +2 -0
  322. data/views/mdc/assets/scss/components/icon.scss +23 -0
  323. data/views/mdc/assets/scss/components/image-list.scss +18 -0
  324. data/views/mdc/assets/scss/components/image.scss +13 -21
  325. data/views/mdc/assets/scss/components/list.scss +9 -3
  326. data/views/mdc/assets/scss/components/menu.scss +13 -3
  327. data/views/mdc/assets/scss/components/multi-select.scss +44 -0
  328. data/views/mdc/assets/scss/components/progress.scss +1 -0
  329. data/views/mdc/assets/scss/components/rich-text-area.scss +38 -2
  330. data/views/mdc/assets/scss/components/select.scss +6 -3
  331. data/views/mdc/assets/scss/components/separator.scss +3 -0
  332. data/views/mdc/assets/scss/components/switch.scss +10 -0
  333. data/views/mdc/assets/scss/components/textfield.scss +8 -4
  334. data/views/mdc/assets/scss/components/tooltip.scss +3 -0
  335. data/views/mdc/assets/scss/components/typography.scss +6 -0
  336. data/views/mdc/assets/scss/components/unordered-lists.scss +17 -0
  337. data/views/mdc/assets/scss/material.blue_grey-orange.min.css +1 -1
  338. data/views/mdc/assets/scss/media.scss +39 -0
  339. data/views/mdc/assets/scss/palette.scss +16 -0
  340. data/views/mdc/assets/scss/styles.scss +39 -1
  341. data/views/mdc/assets/scss/theme.scss +19 -2
  342. data/views/mdc/body/dismissable-drawer.erb +34 -0
  343. data/views/mdc/body/drawer/divider.erb +1 -0
  344. data/views/mdc/body/drawer/item.erb +13 -0
  345. data/views/mdc/body/drawer/label.erb +1 -0
  346. data/views/mdc/body/drawers/menu.erb +1 -1
  347. data/views/mdc/body/footers/menu_item.erb +2 -2
  348. data/views/mdc/body/header.erb +38 -31
  349. data/views/mdc/body/modal-drawer.erb +35 -0
  350. data/views/mdc/body/snackbar.erb +11 -5
  351. data/views/mdc/components/actions/autocomplete.rb +8 -0
  352. data/views/mdc/components/actions/close_dialog.rb +10 -0
  353. data/views/mdc/components/actions/loads.rb +7 -1
  354. data/views/mdc/components/actions/navigates.rb +1 -1
  355. data/views/mdc/components/actions/post.rb +4 -7
  356. data/views/mdc/components/actions/post_message.rb +10 -0
  357. data/views/mdc/components/actions/prompt_if_dirty.rb +17 -0
  358. data/views/mdc/components/actions/replaces.rb +5 -1
  359. data/views/mdc/components/actions/resolver.rb +39 -0
  360. data/views/mdc/components/actions/snackbar.rb +3 -1
  361. data/views/mdc/components/actions/toggle_disabled.rb +10 -0
  362. data/views/mdc/components/avatar.erb +12 -7
  363. data/views/mdc/components/badge.erb +1 -1
  364. data/views/mdc/components/button.erb +2 -3
  365. data/views/mdc/components/buttons/button.erb +12 -12
  366. data/views/mdc/components/buttons/fab.erb +3 -2
  367. data/views/mdc/components/buttons/icon.erb +5 -5
  368. data/views/mdc/components/buttons/image.erb +4 -3
  369. data/views/mdc/components/card.erb +67 -44
  370. data/views/mdc/components/checkbox.erb +32 -35
  371. data/views/mdc/components/chip.erb +38 -30
  372. data/views/mdc/components/chipset.erb +18 -0
  373. data/views/mdc/components/content.erb +35 -14
  374. data/views/mdc/components/datetime.erb +6 -19
  375. data/views/mdc/components/dialog.erb +45 -25
  376. data/views/mdc/components/drag_and_drop/drag_and_drop.rb +16 -0
  377. data/views/mdc/components/event.erb +3 -5
  378. data/views/mdc/components/expansion_panel.erb +8 -6
  379. data/views/mdc/components/file_input.erb +14 -10
  380. data/views/mdc/components/form.erb +4 -19
  381. data/views/mdc/components/grid.erb +20 -17
  382. data/views/mdc/components/hidden_field.erb +3 -4
  383. data/views/mdc/components/icon.erb +7 -5
  384. data/views/mdc/components/icon_toggle.erb +9 -8
  385. data/views/mdc/components/image.erb +23 -5
  386. data/views/mdc/components/image_list.erb +38 -0
  387. data/views/mdc/components/link.erb +3 -13
  388. data/views/mdc/components/list.erb +4 -2
  389. data/views/mdc/components/list/avatar.erb +2 -1
  390. data/views/mdc/components/list/header.erb +5 -3
  391. data/views/mdc/components/list/hidden_field.erb +3 -0
  392. data/views/mdc/components/list/icon.erb +2 -1
  393. data/views/mdc/components/list/line.erb +19 -9
  394. data/views/mdc/components/list/menu.erb +7 -2
  395. data/views/mdc/components/list/separator.erb +1 -1
  396. data/views/mdc/components/menu.erb +14 -6
  397. data/views/mdc/components/multi_select.erb +33 -0
  398. data/views/mdc/components/number_field.erb +38 -0
  399. data/views/mdc/components/page_title.erb +2 -2
  400. data/views/mdc/components/progress.erb +11 -0
  401. data/views/mdc/components/radio_button.erb +5 -6
  402. data/views/mdc/components/render.erb +2 -3
  403. data/views/mdc/components/rich_text_area.erb +13 -10
  404. data/views/mdc/components/select.erb +28 -12
  405. data/views/mdc/components/separator.erb +3 -0
  406. data/views/mdc/components/shared/hint_error_display.erb +9 -0
  407. data/views/mdc/components/shared/input_label.erb +7 -0
  408. data/views/mdc/components/slider.erb +3 -1
  409. data/views/mdc/components/stepper.erb +1 -1
  410. data/views/mdc/components/stepper/step.erb +1 -1
  411. data/views/mdc/components/switch.erb +8 -7
  412. data/views/mdc/components/tab_bar.erb +7 -1
  413. data/views/mdc/components/table.erb +26 -13
  414. data/views/mdc/components/table/checkbox.erb +6 -3
  415. data/views/mdc/components/table/column.erb +18 -0
  416. data/views/mdc/components/table/footer.erb +8 -0
  417. data/views/mdc/components/table/header.erb +5 -4
  418. data/views/mdc/components/table/pagination.erb +2 -6
  419. data/views/mdc/components/table/row.erb +5 -5
  420. data/views/mdc/components/text_area.erb +9 -11
  421. data/views/mdc/components/text_field.erb +29 -37
  422. data/views/mdc/components/tooltip.erb +2 -2
  423. data/views/mdc/components/typography.erb +7 -5
  424. data/views/mdc/components/unordered_list.erb +10 -0
  425. data/views/mdc/components/unordered_list/icon.erb +3 -0
  426. data/views/mdc/components/unordered_list/list_item.erb +7 -0
  427. data/views/mdc/layout.erb +41 -29
  428. data/views/mdc/package-lock.json +2241 -1332
  429. data/views/mdc/package.json +47 -29
  430. data/views/mdc/web.erb +4 -0
  431. data/views/mdc/webpack.config.js +13 -1
  432. metadata +228 -32
  433. data/app/demo/component_status.pom +0 -76
  434. data/lib/voom-presenters.rb +0 -9
  435. data/lib/voom/presenters-engine.rb +0 -44
  436. data/lib/voom/presenters.rb +0 -19
  437. data/public/.gitignore +0 -2
  438. data/scripts/bump.sh +0 -5
  439. data/scripts/changelog.sh +0 -5
  440. data/scripts/deploy-demo.sh +0 -3
  441. data/scripts/release.sh +0 -5
  442. data/scripts/tag.sh +0 -5
  443. data/views/mdc/assets/js/dialog-polyfill.js +0 -738
  444. data/views/mdc/assets/scss/components/icon-toggles.scss +0 -9
  445. data/views/mdc/assets/scss/components/vendor/flatpickr.min.css +0 -13
  446. data/views/mdc/body/drawer.erb +0 -18
  447. data/views/mdc/components/google_map.erb +0 -9
@@ -4,14 +4,14 @@
4
4
  "test": "jest"
5
5
  },
6
6
  "devDependencies": {
7
- "@types/jest": "^23.3.9",
7
+ "@types/jest": "^23.3.10",
8
8
  "babel-core": "^6.26.3",
9
9
  "babel-loader": "^7.1.5",
10
10
  "babel-plugin-transform-es2015-modules-commonjs": "^6.26.2",
11
11
  "babel-preset-env": "^1.7.0",
12
12
  "babel-preset-es2015": "^6.24.1",
13
13
  "css-loader": "^0.28.11",
14
- "eslint": "^5.9.0",
14
+ "eslint": "^5.10.0",
15
15
  "eslint-config-google": "^0.11.0",
16
16
  "eslint-plugin-import": "^2.14.0",
17
17
  "extract-loader": "^2.0.1",
@@ -19,40 +19,58 @@
19
19
  "hoek": "^5.0.4",
20
20
  "jest": "^23.6.0",
21
21
  "l": "^0.6.0",
22
- "node-sass": "^4.10.0",
22
+ "node-sass": "^4.13.1",
23
23
  "sass-loader": "^7.1.0",
24
24
  "webpack": "^3.12.0",
25
- "webpack-dev-server": "^3.1.10"
25
+ "webpack-dev-server": "^3.2.0"
26
26
  },
27
27
  "dependencies": {
28
- "@material/base": "^0.35.0",
29
- "@material/button": "^0.38.0",
30
- "@material/card": "^0.38.0",
31
- "@material/chips": "^0.38.0",
32
- "@material/fab": "^0.38.0",
33
- "@material/floating-label": "^0.38.0",
34
- "@material/form-field": "^0.38.0",
35
- "@material/icon-toggle": "^0.38.0",
36
- "@material/layout-grid": "^0.34.0",
37
- "@material/list": "^0.38.0",
38
- "@material/menu": "^0.38.0",
39
- "@material/radio": "^0.38.0",
40
- "@material/ripple": "^0.38.0",
41
- "@material/select": "^0.38.0",
42
- "@material/slider": "^0.38.0",
43
- "@material/snackbar": "^0.38.0",
44
- "@material/switch": "^0.38.1",
45
- "@material/tab-bar": "^0.39.3",
46
- "@material/textfield": "^0.38.0",
47
- "@material/toolbar": "^0.38.0",
48
- "@material/typography": "^0.38.0",
28
+ "@material/animation": "^3.1.0",
29
+ "@material/base": "^3.1.0",
30
+ "@material/button": "^3.2.0",
31
+ "@material/card": "^3.2.0",
32
+ "@material/chips": "^3.2.0",
33
+ "@material/data-table": "^3.2.0",
34
+ "@material/dialog": "^3.2.0",
35
+ "@material/drawer": "^3.2.0",
36
+ "@material/elevation": "^3.1.0",
37
+ "@material/fab": "^3.2.0",
38
+ "@material/floating-label": "^3.2.0",
39
+ "@material/form-field": "^3.2.0",
40
+ "@material/icon-button": "^3.2.0",
41
+ "@material/image-list": "^3.1.0",
42
+ "@material/layout-grid": "^3.1.0",
43
+ "@material/line-ripple": "^3.1.0",
44
+ "@material/linear-progress": "^3.2.0",
45
+ "@material/list": "^3.2.0",
46
+ "@material/menu": "^3.2.0",
47
+ "@material/menu-surface": "^3.2.0",
48
+ "@material/notched-outline": "^3.2.0",
49
+ "@material/radio": "^3.2.0",
50
+ "@material/ripple": "^3.2.0",
51
+ "@material/select": "^3.2.0",
52
+ "@material/slider": "^3.2.0",
53
+ "@material/snackbar": "^3.2.0",
54
+ "@material/switch": "^3.2.0",
55
+ "@material/tab-bar": "^3.2.0",
56
+ "@material/tab-scroller": "^3.2.0",
57
+ "@material/textfield": "^3.2.0",
58
+ "@material/toolbar": "^2.3.0",
59
+ "@material/top-app-bar": "^3.2.0",
60
+ "@material/typography": "^3.1.0",
61
+ "@material/shape": "^3.1.0",
62
+ "@webcomponents/webcomponentsjs": "^2.3.0",
49
63
  "babel-polyfill": "^6.26.0",
64
+ "core-js": "^3.3.2",
50
65
  "detect-browser": "^3.0.1",
51
- "flatpickr": "^4.5.2",
66
+ "flatpickr": "^4.6.2",
52
67
  "material-design-lite": "^1.3.0",
53
68
  "mdl-stepper": "^1.1.6",
54
- "npm": "^6.4.1",
55
- "quill": "^1.3.6",
69
+ "npm": "^6.14.6",
70
+ "quill": "^1.3.7",
56
71
  "url-parse": "^1.4.4"
57
- }
72
+ },
73
+ "bundleDependencies": [
74
+ "@material/image-list"
75
+ ]
58
76
  }
data/views/mdc/web.erb CHANGED
@@ -1 +1,5 @@
1
+ <% if @pom.events&.any? %>
2
+ <div style='display: none;'
3
+ <%= erb :"components/event", :locals => {comp: @pom, events: @pom.events, parent_id: nil} %>></div>
4
+ <% end %>
1
5
  <%= erb :"components/render", :locals => {:components => @pom.components, :scope=> nil} %>
@@ -45,4 +45,16 @@ module.exports.push({
45
45
  loader: 'babel-loader'
46
46
  }]
47
47
  },
48
- });
48
+ },
49
+ {
50
+ entry: ["./assets/js/wc.js"],
51
+ output: {
52
+ filename: "../../public/wc.js"
53
+ },
54
+ module: {
55
+ loaders: [{
56
+ test: /\.js$/,
57
+ loader: 'babel-loader'
58
+ }]
59
+ },
60
+ });
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: voom-presenters
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Russell Edens
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-11-28 00:00:00.000000000 Z
11
+ date: 2021-03-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ice_nine
@@ -96,16 +96,22 @@ dependencies:
96
96
  name: tzinfo
97
97
  requirement: !ruby/object:Gem::Requirement
98
98
  requirements:
99
- - - "~>"
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ version: '1.1'
102
+ - - "<"
100
103
  - !ruby/object:Gem::Version
101
- version: '1.2'
104
+ version: '3.0'
102
105
  type: :runtime
103
106
  prerelease: false
104
107
  version_requirements: !ruby/object:Gem::Requirement
105
108
  requirements:
106
- - - "~>"
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: '1.1'
112
+ - - "<"
107
113
  - !ruby/object:Gem::Version
108
- version: '1.2'
114
+ version: '3.0'
109
115
  - !ruby/object:Gem::Dependency
110
116
  name: tzinfo-data
111
117
  requirement: !ruby/object:Gem::Requirement
@@ -134,6 +140,48 @@ dependencies:
134
140
  - - "~>"
135
141
  - !ruby/object:Gem::Version
136
142
  version: '3.4'
143
+ - !ruby/object:Gem::Dependency
144
+ name: filewatcher
145
+ requirement: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - "~>"
148
+ - !ruby/object:Gem::Version
149
+ version: 1.1.1
150
+ type: :runtime
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ requirements:
154
+ - - "~>"
155
+ - !ruby/object:Gem::Version
156
+ version: 1.1.1
157
+ - !ruby/object:Gem::Dependency
158
+ name: zeitwerk
159
+ requirement: !ruby/object:Gem::Requirement
160
+ requirements:
161
+ - - "~>"
162
+ - !ruby/object:Gem::Version
163
+ version: '2.1'
164
+ type: :runtime
165
+ prerelease: false
166
+ version_requirements: !ruby/object:Gem::Requirement
167
+ requirements:
168
+ - - "~>"
169
+ - !ruby/object:Gem::Version
170
+ version: '2.1'
171
+ - !ruby/object:Gem::Dependency
172
+ name: thor
173
+ requirement: !ruby/object:Gem::Requirement
174
+ requirements:
175
+ - - "~>"
176
+ - !ruby/object:Gem::Version
177
+ version: 1.0.1
178
+ type: :development
179
+ prerelease: false
180
+ version_requirements: !ruby/object:Gem::Requirement
181
+ requirements:
182
+ - - "~>"
183
+ - !ruby/object:Gem::Version
184
+ version: 1.0.1
137
185
  - !ruby/object:Gem::Dependency
138
186
  name: rack-test
139
187
  requirement: !ruby/object:Gem::Requirement
@@ -180,14 +228,14 @@ dependencies:
180
228
  name: bundler
181
229
  requirement: !ruby/object:Gem::Requirement
182
230
  requirements:
183
- - - "~>"
231
+ - - ">="
184
232
  - !ruby/object:Gem::Version
185
233
  version: '1.13'
186
234
  type: :development
187
235
  prerelease: false
188
236
  version_requirements: !ruby/object:Gem::Requirement
189
237
  requirements:
190
- - - "~>"
238
+ - - ">="
191
239
  - !ruby/object:Gem::Version
192
240
  version: '1.13'
193
241
  - !ruby/object:Gem::Dependency
@@ -196,14 +244,14 @@ dependencies:
196
244
  requirements:
197
245
  - - "~>"
198
246
  - !ruby/object:Gem::Version
199
- version: '11.3'
247
+ version: '13.0'
200
248
  type: :development
201
249
  prerelease: false
202
250
  version_requirements: !ruby/object:Gem::Requirement
203
251
  requirements:
204
252
  - - "~>"
205
253
  - !ruby/object:Gem::Version
206
- version: '11.3'
254
+ version: '13.0'
207
255
  - !ruby/object:Gem::Dependency
208
256
  name: rspec
209
257
  requirement: !ruby/object:Gem::Requirement
@@ -250,26 +298,34 @@ description:
250
298
  email:
251
299
  - 'russell@voomify.com
252
300
 
253
- '
254
- executables: []
301
+ '
302
+ executables:
303
+ - presenters
255
304
  extensions: []
256
305
  extra_rdoc_files: []
257
306
  files:
258
307
  - ".circleci/config.yml"
259
308
  - ".gem_release.yml"
309
+ - ".github/ISSUE_TEMPLATE/bug_report.md"
310
+ - ".github/ISSUE_TEMPLATE/feature_request.md"
311
+ - ".github/ISSUE_TEMPLATE/questions-support.md"
312
+ - ".github/workflows/semantic-release.yml"
260
313
  - ".gitignore"
314
+ - ".releaserc"
261
315
  - ".ruby-version"
262
316
  - CHANGELOG.md
263
317
  - CODE-OF-CONDUCT.md
318
+ - CONTRIBUTING.md
264
319
  - Gemfile
265
320
  - Gemfile.lock
266
321
  - HISTORY.md
267
322
  - LICENSE
323
+ - Procfile
268
324
  - README.md
269
325
  - ROADMAP.md
270
326
  - Rakefile
271
- - app/demo/component_status.pom
272
327
  - app/demo/components.pom
328
+ - app/demo/components/avatars.pom
273
329
  - app/demo/components/badges.pom
274
330
  - app/demo/components/buttons.pom
275
331
  - app/demo/components/cards.pom
@@ -288,13 +344,19 @@ files:
288
344
  - app/demo/components/headers.pom
289
345
  - app/demo/components/hidden_fields.pom
290
346
  - app/demo/components/icons.pom
347
+ - app/demo/components/image_lists.pom
348
+ - app/demo/components/images.pom
291
349
  - app/demo/components/layouts.pom
292
350
  - app/demo/components/lists.pom
293
351
  - app/demo/components/menus.pom
352
+ - app/demo/components/multi_selects.pom
294
353
  - app/demo/components/nav/drawer.pom
295
354
  - app/demo/components/nav/menu.pom
296
355
  - app/demo/components/nav/pattern_drawer.pom
297
356
  - app/demo/components/nav/pattern_menu.pom
357
+ - app/demo/components/number_fields.pom
358
+ - app/demo/components/padding.pom
359
+ - app/demo/components/progress.pom
298
360
  - app/demo/components/selects.pom
299
361
  - app/demo/components/sliders.pom
300
362
  - app/demo/components/snackbar.pom
@@ -307,22 +369,30 @@ files:
307
369
  - app/demo/components/time_fields.pom
308
370
  - app/demo/components/toggles.pom
309
371
  - app/demo/components/tooltips.pom
372
+ - app/demo/components/unordered_list.pom
373
+ - app/demo/custom_css.pom
310
374
  - app/demo/events.pom
375
+ - app/demo/events/actions/autocomplete.pom
311
376
  - app/demo/events/actions/clear.pom
312
377
  - app/demo/events/actions/deletes.pom
313
378
  - app/demo/events/actions/dialog.pom
379
+ - app/demo/events/actions/dialogs/discard.pom
314
380
  - app/demo/events/actions/dialogs/show_dialog.pom
315
381
  - app/demo/events/actions/dialogs/trigger.pom
382
+ - app/demo/events/actions/last_response.pom
316
383
  - app/demo/events/actions/loads.pom
317
384
  - app/demo/events/actions/posts.pom
385
+ - app/demo/events/actions/prompt_if_dirty.pom
318
386
  - app/demo/events/actions/replace_text.pom
319
387
  - app/demo/events/actions/replaces.pom
320
388
  - app/demo/events/actions/snackbar.pom
321
389
  - app/demo/events/actions/toggle_visiblity.pom
322
390
  - app/demo/events/actions/updates.pom
391
+ - app/demo/events/content_as_form.pom
323
392
  - app/demo/events/field_level.pom
324
393
  - app/demo/events/form_level.pom
325
394
  - app/demo/events/nav/drawer.pom
395
+ - app/demo/events/parallel.pom
326
396
  - app/demo/events/tagged_input.pom
327
397
  - app/demo/formatting_tokens.pom
328
398
  - app/demo/hello_world.pom
@@ -332,7 +402,13 @@ files:
332
402
  - app/demo/namespaces.pom
333
403
  - app/demo/nav/top_nav.pom
334
404
  - app/demo/patterns.pom
405
+ - app/demo/patterns/drag_drop.pom
406
+ - app/demo/patterns/floating_card.pom
335
407
  - app/demo/patterns/search_select.pom
408
+ - app/demo/plugins/chart.pom
409
+ - app/demo/plugins/image_crop.pom
410
+ - app/demo/plugins/index.pom
411
+ - app/demo/plugins/nav/drawer.pom
336
412
  - app/demo/shared/code.pom
337
413
  - app/demo/shared/context_list.pom
338
414
  - app/demo/shared/debug.pom
@@ -341,31 +417,40 @@ files:
341
417
  - bin/setup
342
418
  - component-status.yml
343
419
  - config.ru
344
- - lib/voom-presenters.rb
420
+ - docs/settings.md
421
+ - exe/presenters
422
+ - lib/hash_ext/traverse.rb
423
+ - lib/voom.rb
345
424
  - lib/voom/container_methods.rb
425
+ - lib/voom/engine.rb
346
426
  - lib/voom/logger_methods.rb
347
427
  - lib/voom/parameters.rb
348
- - lib/voom/presenters-engine.rb
349
- - lib/voom/presenters.rb
350
428
  - lib/voom/presenters/api/app.rb
351
429
  - lib/voom/presenters/api/router.rb
352
430
  - lib/voom/presenters/app.rb
431
+ - lib/voom/presenters/cli.rb
353
432
  - lib/voom/presenters/container_item.rb
433
+ - lib/voom/presenters/demo/dragon_drop.rb
354
434
  - lib/voom/presenters/demo/echo.rb
355
435
  - lib/voom/presenters/demo/search-terms.yml
356
436
  - lib/voom/presenters/demo/search.rb
357
- - lib/voom/presenters/dsl.rb
437
+ - lib/voom/presenters/demo/slow.rb
438
+ - lib/voom/presenters/dsl/components/actions/autocomplete.rb
358
439
  - lib/voom/presenters/dsl/components/actions/base.rb
359
440
  - lib/voom/presenters/dsl/components/actions/clear.rb
441
+ - lib/voom/presenters/dsl/components/actions/close_dialog.rb
360
442
  - lib/voom/presenters/dsl/components/actions/deletes.rb
361
443
  - lib/voom/presenters/dsl/components/actions/dialog.rb
362
444
  - lib/voom/presenters/dsl/components/actions/loads.rb
363
445
  - lib/voom/presenters/dsl/components/actions/navigates.rb
446
+ - lib/voom/presenters/dsl/components/actions/post_message.rb
364
447
  - lib/voom/presenters/dsl/components/actions/posts.rb
448
+ - lib/voom/presenters/dsl/components/actions/prompt_if_dirty.rb
365
449
  - lib/voom/presenters/dsl/components/actions/remove.rb
366
450
  - lib/voom/presenters/dsl/components/actions/replaces.rb
367
451
  - lib/voom/presenters/dsl/components/actions/snackbar.rb
368
452
  - lib/voom/presenters/dsl/components/actions/stepper.rb
453
+ - lib/voom/presenters/dsl/components/actions/toggle_disabled.rb
369
454
  - lib/voom/presenters/dsl/components/actions/toggle_visibility.rb
370
455
  - lib/voom/presenters/dsl/components/actions/updates.rb
371
456
  - lib/voom/presenters/dsl/components/avatar.rb
@@ -375,6 +460,7 @@ files:
375
460
  - lib/voom/presenters/dsl/components/card.rb
376
461
  - lib/voom/presenters/dsl/components/checkbox.rb
377
462
  - lib/voom/presenters/dsl/components/chip.rb
463
+ - lib/voom/presenters/dsl/components/chipset.rb
378
464
  - lib/voom/presenters/dsl/components/content.rb
379
465
  - lib/voom/presenters/dsl/components/date_field.rb
380
466
  - lib/voom/presenters/dsl/components/datetime_base.rb
@@ -387,7 +473,6 @@ files:
387
473
  - lib/voom/presenters/dsl/components/file_input.rb
388
474
  - lib/voom/presenters/dsl/components/footer.rb
389
475
  - lib/voom/presenters/dsl/components/form.rb
390
- - lib/voom/presenters/dsl/components/google_map.rb
391
476
  - lib/voom/presenters/dsl/components/grid.rb
392
477
  - lib/voom/presenters/dsl/components/header.rb
393
478
  - lib/voom/presenters/dsl/components/hidden_field.rb
@@ -395,7 +480,9 @@ files:
395
480
  - lib/voom/presenters/dsl/components/icon_base.rb
396
481
  - lib/voom/presenters/dsl/components/icon_toggle.rb
397
482
  - lib/voom/presenters/dsl/components/image.rb
483
+ - lib/voom/presenters/dsl/components/image_list.rb
398
484
  - lib/voom/presenters/dsl/components/input.rb
485
+ - lib/voom/presenters/dsl/components/link.rb
399
486
  - lib/voom/presenters/dsl/components/list.rb
400
487
  - lib/voom/presenters/dsl/components/lists/action.rb
401
488
  - lib/voom/presenters/dsl/components/lists/actions.rb
@@ -408,6 +495,7 @@ files:
408
495
  - lib/voom/presenters/dsl/components/mixins/avatar.rb
409
496
  - lib/voom/presenters/dsl/components/mixins/buttons.rb
410
497
  - lib/voom/presenters/dsl/components/mixins/chips.rb
498
+ - lib/voom/presenters/dsl/components/mixins/chipset.rb
411
499
  - lib/voom/presenters/dsl/components/mixins/common.rb
412
500
  - lib/voom/presenters/dsl/components/mixins/content.rb
413
501
  - lib/voom/presenters/dsl/components/mixins/date_time_fields.rb
@@ -419,22 +507,32 @@ files:
419
507
  - lib/voom/presenters/dsl/components/mixins/grids.rb
420
508
  - lib/voom/presenters/dsl/components/mixins/helpers.rb
421
509
  - lib/voom/presenters/dsl/components/mixins/icons.rb
510
+ - lib/voom/presenters/dsl/components/mixins/image_lists.rb
422
511
  - lib/voom/presenters/dsl/components/mixins/images.rb
512
+ - lib/voom/presenters/dsl/components/mixins/last_response.rb
423
513
  - lib/voom/presenters/dsl/components/mixins/menus.rb
514
+ - lib/voom/presenters/dsl/components/mixins/padding.rb
515
+ - lib/voom/presenters/dsl/components/mixins/progress.rb
424
516
  - lib/voom/presenters/dsl/components/mixins/selects.rb
425
517
  - lib/voom/presenters/dsl/components/mixins/sliders.rb
426
518
  - lib/voom/presenters/dsl/components/mixins/snackbars.rb
427
519
  - lib/voom/presenters/dsl/components/mixins/steppers.rb
428
520
  - lib/voom/presenters/dsl/components/mixins/tab_bars.rb
521
+ - lib/voom/presenters/dsl/components/mixins/tables.rb
429
522
  - lib/voom/presenters/dsl/components/mixins/text_fields.rb
430
523
  - lib/voom/presenters/dsl/components/mixins/toggles.rb
431
524
  - lib/voom/presenters/dsl/components/mixins/tooltips.rb
432
525
  - lib/voom/presenters/dsl/components/mixins/typography.rb
433
526
  - lib/voom/presenters/dsl/components/mixins/yield_to.rb
527
+ - lib/voom/presenters/dsl/components/multi_select.rb
528
+ - lib/voom/presenters/dsl/components/number_field.rb
434
529
  - lib/voom/presenters/dsl/components/page.rb
530
+ - lib/voom/presenters/dsl/components/page_title.rb
531
+ - lib/voom/presenters/dsl/components/progress.rb
435
532
  - lib/voom/presenters/dsl/components/radio_button.rb
436
533
  - lib/voom/presenters/dsl/components/rich_text_area.rb
437
534
  - lib/voom/presenters/dsl/components/select.rb
535
+ - lib/voom/presenters/dsl/components/separator.rb
438
536
  - lib/voom/presenters/dsl/components/slider.rb
439
537
  - lib/voom/presenters/dsl/components/snackbar.rb
440
538
  - lib/voom/presenters/dsl/components/stepper.rb
@@ -447,13 +545,37 @@ files:
447
545
  - lib/voom/presenters/dsl/components/toggle_base.rb
448
546
  - lib/voom/presenters/dsl/components/tooltip.rb
449
547
  - lib/voom/presenters/dsl/components/typography.rb
548
+ - lib/voom/presenters/dsl/components/unordered_list.rb
450
549
  - lib/voom/presenters/dsl/definer.rb
451
550
  - lib/voom/presenters/dsl/definition.rb
452
551
  - lib/voom/presenters/dsl/invalid_presenter.rb
453
552
  - lib/voom/presenters/dsl/lockable.rb
553
+ - lib/voom/presenters/dsl/protect_from_forgery.rb
454
554
  - lib/voom/presenters/dsl/user_interface.rb
555
+ - lib/voom/presenters/errors.rb
556
+ - lib/voom/presenters/errors/invalid_dsl.rb
455
557
  - lib/voom/presenters/errors/parameter_validation.rb
456
558
  - lib/voom/presenters/errors/unprocessable.rb
559
+ - lib/voom/presenters/generators/inflectors.rb
560
+ - lib/voom/presenters/generators/plugin.rb
561
+ - lib/voom/presenters/generators/templates/plugin/.gitignore
562
+ - lib/voom/presenters/generators/templates/plugin/Gemfile
563
+ - lib/voom/presenters/generators/templates/plugin/LICENSE.txt.tt
564
+ - lib/voom/presenters/generators/templates/plugin/README.md
565
+ - lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/components/actions/action.rb.tt
566
+ - lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/components/actions/dsl.rb.tt
567
+ - lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/components/component.rb.tt
568
+ - lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/components/dsl.rb.tt
569
+ - lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/helpers/helper.rb.tt
570
+ - lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/plugin.rb.tt
571
+ - lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/web_client/components/actions/data.rb.tt
572
+ - lib/voom/presenters/generators/templates/plugin/lib/voom/presenters/plugins/web_client/components/render.rb.tt
573
+ - lib/voom/presenters/generators/templates/plugin/presenter_plugin.gemspec.tt
574
+ - lib/voom/presenters/generators/templates/plugin/views/assets/css/components/component.css.tt
575
+ - lib/voom/presenters/generators/templates/plugin/views/assets/js/components/actions/action.js.tt
576
+ - lib/voom/presenters/generators/templates/plugin/views/assets/js/components/component.js.tt
577
+ - lib/voom/presenters/generators/templates/plugin/views/components/component.erb.tt
578
+ - lib/voom/presenters/generators/templates/plugin/views/components/component_header.erb.tt
457
579
  - lib/voom/presenters/helpers.rb
458
580
  - lib/voom/presenters/helpers/date.rb
459
581
  - lib/voom/presenters/helpers/errors.rb
@@ -461,23 +583,40 @@ files:
461
583
  - lib/voom/presenters/helpers/rails.rb
462
584
  - lib/voom/presenters/helpers/rails/currency.rb
463
585
  - lib/voom/presenters/helpers/rails/model_table.rb
586
+ - lib/voom/presenters/helpers/redact.rb
464
587
  - lib/voom/presenters/helpers/route.rb
465
588
  - lib/voom/presenters/helpers/time.rb
466
589
  - lib/voom/presenters/namespace.rb
590
+ - lib/voom/presenters/pluggable.rb
591
+ - lib/voom/presenters/plugins.rb
592
+ - lib/voom/presenters/plugins/google_maps.rb
593
+ - lib/voom/presenters/plugins/google_maps/google_map.erb
594
+ - lib/voom/presenters/plugins/google_maps/google_map.rb
595
+ - lib/voom/presenters/registry.rb
596
+ - lib/voom/presenters/router.rb
467
597
  - lib/voom/presenters/settings.rb
468
598
  - lib/voom/presenters/version.rb
469
599
  - lib/voom/presenters/web_client/app.rb
470
- - lib/voom/presenters/web_client/markdown_render.rb
600
+ - lib/voom/presenters/web_client/component_decorator_factory.rb
601
+ - lib/voom/presenters/web_client/component_html_decorator.rb
602
+ - lib/voom/presenters/web_client/component_renderer.rb
603
+ - lib/voom/presenters/web_client/custom_css.rb
604
+ - lib/voom/presenters/web_client/custom_render.rb
605
+ - lib/voom/presenters/web_client/helpers/expand_hash.rb
606
+ - lib/voom/presenters/web_client/helpers/form_helpers.rb
607
+ - lib/voom/presenters/web_client/helpers/padding_helpers.rb
608
+ - lib/voom/presenters/web_client/plugin_headers.rb
471
609
  - lib/voom/presenters/web_client/router.rb
610
+ - lib/voom/railtie.rb
472
611
  - lib/voom/serializer.rb
473
612
  - lib/voom/symbol/to_str.rb
474
613
  - lib/voom/trace.rb
475
614
  - presenters.gemspec
476
- - public/.gitignore
477
615
  - public/bundle.css
478
616
  - public/bundle.js
479
617
  - public/dialog-polyfill.js
480
618
  - public/favicon.ico
619
+ - public/img/demo/avatar.jpg
481
620
  - public/img/demo/dog.png
482
621
  - public/img/demo/image_card.jpg
483
622
  - public/img/demo/rx.png
@@ -490,20 +629,20 @@ files:
490
629
  - public/img/settings/teal.png
491
630
  - public/img/settings/white.png
492
631
  - public/img/settings/yellow.png
632
+ - public/presenters/custom_css.css
493
633
  - public/scripts.js
494
634
  - public/style-bundle.js
495
635
  - public/styles.css
496
- - scripts/bump.sh
497
- - scripts/changelog.sh
498
- - scripts/deploy-demo.sh
499
- - scripts/release.sh
500
- - scripts/tag.sh
636
+ - public/wc.js
637
+ - scripts/build.sh
501
638
  - views/mdc/.babelrc
502
639
  - views/mdc/.eslintrc.yml
503
640
  - views/mdc/.gitignore
641
+ - views/mdc/.nvmrc
504
642
  - views/mdc/assets/js/app.js
505
643
  - views/mdc/assets/js/components/base-component.js
506
644
  - views/mdc/assets/js/components/base-container.js
645
+ - views/mdc/assets/js/components/base-toggle.js
507
646
  - views/mdc/assets/js/components/button.js
508
647
  - views/mdc/assets/js/components/cards.js
509
648
  - views/mdc/assets/js/components/checkboxes.js
@@ -512,31 +651,52 @@ files:
512
651
  - views/mdc/assets/js/components/data-tables.js
513
652
  - views/mdc/assets/js/components/datetime.js
514
653
  - views/mdc/assets/js/components/dialogs.js
654
+ - views/mdc/assets/js/components/drag_n_drop.js
655
+ - views/mdc/assets/js/components/drawer.js
515
656
  - views/mdc/assets/js/components/events.js
657
+ - views/mdc/assets/js/components/events/action_parameter.js
658
+ - views/mdc/assets/js/components/events/action_parameter.test.js
659
+ - views/mdc/assets/js/components/events/autocomplete.js
516
660
  - views/mdc/assets/js/components/events/base.js
517
661
  - views/mdc/assets/js/components/events/clears.js
662
+ - views/mdc/assets/js/components/events/close_dialog.js
518
663
  - views/mdc/assets/js/components/events/dialog.js
664
+ - views/mdc/assets/js/components/events/encode.js
519
665
  - views/mdc/assets/js/components/events/errors.js
520
666
  - views/mdc/assets/js/components/events/loads.js
521
667
  - views/mdc/assets/js/components/events/navigates.js
668
+ - views/mdc/assets/js/components/events/plugin.js
669
+ - views/mdc/assets/js/components/events/post_message.js
522
670
  - views/mdc/assets/js/components/events/posts.js
671
+ - views/mdc/assets/js/components/events/prompt_if_dirty.js
523
672
  - views/mdc/assets/js/components/events/removes.js
524
673
  - views/mdc/assets/js/components/events/replaces.js
525
674
  - views/mdc/assets/js/components/events/snackbar.js
526
675
  - views/mdc/assets/js/components/events/stepper.js
676
+ - views/mdc/assets/js/components/events/toggle_disabled.js
527
677
  - views/mdc/assets/js/components/events/toggle_visibility.js
528
678
  - views/mdc/assets/js/components/file-inputs.js
679
+ - views/mdc/assets/js/components/form-fields.js
529
680
  - views/mdc/assets/js/components/forms.js
681
+ - views/mdc/assets/js/components/get_event_target.js
530
682
  - views/mdc/assets/js/components/grid.js
683
+ - views/mdc/assets/js/components/header.js
531
684
  - views/mdc/assets/js/components/hidden-fields.js
532
685
  - views/mdc/assets/js/components/icon-toggles.js
686
+ - views/mdc/assets/js/components/images.js
533
687
  - views/mdc/assets/js/components/initialize.js
534
688
  - views/mdc/assets/js/components/lists.js
535
689
  - views/mdc/assets/js/components/menus.js
690
+ - views/mdc/assets/js/components/mixins/dirtyable.js
536
691
  - views/mdc/assets/js/components/mixins/event-handler.js
537
692
  - views/mdc/assets/js/components/mixins/visibility-observer.js
693
+ - views/mdc/assets/js/components/multi-select.js
694
+ - views/mdc/assets/js/components/plugins.js
695
+ - views/mdc/assets/js/components/progress.js
538
696
  - views/mdc/assets/js/components/radios.js
539
697
  - views/mdc/assets/js/components/rich-text-area.js
698
+ - views/mdc/assets/js/components/rich-text-area/horizontal-rule-blot.js
699
+ - views/mdc/assets/js/components/root_document.js
540
700
  - views/mdc/assets/js/components/selects.js
541
701
  - views/mdc/assets/js/components/sliders.js
542
702
  - views/mdc/assets/js/components/snackbar.js
@@ -544,13 +704,16 @@ files:
544
704
  - views/mdc/assets/js/components/switches.js
545
705
  - views/mdc/assets/js/components/tab-bars.js
546
706
  - views/mdc/assets/js/components/text-fields.js
707
+ - views/mdc/assets/js/components/tooltip.js
708
+ - views/mdc/assets/js/components/typography.js
709
+ - views/mdc/assets/js/components/uninitialize.js
547
710
  - views/mdc/assets/js/config.js
548
- - views/mdc/assets/js/dialog-polyfill.js
549
711
  - views/mdc/assets/js/mdl-stepper.js
550
712
  - views/mdc/assets/js/utils/compatibility.js
551
713
  - views/mdc/assets/js/utils/config.js
552
714
  - views/mdc/assets/js/utils/config.test.js
553
715
  - views/mdc/assets/js/utils/urls.js
716
+ - views/mdc/assets/js/wc.js
554
717
  - views/mdc/assets/scss/app.scss
555
718
  - views/mdc/assets/scss/components/avatar.scss
556
719
  - views/mdc/assets/scss/components/button.scss
@@ -561,48 +724,68 @@ files:
561
724
  - views/mdc/assets/scss/components/data-table.scss
562
725
  - views/mdc/assets/scss/components/datetime.scss
563
726
  - views/mdc/assets/scss/components/dialog.scss
727
+ - views/mdc/assets/scss/components/drag_n_drop.scss
728
+ - views/mdc/assets/scss/components/drawer.scss
564
729
  - views/mdc/assets/scss/components/expansion-panel.scss
565
730
  - views/mdc/assets/scss/components/fab.scss
566
731
  - views/mdc/assets/scss/components/file-input.scss
567
732
  - views/mdc/assets/scss/components/grid.scss
568
- - views/mdc/assets/scss/components/icon-toggles.scss
733
+ - views/mdc/assets/scss/components/header.scss
734
+ - views/mdc/assets/scss/components/icon-button-toggles.scss
569
735
  - views/mdc/assets/scss/components/icon.scss
736
+ - views/mdc/assets/scss/components/image-list.scss
570
737
  - views/mdc/assets/scss/components/image.scss
571
738
  - views/mdc/assets/scss/components/list.scss
572
739
  - views/mdc/assets/scss/components/menu.scss
740
+ - views/mdc/assets/scss/components/multi-select.scss
741
+ - views/mdc/assets/scss/components/progress.scss
573
742
  - views/mdc/assets/scss/components/radio.scss
574
743
  - views/mdc/assets/scss/components/rich-text-area.scss
575
744
  - views/mdc/assets/scss/components/select.scss
745
+ - views/mdc/assets/scss/components/separator.scss
576
746
  - views/mdc/assets/scss/components/slider.scss
577
747
  - views/mdc/assets/scss/components/snackbar.scss
578
748
  - views/mdc/assets/scss/components/stepper.scss
579
749
  - views/mdc/assets/scss/components/switch.scss
580
750
  - views/mdc/assets/scss/components/tab-bars.scss
581
751
  - views/mdc/assets/scss/components/textfield.scss
752
+ - views/mdc/assets/scss/components/tooltip.scss
582
753
  - views/mdc/assets/scss/components/typography.scss
583
- - views/mdc/assets/scss/components/vendor/flatpickr.min.css
754
+ - views/mdc/assets/scss/components/unordered-lists.scss
584
755
  - views/mdc/assets/scss/components/vendor/quill.snow.css
585
756
  - views/mdc/assets/scss/material.blue_grey-orange.min.css
757
+ - views/mdc/assets/scss/media.scss
758
+ - views/mdc/assets/scss/palette.scss
586
759
  - views/mdc/assets/scss/styles.scss
587
760
  - views/mdc/assets/scss/theme.scss
588
- - views/mdc/body/drawer.erb
761
+ - views/mdc/body/dismissable-drawer.erb
762
+ - views/mdc/body/drawer/divider.erb
763
+ - views/mdc/body/drawer/item.erb
764
+ - views/mdc/body/drawer/label.erb
589
765
  - views/mdc/body/drawers/menu.erb
590
766
  - views/mdc/body/footer.erb
591
767
  - views/mdc/body/footers/large.erb
592
768
  - views/mdc/body/footers/menu_item.erb
593
769
  - views/mdc/body/footers/small.erb
594
770
  - views/mdc/body/header.erb
771
+ - views/mdc/body/modal-drawer.erb
595
772
  - views/mdc/body/snackbar.erb
773
+ - views/mdc/components/actions/autocomplete.rb
596
774
  - views/mdc/components/actions/clear.rb
775
+ - views/mdc/components/actions/close_dialog.rb
597
776
  - views/mdc/components/actions/delete.rb
598
777
  - views/mdc/components/actions/dialog.rb
599
778
  - views/mdc/components/actions/loads.rb
600
779
  - views/mdc/components/actions/navigates.rb
601
780
  - views/mdc/components/actions/post.rb
781
+ - views/mdc/components/actions/post_message.rb
782
+ - views/mdc/components/actions/prompt_if_dirty.rb
602
783
  - views/mdc/components/actions/remove.rb
603
784
  - views/mdc/components/actions/replaces.rb
785
+ - views/mdc/components/actions/resolver.rb
604
786
  - views/mdc/components/actions/snackbar.rb
605
787
  - views/mdc/components/actions/stepper.rb
788
+ - views/mdc/components/actions/toggle_disabled.rb
606
789
  - views/mdc/components/actions/toggle_visibility.rb
607
790
  - views/mdc/components/actions/update.rb
608
791
  - views/mdc/components/avatar.erb
@@ -617,21 +800,23 @@ files:
617
800
  - views/mdc/components/card.erb
618
801
  - views/mdc/components/checkbox.erb
619
802
  - views/mdc/components/chip.erb
803
+ - views/mdc/components/chipset.erb
620
804
  - views/mdc/components/content.erb
621
805
  - views/mdc/components/date.erb
622
806
  - views/mdc/components/datetime.erb
623
807
  - views/mdc/components/dialog.erb
808
+ - views/mdc/components/drag_and_drop/drag_and_drop.rb
624
809
  - views/mdc/components/event.erb
625
810
  - views/mdc/components/expansion_panel.erb
626
811
  - views/mdc/components/file_input.erb
627
812
  - views/mdc/components/form.erb
628
- - views/mdc/components/google_map.erb
629
813
  - views/mdc/components/grid.erb
630
814
  - views/mdc/components/headline.erb
631
815
  - views/mdc/components/hidden_field.erb
632
816
  - views/mdc/components/icon.erb
633
817
  - views/mdc/components/icon_toggle.erb
634
818
  - views/mdc/components/image.erb
819
+ - views/mdc/components/image_list.erb
635
820
  - views/mdc/components/link.erb
636
821
  - views/mdc/components/list.erb
637
822
  - views/mdc/components/list/actions.erb
@@ -644,18 +829,25 @@ files:
644
829
  - views/mdc/components/list/avatar.erb
645
830
  - views/mdc/components/list/checkbox.erb
646
831
  - views/mdc/components/list/header.erb
832
+ - views/mdc/components/list/hidden_field.erb
647
833
  - views/mdc/components/list/icon.erb
648
834
  - views/mdc/components/list/info.erb
649
835
  - views/mdc/components/list/line.erb
650
836
  - views/mdc/components/list/menu.erb
651
837
  - views/mdc/components/list/separator.erb
652
838
  - views/mdc/components/menu.erb
839
+ - views/mdc/components/multi_select.erb
840
+ - views/mdc/components/number_field.erb
653
841
  - views/mdc/components/overline.erb
654
842
  - views/mdc/components/page_title.erb
843
+ - views/mdc/components/progress.erb
655
844
  - views/mdc/components/radio_button.erb
656
845
  - views/mdc/components/render.erb
657
846
  - views/mdc/components/rich_text_area.erb
658
847
  - views/mdc/components/select.erb
848
+ - views/mdc/components/separator.erb
849
+ - views/mdc/components/shared/hint_error_display.erb
850
+ - views/mdc/components/shared/input_label.erb
659
851
  - views/mdc/components/slider.erb
660
852
  - views/mdc/components/snackbar.erb
661
853
  - views/mdc/components/stepper.erb
@@ -665,6 +857,8 @@ files:
665
857
  - views/mdc/components/tab_bar.erb
666
858
  - views/mdc/components/table.erb
667
859
  - views/mdc/components/table/checkbox.erb
860
+ - views/mdc/components/table/column.erb
861
+ - views/mdc/components/table/footer.erb
668
862
  - views/mdc/components/table/header.erb
669
863
  - views/mdc/components/table/pagination.erb
670
864
  - views/mdc/components/table/row.erb
@@ -673,6 +867,9 @@ files:
673
867
  - views/mdc/components/time.erb
674
868
  - views/mdc/components/tooltip.erb
675
869
  - views/mdc/components/typography.erb
870
+ - views/mdc/components/unordered_list.erb
871
+ - views/mdc/components/unordered_list/icon.erb
872
+ - views/mdc/components/unordered_list/list_item.erb
676
873
  - views/mdc/init-depends.sh
677
874
  - views/mdc/layout.erb
678
875
  - views/mdc/package-lock.json
@@ -698,8 +895,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
698
895
  - !ruby/object:Gem::Version
699
896
  version: '0'
700
897
  requirements: []
701
- rubyforge_project:
702
- rubygems_version: 2.7.6
898
+ rubygems_version: 3.1.4
703
899
  signing_key:
704
900
  specification_version: 4
705
901
  summary: Presenters Gem.