ratchet_design 0.1.1 → 0.1.2

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 (61) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/ratchet/favicon.ico +0 -0
  3. data/app/assets/images/ratchet/safari-pinned-tab.svg +1 -0
  4. data/app/assets/javascripts/ratchet/base/form.js +9 -118
  5. data/app/assets/javascripts/ratchet/base/mobilemenu.js +12 -50
  6. data/app/assets/javascripts/ratchet/base/sync-input-value.js +30 -0
  7. data/app/assets/javascripts/ratchet/core.js +58 -77
  8. data/app/assets/javascripts/ratchet/enhancement/_collapse.js +3 -6
  9. data/app/assets/javascripts/ratchet/enhancement/_swap.js +3 -7
  10. data/app/assets/javascripts/ratchet/enhancement/lightbox.js +165 -0
  11. data/app/assets/javascripts/ratchet/enhancement/notice.js +8 -3
  12. data/app/assets/javascripts/ratchet/enhancement/sticky.js +18 -35
  13. data/app/assets/javascripts/ratchet/enhancement/waypoints.js +125 -162
  14. data/app/assets/javascripts/ratchet/shim/scope.js +94 -0
  15. data/app/assets/javascripts/ratchet/{enhancement → utility}/loader.js +15 -8
  16. data/app/assets/stylesheets/ratchet/_core.scss +4 -1
  17. data/app/assets/stylesheets/ratchet/base/_button.scss +3 -3
  18. data/app/assets/stylesheets/ratchet/base/_form.scss +63 -47
  19. data/app/assets/stylesheets/ratchet/base/_multistep-form.scss +64 -0
  20. data/app/assets/stylesheets/ratchet/base/_text.scss +15 -15
  21. data/app/assets/stylesheets/ratchet/enhancement/_lightbox.scss +98 -0
  22. data/app/assets/stylesheets/ratchet/enhancement/_tooltip.scss +142 -0
  23. data/app/assets/stylesheets/ratchet/fonts-woff.css +4 -4
  24. data/app/assets/stylesheets/ratchet/fonts-woff2.css +4 -4
  25. data/app/assets/stylesheets/ratchet/utility/_global.scss +3 -13
  26. data/app/assets/stylesheets/ratchet/{enhancement → utility}/_loader.scss +1 -1
  27. data/app/helpers/ratchet/application_helper.rb +6 -12
  28. data/app/helpers/ratchet/form_helper.rb +140 -0
  29. data/app/views/layouts/ratchet/default.html.slim +3 -2
  30. data/app/views/shared/ratchet/_footer.html.slim +1 -1
  31. data/app/views/shared/ratchet/_header.html.slim +1 -1
  32. data/lib/ratchet_design/version.rb +1 -1
  33. data/lib/ratchet_design.rb +24 -4
  34. data/public/assets/ratchet/core-0.1.2.js +133 -0
  35. data/public/assets/ratchet/core-0.1.2.js.gz +0 -0
  36. data/public/assets/ratchet/core-0.1.2.map.json +1 -0
  37. data/public/assets/ratchet/core-0.1.20.js +20472 -0
  38. data/public/assets/ratchet/{fonts-woff-0.1.1.css → fonts-woff-0.1.2.css} +4 -4
  39. data/public/assets/ratchet/{fonts-woff-0.1.1.css.gz → fonts-woff-0.1.2.css.gz} +0 -0
  40. data/public/assets/ratchet/{fonts-woff2-0.1.1.css → fonts-woff2-0.1.2.css} +4 -4
  41. data/public/assets/ratchet/{fonts-woff2-0.1.1.css.gz → fonts-woff2-0.1.2.css.gz} +0 -0
  42. metadata +48 -27
  43. data/app/assets/javascripts/ratchet/base/validation.js +0 -263
  44. data/app/assets/javascripts/ratchet/enhancement/_lightbox.js +0 -93
  45. data/app/assets/javascripts/ratchet/shim/classlist.js +0 -234
  46. data/app/assets/javascripts/ratchet/shim/object.assign.js +0 -30
  47. data/app/assets/javascripts/ratchet/utility/compile_data.js +0 -32
  48. data/app/assets/javascripts/ratchet/utility/from_top.js +0 -14
  49. data/app/assets/javascripts/ratchet/utility/full_stop.js +0 -55
  50. data/app/assets/javascripts/ratchet/utility/get_closest.js +0 -20
  51. data/app/assets/javascripts/ratchet/utility/get_next.js +0 -17
  52. data/app/assets/javascripts/ratchet/utility/matches.js +0 -15
  53. data/app/assets/javascripts/ratchet/utility/scroll_to.js +0 -74
  54. data/app/assets/javascripts/ratchet/utility/throttle.js +0 -25
  55. data/app/assets/javascripts/ratchet/utility/timeout.js +0 -45
  56. data/app/assets/javascripts/ratchet/utility/unhover.js +0 -56
  57. data/app/assets/javascripts/ratchet/utility/word_count.js +0 -15
  58. data/app/assets/stylesheets/ratchet/enhancement/_signup.scss +0 -206
  59. data/public/assets/ratchet/core-0.1.1.js +0 -103
  60. data/public/assets/ratchet/core-0.1.1.js.gz +0 -0
  61. data/public/assets/ratchet/core-0.1.1.map.json +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 05e52118e10d1100b0d48fc879d875a872586559
