ui_bibz 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (154) hide show
  1. checksums.yaml +13 -5
  2. data/.gitignore +1 -1
  3. data/.yardoc/checksums +52 -0
  4. data/.yardoc/object_types +0 -0
  5. data/.yardoc/objects/root.dat +0 -0
  6. data/.yardoc/proxy_types +0 -0
  7. data/Gemfile +1 -1
  8. data/Gemfile.lock +11 -21
  9. data/README.md +359 -239
  10. data/Rakefile +12 -13
  11. data/doc/UiBibz/Concerns/Models/Searchable/ClassMethods.html +174 -0
  12. data/doc/UiBibz/Concerns/Models/Searchable.html +120 -0
  13. data/doc/UiBibz/Helpers/MetaHelper.html +218 -0
  14. data/doc/UiBibz/Helpers/UiCoreHelper.html +1130 -0
  15. data/doc/UiBibz/Helpers/UiUxHelper.html +463 -0
  16. data/doc/UiBibz/Helpers/UtilsHelper.html +187 -0
  17. data/doc/UiBibz/Rails/Engine.html +123 -0
  18. data/doc/UiBibz/Rails.html +115 -0
  19. data/doc/UiBibz/Ui/Base.html +304 -0
  20. data/doc/UiBibz/Ui/Core/Alert.html +367 -0
  21. data/doc/UiBibz/Ui/Core/Bar.html +356 -0
  22. data/doc/UiBibz/Ui/Core/Breadcrumb.html +427 -0
  23. data/doc/UiBibz/Ui/Core/BreadcrumbLink.html +354 -0
  24. data/doc/UiBibz/Ui/Core/Button.html +363 -0
  25. data/doc/UiBibz/Ui/Core/ButtonDropdown.html +385 -0
  26. data/doc/UiBibz/Ui/Core/ButtonGroup.html +356 -0
  27. data/doc/UiBibz/Ui/Core/ButtonLink.html +365 -0
  28. data/doc/UiBibz/Ui/Core/ButtonSplitDropdown.html +387 -0
  29. data/doc/UiBibz/Ui/Core/Col.html +357 -0
  30. data/doc/UiBibz/Ui/Core/Component.html +1144 -0
  31. data/doc/UiBibz/Ui/Core/Dropdown.html +877 -0
  32. data/doc/UiBibz/Ui/Core/DropdownList.html +369 -0
  33. data/doc/UiBibz/Ui/Core/Glyph.html +742 -0
  34. data/doc/UiBibz/Ui/Core/Jumbotron.html +363 -0
  35. data/doc/UiBibz/Ui/Core/Label.html +361 -0
  36. data/doc/UiBibz/Ui/Core/List.html +486 -0
  37. data/doc/UiBibz/Ui/Core/ListGroup.html +446 -0
  38. data/doc/UiBibz/Ui/Core/Nav.html +474 -0
  39. data/doc/UiBibz/Ui/Core/NavDropdown.html +376 -0
  40. data/doc/UiBibz/Ui/Core/NavLink.html +347 -0
  41. data/doc/UiBibz/Ui/Core/Navbar.html +535 -0
  42. data/doc/UiBibz/Ui/Core/NavbarForm.html +341 -0
  43. data/doc/UiBibz/Ui/Core/NavbarNav.html +301 -0
  44. data/doc/UiBibz/Ui/Core/NavbarText.html +341 -0
  45. data/doc/UiBibz/Ui/Core/Panel.html +806 -0
  46. data/doc/UiBibz/Ui/Core/ProgressBar.html +433 -0
  47. data/doc/UiBibz/Ui/Core/Row.html +335 -0
  48. data/doc/UiBibz/Ui/Core.html +117 -0
  49. data/doc/UiBibz/Ui/Ux/Actionable.html +478 -0
  50. data/doc/UiBibz/Ui/Ux/Actions.html +314 -0
  51. data/doc/UiBibz/Ui/Ux/Column.html +1177 -0
  52. data/doc/UiBibz/Ui/Ux/Columns.html +312 -0
  53. data/doc/UiBibz/Ui/Ux/Grid.html +823 -0
  54. data/doc/UiBibz/Ui/Ux/Paginable.html +368 -0
  55. data/doc/UiBibz/Ui/Ux/Searchable.html +363 -0
  56. data/doc/UiBibz/Ui/Ux/Sortable.html +289 -0
  57. data/doc/UiBibz/Ui/Ux/Store.html +968 -0
  58. data/doc/UiBibz/Ui/Ux/Table.html +957 -0
  59. data/doc/UiBibz/Ui/Ux/TableAction.html +309 -0
  60. data/doc/UiBibz/Ui/Ux/TablePagination.html +319 -0
  61. data/doc/UiBibz/Ui/Ux/TablePaginationPerPage.html +331 -0
  62. data/doc/UiBibz/Ui/Ux/TablePanel.html +576 -0
  63. data/doc/UiBibz/Ui/Ux/TableSearchField.html +291 -0
  64. data/doc/UiBibz/Ui/Ux.html +117 -0
  65. data/doc/UiBibz/Ui.html +117 -0
  66. data/doc/UiBibz/Utils/Internationalization.html +262 -0
  67. data/doc/UiBibz/Utils.html +115 -0
  68. data/doc/UiBibz.html +129 -0
  69. data/doc/_index.html +635 -0
  70. data/doc/class_list.html +58 -0
  71. data/doc/css/common.css +1 -0
  72. data/doc/css/full_list.css +57 -0
  73. data/doc/css/style.css +339 -0
  74. data/doc/file.README.html +1022 -0
  75. data/doc/file_list.html +60 -0
  76. data/doc/frames.html +26 -0
  77. data/doc/images/navbar.png +0 -0
  78. data/doc/index.html +1022 -0
  79. data/doc/js/app.js +219 -0
  80. data/doc/js/full_list.js +181 -0
  81. data/doc/js/jquery.js +4 -0
  82. data/doc/method_list.html +1335 -0
  83. data/doc/top-level-namespace.html +112 -0
  84. data/lib/ui_bibz/helpers/ui_core_helper.rb +94 -0
  85. data/lib/ui_bibz/helpers/ui_ux_helper.rb +43 -0
  86. data/lib/ui_bibz/rails/engine.rb +2 -1
  87. data/lib/ui_bibz/ui/{ui.rb → base.rb} +1 -1
  88. data/lib/ui_bibz/ui/{alert.rb → core/alert.rb} +15 -7
  89. data/lib/ui_bibz/ui/core/breadcrumb/breadcrumb.rb +71 -0
  90. data/lib/ui_bibz/ui/{breadcrumb → core/breadcrumb}/components/breadcrumb_link.rb +6 -6
  91. data/lib/ui_bibz/ui/{button → core/button}/button.rb +13 -6
  92. data/lib/ui_bibz/ui/{button → core/button}/button_dropdown.rb +15 -4
  93. data/lib/ui_bibz/ui/{button → core/button}/button_group.rb +14 -6
  94. data/lib/ui_bibz/ui/{button → core/button}/button_link.rb +14 -6
  95. data/lib/ui_bibz/ui/{button → core/button}/button_split_dropdown.rb +15 -4
  96. data/lib/ui_bibz/ui/{grid/components → core}/col.rb +12 -6
  97. data/lib/ui_bibz/ui/{component.rb → core/component.rb} +7 -7
  98. data/lib/ui_bibz/ui/{dropdown → core/dropdown}/components/dropdown_list.rb +7 -7
  99. data/lib/ui_bibz/ui/{dropdown → core/dropdown}/dropdown.rb +18 -7
  100. data/lib/ui_bibz/ui/{glyph.rb → core/glyph.rb} +18 -10
  101. data/lib/ui_bibz/ui/{jumbotron.rb → core/jumbotron.rb} +14 -6
  102. data/lib/ui_bibz/ui/{label.rb → core/label.rb} +14 -6
  103. data/lib/ui_bibz/ui/{list → core/list}/components/list.rb +8 -8
  104. data/lib/ui_bibz/ui/{list → core/list}/list_group.rb +28 -6
  105. data/lib/ui_bibz/ui/core/nav/components/nav_dropdown.rb +64 -0
  106. data/lib/ui_bibz/ui/{nav → core/nav}/components/nav_link.rb +6 -6
  107. data/lib/ui_bibz/ui/core/nav/components/navbar_form.rb +45 -0
  108. data/lib/ui_bibz/ui/core/nav/components/navbar_nav.rb +56 -0
  109. data/lib/ui_bibz/ui/core/nav/components/navbar_text.rb +45 -0
  110. data/lib/ui_bibz/ui/core/nav/nav.rb +90 -0
  111. data/lib/ui_bibz/ui/core/nav/navbar.rb +121 -0
  112. data/lib/ui_bibz/ui/{panel.rb → core/panel.rb} +36 -8
  113. data/lib/ui_bibz/ui/{progress_bar → core/progress_bar}/components/bar.rb +7 -7
  114. data/lib/ui_bibz/ui/{progress_bar → core/progress_bar}/progress_bar.rb +20 -9
  115. data/lib/ui_bibz/ui/{grid/components → core}/row.rb +12 -4
  116. data/lib/ui_bibz/ui/{grid → ux}/grid.rb +17 -8
  117. data/lib/ui_bibz/ui/{table → ux/table}/components/actions.rb +5 -5
  118. data/lib/ui_bibz/ui/ux/table/components/column.rb +34 -0
  119. data/lib/ui_bibz/ui/ux/table/components/columns.rb +16 -0
  120. data/lib/ui_bibz/ui/{table → ux/table}/components/store.rb +4 -4
  121. data/lib/ui_bibz/ui/{table → ux/table}/components/table_action.rb +2 -2
  122. data/lib/ui_bibz/ui/{table/ux → ux/table/extensions}/actionable.rb +3 -3
  123. data/lib/ui_bibz/ui/{table/ux → ux/table/extensions}/paginable.rb +5 -5
  124. data/lib/ui_bibz/ui/{table/ux → ux/table/extensions}/searchable.rb +4 -4
  125. data/lib/ui_bibz/ui/{table/ux → ux/table/extensions}/sortable.rb +3 -3
  126. data/lib/ui_bibz/ui/{table → ux/table}/table.rb +40 -22
  127. data/lib/ui_bibz/ui/ux/table/table_pagination.rb +51 -0
  128. data/lib/ui_bibz/ui/{table → ux/table}/table_pagination_per_page.rb +26 -4
  129. data/lib/ui_bibz/ui/ux/table/table_panel.rb +155 -0
  130. data/lib/ui_bibz/ui/{table → ux/table}/table_search_field.rb +7 -7
  131. data/lib/ui_bibz/version.rb +1 -1
  132. data/lib/ui_bibz.rb +40 -29
  133. data/test/store_test.rb +2 -2
  134. data/test/ui/button_test.rb +6 -6
  135. data/test/ui/component_test.rb +2 -2
  136. data/test/ui/dropdown_test.rb +1 -1
  137. data/test/ui/glyph_test.rb +3 -3
  138. data/test/ui/grid_test.rb +4 -4
  139. data/test/ui/list_group_test.rb +2 -2
  140. data/test/ui/nav_test.rb +3 -4
  141. data/test/ui/panel_test.rb +4 -4
  142. data/test/ui/table_test.rb +32 -32
  143. data/test/ui_helper_test.rb +18 -2
  144. data/ui_bibz.gemspec +1 -0
  145. data/vendor/assets/stylesheets/ui_bibz.sass +3 -0
  146. metadata +166 -132
  147. data/README.rdoc +0 -0
  148. data/lib/ui_bibz/helpers/ui_helper.rb +0 -119
  149. data/lib/ui_bibz/ui/breadcrumb/breadcrumb.rb +0 -54
  150. data/lib/ui_bibz/ui/nav/nav.rb +0 -65
  151. data/lib/ui_bibz/ui/table/components/column.rb +0 -34
  152. data/lib/ui_bibz/ui/table/components/columns.rb +0 -16
  153. data/lib/ui_bibz/ui/table/table_pagination.rb +0 -29
  154. data/lib/ui_bibz/ui/table/table_panel.rb +0 -66
