matestack-ui-core 0.7.1 → 0.7.5

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 (241) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +16 -4
  3. data/Rakefile +32 -0
  4. data/app/concepts/matestack/ui/core/abbr/abbr.haml +5 -0
  5. data/app/concepts/matestack/ui/core/abbr/abbr.rb +12 -0
  6. data/app/concepts/matestack/ui/core/action/action.js +51 -29
  7. data/app/concepts/matestack/ui/core/action/action.rb +3 -0
  8. data/app/concepts/matestack/ui/core/actionview/dynamic.haml +6 -0
  9. data/app/concepts/matestack/ui/core/actionview/dynamic.rb +28 -0
  10. data/app/concepts/matestack/ui/core/actionview/static.haml +1 -0
  11. data/app/concepts/matestack/ui/core/actionview/static.rb +28 -0
  12. data/app/concepts/matestack/ui/core/address/address.haml +5 -0
  13. data/app/concepts/matestack/ui/core/address/address.rb +5 -0
  14. data/app/concepts/matestack/ui/core/app/app.js +14 -3
  15. data/app/concepts/matestack/ui/core/app/app.rb +3 -28
  16. data/app/concepts/matestack/ui/core/app/location.js +9 -0
  17. data/app/concepts/matestack/ui/core/app/store.js +12 -6
  18. data/app/concepts/matestack/ui/core/area/area.haml +1 -0
  19. data/app/concepts/matestack/ui/core/area/area.rb +18 -0
  20. data/app/concepts/matestack/ui/core/article/article.haml +5 -0
  21. data/app/concepts/matestack/ui/core/article/article.rb +5 -0
  22. data/app/concepts/matestack/ui/core/aside/aside.haml +3 -0
  23. data/app/concepts/matestack/ui/core/aside/aside.rb +5 -0
  24. data/app/concepts/matestack/ui/core/async/async.haml +1 -1
  25. data/app/concepts/matestack/ui/core/async/async.js +5 -4
  26. data/app/concepts/matestack/ui/core/async/async.rb +8 -6
  27. data/app/concepts/matestack/ui/core/b/b.haml +5 -0
  28. data/app/concepts/matestack/ui/core/b/b.rb +5 -0
  29. data/app/concepts/matestack/ui/core/bdi/bdi.haml +5 -0
  30. data/app/concepts/matestack/ui/core/bdi/bdi.rb +4 -0
  31. data/app/concepts/matestack/ui/core/bdo/bdo.haml +5 -0
  32. data/app/concepts/matestack/ui/core/bdo/bdo.rb +11 -0
  33. data/app/concepts/matestack/ui/core/blockquote/blockquote.rb +3 -1
  34. data/app/concepts/matestack/ui/core/button/button.haml +4 -6
  35. data/app/concepts/matestack/ui/core/caption/caption.haml +2 -3
  36. data/app/concepts/matestack/ui/core/cite/cite.haml +5 -0
  37. data/app/concepts/matestack/ui/core/cite/cite.rb +5 -0
  38. data/app/concepts/matestack/ui/core/code/code.haml +5 -0
  39. data/app/concepts/matestack/ui/core/code/code.rb +5 -0
  40. data/app/concepts/matestack/ui/core/collection/content/content.js +4 -6
  41. data/app/concepts/matestack/ui/core/collection/content/content.rb +1 -1
  42. data/app/concepts/matestack/ui/core/collection/filter/filter.js +3 -5
  43. data/app/concepts/matestack/ui/core/collection/filter/filter.rb +1 -1
  44. data/app/concepts/matestack/ui/core/collection/filter/input/input.haml +1 -7
  45. data/app/concepts/matestack/ui/core/collection/filter/input/input.rb +12 -0
  46. data/app/concepts/matestack/ui/core/collection/helper.rb +0 -1
  47. data/app/concepts/matestack/ui/core/collection/order/order.js +3 -5
  48. data/app/concepts/matestack/ui/core/collection/order/order.rb +1 -1
  49. data/app/concepts/matestack/ui/core/collection/order/toggle/indicator/indicator.rb +3 -1
  50. data/app/concepts/matestack/ui/core/collection/order/toggle/toggle.rb +0 -1
  51. data/app/concepts/matestack/ui/core/component/anonym-dynamic-component.js +1 -1
  52. data/app/concepts/matestack/ui/core/component/component.js +1 -2
  53. data/app/concepts/matestack/ui/core/component/dynamic.rb +38 -33
  54. data/app/concepts/matestack/ui/core/data/data.haml +5 -0
  55. data/app/concepts/matestack/ui/core/data/data.rb +9 -0
  56. data/app/concepts/matestack/ui/core/datalist/datalist.haml +3 -0
  57. data/app/concepts/matestack/ui/core/datalist/datalist.rb +5 -0
  58. data/app/concepts/matestack/ui/core/dd/dd.haml +5 -0
  59. data/app/concepts/matestack/ui/core/dd/dd.rb +5 -0
  60. data/app/concepts/matestack/ui/core/del/del.haml +5 -0
  61. data/app/concepts/matestack/ui/core/del/del.rb +4 -0
  62. data/app/concepts/matestack/ui/core/details/details.rb +1 -0
  63. data/app/concepts/matestack/ui/core/dfn/dfn.haml +5 -0
  64. data/app/concepts/matestack/ui/core/dfn/dfn.rb +6 -0
  65. data/app/concepts/matestack/ui/core/dialog/dialog.haml +5 -0
  66. data/app/concepts/matestack/ui/core/dialog/dialog.rb +9 -0
  67. data/app/concepts/matestack/ui/core/div/div.rb +0 -1
  68. data/app/concepts/matestack/ui/core/dl/dl.haml +5 -0
  69. data/app/concepts/matestack/ui/core/dl/dl.rb +5 -0
  70. data/app/concepts/matestack/ui/core/dt/dt.haml +5 -0
  71. data/app/concepts/matestack/ui/core/dt/dt.rb +5 -0
  72. data/app/concepts/matestack/ui/core/em/em.haml +5 -0
  73. data/app/concepts/matestack/ui/core/em/em.rb +5 -0
  74. data/app/concepts/matestack/ui/core/fieldset/fieldset.haml +5 -0
  75. data/app/concepts/matestack/ui/core/fieldset/fieldset.rb +9 -0
  76. data/app/concepts/matestack/ui/core/figure/figure.haml +3 -0
  77. data/app/concepts/matestack/ui/core/figure/figure.rb +5 -0
  78. data/app/concepts/matestack/ui/core/form/form.js +42 -6
  79. data/app/concepts/matestack/ui/core/form/input/input.haml +30 -21
  80. data/app/concepts/matestack/ui/core/form/input/input.rb +36 -29
  81. data/app/concepts/matestack/ui/core/form/select/select.haml +10 -6
  82. data/app/concepts/matestack/ui/core/html/html.js +1 -1
  83. data/app/concepts/matestack/ui/core/icon/icon.haml +2 -3
  84. data/app/concepts/matestack/ui/core/iframe/iframe.haml +5 -0
  85. data/app/concepts/matestack/ui/core/iframe/iframe.rb +14 -0
  86. data/app/concepts/matestack/ui/core/img/img.haml +1 -1
  87. data/app/concepts/matestack/ui/core/img/img.rb +10 -0
  88. data/app/concepts/matestack/ui/core/input/input.haml +2 -3
  89. data/app/concepts/matestack/ui/core/input/input.rb +4 -0
  90. data/app/concepts/matestack/ui/core/ins/ins.haml +5 -0
  91. data/app/concepts/matestack/ui/core/ins/ins.rb +10 -0
  92. data/app/concepts/matestack/ui/core/isolate/isolate.haml +2 -0
  93. data/app/concepts/matestack/ui/core/isolate/isolate.rb +11 -0
  94. data/app/concepts/matestack/ui/core/js/core.js +41 -18
  95. data/app/concepts/matestack/ui/core/kbd/kbd.haml +5 -0
  96. data/app/concepts/matestack/ui/core/kbd/kbd.rb +4 -0
  97. data/app/concepts/matestack/ui/core/label/label.haml +4 -6
  98. data/app/concepts/matestack/ui/core/label/label.rb +6 -1
  99. data/app/concepts/matestack/ui/core/legend/legend.haml +5 -0
  100. data/app/concepts/matestack/ui/core/legend/legend.rb +5 -0
  101. data/app/concepts/matestack/ui/core/li/li.haml +2 -3
  102. data/app/concepts/matestack/ui/core/link/link.rb +2 -1
  103. data/app/concepts/matestack/ui/core/map/map.haml +3 -0
  104. data/app/concepts/matestack/ui/core/map/map.rb +11 -0
  105. data/app/concepts/matestack/ui/core/mark/mark.haml +5 -0
  106. data/app/concepts/matestack/ui/core/mark/mark.rb +4 -0
  107. data/app/concepts/matestack/ui/core/meter/meter.haml +4 -0
  108. data/app/concepts/matestack/ui/core/meter/meter.rb +14 -0
  109. data/app/concepts/matestack/ui/core/noscript/noscript.haml +5 -0
  110. data/app/concepts/matestack/ui/core/noscript/noscript.rb +5 -0
  111. data/app/concepts/matestack/ui/core/object/object.haml +1 -0
  112. data/app/concepts/matestack/ui/core/object/object.rb +15 -0
  113. data/app/concepts/matestack/ui/core/onclick/onclick.haml +1 -1
  114. data/app/concepts/matestack/ui/core/onclick/onclick.js +2 -3
  115. data/app/concepts/matestack/ui/core/onclick/onclick.rb +1 -2
  116. data/app/concepts/matestack/ui/core/optgroup/optgroup.haml +3 -0
  117. data/app/concepts/matestack/ui/core/optgroup/optgroup.rb +10 -0
  118. data/app/concepts/matestack/ui/core/option/option.haml +5 -0
  119. data/app/concepts/matestack/ui/core/option/option.rb +12 -0
  120. data/app/concepts/matestack/ui/core/output/output.haml +5 -0
  121. data/app/concepts/matestack/ui/core/output/output.rb +11 -0
  122. data/app/concepts/matestack/ui/core/page/content.js +1 -1
  123. data/app/concepts/matestack/ui/core/page/page.rb +61 -22
  124. data/app/concepts/matestack/ui/core/paragraph/paragraph.haml +4 -7
  125. data/app/concepts/matestack/ui/core/param/param.haml +1 -0
  126. data/app/concepts/matestack/ui/core/param/param.rb +10 -0
  127. data/app/concepts/matestack/ui/core/pg/pg.haml +4 -7
  128. data/app/concepts/matestack/ui/core/picture/picture.haml +3 -0
  129. data/app/concepts/matestack/ui/core/picture/picture.rb +4 -0
  130. data/app/concepts/matestack/ui/core/plain/plain.rb +1 -2
  131. data/app/concepts/matestack/ui/core/pre/pre.haml +5 -0
  132. data/app/concepts/matestack/ui/core/pre/pre.rb +5 -0
  133. data/app/concepts/matestack/ui/core/q/q.haml +5 -0
  134. data/app/concepts/matestack/ui/core/q/q.rb +11 -0
  135. data/app/concepts/matestack/ui/core/rp/rp.haml +5 -0
  136. data/app/concepts/matestack/ui/core/rp/rp.rb +5 -0
  137. data/app/concepts/matestack/ui/core/rt/rt.haml +5 -0
  138. data/app/concepts/matestack/ui/core/rt/rt.rb +5 -0
  139. data/app/concepts/matestack/ui/core/ruby/ruby.haml +5 -0
  140. data/app/concepts/matestack/ui/core/ruby/ruby.rb +5 -0
  141. data/app/concepts/matestack/ui/core/s/s.haml +5 -0
  142. data/app/concepts/matestack/ui/core/s/s.rb +6 -0
  143. data/app/concepts/matestack/ui/core/samp/samp.haml +5 -0
  144. data/app/concepts/matestack/ui/core/samp/samp.rb +4 -0
  145. data/app/concepts/matestack/ui/core/sub/sub.haml +5 -0
  146. data/app/concepts/matestack/ui/core/sub/sub.rb +5 -0
  147. data/app/concepts/matestack/ui/core/summary/summary.haml +2 -3
  148. data/app/concepts/matestack/ui/core/summary/summary.rb +1 -0
  149. data/app/concepts/matestack/ui/core/sup/sup.haml +5 -0
  150. data/app/concepts/matestack/ui/core/sup/sup.rb +5 -0
  151. data/app/concepts/matestack/ui/core/tbody/tbody.haml +3 -0
  152. data/app/concepts/matestack/ui/core/tbody/tbody.rb +5 -0
  153. data/app/concepts/matestack/ui/core/td/td.haml +4 -7
  154. data/app/concepts/matestack/ui/core/template/template.haml +3 -0
  155. data/app/concepts/matestack/ui/core/template/template.rb +4 -0
  156. data/app/concepts/matestack/ui/core/tfoot/tfoot.haml +3 -0
  157. data/app/concepts/matestack/ui/core/tfoot/tfoot.rb +5 -0
  158. data/app/concepts/matestack/ui/core/th/th.haml +4 -7
  159. data/app/concepts/matestack/ui/core/thead/thead.haml +3 -0
  160. data/app/concepts/matestack/ui/core/thead/thead.rb +5 -0
  161. data/app/concepts/matestack/ui/core/transition/transition.haml +4 -6
  162. data/app/concepts/matestack/ui/core/transition/transition.js +1 -1
  163. data/app/concepts/matestack/ui/core/u/u.haml +5 -0
  164. data/app/concepts/matestack/ui/core/u/u.rb +6 -0
  165. data/app/concepts/matestack/ui/core/unescaped/unescaped.rb +7 -0
  166. data/app/concepts/matestack/ui/core/var/var.haml +5 -0
  167. data/app/concepts/matestack/ui/core/var/var.rb +4 -0
  168. data/app/concepts/matestack/ui/core/video/video.haml +3 -1
  169. data/app/concepts/matestack/ui/core/video/video.rb +17 -1
  170. data/app/concepts/matestack/ui/core/wbr/wbr.haml +1 -0
  171. data/app/concepts/matestack/ui/core/wbr/wbr.rb +4 -0
  172. data/app/concepts/matestack/ui/core/youtube/youtube.haml +1 -0
  173. data/app/concepts/matestack/ui/core/youtube/youtube.rb +26 -0
  174. data/app/helpers/matestack/ui/core/application_helper.rb +3 -1
  175. data/app/javascript/matestack-ui-core/index.js +22 -0
  176. data/app/javascript/matestack-ui-core/styles/index.scss +5 -0
  177. data/app/javascript/packs/matestack-ui-core.js +8 -0
  178. data/app/lib/matestack/ui/core/component_node.rb +30 -12
  179. data/app/lib/matestack/ui/core/has_view_context.rb +14 -0
  180. data/app/lib/matestack/ui/core/page_node.rb +26 -1
  181. data/app/lib/matestack/ui/core/render.rb +89 -0
  182. data/app/lib/matestack/ui/core/to_cell.rb +3 -1
  183. data/app/lib/matestack/ui/dynamic_actionview_component.rb +1 -0
  184. data/app/lib/matestack/ui/static_actionview_component.rb +1 -0
  185. data/config/routes.rb +0 -1
  186. data/lib/generators/matestack/app/USAGE +21 -0
  187. data/lib/generators/matestack/app/app_generator.rb +25 -0
  188. data/lib/generators/{matestack_app/templates/matestack_app_controller.erb → matestack/app/templates/app/controllers/%file_name%_controller.rb.tt} +0 -2
  189. data/lib/generators/matestack/app/templates/app/matestack/apps/%file_name%.rb.tt +28 -0
  190. data/lib/generators/matestack/component/USAGE +20 -0
  191. data/lib/generators/matestack/component/component_generator.rb +29 -0
  192. data/lib/generators/{matestack_component/templates/matestack_component.haml.erb → matestack/component/templates/app/matestack/components/%namespace%/%file_name%.haml.tt} +0 -0
  193. data/lib/generators/{matestack_component/templates/matestack_component.js.erb → matestack/component/templates/app/matestack/components/%namespace%/%file_name%.js.tt} +2 -2
  194. data/lib/generators/matestack/component/templates/app/matestack/components/%namespace%/%file_name%.rb.tt +11 -0
  195. data/lib/generators/{matestack_component/templates/matestack_component.scss.erb → matestack/component/templates/app/matestack/components/%namespace%/%file_name%.scss.tt} +0 -0
  196. data/lib/generators/matestack/core/component/USAGE +16 -0
  197. data/lib/generators/matestack/core/component/component_generator.rb +23 -0
  198. data/lib/generators/matestack/core/component/templates/app/concepts/matestack/ui/core/%file_name%/%file_name%.haml.tt +5 -0
  199. data/lib/generators/matestack/core/component/templates/app/concepts/matestack/ui/core/%file_name%/%file_name%.rb.tt +4 -0
  200. data/lib/generators/matestack/core/component/templates/docs/components/%file_name%.md.tt +45 -0
  201. data/lib/generators/matestack/core/component/templates/spec/usage/components/%file_name%_spec.rb +31 -0
  202. data/lib/generators/matestack/page/USAGE +28 -0
  203. data/lib/generators/matestack/page/page_generator.rb +54 -0
  204. data/lib/generators/matestack/page/templates/app/matestack/pages/%app_name%/%namespace%/%file_name%.rb.tt +29 -0
  205. data/lib/matestack/ui/core.rb +1 -0
  206. data/lib/matestack/ui/core/cell.rb +33 -0
  207. data/lib/matestack/ui/core/version.rb +1 -1
  208. data/vendor/assets/javascripts/dist/manifest.json +22 -0
  209. data/vendor/assets/javascripts/dist/manifest.json.br +0 -0
  210. data/vendor/assets/javascripts/dist/manifest.json.gz +0 -0
  211. data/vendor/assets/javascripts/dist/matestack-ui-core.css +3 -0
  212. data/vendor/assets/javascripts/dist/matestack-ui-core.css.map +1 -0
  213. data/vendor/assets/javascripts/dist/matestack-ui-core.js +16605 -0
  214. data/vendor/assets/javascripts/dist/matestack-ui-core.js.map +1 -0
  215. data/vendor/assets/javascripts/dist/matestack-ui-core.min.css +0 -0
  216. data/vendor/assets/javascripts/dist/matestack-ui-core.min.js +3 -0
  217. data/vendor/assets/javascripts/dist/matestack-ui-core.min.js.LICENSE.txt +18 -0
  218. data/vendor/assets/javascripts/dist/matestack-ui-core.min.js.br +0 -0
  219. data/vendor/assets/javascripts/dist/matestack-ui-core.min.js.gz +0 -0
  220. data/vendor/assets/javascripts/dist/matestack-ui-core.min.js.map +1 -0
  221. data/vendor/assets/javascripts/dist/matestack-ui-core.min.js.map.br +0 -0
  222. data/vendor/assets/javascripts/dist/matestack-ui-core.min.js.map.gz +0 -0
  223. data/vendor/assets/javascripts/matestack-ui-core.js.erb +2 -0
  224. data/vendor/assets/stylesheets/dist +1 -0
  225. data/vendor/assets/stylesheets/matestack-ui-core.css.erb +2 -0
  226. metadata +168 -32
  227. data/app/concepts/matestack/ui/core/view/view.haml +0 -2
  228. data/app/concepts/matestack/ui/core/view/view.js +0 -42
  229. data/app/concepts/matestack/ui/core/view/view.rb +0 -7
  230. data/lib/generators/matestack_app/USAGE +0 -21
  231. data/lib/generators/matestack_app/matestack_app_generator.rb +0 -26
  232. data/lib/generators/matestack_app/templates/matestack_app.erb +0 -26
  233. data/lib/generators/matestack_component/USAGE +0 -20
  234. data/lib/generators/matestack_component/matestack_component_generator.rb +0 -30
  235. data/lib/generators/matestack_component/templates/matestack_component.rb.erb +0 -13
  236. data/lib/generators/matestack_page/USAGE +0 -28
  237. data/lib/generators/matestack_page/matestack_page_generator.rb +0 -41
  238. data/lib/generators/matestack_page/templates/matestack_page.erb +0 -15
  239. data/vendor/assets/javascripts/manifest.json +0 -4
  240. data/vendor/assets/javascripts/matestack-ui-core.js +0 -15392
  241. data/vendor/assets/javascripts/matestack-ui-core.js.map +0 -1
