viniBaxterDesk 0.13.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (189) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +32 -0
  3. data/app/assets/javascripts/administrate/application.js +6 -0
  4. data/app/assets/javascripts/administrate/components/associative.js +4 -0
  5. data/app/assets/javascripts/administrate/components/date_time_picker.js +14 -0
  6. data/app/assets/javascripts/administrate/components/table.js +23 -0
  7. data/app/assets/stylesheets/administrate/application.scss +30 -0
  8. data/app/assets/stylesheets/administrate/base/_forms.scss +107 -0
  9. data/app/assets/stylesheets/administrate/base/_layout.scss +20 -0
  10. data/app/assets/stylesheets/administrate/base/_lists.scss +19 -0
  11. data/app/assets/stylesheets/administrate/base/_tables.scss +58 -0
  12. data/app/assets/stylesheets/administrate/base/_typography.scss +45 -0
  13. data/app/assets/stylesheets/administrate/components/_app-container.scss +9 -0
  14. data/app/assets/stylesheets/administrate/components/_attributes.scss +26 -0
  15. data/app/assets/stylesheets/administrate/components/_buttons.scss +51 -0
  16. data/app/assets/stylesheets/administrate/components/_cells.scss +47 -0
  17. data/app/assets/stylesheets/administrate/components/_field-unit.scss +45 -0
  18. data/app/assets/stylesheets/administrate/components/_flashes.scss +28 -0
  19. data/app/assets/stylesheets/administrate/components/_form-actions.scss +3 -0
  20. data/app/assets/stylesheets/administrate/components/_main-content.scss +29 -0
  21. data/app/assets/stylesheets/administrate/components/_navigation.scss +32 -0
  22. data/app/assets/stylesheets/administrate/components/_pagination.scss +18 -0
  23. data/app/assets/stylesheets/administrate/components/_search.scss +46 -0
  24. data/app/assets/stylesheets/administrate/library/_clearfix.scss +7 -0
  25. data/app/assets/stylesheets/administrate/library/_data-label.scss +8 -0
  26. data/app/assets/stylesheets/administrate/library/_variables.scss +63 -0
  27. data/app/assets/stylesheets/administrate/reset/_normalize.scss +447 -0
  28. data/app/assets/stylesheets/administrate/utilities/_text-color.scss +3 -0
  29. data/app/assets/stylesheets/docs.scss +93 -0
  30. data/app/controllers/administrate/application_controller.rb +189 -0
  31. data/app/controllers/concerns/administrate/punditize.rb +36 -0
  32. data/app/helpers/administrate/application_helper.rb +83 -0
  33. data/app/views/administrate/application/_collection.html.erb +97 -0
  34. data/app/views/administrate/application/_flashes.html.erb +20 -0
  35. data/app/views/administrate/application/_form.html.erb +45 -0
  36. data/app/views/administrate/application/_icons.html.erb +13 -0
  37. data/app/views/administrate/application/_javascript.html.erb +21 -0
  38. data/app/views/administrate/application/_navigation.html.erb +20 -0
  39. data/app/views/administrate/application/_search.html.erb +25 -0
  40. data/app/views/administrate/application/_stylesheet.html.erb +14 -0
  41. data/app/views/administrate/application/edit.html.erb +36 -0
  42. data/app/views/administrate/application/index.html.erb +66 -0
  43. data/app/views/administrate/application/new.html.erb +37 -0
  44. data/app/views/administrate/application/show.html.erb +49 -0
  45. data/app/views/fields/belongs_to/_form.html.erb +26 -0
  46. data/app/views/fields/belongs_to/_index.html.erb +27 -0
  47. data/app/views/fields/belongs_to/_show.html.erb +27 -0
  48. data/app/views/fields/boolean/_form.html.erb +23 -0
  49. data/app/views/fields/boolean/_index.html.erb +19 -0
  50. data/app/views/fields/boolean/_show.html.erb +19 -0
  51. data/app/views/fields/date/_form.html.erb +24 -0
  52. data/app/views/fields/date/_index.html.erb +21 -0
  53. data/app/views/fields/date/_show.html.erb +21 -0
  54. data/app/views/fields/date_time/_form.html.erb +24 -0
  55. data/app/views/fields/date_time/_index.html.erb +21 -0
  56. data/app/views/fields/date_time/_show.html.erb +21 -0
  57. data/app/views/fields/email/_form.html.erb +23 -0
  58. data/app/views/fields/email/_index.html.erb +18 -0
  59. data/app/views/fields/email/_show.html.erb +18 -0
  60. data/app/views/fields/has_many/_form.html.erb +29 -0
  61. data/app/views/fields/has_many/_index.html.erb +19 -0
  62. data/app/views/fields/has_many/_show.html.erb +38 -0
  63. data/app/views/fields/has_one/_form.html.erb +28 -0
  64. data/app/views/fields/has_one/_index.html.erb +23 -0
  65. data/app/views/fields/has_one/_show.html.erb +40 -0
  66. data/app/views/fields/number/_form.html.erb +23 -0
  67. data/app/views/fields/number/_index.html.erb +19 -0
  68. data/app/views/fields/number/_show.html.erb +19 -0
  69. data/app/views/fields/password/_form.html.erb +23 -0
  70. data/app/views/fields/password/_index.html.erb +18 -0
  71. data/app/views/fields/password/_show.html.erb +18 -0
  72. data/app/views/fields/polymorphic/_form.html.erb +29 -0
  73. data/app/views/fields/polymorphic/_index.html.erb +24 -0
  74. data/app/views/fields/polymorphic/_show.html.erb +28 -0
  75. data/app/views/fields/select/_form.html.erb +31 -0
  76. data/app/views/fields/select/_index.html.erb +16 -0
  77. data/app/views/fields/select/_show.html.erb +16 -0
  78. data/app/views/fields/string/_form.html.erb +23 -0
  79. data/app/views/fields/string/_index.html.erb +18 -0
  80. data/app/views/fields/string/_show.html.erb +18 -0
  81. data/app/views/fields/text/_form.html.erb +22 -0
  82. data/app/views/fields/text/_index.html.erb +18 -0
  83. data/app/views/fields/text/_show.html.erb +18 -0
  84. data/app/views/fields/time/_form.html.erb +22 -0
  85. data/app/views/fields/time/_index.html.erb +17 -0
  86. data/app/views/fields/time/_show.html.erb +17 -0
  87. data/app/views/fields/url/_form.html.erb +23 -0
  88. data/app/views/fields/url/_index.html.erb +20 -0
  89. data/app/views/fields/url/_show.html.erb +20 -0
  90. data/app/views/layouts/administrate/application.html.erb +41 -0
  91. data/config/i18n-tasks.yml +18 -0
  92. data/config/locales/administrate.ar.yml +28 -0
  93. data/config/locales/administrate.bs.yml +27 -0
  94. data/config/locales/administrate.ca.yml +28 -0
  95. data/config/locales/administrate.da.yml +28 -0
  96. data/config/locales/administrate.de.yml +28 -0
  97. data/config/locales/administrate.en.yml +28 -0
  98. data/config/locales/administrate.es.yml +28 -0
  99. data/config/locales/administrate.fr.yml +28 -0
  100. data/config/locales/administrate.id.yml +28 -0
  101. data/config/locales/administrate.it.yml +28 -0
  102. data/config/locales/administrate.ja.yml +28 -0
  103. data/config/locales/administrate.ko.yml +28 -0
  104. data/config/locales/administrate.nl.yml +28 -0
  105. data/config/locales/administrate.pl.yml +28 -0
  106. data/config/locales/administrate.pt-BR.yml +29 -0
  107. data/config/locales/administrate.pt.yml +29 -0
  108. data/config/locales/administrate.ru.yml +28 -0
  109. data/config/locales/administrate.sq.yml +28 -0
  110. data/config/locales/administrate.sv.yml +28 -0
  111. data/config/locales/administrate.uk.yml +28 -0
  112. data/config/locales/administrate.vi.yml +28 -0
  113. data/config/locales/administrate.zh-CN.yml +28 -0
  114. data/config/locales/administrate.zh-TW.yml +28 -0
  115. data/config/routes.rb +2 -0
  116. data/config/unicorn.rb +30 -0
  117. data/docs/adding_controllers_without_related_model.md +36 -0
  118. data/docs/adding_custom_field_types.md +81 -0
  119. data/docs/authentication.md +63 -0
  120. data/docs/authorization.md +71 -0
  121. data/docs/contributing.md +1 -0
  122. data/docs/customizing_attribute_partials.md +56 -0
  123. data/docs/customizing_controller_actions.md +58 -0
  124. data/docs/customizing_dashboards.md +303 -0
  125. data/docs/customizing_page_views.md +84 -0
  126. data/docs/getting_started.md +128 -0
  127. data/docs/rails_api.md +45 -0
  128. data/lib/administrate/base_dashboard.rb +97 -0
  129. data/lib/administrate/custom_dashboard.rb +15 -0
  130. data/lib/administrate/engine.rb +44 -0
  131. data/lib/administrate/field/associative.rb +33 -0
  132. data/lib/administrate/field/base.rb +54 -0
  133. data/lib/administrate/field/belongs_to.rb +38 -0
  134. data/lib/administrate/field/boolean.rb +15 -0
  135. data/lib/administrate/field/date.rb +20 -0
  136. data/lib/administrate/field/date_time.rb +32 -0
  137. data/lib/administrate/field/deferred.rb +44 -0
  138. data/lib/administrate/field/email.rb +11 -0
  139. data/lib/administrate/field/has_many.rb +94 -0
  140. data/lib/administrate/field/has_one.rb +35 -0
  141. data/lib/administrate/field/number.rb +35 -0
  142. data/lib/administrate/field/password.rb +25 -0
  143. data/lib/administrate/field/polymorphic.rb +51 -0
  144. data/lib/administrate/field/select.rb +24 -0
  145. data/lib/administrate/field/string.rb +21 -0
  146. data/lib/administrate/field/text.rb +21 -0
  147. data/lib/administrate/field/time.rb +8 -0
  148. data/lib/administrate/field/url.rb +21 -0
  149. data/lib/administrate/generator_helpers.rb +13 -0
  150. data/lib/administrate/namespace/resource.rb +28 -0
  151. data/lib/administrate/namespace.rb +35 -0
  152. data/lib/administrate/order.rb +88 -0
  153. data/lib/administrate/page/base.rb +41 -0
  154. data/lib/administrate/page/collection.rb +37 -0
  155. data/lib/administrate/page/form.rb +28 -0
  156. data/lib/administrate/page/show.rb +24 -0
  157. data/lib/administrate/page.rb +4 -0
  158. data/lib/administrate/resource_resolver.rb +43 -0
  159. data/lib/administrate/search.rb +157 -0
  160. data/lib/administrate/version.rb +3 -0
  161. data/lib/administrate/view_generator.rb +36 -0
  162. data/lib/administrate.rb +4 -0
  163. data/lib/generators/administrate/assets/assets_generator.rb +12 -0
  164. data/lib/generators/administrate/assets/javascripts_generator.rb +17 -0
  165. data/lib/generators/administrate/assets/stylesheets_generator.rb +17 -0
  166. data/lib/generators/administrate/dashboard/USAGE +9 -0
  167. data/lib/generators/administrate/dashboard/dashboard_generator.rb +143 -0
  168. data/lib/generators/administrate/dashboard/templates/controller.rb.erb +46 -0
  169. data/lib/generators/administrate/dashboard/templates/dashboard.rb.erb +68 -0
  170. data/lib/generators/administrate/field/field_generator.rb +31 -0
  171. data/lib/generators/administrate/field/templates/_form.html.erb +6 -0
  172. data/lib/generators/administrate/field/templates/_index.html.erb +1 -0
  173. data/lib/generators/administrate/field/templates/_show.html.erb +1 -0
  174. data/lib/generators/administrate/field/templates/field_object.rb.erb +7 -0
  175. data/lib/generators/administrate/install/install_generator.rb +49 -0
  176. data/lib/generators/administrate/install/templates/application_controller.rb.erb +21 -0
  177. data/lib/generators/administrate/routes/routes_generator.rb +96 -0
  178. data/lib/generators/administrate/routes/templates/routes.rb.erb +5 -0
  179. data/lib/generators/administrate/views/edit_generator.rb +16 -0
  180. data/lib/generators/administrate/views/field_generator.rb +50 -0
  181. data/lib/generators/administrate/views/form_generator.rb +15 -0
  182. data/lib/generators/administrate/views/index_generator.rb +16 -0
  183. data/lib/generators/administrate/views/layout_generator.rb +24 -0
  184. data/lib/generators/administrate/views/navigation_generator.rb +15 -0
  185. data/lib/generators/administrate/views/new_generator.rb +16 -0
  186. data/lib/generators/administrate/views/show_generator.rb +15 -0
  187. data/lib/generators/administrate/views/views_generator.rb +14 -0
  188. data/lib/tasks/administrate_tasks.rake +4 -0
  189. metadata +398 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: b89bde5f27e2c788121b3dd98bdfe83cbcf74a0d66292dce50a418e568baa4be
