cm-admin 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +4 -0
- data/README.md +66 -0
- data/Rakefile +6 -0
- data/bin/console +13 -0
- data/bin/setup +8 -0
- data/cm_admin.gemspec +44 -0
- data/lib/.DS_Store +0 -0
- data/lib/cm_admin.rb +6 -0
- data/lib/cm_admin/version.rb +3 -0
- data/lib/generators/cm_admin/USAGE +8 -0
- data/lib/generators/cm_admin/install_generator.rb +28 -0
- data/lib/generators/cm_admin/templates/assets/images/same-logo.png +0 -0
- data/lib/generators/cm_admin/templates/assets/stylesheets/_variable.scss +11 -0
- data/lib/generators/cm_admin/templates/assets/stylesheets/alignment.scss +111 -0
- data/lib/generators/cm_admin/templates/assets/stylesheets/application.css.scss +30 -0
- data/lib/generators/cm_admin/templates/assets/stylesheets/devise.scss +98 -0
- data/lib/generators/cm_admin/templates/assets/stylesheets/form.scss +131 -0
- data/lib/generators/cm_admin/templates/assets/stylesheets/products.scss +21 -0
- data/lib/generators/cm_admin/templates/assets/stylesheets/scaffold.scss +241 -0
- data/lib/generators/cm_admin/templates/assets/stylesheets/table.scss +90 -0
- data/lib/generators/cm_admin/templates/assets/stylesheets/user.scss +25 -0
- data/lib/generators/cm_admin/templates/layouts/_navbar.html.slim +9 -0
- data/lib/generators/cm_admin/templates/layouts/_side_navbar.html.slim +16 -0
- data/lib/generators/cm_admin/templates/layouts/application.html.slim +25 -0
- data/lib/generators/cm_admin/templates/layouts/initializer.rb +2 -0
- data/lib/generators/cm_admin/templates/views/_filters.html.slim +0 -0
- data/lib/generators/cm_admin/templates/views/_form.erb +38 -0
- data/lib/generators/cm_admin/templates/views/_table.erb +14 -0
- data/lib/generators/cm_admin/templates/views/index.erb +11 -0
- data/lib/generators/cm_admin/templates/views/show.erb +8 -0
- data/lib/generators/cm_admin/view_generator.rb +57 -0
- metadata +117 -0
@@ -0,0 +1,98 @@
|
|
1
|
+
|
2
|
+
@import '_variable.scss';
|
3
|
+
.main {
|
4
|
+
background-color:$background;
|
5
|
+
height: 100vh;
|
6
|
+
.heading{
|
7
|
+
position: absolute;
|
8
|
+
display: flex;
|
9
|
+
left: 50%;
|
10
|
+
top: 160px;
|
11
|
+
transform: translate(-50%,-50%);
|
12
|
+
h3{
|
13
|
+
color: $heading-color
|
14
|
+
}
|
15
|
+
}
|
16
|
+
|
17
|
+
.devise-form-container {
|
18
|
+
|
19
|
+
color: white;
|
20
|
+
background-color: $background;
|
21
|
+
width: 50%;
|
22
|
+
position: absolute;
|
23
|
+
top: 50%;
|
24
|
+
left: 50%;
|
25
|
+
-ms-transform: translateX(-50%) translateY(-50%);
|
26
|
+
-webkit-transform: translate(-50%,-50%);
|
27
|
+
transform: translate(-50%,-50%);
|
28
|
+
|
29
|
+
|
30
|
+
.container{
|
31
|
+
padding: 0 !important;
|
32
|
+
background-color: $background;
|
33
|
+
}
|
34
|
+
.row{
|
35
|
+
padding: 0 !important;
|
36
|
+
}
|
37
|
+
.form-control:focus {
|
38
|
+
padding: 6px 12px;
|
39
|
+
background-image: none;
|
40
|
+
}
|
41
|
+
|
42
|
+
.form-control {
|
43
|
+
background-color: $form-control-background;
|
44
|
+
border: none;
|
45
|
+
padding-left: 10px;
|
46
|
+
color: #FFF;
|
47
|
+
}
|
48
|
+
|
49
|
+
select.form-control {
|
50
|
+
border-radius: 0.3rem;
|
51
|
+
}
|
52
|
+
|
53
|
+
.nav-link, .nav-link:hover, .nav-link:visited {
|
54
|
+
text-decoration: none;
|
55
|
+
cursor: pointer;
|
56
|
+
}
|
57
|
+
}
|
58
|
+
}
|
59
|
+
.dropdown-icon{
|
60
|
+
margin-left: 150px;
|
61
|
+
margin-top: -15px;
|
62
|
+
.dropbtn {
|
63
|
+
position: relative;
|
64
|
+
background-color: #4CAF50;
|
65
|
+
color: white;
|
66
|
+
border-radius: 50%;
|
67
|
+
height: 50px;
|
68
|
+
width: 50px;
|
69
|
+
font-size: 16px;
|
70
|
+
border: none;
|
71
|
+
p {
|
72
|
+
position: absolute;
|
73
|
+
line-height: 50px;
|
74
|
+
display: inline;
|
75
|
+
left: 25%;
|
76
|
+
}
|
77
|
+
}
|
78
|
+
.dropdown-content {
|
79
|
+
display: none;
|
80
|
+
border-radius: 7px;
|
81
|
+
position: absolute;
|
82
|
+
background-color: #ffffff;
|
83
|
+
min-width: 160px;
|
84
|
+
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
|
85
|
+
z-index: 1;
|
86
|
+
height: 30px;
|
87
|
+
p{
|
88
|
+
line-height: 30px;
|
89
|
+
padding-left: 10px;
|
90
|
+
height: 10p;
|
91
|
+
}
|
92
|
+
}
|
93
|
+
}
|
94
|
+
.dropdown-icon:hover {
|
95
|
+
.dropdown-content{
|
96
|
+
display: block;
|
97
|
+
}
|
98
|
+
}
|
@@ -0,0 +1,131 @@
|
|
1
|
+
@import '_variable.scss';
|
2
|
+
.form-container{
|
3
|
+
width: 70%;
|
4
|
+
margin: 20px auto;
|
5
|
+
div{
|
6
|
+
padding-bottom: 7px;
|
7
|
+
label{
|
8
|
+
padding-left: 5px;
|
9
|
+
}
|
10
|
+
}
|
11
|
+
}
|
12
|
+
|
13
|
+
.filter-wrapper{
|
14
|
+
display: flex;
|
15
|
+
justify-content: space-between;
|
16
|
+
align-items: center;
|
17
|
+
|
18
|
+
}
|
19
|
+
|
20
|
+
.filter{
|
21
|
+
width: 25% !important;
|
22
|
+
}
|
23
|
+
|
24
|
+
|
25
|
+
.modal-form {
|
26
|
+
.form-control:focus {
|
27
|
+
padding: 6px 12px;
|
28
|
+
background-image: none;
|
29
|
+
box-shadow: none;
|
30
|
+
border: 1px solid #d5d5d5;
|
31
|
+
}
|
32
|
+
|
33
|
+
.form-control {
|
34
|
+
box-shadow: none;
|
35
|
+
border: 1px solid #d5d5d5;
|
36
|
+
border-radius: 0;
|
37
|
+
color: #1A1D1F;
|
38
|
+
}
|
39
|
+
|
40
|
+
select.form-control {
|
41
|
+
border-radius: 0;
|
42
|
+
border: 1px solid #d5d5d5;
|
43
|
+
}
|
44
|
+
|
45
|
+
.form-inputs {
|
46
|
+
margin: 0px 30px 20px 30px;
|
47
|
+
width: -webkit-fill-available;
|
48
|
+
}
|
49
|
+
.alert-dismissible {
|
50
|
+
padding-right: 45px;
|
51
|
+
padding-left: 25px;
|
52
|
+
}
|
53
|
+
.alert {
|
54
|
+
background: none;
|
55
|
+
margin-bottom: 0px;
|
56
|
+
}
|
57
|
+
.disabled {
|
58
|
+
.btn.btn-upload .upload-file-image {
|
59
|
+
cursor: not-allowed;
|
60
|
+
pointer-events: all !important;
|
61
|
+
}
|
62
|
+
}
|
63
|
+
}
|
64
|
+
|
65
|
+
.modal-dialog {
|
66
|
+
.modal-content {
|
67
|
+
border-radius: 0;
|
68
|
+
.modal-header {
|
69
|
+
padding-bottom: 20px;
|
70
|
+
font-weight: bold;
|
71
|
+
.modal-title {
|
72
|
+
text-transform: capitalize;
|
73
|
+
}
|
74
|
+
}
|
75
|
+
.modal-footer {
|
76
|
+
padding: 20px;
|
77
|
+
}
|
78
|
+
}
|
79
|
+
}
|
80
|
+
|
81
|
+
.btn.btn-upload {
|
82
|
+
border: 1px solid #d5d5d5;
|
83
|
+
border-radius: 0;
|
84
|
+
width: 100%;
|
85
|
+
padding: 10px;
|
86
|
+
position: relative;
|
87
|
+
|
88
|
+
.upload-file-image {
|
89
|
+
opacity: 0;
|
90
|
+
position: absolute;
|
91
|
+
top: 0;
|
92
|
+
left: 0;
|
93
|
+
width: 100%;
|
94
|
+
height: 100%;
|
95
|
+
}
|
96
|
+
.upload-file-edit {
|
97
|
+
opacity: 0;
|
98
|
+
position: absolute;
|
99
|
+
top: 12px;
|
100
|
+
left: 10px;
|
101
|
+
height: 45%;
|
102
|
+
width: 75%;
|
103
|
+
}
|
104
|
+
.uploaded-file-name {
|
105
|
+
text-align: left;
|
106
|
+
min-width: 25%;
|
107
|
+
max-width: 60%;
|
108
|
+
}
|
109
|
+
.upload-image {
|
110
|
+
height: 22px;
|
111
|
+
color: #3E3E3E;
|
112
|
+
font-family: "Open Sans";
|
113
|
+
font-size: 14px;
|
114
|
+
font-weight: 600;
|
115
|
+
line-height: 22px;
|
116
|
+
text-transform: none;
|
117
|
+
display: inline-block;
|
118
|
+
}
|
119
|
+
|
120
|
+
.upload-image-icon {
|
121
|
+
display: inline-block;
|
122
|
+
margin-right: 5px;
|
123
|
+
}
|
124
|
+
|
125
|
+
.remove-attachment {
|
126
|
+
padding: 0px 10px;
|
127
|
+
cursor: pointer;
|
128
|
+
position: absolute;
|
129
|
+
right: 10px;
|
130
|
+
}
|
131
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
|
2
|
+
@import '_variable.scss';
|
3
|
+
|
4
|
+
.product-foreground{
|
5
|
+
background-color: $table-background !important;
|
6
|
+
width: 98% !important;
|
7
|
+
z-index: 1;
|
8
|
+
margin: 10px auto;
|
9
|
+
box-shadow: -1px 4px 12px -3px rgba(0,0,0,0.18);
|
10
|
+
|
11
|
+
.product-details{
|
12
|
+
display: grid;
|
13
|
+
position: relative;
|
14
|
+
grid-template-columns: 1fr 1fr;
|
15
|
+
width: 40%;
|
16
|
+
margin-top: 65px;
|
17
|
+
|
18
|
+
}
|
19
|
+
|
20
|
+
}
|
21
|
+
|
@@ -0,0 +1,241 @@
|
|
1
|
+
@import '_variable.scss';
|
2
|
+
.layout-container{
|
3
|
+
height: 100%;
|
4
|
+
.side-navbar {
|
5
|
+
height: 100%;
|
6
|
+
width: 250px;
|
7
|
+
position: fixed;
|
8
|
+
z-index: 1;
|
9
|
+
top: 0;
|
10
|
+
left: 0;
|
11
|
+
background-color: $background;
|
12
|
+
overflow-x: hidden;
|
13
|
+
|
14
|
+
.logo-section{
|
15
|
+
background-color: $active-bg;
|
16
|
+
margin-bottom: 20px;
|
17
|
+
height: 60px;
|
18
|
+
display: flex;
|
19
|
+
justify-content: center;
|
20
|
+
align-items: center;
|
21
|
+
}
|
22
|
+
|
23
|
+
.nav-link {
|
24
|
+
padding: 0;
|
25
|
+
text-decoration: none;
|
26
|
+
color: $nav-text-color;
|
27
|
+
cursor: pointer;
|
28
|
+
.nav-item {
|
29
|
+
font-family: 'Lato', sans-serif;
|
30
|
+
padding-bottom: 10px;
|
31
|
+
padding-top: 10px;
|
32
|
+
position: relative;
|
33
|
+
.nav-heading {
|
34
|
+
color: $nav-text-color;
|
35
|
+
}
|
36
|
+
}
|
37
|
+
}
|
38
|
+
|
39
|
+
.nav-item.active {
|
40
|
+
background-color: $active-bg;
|
41
|
+
border-left: $nav-active-border;
|
42
|
+
.nav-heading {
|
43
|
+
color: $nav-text-color;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
.nav-item:hover{
|
47
|
+
background-color: #4b4b4b;
|
48
|
+
.nav-heading {
|
49
|
+
color: $nav-text-color;
|
50
|
+
}
|
51
|
+
}
|
52
|
+
.arrow-right {
|
53
|
+
width: 0;
|
54
|
+
height: 0;
|
55
|
+
border-top: 8px solid transparent;
|
56
|
+
border-bottom: 8px solid transparent;
|
57
|
+
border-left: 10px solid #1A1D1F;
|
58
|
+
position: absolute;
|
59
|
+
left: 10px;
|
60
|
+
top: 17px;
|
61
|
+
}
|
62
|
+
}
|
63
|
+
.main {
|
64
|
+
margin-left: 250px;
|
65
|
+
overflow-y: auto;
|
66
|
+
overflow-x: hidden;
|
67
|
+
background-color: $main-background;
|
68
|
+
display: flex;
|
69
|
+
flex-direction: column;
|
70
|
+
|
71
|
+
.main-container {
|
72
|
+
}
|
73
|
+
|
74
|
+
.nav-link, .nav-link:hover, .nav-link:visited {
|
75
|
+
color: #188EFB;
|
76
|
+
text-decoration: none;
|
77
|
+
cursor: pointer;
|
78
|
+
}
|
79
|
+
}
|
80
|
+
}
|
81
|
+
|
82
|
+
body {
|
83
|
+
width: 100%;
|
84
|
+
margin: 0px;
|
85
|
+
padding: 0px;
|
86
|
+
font-family: 'Lato', sans-serif;
|
87
|
+
}
|
88
|
+
|
89
|
+
.btn-default, .btn.btn-default {
|
90
|
+
background-color: $nav-btn-color;
|
91
|
+
padding: 12px 30px;
|
92
|
+
color: black;
|
93
|
+
font-size: 16px;
|
94
|
+
width: fit-content;
|
95
|
+
text-transform: none;
|
96
|
+
display: block;
|
97
|
+
text-align: center;
|
98
|
+
font-weight: bold;
|
99
|
+
border-radius: 0.5rem;
|
100
|
+
border: none;
|
101
|
+
cursor: pointer;
|
102
|
+
}
|
103
|
+
|
104
|
+
.circular-border {
|
105
|
+
border-radius: 50%;
|
106
|
+
}
|
107
|
+
|
108
|
+
.f12 {
|
109
|
+
font-size: 12px;
|
110
|
+
}
|
111
|
+
|
112
|
+
.f14 {
|
113
|
+
font-size: 14px;
|
114
|
+
}
|
115
|
+
|
116
|
+
|
117
|
+
.f16 {
|
118
|
+
font-size: 16px;
|
119
|
+
}
|
120
|
+
|
121
|
+
.f20 {
|
122
|
+
font-size: 20px;
|
123
|
+
}
|
124
|
+
.f24 {
|
125
|
+
font-size: 24px;
|
126
|
+
}
|
127
|
+
|
128
|
+
//Line Height
|
129
|
+
.lh-32{
|
130
|
+
line-height: 32px;
|
131
|
+
}
|
132
|
+
|
133
|
+
a:hover, a {
|
134
|
+
text-decoration: none !important;
|
135
|
+
}
|
136
|
+
|
137
|
+
#notice {
|
138
|
+
color: #36B37E;
|
139
|
+
font-weight: bold;
|
140
|
+
font-size: 14px;
|
141
|
+
padding-left: 10px;
|
142
|
+
}
|
143
|
+
|
144
|
+
.error_message_div {
|
145
|
+
color: #ff6700;
|
146
|
+
padding-top: 5px;
|
147
|
+
font-weight: bold;
|
148
|
+
}
|
149
|
+
.border-top{
|
150
|
+
border-top: 1px solid #ccc;
|
151
|
+
|
152
|
+
}
|
153
|
+
.border-bottom{
|
154
|
+
border-bottom: 1px solid #ccc;
|
155
|
+
}
|
156
|
+
|
157
|
+
h6 a{
|
158
|
+
color: white !important;
|
159
|
+
}
|
160
|
+
a:hover{
|
161
|
+
color: lightgrey !important;
|
162
|
+
}
|
163
|
+
|
164
|
+
.breadcrumb-nav {
|
165
|
+
a {
|
166
|
+
color: lightgrey !important;
|
167
|
+
}
|
168
|
+
}
|
169
|
+
|
170
|
+
.active{
|
171
|
+
a{
|
172
|
+
color: white !important;
|
173
|
+
}
|
174
|
+
}
|
175
|
+
.add-new-btn{
|
176
|
+
background-color: $nav-btn-color;
|
177
|
+
height: 50px;
|
178
|
+
position: fixed;
|
179
|
+
right: 30px;
|
180
|
+
bottom: 30px;
|
181
|
+
box-shadow: -1px 4px 12px -3px rgba(0,0,0,0.75);
|
182
|
+
|
183
|
+
z-index: 3;
|
184
|
+
width: 50px;
|
185
|
+
display: flex;
|
186
|
+
justify-content: center;
|
187
|
+
align-items: center;
|
188
|
+
border-radius: 50%;
|
189
|
+
}
|
190
|
+
|
191
|
+
//Show page Tabs
|
192
|
+
|
193
|
+
|
194
|
+
#nav-tab{
|
195
|
+
padding-top: 10px;
|
196
|
+
padding-left: 30px;
|
197
|
+
background-color: #ffffff;
|
198
|
+
a{
|
199
|
+
color: #000000;
|
200
|
+
}
|
201
|
+
a:hover{
|
202
|
+
background-color: white !important;
|
203
|
+
color: black !important;
|
204
|
+
}
|
205
|
+
.active{
|
206
|
+
background-color: #ffffff;
|
207
|
+
border: none;
|
208
|
+
border-bottom: $nav-active-border !important;
|
209
|
+
}
|
210
|
+
}
|
211
|
+
.hidden {
|
212
|
+
display: none !important;
|
213
|
+
}
|
214
|
+
.parts-pagination {
|
215
|
+
display: flex;
|
216
|
+
flex-direction: row;
|
217
|
+
justify-content: space-between;
|
218
|
+
width: 100%;
|
219
|
+
}
|
220
|
+
.footer-section {
|
221
|
+
padding: 0px 24px;
|
222
|
+
display: flex;
|
223
|
+
justify-content: space-between;
|
224
|
+
align-items: center;
|
225
|
+
background-color: white;
|
226
|
+
font-size: 14px;
|
227
|
+
color: black;
|
228
|
+
box-shadow: inset 0px 1px 0px rgba(148, 151, 155, 0.3);
|
229
|
+
.next-page:hover, .previous-page:hover {
|
230
|
+
background-color: $nav-btn-color;
|
231
|
+
}
|
232
|
+
.previous-page {
|
233
|
+
.icon-Arrow {
|
234
|
+
transform: rotate(180deg);
|
235
|
+
display: inline-block;
|
236
|
+
}
|
237
|
+
}
|
238
|
+
}
|
239
|
+
.pointer {
|
240
|
+
cursor: pointer;
|
241
|
+
}
|