@@ -7,14 +7,14 @@ class PanelTest < ActionView::TestCase
7
7
  end
8
8
 
9
9
  test 'simple panel' do
10
- actual = UiBibz::Ui::Panel.new(@content).render
10
+ actual = UiBibz::Ui::Core::Panel.new(@content).render
11
11
  expected = "<div class=\"panel-default panel\"><div class=\"panel-body\">#{ @content }</div></div>"
12
12
 
13
13
  assert_equal expected, actual
14
14
  end
15
15
 
16
16
  test 'simple panel with block' do
17
- actual = UiBibz::Ui::Panel.new do
17
+ actual = UiBibz::Ui::Core::Panel.new do
18
18
  @content
19
19
  end.render
20
20
  expected = "<div class=\"panel-default panel\"><div class=\"panel-body\">#{ @content }</div></div>"
@@ -23,7 +23,7 @@ class PanelTest < ActionView::TestCase
23
23
  end
24
24
 
25
25
  test 'simple panel with tap' do
26
- actual = UiBibz::Ui::Panel.new().tap do |p|
26
+ actual = UiBibz::Ui::Core::Panel.new().tap do |p|
27
27
  p.body @content
28
28
  end.render
29
29
  expected = "<div class=\"panel-default panel\"><div class=\"panel-body\">#{ @content }</div></div>"