@@ -0,0 +1 @@
1
+ %area{@tag_attributes}
@@ -0,0 +1,18 @@
1
+ module Matestack::Ui::Core::Area
2
+ class Area < Matestack::Ui::Core::Component::Static
3
+ def setup
4
+ @tag_attributes.merge!({
5
+ alt: options[:alt],
6
+ coords: options[:coords].join(','),
7
+ download: options[:download],
8
+ href: options[:href],
9
+ hreflang: options[:hreflang],
10
+ media: options[:media],
11
+ rel: options[:rel],
12
+ shape: options[:shape],
13
+ target: options[:target],
14
+ type: options[:type]
15
+ })
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,5 @@
1
+ %article{@tag_attributes}
2
+ - if options[:text].nil? && block_given?
3
+ = yield
4
+ - else
5
+ = options[:text]
@@ -0,0 +1,5 @@
1
+ module Matestack::Ui::Core::Article
2
+ class Article < Matestack::Ui::Core::Component::Static
3
+
4
+ end
5
+ end
@@ -0,0 +1,3 @@
1
+ %aside{@tag_attributes}
2
+ - if block_given?
3
+ = yield
@@ -0,0 +1,5 @@
1
+ module Matestack::Ui::Core::Aside
2
+ class Aside < Matestack::Ui::Core::Component::Static
3
+
4
+ end
5
+ end
@@ -1,2 +1,2 @@
1
- %div{"v-if": "showing"}
1
+ %div{@tag_attributes}
2
2
  = yield
