voom-presenters 0.2.0 → 2.0.0

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