flight-for-rails 1.1.1 → 1.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/flight-for-rails/version.rb +1 -1
- data/vendor/assets/javascripts/flight/standalone.js +65 -36
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6e9f106b2d07829bdecb6ad4fd43f0162dcb8f8b
|
4
|
+
data.tar.gz: 98e6e0b82bec8458e79d452d5b32da47fdb3e2d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a86ba4fad82252740774f69464016388356f4a47e57966cadcb198a519b6f756154cd2b73bb2592e5d568ebee86f7cbf365eaf090c6a7fde0aaa1cc0d6777a13
|
7
|
+
data.tar.gz: 7594e7fee7b1d11a9ff05ada1b52da8b3122269d8c1f9c9069739c08a370ecfbb7ae34950cb5729356529980a1e9fe95ba1d7c009e19a4e644e6c6a2e14431a7
|
data/README.md
CHANGED
@@ -16,7 +16,7 @@ This gem vendors Flight files and dependecies for Rails assets pipeline.
|
|
16
16
|
First add the following lines to your application `Gemfile`:
|
17
17
|
|
18
18
|
``` ruby
|
19
|
-
gem 'flight-for-rails', '~> 1.1.
|
19
|
+
gem 'flight-for-rails', '~> 1.1.2'
|
20
20
|
```
|
21
21
|
|
22
22
|
Then run `bundle install` to update your's gems bundle.
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! Flight v1.1.
|
1
|
+
/*! Flight v1.1.2 | (c) Twitter, Inc. | MIT License */
|
2
2
|
(function(context) {
|
3
3
|
var factories = {}, loaded = {};
|
4
4
|
var isArray = Array.isArray || function(obj) {
|
@@ -196,7 +196,7 @@ define('lib/utils', [], function () {
|
|
196
196
|
return function (e, data) {
|
197
197
|
var target = $(e.target), parent;
|
198
198
|
Object.keys(rules).forEach(function (selector) {
|
199
|
-
if ((parent = target.closest(selector)).length) {
|
199
|
+
if (!e.isPropagationStopped() && (parent = target.closest(selector)).length) {
|
200
200
|
data = data || {};
|
201
201
|
data.el = parent[0];
|
202
202
|
return rules[selector].apply(this, [
|
@@ -206,6 +206,17 @@ define('lib/utils', [], function () {
|
|
206
206
|
}
|
207
207
|
}, this);
|
208
208
|
};
|
209
|
+
},
|
210
|
+
once: function (func) {
|
211
|
+
var ran, result;
|
212
|
+
return function () {
|
213
|
+
if (ran) {
|
214
|
+
return result;
|
215
|
+
}
|
216
|
+
result = func.apply(this, arguments);
|
217
|
+
ran = true;
|
218
|
+
return result;
|
219
|
+
};
|
209
220
|
}
|
210
221
|
};
|
211
222
|
return utils;
|
@@ -217,9 +228,9 @@ define('lib/utils', [], function () {
|
|
217
228
|
// ==========================================
|
218
229
|
define('lib/debug', [], function () {
|
219
230
|
'use strict';
|
220
|
-
|
231
|
+
// ==========================================
|
221
232
|
// Search object model
|
222
|
-
|
233
|
+
// ==========================================
|
223
234
|
function traverse(util, searchTerm, options) {
|
224
235
|
options = options || {};
|
225
236
|
var obj = options.obj || window;
|
@@ -294,9 +305,9 @@ define('lib/debug', [], function () {
|
|
294
305
|
function custom(fn, options) {
|
295
306
|
traverse(fn, null, options);
|
296
307
|
}
|
297
|
-
|
308
|
+
// ==========================================
|
298
309
|
// Event logging
|
299
|
-
|
310
|
+
// ==========================================
|
300
311
|
var ALL = 'all';
|
301
312
|
//no filter
|
302
313
|
//no logging by default
|
@@ -755,13 +766,11 @@ define('lib/base', [
|
|
755
766
|
}
|
756
767
|
callback = originalCb.bind(this);
|
757
768
|
callback.target = originalCb;
|
758
|
-
|
759
|
-
if (originalCb.guid) {
|
760
|
-
callback.guid = originalCb.guid;
|
761
|
-
}
|
769
|
+
callback.context = this;
|
762
770
|
$element.on(type, callback);
|
763
|
-
//
|
764
|
-
originalCb.
|
771
|
+
// store every bound version of the callback
|
772
|
+
originalCb.bound || (originalCb.bound = []);
|
773
|
+
originalCb.bound.push(callback);
|
765
774
|
return callback;
|
766
775
|
};
|
767
776
|
this.off = function () {
|
@@ -778,6 +787,16 @@ define('lib/base', [
|
|
778
787
|
$element = this.$node;
|
779
788
|
type = arguments[0];
|
780
789
|
}
|
790
|
+
if (callback) {
|
791
|
+
//set callback to version bound against this instance
|
792
|
+
callback.bound && callback.bound.some(function (fn, i, arr) {
|
793
|
+
if (fn.context && this.identity == fn.context.identity) {
|
794
|
+
arr.splice(i, 1);
|
795
|
+
callback = fn;
|
796
|
+
return true;
|
797
|
+
}
|
798
|
+
}, this);
|
799
|
+
}
|
781
800
|
return $element.off(type, callback);
|
782
801
|
};
|
783
802
|
this.resolveDelegateRules = function (ruleInfo) {
|
@@ -854,35 +873,41 @@ define('lib/logger', ['./utils'], function (utils) {
|
|
854
873
|
].join(result) : result;
|
855
874
|
}
|
856
875
|
function log(action, component, eventArgs) {
|
857
|
-
|
876
|
+
if (!window.DEBUG || !window.DEBUG.enabled)
|
877
|
+
return;
|
878
|
+
var name, eventType, elem, fn, logFilter, toRegExp, actionLoggable, nameLoggable;
|
858
879
|
if (typeof eventArgs[eventArgs.length - 1] == 'function') {
|
859
880
|
fn = eventArgs.pop();
|
860
881
|
fn = fn.unbound || fn; // use unbound version if any (better info)
|
861
882
|
}
|
862
|
-
if (
|
863
|
-
eventArgs.pop(); // trigger data arg - not logged right now
|
864
|
-
}
|
865
|
-
if (eventArgs.length == 2) {
|
866
|
-
elem = eventArgs[0];
|
867
|
-
name = eventArgs[1];
|
868
|
-
} else {
|
883
|
+
if (eventArgs.length == 1) {
|
869
884
|
elem = component.$node[0];
|
870
|
-
|
871
|
-
}
|
872
|
-
|
873
|
-
|
874
|
-
|
875
|
-
|
876
|
-
|
877
|
-
|
878
|
-
return expr.test ? expr : new RegExp('^' + expr.replace(/\*/g, '.*') + '$');
|
879
|
-
};
|
880
|
-
nameLoggable = logFilter.eventNames == 'all' || logFilter.eventNames.some(function (e) {
|
881
|
-
return toRegExp(e).test(name);
|
882
|
-
});
|
883
|
-
if (actionLoggable && nameLoggable) {
|
884
|
-
console.info(actionSymbols[action], action, '[' + name + ']', elemToString(elem), component.constructor.describe.split(' ').slice(0, 3).join(' '));
|
885
|
+
eventType = eventArgs[0];
|
886
|
+
} else if (eventArgs.length == 2) {
|
887
|
+
if (typeof eventArgs[1] == 'object' && !eventArgs[1].type) {
|
888
|
+
elem = component.$node[0];
|
889
|
+
eventType = eventArgs[0];
|
890
|
+
} else {
|
891
|
+
elem = eventArgs[0];
|
892
|
+
eventType = eventArgs[1];
|
885
893
|
}
|
894
|
+
} else {
|
895
|
+
elem = eventArgs[0];
|
896
|
+
eventType = eventArgs[1];
|
897
|
+
}
|
898
|
+
name = typeof eventType == 'object' ? eventType.type : eventType;
|
899
|
+
logFilter = DEBUG.events.logFilter;
|
900
|
+
// no regex for you, actions...
|
901
|
+
actionLoggable = logFilter.actions == 'all' || logFilter.actions.indexOf(action) > -1;
|
902
|
+
// event name filter allow wildcards or regex...
|
903
|
+
toRegExp = function (expr) {
|
904
|
+
return expr.test ? expr : new RegExp('^' + expr.replace(/\*/g, '.*') + '$');
|
905
|
+
};
|
906
|
+
nameLoggable = logFilter.eventNames == 'all' || logFilter.eventNames.some(function (e) {
|
907
|
+
return toRegExp(e).test(name);
|
908
|
+
});
|
909
|
+
if (actionLoggable && nameLoggable) {
|
910
|
+
console.info(actionSymbols[action], action, '[' + name + ']', elemToString(elem), component.constructor.describe.split(' ').slice(0, 3).join(' '));
|
886
911
|
}
|
887
912
|
}
|
888
913
|
function withLogging() {
|
@@ -919,7 +944,11 @@ define('lib/component', [
|
|
919
944
|
var componentInfo = registry.findComponentInfo(this);
|
920
945
|
componentInfo && Object.keys(componentInfo.instances).forEach(function (k) {
|
921
946
|
var info = componentInfo.instances[k];
|
922
|
-
|
947
|
+
// It's possible that a previous teardown caused another component to teardown,
|
948
|
+
// so we can't assume that the instances object is as it was.
|
949
|
+
if (info && info.instance) {
|
950
|
+
info.instance.teardown();
|
951
|
+
}
|
923
952
|
});
|
924
953
|
}
|
925
954
|
function checkSerializable(type, data) {
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flight-for-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sergey Rezvanov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-02-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -76,7 +76,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
76
76
|
version: '0'
|
77
77
|
requirements: []
|
78
78
|
rubyforge_project:
|
79
|
-
rubygems_version: 2.0.
|
79
|
+
rubygems_version: 2.0.6
|
80
80
|
signing_key:
|
81
81
|
specification_version: 4
|
82
82
|
summary: Flight javascript framework for Rails assets pipeline
|