@@ -1,8 +1,6 @@
1
1
  import Vue from 'vue/dist/vue.esm'
2
-
3
- import matestackEventHub from 'js/event-hub'
4
-
5
- import componentMixin from 'component/component'
2
+ import matestackEventHub from '../js/event-hub'
3
+ import componentMixin from '../component/component'
6
4
 
7
5
  const componentDef = {
8
6
  mixins: [componentMixin],
@@ -60,6 +58,9 @@ const componentDef = {
60
58
  }
61
59
  }
62
60
  }
61
+ if(this.componentConfig["init_show"] == true){
62
+ this.showing = true
63
+ }
63
64
  },
64
65
  beforeDestroy: function() {
65
66
  const self = this
@@ -1,10 +1,12 @@
1
1
  module Matestack::Ui::Core::Async
2
- class Async < Matestack::Ui::Core::Component::Dynamic
3
-
4
- def setup
5
- @rerender = true
6
- end
7
-
2
+ class Async < Matestack::Ui::Core::Component::Dynamic
8
3
 
4
+ def setup
5
+ @rerender = true
6
+ @tag_attributes.merge!({
7
+ "v-if": "showing"
8
+ })
9
9
  end
10
+
10
11
  end
12
+ end
@@ -0,0 +1,5 @@
1
+ %b{@tag_attributes}
2
+ - if options[:text].nil? && block_given?
3
+ = yield
4
+ - else
5
+ = options[:text]
@@ -0,0 +1,5 @@
1
+ module Matestack::Ui::Core::B
2
+ class B < Matestack::Ui::Core::Component::Static
3
+
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ %bdi{@tag_attributes}
2
+ - if options[:text].blank? && block_given?
3
+ = yield
4
+ - else
5
+ = options[:text]
@@ -0,0 +1,4 @@
1
+ module Matestack::Ui::Core::Bdi
2
+ class Bdi < Matestack::Ui::Core::Component::Static
3
+ end
4
+ end
@@ -0,0 +1,5 @@
1
+ %bdo{@tag_attributes}
2
+ - if options[:text].blank? && block_given?
3
+ = yield
4
+ - else
5
+ = options[:text]
@@ -0,0 +1,11 @@
1
+ module Matestack::Ui::Core::Bdo
2
+ class Bdo < Matestack::Ui::Core::Component::Static
3
+ REQUIRED_KEYS = [:dir]
4
+
5
+ def setup
6
+ @tag_attributes.merge!({
7
+ "dir": options[:dir]
8
+ })
9
+ end
10
+ end
11
+ end
@@ -1,9 +1,11 @@
1
1
  module Matestack::Ui::Core::Blockquote
2
2
  class Blockquote < Matestack::Ui::Core::Component::Static
3
+
3
4
  def setup
4
5
  @tag_attributes.merge!({
5
6
  "cite": options[:cite]
6
- })
7
+ })
7
8
  end