@@ -32,7 +32,7 @@ class PanelTest < ActionView::TestCase
32
32
  end
33
33
 
34
34
  test 'complex panel with tap' do
35
- actual = UiBibz::Ui::Panel.new({state: :danger}, { class: 'example'}).tap do |p|
35
+ actual = UiBibz::Ui::Core::Panel.new({state: :danger}, { class: 'example'}).tap do |p|
36
36
  p.header 'header', class: 'header-example'
37
37
  p.body class: 'body-example' do
38
38
  @content
@@ -1,9 +1,9 @@
1
1
  require 'test_helper'
2
- require "ui_bibz/ui/table/components/store"
3
- require "ui_bibz/ui/table/ux/paginable"
4
- require "ui_bibz/ui/table/ux/searchable"
5
- require "ui_bibz/ui/table/ux/sortable"
6
- require "ui_bibz/ui/table/ux/actionable"
2
+ require "ui_bibz/ui/ux/table/components/store"
3
+ require "ui_bibz/ui/ux/table/extensions/paginable"
4
+ require "ui_bibz/ui/ux/table/extensions/searchable"
5
+ require "ui_bibz/ui/ux/table/extensions/sortable"
6
+ require "ui_bibz/ui/ux/table/extensions/actionable"
7
7
  include UiBibz::Helpers
