bitstyles 0.8.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 (119) hide show
  1. checksums.yaml +7 -0
  2. data/.eslintignore +5 -0
  3. data/.eslintrc +4 -0
  4. data/.github/PULL_REQUEST_TEMPLATE.md +20 -0
  5. data/.gitignore +19 -0
  6. data/.nvmrc +1 -0
  7. data/.stylelintrc +166 -0
  8. data/CODE_OF_CONDUCT.md +49 -0
  9. data/Gemfile +4 -0
  10. data/LICENSE.txt +7 -0
  11. data/README.md +251 -0
  12. data/Rakefile +2 -0
  13. data/bin/console +14 -0
  14. data/bin/setup +8 -0
  15. data/bitstyles.gemspec +29 -0
  16. data/bower.json +31 -0
  17. data/build/.gitignore +4 -0
  18. data/lib/bitstyles/engine.rb +9 -0
  19. data/lib/bitstyles/version.rb +3 -0
  20. data/lib/bitstyles.rb +2 -0
  21. data/package.json +85 -0
  22. data/postcss_build.json +12 -0
  23. data/postcss_lint.json +11 -0
  24. data/scripts/styleguide.sh +16 -0
  25. data/scss/bitstyles/base/_figure.scss +9 -0
  26. data/scss/bitstyles/base/_forms.scss +182 -0
  27. data/scss/bitstyles/base/_hr.scss +6 -0
  28. data/scss/bitstyles/base/_images.scss +13 -0
  29. data/scss/bitstyles/base/_link.scss +32 -0
  30. data/scss/bitstyles/base/_media.scss +24 -0
  31. data/scss/bitstyles/base/_typography.scss +354 -0
  32. data/scss/bitstyles/components/_expander.scss +45 -0
  33. data/scss/bitstyles/components/_modal.scss +170 -0
  34. data/scss/bitstyles/generic/_box-sizing.scss +16 -0
  35. data/scss/bitstyles/generic/_normalize.scss +421 -0
  36. data/scss/bitstyles/layout/_content.scss +33 -0
  37. data/scss/bitstyles/layout/_grid.scss +148 -0
  38. data/scss/bitstyles/layout/_topbar.scss +25 -0
  39. data/scss/bitstyles/layout/_width.scss +48 -0
  40. data/scss/bitstyles/objects/_absolute-center.scss +16 -0
  41. data/scss/bitstyles/objects/_absolute-cover.scss +16 -0
  42. data/scss/bitstyles/objects/_block.scss +14 -0
  43. data/scss/bitstyles/objects/_bordered-header.scss +39 -0
  44. data/scss/bitstyles/objects/_break-long-words.scss +15 -0
  45. data/scss/bitstyles/objects/_button--icon.scss +30 -0
  46. data/scss/bitstyles/objects/_button.scss +103 -0
  47. data/scss/bitstyles/objects/_clearfix.scss +19 -0
  48. data/scss/bitstyles/objects/_expander.scss +45 -0
  49. data/scss/bitstyles/objects/_fixed-ratio.scss +23 -0
  50. data/scss/bitstyles/objects/_flex.scss +24 -0
  51. data/scss/bitstyles/objects/_hidden.scss +33 -0
  52. data/scss/bitstyles/objects/_icon.scss +43 -0
  53. data/scss/bitstyles/objects/_input.scss +83 -0
  54. data/scss/bitstyles/objects/_label.scss +15 -0
  55. data/scss/bitstyles/objects/_link.scss +29 -0
  56. data/scss/bitstyles/objects/_list-reset.scss +25 -0
  57. data/scss/bitstyles/objects/_media.scss +20 -0
  58. data/scss/bitstyles/objects/_truncate-with-ellipsis.scss +18 -0
  59. data/scss/bitstyles/objects/_typography.scss +92 -0
  60. data/scss/bitstyles/objects/_vertical-center.scss +16 -0
  61. data/scss/bitstyles/objects/_visuallyhidden.scss +30 -0
  62. data/scss/bitstyles/settings/_bordered-header.scss +3 -0
  63. data/scss/bitstyles/settings/_button--icon.scss +5 -0
  64. data/scss/bitstyles/settings/_button.scss +18 -0
  65. data/scss/bitstyles/settings/_content.scss +5 -0
  66. data/scss/bitstyles/settings/_global.animation.scss +3 -0
  67. data/scss/bitstyles/settings/_global.breakpoints.scss +12 -0
  68. data/scss/bitstyles/settings/_global.color-base.scss +14 -0
  69. data/scss/bitstyles/settings/_global.color-theme.scss +11 -0
  70. data/scss/bitstyles/settings/_global.layout.scss +7 -0
  71. data/scss/bitstyles/settings/_global.setup.scss +1 -0
  72. data/scss/bitstyles/settings/_global.typography.scss +28 -0
  73. data/scss/bitstyles/settings/_grid.scss +1 -0
  74. data/scss/bitstyles/settings/_hidden.scss +1 -0
  75. data/scss/bitstyles/settings/_icon.scss +5 -0
  76. data/scss/bitstyles/settings/_input.scss +12 -0
  77. data/scss/bitstyles/settings/_link.scss +4 -0
  78. data/scss/bitstyles/settings/_modal.scss +9 -0
  79. data/scss/bitstyles/settings/_topbar.scss +2 -0
  80. data/scss/bitstyles/settings/_visuallyhidden.scss +1 -0
  81. data/scss/bitstyles/settings/_width.scss +12 -0
  82. data/scss/bitstyles/tools/_absolute-center.scss +13 -0
  83. data/scss/bitstyles/tools/_absolute-cover.scss +13 -0
  84. data/scss/bitstyles/tools/_block.scss +9 -0
  85. data/scss/bitstyles/tools/_break-long-words.scss +11 -0
  86. data/scss/bitstyles/tools/_clearfix.scss +13 -0
  87. data/scss/bitstyles/tools/_fixed-ratio.scss +27 -0
  88. data/scss/bitstyles/tools/_flex.scss +15 -0
  89. data/scss/bitstyles/tools/_font-face.scss +21 -0
  90. data/scss/bitstyles/tools/_hidden.scss +11 -0
  91. data/scss/bitstyles/tools/_list-reset.scss +17 -0
  92. data/scss/bitstyles/tools/_media-query.scss +30 -0
  93. data/scss/bitstyles/tools/_media.scss +15 -0
  94. data/scss/bitstyles/tools/_truncate-with-ellipsis.scss +13 -0
  95. data/scss/bitstyles/tools/_typography-conversions.scss +18 -0
  96. data/scss/bitstyles/tools/_typography.scss +17 -0
  97. data/scss/bitstyles/tools/_vertical-center.scss +11 -0
  98. data/scss/bitstyles/tools/_visuallyhidden.scss +18 -0
  99. data/scss/bitstyles/tools/_width.scss +30 -0
  100. data/scss/bitstyles/tools/_zindex.scss +36 -0
  101. data/scss/bitstyles/trumps/_background-color.scss +18 -0
  102. data/scss/bitstyles/trumps/_color.scss +19 -0
  103. data/scss/bitstyles/trumps/_margin.scss +39 -0
  104. data/scss/bitstyles/trumps/_no-margin.scss +39 -0
  105. data/scss/bitstyles/trumps/_no-padding.scss +43 -0
  106. data/scss/bitstyles/trumps/_padding.scss +43 -0
  107. data/scss/bitstyles/trumps/_text-align.scss +21 -0
  108. data/scss/bitstyles/trumps/_text-style.scss +19 -0
  109. data/scss/bitstyles/trumps/_text-weight.scss +25 -0
  110. data/scss/bitstyles.scss +167 -0
  111. data/styleguide/assets/images/icons.svg +12 -0
  112. data/styleguide/assets/images/placeholder_16-9.png +0 -0
  113. data/styleguide/assets/images/placeholder_button.png +0 -0
  114. data/styleguide/assets/javascripts/a11y-dialog.js +135 -0
  115. data/styleguide/assets/javascripts/expander.js +40 -0
  116. data/styleguide/assets/javascripts/modal.js +55 -0
  117. data/styleguide/assets/javascripts/styleguide-init.js +6 -0
  118. data/styleguide/assets/stylesheets/styleguide-extras.css +17 -0
  119. metadata +192 -0