9
+
8
10
  end
9
11
  end
@@ -1,7 +1,5 @@
1
- - if options[:text].nil?
2
- %button{@tag_attributes}
3
- - if block_given?
4
- = yield
5
- - else
6
- %button{@tag_attributes}
1
+ %button{@tag_attributes}
2
+ - if options[:text].nil? && block_given?
3
+ = yield
4
+ - else
7
5
  = options[:text]
@@ -1,6 +1,5 @@
1
1
  %caption{@tag_attributes}
2
- - if options[:text].nil?
3
- - if block_given?
4
- = yield
2
+ - if options[:text].nil? && block_given?
3
+ = yield
5
4
  - else
6
5
  = options[:text]
@@ -0,0 +1,5 @@
1
+ %cite{@tag_attributes}
2
+ - if options[:text].nil? && block_given?
3
+ = yield
4
+ - else
5
+ = options[:text]
@@ -0,0 +1,5 @@
1
+ module Matestack::Ui::Core::Cite
2
+ class Cite < Matestack::Ui::Core::Component::Static
3
+
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ %code{@tag_attributes}
2
+ - if options[:text].nil? && block_given?
3
+ = yield
4
+ - else
5
+ = options[:text]
@@ -0,0 +1,5 @@
1
+ module Matestack::Ui::Core::Code
2
+ class Code < Matestack::Ui::Core::Component::Static
3
+
4
+ end
5
+ end
@@ -1,10 +1,8 @@
1
1
  import Vue from 'vue/dist/vue.esm'