8
8
  class TableTest < ActionView::TestCase
9
9
 
@@ -19,18 +19,18 @@ class TableTest < ActionView::TestCase
19
19
  page: 1
20
20
  }
21
21
  @users = User.table_search_pagination(params, session)
22
- @store = UiBibz::Ui::Store.new @users
22
+ @store = UiBibz::Ui::Ux::Store.new @users
23
23
  end
24
24
 
25
25
  test 'table search field' do
26
- actual = UiBibz::Ui::TableSearchField.new({ store: @users}).render
27
- expected = "<form action=\"/users\" accept-charset=\"UTF-8\" method=\"get\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" /><div class=\"input-group input-group-sm table-search-field\"><span class=\"input-group-addon\"><i class=\"glyph fa fa-search\"></i></span><input type=\"search\" value=\"Name fr\" name=\"search\" class=\"form-control\" placeholder=\"Search by name_fr and name_en...\" /><span class=\"clear-search-btn input-group-addon\"><i class=\"glyph fa fa-times-circle\"></i></span></div></form>"
26
+ actual = UiBibz::Ui::Ux::TableSearchField.new({ store: @users}).render
27
+ expected = "<form class=\"form-table-search-field\" action=\"/users\" accept-charset=\"UTF-8\" method=\"get\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" /><div class=\"input-group input-group-sm table-search-field\"><span class=\"input-group-addon\"><i class=\"glyph fa fa-search\"></i></span><input type=\"search\" value=\"Name fr\" name=\"search\" class=\"form-control\" placeholder=\"Search by name_fr and name_en...\" /><span class=\"clear-search-btn input-group-addon\"><i class=\"glyph fa fa-times-circle\"></i></span></div></form>"
28
28
 
