formadmin 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +45 -0
- data/Gemfile +2 -0
- data/LICENSE.txt +21 -0
- data/README.md +40 -0
- data/Rakefile +1 -0
- data/app/assets/stylesheets/formadmin/_formadmin.scss +11 -0
- data/app/assets/stylesheets/formadmin/atoms/_box.scss +6 -0
- data/app/assets/stylesheets/formadmin/atoms/_button.scss +28 -0
- data/app/assets/stylesheets/formadmin/atoms/_drag.scss +12 -0
- data/app/assets/stylesheets/formadmin/atoms/_header.scss +7 -0
- data/app/assets/stylesheets/formadmin/atoms/_input.scss +19 -0
- data/app/assets/stylesheets/formadmin/atoms/_turbolinks.scss +7 -0
- data/app/assets/stylesheets/formadmin/components/_blank.scss +19 -0
- data/app/assets/stylesheets/formadmin/components/_button.scss +28 -0
- data/app/assets/stylesheets/formadmin/components/_comments.scss +82 -0
- data/app/assets/stylesheets/formadmin/components/_datepicker.scss +100 -0
- data/app/assets/stylesheets/formadmin/components/_dropdown.scss +88 -0
- data/app/assets/stylesheets/formadmin/components/_flash.scss +41 -0
- data/app/assets/stylesheets/formadmin/components/_form.scss +329 -0
- data/app/assets/stylesheets/formadmin/components/_grid.scss +16 -0
- data/app/assets/stylesheets/formadmin/components/_indexes.scss +67 -0
- data/app/assets/stylesheets/formadmin/components/_modal.scss +66 -0
- data/app/assets/stylesheets/formadmin/components/_pagination.scss +76 -0
- data/app/assets/stylesheets/formadmin/components/_panel.scss +21 -0
- data/app/assets/stylesheets/formadmin/components/_status-tag.scss +38 -0
- data/app/assets/stylesheets/formadmin/components/_table.scss +167 -0
- data/app/assets/stylesheets/formadmin/components/_tabs.scss +42 -0
- data/app/assets/stylesheets/formadmin/components/_tools.scss +68 -0
- data/app/assets/stylesheets/formadmin/components/_unsupported_browser.scss +12 -0
- data/app/assets/stylesheets/formadmin/core/_animations.scss +25 -0
- data/app/assets/stylesheets/formadmin/core/_core.scss +44 -0
- data/app/assets/stylesheets/formadmin/core/_mixins.scss +15 -0
- data/app/assets/stylesheets/formadmin/core/_reset.scss +227 -0
- data/app/assets/stylesheets/formadmin/core/_settings.scss +94 -0
- data/app/assets/stylesheets/formadmin/layouts/_footer.scss +14 -0
- data/app/assets/stylesheets/formadmin/layouts/_header.scss +167 -0
- data/app/assets/stylesheets/formadmin/layouts/_main.scss +30 -0
- data/app/assets/stylesheets/formadmin/layouts/_title-bar.scss +66 -0
- data/app/assets/stylesheets/formadmin/pages/_logged-out.scss +45 -0
- data/bin/console +14 -0
- data/bin/setup +7 -0
- data/formadmin.gemspec +24 -0
- data/lib/formadmin/version.rb +3 -0
- data/lib/formadmin.rb +8 -0
- metadata +116 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 37e4ae4e413c83d7cb1489487900518f0f36a07b
|
4
|
+
data.tar.gz: 67967f9a5c589d4a63c9d566f0bf7dbf92485af2
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 12c8be48e16a3f3f84ba21c162e3b6dec61f929faaf2db003637e9e72ea049551819cbdd65bf9eef41e9e3160e8c6241a274e10e99a65ee35fd0ba4cbe46e76c
|
7
|
+
data.tar.gz: 9a2b5e47d4464c7587563550c04ab23f080d4e2cc4b891a78779d757ec6354316a3e391cd7c2bfdc6589ec0ba28d3865dddf9a21fa25140cd87543e8217b0d04
|
data/.gitignore
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
################
|
2
|
+
# Defaults #
|
3
|
+
################
|
4
|
+
/.bundle/
|
5
|
+
/.yardoc
|
6
|
+
/Gemfile.lock
|
7
|
+
/_yardoc/
|
8
|
+
/coverage/
|
9
|
+
/doc/
|
10
|
+
/pkg/
|
11
|
+
/spec/reports/
|
12
|
+
/tmp/
|
13
|
+
|
14
|
+
####################
|
15
|
+
# OS & Editors #
|
16
|
+
####################
|
17
|
+
._*
|
18
|
+
.cache
|
19
|
+
.DS_Store
|
20
|
+
.idea
|
21
|
+
.project
|
22
|
+
.settings
|
23
|
+
.tmproj
|
24
|
+
*.esproj
|
25
|
+
*.sublime-project
|
26
|
+
*.sublime-workspace
|
27
|
+
nbproject
|
28
|
+
Thumbs.db
|
29
|
+
|
30
|
+
|
31
|
+
|
32
|
+
##############
|
33
|
+
# Others #
|
34
|
+
##############
|
35
|
+
*.diff
|
36
|
+
*.err
|
37
|
+
*.log
|
38
|
+
*.orig
|
39
|
+
*.rej
|
40
|
+
*.sass-cache
|
41
|
+
*.swo
|
42
|
+
*.swp
|
43
|
+
*.vi
|
44
|
+
*.zip
|
45
|
+
*~
|
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2016 Caio Tarifa
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
13
|
+
all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
# Formadmin
|
2
|
+
|
3
|
+
Modern theme for Active Admin used by Formaweb.
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
1. Please make sure that you are using Active Admin from their Github repo:
|
8
|
+
|
9
|
+
```
|
10
|
+
gem 'activeadmin', github: 'activeadmin/activeadmin'
|
11
|
+
```
|
12
|
+
|
13
|
+
2. Add this gem in your `Gemfile`:
|
14
|
+
|
15
|
+
```
|
16
|
+
gem 'formadmin'
|
17
|
+
```
|
18
|
+
|
19
|
+
3. So, bundle...
|
20
|
+
|
21
|
+
```
|
22
|
+
$ bundle install
|
23
|
+
```
|
24
|
+
|
25
|
+
## Usage
|
26
|
+
|
27
|
+
All you have to do is change your `assets/stylesheets/active_admin.scss`:
|
28
|
+
|
29
|
+
Instead loading defaults...
|
30
|
+
|
31
|
+
```
|
32
|
+
@import 'active_admin/mixins';
|
33
|
+
@import 'active_admin/base';
|
34
|
+
```
|
35
|
+
|
36
|
+
...load Formadmin:
|
37
|
+
|
38
|
+
```
|
39
|
+
@import 'formadmin/formadmin';
|
40
|
+
```
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
@@ -0,0 +1,28 @@
|
|
1
|
+
%button {
|
2
|
+
background-color: shade($white, 2.5%);
|
3
|
+
background-image: linear-gradient(to bottom, $white, shade($white, 5%));
|
4
|
+
border: 1px solid $silver;
|
5
|
+
box-shadow: 0 0 5px rgba($black, 0.05);
|
6
|
+
border-radius: $radius;
|
7
|
+
cursor: pointer;
|
8
|
+
|
9
|
+
&:focus,
|
10
|
+
&:hover {
|
11
|
+
background: $white;
|
12
|
+
}
|
13
|
+
|
14
|
+
&:focus {
|
15
|
+
box-shadow: inset 0 0 3px $silver;
|
16
|
+
}
|
17
|
+
}
|
18
|
+
|
19
|
+
%primary-button {
|
20
|
+
background-color: tint($primary-color, 25%);
|
21
|
+
background-image: linear-gradient(to bottom, tint($primary-color, 25%), $primary-color);
|
22
|
+
border-color: shade($primary-color, 25%);
|
23
|
+
color: $white;
|
24
|
+
|
25
|
+
&:hover {
|
26
|
+
background: shade($primary-color, 20%);
|
27
|
+
}
|
28
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
%input {
|
2
|
+
appearance: none;
|
3
|
+
background-color: $white;
|
4
|
+
border: 1px solid rgba($silver, 0.75);
|
5
|
+
border-radius: $radius;
|
6
|
+
outline: 0;
|
7
|
+
padding: 10px 12px;
|
8
|
+
transition: border-color 250ms, box-shadow 250ms;
|
9
|
+
width: 100%;
|
10
|
+
|
11
|
+
&:focus {
|
12
|
+
border-color: rgba($primary-color, 0.5);
|
13
|
+
box-shadow: 0 0 5px rgba($primary-color, 0.25);
|
14
|
+
|
15
|
+
~ .inline-hints {
|
16
|
+
color: $text-color;
|
17
|
+
}
|
18
|
+
}
|
19
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
.blank_slate_container {
|
2
|
+
text-align: center;
|
3
|
+
|
4
|
+
.blank_slate {
|
5
|
+
border: 1px dashed $silver;
|
6
|
+
border-radius: 4px;
|
7
|
+
color: rgba($text-color, 0.75);
|
8
|
+
display: inline-block;
|
9
|
+
margin-top: 80px;
|
10
|
+
padding: 50px 100px;
|
11
|
+
text-align: center;
|
12
|
+
}
|
13
|
+
|
14
|
+
span,
|
15
|
+
small {
|
16
|
+
display: block;
|
17
|
+
line-height: 1.5;
|
18
|
+
}
|
19
|
+
}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
a.button,
|
2
|
+
a:link.button,
|
3
|
+
a:visited.button,
|
4
|
+
a.clear_filters_btn,
|
5
|
+
.cancel a,
|
6
|
+
input[type='submit'],
|
7
|
+
input[type='button'],
|
8
|
+
button {
|
9
|
+
@extend %button;
|
10
|
+
display: inline-block;
|
11
|
+
font-size: 14px;
|
12
|
+
outline: 0;
|
13
|
+
padding: 9px 12px;
|
14
|
+
text-align: center;
|
15
|
+
text-decoration: none;
|
16
|
+
transition: background 250ms, box-shadow 250ms;
|
17
|
+
user-select: none;
|
18
|
+
vertical-align: middle;
|
19
|
+
}
|
20
|
+
|
21
|
+
input[type='submit'] {
|
22
|
+
@extend %primary-button;
|
23
|
+
}
|
24
|
+
|
25
|
+
a.member_link {
|
26
|
+
margin-right: 7px;
|
27
|
+
white-space: nowrap;
|
28
|
+
}
|
@@ -0,0 +1,82 @@
|
|
1
|
+
.comments .empty {
|
2
|
+
display: block;
|
3
|
+
margin: 20px 0;
|
4
|
+
opacity: 0.5;
|
5
|
+
text-align: center;
|
6
|
+
}
|
7
|
+
|
8
|
+
div.active_admin_comment {
|
9
|
+
@extend %box;
|
10
|
+
align-items: stretch;
|
11
|
+
background-color: $white;
|
12
|
+
display: flex;
|
13
|
+
overflow: hidden;
|
14
|
+
margin-bottom: 20px;
|
15
|
+
}
|
16
|
+
|
17
|
+
form.active_admin_comment {
|
18
|
+
li,
|
19
|
+
.inputs {
|
20
|
+
border: none;
|
21
|
+
margin: 0;
|
22
|
+
padding: 0;
|
23
|
+
}
|
24
|
+
|
25
|
+
.hidden {
|
26
|
+
display: none;
|
27
|
+
}
|
28
|
+
|
29
|
+
textarea {
|
30
|
+
border-color: $silver;
|
31
|
+
display: block;
|
32
|
+
float: none;
|
33
|
+
max-width: 700px;
|
34
|
+
margin: 0 auto;
|
35
|
+
width: 100%;
|
36
|
+
}
|
37
|
+
}
|
38
|
+
|
39
|
+
.active_admin_comment_meta {
|
40
|
+
background-color: shade($white, 5%);
|
41
|
+
border-right: 1px solid $silver;
|
42
|
+
padding: 15px;
|
43
|
+
width: 200px;
|
44
|
+
|
45
|
+
.active_admin_comment_author {
|
46
|
+
margin: 0;
|
47
|
+
}
|
48
|
+
|
49
|
+
span {
|
50
|
+
font-size: 12px;
|
51
|
+
}
|
52
|
+
|
53
|
+
a[data-method='delete'] {
|
54
|
+
border: 1px solid $negative-color;
|
55
|
+
border-radius: $radius;
|
56
|
+
color: $negative-color;
|
57
|
+
cursor: pointer;
|
58
|
+
display: inline-block;
|
59
|
+
font-size: 10px;
|
60
|
+
margin-top: 10px;
|
61
|
+
opacity: 0.5;
|
62
|
+
padding: 2px 3px;
|
63
|
+
text-decoration: none;
|
64
|
+
transition: opacity 250ms;
|
65
|
+
|
66
|
+
&:hover {
|
67
|
+
opacity: 1;
|
68
|
+
}
|
69
|
+
}
|
70
|
+
}
|
71
|
+
|
72
|
+
.active_admin_comment_body {
|
73
|
+
padding: 15px;
|
74
|
+
|
75
|
+
p {
|
76
|
+
margin: 0;
|
77
|
+
|
78
|
+
+ p {
|
79
|
+
margin-top: 1em;
|
80
|
+
}
|
81
|
+
}
|
82
|
+
}
|
@@ -0,0 +1,100 @@
|
|
1
|
+
.ui-datepicker {
|
2
|
+
background-color: rgba($primary-color, 0.75);
|
3
|
+
backdrop-filter: blur(3px);
|
4
|
+
border-radius: $radius;
|
5
|
+
color: $white;
|
6
|
+
margin-top: 2px;
|
7
|
+
|
8
|
+
a {
|
9
|
+
color: inherit;
|
10
|
+
text-decoration: none;
|
11
|
+
}
|
12
|
+
}
|
13
|
+
|
14
|
+
.ui-datepicker-header,
|
15
|
+
.ui-datepicker-calendar {
|
16
|
+
padding: 5px;
|
17
|
+
text-align: center;
|
18
|
+
}
|
19
|
+
|
20
|
+
.ui-datepicker-header {
|
21
|
+
border-bottom: 1px solid rgba($white, 0.25);
|
22
|
+
}
|
23
|
+
|
24
|
+
.ui-datepicker-title {
|
25
|
+
font-weight: bold;
|
26
|
+
}
|
27
|
+
|
28
|
+
.ui-datepicker-prev,
|
29
|
+
.ui-datepicker-next {
|
30
|
+
cursor: pointer;
|
31
|
+
|
32
|
+
.ui-icon {
|
33
|
+
display: none;
|
34
|
+
}
|
35
|
+
|
36
|
+
&:before {
|
37
|
+
border: 5px solid transparent;
|
38
|
+
content: '';
|
39
|
+
height: 0;
|
40
|
+
position: absolute;
|
41
|
+
top: 10px;
|
42
|
+
transition: border-color 250ms;
|
43
|
+
width: 0;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
.ui-datepicker-prev {
|
48
|
+
&:before {
|
49
|
+
border-left-width: 0;
|
50
|
+
border-right-color: rgba($white, 0.5);
|
51
|
+
left: 10px;
|
52
|
+
}
|
53
|
+
|
54
|
+
&:hover:before {
|
55
|
+
border-right-color: $white;
|
56
|
+
}
|
57
|
+
}
|
58
|
+
|
59
|
+
.ui-datepicker-next {
|
60
|
+
&:before {
|
61
|
+
border-left-color: rgba($white, 0.5);
|
62
|
+
border-right-width: 0;
|
63
|
+
right: 10px;
|
64
|
+
}
|
65
|
+
|
66
|
+
&:hover:before {
|
67
|
+
border-left-color: $white;
|
68
|
+
}
|
69
|
+
}
|
70
|
+
|
71
|
+
.ui-datepicker-calendar {
|
72
|
+
font-size: 14px;
|
73
|
+
|
74
|
+
a:hover {
|
75
|
+
transition: background-color 250ms;
|
76
|
+
}
|
77
|
+
|
78
|
+
.ui-state-default {
|
79
|
+
border-radius: $radius;
|
80
|
+
padding: 1px 2px;
|
81
|
+
|
82
|
+
&:hover {
|
83
|
+
background-color: rgba($white, 0.25);
|
84
|
+
}
|
85
|
+
}
|
86
|
+
|
87
|
+
.ui-state-active {
|
88
|
+
background-color: $white;
|
89
|
+
color: $primary-color;
|
90
|
+
}
|
91
|
+
|
92
|
+
.ui-state-highlight {
|
93
|
+
background-color: rgba($white, 0.5);
|
94
|
+
color: $primary-color;
|
95
|
+
|
96
|
+
&:hover {
|
97
|
+
background-color: $white;
|
98
|
+
}
|
99
|
+
}
|
100
|
+
}
|
@@ -0,0 +1,88 @@
|
|
1
|
+
.dropdown_menu {
|
2
|
+
display: inline-block;
|
3
|
+
}
|
4
|
+
|
5
|
+
.dropdown_menu_button {
|
6
|
+
background-color: $white;
|
7
|
+
border: 1px solid $silver;
|
8
|
+
border-radius: $radius;
|
9
|
+
display: block;
|
10
|
+
font-size: 14px;
|
11
|
+
font-weight: bold;
|
12
|
+
padding: 12px 16px;
|
13
|
+
text-decoration: none;
|
14
|
+
transition: all 250ms;
|
15
|
+
|
16
|
+
&:after {
|
17
|
+
border-color: currentColor transparent;
|
18
|
+
border-style: solid;
|
19
|
+
border-width: 3px 3px 0;
|
20
|
+
content: '';
|
21
|
+
display: inline-block;
|
22
|
+
height: 0;
|
23
|
+
margin-left: 10px;
|
24
|
+
position: relative;
|
25
|
+
top: -3px;
|
26
|
+
width: 0;
|
27
|
+
}
|
28
|
+
|
29
|
+
&.disabled {
|
30
|
+
color: $silver;
|
31
|
+
cursor: not-allowed;
|
32
|
+
opacity: 0.5;
|
33
|
+
}
|
34
|
+
|
35
|
+
&:not(.disabled) {
|
36
|
+
@extend %button;
|
37
|
+
|
38
|
+
+ .dropdown_menu_list_wrapper {
|
39
|
+
animation: scale-up 250ms forwards;
|
40
|
+
}
|
41
|
+
}
|
42
|
+
}
|
43
|
+
|
44
|
+
.dropdown_menu_list_wrapper {
|
45
|
+
font-size: 14px;
|
46
|
+
opacity: 0;
|
47
|
+
position: absolute;
|
48
|
+
transform-origin: center top;
|
49
|
+
z-index: 20;
|
50
|
+
}
|
51
|
+
|
52
|
+
.dropdown_menu_nipple {
|
53
|
+
background-color: $primary-color;
|
54
|
+
height: 6px;
|
55
|
+
position: absolute;
|
56
|
+
top: -2px;
|
57
|
+
transform: rotate(45deg);
|
58
|
+
width: 6px;
|
59
|
+
z-index: 21;
|
60
|
+
}
|
61
|
+
|
62
|
+
.dropdown_menu_list {
|
63
|
+
background-color: $white;
|
64
|
+
border: 2px solid $primary-color;
|
65
|
+
border-radius: $radius;
|
66
|
+
box-shadow: 1px 1px 3px rgba($silver, 0.75);
|
67
|
+
list-style: none;
|
68
|
+
overflow: hidden;
|
69
|
+
position: relative;
|
70
|
+
z-index: 22;
|
71
|
+
|
72
|
+
li + li {
|
73
|
+
border-top: 1px solid $silver;
|
74
|
+
}
|
75
|
+
|
76
|
+
a {
|
77
|
+
display: block;
|
78
|
+
padding: 10px 15px;
|
79
|
+
text-align: center;
|
80
|
+
text-decoration: none;
|
81
|
+
transition: background-color 250ms;
|
82
|
+
white-space: nowrap;
|
83
|
+
|
84
|
+
&:hover {
|
85
|
+
background-color: shade($white, 5%);
|
86
|
+
}
|
87
|
+
}
|
88
|
+
}
|
@@ -0,0 +1,41 @@
|
|
1
|
+
.flash {
|
2
|
+
background-color: tint($info-color, 95%);
|
3
|
+
background-image: linear-gradient(to bottom, tint($info-color, 90%), tint($info-color, 85%));
|
4
|
+
border: 1px solid rgba($info-color, 0.5);
|
5
|
+
border-width: 0 0 1px;
|
6
|
+
box-shadow: 0 1px 3px rgba($black, 0.1);
|
7
|
+
color: $info-color;
|
8
|
+
font-size: 90%;
|
9
|
+
font-weight: bold;
|
10
|
+
padding: 15px 30px;
|
11
|
+
position: relative;
|
12
|
+
text-shadow: 0 1px 0 rgba($white, 0.8);
|
13
|
+
transition: border-color 250ms;
|
14
|
+
|
15
|
+
&:hover {
|
16
|
+
border-color: $info-color;
|
17
|
+
}
|
18
|
+
|
19
|
+
&.flash_notice {
|
20
|
+
background-color: tint($positive-color, 95%);
|
21
|
+
background-image: linear-gradient(to bottom, tint($positive-color, 90%), tint($positive-color, 85%));
|
22
|
+
border-color: rgba($positive-color, 0.5);
|
23
|
+
color: $positive-color;
|
24
|
+
|
25
|
+
&:hover {
|
26
|
+
border-color: $positive-color;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
|
30
|
+
&.flash_error,
|
31
|
+
.flash_alert {
|
32
|
+
background-color: tint($negative-color, 95%);
|
33
|
+
background-image: linear-gradient(to bottom, tint($negative-color, 90%), tint($negative-color, 85%));
|
34
|
+
border-color: rgba($negative-color, 0.5);
|
35
|
+
color: $negative-color;
|
36
|
+
|
37
|
+
&:hover {
|
38
|
+
border-color: $negative-color;
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|