@@ -0,0 +1,40 @@
1
+ /* jshint devel:true */
2
+ const initExpander = () => {
3
+ const expanderButtonElement = document.getElementById('expander_button');
4
+
5
+ if (expanderButtonElement === null) {
6
+ return;
7
+ }
8
+
9
+ const expanderBodyElement = document.getElementById(expanderButtonElement.getAttribute('aria-controls')); // eslint-disable-line max-len
10
+ const HIDDEN_ATTRIBUTE = 'aria-hidden';
11
+ const EXPANDED_ATTRIBUTE = 'aria-expanded';
12
+
13
+ let isExpanded = expanderBodyElement.getAttribute(EXPANDED_ATTRIBUTE);
14
+
15
+ function hideBody() {
16
+ expanderBodyElement.setAttribute(HIDDEN_ATTRIBUTE, true);
17
+ expanderButtonElement.setAttribute(EXPANDED_ATTRIBUTE, false);
18
+ expanderButtonElement.focus();
19
+ isExpanded = false;
20
+ }
21
+
22
+ function showBody() {
23
+ expanderBodyElement.setAttribute(HIDDEN_ATTRIBUTE, false);
24
+ expanderButtonElement.setAttribute(EXPANDED_ATTRIBUTE, true);
25
+ expanderBodyElement.focus();
26
+ isExpanded = true;
27
+ }
28
+
29
+ function toggleBody() {
30
+ if (isExpanded) {
31
+ hideBody();
32
+ } else {
33
+ showBody();
34
+ }
35
+ }
36
+
37
+ expanderButtonElement.addEventListener('click', toggleBody);
38
+ };
39
+
40
+ window.addEventListener('styleguide:onRendered', initExpander);
@@ -0,0 +1,55 @@
1
+ /* jshint devel:true */
2
+ /* global A11yDialog:true */
3
+ /* eslint prefer-arrow-callback: ["error", { "allowNamedFunctions": true }] */
4
+ window.addEventListener('styleguide:onRendered', function initModal() {
5
+ const dialogElement = document.getElementById('dialog_1');
6
+
7
+ if (dialogElement === null) {
8
+ return;
9
+ }
10
+
11
+ const dialog = new A11yDialog(dialogElement);
12
+ const bodyElement = document.querySelector('body');
13
+ const cancelButtonElement = document.getElementById('#cancel_button');
14
+ const okButtonElement = document.getElementById('#ok_button');
15
+
16
+ const BODY_CLASS = 't-no-overflow';
17
+ const CANCEL_CLASS = 'c-modal--animation-cancel';
18
+ const OK_CLASS = 'c-modal--animation-ok';
19
+
20
+ const DIALOG_SHOW_EVENT = 'dialog:show';
21
+ const DIALOG_HIDE_EVENT = 'dialog:hide';
22
+ const CLICK_EVENT = 'click';
23
+ const TRANSITION_END_EVENT = 'transitionend';
24
+
25
+ dialogElement.addEventListener(DIALOG_SHOW_EVENT, function dialogShow() {
26
+ bodyElement.classList.add(BODY_CLASS);
27
+ });
28
+
29
+ dialogElement.addEventListener(DIALOG_HIDE_EVENT, function dialogHide() {
30
+ bodyElement.classList.remove(BODY_CLASS);
31
+ });
32
+
33
+ dialogElement.addEventListener(TRANSITION_END_EVENT, function removeAnimationClasses() {
34
+ // Ensure the element is really not visible — some browsers fire before visibility == hidden,
35
+ // so the modal flies back across the screen.
36
+ window.setTimeout(function delayedRemoveAnimationClasses() {
37
+ dialogElement.classList.remove(OK_CLASS);
38
+ dialogElement.classList.remove(CANCEL_CLASS);
39
+ }, 100);
40
+ });
41
+
42
+ if (okButtonElement !== null) {
43
+ okButtonElement.addEventListener(CLICK_EVENT, function onOkClick() {
44
+ dialogElement.classList.add(OK_CLASS);
45
+ dialog.hide();
46
+ });
47
+ }
48
+
49
+ if (cancelButtonElement !== null) {
50
+ cancelButtonElement.addEventListener(CLICK_EVENT, function onCancelClick() {
51
+ dialogElement.classList.add(CANCEL_CLASS);
52
+ dialog.hide();
53
+ });
54
+ }
55
+ });
@@ -0,0 +1,6 @@
1
+ /* eslint-disable prefer-arrow-callback */
2
+
3
+ window.addEventListener('styleguide:onRendered', function onStyleguideRendered() {
4
+ // informs Backstop.js (visual regression test runner) that content is rendered.
5
+ console.log('styleguideRendered'); // eslint-disable-line no-console
6
+ });
@@ -0,0 +1,17 @@
1
+ .background-grey {
2
+ background: #ccc;
3
+ outline: 1px #0f0 solid;
4
+ margin-bottom: 0;
5
+ }
6
+
7
+ .floated-element {
8
+ float: left;
9
+ width: 50%;
10
+ min-height: 5rem;
11
+ outline: 1px solid #f00;
12
+ }
13
+
14
+ .min-height-block {
15
+ position: relative;
16
+ min-height: 50vh;
17
+ }
metadata ADDED
@@ -0,0 +1,192 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: bitstyles
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.8.0
5
+ platform: ruby
6
+ authors:
7
+ - Darren Cadwallader
8
+ - Charlie Owen
9
+ autorequire:
10
+ bindir: exe
11
+ cert_chain: []
12
+ date: 2016-11-10 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bundler
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ~>
19
+ - !ruby/object:Gem::Version
20
+ version: '1.12'
21
+ type: :development
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ~>
26
+ - !ruby/object:Gem::Version
27
+ version: '1.12'
28
+ - !ruby/object:Gem::Dependency
29
+ name: rake
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ~>
33
+ - !ruby/object:Gem::Version
34
+ version: '10.0'
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ~>
40
+ - !ruby/object:Gem::Version
41
+ version: '10.0'
42
+ description:
43
+ email:
44
+ - info@bitcrowd.net
45
+ executables: []
46
+ extensions: []
47
+ extra_rdoc_files: []
48
+ files:
49
+ - .eslintignore
50
+ - .eslintrc
51
+ - .github/PULL_REQUEST_TEMPLATE.md
52
+ - .gitignore
53
+ - .nvmrc
54
+ - .stylelintrc
55
+ - CODE_OF_CONDUCT.md
56
+ - Gemfile
57
+ - LICENSE.txt
58
+ - README.md
59
+ - Rakefile
60
+ - bin/console
61
+ - bin/setup
62
+ - bitstyles.gemspec
63
+ - bower.json
64
+ - build/.gitignore
65
+ - lib/bitstyles.rb
66
+ - lib/bitstyles/engine.rb
67
+ - lib/bitstyles/version.rb
68
+ - package.json
69
+ - postcss_build.json
70
+ - postcss_lint.json
71
+ - scripts/styleguide.sh
72
+ - scss/bitstyles.scss
73
+ - scss/bitstyles/base/_figure.scss
74
+ - scss/bitstyles/base/_forms.scss
75
+ - scss/bitstyles/base/_hr.scss
76
+ - scss/bitstyles/base/_images.scss
77
+ - scss/bitstyles/base/_link.scss
78
+ - scss/bitstyles/base/_media.scss
79
+ - scss/bitstyles/base/_typography.scss
80
+ - scss/bitstyles/components/_expander.scss
81
+ - scss/bitstyles/components/_modal.scss
82
+ - scss/bitstyles/generic/_box-sizing.scss
83
+ - scss/bitstyles/generic/_normalize.scss
84
+ - scss/bitstyles/layout/_content.scss
85
+ - scss/bitstyles/layout/_grid.scss
86
+ - scss/bitstyles/layout/_topbar.scss
87
+ - scss/bitstyles/layout/_width.scss
88
+ - scss/bitstyles/objects/_absolute-center.scss
89
+ - scss/bitstyles/objects/_absolute-cover.scss
90
+ - scss/bitstyles/objects/_block.scss
91
+ - scss/bitstyles/objects/_bordered-header.scss
92
+ - scss/bitstyles/objects/_break-long-words.scss
93
+ - scss/bitstyles/objects/_button--icon.scss
94
+ - scss/bitstyles/objects/_button.scss
95
+ - scss/bitstyles/objects/_clearfix.scss
96
+ - scss/bitstyles/objects/_expander.scss
97
+ - scss/bitstyles/objects/_fixed-ratio.scss
98
+ - scss/bitstyles/objects/_flex.scss
99
+ - scss/bitstyles/objects/_hidden.scss
100
+ - scss/bitstyles/objects/_icon.scss
101
+ - scss/bitstyles/objects/_input.scss
102
+ - scss/bitstyles/objects/_label.scss
103
+ - scss/bitstyles/objects/_link.scss
104
+ - scss/bitstyles/objects/_list-reset.scss
105
+ - scss/bitstyles/objects/_media.scss
106
+ - scss/bitstyles/objects/_truncate-with-ellipsis.scss
107
+ - scss/bitstyles/objects/_typography.scss
108
+ - scss/bitstyles/objects/_vertical-center.scss
109
+ - scss/bitstyles/objects/_visuallyhidden.scss
110
+ - scss/bitstyles/settings/_bordered-header.scss
111
+ - scss/bitstyles/settings/_button--icon.scss
112
+ - scss/bitstyles/settings/_button.scss
113
+ - scss/bitstyles/settings/_content.scss
114
+ - scss/bitstyles/settings/_global.animation.scss
115
+ - scss/bitstyles/settings/_global.breakpoints.scss
116
+ - scss/bitstyles/settings/_global.color-base.scss
117
+ - scss/bitstyles/settings/_global.color-theme.scss
118
+ - scss/bitstyles/settings/_global.layout.scss
119
+ - scss/bitstyles/settings/_global.setup.scss
120
+ - scss/bitstyles/settings/_global.typography.scss
121
+ - scss/bitstyles/settings/_grid.scss
122
+ - scss/bitstyles/settings/_hidden.scss
123
+ - scss/bitstyles/settings/_icon.scss
124
+ - scss/bitstyles/settings/_input.scss
125
+ - scss/bitstyles/settings/_link.scss
126
+ - scss/bitstyles/settings/_modal.scss
127
+ - scss/bitstyles/settings/_topbar.scss
128
+ - scss/bitstyles/settings/_visuallyhidden.scss
129
+ - scss/bitstyles/settings/_width.scss
130
+ - scss/bitstyles/tools/_absolute-center.scss
131
+ - scss/bitstyles/tools/_absolute-cover.scss
132
+ - scss/bitstyles/tools/_block.scss
133
+ - scss/bitstyles/tools/_break-long-words.scss
134
+ - scss/bitstyles/tools/_clearfix.scss
135
+ - scss/bitstyles/tools/_fixed-ratio.scss
136
+ - scss/bitstyles/tools/_flex.scss
137
+ - scss/bitstyles/tools/_font-face.scss
138
+ - scss/bitstyles/tools/_hidden.scss
139
+ - scss/bitstyles/tools/_list-reset.scss
140
+ - scss/bitstyles/tools/_media-query.scss
141
+ - scss/bitstyles/tools/_media.scss
142
+ - scss/bitstyles/tools/_truncate-with-ellipsis.scss
143
+ - scss/bitstyles/tools/_typography-conversions.scss
144
+ - scss/bitstyles/tools/_typography.scss
145
+ - scss/bitstyles/tools/_vertical-center.scss
146
+ - scss/bitstyles/tools/_visuallyhidden.scss
147
+ - scss/bitstyles/tools/_width.scss
148
+ - scss/bitstyles/tools/_zindex.scss
149
+ - scss/bitstyles/trumps/_background-color.scss
150
+ - scss/bitstyles/trumps/_color.scss
151
+ - scss/bitstyles/trumps/_margin.scss
152
+ - scss/bitstyles/trumps/_no-margin.scss
153
+ - scss/bitstyles/trumps/_no-padding.scss
154
+ - scss/bitstyles/trumps/_padding.scss
155
+ - scss/bitstyles/trumps/_text-align.scss
156
+ - scss/bitstyles/trumps/_text-style.scss
157
+ - scss/bitstyles/trumps/_text-weight.scss
158
+ - styleguide/assets/images/icons.svg
159
+ - styleguide/assets/images/placeholder_16-9.png
160
+ - styleguide/assets/images/placeholder_button.png
161
+ - styleguide/assets/javascripts/a11y-dialog.js
162
+ - styleguide/assets/javascripts/expander.js
163
+ - styleguide/assets/javascripts/modal.js
164
+ - styleguide/assets/javascripts/styleguide-init.js
165
+ - styleguide/assets/stylesheets/styleguide-extras.css
166
+ homepage: https://github.com/bitcrowd/bitstyles
167
+ licenses:
168
+ - ISC
169
+ metadata:
170
+ allowed_push_host: https://rubygems.org
171
+ post_install_message:
172
+ rdoc_options: []
173
+ require_paths:
174
+ - lib
175
+ required_ruby_version: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - '>='
178
+ - !ruby/object:Gem::Version
179
+ version: '0'
180
+ required_rubygems_version: !ruby/object:Gem::Requirement
181
+ requirements:
182
+ - - '>='
183
+ - !ruby/object:Gem::Version
184
+ version: '0'
185
+ requirements: []
186
+ rubyforge_project:
187
+ rubygems_version: 2.4.5
188
+ signing_key:
189
+ specification_version: 4
190
+ summary: The CSS library of Bitcrowd GmbH.
191
+ test_files: []
192
+ has_rdoc: