blaze-css-rails 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (109) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +914 -0
  3. data/app/assets/stylesheets/animations.alerts.scss +73 -0
  4. data/app/assets/stylesheets/animations.bubbles.scss +31 -0
  5. data/app/assets/stylesheets/animations.calendars.scss +31 -0
  6. data/app/assets/stylesheets/animations.drawers.scss +13 -0
  7. data/app/assets/stylesheets/animations.hints.scss +5 -0
  8. data/app/assets/stylesheets/animations.menus.scss +31 -0
  9. data/app/assets/stylesheets/animations.modals.scss +31 -0
  10. data/app/assets/stylesheets/animations.navs.scss +19 -0
  11. data/app/assets/stylesheets/animations.overlays.scss +15 -0
  12. data/app/assets/stylesheets/animations.ranges.scss +13 -0
  13. data/app/assets/stylesheets/animations.tabs.scss +19 -0
  14. data/app/assets/stylesheets/animations.toasts.scss +33 -0
  15. data/app/assets/stylesheets/animations.toggles.scss +31 -0
  16. data/app/assets/stylesheets/animations.trees.scss +47 -0
  17. data/app/assets/stylesheets/blaze.animations.scss +14 -0
  18. data/app/assets/stylesheets/blaze.scss +35 -0
  19. data/app/assets/stylesheets/components.addresses.scss +9 -0
  20. data/app/assets/stylesheets/components.alerts.scss +21 -0
  21. data/app/assets/stylesheets/components.badges.scss +25 -0
  22. data/app/assets/stylesheets/components.bubbles.scss +22 -0
  23. data/app/assets/stylesheets/components.buttons.scss +80 -0
  24. data/app/assets/stylesheets/components.calendars.scss +50 -0
  25. data/app/assets/stylesheets/components.cards.scss +92 -0
  26. data/app/assets/stylesheets/components.drawers.scss +81 -0
  27. data/app/assets/stylesheets/components.headings.scss +33 -0
  28. data/app/assets/stylesheets/components.hints.scss +23 -0
  29. data/app/assets/stylesheets/components.inputs.scss +283 -0
  30. data/app/assets/stylesheets/components.links.scss +10 -0
  31. data/app/assets/stylesheets/components.lists.scss +57 -0
  32. data/app/assets/stylesheets/components.menus.scss +51 -0
  33. data/app/assets/stylesheets/components.modals.scss +53 -0
  34. data/app/assets/stylesheets/components.navs.scss +104 -0
  35. data/app/assets/stylesheets/components.overlays.scss +17 -0
  36. data/app/assets/stylesheets/components.pagination.scss +33 -0
  37. data/app/assets/stylesheets/components.ranges.scss +86 -0
  38. data/app/assets/stylesheets/components.tables.scss +53 -0
  39. data/app/assets/stylesheets/components.tabs.scss +45 -0
  40. data/app/assets/stylesheets/components.tags.scss +25 -0
  41. data/app/assets/stylesheets/components.toasts.scss +41 -0
  42. data/app/assets/stylesheets/components.toggles.scss +49 -0
  43. data/app/assets/stylesheets/components.tooltips.scss +21 -0
  44. data/app/assets/stylesheets/components.trees.scss +21 -0
  45. data/app/assets/stylesheets/components.typography.scss +73 -0
  46. data/app/assets/stylesheets/generic.global.scss +3 -0
  47. data/app/assets/stylesheets/mixins/_animations.alerts.scss +54 -0
  48. data/app/assets/stylesheets/mixins/_animations.bubbles.scss +54 -0
  49. data/app/assets/stylesheets/mixins/_animations.calendars.scss +46 -0
  50. data/app/assets/stylesheets/mixins/_animations.drawers.scss +15 -0
  51. data/app/assets/stylesheets/mixins/_animations.hints.scss +5 -0
  52. data/app/assets/stylesheets/mixins/_animations.menus.scss +46 -0
  53. data/app/assets/stylesheets/mixins/_animations.modals.scss +54 -0
  54. data/app/assets/stylesheets/mixins/_animations.navs.scss +15 -0
  55. data/app/assets/stylesheets/mixins/_animations.overlays.scss +28 -0
  56. data/app/assets/stylesheets/mixins/_animations.ranges.scss +43 -0
  57. data/app/assets/stylesheets/mixins/_animations.tabs.scss +15 -0
  58. data/app/assets/stylesheets/mixins/_animations.toasts.scss +45 -0
  59. data/app/assets/stylesheets/mixins/_animations.toggles.scss +29 -0
  60. data/app/assets/stylesheets/mixins/_animations.trees.scss +42 -0
  61. data/app/assets/stylesheets/mixins/_components.addresses.scss +12 -0
  62. data/app/assets/stylesheets/mixins/_components.alerts.scss +30 -0
  63. data/app/assets/stylesheets/mixins/_components.badges.scss +33 -0
  64. data/app/assets/stylesheets/mixins/_components.bubbles.scss +59 -0
  65. data/app/assets/stylesheets/mixins/_components.buttons.scss +197 -0
  66. data/app/assets/stylesheets/mixins/_components.calendars.scss +81 -0
  67. data/app/assets/stylesheets/mixins/_components.cards.scss +122 -0
  68. data/app/assets/stylesheets/mixins/_components.drawers.scss +116 -0
  69. data/app/assets/stylesheets/mixins/_components.headings.scss +39 -0
  70. data/app/assets/stylesheets/mixins/_components.hints.scss +25 -0
  71. data/app/assets/stylesheets/mixins/_components.inputs.scss +283 -0
  72. data/app/assets/stylesheets/mixins/_components.links.scss +44 -0
  73. data/app/assets/stylesheets/mixins/_components.lists.scss +53 -0
  74. data/app/assets/stylesheets/mixins/_components.menus.scss +63 -0
  75. data/app/assets/stylesheets/mixins/_components.modals.scss +63 -0
  76. data/app/assets/stylesheets/mixins/_components.navs.scss +165 -0
  77. data/app/assets/stylesheets/mixins/_components.overlays.scss +30 -0
  78. data/app/assets/stylesheets/mixins/_components.pagination.scss +45 -0
  79. data/app/assets/stylesheets/mixins/_components.ranges.scss +90 -0
  80. data/app/assets/stylesheets/mixins/_components.tables.scss +85 -0
  81. data/app/assets/stylesheets/mixins/_components.tabs.scss +53 -0
  82. data/app/assets/stylesheets/mixins/_components.tags.scss +41 -0
  83. data/app/assets/stylesheets/mixins/_components.toasts.scss +62 -0
  84. data/app/assets/stylesheets/mixins/_components.toggles.scss +75 -0
  85. data/app/assets/stylesheets/mixins/_components.tooltips.scss +89 -0
  86. data/app/assets/stylesheets/mixins/_components.trees.scss +39 -0
  87. data/app/assets/stylesheets/mixins/_components.typography.scss +101 -0
  88. data/app/assets/stylesheets/mixins/_generic.global.scss +15 -0
  89. data/app/assets/stylesheets/mixins/_objects.containers.scss +13 -0
  90. data/app/assets/stylesheets/mixins/_objects.grid.scss +104 -0
  91. data/app/assets/stylesheets/mixins/_objects.images.scss +5 -0
  92. data/app/assets/stylesheets/mixins/_objects.panels.scss +23 -0
  93. data/app/assets/stylesheets/mixins/_settings.animations.scss +5 -0
  94. data/app/assets/stylesheets/mixins/_settings.global.scss +876 -0
  95. data/app/assets/stylesheets/mixins/_tools.mediaqueries.scss +73 -0
  96. data/app/assets/stylesheets/mixins/_utilities.alignment.scss +24 -0
  97. data/app/assets/stylesheets/mixins/_utilities.boxing.scss +125 -0
  98. data/app/assets/stylesheets/objects.containers.scss +6 -0
  99. data/app/assets/stylesheets/objects.grid.responsive.scss +124 -0
  100. data/app/assets/stylesheets/objects.grid.scss +62 -0
  101. data/app/assets/stylesheets/objects.images.scss +5 -0
  102. data/app/assets/stylesheets/objects.panels.scss +17 -0
  103. data/app/assets/stylesheets/themes/blaze.example.scss +7 -0
  104. data/app/assets/stylesheets/utilities.alignment.scss +22 -0
  105. data/app/assets/stylesheets/utilities.boxing.scss +101 -0
  106. data/lib/blaze-css-rails.rb +2 -0
  107. data/lib/blaze-css-rails/engine.rb +6 -0
  108. data/lib/blaze-css-rails/version.rb +6 -0
  109. metadata +201 -0
