@hashtagcms/admin-ui-kit 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +83 -0
  3. package/dist/admin-ui-kit.min.css +14 -0
  4. package/dist/admin-ui-kit.min.js +2 -0
  5. package/dist/admin-ui-kit.min.js.LICENSE.txt +175 -0
  6. package/package.json +53 -0
  7. package/packages/components/README.md +92 -0
  8. package/packages/components/package.json +28 -0
  9. package/packages/components/src/action-bar.vue +237 -0
  10. package/packages/components/src/category-platform.vue +97 -0
  11. package/packages/components/src/category-settings.vue +815 -0
  12. package/packages/components/src/cms-module-dropdown.vue +78 -0
  13. package/packages/components/src/downlods.vue +21 -0
  14. package/packages/components/src/file-uploader.vue +188 -0
  15. package/packages/components/src/frontend-module-creator.vue +599 -0
  16. package/packages/components/src/global-site-button.vue +94 -0
  17. package/packages/components/src/homepage.vue +1087 -0
  18. package/packages/components/src/html-slot.vue +23 -0
  19. package/packages/components/src/image-gallery.vue +144 -0
  20. package/packages/components/src/index.js +53 -0
  21. package/packages/components/src/info-boxes.vue +68 -0
  22. package/packages/components/src/info-popup.vue +121 -0
  23. package/packages/components/src/language-button.vue +80 -0
  24. package/packages/components/src/language-copier.vue +177 -0
  25. package/packages/components/src/left-nav.vue +159 -0
  26. package/packages/components/src/library/copy-paste.vue +186 -0
  27. package/packages/components/src/library/info-box.vue +102 -0
  28. package/packages/components/src/library/left-menu-show-hide.vue +47 -0
  29. package/packages/components/src/library/loader.vue +141 -0
  30. package/packages/components/src/library/modal-box.vue +136 -0
  31. package/packages/components/src/library/split-button.vue +127 -0
  32. package/packages/components/src/library/timer-button.vue +43 -0
  33. package/packages/components/src/library/toast-box.vue +53 -0
  34. package/packages/components/src/menu-sorter.vue +265 -0
  35. package/packages/components/src/module-creator.vue +650 -0
  36. package/packages/components/src/module-permission.vue +334 -0
  37. package/packages/components/src/pagination.vue +125 -0
  38. package/packages/components/src/platform-button.vue +118 -0
  39. package/packages/components/src/search-bar.vue +144 -0
  40. package/packages/components/src/site-button.vue +42 -0
  41. package/packages/components/src/site-cloner.vue +150 -0
  42. package/packages/components/src/sitewise-copier.vue +234 -0
  43. package/packages/components/src/sitewise-data.vue +347 -0
  44. package/packages/components/src/sorter.vue +239 -0
  45. package/packages/components/src/tabular-view.vue +824 -0
  46. package/packages/components/src/title-bar.vue +76 -0
  47. package/packages/components/src/top-nav.vue +96 -0
  48. package/packages/helpers/README.md +88 -0
  49. package/packages/helpers/package.json +20 -0
  50. package/packages/helpers/src/admin-config.js +9 -0
  51. package/packages/helpers/src/common.js +89 -0
  52. package/packages/helpers/src/dashboard.js +16 -0
  53. package/packages/helpers/src/editor.js +163 -0
  54. package/packages/helpers/src/error-message-handler.js +50 -0
  55. package/packages/helpers/src/event-bus.js +4 -0
  56. package/packages/helpers/src/form.js +4 -0
  57. package/packages/helpers/src/fx.js +106 -0
  58. package/packages/helpers/src/humanize.js +14 -0
  59. package/packages/helpers/src/map.js +3 -0
  60. package/packages/styles/README.md +37 -0
  61. package/packages/styles/package.json +15 -0
  62. package/packages/styles/src/_action-bar.scss +35 -0
  63. package/packages/styles/src/_admin.scss +22 -0
  64. package/packages/styles/src/_animate.scss +1579 -0
  65. package/packages/styles/src/_badges.scss +34 -0
  66. package/packages/styles/src/_category-list.scss +14 -0
  67. package/packages/styles/src/_common.scss +163 -0
  68. package/packages/styles/src/_info-box.scss +96 -0
  69. package/packages/styles/src/_left-nav.scss +59 -0
  70. package/packages/styles/src/_loader.scss +82 -0
  71. package/packages/styles/src/_menu-sorter.scss +39 -0
  72. package/packages/styles/src/_model-creator.scss +48 -0
  73. package/packages/styles/src/_module-permission.scss +25 -0
  74. package/packages/styles/src/_page-manager.scss +63 -0
  75. package/packages/styles/src/_popover-modal.scss +20 -0
  76. package/packages/styles/src/_table-grid.scss +39 -0
  77. package/packages/styles/src/_toast.scss +20 -0
  78. package/packages/styles/src/_variables.scss +37 -0
  79. package/packages/styles/src/app.scss +2 -0