29
29
  assert_equal expected, actual
30
30
  end
31
31
 
32
32
  test 'table pagination' do
33
- actual = UiBibz::Ui::TablePagination.new({ store: @users}).render
33
+ actual = UiBibz::Ui::Ux::TablePagination.new({ store: @users }).render
34
34
  expected = "<ul class=\"pagination pagination\"><li class=\"prev disabled\"><span>&#8592; Previous</span></li> <li class=\"active\"><span>1</span></li> <li><a rel=\"next\" href=\"/users?page=2\">2</a></li> <li><a href=\"/users?page=3\">3</a></li> <li><a href=\"/users?page=4\">4</a></li> <li><a href=\"/users?page=5\">5</a></li> <li><a href=\"/users?page=6\">6</a></li> <li><a href=\"/users?page=7\">7</a></li> <li><a href=\"/users?page=8\">8</a></li> <li><a href=\"/users?page=9\">9</a></li> <li class=\"disabled\"><span>&hellip;</span></li> <li><a href=\"/users?page=12\">12</a></li> <li><a href=\"/users?page=13\">13</a></li> <li class=\"next\"><a rel=\"next\" href=\"/users?page=2\">Next &#8594;</a></li></ul>"
35
35
 
36
36
  assert_equal expected, actual
@@ -38,7 +38,7 @@ class TableTest < ActionView::TestCase
38
38
 
39
39
  test 'table non sortable' do
40
40
  options = { sortable: false }
41
- actual = UiBibz::Ui::Sortable.new(@store, options).header(@store.columns.list.first)
41
+ actual = UiBibz::Ui::Ux::Sortable.new(@store, options).header(@store.columns.list.first)
42
42
  expected = "Id"
43
43
 
44
44
  assert_equal expected, actual
@@ -46,7 +46,7 @@ class TableTest < ActionView::TestCase
46
46
 
47
47
  test 'table sortable' do
48
48
  options = { sortable: true }
49
- actual = UiBibz::Ui::Sortable.new(@store, options).header(@store.columns.list.first)
49
+ actual = UiBibz::Ui::Ux::Sortable.new(@store, options).header(@store.columns.list.first)
50
50
  expected = "<a class=\"dropup\" href=\"/users?direction=asc&amp;search=Name+fr&amp;sort=users.id\">Id</a>"
51
51
 
52
52
  assert_equal expected, actual
@@ -54,7 +54,7 @@ class TableTest < ActionView::TestCase
54
54
 
55
55
  test 'table non paginable' do
56
56
  options = { paginable: false }
57
- pagination = UiBibz::Ui::Paginable.new(@store, options)
57
+ pagination = UiBibz::Ui::Ux::Paginable.new(@store, options)
58
58
  actual = pagination.render if pagination.paginable?
59
59
  expected = nil
60
60
 
@@ -63,42 +63,42 @@ class TableTest < ActionView::TestCase
63
63
 
64
64
  test 'table paginable' do
65
65
  options = { paginable: true }
66
- pagination = UiBibz::Ui::Paginable.new(@store, options)
66
+ pagination = UiBibz::Ui::Ux::Paginable.new(@store, options)
67
67
  actual = pagination.render if pagination.paginable?
