codelation_ui 1.0.0

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 (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