@@ -0,0 +1,34 @@
1
+ // Custom Badge Colors (BS4 compatibility)
2
+ .badge-primary {
3
+ background-color: $badge-primary;
4
+ }
5
+
6
+ .badge-secondary {
7
+ background-color: $badge-secondary;
8
+ }
9
+
10
+ .badge-success {
11
+ background-color: $badge-success;
12
+ }
13
+
14
+ .badge-danger {
15
+ background-color: $badge-danger;
16
+ }
17
+
18
+ .badge-warning {
19
+ background-color: $badge-warning;
20
+ color: #212529;
21
+ }
22
+
23
+ .badge-info {
24
+ background-color: $badge-info;
25
+ }
26
+
27
+ .badge-light {
28
+ background-color: $badge-light;
29
+ color: #212529;
30
+ }
31
+
32
+ .badge-dark {
33
+ background-color: $badge-dark;
34
+ }
@@ -0,0 +1,14 @@
1
+ .category-items li {
2
+ .icon-btn {
3
+ display: none;
4
+ }
5
+
6
+ &:hover {
7
+ background-color: #f2f2f2;
8
+ .icon-btn {
9
+ display: inline-block;
10
+ padding-top: 0;
11
+ padding-bottom: 0;
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,163 @@
1
+ @use "sass:math";
2
+
3
+ a:hover {
4
+ color: $highlight;
5
+ }
6
+
7
+ nav {
8
+ font-size: 0.8rem;
9
+ select {
10
+ font-size: 0.8rem;
11
+ }
12
+ a img.cms-logo {
13
+ margin-bottom: 3px;
14
+ }
15
+ }
16
+ .hide {
17
+ display: none;
18
+ }
19
+ .pos-absolute {
20
+ position: absolute;
21
+ }
22
+
23
+ .form-group {
24
+ margin-bottom: 20px;
25
+ }
26
+
27
+ .select-sm {
28
+ width: auto;
29
+ }
30
+ .btn-from-submit {
31
+ min-width: 100px;
32
+ }
33
+ legend {
34
+ float: none;
35
+ width: auto;
36
+ padding: 0 10px;
37
+ }
38
+
39
+ .new {
40
+ font-size: 8px;
41
+ background-color: deeppink;
42
+ color: #fff;
43
+ padding: 2px;
44
+ position: relative;
45
+ top: -2px;
46
+ }
47
+
48
+ .v-space {
49
+ margin: 20px 0 0 0;
50
+ }
51
+
52
+ .counters {
53
+ position: relative;
54
+ top: 12px;
55
+ padding-left: 20px;
56
+ }
57
+
58
+ .admin-form {
59
+ padding: 10px 30px;
60
+ }
61
+
62
+ .center-align {
63
+ float: none;
64
+ text-align: center;
65
+ }
66
+
67
+ .border-bottom {
68
+ border-bottom: 1px solid #c3c3c3;
69
+ }
70
+
71
+ .hand {
72
+ cursor: pointer;
73
+ }
74
+
75
+ /****** Module Creator *********/
76
+
77
+ .select-big {
78
+ margin-bottom: 8px;
79
+ }
80
+
81
+ .pl20 {
82
+ padding-left: 20px;
83
+ }
84
+
85
+ .normal {
86
+ font-weight: normal !important;
87
+ }
88
+
89
+ .pb5 {
90
+ padding-bottom: 5px;
91
+ }
92
+
93
+ .ptb5 {
94
+ padding-top: 5px;
95
+ padding-bottom: 5px;
96
+ }
97
+
98
+ .p5 {
99
+ padding: 5px;
100
+ }
101
+
102
+ .plr5 {
103
+ padding-left: 5px;
104
+ padding-right: 5px;
105
+ }
106
+
107
+ .imgHeightFix img {
108
+ height: 100%;
109
+ }
110
+
111
+ .imgWidthFix img {
112
+ width: 100%;
113
+ }
114
+
115
+ .head_action {
116
+ padding-right: 20px !important;
117
+ }
118
+
119
+ .left-zero {
120
+ padding-left: 0 !important;
121
+ }
122
+
123
+ .is-invalid {
124
+ border-color: maroon;
125
+ }
126
+
127
+ .clearboth {
128
+ clear: both;
129
+ }
130
+
131
+ .panel .panel-footer {
132
+ min-height: 33px;
133
+ }
134
+
135
+ .strong {
136
+ font-weight: bold;
137
+ }
138
+
139
+ .form-control {
140
+ &.select {
141
+ width: inherit;
142
+ display: inline-block;
143
+ }
144
+ }
145
+
146
+ .fixed {
147
+ position: fixed;
148
+ }
149
+
150
+ .width-auto {
151
+ width: auto;
152
+ }
153
+ .inline {
154
+ display: inline;
155
+ }
156
+
157
+ .width30percent {
158
+ width: 30%;
159
+ }
160
+
161
+ .width40percent {
162
+ width: 40%;
163
+ }
@@ -0,0 +1,96 @@
1
+ .info-box {
2
+ min-width: 150px;
3
+
4
+ &:hover {
5
+ border: 1px solid #9d9d9d;
6
+ }
7
+
8
+ .info-box-icon {
9
+ display: block;
10
+ text-align: center;
11
+ font-size: 37px;
12
+ background: #fff;
13
+ padding: 20px;
14
+ }
15
+
16
+ .info-box-number {
17
+ display: block;
18
+ font-weight: bold;
19
+ font-size: 18px;
20
+ }
21
+
22
+ .info-box-text {
23
+ display: block;
24
+ text-align: center;
25
+ font-size: 14px;
26
+ white-space: nowrap;
27
+ overflow: hidden;
28
+ text-overflow: ellipsis;
29
+ text-transform: uppercase;
30
+ }
31
+ }
32
+
33
+ .color-1 {
34
+ background: deeppink !important;
35
+ color: white !important;
36
+ }
37
+
38
+ .color-2 {
39
+ background: deepskyblue !important;
40
+ color: white !important;
41
+ }
42
+
43
+ .color-3 {
44
+ background: darkgreen !important;
45
+ color: white !important;
46
+ }
47
+
48
+ .color-4 {
49
+ background: coral !important;
50
+ color: white !important;
51
+ }
52
+
53
+ .color-5 {
54
+ background: darkmagenta !important;
55
+ color: white !important;
56
+ }
57
+
58
+ .color-6 {
59
+ background: darkblue !important;
60
+ color: white !important;
61
+ }
62
+
63
+ .color-7 {
64
+ background: darkcyan !important;
65
+ color: white !important;
66
+ }
67
+
68
+ .color-8 {
69
+ background: darkolivegreen !important;
70
+ color: white !important;
71
+ }
72
+
73
+ .color-9 {
74
+ background: darkgoldenrod !important;
75
+ color: white !important;
76
+ }
77
+
78
+ .color-10 {
79
+ background: darkslateblue !important;
80
+ color: white !important;
81
+ }
82
+ .color-1,
83
+ .color-2,
84
+ .color-3,
85
+ .color-4,
86
+ .color-5,
87
+ .color-6,
88
+ .color-7,
89
+ .color-8,
90
+ .color-9,
91
+ .color-10 {
92
+ a,
93
+ a:visited {
94
+ color: white;
95
+ }
96
+ }
@@ -0,0 +1,59 @@
1
+ /***** Menu *********/
2
+ .t_left {
3
+ font-size: 0.8rem;
4
+ background: $left-background;
5
+ color: white;
6
+ padding: 0;
7
+ box-shadow:
8
+ 0 5px 15px 1px rgba(0, 0, 0, 0.2),
9
+ 0 0 200px 1px rgba(255, 255, 255, 0.2);
10
+
11
+ .fa-icons {
12
+ padding-right: 5px;
13
+ }
14
+ a {
15
+ color: white;
16
+ display: block;
17
+ text-decoration: none;
18
+ padding: 5px 10px;
19
+ }
20
+
21
+ a:hover {
22
+ background: $highlight;
23
+ }
24
+
25
+ .adjustMore {
26
+ font-size: 0.7rem;
27
+ padding: 8px 15px;
28
+ position: relative;
29
+ top: -5px;
30
+ right: -10px;
31
+ }
32
+
33
+ a.active {
34
+ background: $left-nav-a-active-bg;
35
+ color: $left-nav-a-active-color;
36
+ border-bottom: 0 solid #c3c3c3;
37
+ }
38
+
39
+ ul ul li a {
40
+ color: $left-nav-sub-a-active-color;
41
+ transition: all 0.15s;
42
+ padding-left: 25px;
43
+ &:hover {
44
+ background: $highlight;
45
+ }
46
+ &.active {
47
+ background: $left-nav-sub-a-active-bg;
48
+ }
49
+ }
50
+
51
+ ul ul {
52
+ display: none;
53
+
54
+ &.active {
55
+ display: block;
56
+ background: $left-background-sub;
57
+ }
58
+ }
59
+ }
@@ -0,0 +1,82 @@
1
+ @use "sass:math";
2
+ $spinnerColors: #84ebbd, #4977ec, #f6bb67, #333841;
3
+ $spinnerDegree: 175.6449737548828;
4
+
5
+ .loaderModal {
6
+ width: 100%;
7
+ height: 100%;
8
+ background: #000;
9
+ opacity: 0.2;
10
+ position: fixed;
11
+ top: 0;
12
+ left: 0;
13
+ z-index: 1999;
14
+ }
15
+
16
+ .loaderPanel {
17
+ border: 1px solid #c3c3c3;
18
+ display: inline-block;
19
+ padding: 5px;
20
+ position: fixed;
21
+ left: 50%;
22
+ top: 50%;
23
+ background: #fff;
24
+ z-index: 2000;
25
+
26
+ .loaderText {
27
+ display: inline-block;
28
+ position: relative;
29
+ top: -10px;
30
+ padding-left: 10px;
31
+ }
32
+
33
+ .spinner {
34
+ width: 30px;
35
+ height: 30px;
36
+ display: inline-block;
37
+ animation: contanim 2s linear infinite;
38
+
39
+ svg {
40
+ width: 100%;
41
+ height: 100%;
42
+
43
+ left: 0;
44
+ top: 0;
45
+ position: absolute;
46
+
47
+ transform: rotate(-90deg);
48
+
49
+ @for $i from 1 through 4 {
50
+ &:nth-child(#{$i}) circle {
51
+ stroke: nth($spinnerColors, $i);
52
+ stroke-dasharray: 1, 300;
53
+ stroke-dashoffset: 0;
54
+
55
+ animation: strokeanim 3s calc(0.2s * (#{$i})) ease infinite;
56
+ transform-origin: center center;
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+
63
+ @keyframes strokeanim {
64
+ 0% {
65
+ stroke-dasharray: 1, 300;
66
+ stroke-dashoffset: 0;
67
+ }
68
+ 50% {
69
+ stroke-dasharray: 120, 300;
70
+ stroke-dashoffset: math.div(-$spinnerDegree, 3);
71
+ }
72
+ 100% {
73
+ stroke-dasharray: 120, 300;
74
+ stroke-dashoffset: -$spinnerDegree;
75
+ }
76
+ }
77
+
78
+ @keyframes contanim {
79
+ 100% {
80
+ transform: rotate(360deg);
81
+ }
82
+ }
@@ -0,0 +1,39 @@
1
+ .sortable-list {
2
+ padding: 0;
3
+ margin: 0;
4
+
5
+ li {
6
+ list-style: none none;
7
+ border: 1px solid #c3c3c3;
8
+ padding: 5px;
9
+ margin: 3px 0;
10
+ border-radius: 3px;
11
+
12
+ .ellipsis {
13
+ width: 12px;
14
+ text-align: center;
15
+ padding: 3px 0;
16
+ }
17
+
18
+ &:hover {
19
+ background-color: #f9f9f9;
20
+ }
21
+
22
+ .child {
23
+ display: none;
24
+ background: #f2f2f2;
25
+ }
26
+ }
27
+ }
28
+ .accordion-control,
29
+ .accordion-body {
30
+ display: none;
31
+ }
32
+
33
+ .accordion-control {
34
+ &:checked {
35
+ ~ .accordion-body {
36
+ display: block !important;
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,48 @@
1
+ .fieldset {
2
+ margin-bottom: 20px;
3
+ border: 1px double #c3c3c3;
4
+ padding: 10px;
5
+ }
6
+
7
+ .legendTitle {
8
+ font-weight: bold;
9
+ border: none 0;
10
+ margin-bottom: 10px;
11
+ }
12
+
13
+ .fields,
14
+ .models {
15
+ background: #f7ecb5;
16
+ padding: 5px;
17
+ margin-right: 15px;
18
+ border: 1px solid #c3c3c3;
19
+ position: relative;
20
+ display: inline-block;
21
+ margin-bottom: 10px;
22
+ }
23
+
24
+ .models:hover,
25
+ .fields:hover {
26
+ color: #000;
27
+ }
28
+
29
+ .models .glyphicon,
30
+ .fields .fa {
31
+ float: right;
32
+ position: absolute;
33
+ top: -5px;
34
+ right: -5px;
35
+ background-color: #fff;
36
+ cursor: pointer;
37
+ }
38
+
39
+ .models_row {
40
+ margin-bottom: 10px;
41
+ }
42
+ .tables_panel {
43
+ max-height: 300px;
44
+ overflow: auto;
45
+ }
46
+ .models-box {
47
+ width: 19rem;
48
+ }
@@ -0,0 +1,25 @@
1
+ .list-permission {
2
+ li {
3
+ border-bottom: 1px solid #c3c3c3;
4
+
5
+ &:hover {
6
+ background-color: #f2f2f2;
7
+
8
+ .readonly {
9
+ display: block;
10
+ }
11
+ }
12
+
13
+ ul {
14
+ margin-bottom: 5px;
15
+
16
+ li {
17
+ border: 0px none;
18
+ }
19
+ }
20
+
21
+ .readonly {
22
+ display: none;
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,63 @@
1
+ .non-selectable {
2
+ -webkit-user-select: none;
3
+ -ms-user-select: none;
4
+ user-select: none;
5
+ }
6
+ .js_right_panel {
7
+ font-size: 0.8rem;
8
+ }
9
+ .hook-header {
10
+ color: #3c763d;
11
+ background-color: #dff0d8;
12
+ border-color: #d6e9c6;
13
+
14
+ a,
15
+ a:visited {
16
+ color: #3c763d;
17
+ }
18
+ }
19
+
20
+ .modules-list {
21
+ padding: 0;
22
+ margin: 0;
23
+ li {
24
+ list-style-type: none;
25
+ border: 1px dotted #c3c3c3;
26
+ padding: 5px;
27
+ margin: 3px 0;
28
+ border-radius: 3px;
29
+
30
+ .delete {
31
+ display: none;
32
+ }
33
+
34
+ a {
35
+ color: #666;
36
+ }
37
+
38
+ .fa {
39
+ margin-top: 3px;
40
+ }
41
+
42
+ &:hover {
43
+ background-color: #f2f2f2;
44
+
45
+ .delete {
46
+ display: inline-block;
47
+ }
48
+ }
49
+ }
50
+ }
51
+
52
+ .all-modules-right li {
53
+ &:hover {
54
+ .delete {
55
+ display: none;
56
+ }
57
+ }
58
+ }
59
+
60
+ .module-drop-eager {
61
+ background-color: lightyellow;
62
+ padding-bottom: 30px;
63
+ }
@@ -0,0 +1,20 @@
1
+ /** Popover **/
2
+ .popover {
3
+ .close {
4
+ background: #666;
5
+ border-radius: 19%;
6
+ padding: 5px;
7
+ font-size: 10px;
8
+ color: #fff;
9
+ position: absolute;
10
+ top: -7px;
11
+ }
12
+ }
13
+
14
+ /** Homepage **/
15
+
16
+ .modal {
17
+ .select-sm {
18
+ font-size: 0.8rem;
19
+ }
20
+ }
@@ -0,0 +1,39 @@
1
+ .table-grid {
2
+ font-size: 0.8rem;
3
+ a,
4
+ a:visited {
5
+ border: none;
6
+ text-decoration: none;
7
+ }
8
+
9
+ td {
10
+ border: 1px solid #c3c3c3;
11
+ padding: 0.5rem;
12
+ }
13
+
14
+ .header {
15
+ font-weight: bold;
16
+ }
17
+
18
+ th {
19
+ background-color: #f2f2f2 !important;
20
+ text-transform: uppercase;
21
+ border: 1px solid #c3c3c3;
22
+ }
23
+ .table-links,
24
+ .table-links:visited {
25
+ color: inherit;
26
+ }
27
+ }
28
+ .actions a {
29
+ color: #636b6f;
30
+ padding: 10px 3px;
31
+
32
+ &:hover {
33
+ color: maroon;
34
+ }
35
+
36
+ &.approved {
37
+ color: coral;
38
+ }
39
+ }
@@ -0,0 +1,20 @@
1
+ .toasterHolder {
2
+ width: auto;
3
+ min-width: 200px;
4
+ background: #333333;
5
+ padding: 10px;
6
+ text-align: center;
7
+ float: left;
8
+ color: #fff;
9
+ font-size: 11px;
10
+ letter-spacing: 1px;
11
+ -moz-border-radius: 5px;
12
+ border-radius: 5px;
13
+ z-index: 9999;
14
+ position: absolute;
15
+
16
+ .toasterContent {
17
+ text-align: center;
18
+ color: #fff;
19
+ }
20
+ }