ratchet_design 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/images/ratchet/favicon.ico +0 -0
- data/app/assets/images/ratchet/safari-pinned-tab.svg +1 -0
- data/app/assets/javascripts/ratchet/base/form.js +9 -118
- data/app/assets/javascripts/ratchet/base/mobilemenu.js +12 -50
- data/app/assets/javascripts/ratchet/base/sync-input-value.js +30 -0
- data/app/assets/javascripts/ratchet/core.js +58 -77
- data/app/assets/javascripts/ratchet/enhancement/_collapse.js +3 -6
- data/app/assets/javascripts/ratchet/enhancement/_swap.js +3 -7
- data/app/assets/javascripts/ratchet/enhancement/lightbox.js +165 -0
- data/app/assets/javascripts/ratchet/enhancement/notice.js +8 -3
- data/app/assets/javascripts/ratchet/enhancement/sticky.js +18 -35
- data/app/assets/javascripts/ratchet/enhancement/waypoints.js +125 -162
- data/app/assets/javascripts/ratchet/shim/scope.js +94 -0
- data/app/assets/javascripts/ratchet/{enhancement → utility}/loader.js +15 -8
- data/app/assets/stylesheets/ratchet/_core.scss +4 -1
- data/app/assets/stylesheets/ratchet/base/_button.scss +3 -3
- data/app/assets/stylesheets/ratchet/base/_form.scss +63 -47
- data/app/assets/stylesheets/ratchet/base/_multistep-form.scss +64 -0
- data/app/assets/stylesheets/ratchet/base/_text.scss +15 -15
- data/app/assets/stylesheets/ratchet/enhancement/_lightbox.scss +98 -0
- data/app/assets/stylesheets/ratchet/enhancement/_tooltip.scss +142 -0
- data/app/assets/stylesheets/ratchet/fonts-woff.css +4 -4
- data/app/assets/stylesheets/ratchet/fonts-woff2.css +4 -4
- data/app/assets/stylesheets/ratchet/utility/_global.scss +3 -13
- data/app/assets/stylesheets/ratchet/{enhancement → utility}/_loader.scss +1 -1
- data/app/helpers/ratchet/application_helper.rb +6 -12
- data/app/helpers/ratchet/form_helper.rb +140 -0
- data/app/views/layouts/ratchet/default.html.slim +3 -2
- data/app/views/shared/ratchet/_footer.html.slim +1 -1
- data/app/views/shared/ratchet/_header.html.slim +1 -1
- data/lib/ratchet_design/version.rb +1 -1
- data/lib/ratchet_design.rb +24 -4
- data/public/assets/ratchet/core-0.1.2.js +133 -0
- data/public/assets/ratchet/core-0.1.2.js.gz +0 -0
- data/public/assets/ratchet/core-0.1.2.map.json +1 -0
- data/public/assets/ratchet/core-0.1.20.js +20472 -0
- data/public/assets/ratchet/{fonts-woff-0.1.1.css → fonts-woff-0.1.2.css} +4 -4
- data/public/assets/ratchet/{fonts-woff-0.1.1.css.gz → fonts-woff-0.1.2.css.gz} +0 -0
- data/public/assets/ratchet/{fonts-woff2-0.1.1.css → fonts-woff2-0.1.2.css} +4 -4
- data/public/assets/ratchet/{fonts-woff2-0.1.1.css.gz → fonts-woff2-0.1.2.css.gz} +0 -0
- metadata +48 -27
- data/app/assets/javascripts/ratchet/base/validation.js +0 -263
- data/app/assets/javascripts/ratchet/enhancement/_lightbox.js +0 -93
- data/app/assets/javascripts/ratchet/shim/classlist.js +0 -234
- data/app/assets/javascripts/ratchet/shim/object.assign.js +0 -30
- data/app/assets/javascripts/ratchet/utility/compile_data.js +0 -32
- data/app/assets/javascripts/ratchet/utility/from_top.js +0 -14
- data/app/assets/javascripts/ratchet/utility/full_stop.js +0 -55
- data/app/assets/javascripts/ratchet/utility/get_closest.js +0 -20
- data/app/assets/javascripts/ratchet/utility/get_next.js +0 -17
- data/app/assets/javascripts/ratchet/utility/matches.js +0 -15
- data/app/assets/javascripts/ratchet/utility/scroll_to.js +0 -74
- data/app/assets/javascripts/ratchet/utility/throttle.js +0 -25
- data/app/assets/javascripts/ratchet/utility/timeout.js +0 -45
- data/app/assets/javascripts/ratchet/utility/unhover.js +0 -56
- data/app/assets/javascripts/ratchet/utility/word_count.js +0 -15
- data/app/assets/stylesheets/ratchet/enhancement/_signup.scss +0 -206
- data/public/assets/ratchet/core-0.1.1.js +0 -103
- data/public/assets/ratchet/core-0.1.1.js.gz +0 -0
- data/public/assets/ratchet/core-0.1.1.map.json +0 -1
@@ -46,10 +46,10 @@
|
|
46
46
|
unicode-range: U+26;
|
47
47
|
}
|
48
48
|
|
49
|
-
/*
|
49
|
+
/* Nitti */
|
50
50
|
@font-face {
|
51
|
-
font-family: '
|
52
|
-
src: url(data:font/woff;base64,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) format('woff');
|
51
|
+
font-family: 'Nitti';
|
52
|
+
src: url(data:font/woff;base64,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) format('woff');
|
53
53
|
font-weight: 300;
|
54
54
|
font-style: normal;
|
55
|
-
}
|
55
|
+
}
|
Binary file
|
@@ -46,10 +46,10 @@
|
|
46
46
|
unicode-range: U+26;
|
47
47
|
}
|
48
48
|
|
49
|
-
/*
|
49
|
+
/* Nitti */
|
50
50
|
@font-face {
|
51
|
-
font-family: '
|
52
|
-
src: url(data:font/woff2;base64,
|
51
|
+
font-family: 'Nitti';
|
52
|
+
src: url(data:font/woff2;base64,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) format('woff2');
|
53
53
|
font-weight: 300;
|
54
54
|
font-style: normal;
|
55
|
-
}
|
55
|
+
}
|
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ratchet_design
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brandon Mathis
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2017-01-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: cyborg
|
@@ -39,6 +39,20 @@ dependencies:
|
|
39
39
|
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
41
|
version: '3.1'
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: country_select
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - "~>"
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: '2.5'
|
49
|
+
type: :runtime
|
50
|
+
prerelease: false
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - "~>"
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '2.5'
|
42
56
|
- !ruby/object:Gem::Dependency
|
43
57
|
name: bundler
|
44
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -53,6 +67,20 @@ dependencies:
|
|
53
67
|
- - "~>"
|
54
68
|
- !ruby/object:Gem::Version
|
55
69
|
version: '1.12'
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: rack-cors
|
72
|
+
requirement: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - "~>"
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0.4'
|
77
|
+
type: :development
|
78
|
+
prerelease: false
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - "~>"
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: '0.4'
|
56
84
|
- !ruby/object:Gem::Dependency
|
57
85
|
name: rake
|
58
86
|
requirement: !ruby/object:Gem::Requirement
|
@@ -79,54 +107,45 @@ files:
|
|
79
107
|
- LICENSE.txt
|
80
108
|
- README.md
|
81
109
|
- app/assets/images/ratchet/favicon.ico
|
110
|
+
- app/assets/images/ratchet/safari-pinned-tab.svg
|
82
111
|
- app/assets/javascripts/ratchet/_svg.js
|
83
112
|
- app/assets/javascripts/ratchet/base/form.js
|
84
113
|
- app/assets/javascripts/ratchet/base/mobilemenu.js
|
85
|
-
- app/assets/javascripts/ratchet/base/
|
114
|
+
- app/assets/javascripts/ratchet/base/sync-input-value.js
|
86
115
|
- app/assets/javascripts/ratchet/core.js
|
87
116
|
- app/assets/javascripts/ratchet/enhancement/_collapse.js
|
88
|
-
- app/assets/javascripts/ratchet/enhancement/_lightbox.js
|
89
117
|
- app/assets/javascripts/ratchet/enhancement/_swap.js
|
90
118
|
- app/assets/javascripts/ratchet/enhancement/_switcheroo.js
|
91
119
|
- app/assets/javascripts/ratchet/enhancement/_textcounter.js
|
92
|
-
- app/assets/javascripts/ratchet/enhancement/
|
120
|
+
- app/assets/javascripts/ratchet/enhancement/lightbox.js
|
93
121
|
- app/assets/javascripts/ratchet/enhancement/notice.js
|
94
122
|
- app/assets/javascripts/ratchet/enhancement/sticky.js
|
95
123
|
- app/assets/javascripts/ratchet/enhancement/waypoints.js
|
96
|
-
- app/assets/javascripts/ratchet/shim/
|
97
|
-
- app/assets/javascripts/ratchet/shim/object.assign.js
|
98
|
-
- app/assets/javascripts/ratchet/utility/compile_data.js
|
99
|
-
- app/assets/javascripts/ratchet/utility/from_top.js
|
100
|
-
- app/assets/javascripts/ratchet/utility/full_stop.js
|
101
|
-
- app/assets/javascripts/ratchet/utility/get_closest.js
|
102
|
-
- app/assets/javascripts/ratchet/utility/get_next.js
|
124
|
+
- app/assets/javascripts/ratchet/shim/scope.js
|
103
125
|
- app/assets/javascripts/ratchet/utility/load_font.js
|
104
126
|
- app/assets/javascripts/ratchet/utility/load_script.js
|
105
|
-
- app/assets/javascripts/ratchet/utility/
|
106
|
-
- app/assets/javascripts/ratchet/utility/scroll_to.js
|
107
|
-
- app/assets/javascripts/ratchet/utility/throttle.js
|
108
|
-
- app/assets/javascripts/ratchet/utility/timeout.js
|
109
|
-
- app/assets/javascripts/ratchet/utility/unhover.js
|
110
|
-
- app/assets/javascripts/ratchet/utility/word_count.js
|
127
|
+
- app/assets/javascripts/ratchet/utility/loader.js
|
111
128
|
- app/assets/stylesheets/ratchet/_core.scss
|
112
129
|
- app/assets/stylesheets/ratchet/base/_button.scss
|
113
130
|
- app/assets/stylesheets/ratchet/base/_document.scss
|
114
131
|
- app/assets/stylesheets/ratchet/base/_form.scss
|
115
132
|
- app/assets/stylesheets/ratchet/base/_list.scss
|
116
133
|
- app/assets/stylesheets/ratchet/base/_media.scss
|
134
|
+
- app/assets/stylesheets/ratchet/base/_multistep-form.scss
|
117
135
|
- app/assets/stylesheets/ratchet/base/_table.scss
|
118
136
|
- app/assets/stylesheets/ratchet/base/_text.scss
|
119
137
|
- app/assets/stylesheets/ratchet/enhancement/_contrast-section.scss
|
120
138
|
- app/assets/stylesheets/ratchet/enhancement/_feature.scss
|
121
139
|
- app/assets/stylesheets/ratchet/enhancement/_hero.scss
|
122
|
-
- app/assets/stylesheets/ratchet/enhancement/
|
140
|
+
- app/assets/stylesheets/ratchet/enhancement/_lightbox.scss
|
123
141
|
- app/assets/stylesheets/ratchet/enhancement/_notice.scss
|
124
|
-
- app/assets/stylesheets/ratchet/enhancement/_signup.scss
|
125
142
|
- app/assets/stylesheets/ratchet/enhancement/_sticky-sidebar.scss
|
143
|
+
- app/assets/stylesheets/ratchet/enhancement/_tooltip.scss
|
126
144
|
- app/assets/stylesheets/ratchet/fonts-woff.css
|
127
145
|
- app/assets/stylesheets/ratchet/fonts-woff2.css
|
128
146
|
- app/assets/stylesheets/ratchet/utility/_global.scss
|
129
147
|
- app/assets/stylesheets/ratchet/utility/_grid.scss
|
148
|
+
- app/assets/stylesheets/ratchet/utility/_loader.scss
|
130
149
|
- app/assets/svgs/ratchet/facebook.svg
|
131
150
|
- app/assets/svgs/ratchet/github.svg
|
132
151
|
- app/assets/svgs/ratchet/google-plus.svg
|
@@ -139,19 +158,21 @@ files:
|
|
139
158
|
- app/assets/svgs/ratchet/twitter.svg
|
140
159
|
- app/assets/svgs/ratchet/y-combinator.svg
|
141
160
|
- app/helpers/ratchet/application_helper.rb
|
161
|
+
- app/helpers/ratchet/form_helper.rb
|
142
162
|
- app/views/layouts/ratchet/default.html.slim
|
143
163
|
- app/views/shared/ratchet/_footer.html.slim
|
144
164
|
- app/views/shared/ratchet/_header.html.slim
|
145
165
|
- app/views/shared/ratchet/_icons.html.slim
|
146
166
|
- lib/ratchet_design.rb
|
147
167
|
- lib/ratchet_design/version.rb
|
148
|
-
- public/assets/ratchet/core-0.1.
|
149
|
-
- public/assets/ratchet/core-0.1.
|
150
|
-
- public/assets/ratchet/core-0.1.
|
151
|
-
- public/assets/ratchet/
|
152
|
-
- public/assets/ratchet/fonts-woff-0.1.
|
153
|
-
- public/assets/ratchet/fonts-
|
154
|
-
- public/assets/ratchet/fonts-woff2-0.1.
|
168
|
+
- public/assets/ratchet/core-0.1.2.js
|
169
|
+
- public/assets/ratchet/core-0.1.2.js.gz
|
170
|
+
- public/assets/ratchet/core-0.1.2.map.json
|
171
|
+
- public/assets/ratchet/core-0.1.20.js
|
172
|
+
- public/assets/ratchet/fonts-woff-0.1.2.css
|
173
|
+
- public/assets/ratchet/fonts-woff-0.1.2.css.gz
|
174
|
+
- public/assets/ratchet/fonts-woff2-0.1.2.css
|
175
|
+
- public/assets/ratchet/fonts-woff2-0.1.2.css.gz
|
155
176
|
homepage:
|
156
177
|
licenses:
|
157
178
|
- MIT
|
@@ -1,263 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* Validation 0.0.6
|
3
|
-
* Compose form validation module
|
4
|
-
* @author Kyle Foster (@hkfoster)
|
5
|
-
* @license MIT
|
6
|
-
**/
|
7
|
-
|
8
|
-
// Dependencies
|
9
|
-
var matches = require( '../utility/matches' ),
|
10
|
-
getClosest = require( '../utility/get_closest' ),
|
11
|
-
wordCount = require( '../utility/word_count' );
|
12
|
-
|
13
|
-
// Public API function
|
14
|
-
var validation = function( element, settings ) {
|
15
|
-
|
16
|
-
// Overridable defaults
|
17
|
-
var defaults = {};
|
18
|
-
|
19
|
-
// Parameter variables
|
20
|
-
var selector = document.querySelector( element ) || document.querySelector( '[required]' );
|
21
|
-
|
22
|
-
// Only run if selector exists & validation is supported
|
23
|
-
if ( !selector || typeof document.createElement( 'input' ).checkValidity !== 'function' ) return false;
|
24
|
-
|
25
|
-
// Scoped variables
|
26
|
-
var options = Object.assign( {}, defaults, settings ),
|
27
|
-
docBody = document.body;
|
28
|
-
|
29
|
-
// Suppress default message bubbles
|
30
|
-
docBody.addEventListener( 'invalid', function( event ) {
|
31
|
-
event.preventDefault();
|
32
|
-
}, true );
|
33
|
-
|
34
|
-
// Run delegated `on blur` validation checks
|
35
|
-
docBody.addEventListener( 'blur', blurHandler, true );
|
36
|
-
|
37
|
-
// Run delegated `on submit` validation checks
|
38
|
-
docBody.addEventListener( 'click', submissionHandler, false );
|
39
|
-
|
40
|
-
// Blur validation handler
|
41
|
-
function blurHandler( event ) {
|
42
|
-
|
43
|
-
// Only run on non-submit inputs
|
44
|
-
if ( !matches( event.target, 'input:not([type=submit]), textarea' ) ) return false;
|
45
|
-
|
46
|
-
// Scoped variables
|
47
|
-
var element = event.target,
|
48
|
-
minWords = element.dataset.minWords,
|
49
|
-
maxWords = element.dataset.maxWords,
|
50
|
-
indicator = getClosest( element, 'label' ) || element,
|
51
|
-
validity;
|
52
|
-
|
53
|
-
// If element only contains whitespace, strip value
|
54
|
-
if ( element.value && !element.value.replace( /\s/g, '' ).length ) {
|
55
|
-
element.value = '';
|
56
|
-
}
|
57
|
-
|
58
|
-
// Remove pre-existing validation message
|
59
|
-
messageHandler( 'hide', element );
|
60
|
-
|
61
|
-
// If element has `data-min-words` attribute
|
62
|
-
if ( minWords ) {
|
63
|
-
|
64
|
-
// Run respective validation function
|
65
|
-
validateWords( 'min', element, minWords );
|
66
|
-
|
67
|
-
}
|
68
|
-
|
69
|
-
// If element has `data-min-words` attribute
|
70
|
-
if ( maxWords ) {
|
71
|
-
|
72
|
-
// Run respective validation function
|
73
|
-
validateWords( 'max', element, maxWords );
|
74
|
-
|
75
|
-
}
|
76
|
-
|
77
|
-
// Check validity
|
78
|
-
validity = element.checkValidity();
|
79
|
-
|
80
|
-
// If the element has a value but is invalid
|
81
|
-
if ( element.value && !validity ) {
|
82
|
-
|
83
|
-
// Set invalid state
|
84
|
-
indicator.classList.remove( 'valid' );
|
85
|
-
indicator.classList.add( 'invalid' );
|
86
|
-
|
87
|
-
// If the element has a value and is valid
|
88
|
-
} else if ( element.value && validity ) {
|
89
|
-
|
90
|
-
// Set valid state
|
91
|
-
indicator.classList.remove( 'invalid' );
|
92
|
-
indicator.classList.add( 'valid' );
|
93
|
-
|
94
|
-
// If the element has no value
|
95
|
-
} else if ( !element.value ) {
|
96
|
-
|
97
|
-
// Set neutral state
|
98
|
-
indicator.classList.remove( 'valid' );
|
99
|
-
indicator.classList.remove( 'invalid' );
|
100
|
-
|
101
|
-
}
|
102
|
-
|
103
|
-
}
|
104
|
-
|
105
|
-
// Submission validation handler function
|
106
|
-
function submissionHandler( event ) {
|
107
|
-
|
108
|
-
// Only run on submission
|
109
|
-
if ( !matches( event.target, 'input[type=submit], button[type=submit]' ) ) return;
|
110
|
-
|
111
|
-
// Scoped variables
|
112
|
-
var invalidForm = getClosest( event.target, 'form' ),
|
113
|
-
invalidElem = invalidForm.querySelector( 'input:invalid, textarea:invalid' ),
|
114
|
-
indicator;
|
115
|
-
|
116
|
-
// If invalid element found
|
117
|
-
if ( invalidElem ) {
|
118
|
-
|
119
|
-
// Set indicator to parent label if it exists
|
120
|
-
indicator = getClosest( invalidElem, 'label' ) || invalidElem;
|
121
|
-
|
122
|
-
// If credit card field is invalid
|
123
|
-
if ( matches( invalidElem, '[data-stripe=number]' ) ) {
|
124
|
-
|
125
|
-
// Strip it of non-number characters
|
126
|
-
invalidElem.value = invalidElem.value.replace( /[^0-9 -]/g, '' );
|
127
|
-
|
128
|
-
// Evaluate form validity again
|
129
|
-
invalidElem = invalidForm.querySelector( 'input:invalid, textarea:invalid' );
|
130
|
-
|
131
|
-
// And return if valid
|
132
|
-
if ( !invalidElem ) return;
|
133
|
-
|
134
|
-
}
|
135
|
-
|
136
|
-
// Prevent default behavior
|
137
|
-
event.preventDefault();
|
138
|
-
|
139
|
-
// If invalid is not hidden
|
140
|
-
if ( invalidElem.style.display !== 'none' ) {
|
141
|
-
|
142
|
-
// Focus it
|
143
|
-
invalidElem.focus();
|
144
|
-
|
145
|
-
// Otherwise
|
146
|
-
} else {
|
147
|
-
|
148
|
-
// Focus its immediate sibling (mostly used for upload buttons)
|
149
|
-
invalidElem.nextSibling.focus();
|
150
|
-
|
151
|
-
}
|
152
|
-
|
153
|
-
// Toggle classes
|
154
|
-
indicator.classList.remove( 'valid' );
|
155
|
-
indicator.classList.add( 'invalid' );
|
156
|
-
|
157
|
-
// Show validation message
|
158
|
-
messageHandler( 'show', invalidElem );
|
159
|
-
|
160
|
-
// Prevent Safari submission
|
161
|
-
return false;
|
162
|
-
|
163
|
-
}
|
164
|
-
|
165
|
-
}
|
166
|
-
|
167
|
-
// Validation message handler function
|
168
|
-
function messageHandler( action, element ) {
|
169
|
-
|
170
|
-
// Scoped variables
|
171
|
-
var parentForm = getClosest( element, 'form' ),
|
172
|
-
oldMessage = parentForm.querySelector( '.validation-message' ),
|
173
|
-
newMessage = element.validationMessage,
|
174
|
-
|
175
|
-
// Hide old message
|
176
|
-
hideMessage = function() {
|
177
|
-
oldMessage.parentNode.removeChild( oldMessage );
|
178
|
-
},
|
179
|
-
|
180
|
-
// Show new message
|
181
|
-
showMessage = function() {
|
182
|
-
|
183
|
-
// Find the element's parent label
|
184
|
-
var labelParent = getClosest( element, 'label' );
|
185
|
-
|
186
|
-
// If it doesn't exist, abort
|
187
|
-
if ( !labelParent ) return false;
|
188
|
-
|
189
|
-
// Otherwise, create and append the validation message
|
190
|
-
labelParent.insertAdjacentHTML( 'beforeend', '<aside class="validation-message"><p>' + newMessage + '</p></aside>' );
|
191
|
-
|
192
|
-
};
|
193
|
-
|
194
|
-
// If a `data-message` attribute exists, use it in message
|
195
|
-
if ( element.dataset.message ) newMessage = element.dataset.message;
|
196
|
-
|
197
|
-
// If hide action is passed hide old message
|
198
|
-
if ( oldMessage && action === 'hide' ) hideMessage();
|
199
|
-
|
200
|
-
// If show action is passed and no old message exists
|
201
|
-
if ( action === 'show' && !oldMessage ) {
|
202
|
-
|
203
|
-
// Show new message
|
204
|
-
showMessage();
|
205
|
-
|
206
|
-
// If show action is passed and old message exists
|
207
|
-
} else if ( action === 'show' && oldMessage ) {
|
208
|
-
|
209
|
-
// Make sure old message is not on currently invalid element
|
210
|
-
if ( oldMessage.parentNode !== element.parentNode ) {
|
211
|
-
|
212
|
-
// Hide old message
|
213
|
-
hideMessage();
|
214
|
-
|
215
|
-
// And show new message
|
216
|
-
showMessage();
|
217
|
-
|
218
|
-
// Otherwise
|
219
|
-
} else {
|
220
|
-
|
221
|
-
// Update message text on currently invalid element
|
222
|
-
oldMessage.childNodes[ 0 ].textContent = newMessage;
|
223
|
-
|
224
|
-
}
|
225
|
-
|
226
|
-
}
|
227
|
-
|
228
|
-
}
|
229
|
-
|
230
|
-
// Min- or max-words validation function
|
231
|
-
function validateWords( type, element, goal ) {
|
232
|
-
|
233
|
-
// Defaults settings to min-words
|
234
|
-
var value = element.value,
|
235
|
-
condition = wordCount( value ) < goal,
|
236
|
-
verbiage = 'at least ';
|
237
|
-
|
238
|
-
// Overwrite defaults in case of max-words
|
239
|
-
if ( type === 'max' ) {
|
240
|
-
condition = wordCount( value ) > goal;
|
241
|
-
verbiage = 'no more than ';
|
242
|
-
}
|
243
|
-
|
244
|
-
// If value exists and it meets invalid condition
|
245
|
-
if ( value && condition ) {
|
246
|
-
|
247
|
-
// Set a custom error message
|
248
|
-
element.setCustomValidity( 'Please write ' + verbiage + goal + ' words.' );
|
249
|
-
|
250
|
-
// Otherwise
|
251
|
-
} else {
|
252
|
-
|
253
|
-
// Default to normal error messaging
|
254
|
-
element.setCustomValidity( '' );
|
255
|
-
|
256
|
-
}
|
257
|
-
|
258
|
-
}
|
259
|
-
|
260
|
-
};
|
261
|
-
|
262
|
-
// Public API
|
263
|
-
module.exports = validation;
|
@@ -1,93 +0,0 @@
|
|
1
|
-
Event = require('compose-event')
|
2
|
-
/**
|
3
|
-
* Lightbox.js 0.0.2
|
4
|
-
* A lightbox plugin that makes sense
|
5
|
-
* @author Kyle Foster (@hkfoster)
|
6
|
-
* @license MIT
|
7
|
-
**/
|
8
|
-
|
9
|
-
// Transport
|
10
|
-
( function( root, factory ) {
|
11
|
-
if ( typeof define === 'function' && define.amd ) {
|
12
|
-
define( factory );
|
13
|
-
} else if ( typeof exports === 'object' ) {
|
14
|
-
module.exports = factory;
|
15
|
-
} else {
|
16
|
-
root.lightbox = factory( root );
|
17
|
-
}
|
18
|
-
})( this, function( root ) {
|
19
|
-
|
20
|
-
'use strict';
|
21
|
-
|
22
|
-
// Define global variable(s)
|
23
|
-
var lightboxTrigger = document.querySelectorAll( '[rel="lightbox"]' );
|
24
|
-
|
25
|
-
// Only run if lightbox trigger is present
|
26
|
-
if ( lightboxTrigger ) {
|
27
|
-
init();
|
28
|
-
}
|
29
|
-
|
30
|
-
// Where the magic happens
|
31
|
-
function init() {
|
32
|
-
|
33
|
-
// Preload lightbox images
|
34
|
-
for ( var imgIndex = 0; imgIndex < lightboxTrigger.length; imgIndex ++ ) {
|
35
|
-
|
36
|
-
// Create a temporary image element
|
37
|
-
var tempImg = new Image();
|
38
|
-
|
39
|
-
// And use it to load up image(s)
|
40
|
-
tempImg.src = lightboxTrigger[ imgIndex ].href;
|
41
|
-
|
42
|
-
}
|
43
|
-
|
44
|
-
// Attach our click listener
|
45
|
-
Event.on(document, 'click', '[rel="lightbox"]', openLightbox)
|
46
|
-
|
47
|
-
}
|
48
|
-
|
49
|
-
// Open lightbox function
|
50
|
-
function openLightbox( event ) {
|
51
|
-
|
52
|
-
// Prevent default behavior/bubbling
|
53
|
-
event.stopPropagation();
|
54
|
-
event.preventDefault();
|
55
|
-
|
56
|
-
// Define scoped variable(s)
|
57
|
-
var lightboxUrl = event.target.href,
|
58
|
-
lightboxCont = '<aside class="lightbox-overlay"><figure class="lightbox-content"><img src="' + lightboxUrl + '" alt=""><a class="close-btn" href="#?"></a></figure></aside>';
|
59
|
-
|
60
|
-
// Open the lightbox
|
61
|
-
document.body.insertAdjacentHTML('beforeend' lightboxCont );
|
62
|
-
|
63
|
-
// Prevent scrolling while lightbox is shown
|
64
|
-
document.body.style.overflow = 'hidden';
|
65
|
-
|
66
|
-
Event.one('.close-btn', 'click', closeLightbox)
|
67
|
-
|
68
|
-
}
|
69
|
-
|
70
|
-
// Close lightbox function
|
71
|
-
function closeLightbox( event ) {
|
72
|
-
|
73
|
-
// Prevent default behavior/bubbling
|
74
|
-
event.stopPropagation();
|
75
|
-
event.preventDefault();
|
76
|
-
|
77
|
-
// Define scoped variable(s)
|
78
|
-
var lightboxOverlay = document.querySelector( '.lightbox-overlay' ),
|
79
|
-
lightboxContent = lightboxOverlay.querySelector( '.lightbox-content' ),
|
80
|
-
|
81
|
-
// Kick off closing animation
|
82
|
-
lightboxContent.className += ' closing';
|
83
|
-
|
84
|
-
Event.one(lightboxContent, 'animationend', function() {
|
85
|
-
// Remove the lightbox from the DOM
|
86
|
-
document.body.removeChild( lightboxOverlay );
|
87
|
-
|
88
|
-
// And turn scrolling back on
|
89
|
-
document.body.style.overflow = '';
|
90
|
-
})
|
91
|
-
}
|
92
|
-
|
93
|
-
});
|