68
68
  expected = "<div><ul class=\"pagination pagination\"><li class=\"prev disabled\"><span>&#8592; Previous</span></li> <li class=\"active\"><span>1</span></li> <li><a rel=\"next\" href=\"/users?page=2\">2</a></li> <li><a href=\"/users?page=3\">3</a></li> <li><a href=\"/users?page=4\">4</a></li> <li><a href=\"/users?page=5\">5</a></li> <li><a href=\"/users?page=6\">6</a></li> <li><a href=\"/users?page=7\">7</a></li> <li><a href=\"/users?page=8\">8</a></li> <li><a href=\"/users?page=9\">9</a></li> <li class=\"disabled\"><span>&hellip;</span></li> <li><a href=\"/users?page=12\">12</a></li> <li><a href=\"/users?page=13\">13</a></li> <li class=\"next\"><a rel=\"next\" href=\"/users?page=2\">Next &#8594;</a></li></ul><form action=\"/users\" accept-charset=\"UTF-8\" method=\"get\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" /><div class=\"table-pagination-per-page\">Displaying User <b>1&nbsp;-&nbsp;2</b> of <b>25</b> in total | Per page: <select name=\"per_page\" id=\"per_page\" class=\"form-control\"><option value=\"25\">25</option>
69
69
  <option value=\"50\">50</option>
70
- <option value=\"100\">100</option></select></div></form><br class=\"clear\" /></div>"
70
+ <option value=\"100\">100</option></select></div></form><br class=\"ui-bibz-clear\" /></div>"
71
71
 
72
72
  assert_equal expected, actual
73
73
  end
74
74
 
75
75
  test 'table non searchable' do
76
76
  options = { searchable: false }
77
- actual = UiBibz::Ui::Searchable.new(@store, options).render
78
- expected = "<div><div class=\"title\">Users list</div><br class=\"clear\" /></div>"
77
+ actual = UiBibz::Ui::Ux::Searchable.new(@store, options).render
78
+ expected = "<div><div class=\"title\">Users list</div><br class=\"ui-bibz-clear\" /></div>"
79
79
 
80
80
  assert_equal expected, actual
81
81
  end
82
82
 
83
83
  test 'table non searchable with a title and glyph' do
84
84
  options = { searchable: false, glyph: 'toto', title: 'Title list' }
85
- actual = UiBibz::Ui::Searchable.new(@store, options).render
86
- expected = "<div><div class=\"title\"><i class=\"glyph fa fa-toto\"></i>Title list</div><br class=\"clear\" /></div>"
85
+ actual = UiBibz::Ui::Ux::Searchable.new(@store, options).render
86
+ expected = "<div><div class=\"title\"><i class=\"glyph fa fa-toto\"></i>Title list</div><br class=\"ui-bibz-clear\" /></div>"
87
87
 
88
88
  assert_equal expected, actual
89
89
  end
90
90
 
91
91
  test 'table searchable' do
92
92
  options = { searchable: true }
93
- actual = UiBibz::Ui::Searchable.new(@store, options).render
94
- expected = "<div><div class=\"title\">Users list</div><div class=\"input-group input-group-sm table-search-field\"><span class=\"input-group-addon\"><i class=\"glyph fa fa-search\"></i></span><input type=\"search\" value=\"Name fr\" name=\"search\" class=\"form-control\" placeholder=\"Search by name_fr and name_en...\" /><span class=\"clear-search-btn input-group-addon\"><i class=\"glyph fa fa-times-circle\"></i></span></div><br class=\"clear\" /></div>"
93
+ actual = UiBibz::Ui::Ux::Searchable.new(@store, options).render
94
+ expected = "<div><div class=\"title\">Users list</div><div class=\"input-group input-group-sm table-search-field\"><span class=\"input-group-addon\"><i class=\"glyph fa fa-search\"></i></span><input type=\"search\" value=\"Name fr\" name=\"search\" class=\"form-control\" placeholder=\"Search by name_fr and name_en...\" /><span class=\"clear-search-btn input-group-addon\"><i class=\"glyph fa fa-times-circle\"></i></span></div><br class=\"ui-bibz-clear\" /></div>"
95
95
 