2
-
3
- import matestackEventHub from 'js/event-hub'
4
- import queryParamsHelper from 'js/helpers/query-params-helper'
5
-
6
- import componentMixin from 'component/component'
7
- import asyncMixin from 'async/async'
2
+ import matestackEventHub from '../../js/event-hub'
3
+ import queryParamsHelper from '../../js/helpers/query-params-helper'
4
+ import componentMixin from '../../component/component'
5
+ import asyncMixin from '../../async/async'
8
6
 
9
7
  const componentDef = {
10
8
  mixins: [componentMixin, asyncMixin],
@@ -8,7 +8,7 @@ module Matestack::Ui::Core::Collection::Content
8
8
 
9
9
  def response
10
10
  components {
11
- div do
11
+ div @tag_attributes do
12
12
  yield_components
13
13
  end
14
14
  }
@@ -1,9 +1,7 @@
1
1
  import Vue from 'vue/dist/vue.esm'
2
-
3
- import matestackEventHub from 'js/event-hub'
4
- import queryParamsHelper from 'js/helpers/query-params-helper'
5
-
6
- import componentMixin from 'component/component'
2
+ import matestackEventHub from '../../js/event-hub'
3
+ import queryParamsHelper from '../../js/helpers/query-params-helper'
4
+ import componentMixin from '../../component/component'
7
5
 
8
6
  const componentDef = {
9
7
  mixins: [componentMixin],
@@ -7,7 +7,7 @@ module Matestack::Ui::Core::Collection::Filter
7
7
 
8
8
  def response
9
9
  components {
10
- div do
10
+ div @tag_attributes do
11
11
  yield_components
12
12
  end
13
13
  }
@@ -1,8 +1,2 @@
1
1
  - if [:text, :number, :email, :date, :password].include?(options[:type])
2
- %input{"v-model#{'.number' if options[:type] == :number}": input_key,
3
- type: options[:type],
4
- class: options[:class],
5
- id: component_id,
6
- "@keyup.enter": "submitFilter()",
7
- ref: "filter.#{attr_key}",
8
- placeholder: options[:placeholder]}
2
+ %input{@tag_attributes}
@@ -1,6 +1,18 @@
1
1
  module Matestack::Ui::Core::Collection::Filter::Input
2
2
  class Input < Matestack::Ui::Core::Component::Static
3
3
 
4
+ def setup
5
+ @tag_attributes.merge!({
6
+ "v-model#{'.number' if options[:type] == :number}": input_key,
7
+ type: options[:type],
8
+ class: options[:class],
9
+ id: component_id,
10
+ "@keyup.enter": "submitFilter()",
11
+ ref: "filter.#{attr_key}",
12
+ placeholder: options[:placeholder]
13
+ })
14
+ end
15
+
4
16
  def input_key
5
17
  'filter["' + options[:key].to_s + '"]'
6
18
  end
@@ -59,7 +59,6 @@ module Matestack::Ui::Core::Collection
59
59
 
60
60
  end
61
61
 
62
-
63
62
  module Helper
64
63
 
65
64
  def get_collection_filter collection_id, key=nil
@@ -1,9 +1,7 @@
1
1
  import Vue from 'vue/dist/vue.esm'
2
-
3
- import matestackEventHub from 'js/event-hub'
4
- import queryParamsHelper from 'js/helpers/query-params-helper'
5
-
6
- import componentMixin from 'component/component'
2
+ import matestackEventHub from '../../js/event-hub'
3
+ import queryParamsHelper from '../../js/helpers/query-params-helper'
4
+ import componentMixin from '../../component/component'
7
5
 
8
6
  const componentDef = {
9
7
  mixins: [componentMixin],
@@ -7,7 +7,7 @@ module Matestack::Ui::Core::Collection::Order
7
7
 
8
8
  def response
9
9
  components {
10
- div do
10
+ div @tag_attributes do
11
11
  yield_components
12
12
  end
13
13
  }
@@ -3,7 +3,9 @@ module Matestack::Ui::Core::Collection::Order::Toggle::Indicator
3
3
 
4
4
  def response
5
5
  components {
6
- plain "{{orderIndicator( '#{@component_config[:key]}', {asc: '#{@component_config[:asc]}', desc: '#{@component_config[:desc]}'} ) }}"
6
+ span @tag_attributes do
7
+ plain "{{orderIndicator( '#{@component_config[:key]}', {asc: '#{@component_config[:asc]}', desc: '#{@component_config[:desc]}'} ) }}"
8
+ end
7
9
  }
8
10
  end
9
11
 
@@ -1,6 +1,5 @@
1
1
  module Matestack::Ui::Core::Collection::Order::Toggle
2
2
  class Toggle < Matestack::Ui::Core::Component::Static
3
3
 
4
-
5
4
  end
6
5
  end
@@ -1,5 +1,5 @@
1
1
  import Vue from 'vue/dist/vue.esm'
2
- import componentMixin from 'component/component'
2
+ import componentMixin from './component'
3
3
 
4
4
  const componentDef = {
5
5
  mixins: [componentMixin]
@@ -1,8 +1,7 @@
1
1
  import Vue from 'vue/dist/vue.esm'
2
2
  import axios from 'axios'
3
3
  import VRuntimeTemplate from "v-runtime-template"
4
-
5
- import matestackEventHub from 'js/event-hub'
4
+ import matestackEventHub from '../js/event-hub'
6
5
 
7
6
  const componentMixin = {
8
7
  props: ['componentConfig', 'params'],
@@ -1,36 +1,9 @@
1
1
  module Matestack::Ui::Core::Component
2
2
  class Dynamic < Trailblazer::Cell
3
-
4
-
5
- include ActionView::Helpers::ActiveModelHelper
6
- include ActionView::Helpers::ActiveModelInstanceTag
7
- include ActionView::Helpers::AssetTagHelper
8
- include ActionView::Helpers::AssetUrlHelper
9
- include ActionView::Helpers::AtomFeedHelper
10
- include ActionView::Helpers::CacheHelper
11
- include ActionView::Helpers::CaptureHelper
12
- include ActionView::Helpers::CspHelper
13
- include ActionView::Helpers::CsrfHelper
14
- include ActionView::Helpers::DateHelper
15
- include ActionView::Helpers::DebugHelper
16
- include ActionView::Helpers::FormHelper
17
- include ActionView::Helpers::FormOptionsHelper
18
- include ActionView::Helpers::FormTagHelper
19
- include ActionView::Helpers::JavaScriptHelper
20
- include ActionView::Helpers::NumberHelper
21
- include ActionView::Helpers::OutputSafetyHelper
22
- include ActionView::Helpers::RecordTagHelper
23
- # include ActionView::Helpers::RenderingHelper
24
- include ActionView::Helpers::SanitizeHelper
25
- include ActionView::Helpers::TagHelper
26
- include ActionView::Helpers::TextHelper
27
- include ActionView::Helpers::TranslationHelper
28
- include ActionView::Helpers::UrlHelper
29
- # include ActionView::Helpers::UrlHelper
30
- # include ActionView::Helpers::TranslationHelper
31
- include ::Cell::Haml
3
+ include Matestack::Ui::Core::Cell
32
4
  include Matestack::Ui::Core::ApplicationHelper
33
5
  include Matestack::Ui::Core::ToCell
6
+ include Matestack::Ui::Core::HasViewContext
34
7
 
35
8
  view_paths << "#{Matestack::Ui::Core::Engine.root}/app/concepts"
36
9
  view_paths << "#{::Rails.root}/app/matestack"
@@ -69,13 +42,14 @@ module Matestack::Ui::Core::Component
69
42
  @nodes = {}
70
43
  @cells = {}
71
44
  @included_config = options[:included_config]
45
+ @cached_params = options[:cached_params]
72
46
  @rerender = false
73
47
  @options = options
48
+ set_tag_attributes
49
+ setup
74
50
  generate_component_name
75
51
  generate_children_cells
76
- set_tag_attributes
77
52
  validate_options
78
- setup
79
53
  end
80
54
 
81
55
  def validate_options
@@ -160,7 +134,7 @@ module Matestack::Ui::Core::Component
160
134
  @nodes = Matestack::Ui::Core::ComponentNode.build(self, nil, &block)
161
135
 
162
136
  @nodes.each do |key, node|
163
- @cells[key] = to_cell(key, node["component_name"], node["config"], node["argument"], node["components"], node["included_config"])
137
+ @cells[key] = to_cell("#{@component_key}__#{key}", node["component_name"], node["config"], node["argument"], node["components"], node["included_config"], node["cached_params"])
164
138
  end
165
139
  end
166
140
 
@@ -193,6 +167,37 @@ module Matestack::Ui::Core::Component
193
167
  result.join(" ")
194
168
  end
195
169
 
170
+ def render_child_component component_key, current_search_keys_array
171
+ if respond_to? :prepare
172
+ prepare
173
+ end
174
+
175
+ response
176
+
177
+ if current_search_keys_array.count > 1
178
+ if @nodes.dig(*current_search_keys_array) == nil
179
+ rest = []
180
+ while @nodes.dig(*current_search_keys_array) == nil
181
+ rest << current_search_keys_array.pop
182
+ end
183
+ node = @nodes.dig(*current_search_keys_array)
184
+ cell = to_cell(component_key, node["component_name"], node["config"], node["argument"], node["components"], node["included_config"], node["cached_params"])
185
+ begin
186
+ return cell.render_child_component component_key, rest.reverse[1..-1]
187
+ rescue
188
+ return cell.render_content
189
+ end
190
+ else
191
+ node = @nodes.dig(*current_search_keys_array)
192
+ cell = to_cell(component_key, node["component_name"], node["config"], node["argument"], node["components"], node["included_config"], node["cached_params"])
193
+ return cell.render_content
194
+ end
195
+ else
196
+ node = @nodes[current_search_keys_array[0]]
197
+ cell = to_cell(component_key, node["component_name"], node["config"], node["argument"], node["components"], node["included_config"], node["cached_params"])
198
+ return cell.render_content
199
+ end
200
+ end
196
201
 
197
202
  private
198
203
 
@@ -201,7 +206,7 @@ module Matestack::Ui::Core::Component
201
206
  #needs refactoring --> in some cases, :component_key, :children, :origin_url, :url_params, :included_config get passed into options[:children] which causes errors
202
207
  #quickfix: except them from iteration
203
208
  options[:children].except(:component_key, :children, :origin_url, :url_params, :included_config).each do |key, node|
204
- @children_cells[key] = to_cell("#{@component_key}__#{key}", node["component_name"], node["config"], node["argument"], node["components"], node["included_config"])
209
+ @children_cells[key] = to_cell("#{@component_key}__#{key}", node["component_name"], node["config"], node["argument"], node["components"], node["included_config"], node["cached_params"])
205
210
  end
206
211
  end
207
212
  end