codelation_ui 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (130) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +20 -0
  3. data/README.md +327 -0
  4. data/Rakefile +8 -0
  5. data/app/assets/javascripts/codelation_ui/_base_resources/app.js +91 -0
  6. data/app/assets/javascripts/codelation_ui/_base_resources/components/has_grid.js +24 -0
  7. data/app/assets/javascripts/codelation_ui/_base_resources/components/link.js +22 -0
  8. data/app/assets/javascripts/codelation_ui/_base_resources/progress_bar.js +5 -0
  9. data/app/assets/javascripts/codelation_ui/base.js +8 -0
  10. data/app/assets/javascripts/codelation_ui/extended/slider.js +654 -0
  11. data/app/assets/javascripts/codelation_ui/extended.js +1 -0
  12. data/app/assets/javascripts/codelation_ui/forms/components/input.js +497 -0
  13. data/app/assets/javascripts/codelation_ui/forms/index.js +2 -0
  14. data/app/assets/javascripts/codelation_ui/forms/interfaces/form.js +71 -0
  15. data/app/assets/javascripts/codelation_ui/forms/interfaces/form_validation.js +31 -0
  16. data/app/assets/javascripts/codelation_ui/forms.js +2 -0
  17. data/app/assets/javascripts/codelation_ui/std/index.js +2 -0
  18. data/app/assets/javascripts/codelation_ui/std/interfaces/content_formatters.js +27 -0
  19. data/app/assets/javascripts/codelation_ui/std/interfaces/content_validators.js +50 -0
  20. data/app/assets/javascripts/codelation_ui/std/interfaces/helpers.js +10 -0
  21. data/app/assets/javascripts/codelation_ui/std.js +1 -0
  22. data/app/assets/javascripts/codelation_ui/vue.js +12 -0
  23. data/app/assets/javascripts/codelation_ui/vue_pages.js +11 -0
  24. data/app/assets/javascripts/codelation_ui.js +6 -0
  25. data/app/assets/stylesheets/codelation_ui/_base_resources/_normalize.scss +427 -0
  26. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/_bourbon-deprecated-upcoming.scss +411 -0
  27. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/_bourbon.scss +87 -0
  28. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_border-color.scss +26 -0
  29. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_border-radius.scss +48 -0
  30. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_border-style.scss +25 -0
  31. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_border-width.scss +25 -0
  32. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_buttons.scss +64 -0
  33. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_clearfix.scss +25 -0
  34. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_ellipsis.scss +30 -0
  35. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_font-stacks.scss +31 -0
  36. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_hide-text.scss +27 -0
  37. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_margin.scss +26 -0
  38. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_padding.scss +26 -0
  39. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_position.scss +48 -0
  40. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_prefixer.scss +66 -0
  41. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_retina-image.scss +25 -0
  42. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_size.scss +51 -0
  43. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_text-inputs.scss +113 -0
  44. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_timing-functions.scss +34 -0
  45. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_triangle.scss +63 -0
  46. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/addons/_word-wrap.scss +29 -0
  47. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_animation.scss +43 -0
  48. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_appearance.scss +3 -0
  49. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_backface-visibility.scss +3 -0
  50. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_background-image.scss +42 -0
  51. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_background.scss +55 -0
  52. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_border-image.scss +59 -0
  53. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_calc.scss +4 -0
  54. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_columns.scss +47 -0
  55. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_filter.scss +4 -0
  56. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_flex-box.scss +287 -0
  57. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_font-face.scss +24 -0
  58. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_font-feature-settings.scss +4 -0
  59. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_hidpi-media-query.scss +10 -0
  60. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_hyphens.scss +4 -0
  61. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_image-rendering.scss +14 -0
  62. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_keyframes.scss +36 -0
  63. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_linear-gradient.scss +38 -0
  64. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_perspective.scss +8 -0
  65. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_placeholder.scss +8 -0
  66. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_radial-gradient.scss +39 -0
  67. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_selection.scss +42 -0
  68. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_text-decoration.scss +19 -0
  69. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_transform.scss +15 -0
  70. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_transition.scss +71 -0
  71. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/css3/_user-select.scss +3 -0
  72. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_assign-inputs.scss +11 -0
  73. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_contains-falsy.scss +20 -0
  74. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_contains.scss +26 -0
  75. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_is-length.scss +11 -0
  76. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_is-light.scss +21 -0
  77. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_is-number.scss +11 -0
  78. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_is-size.scss +13 -0
  79. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_modular-scale.scss +69 -0
  80. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_px-to-em.scss +13 -0
  81. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_px-to-rem.scss +15 -0
  82. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_shade.scss +24 -0
  83. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_strip-units.scss +17 -0
  84. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_tint.scss +24 -0
  85. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_transition-property-name.scss +22 -0
  86. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/functions/_unpack.scss +27 -0
  87. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_convert-units.scss +21 -0
  88. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_directional-values.scss +96 -0
  89. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_font-source-declaration.scss +43 -0
  90. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_gradient-positions-parser.scss +13 -0
  91. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_linear-angle-parser.scss +25 -0
  92. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_linear-gradient-parser.scss +41 -0
  93. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_linear-positions-parser.scss +61 -0
  94. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_linear-side-corner-parser.scss +31 -0
  95. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_radial-arg-parser.scss +69 -0
  96. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_radial-gradient-parser.scss +50 -0
  97. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_radial-positions-parser.scss +18 -0
  98. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_render-gradients.scss +26 -0
  99. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_shape-size-stripper.scss +10 -0
  100. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/helpers/_str-to-num.scss +50 -0
  101. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/settings/_asset-pipeline.scss +7 -0
  102. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/settings/_prefixer.scss +9 -0
  103. data/app/assets/stylesheets/codelation_ui/_base_resources/bourbon/settings/_px-to-em.scss +1 -0
  104. data/app/assets/stylesheets/codelation_ui/_base_resources/functions/color.scss +162 -0
  105. data/app/assets/stylesheets/codelation_ui/_base_resources/functions/text_color.scss +41 -0
  106. data/app/assets/stylesheets/codelation_ui/_base_resources/mixins/button.scss +47 -0
  107. data/app/assets/stylesheets/codelation_ui/_base_resources/mixins/center_children.scss +9 -0
  108. data/app/assets/stylesheets/codelation_ui/_base_resources/mixins/col_span.scss +16 -0
  109. data/app/assets/stylesheets/codelation_ui/_base_resources/mixins/has_cards.scss +43 -0
  110. data/app/assets/stylesheets/codelation_ui/_base_resources/mixins/has_columns.scss +66 -0
  111. data/app/assets/stylesheets/codelation_ui/_base_resources/mixins/has_grid.scss +80 -0
  112. data/app/assets/stylesheets/codelation_ui/_base_resources/mixins/outer_container.scss +10 -0
  113. data/app/assets/stylesheets/codelation_ui/base.scss +27 -0
  114. data/app/assets/stylesheets/codelation_ui/extended/slider.scss +222 -0
  115. data/app/assets/stylesheets/codelation_ui/extended.scss +1 -0
  116. data/app/assets/stylesheets/codelation_ui/forms/input.scss +72 -0
  117. data/app/assets/stylesheets/codelation_ui/forms.scss +1 -0
  118. data/app/assets/stylesheets/codelation_ui/std.scss +1 -0
  119. data/app/assets/stylesheets/codelation_ui.scss +4 -0
  120. data/lib/codelation_ui.rb +7 -0
  121. data/vendor/assets/javascripts/autonumeric/autoNumeric-1.9.39.js +1465 -0
  122. data/vendor/assets/javascripts/autonumeric/autonumeric_ujs.js +94 -0
  123. data/vendor/assets/javascripts/autonumeric.js +2 -0
  124. data/vendor/assets/javascripts/awesomplete.js +392 -0
  125. data/vendor/assets/javascripts/moment.js +4301 -0
  126. data/vendor/assets/javascripts/numeral.js +679 -0
  127. data/vendor/assets/javascripts/pikaday.js +1081 -0
  128. data/vendor/assets/javascripts/summernote.js +7300 -0
  129. data/vendor/assets/javascripts/vue.js +10237 -0
  130. metadata +242 -0
