zepto-for-rails 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7252e6c17ecce50b304f9e2d3e4a73fc7520a975
4
- data.tar.gz: 679350aa1edeb936ba56a9f654d0079aac272922
3
+ metadata.gz: e75d4cd33cf8e2adb3da52ff54b075f43c301f80
4
+ data.tar.gz: 8172bd92adfc7d88566c577335bd8f41473a54a8
5
5
  SHA512:
6
- metadata.gz: 54dea779c9ca8c7ac6327286da4f0d209191196d77fbf4d0a34284da3ed6528b1c542566d6b8711147ec2b48dd30c258ab73117efe47f137ad5cd5b0166e747e
7
- data.tar.gz: edd229021fae89ec19813f5b81795abc31b6c6ee4efa5f641bc9bdc10fa83a2e42f25c969f057cd252ed83f32b977c26336d999fd667ec80850418601085a3df
6
+ metadata.gz: ac5006327ce3c965f879bc7819af64039e899ab53b7ef7f9ad4a6cf305fba534e2328928b52f9a1b6cb1dfdfa17b26c884391453f65923aeac4da7769b127ef4
7
+ data.tar.gz: 6bd564b6daa0d52b0a9fa4330b9a111a5c45177857ce4ca929923a68657a4eb23401aa60b2a1132c2f78eb458f771bfaaa78aaeb168f741f43456e5ab6b0cf6d
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source "http://rubygems.org"
1
+ source 'http://rubygems.org'
2
2
 
3
3
  # Declare your gem's dependencies in zepto-rails.gemspec.
4
4
  # Bundler will treat runtime dependencies like base dependencies, and
@@ -9,6 +9,3 @@ gemspec
9
9
  # your gemspec. These might include edge Rails or gems from your path or
10
10
  # Git. Remember to move these dependencies to your gemspec before releasing
11
11
  # your gem to rubygems.org.
