para 0.11.4 → 0.12.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (228) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/stylesheets/para/admin/main.scss +31 -0
  3. data/app/assets/stylesheets/para/admin/src/_affix.scss +7 -0
  4. data/app/assets/stylesheets/para/admin/src/_alert.scss +35 -0
  5. data/app/assets/stylesheets/para/admin/src/_base.scss +63 -0
  6. data/app/assets/stylesheets/para/admin/src/_bootstrap-variables.scss +766 -379
  7. data/app/assets/stylesheets/para/admin/src/_breadcrumb.scss +37 -0
  8. data/app/assets/stylesheets/para/admin/src/_buttons.scss +128 -0
  9. data/app/assets/stylesheets/para/admin/src/_checkable.scss +106 -0
  10. data/app/assets/stylesheets/para/admin/src/_common.scss +250 -0
  11. data/app/assets/stylesheets/para/admin/src/_dropdown.scss +52 -0
  12. data/app/assets/stylesheets/para/admin/src/_form.scss +359 -0
  13. data/app/assets/stylesheets/para/admin/src/_list.scss +96 -0
  14. data/app/assets/stylesheets/para/admin/src/_mixins.scss +109 -0
  15. data/app/assets/stylesheets/para/admin/src/_multi-select.scss +110 -0
  16. data/app/assets/stylesheets/para/admin/src/_navigation.scss +210 -0
  17. data/app/assets/stylesheets/para/admin/src/_navtabs.scss +68 -0
  18. data/app/assets/stylesheets/para/admin/src/_nested-many.scss +87 -0
  19. data/app/assets/stylesheets/para/admin/src/_nested_one.scss +26 -0
  20. data/app/assets/stylesheets/para/admin/src/_orderable.scss +48 -0
  21. data/app/assets/stylesheets/para/admin/src/_page-loading.scss +40 -0
  22. data/app/assets/stylesheets/para/admin/src/_pagination.scss +39 -0
  23. data/app/assets/stylesheets/para/admin/src/_panel.scss +61 -0
  24. data/app/assets/stylesheets/para/admin/src/_responsive.scss +133 -0
  25. data/app/assets/stylesheets/para/admin/src/_sorting.scss +43 -0
  26. data/app/assets/stylesheets/para/admin/src/_statcard.scss +46 -0
  27. data/app/assets/stylesheets/para/admin/src/_table.scss +36 -0
  28. data/app/assets/stylesheets/para/admin/src/_tree.scss +60 -0
  29. data/app/assets/stylesheets/para/admin/src/{_variables.sass → _variables.scss} +7 -7
  30. data/app/assets/stylesheets/para/admin/src/{_well.sass → _well.scss} +5 -4
  31. data/app/assets/stylesheets/para/admin.scss +15 -0
  32. data/app/assets/stylesheets/para/index.scss +1 -0
  33. data/app/assets/stylesheets/para/lib/datetimepicker.scss +15 -0
  34. data/app/assets/stylesheets/para/lib/fuelux.scss +46 -0
  35. data/app/assets/stylesheets/para/lib/jasny-bootstrap.scss +100 -0
  36. data/app/assets/stylesheets/para/lib/selectize.scss +129 -0
  37. data/app/assets/stylesheets/para/lib/slider.scss +14 -0
  38. data/app/controllers/para/admin/crud_resources_controller.rb +16 -9
  39. data/app/controllers/para/admin/imports_controller.rb +9 -9
  40. data/app/controllers/para/admin/jobs_controller.rb +7 -1
  41. data/app/controllers/para/admin/resources_controller.rb +17 -18
  42. data/app/controllers/para/admin/settings_component_controller.rb +2 -2
  43. data/app/helpers/para/admin/base_helper.rb +36 -25
  44. data/app/helpers/para/admin/page_helper.rb +8 -9
  45. data/app/helpers/para/flash_helper.rb +7 -28
  46. data/app/helpers/para/model_helper.rb +5 -8
  47. data/app/helpers/para/tree_helper.rb +4 -4
  48. data/app/javascripts/para/admin/async-progress.js +58 -0
  49. data/app/javascripts/para/admin/filters-form.js +12 -0
  50. data/app/javascripts/para/admin/job-tracker.js +33 -0
  51. data/app/javascripts/para/admin/table.js +58 -0
  52. data/app/javascripts/para/admin/tabs.js +110 -0
  53. data/app/javascripts/para/admin/theme_actions.js +39 -0
  54. data/app/javascripts/para/admin/tree.js +124 -0
  55. data/app/javascripts/para/application.js +2 -0
  56. data/app/javascripts/para/controllers/application.js +17 -0
  57. data/app/javascripts/para/controllers/index.js +10 -0
  58. data/app/javascripts/para/controllers/para_admin_flash_message_controller.js +48 -0
  59. data/app/javascripts/para/controllers/para_admin_modal_controller.js +43 -0
  60. data/app/javascripts/para/controllers/selectize_field_controller.js +142 -0
  61. data/app/javascripts/para/index.js +31 -0
  62. data/app/javascripts/para/inputs/material-input.js +7 -0
  63. data/app/javascripts/para/inputs/multi-select-input.js +343 -0
  64. data/app/javascripts/para/inputs/nested_many.js +151 -0
  65. data/app/javascripts/para/lib/fetch.js +41 -0
  66. data/app/javascripts/para/lib/page-loading.js +42 -0
  67. data/app/javascripts/para/simple_form_extension/colorpicker.js +30 -0
  68. data/app/javascripts/para/simple_form_extension/datetimepicker.js +115 -0
  69. data/app/javascripts/para/simple_form_extension/fileinput.js +57 -0
  70. data/app/javascripts/para/simple_form_extension/index.js +12 -0
  71. data/app/javascripts/para/simple_form_extension/selectize.js +160 -0
  72. data/app/javascripts/para/simple_form_extension/simple_form_extension_initialization.js +62 -0
  73. data/app/javascripts/para/simple_form_extension/slider.js +43 -0
  74. data/app/javascripts/para/simple_form_extension/spinbox.js +35 -0
  75. data/app/javascripts/para/vendor/bootstrap-colorpicker.js +1025 -0
  76. data/app/javascripts/para/vendor/bootstrap-slider.js +1610 -0
  77. data/app/javascripts/para/vendor/cocoon.js +150 -0
  78. data/app/javascripts/para/vendor/jquery.datetimepicker.js +2156 -0
  79. data/app/javascripts/para/vendor/jquery.js +3 -0
  80. data/app/javascripts/para/vendor/spinbox.js +438 -0
  81. data/app/javascripts/para/vendor/vertebra.js +224 -0
  82. data/app/views/admin/para/exporter/bases/_completed.html.haml +1 -1
  83. data/app/views/layouts/para/admin.html.haml +4 -2
  84. data/app/views/para/admin/imports/new.html.haml +12 -11
  85. data/app/views/para/admin/jobs/_completed.html.haml +1 -1
  86. data/app/views/para/admin/jobs/_failed.html.haml +1 -1
  87. data/app/views/para/admin/jobs/_job.html.haml +11 -0
  88. data/app/views/para/admin/jobs/show.html.haml +1 -10
  89. data/app/views/para/admin/resources/_add_button.html.haml +1 -1
  90. data/app/views/para/admin/resources/_exports_menu.html.haml +2 -2
  91. data/app/views/para/admin/resources/_filters.html.haml +1 -1
  92. data/app/views/para/admin/resources/_imports_menu.html.haml +2 -2
  93. data/app/views/para/admin/resources/_list.html.haml +27 -26
  94. data/app/views/para/admin/resources/_navigation.html.haml +10 -11
  95. data/app/views/para/admin/resources/_subclassable_add_button.html.haml +1 -1
  96. data/app/views/para/admin/shared/_flash.html.haml +18 -0
  97. data/app/views/para/admin/shared/_header.html.haml +1 -1
  98. data/app/views/para/form/_tabs.html.haml +1 -1
  99. data/app/views/para/inputs/_nested_many.html.haml +3 -3
  100. data/app/views/para/inputs/nested_many/_add.html.haml +1 -1
  101. data/app/views/para/inputs/nested_many/_add_with_subclasses.html.haml +2 -2
  102. data/app/views/para/inputs/nested_many/_container.html.haml +1 -1
  103. data/config/locales/fr.yml +1 -0
  104. data/lib/generators/para/install/install_generator.rb +10 -14
  105. data/lib/para/attribute_field/base.rb +3 -0
  106. data/lib/para/attribute_field/wysiwyg_editor.rb +15 -0
  107. data/lib/para/attribute_field.rb +1 -1
  108. data/lib/para/components_configuration.rb +1 -1
  109. data/lib/para/engine.rb +20 -22
  110. data/lib/para/ext/turbo_stream.rb +13 -0
  111. data/lib/para/ext.rb +1 -1
  112. data/lib/para/form_builder/containers.rb +33 -22
  113. data/lib/para/form_builder/nested_form.rb +6 -5
  114. data/lib/para/inputs/nested_many_input.rb +5 -0
  115. data/lib/para/markup/modal.rb +30 -15
  116. data/lib/para/markup/resources_buttons.rb +15 -11
  117. data/lib/para/model_field_parsers/wysiwyg_editor.rb +19 -0
  118. data/lib/para/model_field_parsers.rb +1 -1
  119. data/lib/para/version.rb +1 -1
  120. data/lib/para.rb +2 -8
  121. data/lib/simple_form_extension/components/icons.rb +13 -0
  122. data/lib/simple_form_extension/components/popovers.rb +46 -0
  123. data/lib/simple_form_extension/components.rb +8 -0
  124. data/lib/simple_form_extension/ext/form_builder.rb +20 -0
  125. data/lib/simple_form_extension/file_concern.rb +74 -0
  126. data/lib/simple_form_extension/inputs/boolean_input.rb +16 -0
  127. data/lib/simple_form_extension/inputs/collection_check_boxes_input.rb +15 -0
  128. data/lib/simple_form_extension/inputs/collection_radio_buttons_input.rb +15 -0
  129. data/lib/simple_form_extension/inputs/color_input.rb +37 -0
  130. data/lib/simple_form_extension/inputs/date_time_input.rb +48 -0
  131. data/lib/simple_form_extension/inputs/file_input.rb +41 -0
  132. data/lib/simple_form_extension/inputs/image_input.rb +110 -0
  133. data/lib/simple_form_extension/inputs/numeric_input.rb +27 -0
  134. data/lib/simple_form_extension/inputs/selectize_input.rb +210 -0
  135. data/lib/simple_form_extension/inputs/slider_input.rb +30 -0
  136. data/lib/simple_form_extension/inputs.rb +16 -0
  137. data/lib/simple_form_extension/railtie.rb +21 -0
  138. data/lib/simple_form_extension/resource_name_helper.rb +9 -0
  139. data/lib/simple_form_extension/translations.rb +7 -0
  140. data/lib/simple_form_extension/version.rb +3 -0
  141. data/lib/simple_form_extension.rb +30 -0
  142. data/vendor/assets/images/simple_form_extension/bootstrap-colorpicker/alpha-horizontal.png +0 -0
  143. data/vendor/assets/images/simple_form_extension/bootstrap-colorpicker/alpha.png +0 -0
  144. data/vendor/assets/images/simple_form_extension/bootstrap-colorpicker/hue-horizontal.png +0 -0
  145. data/vendor/assets/images/simple_form_extension/bootstrap-colorpicker/hue.png +0 -0
  146. data/vendor/assets/images/simple_form_extension/bootstrap-colorpicker/saturation.png +0 -0
  147. data/vendor/assets/stylesheets/bootstrap-colorpicker.scss +227 -0
  148. data/vendor/assets/stylesheets/bootstrap-slider.scss +246 -0
  149. data/vendor/assets/stylesheets/bootstrap.scss +6032 -0
  150. data/vendor/assets/stylesheets/jquery.datetimepicker.scss +568 -0
  151. metadata +120 -188
  152. data/app/assets/javascripts/admin/app.coffee +0 -1
  153. data/app/assets/javascripts/para/admin/async-progress.coffee +0 -29
  154. data/app/assets/javascripts/para/admin/filters-form.coffee +0 -11
  155. data/app/assets/javascripts/para/admin/job-tracker.coffee +0 -39
  156. data/app/assets/javascripts/para/admin/table.coffee +0 -44
  157. data/app/assets/javascripts/para/admin/tabs.coffee +0 -63
  158. data/app/assets/javascripts/para/admin/theme_actions.coffee +0 -25
  159. data/app/assets/javascripts/para/admin/tree.coffee +0 -105
  160. data/app/assets/javascripts/para/admin.coffee +0 -22
  161. data/app/assets/javascripts/para/application.js +0 -13
  162. data/app/assets/javascripts/para/inputs/material-input.coffee +0 -4
  163. data/app/assets/javascripts/para/inputs/multi-select-input.coffee +0 -174
  164. data/app/assets/javascripts/para/inputs/nested_many.coffee +0 -108
  165. data/app/assets/javascripts/para/lib/ajax.coffee +0 -11
  166. data/app/assets/javascripts/para/lib/remote-file-forms.coffee +0 -59
  167. data/app/assets/javascripts/para/lib/turbolinks-forms.coffee +0 -23
  168. data/app/assets/javascripts/para/lib/turbolinks-loading.coffee +0 -25
  169. data/app/assets/javascripts/para/lib/turbolinks-reloader.coffee +0 -19
  170. data/app/assets/stylesheets/para/admin/main.sass +0 -33
  171. data/app/assets/stylesheets/para/admin/src/_affix.sass +0 -4
  172. data/app/assets/stylesheets/para/admin/src/_alert.sass +0 -17
  173. data/app/assets/stylesheets/para/admin/src/_base.sass +0 -54
  174. data/app/assets/stylesheets/para/admin/src/_breadcrumb.sass +0 -32
  175. data/app/assets/stylesheets/para/admin/src/_buttons.sass +0 -107
  176. data/app/assets/stylesheets/para/admin/src/_checkable.sass +0 -94
  177. data/app/assets/stylesheets/para/admin/src/_common.sass +0 -202
  178. data/app/assets/stylesheets/para/admin/src/_dropdown.sass +0 -40
  179. data/app/assets/stylesheets/para/admin/src/_form.sass +0 -299
  180. data/app/assets/stylesheets/para/admin/src/_list.sass +0 -89
  181. data/app/assets/stylesheets/para/admin/src/_mixins.sass +0 -113
  182. data/app/assets/stylesheets/para/admin/src/_multi-select.sass +0 -91
  183. data/app/assets/stylesheets/para/admin/src/_navigation.sass +0 -171
  184. data/app/assets/stylesheets/para/admin/src/_navtabs.sass +0 -58
  185. data/app/assets/stylesheets/para/admin/src/_nested-many.sass +0 -75
  186. data/app/assets/stylesheets/para/admin/src/_nested_one.sass +0 -22
  187. data/app/assets/stylesheets/para/admin/src/_orderable.sass +0 -44
  188. data/app/assets/stylesheets/para/admin/src/_page-loading.sass +0 -39
  189. data/app/assets/stylesheets/para/admin/src/_pagination.sass +0 -34
  190. data/app/assets/stylesheets/para/admin/src/_panel.sass +0 -55
  191. data/app/assets/stylesheets/para/admin/src/_responsive.sass +0 -117
  192. data/app/assets/stylesheets/para/admin/src/_sorting.sass +0 -36
  193. data/app/assets/stylesheets/para/admin/src/_statcard.sass +0 -41
  194. data/app/assets/stylesheets/para/admin/src/_table.sass +0 -33
  195. data/app/assets/stylesheets/para/admin/src/_tree.sass +0 -52
  196. data/app/assets/stylesheets/para/admin.sass +0 -12
  197. data/app/assets/stylesheets/para/lib/compass/_support.scss +0 -447
  198. data/app/assets/stylesheets/para/lib/compass/css3/_box-shadow.scss +0 -88
  199. data/app/assets/stylesheets/para/lib/compass/css3/_images.scss +0 -152
  200. data/app/assets/stylesheets/para/lib/compass/css3/_inline-block.scss +0 -31
  201. data/app/assets/stylesheets/para/lib/compass/css3/_text-shadow.scss +0 -82
  202. data/app/assets/stylesheets/para/lib/compass/css3/_transform.scss +0 -590
  203. data/app/assets/stylesheets/para/lib/compass/css3/_transition.scss +0 -190
  204. data/app/assets/stylesheets/para/lib/compass/css3/_user-interface.scss +0 -71
  205. data/app/assets/stylesheets/para/lib/compass/utilities/general/_hacks.scss +0 -65
  206. data/app/assets/stylesheets/para/lib/datetimepicker.sass +0 -15
  207. data/app/assets/stylesheets/para/lib/fuelux.sass +0 -40
  208. data/app/assets/stylesheets/para/lib/jasny-bootstrap.sass +0 -97
  209. data/app/assets/stylesheets/para/lib/redactor.sass +0 -86
  210. data/app/assets/stylesheets/para/lib/selectize.sass +0 -111
  211. data/app/assets/stylesheets/para/lib/slider.sass +0 -12
  212. data/app/assets/stylesheets/para/plugins-includes.sass.erb +0 -1
  213. data/lib/para/attribute_field/redactor.rb +0 -22
  214. data/lib/para/ext/request_iframe_xhr.rb +0 -17
  215. data/lib/para/iframe_transport/middleware.rb +0 -58
  216. data/lib/para/iframe_transport.rb +0 -7
  217. data/lib/para/model_field_parsers/redactor.rb +0 -19
  218. data/vendor/assets/javascripts/jquery.iframe-transport.js +0 -260
  219. data/vendor/assets/javascripts/jquery.remote-modal-form.coffee +0 -145
  220. /data/app/assets/stylesheets/admin/{app.sass → app.scss} +0 -0
  221. /data/app/{assets/javascripts → javascripts}/para/plugins-includes.js.erb +0 -0
  222. /data/{vendor/assets/javascripts → app/javascripts/para/vendor}/Sortable.js +0 -0
  223. /data/{vendor/assets/javascripts → app/javascripts/para/vendor}/jasny-bootstrap.js +0 -0
  224. /data/{vendor/assets/javascripts → app/javascripts/para/vendor}/jquery.scrollto.js +0 -0
  225. /data/{vendor/assets/javascripts → app/javascripts/para/vendor}/jquery.sortable.js +0 -0
  226. /data/vendor/assets/stylesheets/{animate.css → animate.scss} +0 -0
  227. /data/vendor/assets/stylesheets/{hint.css → hint.scss} +0 -0
  228. /data/vendor/assets/stylesheets/{jasny-bootstrap.css → jasny-bootstrap.scss} +0 -0