@@ -0,0 +1,47 @@
1
+ $accent-color: $blue !default;
2
+
3
+ @mixin button($background-color: color($grey, 100), $color: color($grey, 800), $active-background-color: $accent-color, $active-color: text-color($accent-color)) {
4
+ background-image: linear-gradient(to bottom, $background-color, darken($background-color, 8%));
5
+ border: 0;
6
+ border-radius: 2px;
7
+ box-shadow: rgba(0, 0, 0, 0.14902) 0 0 0 1px inset;
8
+ color: $color;
9
+ display: inline-block;
10
+ font-size: 11px;
11
+ height: 26px;
12
+ line-height: 25px;
13
+ margin-bottom: 4px;
14
+ outline: none;
15
+ padding: 0 12px;
16
+ text-align: center;
17
+ text-decoration: none;
18
+ vertical-align: middle;
19
+ white-space: nowrap;
20
+
21
+ i {
22
+ font-size: 13px;
23
+ line-height: 11px;
24
+ margin-right: 2px;
25
+ }
26
+
27
+ &:hover {
28
+ background-image: linear-gradient(to bottom, lighten($background-color, 5%), darken($background-color, 3.5%));
29
+ color: $color;
30
+ }
31
+
32
+ &:active {
33
+ background-image: linear-gradient(to bottom, lighten($active-background-color, 3%), darken($active-background-color, 5%));
34
+ color: $active-color;
35
+ }
36
+
37
+ &:disabled {
38
+ cursor: default;
39
+ opacity: 0.5;
40
+
41
+ &:hover,
42
+ &:active {
43
+ background-image: linear-gradient(to bottom, $background-color, darken($background-color, 8%));
44
+ color: $color;
45
+ }
46
+ }
47
+ }
@@ -0,0 +1,9 @@
1
+ // Centers child elements horizontally and vertically without needing
2
+ // to set the height and width of the child elements using flexbox.
3
+ @mixin center-children {
4
+ @include align-content(center);
5
+ @include align-items(center);
6
+ @include display(flex);
7
+ @include flex-direction(column);
8
+ @include justify-content(center);
9
+ }
@@ -0,0 +1,16 @@
1
+ // Used to create create columns in a row that span the width of multiple columns in another row.
2
+ // See the readme for more details on usage.
3
+ @mixin col-span($span: $columns of $total-columns, $gutter: 0) {
4
+ $columns: nth($span, 1);
5
+ $container-columns: nth($span, 3);
6
+
7
+ @if ($gutter != 0 and unit($gutter) != "%") {
8
+ @error "The col-span mixin can only be used if there is no gutter or the gutter's unit is %";
9
+ }
10
+
11
+ $single-column-width: (100% - ($gutter * ($container-columns - 1))) / $container-columns;
12
+ $spanned-width: $single-column-width * $columns;
13
+ $spanned-gutters-width: $gutter * ($columns - 1);
14
+
15
+ width: $spanned-width + $spanned-gutters-width;
16
+ }
@@ -0,0 +1,43 @@
1
+ // Sets up a element and its child elements with the flexbox properties needed
2
+ // to have the given number of columns with optional gutters or margins.
3
+ @mixin has-cards($columns, $margin: 0, $column-class: "auto", $mobile: "auto") {
4
+ @include align-content(flex-start);
5
+ @include align-items(stretch);
6
+ @include display(flex);
7
+ @include flex-direction(row);
8
+ @include flex-wrap(wrap);
9
+ @include justify-content(space-around);
10
+ column-count: $columns; // Used as a reference for JavaScript functions
11
+ padding: $margin 0 0 $margin;
12
+
13
+ $column-selector: "> *:not(script)";
14
+
15
+ @if $column-class != "auto" {
16
+ $column-selector: "." + $column-class;
17
+ }
18
+
19
+ #{$column-selector} {
20
+ @include flex(1 1 auto);
21
+ margin: 0 $margin $margin 0;
22
+ width: (1 / $columns) * 85%;
23
+
24
+ &:empty {
25
+ margin-bottom: 0;
26
+ margin-top: 0;
27
+ visibility: hidden;
28
+ }
29
+ }
30
+
31
+ @if $mobile == "auto" {
32
+ // Stack columns on mobile by default
33
+ @media (max-width: $mobile-breakpoint) {
34
+ #{$column-selector} {
35
+ width: 100%;
36
+
37
+ &:empty {
38
+ display: none;
39
+ }
40
+ }
41
+ }
42
+ }
43
+ }
@@ -0,0 +1,66 @@
1
+ // Sets up a element and its child elements with the flexbox properties needed
2
+ // to have the given number of columns with an optional gutter value.
3
+ @mixin has-columns($columns: 0, $gutter: 0, $column-class: "auto", $mobile: "auto", $grow: true) {
4
+ @include align-content(stretch);
5
+ @include align-items(stretch);
6
+ @include display(flex);
7
+ @include flex-direction(row);
8
+ @include flex-wrap(nowrap);
9
+ @include justify-content(flex-start);
10
+
11
+ $column-selector: "> *:not(script)";
12
+
13
+ @if $column-class != "auto" {
14
+ $column-selector: "." + $column-class;
15
+ }
16
+
17
+ #{$column-selector} {
18
+ @if $grow {
19
+ @include flex(1 1 auto);
20
+ }
21
+
22
+ // We only want to set the column width if more than 1 column was specified
23
+ // and we're looking to fill the container's width.
24
+ @if $grow and $columns > 1 {
25
+ @if $gutter == 0 {
26
+ // If there is no gutter, we don't need to do anything
27
+ // other than split up the columns evenly.
28
+ width: 100% / $columns;
29
+ } @else if unit($gutter) == "px" or unit($gutter) == "em" {
30
+ // If there is a fixed gutter size, we need to trick the columns into
31
+ // being close to the right width and stretching to fill in the rest.
32
+ width: 85% / $columns;
33
+ } @else if unit($gutter) == "%" {
34
+ // If the gutter size is a percentage of the width, we can use the percentage
35
+ // to calculate the width of the columns as a percentage as well.
36
+ width: (100% - ($gutter * ($columns - 1))) / $columns;
37
+ }
38
+ }
39
+
40
+ @if $gutter > 0 {
41
+ margin-right: $gutter;
42
+
43
+ // Remove the right margin for the last column in a row
44
+ &:last-child {
45
+ margin-right: 0;
46
+ }
47
+ }
48
+ }
49
+
50
+ @if $mobile == "auto" {
51
+ // Stack columns on mobile by default
52
+ @media (max-width: $mobile-breakpoint) {
53
+ @include flex-wrap(wrap);
54
+
55
+ #{$column-selector} {
56
+ margin-bottom: $gutter;
57
+ margin-right: 0;
58
+ width: 100%;
59
+
60
+ &:last-child {
61
+ margin-bottom: 0;
62
+ }
63
+ }
64
+ }
65
+ }
66
+ }
@@ -0,0 +1,80 @@
1
+ // Sets up a element and its child elements with the flexbox properties needed
2
+ // to have the given number of columns per row with multiple rows in the container
3
+ // and an optional gutter value that will be used between columns and rows.
4
+ @mixin has-grid($columns, $gutter: 0, $column-class: "auto", $mobile: "auto") {
5
+ @include align-content(stretch);
6
+ @include align-items(stretch);
7
+ @include display(flex);
8
+ @include flex-direction(row);
9
+ @include flex-wrap(wrap);
10
+ @include justify-content(space-around);
11
+ column-count: $columns; // Used as a reference for JavaScript functions
12
+
13
+ $column-selector: "> *:not(script)";
14
+
15
+ @if $column-class != "auto" {
16
+ $column-selector: "." + $column-class;
17
+ }
18
+
19
+ #{$column-selector} {
20
+ @include flex(1 1 auto);
21
+
22
+ @if $gutter == 0 {
23
+ // If there is no gutter, we don't need to do anything other
24
+ // than split up the columns evenly.
25
+ width: 100% / $columns;
26
+ } @else if unit($gutter) == "px" or unit($gutter) == "em" {
27
+ // If there is a fixed gutter size, we need to trick the columns into
28
+ // being close to the right width and stretching to fill in the rest.
29
+ width: 85% / $columns;
30
+ } @else if unit($gutter) == "%" {
31
+ // If the gutter size is a percentage of the width, we can use the percentage
32
+ // to calculate the width of the columns as a percentage as well.
33
+ width: (100% - ($gutter * ($columns - 1))) / $columns;
34
+ }
35
+
36
+ // Remove the right margin for the last column in a row
37
+ // and the top margin for each column in the first row
38
+ @if $gutter > 0 {
39
+ margin-right: $gutter;
40
+ margin-top: $gutter;
41
+
42
+ @for $i from 1 through $columns {
43
+ &:nth-child(#{$i}) {
44
+ margin-top: 0;
45
+ }
46
+ }
47
+
48
+ &:nth-child(#{$columns}n) {
49
+ margin-right: 0;
50
+ }
51
+ }
52
+
53
+ // The JavaScript component will add empty spans to keep a uniform column width
54
+ &:empty {
55
+ margin-bottom: 0;
56
+ margin-top: 0;
57
+ visibility: hidden;
58
+ }
59
+ }
60
+
61
+ @if $mobile == "auto" {
62
+ // Stack columns on mobile by default
63
+ @media (max-width: $mobile-breakpoint) {
64
+ #{$column-selector} {
65
+ margin-bottom: $gutter;
66
+ margin-right: 0;
67
+ margin-top: 0;
68
+ width: 100%;
69
+
70
+ &:last-of-type {
71
+ margin-bottom: 0;
72
+ }
73
+
74
+ &:empty {
75
+ display: none;
76
+ }
77
+ }
78
+ }
79
+ }
80
+ }
@@ -0,0 +1,10 @@
1
+ // Sets the max width of a container and centers it by setting margin-left and
2
+ // margin-right to auto. The max width can be overridden by defining $max-width.
3
+ // A left and right padding of 12px is added by default.
4
+ @mixin outer-container($padding: 12px) {
5
+ margin-left: auto;
6
+ margin-right: auto;
7
+ max-width: $max-width;
8
+ padding-left: $padding;
9
+ padding-right: $padding;
10
+ }
@@ -0,0 +1,27 @@
1
+ // A collection of Sass functions and mixins used by Codelation
2
+ // https://codelation.com
3
+
4
+ // Used to set the max-width with the outer-container mixin
5
+ $max-width: 1024px !default;
6
+
7
+ // Used for has-cards, has-columns, and has-grid mixins. When the
8
+ // viewport reaches the mobile-breakpoint, the columns will be stacked.
9
+ $mobile-breakpoint: 767px !default;
10
+
11
+ @import "_base_resources/bourbon/bourbon";
12
+ @import "_base_resources/functions/**/*";
13
+ @import "_base_resources/mixins/**/*";
14
+ @import "_base_resources/normalize";
15
+
16
+ // Border Box by default for all elements
17
+ html { // http://bit.ly/1qk2tVR
18
+ box-sizing: border-box;
19
+ }
20
+
21
+ * {
22
+ &,
23
+ &::after,
24
+ &::before {
25
+ box-sizing: inherit;
26
+ }
27
+ }
@@ -0,0 +1,222 @@
1
+ $vue-slider-track-color: #0366d6 !default;
2
+ $vue-slider-tool-tip-bg-color: #0366d6 !default;
3
+ $vue-slider-tool-tip-text-color: #ffffff !default;
4
+
5
+ .vue-slider-wrap {
6
+ position: relative;
7
+ box-sizing: border-box;
8
+ -webkit-user-select: none;
9
+ -moz-user-select: none;
10
+ -ms-user-select: none;
11
+ user-select: none;
12
+ }
13
+ .vue-slider-wrap.vue-slider-disabled {
14
+ opacity: .5;
15
+ cursor: not-allowed;
16
+ }
17
+ .vue-slider-wrap.vue-slider-has-label {
18
+ margin-bottom: 15px;
19
+ }
20
+ .vue-slider-wrap.vue-slider-disabled .vue-slider-dot {
21
+ cursor: not-allowed;
22
+ }
23
+ .vue-slider-wrap .vue-slider {
24
+ position: relative;
25
+ display: block;
26
+ border-radius: 15px;
27
+ background-color: #ccc;
28
+ }
29
+ .vue-slider-wrap .vue-slider::after {
30
+ content: '';
31
+ position: absolute;
32
+ left: 0;
33
+ top: 0;
34
+ width: 100%;
35
+ height: 100%;
36
+ z-index: 2;
37
+ }
38
+ .vue-slider-process {
39
+ position: absolute;
40
+ border-radius: 15px;
41
+ background-color: $vue-slider-track-color;
42
+ transition: all 0s;
43
+ z-index: 1;
44
+ }
45
+ .vue-slider-horizontal .vue-slider-process {
46
+ width: 0;
47
+ height: 100%;
48
+ top: 0;
49
+ left: 0;
50
+ will-change: width;
51
+ }
52
+ .vue-slider-vertical .vue-slider-process {
53
+ width: 100%;
54
+ height: 0;
55
+ bottom: 0;
56
+ left: 0;
57
+ will-change: height;
58
+ }
59
+ .vue-slider-horizontal-reverse .vue-slider-process {
60
+ width: 0;
61
+ height: 100%;
62
+ top: 0;
63
+ right: 0;
64
+ }
65
+ .vue-slider-vertical-reverse .vue-slider-process {
66
+ width: 100%;
67
+ height: 0;
68
+ top: 0;
69
+ left: 0;
70
+ }
71
+ .vue-slider-dot {
72
+ position: absolute;
73
+ border-radius: 50%;
74
+ background-color: #fff;
75
+ box-shadow: 0.5px 0.5px 2px 1px rgba(0, 0, 0, 0.32);
76
+ transition: all 0s;
77
+ will-change: transform;
78
+ cursor: pointer;
79
+ z-index: 3;
80
+ }
81
+ .vue-slider-horizontal .vue-slider-dot {
82
+ left: 0;
83
+ }
84
+ .vue-slider-vertical .vue-slider-dot {
85
+ bottom: 0;
86
+ }
87
+ .vue-slider-horizontal-reverse .vue-slider-dot {
88
+ right: 0;
89
+ }
90
+ .vue-slider-vertical-reverse .vue-slider-dot {
91
+ top: 0;
92
+ }
93
+ .vue-slider-tooltip {
94
+ display: none;
95
+ font-size: 14px;
96
+ white-space: nowrap;
97
+ position: absolute;
98
+ padding: 2px 5px;
99
+ min-width: 20px;
100
+ text-align: center;
101
+ color: $vue-slider-tool-tip-text-color;
102
+ border-radius: 5px;
103
+ border: 1px solid $vue-slider-tool-tip-bg-color;
104
+ background-color: $vue-slider-tool-tip-bg-color;
105
+ z-index: 9;
106
+ }
107
+ .vue-slider-tooltip.vue-slider-tooltip-top {
108
+ top: -9px;
109
+ left: 50%;
110
+ transform: translate(-50%, -100%);
111
+ }
112
+ .vue-slider-tooltip.vue-slider-tooltip-bottom {
113
+ bottom: -9px;
114
+ left: 50%;
115
+ transform: translate(-50%, 100%);
116
+ }
117
+ .vue-slider-tooltip.vue-slider-tooltip-left {
118
+ top: 50%;
119
+ left: -9px;
120
+ transform: translate(-100%, -50%);
121
+ }
122
+ .vue-slider-tooltip.vue-slider-tooltip-right {
123
+ top: 50%;
124
+ right: -9px;
125
+ transform: translate(100%, -50%);
126
+ }
127
+ .vue-slider-tooltip.vue-slider-tooltip-top::before {
128
+ content: '';
129
+ position: absolute;
130
+ bottom: -10px;
131
+ left: 50%;
132
+ width: 0;
133
+ height: 0;
134
+ border: 5px solid transparent;
135
+ border: 6px solid transparent\0;
136
+ border-top-color: inherit;
137
+ transform: translate(-50%, 0);
138
+ }
139
+ .vue-slider-tooltip.vue-slider-tooltip-bottom::before {
140
+ content: '';
141
+ position: absolute;
142
+ top: -10px;
143
+ left: 50%;
144
+ width: 0;
145
+ height: 0;
146
+ border: 5px solid transparent;
147
+ border: 6px solid transparent\0;
148
+ border-bottom-color: inherit;
149
+ transform: translate(-50%, 0);
150
+ }
151
+ .vue-slider-tooltip.vue-slider-tooltip-left::before {
152
+ content: '';
153
+ position: absolute;
154
+ top: 50%;
155
+ right: -10px;
156
+ width: 0;
157
+ height: 0;
158
+ border: 5px solid transparent;
159
+ border: 6px solid transparent\0;
160
+ border-left-color: inherit;
161
+ transform: translate(0, -50%);
162
+ }
163
+ .vue-slider-tooltip.vue-slider-tooltip-right::before {
164
+ content: '';
165
+ position: absolute;
166
+ top: 50%;
167
+ left: -10px;
168
+ width: 0;
169
+ height: 0;
170
+ border: 5px solid transparent;
171
+ border: 6px solid transparent\0;
172
+ border-right-color: inherit;
173
+ transform: translate(0, -50%);
174
+ }
175
+ .vue-slider-dot.vue-slider-hover:hover .vue-slider-tooltip {
176
+ display: block;
177
+ }
178
+ .vue-slider-dot.vue-slider-always .vue-slider-tooltip {
179
+ display: block!important;
180
+ }
181
+ .vue-slider-piecewise {
182
+ position: absolute;
183
+ width: 100%;
184
+ padding: 0;
185
+ margin: 0;
186
+ left: 0;
187
+ top: 0;
188
+ height: 100%;
189
+ list-style: none;
190
+ }
191
+ .vue-slider-piecewise li {
192
+ position: absolute;
193
+ width: 8px;
194
+ height: 8px;
195
+ }
196
+ .vue-slider-piecewise .vue-slider-piecewise-dot {
197
+ position: absolute;
198
+ left: 50%;
199
+ top: 50%;
200
+ width: 100%;
201
+ height: 100%;
202
+ display: inline-block;
203
+ background-color: rgba(0, 0, 0, 0.16);
204
+ border-radius: 50%;
205
+ transform: translate(-50%, -50%);
206
+ z-index: 2;
207
+ transition: all .3s;
208
+ }
209
+ .vue-slider-piecewise li:first-child .vue-slider-piecewise-dot, .vue-slider-piecewise li:last-child .vue-slider-piecewise-dot {
210
+ visibility: hidden;
211
+ }
212
+ .vue-slider-piecewise .vue-slider-piecewise-label {
213
+ position: absolute;
214
+ display: inline-block;
215
+ top: 15px;
216
+ left: 50%;
217
+ white-space: nowrap;
218
+ font-size: 12px;
219
+ color: #333;
220
+ transform: translateX(-50%);
221
+ visibility: visible;
222
+ }
@@ -0,0 +1 @@
1
+ @import "./extended/**/*";
@@ -0,0 +1,72 @@
1
+ .vue-input {
2
+ display: inline-block;
3
+ position: relative;
4
+
5
+ .vue-input-icon {
6
+ position: absolute;
7
+ line-height: 2em;
8
+ font-size: 1.3em;
9
+ margin-left: 5px;
10
+ color: color($grey, 400);
11
+
12
+ &.fa-calendar:hover {
13
+ cursor: pointer;
14
+ color: color($grey, 500);
15
+ }
16
+
17
+ & ~ input {
18
+ padding-left: 25px;
19
+ }
20
+ }
21
+
22
+ .vue-input-message-container {
23
+ background-color: rgba($black, 0.6);
24
+ border-radius: 2px;
25
+ bottom: 100%;
26
+ color: $white;
27
+ font-size: 13px;
28
+ font-weight: normal;
29
+ line-height: 14px;
30
+ margin: 15px 10px 30px 0;
31
+ padding: 8px;
32
+ position: absolute;
33
+ right: -30px;
34
+ width: 250px;
35
+ z-index: 1;
36
+
37
+ @include display(flex);
38
+ @include flex-flow(row nowrap);
39
+ @include align-items(center);
40
+
41
+ i {
42
+ display: inline-block;
43
+ padding-right: 6px;
44
+ }
45
+
46
+ div {
47
+ display: inline-block;
48
+ }
49
+
50
+ h5 {
51
+ margin: 0;
52
+ font-size: 13px;
53
+ font-weight: normal;
54
+ }
55
+
56
+ p {
57
+ margin: 0;
58
+ font-size: 10px;
59
+ font-weight: normal;
60
+ }
61
+
62
+ &::after {
63
+ border-left: 10px solid transparent;
64
+ border-right: 10px solid transparent;
65
+ border-top: 10px solid rgba($black, 0.6);
66
+ content: "";
67
+ right: 60px;
68
+ position: absolute;
69
+ bottom: -10px;
70
+ }
71
+ }
72
+ }
@@ -0,0 +1 @@
1
+ @import "./forms/**/*";
@@ -0,0 +1 @@
1
+ //@import "std/**/*";
@@ -0,0 +1,4 @@
1
+ @import "codelation_ui/base";
2
+ @import "codelation_ui/std";
3
+ @import "codelation_ui/forms";
4
+ @import "codelation_ui/extended";
@@ -0,0 +1,7 @@
1
+ require "rails/engine"
2
+
3
+ module CodelationUi
4
+ class Engine < ::Rails::Engine
5
+ # Including an Engine tells Rails that this gem contains assets
6
+ end
7
+ end