12
-
13
- # To use debugger
14
- # gem 'ruby-debug19', :require => 'ruby-debug'
data/README.md CHANGED
@@ -1,8 +1,5 @@
1
- # zepto-rails [![Gem Version](https://badge.fury.io/rb/zepto-for-rails.png)](http://badge.fury.io/rb/zepto-for-rails)
2
- Zepto for the Rails asset pipeline. This gem provides Zepto 1.1.4. Based upon the wonderful gem: [zepto-rails](https://github.com/packetman/zepto-rails), which is not maintained anymore.
3
-
4
-
5
- All credits for [https://github.com/packetman](packetman) for creating this gem in the first place.
1
+ # zepto-for-rails [![Gem Version](https://badge.fury.io/rb/zepto-for-rails.png)](http://badge.fury.io/rb/zepto-for-rails)
2
+ Zepto for the Rails asset pipeline. This gem provides Zepto 1.1.5
6
3
 
7
4
  ## Installation
8
5
  Add zepto-for-rails to the Gemfile.
@@ -11,7 +8,7 @@ Add zepto-for-rails to the Gemfile.
11
8
  gem 'zepto-for-rails'
12
9
  ```
13
10
 
14
- And run `bundle install`. Then add this lines to your `app/assets/javascripts/application.js`:
11
+ And run `bundle install`. Then add this line to your `app/assets/javascripts/application.js`:
15
12
 
16
13
  ```
17
14
  //= require zepto
data/Rakefile CHANGED
@@ -14,7 +14,7 @@ end
14
14
 
15
15
  RDoc::Task.new(:rdoc) do |rdoc|
16
16
  rdoc.rdoc_dir = 'rdoc'
17
- rdoc.title = 'ZeptoRails'
17
+ rdoc.title = 'ZeptoForRails'
18
18
  rdoc.options << '--line-numbers'
19
19
  rdoc.rdoc_files.include('README.rdoc')
20
20
  rdoc.rdoc_files.include('lib/**/*.rb')
@@ -3,4 +3,4 @@ module Zepto
3
3
  class Engine < ::Rails::Engine
4
4
  end
5
5
  end
6
- end
6
+ end
@@ -1,5 +1,5 @@
1
1
  module Zepto
2
2
  module Rails
3
- VERSION = '0.2.1'
3
+ VERSION = '0.2.2'
4
4
  end
5
5
  end
data/lib/zepto/rails.rb CHANGED
@@ -1,2 +1,2 @@
1
1
  require 'zepto/rails/engine'
2
- require 'zepto/rails/version'
2
+ require 'zepto/rails/version'
@@ -1,4 +1,4 @@
1
- /* Zepto v1.1.4 - zepto event ajax form ie - zeptojs.com/license */
1
+ /* Zepto v1.1.5 - zepto event ajax form ie - zeptojs.com/license */
2
2
 
3
3
  var Zepto = (function() {
4
4
  var undefined, key, $, classList, emptyArray = [], slice = emptyArray.slice, filter = emptyArray.filter,
@@ -286,7 +286,7 @@ var Zepto = (function() {
286
286
 
287
287
  // access className property while respecting SVGAnimatedString
288
288
  function className(node, value){
289
- var klass = node.className,
289
+ var klass = node.className || '',
290
290
  svg = klass && klass.baseVal !== undefined
291
291
 
292
292
  if (value === undefined) return svg ? klass.baseVal : klass
@@ -308,7 +308,7 @@ var Zepto = (function() {
308
308
  value == "true" ||
309
309
  ( value == "false" ? false :
310
310
  value == "null" ? null :
311
- !/^0/.test(value) && !isNaN(num = Number(value)) ? num :
311
+ +value + "" == value ? +value :
312
312
  /^[\[\{]/.test(value) ? $.parseJSON(value) :
313
313
  value )
314
314
  : value
@@ -476,7 +476,7 @@ var Zepto = (function() {
476
476
  },
477
477
  find: function(selector){
478
478
  var result, $this = this
479
- if (!selector) result = []
479
+ if (!selector) result = $()
480
480
  else if (typeof selector == 'object')
481
481
  result = $(selector).filter(function(){
482
482
  var node = this
@@ -617,7 +617,9 @@ var Zepto = (function() {
617
617
  })
618
618
  },
619
619
  removeAttr: function(name){
620
- return this.each(function(){ this.nodeType === 1 && setAttribute(this, name) })
620
+ return this.each(function(){ this.nodeType === 1 && name.split(' ').forEach(function(attribute){
621
+ setAttribute(this, attribute)
622
+ }, this)})
621
623
  },
622
624
  prop: function(name, value){
623
625
  name = propMap[name] || name
@@ -670,13 +672,14 @@ var Zepto = (function() {
670
672
  },
671
673
  css: function(property, value){
672
674
  if (arguments.length < 2) {
673
- var element = this[0], computedStyle = getComputedStyle(element, '')
675
+ var computedStyle, element = this[0]
674
676
  if(!element) return
677
+ computedStyle = getComputedStyle(element, '')
675
678
  if (typeof property == 'string')
676
679
  return element.style[camelize(property)] || computedStyle.getPropertyValue(property)
677
680
  else if (isArray(property)) {
678
681
  var props = {}
679
- $.each(isArray(property) ? property: [property], function(_, prop){
682
+ $.each(property, function(_, prop){
680
683
  props[prop] = (element.style[camelize(prop)] || computedStyle.getPropertyValue(prop))
681
684
  })
682
685
  return props
@@ -711,6 +714,7 @@ var Zepto = (function() {
711
714
  addClass: function(name){
712
715
  if (!name) return this
713
716
  return this.each(function(idx){
717
+ if (!('className' in this)) return
714
718
  classList = []
715
719
  var cls = className(this), newName = funcArg(this, name, idx, cls)
716
720
  newName.split(/\s+/g).forEach(function(klass){
@@ -721,6 +725,7 @@ var Zepto = (function() {
721
725
  },
722
726
  removeClass: function(name){
723
727
  return this.each(function(idx){
728
+ if (!('className' in this)) return
724
729
  if (name === undefined) return className(this, '')
725
730
  classList = className(this)
726
731
  funcArg(this, name, idx, classList).split(/\s+/g).forEach(function(klass){
@@ -1105,8 +1110,10 @@ window.$ === undefined && (window.$ = Zepto)
1105
1110
  event = (isString(event) || $.isPlainObject(event)) ? $.Event(event) : compatible(event)
1106
1111
  event._args = args
1107
1112
  return this.each(function(){
1113
+ // handle focus(), blur() by calling them directly
1114
+ if (event.type in focus && typeof this[event.type] == "function") this[event.type]()
1108
1115
  // items in the collection might not be DOM elements
1109
- if('dispatchEvent' in this) this.dispatchEvent(event)
1116
+ else if ('dispatchEvent' in this) this.dispatchEvent(event)
1110
1117
  else $(this).triggerHandler(event, args)
1111
1118
  })
1112
1119
  }
@@ -1128,27 +1135,16 @@ window.$ === undefined && (window.$ = Zepto)
1128
1135
  }
1129
1136
 
1130
1137
  // shortcut methods for `.bind(event, fn)` for each event type
1131
- ;('focusin focusout load resize scroll unload click dblclick '+
1138
+ ;('focusin focusout focus blur load resize scroll unload click dblclick '+
1132
1139
  'mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave '+
1133
1140
  'change select keydown keypress keyup error').split(' ').forEach(function(event) {
1134
1141
  $.fn[event] = function(callback) {
1135
- return callback ?
1142
+ return (0 in arguments) ?
1136
1143
  this.bind(event, callback) :
1137
1144
  this.trigger(event)
1138
1145
  }
1139
1146
  })
1140
1147
 
1141
- ;['focus', 'blur'].forEach(function(name) {
1142
- $.fn[name] = function(callback) {
1143
- if (callback) this.bind(name, callback)
1144
- else this.each(function(){
1145
- try { this[name]() }
1146
- catch(e) {}
1147
- })
1148
- return this
1149
- }
1150
- })
1151
-
1152
1148
  $.Event = function(type, props) {
1153
1149
  if (!isString(type)) props = type, type = props.type
1154
1150
  var event = document.createEvent(specialEvents[type] || 'Events'), bubbles = true
@@ -1341,13 +1337,17 @@ window.$ === undefined && (window.$ = Zepto)
1341
1337
 
1342
1338
  $.ajax = function(options){
1343
1339
  var settings = $.extend({}, options || {}),
1344
- deferred = $.Deferred && $.Deferred()
1340
+ deferred = $.Deferred && $.Deferred(),
1341
+ urlAnchor
1345
1342
  for (key in $.ajaxSettings) if (settings[key] === undefined) settings[key] = $.ajaxSettings[key]
1346
1343
 
1347
1344
  ajaxStart(settings)
1348
1345
 
1349
- if (!settings.crossDomain) settings.crossDomain = /^([\w-]+:)?\/\/([^\/]+)/.test(settings.url) &&
1350
- RegExp.$2 != window.location.host
1346
+ if (!settings.crossDomain) {
1347
+ urlAnchor = document.createElement('a')
1348
+ urlAnchor.href = settings.url
1349
+ settings.crossDomain = (window.location.protocol + '//' + window.location.host) !== (urlAnchor.protocol + '//' + urlAnchor.host)
1350
+ }
1351
1351
 
1352
1352
  if (!settings.url) settings.url = window.location.toString()
1353
1353
  serializeData(settings)
@@ -1501,7 +1501,11 @@ window.$ === undefined && (window.$ = Zepto)
1501
1501
 
1502
1502
  $.param = function(obj, traditional){
1503
1503
  var params = []
1504
- params.add = function(k, v){ this.push(escape(k) + '=' + escape(v)) }
1504
+ params.add = function(key, value) {
1505
+ if ($.isFunction(value)) value = value()
1506
+ if (value == null) value = ""
1507
+ this.push(escape(key) + '=' + escape(value))
1508
+ }
1505
1509
  serialize(params, obj, traditional)
1506
1510
  return params.join('&').replace(/%20/g, '+')
1507
1511
  }
@@ -1509,17 +1513,17 @@ window.$ === undefined && (window.$ = Zepto)
1509
1513
 
1510
1514
  ;(function($){
1511
1515
  $.fn.serializeArray = function() {
1512
- var result = [], el
1513
- $([].slice.call(this.get(0).elements)).each(function(){
1514
- el = $(this)
1515
- var type = el.attr('type')
1516
- if (this.nodeName.toLowerCase() != 'fieldset' &&
1517
- !this.disabled && type != 'submit' && type != 'reset' && type != 'button' &&
1518
- ((type != 'radio' && type != 'checkbox') || this.checked))
1519
- result.push({
1520
- name: el.attr('name'),
1521
- value: el.val()
1522
- })
1516
+ var el, name, type, result = [],
1517
+ add = function(value) {
1518
+ if (value.forEach) return value.forEach(add)
1519
+ result.push({ name: name, value: value })
1520
+ }
1521
+ if (this[0]) $.each(this[0].elements, function(_, field){
1522
+ type = field.type, name = field.name
1523
+ if (name && field.nodeName.toLowerCase() != 'fieldset' &&
1524
+ !field.disabled && type != 'submit' && type != 'reset' && type != 'button' && type != 'file' &&
1525
+ ((type != 'radio' && type != 'checkbox') || field.checked))
1526
+ add($(field).val())
1523
1527
  })
1524
1528
  return result
1525
1529
  }
@@ -1533,7 +1537,7 @@ window.$ === undefined && (window.$ = Zepto)
1533
1537
  }
1534
1538
 
1535
1539
  $.fn.submit = function(callback) {
1536
- if (callback) this.bind('submit', callback)
1540
+ if (0 in arguments) this.bind('submit', callback)
1537
1541
  else if (this.length) {
1538
1542
  var event = $.Event('submit')
1539
1543
  this.eq(0).trigger(event)
@@ -1,22 +1,22 @@
1
- $:.push File.expand_path("../lib", __FILE__)
1
+ $:.push File.expand_path('../lib', __FILE__)
2
2
 
3
- # Maintain your gem"s version:
4
- require "zepto/rails/version"
3
+ # Maintain your gem's version:
4
+ require 'zepto/rails/version'
5
5
 
6
6
  # Describe your gem and declare its dependencies:
7
7
  Gem::Specification.new do |s|
8
- s.name = "zepto-for-rails"
8
+ s.name = 'zepto-for-rails'
9
9
  s.version = Zepto::Rails::VERSION
10
- s.authors = ["Stefan Vermaas"]
11
- s.email = ["stefan@yellowduckwebdesign.nl"]
12
- s.homepage = "https://github.com/stefanvermaas/zepto-rails"
13
- s.summary = "Zepto.js for the rails asset pipeline"
14
- s.description = "Provides a the zepto.js for the rails asset pipeline"
10
+ s.authors = ['Stefan Vermaas']
11
+ s.email = ['stefanvermaas1991@gmail.com']
12
+ s.homepage = 'https://github.com/stefanvermaas/zepto-for-rails'
13
+ s.summary = 'Zepto.js for the rails asset pipeline'
14
+ s.description = 'Provides a the zepto.js for the rails asset pipeline'
15
15
  s.licenses = ['MIT']
16
16
 
17
17
  s.add_runtime_dependency 'rails', '~> 3.1'
18
18
 
19
19
  s.files = `git ls-files`.split("\n")
20
20
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
21
- s.require_path = "lib"
21
+ s.require_path = 'lib'
22
22
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zepto-for-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefan Vermaas
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-04 00:00:00.000000000 Z
11
+ date: 2014-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -26,7 +26,7 @@ dependencies:
26
26
  version: '3.1'
27
27
  description: Provides a the zepto.js for the rails asset pipeline
28
28
  email:
29
- - stefan@yellowduckwebdesign.nl
29
+ - stefanvermaas1991@gmail.com
30
30
  executables: []
31
31
  extensions: []
32
32
  extra_rdoc_files: []
@@ -42,7 +42,7 @@ files:
42
42
  - lib/zepto/rails/version.rb
43
43
  - vendor/assets/javascripts/zepto.js
44
44
  - zepto-for-rails.gemspec
45
- homepage: https://github.com/stefanvermaas/zepto-rails
45
+ homepage: https://github.com/stefanvermaas/zepto-for-rails
46
46
  licenses:
47
47
  - MIT
48
48
  metadata: {}