96
96
  assert_equal expected, actual
97
97
  end
98
98
 
99
99
  test 'table actionable header' do
100
100
  options = { actionable: true }
101
- action = UiBibz::Ui::Actionable.new(@store, options)
101
+ action = UiBibz::Ui::Ux::Actionable.new(@store, options)
102
102
  actual = action.header []
103
103
  expected = ["<th class=\"action\"></th>"]
104
104
 
@@ -107,7 +107,7 @@ class TableTest < ActionView::TestCase
107
107
 
108
108
  test 'table actionable body' do
109
109
  options = { actionable: true }
110
- action = UiBibz::Ui::Actionable.new(@store, options)
110
+ action = UiBibz::Ui::Ux::Actionable.new(@store, options)
111
111
  actual = action.body @store.records.first, []
112
112
  expected = ["<td><div class=\"btn-group-xs dropdown-action dropdown\"><button class=\"btn btn-default dropdown-toggle\" type=\"button\" data-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"glyph fa fa-ellipsis-v fa-fw\"></i> Actions <span class=\"caret\"></span></button><ul class=\"dropdown-menu dropdown-menu-right\" role=\"menu\"></ul></div></td>"]
113
113
 
@@ -116,7 +116,7 @@ class TableTest < ActionView::TestCase
116
116
 
117
117
  test 'table actionable inject_url' do
118
118
  options = { actionable: true }
119
- action = UiBibz::Ui::Actionable.new(@store, options)
119
+ action = UiBibz::Ui::Ux::Actionable.new(@store, options)
120
120
  actual = action.inject_url 'http://localhost/users/id/test', @store.records.first
121
121
  expected = "http://localhost/users/1/test"
122
122
 
@@ -125,7 +125,7 @@ class TableTest < ActionView::TestCase
125
125
 
126
126
  test 'table non actionable header' do
127
127
  options = { actionable: false }
128
- action = UiBibz::Ui::Actionable.new(@store, options)
128
+ action = UiBibz::Ui::Ux::Actionable.new(@store, options)
129
129
  actual = action.header []
130
130
  expected = []
131
131
 
@@ -134,7 +134,7 @@ class TableTest < ActionView::TestCase
134
134
 
135
135
  test 'table non actionable body' do
136
136
  options = { actionable: false }
137
- action = UiBibz::Ui::Actionable.new(@store, options)
137
+ action = UiBibz::Ui::Ux::Actionable.new(@store, options)
138
138
  actual = action.body @store.records.first, []
139
139
  expected = []
140
140
 
@@ -142,11 +142,11 @@ class TableTest < ActionView::TestCase
142
142
  end
143
143
 
144
144
  test 'simple table_panel' do
145
- actual = UiBibz::Ui::TablePanel.new(store: @users, tap: true).render
145
+ actual = UiBibz::Ui::Ux::TablePanel.new(store: @users, tap: true).render
146
146
  end
147
147
 
148
148
  test 'complex table_panel' do
149
- actual = UiBibz::Ui::TablePanel.new({ store: @users, tap: true }, { class: 'toto' }).tap do |pane|
149
+ actual = UiBibz::Ui::Ux::TablePanel.new({ store: @users, tap: true }, { class: 'toto' }).tap do |pane|
150
150
  pane.header 'Test header'
151
151
  pane.body class: 'ui' do
152
152
  'Test body'
@@ -155,16 +155,16 @@ class TableTest < ActionView::TestCase
155
155
  end
156
156
 
157
157
  test 'complex table_panel with custom actions' do
158
- actual = UiBibz::Ui::TablePanel.new({ store: @users, tap: true }, { class: 'toto'}).tap do |pane|
158
+ actual = UiBibz::Ui::Ux::TablePanel.new({ store: @users, tap: true }, { class: 'toto'}).tap do |pane|
159
159
  pane.header 'Test header'
160
160
  pane.body cls: 'ui' do
161
161
  'Test body'
162
162
  end
163
163
  pane.columns do |c|