@@ -0,0 +1,90 @@
1
+ @import "settings.global";
2
+ @import "utilities.boxing";
3
+
4
+ @mixin range {
5
+ padding: $range-padding;
6
+ outline: 0;
7
+ -webkit-appearance: none;
8
+ width: $range-width
9
+ }
10
+
11
+ @mixin range__track {
12
+ width: $range-width;
13
+ height: $range-height;
14
+ border-radius: $range-border-radius;
15
+ border: $range-border;
16
+ box-shadow: $range-box-shadow;
17
+ cursor: pointer;
18
+ }
19
+
20
+ @mixin range__track--ms {
21
+ background-color: transparent;
22
+ border-color: transparent;
23
+ color: transparent;
24
+ }
25
+
26
+ @mixin range__fill--ms {
27
+ background-color: $range-background-color;
28
+ border: $range-border;
29
+ border-radius: $range-border-radius;
30
+ box-shadow: $range-box-shadow;
31
+ }
32
+
33
+ @mixin range__thumb {
34
+ height: $range-thumb-height;
35
+ width: $range-thumb-width;
36
+ margin: $range-thumb-margin;
37
+ border: $range-thumb-border;
38
+ background-color: $range-thumb-background-color;
39
+ border-radius: $range-thumb-border-radius;
40
+ box-shadow: $range-thumb-box-shadow;
41
+ cursor: pointer;
42
+ }
43
+
44
+ @mixin range__thumb--focus {
45
+ border-color: $range-thumb-focus-border-color;
46
+ box-shadow: $range-thumb-focus-box-shadow;
47
+ }
48
+
49
+ @mixin range__thumb--webkit {
50
+ -webkit-appearance: none;
51
+ }
52
+
53
+ @mixin range__thumb--active {
54
+ transform: scale(1.4);
55
+ }
56
+
57
+ @mixin range--disabled {
58
+ background-color: $range-disabled-background-color;
59
+ cursor: not-allowed;
60
+ }
61
+
62
+ @mixin range--color($track-color: $range-background-color) {
63
+ &:not(:disabled) {
64
+ &::-webkit-slider-runnable-track {
65
+ background-color: $track-color;
66
+ }
67
+ &::-moz-range-track {
68
+ background-color: $track-color;
69
+ }
70
+ &::-ms-track {
71
+ background-color: $track-color;
72
+ }
73
+ }
74
+ }
75
+
76
+ @mixin range--primary {
77
+ @include range--color($range-primary-background-color);
78
+ }
79
+
80
+ @mixin range--secondary {
81
+ @include range--color($range-secondary-background-color);
82
+ }
83
+
84
+ @mixin range--success {
85
+ @include range--color($range-success-background-color);
86
+ }
87
+
88
+ @mixin range--error {
89
+ @include range--color($range-error-background-color);
90
+ }
@@ -0,0 +1,85 @@
1
+ @import "settings.global";
2
+ @import "components.headings";
3
+ @import "objects.grid";
4
+
5
+ @mixin table {
6
+ @include grid;
7
+ @include grid--wrap;
8
+ width: $table-width;
9
+ margin: $table-margin;
10
+ padding: $table-padding;
11
+ border: $table-border;
12
+ border-collapse: collapse;
13
+ border-spacing: 0;
14
+ }
15
+
16
+ @mixin table__caption {
17
+ @include grid;
18
+ @include grid__cell--full;
19
+ padding: $table-caption-padding;
20
+ color: $table-caption-color;
21
+ max-width: $table-caption-max-width;
22
+ font-size: $table-caption-font-size;
23
+ text-align: $table-caption-text-align;
24
+ }
25
+
26
+ @mixin table__row {
27
+ display: flex;
28
+ flex-wrap: wrap;
29
+ flex: 0 0 100%;
30
+ max-width: 100%;
31
+ }
32
+
33
+ @mixin table__row--striped {
34
+ background-color: $table-row-striped-background-color;
35
+ color: $table-row-striped-color;
36
+ }
37
+
38
+ @mixin table__cell {
39
+ display: flex;
40
+ flex: 1;
41
+ overflow: auto;
42
+ padding: $table-cell-padding;
43
+ text-align: $table-cell-text-align;
44
+ }
45
+
46
+ @mixin table__heading {
47
+ @include heading--xsmall;
48
+ display: flex;
49
+ flex: 1;
50
+ font-weight: $table-heading-font-weight;
51
+ background-color: $table-heading-background-color;
52
+ color: $table-heading-color;
53
+ border-bottom: $table-heading-border;
54
+ }
55
+
56
+ @mixin table__heading--striped {
57
+ background-color: $table-heading-striped-background-color;
58
+ color: $table-heading-striped-color;
59
+ }
60
+
61
+ @mixin table-clickable {
62
+ background-color: $table-row-clickable-background-color;
63
+ color: $table-row-clickable-color;
64
+ cursor: pointer;
65
+ }
66
+
67
+ @mixin table-inactive {
68
+ background-color: $table-row-inactive-background-color;
69
+ color: $table-row-inactive-color;
70
+ cursor: default;
71
+ }
72
+
73
+ @mixin table-clickable--inactive {
74
+ background-color: $table-row-inactive-background-color;
75
+ color: $table-row-inactive-color;
76
+ cursor: not-allowed;
77
+ }
78
+
79
+ @mixin table--condensed {
80
+ font-size: $table-condensed-font-size;
81
+ }
82
+
83
+ @mixin table__cell--condensed {
84
+ padding: $table-condensed-cell-padding;
85
+ }
@@ -0,0 +1,53 @@
1
+ @import "settings.global";
2
+
3
+ @mixin tabs {
4
+ display: block;
5
+ }
6
+
7
+ @mixin tabs__headings {
8
+ display: flex;
9
+ text-align: $tab-headings-text-align;
10
+ cursor: pointer;
11
+ }
12
+
13
+ @mixin tab-heading {
14
+ flex: 1;
15
+ padding: $tab-heading-padding;
16
+ margin: $tab-heading-margin;
17
+ box-shadow: 0 -.2em 0 0 $tab-heading-box-shadow-color inset;
18
+ }
19
+
20
+ @mixin tab-heading--color($active-color: $tab-heading-active-box-shadow-color) {
21
+ box-shadow: 0 -.2em 0 0 $active-color inset;
22
+ }
23
+
24
+ @mixin tab-heading--primary {
25
+ @include tab-heading--color($tab-heading-primary-active-box-shadow-color);
26
+ }
27
+
28
+ @mixin tab-heading--secondary {
29
+ @include tab-heading--color($tab-heading-secondary-active-box-shadow-color);
30
+ }
31
+
32
+ @mixin tab-heading--success {
33
+ @include tab-heading--color($tab-heading-success-active-box-shadow-color);
34
+ }
35
+
36
+ @mixin tab-heading--error {
37
+ @include tab-heading--color($tab-heading-error-active-box-shadow-color);
38
+ }
39
+
40
+ @mixin tab-heading--disabled {
41
+ background-color: $tab-heading-disabled-background-color;
42
+ color: $tab-heading-disabled-color;
43
+ cursor: not-allowed;
44
+ }
45
+
46
+ @mixin tabs__tab {
47
+ display: none;
48
+ padding: $tab-padding;
49
+ }
50
+
51
+ @mixin tabs__tab--active {
52
+ display: block;
53
+ }
@@ -0,0 +1,41 @@
1
+ @import "settings.global";
2
+
3
+ @mixin tags {
4
+ position: relative;
5
+ width: $tags-width;
6
+ text-align: $tags-text-align;
7
+ }
8
+
9
+ @mixin tags-menu {
10
+ position: absolute;
11
+ width: 100%;
12
+ }
13
+
14
+ @mixin tags__container {
15
+ display: inline-block;
16
+ max-width: $tags-container-width;
17
+ padding-right: $spacing-xsmall;
18
+ }
19
+
20
+ @mixin tag {
21
+ display: inline-block;
22
+ padding: $tag-padding;
23
+ position: relative;
24
+ margin: $tag-margin;
25
+ text-transform: none;
26
+ }
27
+
28
+ @mixin tag__close {
29
+ position: absolute;
30
+ right: 5px;
31
+ top: 7px;
32
+ color: $tag-close-color;
33
+ }
34
+
35
+ @mixin tags__field-container {
36
+ position: absolute;
37
+ width: $tags-field-container-width;
38
+ display: inline-block;
39
+ margin: $tags-field-container-margin;
40
+ cursor: pointer;
41
+ }
@@ -0,0 +1,62 @@
1
+ @import "settings.global";
2
+
3
+ @mixin toasts {
4
+ display: block;
5
+ position: absolute;
6
+ width: $toasts-width;
7
+ max-height: 100%;
8
+ overflow-y: auto;
9
+ background-color: $toasts-background-color;
10
+ z-index: $toasts-z-index;
11
+ }
12
+
13
+ @mixin toasts--topleft {
14
+ top: 0;
15
+ left: 0;
16
+ }
17
+
18
+ @mixin toasts--topright {
19
+ top: 0;
20
+ right: 0;
21
+ }
22
+
23
+ @mixin toasts--bottomleft {
24
+ bottom: 0;
25
+ left: 0;
26
+ }
27
+
28
+ @mixin toasts--bottomright {
29
+ bottom: 0;
30
+ right: 0;
31
+ }
32
+
33
+ @mixin toast--color($background-color: $toast-background-color, $color: $toast-color) {
34
+ background-color: $background-color;
35
+ color: $color;
36
+ }
37
+
38
+ @mixin toast {
39
+ display: block;
40
+ position: relative;
41
+ padding: $toast-padding;
42
+ margin: $toast-margin;
43
+ @include toast--color;
44
+ border-radius: $toast-border-radius;
45
+ cursor: pointer;
46
+ }
47
+
48
+ @mixin toast--primary {
49
+ @include toast--color($toast-primary-background-color, $toast-primary-color);
50
+ }
51
+
52
+ @mixin toast--secondary {
53
+ @include toast--color($toast-secondary-background-color, $toast-secondary-color);
54
+ }
55
+
56
+ @mixin toast--success {
57
+ @include toast--color($toast-success-background-color, $toast-success-color);
58
+ }
59
+
60
+ @mixin toast--error {
61
+ @include toast--color($toast-error-background-color, $toast-error-color);
62
+ }
@@ -0,0 +1,75 @@
1
+ @import "settings.global";
2
+ @import "objects.grid";
3
+
4
+ @mixin toggle {
5
+ @include grid;
6
+ @include grid--center;
7
+ width: auto;
8
+ user-select: none;
9
+ cursor: pointer;
10
+ }
11
+
12
+ @mixin toggle__checkbox {
13
+ display: none;
14
+ }
15
+
16
+ @mixin toggle__track--background-color($track-color: $toggle-track-background-color) {
17
+ background-color: $track-color;
18
+ }
19
+
20
+ @mixin toggle__track {
21
+ position: relative;
22
+ @include grid__cell;
23
+ @include grid__cell--width-fixed;
24
+ width: 1em;
25
+ height: 0.5em;
26
+ margin: $toggle-margin;
27
+ @include toggle__track--background-color;
28
+ border-radius: $toggle-track-border-radius;
29
+ }
30
+
31
+ @mixin toggle__track--primary {
32
+ @include toggle__track--background-color($toggle-track-primary-background-color);
33
+ }
34
+
35
+ @mixin toggle__track--secondary {
36
+ @include toggle__track--background-color($toggle-track-secondary-background-color);
37
+ }
38
+
39
+ @mixin toggle__track--success {
40
+ @include toggle__track--background-color($toggle-track-success-background-color);
41
+ }
42
+
43
+ @mixin toggle__track--error {
44
+ @include toggle__track--background-color($toggle-track-error-background-color);
45
+ }
46
+
47
+ @mixin toggle__track--unchecked {
48
+ background-color: $toggle-track-unchecked-background-color;
49
+ }
50
+
51
+ @mixin toggle__track--disabled {
52
+ background-color: $toggle-track-disabled-background-color;
53
+ cursor: not-allowed;
54
+ }
55
+
56
+ @mixin toggle__handle {
57
+ position: absolute;
58
+ top: -0.25em;
59
+ left: 0;
60
+ width: 1em;
61
+ height: 1em;
62
+ background-color: $toggle-handle-background-color;
63
+ border-radius: $toggle-handle-border-radius;
64
+ box-shadow: $toggle-handle-box-shadow;
65
+ transform: translateX(100% );
66
+ }
67
+
68
+ @mixin toggle__handle--unchecked {
69
+ transform: translateZ(0);
70
+ }
71
+
72
+ @mixin toggle__handle--disabled {
73
+ background-color: $toggle-handle-disabled-background-color;
74
+ cursor: not-allowed;
75
+ }
@@ -0,0 +1,89 @@
1
+ @import "settings.global";
2
+
3
+ @mixin tooltip {
4
+ position: relative;
5
+ overflow: visible;
6
+ &:before,
7
+ &:after {
8
+ visibility: hidden;
9
+ z-index: $z-over-page;
10
+ }
11
+ &:before {
12
+ content: '';
13
+ position: absolute;
14
+ border: $tooltip-arrow-width solid transparent;
15
+ }
16
+
17
+ &:after {
18
+ visibility: hidden;
19
+ content: attr(aria-label);
20
+ position: absolute;
21
+ padding: 0.25em 0.5em;
22
+ border: $tooltip-body-border-width $tooltip-body-border-style $tooltip-body-border-color;
23
+ border-radius: $border-radius;
24
+ background-color: $tooltip-body-background-color;
25
+ color: $tooltip-body-color;
26
+ white-space: nowrap;
27
+ }
28
+
29
+ &:hover:before,
30
+ &:hover:after {
31
+ visibility: visible;
32
+ }
33
+ }
34
+
35
+ @mixin tooltip--top {
36
+ &:before {
37
+ border-top-color: $tooltip-body-border-color;
38
+ top: 0%;
39
+ left: 50%;
40
+ transform: translate(-50%, -1em);
41
+ }
42
+ &:after {
43
+ top: 0%;
44
+ left: 50%;
45
+ transform: translate(-50%, -3em);
46
+ }
47
+ }
48
+
49
+ @mixin tooltip--right {
50
+ &:before {
51
+ border-right-color: $tooltip-body-border-color;
52
+ top: 50%;
53
+ left: 100%;
54
+ transform: translate(0em, -50%);
55
+ }
56
+ &:after {
57
+ top: 50%;
58
+ left: 100%;
59
+ transform: translate(1em, -50%);
60
+ }
61
+ }
62
+
63
+ @mixin tooltip--bottom {
64
+ &:before {
65
+ border-bottom-color: $tooltip-body-border-color;
66
+ bottom: 0%;
67
+ left: 50%;
68
+ transform: translate(-50%, 1em);
69
+ }
70
+ &:after {
71
+ bottom: 0%;
72
+ left: 50%;
73
+ transform: translate(-50%, 3em);
74
+ }
75
+ }
76
+
77
+ @mixin tooltip--left {
78
+ &:before {
79
+ border-left-color: $tooltip-body-border-color;
80
+ top: 50%;
81
+ right: 100%;
82
+ transform: translate(0em, -50%);
83
+ }
84
+ &:after {
85
+ top: 50%;
86
+ right: 100%;
87
+ transform: translate(-1em, -50%);
88
+ }
89
+ }