4
- data.tar.gz: a4b56310564057e3446f8b8d16c7a39f7d728b0c
3
+ metadata.gz: f6297919184307b0129029a416712ee65e6c1d94
4
+ data.tar.gz: 83c451f5339b4c0f4e83959962459f6733a618b9
5
5
  SHA512:
6
- metadata.gz: 44157e35a90e6263f377a3477956cce463aba8a69d4a207af25cfeb30dab9d2c2298e02ee61dc4228533242c75d3cc3e90127d55c8594799e5a13db8f52e50b3
7
- data.tar.gz: 6e94d09f3ea42db5ac4c61775d39f65d6fa3dfe666a40cba15959bf4bc493879f733288b70bf4b31ae74b18378d24359192e166c53494711e7c8d3a788de7496
6
+ metadata.gz: d5dc301107da8ff1a7f52a96e9e3d183d6adb48605c11a71d8546bb6942aa60f3e7885fe4594a5cf2546a1e268c5781bd7eeedd4516eaaafbdce903370b4f2e7
7
+ data.tar.gz: 80fb37a9190e8ad60ad1aef7c89efa0c74aaa5f7e747a469635a7bcc63f23e71cfe1de0094cc0e895a7d34b612d734598012c10b903924080e28e1ada1962d87
Binary file
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd"><path d="M11.251 24.382l-4.844-8.414 4.844-8.35h9.562l4.78 8.35-4.78 8.414h-9.562zM16.103 0c.781.008 1.56.067 2.331.185 1.431.218 2.83.633 4.149 1.23 1.698.768 3.258 1.836 4.592 3.139 1.263 1.233 2.321 2.674 3.117 4.25.664 1.315 1.144 2.722 1.421 4.169.326 1.698.374 3.449.145 5.162-.218 1.631-.69 3.226-1.396 4.712-.812 1.712-1.931 3.275-3.287 4.599-1.427 1.393-3.112 2.518-4.949 3.295-1.933.818-4.024 1.245-6.123 1.258-2.102.014-4.202-.387-6.149-1.183-1.847-.755-3.547-1.86-4.991-3.237-1.371-1.307-2.508-2.856-3.341-4.557-.722-1.475-1.214-3.062-1.452-4.687-.251-1.711-.224-3.463.08-5.165.266-1.484.744-2.929 1.415-4.279.786-1.581 1.836-3.029 3.092-4.27 1.302-1.287 2.824-2.35 4.484-3.125 1.309-.612 2.701-1.043 4.127-1.28.768-.127 1.544-.196 2.323-.213l.412-.003zm-.194 1.913c-.688.006-1.374.058-2.054.162-1.259.192-2.49.557-3.649 1.082-1.419.642-2.729 1.521-3.862 2.589-1.152 1.086-2.12 2.364-2.851 3.768-.611 1.174-1.054 2.435-1.311 3.734-.302 1.522-.35 3.096-.145 4.634.188 1.406.591 2.782 1.192 4.068.706 1.512 1.684 2.895 2.872 4.069 1.249 1.234 2.727 2.233 4.34 2.927 1.695.73 3.531 1.117 5.377 1.14 1.852.024 3.705-.317 5.425-1.008 1.631-.655 3.134-1.619 4.413-2.824 1.235-1.164 2.258-2.549 3.005-4.073.635-1.298 1.068-2.693 1.277-4.123.225-1.537.197-3.111-.087-4.638-.241-1.303-.669-2.571-1.266-3.754-.701-1.388-1.633-2.658-2.746-3.744-1.113-1.087-2.406-1.99-3.812-2.657-1.147-.545-2.369-.932-3.621-1.148-.675-.116-1.357-.18-2.042-.2l-.455-.004z" /></svg>
@@ -1,18 +1,17 @@
1
1
  /**
2
2
  * Form 0.0.1
3
- * Compose forms module
3
+ * Ratchet forms module
4
4
  * @author Kyle Foster (@hkfoster)
5
5
  * @license MIT
6
6
  **/
