simple-admin 0.1.0.pre.alpha

Sign up to get free protection for your applications and to get access to all the features.
Files changed (139) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +3 -0
  3. data/.gitattributes +1 -0
  4. data/.gitignore +17 -0
  5. data/.hound.yml +2 -0
  6. data/.inch.yml +4 -0
  7. data/.rspec +2 -0
  8. data/.rubocop.yml +68 -0
  9. data/.travis.yml +11 -0
  10. data/CODE_OF_CONDUCT.md +74 -0
  11. data/CONTRIBUTING.md +51 -0
  12. data/Gemfile +27 -0
  13. data/LICENSE.txt +21 -0
  14. data/README.md +87 -0
  15. data/Rakefile +20 -0
  16. data/app/assets/fonts/Simple-Line-Icons.woff +0 -0
  17. data/app/assets/javascripts/simple_admin/application.js +28 -0
  18. data/app/assets/stylesheets/simple_admin/application.scss +48 -0
  19. data/app/assets/stylesheets/simple_admin/global/buttons.css +473 -0
  20. data/app/assets/stylesheets/simple_admin/global/errors.css +12 -0
  21. data/app/assets/stylesheets/simple_admin/global/fontawesome-icons.css +3024 -0
  22. data/app/assets/stylesheets/simple_admin/global/fonts.css +560 -0
  23. data/app/assets/stylesheets/simple_admin/global/jquery.dataTables.css +169 -0
  24. data/app/assets/stylesheets/simple_admin/global/pagination.css +11 -0
  25. data/app/assets/stylesheets/simple_admin/global/reset.css +197 -0
  26. data/app/assets/stylesheets/simple_admin/global/simple-line-icons.css +672 -0
  27. data/app/assets/stylesheets/simple_admin/global/table.css +214 -0
  28. data/app/assets/stylesheets/simple_admin/global/tags.css +87 -0
  29. data/app/assets/stylesheets/simple_admin/page/aside.css +324 -0
  30. data/app/assets/stylesheets/simple_admin/page/header.css +332 -0
  31. data/app/assets/stylesheets/simple_admin/page/main-container.css +222 -0
  32. data/app/assets/stylesheets/simple_admin/page/sign_in.css +15 -0
  33. data/app/assets/stylesheets/simple_admin/tabs.css +26 -0
  34. data/app/controllers/simple_admin/admin/application_controller.rb +21 -0
  35. data/app/controllers/simple_admin/admin/search_controller.rb +29 -0
  36. data/app/controllers/simple_admin/admin/system/entities_controller.rb +37 -0
  37. data/app/controllers/simple_admin/admin/system/entity_field_types_controller.rb +31 -0
  38. data/app/controllers/simple_admin/admin/system/entity_fields_controller.rb +20 -0
  39. data/app/helpers/simple_admin_helper.rb +15 -0
  40. data/app/models/simple_admin/base.rb +14 -0
  41. data/app/models/simple_admin/entity.rb +50 -0
  42. data/app/models/simple_admin/entity_field.rb +77 -0
  43. data/app/models/simple_admin/entity_field_setting.rb +5 -0
  44. data/app/models/simple_admin/entity_field_type.rb +79 -0
  45. data/app/views/kaminari/_next_page.html.erb +5 -0
  46. data/app/views/kaminari/_page.html.erb +3 -0
  47. data/app/views/kaminari/_paginator.html.erb +26 -0
  48. data/app/views/kaminari/_prev_page.html.erb +5 -0
  49. data/app/views/layouts/devise.html.erb +11 -0
  50. data/app/views/layouts/simple_admin.html.erb +28 -0
  51. data/app/views/simple_admin/admin/resource/_form.html.erb +19 -0
  52. data/app/views/simple_admin/admin/resource/edit.html.erb +21 -0
  53. data/app/views/simple_admin/admin/resource/index.html.erb +13 -0
  54. data/app/views/simple_admin/admin/resource/new.html.erb +21 -0
  55. data/app/views/simple_admin/admin/search/index.html.erb +55 -0
  56. data/app/views/simple_admin/admin/shared/_aside.html.erb +46 -0
  57. data/app/views/simple_admin/admin/shared/_footer.html.erb +5 -0
  58. data/app/views/simple_admin/admin/shared/_header.html.erb +7 -0
  59. data/app/views/simple_admin/admin/shared/collection/_header.html.erb +12 -0
  60. data/app/views/simple_admin/admin/shared/collection/_table_body.html.erb +29 -0
  61. data/app/views/simple_admin/admin/shared/collection/_table_header.html.erb +11 -0
  62. data/app/views/simple_admin/admin/shared/components/_logout.html.erb +6 -0
  63. data/app/views/simple_admin/admin/shared/components/_search.html.erb +14 -0
  64. data/app/views/simple_admin/admin/shared/messages/_errors.html.erb +9 -0
  65. data/app/views/simple_admin/admin/shared/messages/_flash.html.erb +8 -0
  66. data/app/views/simple_admin/admin/system/entities/_form.html.erb +32 -0
  67. data/app/views/simple_admin/admin/system/entities/edit.html.erb +27 -0
  68. data/app/views/simple_admin/admin/system/entities/entity_fields/_form.html.erb +62 -0
  69. data/app/views/simple_admin/admin/system/entities/entity_fields/edit.html.erb +9 -0
  70. data/app/views/simple_admin/admin/system/entities/entity_fields/index.html.erb +39 -0
  71. data/app/views/simple_admin/admin/system/entities/entity_fields/new.html.erb +12 -0
  72. data/app/views/simple_admin/admin/system/entities/index.html.erb +59 -0
  73. data/app/views/simple_admin/admin/system/entities/new.html.erb +21 -0
  74. data/app/views/simple_admin/admin/system/entity_field_types/_form.html.erb +21 -0
  75. data/app/views/simple_admin/admin/system/entity_field_types/edit.html.erb +24 -0
  76. data/app/views/simple_admin/admin/system/entity_field_types/index.html.erb +55 -0
  77. data/app/views/simple_admin/admin/system/entity_field_types/new.html.erb +21 -0
  78. data/app/views/simple_admin/admin/system/entity_fields/create.js.erb +18 -0
  79. data/app/views/simple_admin/admin/system/entity_fields/destroy.js.erb +18 -0
  80. data/app/views/simple_admin/admin/system/entity_fields/update.js.erb +1 -0
  81. data/app/views/simple_admin/fields/boolean/_form.html.erb +6 -0
  82. data/app/views/simple_admin/fields/boolean/_index.html.erb +5 -0
  83. data/app/views/simple_admin/fields/image/_collection.html.erb +5 -0
  84. data/app/views/simple_admin/fields/image/_form.html.erb +6 -0
  85. data/app/views/simple_admin/fields/number/_collection.html.erb +5 -0
  86. data/app/views/simple_admin/fields/number/_form.html.erb +6 -0
  87. data/app/views/simple_admin/fields/password/_form.html.erb +6 -0
  88. data/app/views/simple_admin/fields/relation/_collection.html.erb +3 -0
  89. data/app/views/simple_admin/fields/relation/_form.html.erb +6 -0
  90. data/app/views/simple_admin/fields/select/_form.html.erb +8 -0
  91. data/app/views/simple_admin/fields/select/_index.html.erb +5 -0
  92. data/app/views/simple_admin/fields/string/_collection.html.erb +3 -0
  93. data/app/views/simple_admin/fields/string/_form.html.erb +6 -0
  94. data/app/views/simple_admin/fields/tags/_collection.html.erb +3 -0
  95. data/app/views/simple_admin/fields/tags/_form.html.erb +6 -0
  96. data/app/views/simple_admin/fields/text/_collection.html.erb +3 -0
  97. data/app/views/simple_admin/fields/text/_form.html.erb +6 -0
  98. data/bin/bundle +4 -0
  99. data/bin/rails +5 -0
  100. data/codecov.yml +21 -0
  101. data/config/locales/en.yml +23 -0
  102. data/config/locales/ru.yml +20 -0
  103. data/config/routes.rb +19 -0
  104. data/lib/generators/simple_admin/install_generator.rb +41 -0
  105. data/lib/generators/simple_admin/migration_generator.rb +24 -0
  106. data/lib/generators/templates/application_controller.rb +20 -0
  107. data/lib/generators/templates/initializers/simple_admin.rb.erb +3 -0
  108. data/lib/generators/templates/migrations/core_data_migration.rb +12 -0
  109. data/lib/generators/templates/migrations/core_migrations/entities_migration.rb +13 -0
  110. data/lib/generators/templates/migrations/core_migrations/entity_field_settings_migration.rb +12 -0
  111. data/lib/generators/templates/migrations/core_migrations/entity_field_types_migration.rb +12 -0
  112. data/lib/generators/templates/migrations/core_migrations/entity_fields_migration.rb +18 -0
  113. data/lib/generators/templates/user.rb +24 -0
  114. data/lib/generators/templates/views/devise/registrations/new.html.erb +46 -0
  115. data/lib/generators/templates/views/devise/sessions/new.html.erb +35 -0
  116. data/lib/generators/templates/views/devise/shared/_footer.html.erb +3 -0
  117. data/lib/simple_admin.rb +39 -0
  118. data/lib/simple_admin/config.rb +19 -0
  119. data/lib/simple_admin/engine.rb +15 -0
  120. data/lib/simple_admin/helpers/boolean_helper.rb +36 -0
  121. data/lib/simple_admin/helpers/url_helper.rb +29 -0
  122. data/lib/simple_admin/refinements/boolean.rb +36 -0
  123. data/lib/simple_admin/resource_controller/actions_builder.rb +40 -0
  124. data/lib/simple_admin/resource_controller/controller_builder.rb +31 -0
  125. data/lib/simple_admin/resource_controller/crudify.rb +111 -0
  126. data/lib/simple_admin/resource_controller/crudify_dynamic_resource.rb +55 -0
  127. data/lib/simple_admin/resource_controller/dynamic_fields.rb +53 -0
  128. data/lib/simple_admin/search.rb +23 -0
  129. data/lib/simple_admin/version.rb +3 -0
  130. data/simple_admin.gemspec +38 -0
  131. data/vendor/assets/fonts/Simple-Line-Icons.eot +0 -0
  132. data/vendor/assets/fonts/Simple-Line-Icons.ttf +0 -0
  133. data/vendor/assets/fonts/Simple-Line-Icons.woff +0 -0
  134. data/vendor/assets/fonts/fontawesome-webfont.eot +0 -0
  135. data/vendor/assets/fonts/fontawesome-webfont.svg +2671 -0
  136. data/vendor/assets/fonts/fontawesome-webfont.ttf +0 -0
  137. data/vendor/assets/fonts/fontawesome-webfont.woff +0 -0
  138. data/vendor/assets/fonts/fontawesome-webfont.woff2 +0 -0
  139. metadata +307 -0