4
+ data.tar.gz: fa3745d7993cb3f723ac149936d84d697b75c32978ebf64d67f5166bb8f90017
5
+ SHA512:
6
+ metadata.gz: 06c4ee91b28b1b11784232218bd18655ec3cf5c732b14d018ece9e115af3c09dabaf635f9c438fdb22ff7982ebe5388c8f3c17ab6e4c2f9ee0f38f25556f23dc
7
+ data.tar.gz: c1f5709d3db623e41539213cd144f6df4d25218c4cd71e17bfc08a78c26d8911a6899fcf9ce764089096d8c6e582426e08667e6e225230ee1e5db593040c4f60
data/Rakefile ADDED
@@ -0,0 +1,32 @@
1
+ begin
2
+ require 'bundler/setup'
3
+ rescue LoadError
4
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
+ end
6
+
7
+ require 'rdoc/task'
8
+
9
+ require File.expand_path('../spec/example_app/config/application', __FILE__)
10
+
11
+ RDoc::Task.new(:rdoc) do |rdoc|
12
+ rdoc.rdoc_dir = 'rdoc'
13
+ rdoc.title = 'Administrate'
14
+ rdoc.options << '--line-numbers'
15
+ rdoc.rdoc_files.include('README.rdoc')
16
+ rdoc.rdoc_files.include('lib/**/*.rb')
17
+ end
18
+
19
+ Bundler::GemHelper.install_tasks
20
+
21
+ Rails.application.load_tasks
22
+ task(:default).clear
23
+ task default: [:spec]
24
+
25
+ if defined? RSpec
26
+ task(:spec).clear
27
+ RSpec::Core::RakeTask.new(:spec) do |t|
28
+ t.verbose = false
29
+ end
30
+ end
31
+
32
+ task default: "bundler:audit"
@@ -0,0 +1,6 @@
1
+ //= require jquery
2
+ //= require jquery_ujs
3
+ //= require selectize
4
+ //= require moment
5
+ //= require datetime_picker
6
+ //= require_tree .
@@ -0,0 +1,4 @@
1
+ $(function() {
2
+ $('.field-unit--belongs-to select').selectize({});
3
+ $(".field-unit--has-many select").selectize({});
4
+ });
@@ -0,0 +1,14 @@
1
+ $(function () {
2
+ $('[data-type="time"]').datetimepicker({
3
+ debug: false,
4
+ format: 'HH:mm:ss',
5
+ });
6
+ $('[data-type="datetime"]').datetimepicker({
7
+ debug: false,
8
+ format: 'YYYY-MM-DD HH:mm:ss',
9
+ });
10
+ $('[data-type="date"]').datetimepicker({
11
+ debug: false,
12
+ format: 'YYYY-MM-DD',
13
+ });
14
+ });
@@ -0,0 +1,23 @@
1
+ $(function() {
2
+ var keycodes = { space: 32, enter: 13 };
3
+
4
+ var visitDataUrl = function(event) {
5
+ if (event.type == "click" ||
6
+ event.keyCode == keycodes.space ||
7
+ event.keyCode == keycodes.enter) {
8
+
9
+ if (event.target.href) {
10
+ return;
11
+ }
12
+
13
+ var dataUrl = $(event.target).closest("tr").data("url");
14
+ var selection = window.getSelection().toString();
15
+ if (selection.length === 0 && dataUrl) {
16
+ window.location = window.location.protocol + '//' + window.location.host + dataUrl;
17
+ }
18
+ }
19
+ };
20
+
21
+ $("table").on("click", ".js-table-row", visitDataUrl);
22
+ $("table").on("keydown", ".js-table-row", visitDataUrl);
23
+ });
@@ -0,0 +1,30 @@
1
+ @charset "utf-8";
2
+
3
+ @import "reset/normalize";
4
+
5
+ @import "selectize";
6
+ @import "datetime_picker";
7
+
8
+ @import "library/clearfix";
9
+ @import "library/data-label";
10
+ @import "library/variables";
11
+
12
+ @import "base/forms";
13
+ @import "base/layout";
14
+ @import "base/lists";
15
+ @import "base/tables";
16
+ @import "base/typography";
17
+
18
+ @import "components/app-container";
19
+ @import "components/attributes";
20
+ @import "components/buttons";
21
+ @import "components/cells";
22
+ @import "components/field-unit";
23
+ @import "components/flashes";
24
+ @import "components/form-actions";
25
+ @import "components/main-content";
26
+ @import "components/navigation";
27
+ @import "components/pagination";
28
+ @import "components/search";
29
+
30
+ @import "utilities/text-color";
@@ -0,0 +1,107 @@
1
+ fieldset {
2
+ background-color: transparent;
3
+ border: 0;
4
+ margin: 0;
5
+ padding: 0;
6
+ }
7
+
8
+ legend {
9
+ font-weight: $bold-font-weight;
10
+ margin: 0;
11
+ padding: 0;
12
+ }
13
+
14
+ label {
15
+ display: block;
16
+ font-weight: $bold-font-weight;
17
+ margin: 0;
18
+ }
19
+
20
+ input,
21
+ select {
22
+ display: block;
23
+ font-family: $base-font-family;
24
+ font-size: $base-font-size;
25
+ }
26
+
27
+ input,
28
+ select,
29
+ textarea {
30
+ display: block;
31
+ font-family: $base-font-family;
32
+ font-size: 16px;
33
+ }
34
+
35
+ [type="color"],
36
+ [type="date"],
37
+ [type="datetime-local"],
38
+ [type="email"],
39
+ [type="month"],
40
+ [type="number"],
41
+ [type="password"],
42
+ [type="search"],
43
+ [type="tel"],
44
+ [type="text"],
45
+ [type="time"],
46
+ [type="url"],
47
+ [type="week"],
48
+ input:not([type]),
49
+ textarea {
50
+ appearance: none;
51
+ background-color: $white;
52
+ border: $base-border;
53
+ border-radius: $base-border-radius;
54
+ padding: 0.5em;
55
+ transition: border-color $base-duration $base-timing;
56
+ width: 100%;
57
+
58
+ &:hover {
59
+ border-color: mix($black, $base-border-color, 20%);
60
+ }
61
+
62
+ &:focus {
63
+ border-color: $action-color;
64
+ outline: none;
65
+ }
66
+
67
+ &:disabled {
68
+ background-color: mix($black, $white, 5%);
69
+ cursor: not-allowed;
70
+
71
+ &:hover {
72
+ border: $base-border;
73
+ }
74
+ }
75
+
76
+ &::placeholder {
77
+ font-style: italic;
78
+ }
79
+ }
80
+
81
+ textarea {
82
+ resize: vertical;
83
+ }
84
+
85
+ [type="checkbox"],
86
+ [type="radio"] {
87
+ display: inline;
88
+ margin-right: $small-spacing / 2;
89
+ }
90
+
91
+ [type="file"] {
92
+ width: 100%;
93
+ }
94
+
95
+ select {
96
+ width: 100%;
97
+ }
98
+
99
+ [type="checkbox"],
100
+ [type="radio"],
101
+ [type="file"],
102
+ select {
103
+ &:focus {
104
+ outline: $focus-outline;
105
+ outline-offset: $focus-outline-offset;
106
+ }
107
+ }
@@ -0,0 +1,20 @@
1
+ html {
2
+ background-color: $base-background-color;
3
+ box-sizing: border-box;
4
+ }
5
+
6
+ *,
7
+ *::before,
8
+ *::after {
9
+ box-sizing: inherit;
10
+ }
11
+
12
+ figure {
13
+ margin: 0;
14
+ }
15
+
16
+ img,
17
+ picture {
18
+ margin: 0;
19
+ max-width: 100%;
20
+ }
@@ -0,0 +1,19 @@
1
+ ul,
2
+ ol {
3
+ list-style-type: none;
4
+ margin: 0;
5
+ padding: 0;
6
+ }
7
+
8
+ dl {
9
+ margin-bottom: $small-spacing;
10
+
11
+ dt {
12
+ font-weight: $bold-font-weight;
13
+ margin-top: $small-spacing;
14
+ }
15
+
16
+ dd {
17
+ margin: 0;
18
+ }
19
+ }
@@ -0,0 +1,58 @@
1
+ table {
2
+ border-collapse: collapse;
3
+ font-size: 0.9em;
4
+ text-align: left;
5
+ width: 100%;
6
+
7
+ a {
8
+ color: inherit;
9
+ text-decoration: none;
10
+ }
11
+ }
12
+
13
+ thead {
14
+ font-weight: $bold-font-weight;
15
+ }
16
+
17
+ tr {
18
+ border-bottom: $base-border;
19
+ }
20
+
21
+ tbody tr {
22
+ &:hover {
23
+ background-color: $base-background-color;
24
+ }
25
+
26
+ [role=link] {
27
+ cursor: pointer;
28
+ }
29
+
30
+ &:focus {
31
+ outline: $focus-outline;
32
+ outline-offset: -($focus-outline-width);
33
+ }
34
+ }
35
+
36
+ td,
37
+ th {
38
+ font-feature-settings: "kern", "liga", "clig", "calt", "lnum", "tnum";
39
+ font-kerning: normal;
40
+ font-variant-ligatures: common-ligatures, contextual;
41
+ font-variant-numeric: lining-nums, tabular-nums;
42
+ padding: 0.75rem;
43
+ vertical-align: middle;
44
+ }
45
+
46
+ td:first-child,
47
+ th:first-child {
48
+ padding-left: 2rem;
49
+ }
50
+
51
+ td:last-child,
52
+ th:last-child {
53
+ padding-right: 2rem;
54
+ }
55
+
56
+ td img {
57
+ max-height: 2rem;
58
+ }
@@ -0,0 +1,45 @@
1
+ body {
2
+ color: $base-font-color;
3
+ font-family: $base-font-family;
4
+ font-size: $base-font-size;
5
+ line-height: $base-line-height;
6
+ }
7
+
8
+ h1,
9
+ h2,
10
+ h3,
11
+ h4,
12
+ h5,
13
+ h6 {
14
+ font-family: $heading-font-family;
15
+ font-size: $base-font-size;
16
+ line-height: $heading-line-height;
17
+ margin: 0;
18
+ }
19
+
20
+ p {
21
+ margin: 0 0 $small-spacing;
22
+ }
23
+
24
+ a {
25
+ color: $action-color;
26
+ text-decoration-skip-ink: auto;
27
+ transition: color $base-duration $base-timing;
28
+
29
+ &:hover {
30
+ color: mix($black, $action-color, 25%);
31
+ }
32
+
33
+ &:focus {
34
+ outline: $focus-outline;
35
+ outline-offset: $focus-outline-offset;
36
+ }
37
+ }
38
+
39
+ hr {
40
+ border-bottom: $base-border;
41
+ border-left: 0;
42
+ border-right: 0;
43
+ border-top: 0;
44
+ margin: $base-spacing 0;
45
+ }
@@ -0,0 +1,9 @@
1
+ .app-container {
2
+ align-items: stretch;
3
+ display: flex;
4
+ margin-left: auto;
5
+ margin-right: auto;
6
+ max-width: 100rem;
7
+ min-height: 100vh;
8
+ padding: $base-spacing;
9
+ }
@@ -0,0 +1,26 @@
1
+ .attribute-label {
2
+ @include data-label;
3
+ clear: left;
4
+ float: left;
5
+ margin-bottom: $base-spacing;
6
+ margin-top: 0.25em;
7
+ text-align: right;
8
+ width: calc(15% - 1rem);
9
+ }
10
+
11
+ .preserve-whitespace {
12
+ white-space: pre-wrap;
13
+ word-wrap: break-word;
14
+ }
15
+
16
+ .attribute-data {
17
+ float: left;
18
+ margin-bottom: $base-spacing;
19
+ margin-left: 2rem;
20
+ width: calc(85% - 1rem);
21
+ }
22
+
23
+ .attribute--nested {
24
+ border: $base-border;
25
+ padding: $small-spacing;
26
+ }
@@ -0,0 +1,51 @@
1
+ button,
2
+ input[type="button"],
3
+ input[type="reset"],
4
+ input[type="submit"],
5
+ .button {
6
+ appearance: none;
7
+ background-color: $action-color;
8
+ border: 0;
9
+ border-radius: $base-border-radius;
10
+ color: $white;
11
+ cursor: pointer;
12
+ display: inline-block;
13
+ font-family: $base-font-family;
14
+ font-size: $base-font-size;
15
+ -webkit-font-smoothing: antialiased;
16
+ font-weight: $bold-font-weight;
17
+ line-height: 1;
18
+ padding: $small-spacing $base-spacing;
19
+ text-decoration: none;
20
+ transition: background-color $base-duration $base-timing;
21
+ user-select: none;
22
+ vertical-align: middle;
23
+ white-space: nowrap;
24
+
25
+ &:hover {
26
+ background-color: mix($black, $action-color, 20%);
27
+ color: $white;
28
+ }
29
+
30
+ &:focus {
31
+ outline: $focus-outline;
32
+ outline-offset: $focus-outline-offset;
33
+ }
34
+
35
+ &:disabled {
36
+ cursor: not-allowed;
37
+ opacity: 0.5;
38
+
39
+ &:hover {
40
+ background-color: $action-color;
41
+ }
42
+ }
43
+ }
44
+
45
+ .button--alt {
46
+ background-color: transparent;
47
+ border: $base-border;
48
+ border-color: $blue;
49
+ color: $blue;
50
+ margin-bottom: $base-spacing;
51
+ }
@@ -0,0 +1,47 @@
1
+ .cell-label {
2
+ padding-top: 0.15em;
3
+
4
+ &:hover {
5
+ a {
6
+ color: $action-color;
7
+ }
8
+
9
+ svg {
10
+ fill: $action-color;
11
+ transform: rotate(180deg);
12
+ }
13
+ }
14
+
15
+ a {
16
+ color: inherit;
17
+ display: inline-block;
18
+ transition: color $base-duration $base-timing;
19
+ width: 100%;
20
+ }
21
+ }
22
+
23
+ .cell-label--asc,
24
+ .cell-label--desc {
25
+ font-weight: $bold-font-weight;
26
+ }
27
+
28
+ .cell-label__sort-indicator {
29
+ float: right;
30
+ margin-left: 5px;
31
+
32
+ svg {
33
+ fill: $hint-grey;
34
+ height: 13px;
35
+ transition: transform $base-duration $base-timing;
36
+ width: 13px;
37
+ }
38
+ }
39
+
40
+ .cell-label__sort-indicator--desc {
41
+ transform: rotate(180deg);
42
+ }
43
+
44
+ .cell-data--number,
45
+ .cell-label--number {
46
+ text-align: right;
47
+ }
@@ -0,0 +1,45 @@
1
+ .field-unit {
2
+ @include administrate-clearfix;
3
+ align-items: center;
4
+ display: flex;
5
+ margin-bottom: $base-spacing;
6
+ position: relative;
7
+ width: 100%;
8
+ }
9
+
10
+ .field-unit__label {
11
+ float: left;
12
+ margin-left: 1rem;
13
+ text-align: right;
14
+ width: calc(15% - 1rem);
15
+ }
16
+
17
+ .field-unit__field {
18
+ float: left;
19
+ margin-left: 2rem;
20
+ max-width: 50rem;
21
+ width: 100%;
22
+ }
23
+
24
+ .field-unit--nested {
25
+ border: $base-border;
26
+ margin-left: 7.5%;
27
+ max-width: 60rem;
28
+ padding: $small-spacing;
29
+ width: 100%;
30
+
31
+ .field-unit__field {
32
+ width: 100%;
33
+ }
34
+
35
+ .field-unit__label {
36
+ width: 10rem;
37
+ }
38
+ }
39
+
40
+ .field-unit--required {
41
+ label::after {
42
+ color: $red;
43
+ content: " *";
44
+ }
45
+ }
@@ -0,0 +1,28 @@
1
+ $base-spacing: 1.5em !default;
2
+ $flashes: (
3
+ "alert": #fff6bf,
4
+ "error": #fbe3e4,
5
+ "notice": #e5edf8,
6
+ "success": #e6efc2,
7
+ ) !default;
8
+
9
+ @each $flash-type, $color in $flashes {
10
+ .flash-#{$flash-type} {
11
+ background-color: $color;
12
+ color: mix($black, $color, 60%);
13
+ display: block;
14
+ margin-bottom: $base-spacing / 2;
15
+ padding: $base-spacing / 2;
16
+ text-align: center;
17
+
18
+ a {
19
+ color: mix($black, $color, 70%);
20
+ text-decoration: underline;
21
+
22
+ &:focus,
23
+ &:hover {
24
+ color: mix($black, $color, 90%);
25
+ }
26
+ }
27
+ }
28
+ }
@@ -0,0 +1,3 @@
1
+ .form-actions {
2
+ margin-left: calc(15% + 2rem);
3
+ }
@@ -0,0 +1,29 @@
1
+ .main-content {
2
+ background-color: $white;
3
+ border-radius: $base-border-radius;
4
+ box-shadow: 0 0 6px 0 rgba($black, 0.12),
5
+ 0 2px 2px rgba($black, 0.2);
6
+ flex: 1 1 100%;
7
+ padding-bottom: 10vh;
8
+ }
9
+
10
+ .main-content__header,
11
+ .main-content__body {
12
+ padding: 1rem 2rem;
13
+ }
14
+
15
+ .main-content__body--flush {
16
+ padding-left: 0;
17
+ padding-right: 0;
18
+ }
19
+
20
+ .main-content__header {
21
+ align-items: center;
22
+ border-bottom: $base-border;
23
+ display: flex;
24
+ }
25
+
26
+ .main-content__page-title {
27
+ font-size: 1.6em;
28
+ margin-right: auto;
29
+ }
@@ -0,0 +1,32 @@
1
+ $_navigation-link-padding: 0.6em;
2
+
3
+ .navigation {
4
+ flex: 1 0 10rem;
5
+ padding: $base-spacing;
6
+ padding-left: 0;
7
+ }
8
+
9
+ .navigation__link {
10
+ background-color: transparent;
11
+ color: $base-font-color;
12
+ display: block;
13
+ line-height: 1;
14
+ margin-left: -($_navigation-link-padding);
15
+ padding: $_navigation-link-padding;
16
+ transition: background-color $base-duration $base-timing,
17
+ color $base-duration $base-timing;
18
+
19
+ &:not(:last-of-type) {
20
+ margin-bottom: $small-spacing;
21
+ }
22
+
23
+ &:hover {
24
+ background-color: mix($black, $base-background-color, 5%);
25
+ border-radius: $base-border-radius;
26
+ color: $base-font-color;
27
+ }
28
+ }
29
+
30
+ .navigation__link--active {
31
+ font-weight: $bold-font-weight;
32
+ }
@@ -0,0 +1,18 @@
1
+ .pagination {
2
+ margin-top: $base-spacing;
3
+ padding-left: $base-spacing;
4
+ padding-right: $base-spacing;
5
+ text-align: center;
6
+
7
+ .first,
8
+ .prev,
9
+ .page,
10
+ .next,
11
+ .last {
12
+ margin: $small-spacing;
13
+ }
14
+
15
+ .current {
16
+ font-weight: $bold-font-weight;
17
+ }
18
+ }