164
- c.column({ name: '#', data_index: 'id' })
165
- c.column({ name: 'Name fr', data_index: 'name_fr', link: edit_user_path(:id), order: 2 })
166
- c.column({ name: 'Name en', data_index: 'name_en', order: 1 })
167
- c.column({ name: 'Name en', data_index: 'name_en', format: lambda{ |records, record| "name #{ record.id}"}})
164
+ c.column('#', { data_index: 'id' })
165
+ c.column('Name fr', { data_index: 'name_fr', link: edit_user_path(:id), order: 2 })
166
+ c.column('Name en', { data_index: 'name_en', order: 1 })
167
+ c.column('Name en', { data_index: 'name_en', format: lambda{ |records, record| "name #{ record.id}"}})
168
168
  end
169
169
  pane.actions do |a|
170
170
  a.action 'toto', url: users_path(:id), glyph: 'eye'
@@ -1,6 +1,6 @@
1
1
  require 'test_helper'
2
2
 
3
- include UiBibz::Helpers
3
+ include UiBibz::Helpers::UiCoreHelper
4
4
  class UiHelperTest < ActionView::TestCase
5
5
 
6
6
  test 'breadcrumb' do
@@ -48,8 +48,24 @@ class UiHelperTest < ActionView::TestCase
48
48
  assert_equal expected, actual
49
49
  end
50
50
 
51
+ test 'navbar' do
52
+ actual = navbar(title: 'My title', position: :bottom, type: :inverse, glyph: 'pencil') do |nb|
53
+ nb.nav do |n|
54
+ n.link 'Toto', url: '#'
55
+ n.link 'Tata', url: '#'
56
+ end
57
+ nb.nav(position: :right) do |n|
58
+ n.link 'lala', url: '#'
59
+ n.link 'lolo', url: '#'
60
+ end
61
+ end
62
+ expected = "<nav class=\"navbar navbar-inverse navbar-fixed-bottom\"><div class=\"container-fluid\"><div class=\"navbar-header\"><button class=\"navbar-toggle collapsed\" data-toggle=\"collapse\" data-target=\"#navbar-collapse-57604740876218660627112051613797907862\"><span class=\"sr-only\">Toggle navigation</span><span class=\"icon-bar\"></span><span class=\"icon-bar\"></span><span class=\"icon-bar\"></span></button><a class=\"navbar-brand\" href=\"#\"><i class=\"glyph fa fa-pencil\"></i> My title</a></div><div class=\"collapse navbar-collapse\" id=\"navbar-collapse-57604740876218660627112051613797907862\"><ul class=\"nav navbar-nav\"><li role=\"presentation\"><a href=\"#\">Toto</a></li><li role=\"presentation\"><a href=\"#\">Tata</a></li></ul><ul class=\"nav navbar-nav nav-right\"><li role=\"presentation\"><a href=\"#\">lala</a></li><li role=\"presentation\"><a href=\"#\">lolo</a></li></ul></div></div></nav>"
63
+
64
+ refute_equal expected, actual
65
+ end
66
+
51
67
  test 'progress bar with several bars' do
52
- actual = progress_bar(tap: true) do |pb|
68
+ actual = progress_bar(tap: true) do |pb|
53
69
  pb.bar 20, type: :animated
54
70
  pb.bar 30, state: :success
55
71
  pb.bar 10, type: :striped
data/ui_bibz.gemspec CHANGED
@@ -29,6 +29,7 @@ Gem::Specification.new do |s|
29
29
  s.add_dependency 'sass-rails', '~> 5.0.1'
30
30
 
31
31
  s.add_development_dependency "minitest"
32
+ s.add_development_dependency "rdoc"
32
33
  s.add_development_dependency "sqlite3"
33
34
  s.add_development_dependency "factory_girl_rails", "~> 4.0"
34
35
  s.add_development_dependency "codeclimate-test-reporter"
@@ -44,3 +44,6 @@
44
44
  .action
45
45
  width: 100px
46
46
 
47
+ .ui-bibz-clear
48
+ clear: both
49
+