@@ -0,0 +1,359 @@
1
+ //
2
+ // Form
3
+ // --------------------------------------------------
4
+
5
+ //== Form mixins
6
+ //
7
+ //## Form mixins is there because is doesnt have to be share
8
+
9
+ @mixin outline-input-form {
10
+ padding: 6px 0px;
11
+ -webkit-appearance: none;
12
+ box-shadow: none;
13
+ border-radius: 0;
14
+ border: none;
15
+ border-bottom: 1px solid $input-border;
16
+ @include default-transition;
17
+ &:focus,
18
+ &.focus {
19
+ box-shadow: 0px 1px 0px $input-border-focus;
20
+ border-color: $input-border-focus;
21
+ @include default-transition;
22
+ }
23
+ //== Legends
24
+ //
25
+ //##
26
+ }
27
+ legend {
28
+ font-weight: 600;
29
+ padding: 0;
30
+ margin-top: 15px;
31
+ margin-bottom: 15px;
32
+ border: none;
33
+ }
34
+ //** Remove margin top form first legend because of page-content-wrap padding-top
35
+ .page-content-wrap .form-inputs {
36
+ @include first-child {
37
+ legend {
38
+ margin-top: 0;
39
+ }
40
+ //== Labels
41
+ //
42
+ //##
43
+ }
44
+ }
45
+ .control-label {
46
+ color: $gray;
47
+ font-weight: 700;
48
+ font-size: 0.85em;
49
+ margin-bottom: 8px;
50
+ text-transform: uppercase;
51
+ transition: color ease-in-out 0.15s;
52
+ }
53
+ .form-group.focused {
54
+ .control-label {
55
+ color: $brand-primary;
56
+ transition: color ease-in-out 0.15s;
57
+ }
58
+ //== Inputs
59
+ //
60
+ //##
61
+ }
62
+ .form-control {
63
+ font-size: 14px;
64
+ }
65
+ .form-inputs,
66
+ .nested-one-field,
67
+ .tab-pane {
68
+ @include clearfix;
69
+ .form-group:last-of-type,
70
+ .form-group:only-child,
71
+ .nested-one-field:last-of-type {
72
+ margin-bottom: 0;
73
+ }
74
+ }
75
+ .nested-one-field {
76
+ margin-bottom: $form-group-margin-bottom;
77
+ }
78
+ .nested-input-title {
79
+ display: block;
80
+ width: 100%;
81
+
82
+ overflow: hidden;
83
+ white-space: nowrap;
84
+ text-overflow: ellipsis;
85
+
86
+ &.has-error {
87
+ color: $brand-danger;
88
+ }
89
+ //== Inputs outline
90
+ //
91
+ //## Styled inputs with juste a border bottom
92
+ }
93
+ .forms-outline {
94
+ .form-control {
95
+ @include outline-input-form;
96
+ &[disabled],
97
+ &[readonly] {
98
+ color: $gray;
99
+ padding-right: 6px;
100
+ padding-left: 6px;
101
+ }
102
+ &[disabled]:focus,
103
+ &[readonly]:focus {
104
+ background: $input-bg-disabled;
105
+ color: $gray;
106
+ border-color: $gray-lighter;
107
+ }
108
+ }
109
+ .input-group-addon {
110
+ background-color: transparent;
111
+ border-color: transparent;
112
+ }
113
+ //** Remove margin because input have just bottom border
114
+ .control-label {
115
+ &.country,
116
+ &.date,
117
+ &.datetime,
118
+ &.email,
119
+ &.integer,
120
+ &.select,
121
+ &.selectize,
122
+ &.string,
123
+ &.tel,
124
+ &.text,
125
+ &.time,
126
+ &.url {
127
+ margin-bottom: 0;
128
+ }
129
+ //** Textarea
130
+ }
131
+ .form-control.text {
132
+ resize: vertical;
133
+ }
134
+ //** Selectize
135
+ .selectize-input,
136
+ .selectize-input.full {
137
+ @include outline-input-form;
138
+ }
139
+ .selectize-control.multi .selectize-input.has-items {
140
+ @include outline-input-form;
141
+ padding: 3px 0px;
142
+ }
143
+ //** Spinner
144
+ .spinbox {
145
+ .btn.btn-default {
146
+ color: $gray;
147
+ background-color: transparent;
148
+ border-color: transparent;
149
+ &.spinbox-up {
150
+ padding: 0px 9px 4px 9px;
151
+ }
152
+ &.spinbox-down {
153
+ padding: 6px 9px 0px 9px;
154
+ margin-top: 0;
155
+ }
156
+ &:hover,
157
+ &:focus {
158
+ color: $gray-darker;
159
+ }
160
+ &:active,
161
+ &.active,
162
+ &:active:focus {
163
+ box-shadow: none;
164
+ }
165
+ // Datepicker
166
+ }
167
+ }
168
+ .datetimepicker-trigger.btn-default {
169
+ color: $gray;
170
+ background-color: transparent;
171
+ border-color: transparent;
172
+ &:hover,
173
+ &:focus {
174
+ color: $gray-darker;
175
+ }
176
+ &:active,
177
+ &.active,
178
+ &:active:focus {
179
+ box-shadow: none;
180
+ }
181
+ //== Color picker
182
+ //
183
+ //##
184
+ }
185
+ }
186
+ .input-group {
187
+ &.color {
188
+ max-width: 300px;
189
+ .input-group-addon {
190
+ padding: 0;
191
+ padding-left: 5px;
192
+ i {
193
+ border: 1px solid #ccc;
194
+ width: 25px;
195
+ height: 25px;
196
+ }
197
+ //== Search form filter
198
+ //
199
+ //##
200
+ }
201
+ }
202
+ }
203
+ .filter-form {
204
+ @include filter-style;
205
+ .form-control {
206
+ &:focus {
207
+ box-shadow: none;
208
+ }
209
+ }
210
+ .form-control,
211
+ .input-group-btn {
212
+ background-color: transparent;
213
+ border: none;
214
+ border-top-left-radius: 20px;
215
+ border-bottom-left-radius: 20px;
216
+ }
217
+ .input-group-btn {
218
+ overflow: hidden;
219
+ border-top-left-radius: 0;
220
+ border-bottom-left-radius: 0;
221
+ border-top-right-radius: 20px;
222
+ border-bottom-right-radius: 20px;
223
+ }
224
+ .btn {
225
+ background-color: transparent;
226
+ color: $gray;
227
+ &:hover {
228
+ color: $gray-dark;
229
+ }
230
+ //== Fixed actions
231
+ //
232
+ //##
233
+ }
234
+ }
235
+ .form-fixed-actions {
236
+ margin-bottom: 100px;
237
+ .form-actions {
238
+ border-radius: 2px;
239
+ position: fixed;
240
+ bottom: 0px;
241
+ right: 50px;
242
+ left: auto;
243
+ padding: 8px;
244
+ z-index: $zindex-navbar-fixed - 10;
245
+ background-color: $gray-lighter;
246
+ @include material-box-shadow-soft(3);
247
+ margin-bottom: 25px;
248
+ text-align: center;
249
+ .btn {
250
+ margin-bottom: 10px;
251
+ margin-right: 0px;
252
+ &:last-child {
253
+ margin-right: 0;
254
+ margin-bottom: 0;
255
+ }
256
+ //== Input group addons
257
+ //
258
+ //##
259
+ }
260
+ }
261
+ }
262
+ .input-group-btn:first-child > {
263
+ .btn,
264
+ .btn-group {
265
+ margin-right: -2px;
266
+ }
267
+ }
268
+ .input-group-lg > {
269
+ .form-control,
270
+ .input-group-addon,
271
+ .input-group-btn > .btn {
272
+ font-size: 16px;
273
+ }
274
+ }
275
+ .input-group-sm > {
276
+ .form-control,
277
+ .input-group-addon,
278
+ .input-group-btn > .btn {
279
+ font-size: 11px;
280
+ }
281
+ }
282
+ .input-group-btn > .btn {
283
+ &:active,
284
+ &:focus,
285
+ &:hover {
286
+ z-index: 0;
287
+ }
288
+ //== Tabs error
289
+ //
290
+ //##
291
+ }
292
+ .nav-tabs {
293
+ a {
294
+ &.has-error {
295
+ color: $brand-danger;
296
+ }
297
+ }
298
+ > li.active {
299
+ > a,
300
+ > a:hover,
301
+ > a:focus {
302
+ &.has-error {
303
+ color: $brand-danger;
304
+ border-bottom-color: $brand-danger;
305
+ }
306
+ //== Input with error
307
+ //
308
+ //##
309
+ }
310
+ }
311
+ }
312
+ .has-success {
313
+ .checkbox,
314
+ .checkbox-inline,
315
+ .control-label,
316
+ .form-control-feedback,
317
+ .help-block,
318
+ .radio,
319
+ .radio-inline {
320
+ color: $brand-success;
321
+ }
322
+ .form-control {
323
+ border-color: $brand-success;
324
+ }
325
+ }
326
+ .has-warning {
327
+ .checkbox,
328
+ .checkbox-inline,
329
+ .control-label,
330
+ .form-control-feedback,
331
+ .help-block,
332
+ .radio,
333
+ .radio-inline {
334
+ color: $brand-warning;
335
+ }
336
+ .form-control {
337
+ border-color: $brand-warning;
338
+ }
339
+ }
340
+ .has-error {
341
+ .checkbox,
342
+ .checkbox-inline,
343
+ .control-label,
344
+ .form-control-feedback,
345
+ .help-block,
346
+ .radio,
347
+ .radio-inline {
348
+ color: $brand-danger;
349
+ }
350
+ }
351
+ .bootstrap-select.error > button,
352
+ .form-control.error,
353
+ .has-error .form-control {
354
+ border-color: $brand-danger;
355
+ }
356
+ .bootstrap-select.valid > button,
357
+ .form-control.valid {
358
+ border-color: $brand-success;
359
+ }
@@ -0,0 +1,96 @@
1
+ .actions-control {
2
+ list-style: none;
3
+ padding: 0;
4
+ margin: 0 15px 0 0;
5
+
6
+ &:last-child {
7
+ margin-right: 0;
8
+ }
9
+ li {
10
+ display: inline-block;
11
+ padding: 0 5px;
12
+ }
13
+ }
14
+ .flextable {
15
+ display: table;
16
+ width: 100%;
17
+ .flextable-item {
18
+ display: table-cell;
19
+ white-space: nowrap;
20
+ vertical-align: middle;
21
+ width: 1%;
22
+ padding-right: 25px;
23
+ &:last-child {
24
+ padding-right: 0;
25
+ }
26
+ &.flextable-primary {
27
+ width: 99%;
28
+ }
29
+ }
30
+ }
31
+ .page-list {
32
+ .page-list-heading,
33
+ .page-list-body {
34
+ padding: 15px 0;
35
+ @include clearfix;
36
+ }
37
+ .page-entries-info {
38
+ padding: 15px 0 5px 0;
39
+ }
40
+ .page-list-heading:first-child,
41
+ .page-list-body:first-child {
42
+ padding-top: 0;
43
+ }
44
+ .page-list-heading {
45
+ border-bottom: 1px solid $gray-light;
46
+ }
47
+ .page-list-body:last-child {
48
+ padding-bottom: 0;
49
+ }
50
+ .page-list-footer {
51
+ border-top: 1px solid $gray-light;
52
+ }
53
+ //** Design selectize inside list heading because selectize is always a filter
54
+ }
55
+ .page-list-heading {
56
+ .selectize-control .selectize-input {
57
+ @include filter-style;
58
+ line-height: 22px;
59
+ &.full {
60
+ font-size: 0.9em;
61
+ }
62
+ }
63
+ .input-group {
64
+ @include filter-style;
65
+ .form-control {
66
+ &:focus {
67
+ box-shadow: none;
68
+ }
69
+ }
70
+ .form-control,
71
+ .input-group-btn {
72
+ background-color: transparent;
73
+ border: none;
74
+ border-top-left-radius: 20px;
75
+ border-bottom-left-radius: 20px;
76
+ }
77
+ .input-group-btn {
78
+ overflow: hidden;
79
+ border-top-left-radius: 0;
80
+ border-bottom-left-radius: 0;
81
+ border-top-right-radius: 20px;
82
+ border-bottom-right-radius: 20px;
83
+ }
84
+ .btn {
85
+ background-color: transparent;
86
+ color: $gray;
87
+ border-color: transparent;
88
+ &:hover {
89
+ color: $gray-dark;
90
+ }
91
+ }
92
+ }
93
+ }
94
+ .page-entries-info {
95
+ font-weight: 300;
96
+ }
@@ -0,0 +1,109 @@
1
+ //
2
+ // Mixins
3
+ // --------------------------------------------------
4
+
5
+ //== Colors
6
+ //
7
+ //## Most of the mixins is here some other are in buttons.sass & form.sass
8
+
9
+ //** Merge clearfix mixin
10
+ @mixin clearfix() {
11
+ &:before,
12
+ &:after {
13
+ content: " ";
14
+ display: table;
15
+ }
16
+ &:after {
17
+ clear: both;
18
+ }
19
+ //** Display flex for vertical & horizontal alignement
20
+ }
21
+ @mixin display_flex {
22
+ display: -webkit-box;
23
+ display: -moz-box;
24
+ display: -ms-flexbox;
25
+ display: -webkit-flex;
26
+ display: flex;
27
+ }
28
+ @mixin vCenter {
29
+ @include display_flex;
30
+ -webkit-box-align: center;
31
+ -moz-box-align: center;
32
+ -ms-flex-align: center;
33
+ -webkit-align-items: center;
34
+ align-items: center;
35
+ }
36
+ @mixin hCenter {
37
+ @include display_flex;
38
+ -webkit-box-pack: center;
39
+ -moz-box-pack: center;
40
+ -ms-flex-pack: center;
41
+ -webkit-justify-content: center;
42
+ justify-content: center;
43
+ }
44
+ //** Used for form input search, selectize and other
45
+ @mixin filter-style {
46
+ border: none;
47
+ width: 100%;
48
+ background-color: $gray-lighter;
49
+ box-shadow: 0px 1px 3px 0px rgba(32,36,45, .12) inset, 0px 1px 2px 0px rgba(32,36,45, .24) inset;
50
+ border-radius: 20px;
51
+ }
52
+ //** Sass Mixin to target child of elements
53
+ @mixin first-child() {
54
+ &:first-of-type {
55
+ @content;
56
+
57
+ //** Default theme transition & shadow
58
+ }
59
+ }
60
+ @mixin default-transition($time: 0.3s) {
61
+ transition: all $time cubic-bezier(.25,.8,.25,1);
62
+ }
63
+ @mixin material-box-shadow($depth: 1) {
64
+ @if $depth == 1 {
65
+ box-shadow: 0 1px 3px rgba(32,36,45,0.12), 0 1px 2px rgba(32,36,45,0.24);
66
+ }
67
+ @if $depth == 2 {
68
+ box-shadow: 0 3px 6px rgba(32,36,45,0.16), 0 3px 6px rgba(32,36,45,0.23);
69
+ }
70
+ @if $depth == 3 {
71
+ box-shadow: 0 10px 20px rgba(32,36,45,0.19), 0 6px 6px rgba(32,36,45,0.23);
72
+ }
73
+ @if $depth == 4 {
74
+ box-shadow: 0 14px 28px rgba(32,36,45,0.25), 0 10px 10px rgba(32,36,45,0.22);
75
+ }
76
+ @if $depth == 5 {
77
+ box-shadow: 0 19px 38px rgba(32,36,45,0.30), 0 15px 12px rgba(32,36,45,0.22);
78
+ }
79
+ }
80
+ @mixin material-box-shadow-soft($depth: 1) {
81
+ @if $depth == 1 {
82
+ box-shadow: 0 1px 3px rgba(32,36,45,0.03), 0 1px 2px rgba(32,36,45,0.06);
83
+ }
84
+ @if $depth == 2 {
85
+ box-shadow: 0 3px 6px rgba(32,36,45,0.04), 0 3px 6px rgba(32,36,45,0.06);
86
+ }
87
+ @if $depth == 3 {
88
+ box-shadow: 0 10px 20px rgba(32,36,45,0.05), 0 6px 6px rgba(32,36,45,0.06);
89
+ }
90
+ @if $depth == 4 {
91
+ box-shadow: 0 14px 28px rgba(32,36,45,0.06), 0 10px 10px rgba(32,36,45,0.06);
92
+ }
93
+ @if $depth == 5 {
94
+ box-shadow: 0 19px 38px rgba(32,36,45,0.08), 0 15px 12px rgba(32,36,45,0.06);
95
+ };
96
+ //** Grab cursor Mixin;
97
+ }
98
+ @mixin grab-cursor {
99
+ cursor: -moz-grab;
100
+ cursor: -o-grab;
101
+ cursor: -ms-grab;
102
+ cursor: grab;
103
+ }
104
+ @mixin grabbing-cursor {
105
+ cursor: -moz-grabbing;
106
+ cursor: -o-grabbing;
107
+ cursor: -ms-grabbing;
108
+ cursor: grabbing;
109
+ }
@@ -0,0 +1,110 @@
1
+ //
2
+ // Multi select
3
+ // --------------------------------------------------
4
+
5
+ //== Main style
6
+ //
7
+ //##
8
+ .multi-select-field {
9
+ .reorder-anchor-cell {
10
+ display: none;
11
+ }
12
+ &.loading { // Display FontAwesome spinner when loading results
13
+ .fa-search::before {
14
+ content: "\f110";
15
+ }
16
+ }
17
+ &.orderable {
18
+ .reorder-anchor-cell {
19
+ display: table-cell;
20
+ padding: 0 0 0 15px;
21
+ vertical-align: middle;
22
+ width: 10%;
23
+ }
24
+ }
25
+ .input-group.filter-form {
26
+ margin-bottom: 15px;
27
+ input {
28
+ padding-left: 12px;
29
+ }
30
+ .btn {
31
+ cursor: default;
32
+ &:hover {
33
+ color: $gray;
34
+ }
35
+ &:active {
36
+ box-shadow: none;
37
+ }
38
+ }
39
+ }
40
+ .panel-heading {
41
+ padding: 5px 8px 5px 15px;
42
+ border-bottom-left-radius: 0;
43
+ border-bottom-right-radius: 0;
44
+ .panel-title {
45
+ color: $gray;
46
+ font-size: 12px;
47
+ font-weight: 700;
48
+ text-transform: uppercase;
49
+ }
50
+ }
51
+ .panel {
52
+ box-shadow: none;
53
+ .panel-body {
54
+ max-height: 318px;
55
+ overflow: auto;
56
+ padding: 0;
57
+ }
58
+ &.available-items {
59
+ .available-item {
60
+ height: 53px;
61
+ &:hover {
62
+ background-color: $gray-lighter;
63
+ color: $brand-primary;
64
+ }
65
+ .badge {
66
+ background-color: transparent;
67
+ color: $gray;
68
+ display: none;
69
+ float: right;
70
+ padding-right: 0;
71
+ text-transform: uppercase;
72
+ }
73
+ }
74
+ .selected {
75
+ td {
76
+ background-color: $gray-lighter;
77
+ color: $gray;
78
+ }
79
+ .btn {
80
+ display: none;
81
+ }
82
+ .badge {
83
+ display: inline;
84
+ }
85
+ }
86
+ }
87
+ &.selected-items {
88
+ .selected-item {
89
+ height: 53px;
90
+ &:hover {
91
+ background-color: $gray-lighter;
92
+ color: $brand-primary;
93
+ }
94
+ }
95
+ }
96
+ .no-items {
97
+ height: 75px;
98
+ background-color: $gray-lighter;
99
+ color: $gray;
100
+ padding: 15px;
101
+ }
102
+ }
103
+ .remove-button-cell,
104
+ .add-button-cell {
105
+ .btn {
106
+ float: right;
107
+ width: 22px;
108
+ }
109
+ }
110
+ }