7
7
 
8
- // Dependencies
9
- var evt = require( 'compose-event' );
8
+ var toolbox = require( 'compose-toolbox' )
10
9
 
11
10
  // Public API function
12
11
  var form = function( element, settings ) {
13
12
 
14
13
  // Overridable defaults
15
- var defaults = {};
14
+ var defaults = {}
16
15
 
17
16
  // Parameter variables
18
17
  var selector = document.querySelector( element ) || document.querySelector( 'form' );
@@ -21,22 +20,22 @@ var form = function( element, settings ) {
21
20
  if ( !selector ) return false;
22
21
 
23
22
  // Scoped variables
24
- var options = Object.assign( {}, defaults, settings ),
23
+ var options = toolbox.merge( defaults, settings ),
25
24
  rangeEls = document.querySelectorAll( 'input[type=range]' ),
26
25
  tickEls = document.querySelectorAll( 'input[type=checkbox], input[type=radio]' ),
27
26
  docBody = document.body;
28
27
 
29
28
  // Prevent non-numeric characters in number fields
30
- docBody.addEventListener( 'keypress', keyHandler, false );
29
+ toolbox.event.on( docBody, 'keypress', 'input[type=number]', restrictInput )
31
30
 
32
31
  // Run delegated `on input` listener
33
- docBody.addEventListener( 'input', rangeHandler, true );
32
+ toolbox.event.on( docBody, 'input', '[type=range]', rangeHandler )
34
33
 
35
34
  // Loop over any range inputs that are present
36
35
  for ( var rangeIndex = 0; rangeIndex < rangeEls.length; rangeIndex++ ) {
37
36
 
38
37
  // And run their handler function explicitly at runtime
39
- rangeHandler( rangeEls[ rangeIndex ] );
38
+ rangeHandler( rangeEls[ rangeIndex ] )
40
39
 
41
40
  }
42
41
 
@@ -75,14 +74,9 @@ var form = function( element, settings ) {
75
74
  }
76
75
 
77
76
  // Keydown handler function
78
- function keyHandler( event ) {
77
+ function restrictInput( event ) {
79
78
 
80
- // Only run on number inputs
81
- if ( event.target.type !== 'number' ) {
82
- return false;
83
- }
84
-
85
- // If user enters non-numeric characters
79
+ // If user typing in an input[type=number] and enters non-numeric characters
86
80
  if ( event.which < 48 || event.which > 57 ) {
87
81
 
88
82
  // Supress them
@@ -111,109 +105,6 @@ var form = function( element, settings ) {
111
105
 
112
106
  }
113
107
 
114
- // Rangetouch 0.0.9 - https://github.com/selz/rangetouch
115
- function rangeTouch( size ) {
116
-
117
- // Bail if not a touch device
118
- if ( !( 'ontouchstart' in document.documentElement ) ) {
119
- return;
120
- }
121
-
122
- // Scoped variables
123
- var rangeInputs = document.querySelectorAll( '[type=range]' ),
124
- thumbSize = size || 20;
125
-
126
- // Set touchAction to prevent delays
127
- for ( var i = rangeInputs.length - 1; i >= 0; i-- ) {
128
- rangeInputs[ i ].style.touchAction = 'manipulation';
129
- rangeInputs[ i ].style.webkitUserSelect = 'none';
130
- }
131
-
132
- // Listen for events
133
- docBody.addEventListener( 'touchstart', setValue, false );
134
- docBody.addEventListener( 'touchmove', setValue, false );
135
- docBody.addEventListener( 'touchend', setValue, false );
136
-
137
- // Get the number of decimal places
138
- function getDecimalPlaces( value ) {
139
- var match = ( '' + value ).match( /( ?:\.( \d+ ) )?( ?:[eE]( [+-]?\d+ ) )?$/ );
140
- if ( !match ) {
141
- return 0;
142
- }
143
- return Math.max( 0, ( match[ 1 ] ? match[ 1 ].length : 0 ) - ( match[ 2 ] ? +match[ 2 ] : 0 ) );
144
- }
145
-
146
- // Round to the nearest step
147
- function roundToStep( number, step ) {
148
- if ( step < 1 ) {
149
- var places = getDecimalPlaces( parseInt( step ) );
150
- return parseFloat( number.toFixed( places ) );
151
- }
152
- return ( Math.round( number / step ) * step );
153
- }
154
-
155
- // Get the value based on touch position
156
- function getValue( event ) {
157
-
158
- // Scoped variables
159
- var input = event.target,
160
- touch = event.changedTouches[ 0 ],
161
- min = parseFloat( input.getAttribute( 'min' ) ) || 0,
162
- max = parseFloat( input.getAttribute( 'max' ) ) || 100,
163
- step = parseFloat( input.getAttribute( 'step' ) ) || 1,
164
- delta = max - min;
165
-
166
- // Calculate percentage
167
- var percent,
168
- clientRect = input.getBoundingClientRect(),
169
- thumbWidth = ( ( ( 100 / clientRect.width ) * ( thumbSize / 2 ) ) / 100 );
170
-
171
- // Determine left percentage
172
- percent = ( ( 100 / clientRect.width ) * ( touch.clientX - clientRect.left ) );
173
-
174
- // Don't allow outside bounds
175
- if ( percent < 0 ) {
176
- percent = 0;
177
- } else if ( percent > 100 ) {
178
- percent = 100;
179
- }
180
-
181
- // Factor in the thumb offset
182
- if ( percent < 50 ) {
183
- percent -= ( ( 100 - ( percent * 2 ) ) * thumbWidth );
184
- } else if ( percent > 50 ) {
185
- percent += ( ( ( percent - 50 ) * 2 ) * thumbWidth );
186
- }
187
-
188
- // Find the closest step to the mouse position
189
- return min + roundToStep( delta * ( percent / 100 ), step );
190
-
191
- }
192
-
193
- // Update range value based on position
194
- function setValue( event ) {
195
-
196
- // Bail if not a range slider
197
- if ( event.target.type !== 'range' ) {
198
- return;
199
- }
200
-
201
- // Prevent text highlight on iOS
202
- event.preventDefault();
203
-
204
- // Set value
205
- event.target.value = getValue( event );
206
-
207
- // Trigger input event
208
- evt.fire( event.target, ( event.type === 'touchend' ? 'change' : 'input' ) );
209
-
210
- }
211
-
212
- }
213
-
214
- // Initialize RangeTouch
215
- rangeTouch();
216
-
217
108
  };
218
109
 
219
110
  // Public API
@@ -6,69 +6,31 @@
6
6
  **/
7
7
 
8
8
  // Dependencies
9
- var matches = require( '../utility/matches' );
9
+ var toolbox = require( 'compose-toolbox' )
10
10
 
11
11
  // Public API function
12
- var mobileMenu = function( element, settings ) {
12
+ var mobileMenu = function( settings ) {
13
13
 
14
14
  // Overridable defaults
15
15
  var defaults = {
16
16
  initWidth : '700px',
17
17
  openClass : 'menu-open',
18
- menuButton : '.mobile-menu-button'
18
+ nav : '.main-nav',
19
+ button : '.mobile-menu-button'
19
20
  },
20
21
 
21
22
  // Scoped variables
22
- options = Object.assign( {}, defaults, settings ),
23
- selector = document.querySelector( element ),
24
- widthQuery = window.matchMedia( '(max-width: ' + options.initWidth + ')' ),
23
+ options = toolbox.merge( defaults, settings ),
24
+ selector = options.button + ', ' + options.openClass + ' ' + options.nav + ' a',
25
25
  docBody = document.body;
26
26
 
27
27
  // Attach listeners
28
- if ( selector ) {
28
+ toolbox.event.on( document, 'click', selector, function() {
29
+ // Toggle body class
30
+ docBody.classList.toggle( options.openClass )
31
+ })
29
32
 
30
- // Call listener function explicitly at run time
31
- queryHandler( widthQuery );
32
-
33
- // Attach listener function to listen in on state changes
34
- widthQuery.addListener( queryHandler );
35
-
36
- }
37
-
38
- // Click handler function
39
- function clickHandler( event ) {
40
-
41
- // Combine element selector with anchor links
42
- var toggleSelector = options.menuButton + ', .' + options.openClass + ' ' + element + ' a[href^="#"]';
43
-
44
- // Only run on menu button
45
- if ( matches( event.target, toggleSelector ) ) {
46
-
47
- // Toggle body class
48
- docBody.classList.toggle( options.openClass );
49
-
50
- }
51
-
52
- }
53
-
54
- // Media query handler function
55
- function queryHandler( condition ) {
56
-
57
- // If media query matches
58
- if ( condition.matches ) {
59
-
60
- // Click function listener
61
- selector.addEventListener( 'click', clickHandler, false );
62
-
63
- } else {
64
-
65
- // Remove click listener
66
- selector.removeEventListener( 'click', clickHandler, false );
67
-
68
- }
69
- }
70
-
71
- };
33
+ }
72
34
 
73
35
  // Public API
74
- module.exports = mobileMenu;
36
+ module.exports = mobileMenu
@@ -0,0 +1,30 @@
1
+ var toolbox = require( 'compose-toolbox' )
2
+ var Event = toolbox.event
3
+ var textSelectors = 'textarea, input[type=url], input[type=tel], input[type=text], input[type=email], input[type=number], input[type=password]'
4
+
5
+ Event.bubbleFormEvents()
6
+
7
+ function textInputs() {
8
+ return document.querySelectorAll( textSelectors )
9
+ }
10
+
11
+ function syncValue( input ) {
12
+
13
+ // Allow calling from event handler
14
+ if ( input.target ) { input = input.target }
15
+
16
+ // If element only contains whitespace, strip value
17
+ if ( !input.value.replace( /\s/g, '' ).length ) { input.value = ''; }
18
+
19
+ input.setAttribute( 'value', input.value )
20
+
21
+ }
22
+
23
+ Event.change( function() {
24
+
25
+ // Ensure that all inputs have a value
26
+ toolbox.each( textInputs(), syncValue )
27
+
28
+ })
29
+
30
+ Event.on( document, 'blur', 'input', syncValue )
@@ -1,95 +1,76 @@
1
- // Shim modules
2
- require( './shim/classlist' );
3
- require( './shim/object.assign' );
4
-
5
1
  // Utility modules
6
- var loadFont = require( './utility/load_font' );
7
- var fullStop = require( './utility/full_stop' );
8
- var unhover = require( './utility/unhover' );
9
- var throttle = require( './utility/throttle' );
10
- var loadScript = require( './utility/load_script' );
11
- var fromTop = require( './utility/from_top' );
12
- var scrollTo = require( './utility/scroll_to' );
13
- var matches = require( './utility/matches' );
14
- var getClosest = require( './utility/get_closest' );
15
- var getNext = require( './utility/get_next' );
16
- var wordCount = require( './utility/word_count' );
17
- var compileData = require( './utility/compile_data' );
18
- var timeout = require( './utility/timeout' );
2
+ var loadFont = require( './utility/load_font' )
3
+ var loadScript = require( './utility/load_script' )
19
4
 
20
5
  // Base modules
21
- var mobileMenu = require( './base/mobilemenu' );
22
- var form = require( './base/form' );
23
- var validation = require( './base/validation' );
6
+ var mobileMenu = require( './base/mobilemenu' )
7
+ var form = require( './base/form' )
8
+ var formUp = require( 'compose-form-up' )
9
+ form.validate = formUp.validate
10
+ form.next = formUp.next
11
+ require( './base/sync-input-value' )
24
12
 
25
13
  // Enhancement modules
26
- var loader = require( './enhancement/loader' );
27
- var waypoints = require( './enhancement/waypoints' );
28
- var notice = require( './enhancement/notice' );
29
- var sticky = require( './enhancement/sticky' );
30
- var esvg = require( './_svg' );
14
+ var waypoints = require( './enhancement/waypoints' )
15
+ var notice = require( './enhancement/notice' )
16
+ var sticky = require( './enhancement/sticky' )
17
+ var lightbox = require( './enhancement/lightbox' )
18
+ var esvg = require( './_svg' )
31
19
  // var swap = require( './enhancement/swap' );
32
20
 
33
21
  // Vendor modules
34
- var event = require( 'compose-event' );
35
- var highlighter = require( 'compose-code-highlighter' );
36
- require( 'codemirror/mode/htmlmixed/htmlmixed' );
37
- require( 'codemirror/mode/slim/slim' );
38
- require( 'codemirror/mode/javascript/javascript' );
39
- require( 'codemirror/mode/css/css' );
40
- require( 'codemirror/mode/sql/sql' );
41
- require( 'codemirror/mode/php/php' );
42
- require( 'codemirror/mode/ruby/ruby' );
43
- require( 'codemirror/mode/shell/shell' );
44
- require( 'codemirror/mode/go/go' );
45
- require( 'codemirror/mode/python/python' );
46
- require( 'codemirror/mode/yaml/yaml' );
47
- require( 'codemirror/mode/clike/clike' );
48
- require( 'codemirror/addon/runmode/runmode' );
49
- require( 'codemirror/addon/edit/matchbrackets' );
22
+ var toolbox = require( 'compose-toolbox' )
23
+ var event = toolbox.event
24
+ var ajax = require( 'superagent' )
25
+ var rangeTouch = require( 'rangetouch' )
26
+ var highlighter = require( 'compose-code-highlighter' )
27
+ var loader = require( 'compose-loader' )
28
+
29
+ require( 'codemirror/mode/htmlmixed/htmlmixed' )
30
+ require( 'codemirror/mode/slim/slim' )
31
+ require( 'codemirror/mode/javascript/javascript' )
32
+ require( 'codemirror/mode/css/css' )
33
+ require( 'codemirror/mode/sql/sql' )
34
+ require( 'codemirror/mode/php/php' )
35
+ require( 'codemirror/mode/ruby/ruby' )
36
+ require( 'codemirror/mode/shell/shell' )
37
+ require( 'codemirror/mode/go/go' )
38
+ require( 'codemirror/mode/python/python' )
39
+ require( 'codemirror/mode/yaml/yaml' )
40
+ require( 'codemirror/mode/clike/clike' )
41
+ require( 'codemirror/addon/runmode/runmode' )
42
+ require( 'codemirror/addon/edit/matchbrackets' )
43
+
44
+ // Initialize component features
45
+ rangeTouch.set("thumbWidth", 20); // Annoying hack to make input ranges work smoothly on touch devices
46
+
47
+ event.scroll.disablePointer() // disable pointer events on scroll for performance (to avoid extra repaints)
48
+ event.resize.disableAnimation() // disable animation on resize for performance (to avoid extra repaints)
49
+
50
+ // Trigger these events each time the page loads
51
+ event.change( function() {
52
+
53
+ // Form module
54
+ form()
55
+
56
+ // Syntax highlighting
57
+ highlighter.highlight()
58
+ });
50
59
 
51
60
  // Public API object
52
- window.ratchet = module.exports = {
61
+ var ratchet = toolbox.merge( {
53
62
  loadFont : loadFont,
54
- fullStop : fullStop,
55
- unhover : unhover,
56
- throttle : throttle,
57
63
  loadScript : loadScript,
58
- fromTop : fromTop,
59
- scrollTo : scrollTo,
60
- matches : matches,
61
- getClosest : getClosest,
62
- getNext : getNext,
63
- wordCount : wordCount,
64
- compileData : compileData,
65
- timeout : timeout,
64
+ ajax : ajax,
65
+ loader : loader,
66
66
  mobileMenu : mobileMenu,
67
67
  form : form,
68
- validation : validation,
69
- loader : loader,
68
+ validation : formUp.validate,
70
69
  waypoints : waypoints,
71
70
  notice : notice,
72
71
  sticky : sticky,
73
- esvg : esvg,
74
- event : event
75
- }
76
-
77
- // Default events instantiation
78
- event.change( function() {
79
-
80
- // Unhover module
81
- unhover();
82
-
83
- // FullStop module
84
- fullStop();
85
-
86
- // Form module
87
- form();
88
-
89
- // Validation module
90
- validation();
91
-
92
- // Syntax highlighting
93
- highlighter.highlight();
72
+ lightbox : lightbox,
73
+ esvg : esvg
74
+ }, toolbox )
94
75
 
95
- }, false );
76
+ window.ratchet = module.exports = ratchet
@@ -5,9 +5,6 @@
5
5
  * @license MIT
6
6
  **/
7
7
 
8
- // Dependencies
9
- var getClosest = require('../utility/get_closest')
10
-
11
8
  ;( function( root, factory ) {
12
9
  if ( typeof define === 'function' && define.amd ) {
13
10
  define( factory );
@@ -29,7 +26,7 @@ var getClosest = require('../utility/get_closest')
29
26
  defaults = {
30
27
  expandText : 'Show more ∨',
31
28
  collapseText : 'Show less ∧',
32
- triggerText : '&nbsp;'
29
+ triggerText : '{{ more }}'
33
30
  };
34
31
 
35
32
  // Only run if selector exists
@@ -77,7 +74,7 @@ var getClosest = require('../utility/get_closest')
77
74
  event.preventDefault();
78
75
 
79
76
  // Scoped variables
80
- var expandable = getClosest( event.target, element ),
77
+ var expandable = compose.getClosest( event.target, element ),
81
78
  stateObject = state[ expandable.dataset.idx ];
82
79
 
83
80
  // Toggle between excerpt and full text
@@ -93,4 +90,4 @@ var getClosest = require('../utility/get_closest')
93
90
  // Public API
94
91
  return exports;
95
92
 
96
- });
93
+ });
@@ -1,13 +1,9 @@
1
1
  /**
2
- * Swap 0.0.2
3
- * Compose swappable element module
2
+ * Swap.js 0.0.2
4
3
  * @author Kyle Foster (@hkfoster)
5
4
  * @license MIT
6
5
  **/
7
6
 
8
- // Dependencies
9
- var ScrollTo = require('../utility/scroll_to')
10
-
11
7
  // Transport
12
8
  ;( function( root, factory ) {
13
9
  if ( typeof define === 'function' && define.amd ) {
@@ -71,7 +67,7 @@ var ScrollTo = require('../utility/scroll_to')
71
67
  } else {
72
68
 
73
69
  // Stop default anchor tag jump
74
- ScrollTo(0, 0);
70
+ window.scrollTo(0, 0);
75
71
 
76
72
  // Assign appropriate element(s) variables
77
73
  var loadedTarget = document.querySelector( '#' + getHash() ),
@@ -117,4 +113,4 @@ var ScrollTo = require('../utility/scroll_to')
117
113
 
118
114
  }
119
115
 
120
- });
116
+ });