@@ -0,0 +1,214 @@
1
+
2
+ .table>thead>tr>th,
3
+ .table>tbody>tr>th,
4
+ .table>tfoot>tr>th,
5
+ .table>thead>tr>td,
6
+ .table>tbody>tr>td,
7
+ .table>tfoot>tr>td {
8
+ padding: 12px 10px;
9
+ border-top: 1px solid #f0f0f0
10
+ }
11
+
12
+ .table>thead>tr>th,
13
+ .table>tbody>tr>th,
14
+ .table>tfoot>tr>th {
15
+ padding: 16px 10px 12px;
16
+ font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
17
+ font-size: 15px;
18
+ font-weight: 600;
19
+ text-transform: uppercase
20
+ }
21
+
22
+ .table>thead>tr>th {
23
+ border-bottom: 1px solid #ddd
24
+ }
25
+
26
+ .table>tbody+tbody {
27
+ border-top: 1px solid #ddd
28
+ }
29
+
30
+ .table-condensed>thead>tr>td,
31
+ .table-condensed>tbody>tr>td,
32
+ .table-condensed>tfoot>tr>td {
33
+ padding: 6px 8px
34
+ }
35
+
36
+ .table-bordered {
37
+ border: 1px solid #e9e9e9
38
+ }
39
+
40
+ .table-bordered>thead>tr>th,
41
+ .table-bordered>tbody>tr>th,
42
+ .table-bordered>tfoot>tr>th,
43
+ .table-bordered>thead>tr>td,
44
+ .table-bordered>tbody>tr>td,
45
+ .table-bordered>tfoot>tr>td {
46
+ border: 1px solid #f0f0f0
47
+ }
48
+
49
+ .table-bordered>thead>tr>th,
50
+ .table-bordered>thead>tr>td {
51
+ border-bottom-width: 1px;
52
+ border-bottom-color: #e9e9e9
53
+ }
54
+
55
+ .table-borderless {
56
+ border: none
57
+ }
58
+
59
+ .table-borderless>thead>tr>th,
60
+ .table-borderless>tbody>tr>th,
61
+ .table-borderless>tfoot>tr>th,
62
+ .table-borderless>thead>tr>td,
63
+ .table-borderless>tbody>tr>td,
64
+ .table-borderless>tfoot>tr>td {
65
+ border: none
66
+ }
67
+
68
+ .table-borderless>thead>tr>th,
69
+ .table-borderless>thead>tr>td {
70
+ border-bottom: 1px solid #ddd
71
+ }
72
+
73
+ .table-vcenter>thead>tr>th,
74
+ .table-vcenter>tbody>tr>th,
75
+ .table-vcenter>tfoot>tr>th,
76
+ .table-vcenter>thead>tr>td,
77
+ .table-vcenter>tbody>tr>td,
78
+ .table-vcenter>tfoot>tr>td {
79
+ vertical-align: middle
80
+ }
81
+
82
+ .table-striped>tbody>tr:nth-of-type(odd) {
83
+ background-color: #f9f9f9
84
+ }
85
+
86
+ .table-hover>tbody>tr:hover {
87
+ background-color: #f5f5f5
88
+ }
89
+
90
+ .table-header-bg>thead>tr>th,
91
+ .table-header-bg>thead>tr>td {
92
+ color: #fff;
93
+ background-color: #5c90d2;
94
+ border-bottom-color: #5c90d2
95
+ }
96
+
97
+ .table>thead>tr>td.active,
98
+ .table>tbody>tr>td.active,
99
+ .table>tfoot>tr>td.active,
100
+ .table>thead>tr>th.active,
101
+ .table>tbody>tr>th.active,
102
+ .table>tfoot>tr>th.active,
103
+ .table>thead>tr.active>td,
104
+ .table>tbody>tr.active>td,
105
+ .table>tfoot>tr.active>td,
106
+ .table>thead>tr.active>th,
107
+ .table>tbody>tr.active>th,
108
+ .table>tfoot>tr.active>th {
109
+ background-color: #f9f9f9
110
+ }
111
+
112
+ .table-hover>tbody>tr>td.active:hover,
113
+ .table-hover>tbody>tr>th.active:hover,
114
+ .table-hover>tbody>tr.active:hover>td,
115
+ .table-hover>tbody>tr:hover>.active,
116
+ .table-hover>tbody>tr.active:hover>th {
117
+ background-color: #ececec
118
+ }
119
+
120
+ .table>thead>tr>td.success,
121
+ .table>tbody>tr>td.success,
122
+ .table>tfoot>tr>td.success,
123
+ .table>thead>tr>th.success,
124
+ .table>tbody>tr>th.success,
125
+ .table>tfoot>tr>th.success,
126
+ .table>thead>tr.success>td,
127
+ .table>tbody>tr.success>td,
128
+ .table>tfoot>tr.success>td,
129
+ .table>thead>tr.success>th,
130
+ .table>tbody>tr.success>th,
131
+ .table>tfoot>tr.success>th {
132
+ background-color: #e0f5e9
133
+ }
134
+
135
+ .table-hover>tbody>tr>td.success:hover,
136
+ .table-hover>tbody>tr>th.success:hover,
137
+ .table-hover>tbody>tr.success:hover>td,
138
+ .table-hover>tbody>tr:hover>.success,
139
+ .table-hover>tbody>tr.success:hover>th {
140
+ background-color: #cdefdb
141
+ }
142
+
143
+ .table>thead>tr>td.info,
144
+ .table>tbody>tr>td.info,
145
+ .table>tfoot>tr>td.info,
146
+ .table>thead>tr>th.info,
147
+ .table>tbody>tr>th.info,
148
+ .table>tfoot>tr>th.info,
149
+ .table>thead>tr.info>td,
150
+ .table>tbody>tr.info>td,
151
+ .table>tfoot>tr.info>td,
152
+ .table>thead>tr.info>th,
153
+ .table>tbody>tr.info>th,
154
+ .table>tfoot>tr.info>th {
155
+ background-color: #edf6fd
156
+ }
157
+
158
+ .table-hover>tbody>tr>td.info:hover,
159
+ .table-hover>tbody>tr>th.info:hover,
160
+ .table-hover>tbody>tr.info:hover>td,
161
+ .table-hover>tbody>tr:hover>.info,
162
+ .table-hover>tbody>tr.info:hover>th {
163
+ background-color: #d6ebfa
164
+ }
165
+
166
+ .table>thead>tr>td.warning,
167
+ .table>tbody>tr>td.warning,
168
+ .table>tfoot>tr>td.warning,
169
+ .table>thead>tr>th.warning,
170
+ .table>tbody>tr>th.warning,
171
+ .table>tfoot>tr>th.warning,
172
+ .table>thead>tr.warning>td,
173
+ .table>tbody>tr.warning>td,
174
+ .table>tfoot>tr.warning>td,
175
+ .table>thead>tr.warning>th,
176
+ .table>tbody>tr.warning>th,
177
+ .table>tfoot>tr.warning>th {
178
+ background-color: #fdf3e5
179
+ }
180
+
181
+ .table-hover>tbody>tr>td.warning:hover,
182
+ .table-hover>tbody>tr>th.warning:hover,
183
+ .table-hover>tbody>tr.warning:hover>td,
184
+ .table-hover>tbody>tr:hover>.warning,
185
+ .table-hover>tbody>tr.warning:hover>th {
186
+ background-color: #fbe8cd
187
+ }
188
+
189
+ .table>thead>tr>td.danger,
190
+ .table>tbody>tr>td.danger,
191
+ .table>tfoot>tr>td.danger,
192
+ .table>thead>tr>th.danger,
193
+ .table>tbody>tr>th.danger,
194
+ .table>tfoot>tr>th.danger,
195
+ .table>thead>tr.danger>td,
196
+ .table>tbody>tr.danger>td,
197
+ .table>tfoot>tr.danger>td,
198
+ .table>thead>tr.danger>th,
199
+ .table>tbody>tr.danger>th,
200
+ .table>tfoot>tr.danger>th {
201
+ background-color: #f9eae8
202
+ }
203
+
204
+ .table-hover>tbody>tr>td.danger:hover,
205
+ .table-hover>tbody>tr>th.danger:hover,
206
+ .table-hover>tbody>tr.danger:hover>td,
207
+ .table-hover>tbody>tr:hover>.danger,
208
+ .table-hover>tbody>tr.danger:hover>th {
209
+ background-color: #f4d8d4
210
+ }
211
+
212
+ .table-responsive {
213
+ -webkit-overflow-scrolling: touch
214
+ }
@@ -0,0 +1,87 @@
1
+ div.tagsinput {
2
+ border: 1px solid #CCC;
3
+ background: #FFF;
4
+ padding: 5px;
5
+ width: 300px;
6
+ height: 100px;
7
+ overflow-y: auto;
8
+ }
9
+
10
+ div.tagsinput span.tag {
11
+ border: 1px solid #a5d24a;
12
+ -moz-border-radius: 2px;
13
+ -webkit-border-radius: 2px;
14
+ display: block;
15
+ float: left;
16
+ padding: 5px;
17
+ text-decoration: none;
18
+ background: #cde69c;
19
+ color: #638421;
20
+ margin-right: 5px;
21
+ margin-bottom: 5px;
22
+ font-family: helvetica;
23
+ font-size: 13px;
24
+ }
25
+
26
+ div.tagsinput span.tag a {
27
+ font-weight: bold;
28
+ color: #82ad2b;
29
+ text-decoration: none;
30
+ font-size: 11px;
31
+ }
32
+
33
+ div.tagsinput input {
34
+ width: 80px;
35
+ margin: 0px;
36
+ font-family: helvetica;
37
+ font-size: 13px;
38
+ border: 1px solid transparent;
39
+ padding: 5px;
40
+ background: transparent;
41
+ color: #000;
42
+ outline: 0px;
43
+ margin-right: 5px;
44
+ margin-bottom: 5px;
45
+ }
46
+
47
+ div.tagsinput div {
48
+ display: block;
49
+ float: left;
50
+ }
51
+
52
+ .tags_clear {
53
+ clear: both;
54
+ width: 100%;
55
+ height: 0px;
56
+ }
57
+
58
+ .not_valid {
59
+ background: #FBD8DB !important;
60
+ color: #90111A !important;
61
+ }
62
+
63
+ div.tagsinput {
64
+ padding: 6px 12px 1px;
65
+ border-color: #e6e6e6;
66
+ border-radius: 3px;
67
+ }
68
+
69
+ div.tagsinput span.tag {
70
+ padding: 2px 5px;
71
+ height: 22px;
72
+ line-height: 18px;
73
+ color: #fff;
74
+ font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
75
+ font-weight: 600;
76
+ background-color: #5c90d2;
77
+ border: none
78
+ }
79
+
80
+ div.tagsinput span.tag a {
81
+ font-size: 13px;
82
+ color: rgba(255, 255, 255, 0.5)
83
+ }
84
+
85
+ div.tagsinput span.tag a:hover {
86
+ color: rgba(255, 255, 255, 0.75)
87
+ }
@@ -0,0 +1,324 @@
1
+ #sidebar,
2
+ #side-overlay {
3
+ position: fixed;
4
+ top: 0;
5
+ bottom: 0;
6
+ z-index: 1032;
7
+ overflow-y: auto;
8
+ -webkit-overflow-scrolling: touch;
9
+ -webkit-transition: all .28s ease-out;
10
+ transition: all .28s ease-out
11
+ }
12
+
13
+ @media screen and (min-width:992px) {
14
+ .side-scroll #sidebar,
15
+ .side-scroll #side-overlay {
16
+ overflow-y: hidden
17
+ }
18
+ }
19
+
20
+ #sidebar {
21
+ width: 230px;
22
+ background-color: #2c343f
23
+ }
24
+
25
+ .sidebar-l #sidebar {
26
+ left: 0;
27
+ -webkit-transform: translateX(-100%) translateY(0) translateZ(0);
28
+ -ms-transform: translateX(-100%) translateY(0);
29
+ transform: translateX(-100%) translateY(0) translateZ(0)
30
+ }
31
+
32
+ .sidebar-r #sidebar {
33
+ right: 0;
34
+ -webkit-transform: translateX(100%) translateY(0) translateZ(0);
35
+ -ms-transform: translateX(100%) translateY(0);
36
+ transform: translateX(100%) translateY(0) translateZ(0)
37
+ }
38
+
39
+ @media screen and (max-width:991px) {
40
+ #sidebar {
41
+ width: 100%;
42
+ opacity: 0
43
+ }
44
+ .sidebar-o-xs #sidebar {
45
+ opacity: 1;
46
+ -webkit-transform: translateX(0) translateY(0) translateZ(0);
47
+ -ms-transform: translateX(0) translateY(0);
48
+ transform: translateX(0) translateY(0) translateZ(0)
49
+ }
50
+ }
51
+
52
+ @media screen and (min-width:992px) {
53
+ #sidebar {
54
+ width: 230px;
55
+ -webkit-transition: none;
56
+ transition: none
57
+ }
58
+ .sidebar-o #sidebar {
59
+ -webkit-transform: translateX(0) translateY(0) translateZ(0);
60
+ -ms-transform: translateX(0) translateY(0);
61
+ transform: translateX(0) translateY(0) translateZ(0)
62
+ }
63
+ .sidebar-o.sidebar-mini #sidebar {
64
+ overflow-x: hidden;
65
+ -webkit-transition: all .28s ease-out;
66
+ transition: all .28s ease-out;
67
+ will-change: transform
68
+ }
69
+ .sidebar-l.sidebar-o.sidebar-mini #sidebar {
70
+ -webkit-transform: translateX(-170px) translateY(0) translateZ(0);
71
+ -ms-transform: translateX(-170px) translateY(0);
72
+ transform: translateX(-170px) translateY(0) translateZ(0)
73
+ }
74
+ .sidebar-r.sidebar-o.sidebar-mini #sidebar {
75
+ -webkit-transform: translateX(170px) translateY(0) translateZ(0);
76
+ -ms-transform: translateX(170px) translateY(0);
77
+ transform: translateX(170px) translateY(0) translateZ(0)
78
+ }
79
+ .sidebar-o.sidebar-mini #sidebar .sidebar-content {
80
+ width: 230px;
81
+ -webkit-transition: all .28s ease-out;
82
+ transition: all .28s ease-out;
83
+ will-change: transform
84
+ }
85
+ .sidebar-l.sidebar-o.sidebar-mini #sidebar .sidebar-content {
86
+ -webkit-transform: translateX(170px) translateY(0) translateZ(0);
87
+ -ms-transform: translateX(170px) translateY(0);
88
+ transform: translateX(170px) translateY(0) translateZ(0)
89
+ }
90
+ .sidebar-o.sidebar-mini #sidebar:hover,
91
+ .sidebar-o.sidebar-mini #sidebar:hover .sidebar-content {
92
+ -webkit-transform: translateX(0) translateY(0) translateZ(0);
93
+ -ms-transform: translateX(0) translateY(0);
94
+ transform: translateX(0) translateY(0) translateZ(0)
95
+ }
96
+ .sidebar-o.sidebar-mini #sidebar .sidebar-mini-hide {
97
+ opacity: 0;
98
+ -webkit-transition: opacity .28s ease-out;
99
+ transition: opacity .28s ease-out
100
+ }
101
+ .sidebar-o.sidebar-mini #sidebar .sidebar-mini-hidden {
102
+ display: none
103
+ }
104
+ .sidebar-o.sidebar-mini #sidebar .nav-main>li.open>ul {
105
+ display: none
106
+ }
107
+ .sidebar-o.sidebar-mini #sidebar:hover .sidebar-mini-hide {
108
+ opacity: 1
109
+ }
110
+ .sidebar-o.sidebar-mini #sidebar:hover .nav-main>li.open>ul {
111
+ display: block
112
+ }
113
+ }
114
+
115
+ .side-header {
116
+ margin: 0 auto;
117
+ min-height: 60px
118
+ }
119
+
120
+ .side-header:before,
121
+ .side-header:after {
122
+ content: " ";
123
+ display: table
124
+ }
125
+
126
+ .side-header:after {
127
+ clear: both
128
+ }
129
+
130
+ .side-header.side-content {
131
+ overflow: visible
132
+ }
133
+
134
+ .side-header>span,
135
+ .side-header>a {
136
+ display: inline-block;
137
+ line-height: 34px
138
+ }
139
+
140
+ .side-header img {
141
+ display: inline-block;
142
+ margin-top: -2px
143
+ }
144
+
145
+ .side-content {
146
+ margin: 0 auto;
147
+ padding: 13px 20px 1px;
148
+ max-width: 100%;
149
+ overflow-x: hidden
150
+ }
151
+
152
+ .side-content p,
153
+ .side-content .push,
154
+ .side-content .block,
155
+ .side-content .items-push>div {
156
+ margin-bottom: 13px
157
+ }
158
+
159
+ .side-content .items-push-2x>div {
160
+ margin-bottom: 26px
161
+ }
162
+
163
+ .side-content .items-push-3x>div {
164
+ margin-bottom: 39px
165
+ }
166
+
167
+ .side-content.side-content-full {
168
+ padding-bottom: 13px
169
+ }
170
+
171
+ .side-content.side-content-full .pull-b {
172
+ margin-bottom: -13px
173
+ }
174
+
175
+ .side-content .pull-t {
176
+ margin-top: -13px
177
+ }
178
+
179
+ .side-content .pull-r-l {
180
+ margin-right: -20px;
181
+ margin-left: -20px
182
+ }
183
+
184
+ .side-content .pull-b {
185
+ margin-bottom: -1px
186
+ }
187
+
188
+ .bg-white-op {
189
+ background-color: rgba(255, 255, 255, 0.075);
190
+ }
191
+
192
+ .nav-main {
193
+ margin: 0 -20px;
194
+ padding: 0;
195
+ list-style: none;
196
+ }
197
+
198
+ .nav-main a {
199
+ display: block;
200
+ padding: 10px 20px;
201
+ color: rgba(255, 255, 255, 0.5);
202
+ }
203
+
204
+ .nav-main a:hover {
205
+ text-decoration: none;
206
+ }
207
+
208
+ .nav-main a > i {
209
+ display: inline-block;
210
+ min-width: 14px;
211
+ margin-right: 15px;
212
+ color: rgba(255, 255, 255, 0.2);
213
+ }
214
+
215
+ .nav-main .nav-main-heading {
216
+ padding: 22px 20px 6px 20px;
217
+ font-size: 12px;
218
+ font-weight: 600;
219
+ text-transform: uppercase;
220
+ color: rgba(255, 255, 255, 0.3);
221
+ }
222
+
223
+
224
+ .nav-main a:hover,
225
+ .nav-main a:focus {
226
+ color: rgba(255, 255, 255, 0.5);
227
+ background-color: rgba(0, 0, 0, 0.2);
228
+ }
229
+
230
+ .nav-main a:hover > i,
231
+ .nav-main a:focus > i {
232
+ color: #fff;
233
+ }
234
+
235
+ .nav-main a.active,
236
+ .nav-main a.active:hover {
237
+ color: #fff;
238
+ }
239
+
240
+ .nav-main a.active > i,
241
+ .nav-main a.active:hover > i {
242
+ color: #fff;
243
+ }
244
+
245
+
246
+ .content-mini {
247
+ margin: 0 auto;
248
+ padding: 13px 14px 1px;
249
+ max-width: 100%;
250
+ overflow-x: visible
251
+ }
252
+
253
+ .content-mini p,
254
+ .content-mini .push,
255
+ .content-mini .block,
256
+ .content-mini .items-push>div {
257
+ margin-bottom: 13px
258
+ }
259
+
260
+ .content-mini .items-push-2x>div {
261
+ margin-bottom: 26px
262
+ }
263
+
264
+ .content-mini .items-push-3x>div {
265
+ margin-bottom: 39px
266
+ }
267
+
268
+ .content-mini.content-mini-full {
269
+ padding-bottom: 13px
270
+ }
271
+
272
+ .content-mini.content-mini-full .pull-b {
273
+ margin-bottom: -13px
274
+ }
275
+
276
+ .content-mini .pull-t {
277
+ margin-top: -13px
278
+ }
279
+
280
+ .content-mini .pull-r-l {
281
+ margin-right: -14px;
282
+ margin-left: -14px
283
+ }
284
+
285
+ .content-mini .pull-b {
286
+ margin-bottom: -1px
287
+ }
288
+
289
+ @media screen and (min-width:768px) {
290
+ .content-mini {
291
+ margin: 0 auto;
292
+ padding: 13px 30px 1px;
293
+ max-width: 100%;
294
+ overflow-x: visible
295
+ }
296
+ .content-mini p,
297
+ .content-mini .push,
298
+ .content-mini .block,
299
+ .content-mini .items-push>div {
300
+ margin-bottom: 13px
301
+ }
302
+ .content-mini .items-push-2x>div {
303
+ margin-bottom: 26px
304
+ }
305
+ .content-mini .items-push-3x>div {
306
+ margin-bottom: 39px
307
+ }
308
+ .content-mini.content-mini-full {
309
+ padding-bottom: 13px
310
+ }
311
+ .content-mini.content-mini-full .pull-b {
312
+ margin-bottom: -13px
313
+ }
314
+ .content-mini .pull-t {
315
+ margin-top: -13px
316
+ }
317
+ .content-mini .pull-r-l {
318
+ margin-right: -30px;
319
+ margin-left: -30px
320
+ }
321
+ .content-mini .pull-b {
322
+ margin-bottom: -1px
323
+ }
324
+ }