ende 0.5.20 → 0.5.21
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/component.json +1 -1
- data/components/indefinido/indemma/master/.gitignore +17 -0
- data/components/indefinido/indemma/master/.ruby-gemset +1 -0
- data/components/indefinido/indemma/master/.ruby-version +1 -0
- data/components/indefinido/indemma/master/Gemfile +12 -0
- data/components/indefinido/indemma/master/Guardfile +39 -0
- data/components/indefinido/indemma/master/History.md +0 -0
- data/components/indefinido/indemma/master/Readme.md +445 -0
- data/components/indefinido/indemma/master/build/development.js +26123 -0
- data/components/indefinido/indemma/master/build/release.js +16741 -0
- data/components/indefinido/indemma/master/build/test.js +26123 -0
- data/components/indefinido/indemma/master/component.json +1 -1
- data/components/indefinido/indemma/master/components/chaijs/assertion-error/1.0.0/component.json +18 -0
- data/components/indefinido/indemma/master/components/chaijs/assertion-error/1.0.0/index.js +110 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/.gitignore +22 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/.mailmap +1 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/.npmignore +14 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/.travis.yml +14 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/CONTRIBUTING.md +173 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/History.md +895 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/Makefile +93 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/README.md +99 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/ReleaseNotes.md +482 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/bower.json +27 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/chai.js +4782 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/component.json +50 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/index.js +1 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/karma.conf.js +28 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/karma.sauce.js +41 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/assertion.js +130 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/config.js +50 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/core/assertions.js +1314 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/interface/assert.js +1056 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/interface/expect.js +12 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/interface/should.js +78 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/addChainableMethod.js +111 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/addMethod.js +43 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/addProperty.js +40 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/flag.js +32 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/getActual.js +18 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/getEnumerableProperties.js +25 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/getMessage.js +49 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/getName.js +20 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/getPathValue.js +102 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/getProperties.js +35 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/index.js +114 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/inspect.js +320 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/objDisplay.js +49 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/overwriteChainableMethod.js +53 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/overwriteMethod.js +51 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/overwriteProperty.js +54 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/test.js +26 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/transferFlags.js +44 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai/utils/type.js +45 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/lib/chai.js +87 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/package.json +42 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/sauce.browsers.js +128 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/support/sauce/sauce_connect_block.sh +7 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/support/sauce/sauce_connect_setup.sh +53 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/assert.js +638 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/auth/.gitkeep +0 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/bootstrap/index.js +22 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/bootstrap/karma.js +22 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/configuration.js +133 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/display/errors.js +14 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/display/message.js +47 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/expect.js +814 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/globalShould.js +15 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/plugins.js +24 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/should.js +744 -0
- data/components/indefinido/indemma/master/components/chaijs/chai/1.9.1/test/utilities.js +309 -0
- data/components/indefinido/indemma/master/components/chaijs/deep-eql/0.1.3/component.json +20 -0
- data/components/indefinido/indemma/master/components/chaijs/deep-eql/0.1.3/lib/eql.js +257 -0
- data/components/indefinido/indemma/master/components/chaijs/type-detect/0.1.1/component.json +18 -0
- data/components/indefinido/indemma/master/components/chaijs/type-detect/0.1.1/lib/type.js +142 -0
- data/components/indefinido/indemma/master/components/component/bind/1.0.0/component.json +14 -0
- data/components/indefinido/indemma/master/components/component/bind/1.0.0/index.js +23 -0
- data/components/indefinido/indemma/master/components/component/jquery/1.0.0/component.json +10 -0
- data/components/indefinido/indemma/master/components/component/jquery/1.0.0/index.js +10308 -0
- data/components/indefinido/indemma/master/components/component/type/1.0.0/component.json +20 -0
- data/components/indefinido/indemma/master/components/component/type/1.0.0/index.js +32 -0
- data/components/indefinido/indemma/master/components/indefinido/advisable/master/component.json +21 -0
- data/components/indefinido/indemma/master/components/indefinido/advisable/master/index.js +1 -0
- data/components/indefinido/indemma/master/components/indefinido/advisable/master/lib/advisable.js +60 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/component.json +39 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/index.js +1 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/adapters/rivets.js +40 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/legacy/notifierable.js +145 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/legacy/schedulerable.js +147 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/lookup.js +38 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/observable/keypath_observer.js +38 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/observable/observation.js +45 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/observable/selection.js +57 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/observable/self_observer.js +38 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/observable.js +97 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/lib/platform.js +12 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/vendor/observe-js/observe.js +1631 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/vendor/shims/accessors-legacy.js +92 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/vendor/shims/accessors.js +248 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/vendor/shims/array.indexOf.js +8 -0
- data/components/indefinido/indemma/master/components/indefinido/observable/es6-modules/vendor/shims/object.create.js +77 -0
- data/components/indefinido/indemma/master/components/pluma/assimilate/0.4.0/component.json +25 -0
- data/components/indefinido/indemma/master/components/pluma/assimilate/0.4.0/dist/assimilate.js +127 -0
- data/components/indefinido/indemma/master/karma.conf.js +75 -0
- data/components/indefinido/indemma/master/lib/record/associable.js +4 -2
- data/components/indefinido/indemma/master/lib/record/dirtyable.js +1 -1
- data/components/indefinido/indemma/master/package.json +9 -0
- data/components/indefinido/indemma/master/spec/record/associable_spec.js +211 -0
- data/components/indefinido/indemma/master/spec/record/dirtyable_spec.js +57 -0
- data/components/indefinido/indemma/master/spec/record/maid_spec.js +40 -0
- data/components/indefinido/indemma/master/spec/record/persistable_spec.js +46 -0
- data/components/indefinido/indemma/master/spec/record/queryable_spec.js +39 -0
- data/components/indefinido/indemma/master/spec/record/resource_spec.js +93 -0
- data/components/indefinido/indemma/master/spec/record/rest_spec.js +32 -0
- data/components/indefinido/indemma/master/spec/record/restfulable_spec.js +346 -0
- data/components/indefinido/indemma/master/spec/record/scopable_spec.js +242 -0
- data/components/indefinido/indemma/master/spec/record/storable_spec.js +44 -0
- data/components/indefinido/indemma/master/spec/record/translationable.js +28 -0
- data/components/indefinido/indemma/master/spec/record/validatable_spec.js +142 -0
- data/components/indefinido/indemma/master/spec/record/validations/associated_spec.js +43 -0
- data/components/indefinido/indemma/master/spec/record/validations/confirmation_spec.js +36 -0
- data/components/indefinido/indemma/master/spec/record/validations/cpf_spec.js +34 -0
- data/components/indefinido/indemma/master/spec/record/validations/presence_spec.js +28 -0
- data/components/indefinido/indemma/master/spec/record/validations/remote_spec.js +87 -0
- data/components/indefinido/indemma/master/spec/record/validations/type_spec.js +48 -0
- data/components/indefinido/indemma/master/spec/record_spec.js +49 -0
- data/components/indefinido/indemma/master/spec/spec_helper.js +15 -0
- data/components/indefinido/indemma/master/spec/support/value_objects/phone.js +45 -0
- data/components/indefinido/indemma/master/src/lib/extensions/rivets.coffee +17 -0
- data/components/indefinido/indemma/master/src/lib/record/associable.coffee +419 -0
- data/components/indefinido/indemma/master/src/lib/record/dirtyable.coffee +47 -0
- data/components/indefinido/indemma/master/src/lib/record/errors.coffee +20 -0
- data/components/indefinido/indemma/master/src/lib/record/maid.coffee +16 -0
- data/components/indefinido/indemma/master/src/lib/record/persistable.coffee +34 -0
- data/components/indefinido/indemma/master/src/lib/record/queryable.coffee +29 -0
- data/components/indefinido/indemma/master/src/lib/record/resource.coffee +107 -0
- data/components/indefinido/indemma/master/src/lib/record/rest.coffee +34 -0
- data/components/indefinido/indemma/master/src/lib/record/restfulable.coffee +487 -0
- data/components/indefinido/indemma/master/src/lib/record/scopable.coffee +279 -0
- data/components/indefinido/indemma/master/src/lib/record/storable.coffee +49 -0
- data/components/indefinido/indemma/master/src/lib/record/translationable.coffee +18 -0
- data/components/indefinido/indemma/master/src/lib/record/validatable.coffee +241 -0
- data/components/indefinido/indemma/master/src/lib/record/validations/associated.coffee +34 -0
- data/components/indefinido/indemma/master/src/lib/record/validations/confirmation.coffee +17 -0
- data/components/indefinido/indemma/master/src/lib/record/validations/cpf.coffee +57 -0
- data/components/indefinido/indemma/master/src/lib/record/validations/presence.coffee +16 -0
- data/components/indefinido/indemma/master/src/lib/record/validations/remote.coffee +61 -0
- data/components/indefinido/indemma/master/src/lib/record/validations/type.coffee +31 -0
- data/components/indefinido/indemma/master/src/lib/record/validations/validatorable.coffee +5 -0
- data/components/indefinido/indemma/master/src/lib/record.coffee +143 -0
- data/components/indefinido/indemma/master/src/spec/record/associable_spec.coffee +205 -0
- data/components/indefinido/indemma/master/src/spec/record/dirtyable_spec.coffee +47 -0
- data/components/indefinido/indemma/master/src/spec/record/maid_spec.coffee +34 -0
- data/components/indefinido/indemma/master/src/spec/record/persistable_spec.coffee +39 -0
- data/components/indefinido/indemma/master/src/spec/record/queryable_spec.coffee +33 -0
- data/components/indefinido/indemma/master/src/spec/record/resource_spec.coffee +69 -0
- data/components/indefinido/indemma/master/src/spec/record/rest_spec.coffee +22 -0
- data/components/indefinido/indemma/master/src/spec/record/restfulable_spec.coffee +257 -0
- data/components/indefinido/indemma/master/src/spec/record/scopable_spec.coffee +227 -0
- data/components/indefinido/indemma/master/src/spec/record/storable_spec.coffee +39 -0
- data/components/indefinido/indemma/master/src/spec/record/translationable.coffee +19 -0
- data/components/indefinido/indemma/master/src/spec/record/validatable_spec.coffee +127 -0
- data/components/indefinido/indemma/master/src/spec/record/validations/associated_spec.coffee +35 -0
- data/components/indefinido/indemma/master/src/spec/record/validations/confirmation_spec.coffee +25 -0
- data/components/indefinido/indemma/master/src/spec/record/validations/cpf_spec.coffee +27 -0
- data/components/indefinido/indemma/master/src/spec/record/validations/presence_spec.coffee +24 -0
- data/components/indefinido/indemma/master/src/spec/record/validations/remote_spec.coffee +74 -0
- data/components/indefinido/indemma/master/src/spec/record/validations/type_spec.coffee +33 -0
- data/components/indefinido/indemma/master/src/spec/record_spec.coffee +29 -0
- data/components/indefinido/indemma/master/src/spec/spec_helper.coffee +11 -0
- data/components/indefinido/indemma/master/src/spec/support/value_objects/phone.coffee +30 -0
- data/components/indefinido/indemma/master/vendor/object/mixin.js +196 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/assert.js +199 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/behavior.js +334 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/call.js +205 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/collection.js +155 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/match.js +245 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/mock.js +451 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/sandbox.js +144 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/spy.js +413 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/stub.js +161 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/test.js +77 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/test_case.js +99 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/util/event.js +94 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/util/fake_server.js +212 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/util/fake_server_with_clock.js +83 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/util/fake_timers.js +405 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/util/fake_xdomain_request.js +206 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/util/fake_xml_http_request.js +575 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/util/timers_ie.js +31 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/util/xdr_ie.js +14 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon/util/xhr_ie.js +19 -0
- data/components/indefinido/indemma/master/vendor/spec/sinon.js +383 -0
- data/lib/assets/javascripts/value_objects/phone.js.coffee +3 -1
- data/lib/assets/javascripts/widgets/viewer/plugins/scopable.js.coffee +5 -5
- data/lib/ende/version.rb +1 -1
- data/vendor/assets/components/ende_build.css +4 -4
- data/vendor/assets/components/ende_build.js +7974 -7889
- metadata +191 -5
- data/vendor/assets/component/build.css +0 -112
- data/vendor/assets/components/build.css +0 -112
- data/vendor/assets/components/indemma_with_none.js +0 -30553
@@ -0,0 +1,92 @@
|
|
1
|
+
/*
|
2
|
+
* Xccessors Legacy: Cross-browser legacy non-standard accessors
|
3
|
+
* http://github.com/eligrey/Xccessors
|
4
|
+
*
|
5
|
+
* 2010-03-21
|
6
|
+
*
|
7
|
+
* By Elijah Grey, http://eligrey.com
|
8
|
+
*
|
9
|
+
* A shim that implements __defineGetter__, __defineSetter__, __lookupGetter__,
|
10
|
+
* and __lookupSetter__
|
11
|
+
* in browsers that have ECMAScript 5 accessor support but not the legacy methods.
|
12
|
+
*
|
13
|
+
* Public Domain.
|
14
|
+
* NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
|
15
|
+
*/
|
16
|
+
|
17
|
+
/*global Element, Window, HTMLDocument */
|
18
|
+
|
19
|
+
/*jslint white: true, undef: true, nomen: true, eqeqeq: true, bitwise: true, regexp: true,
|
20
|
+
strict: true, newcap: true, immed: true, maxlen: 90 */
|
21
|
+
|
22
|
+
/*! @source http://purl.eligrey.com/github/Xccessors/blob/master/xccessors-legacy.js*/
|
23
|
+
|
24
|
+
"use strict";
|
25
|
+
|
26
|
+
(function () {
|
27
|
+
var
|
28
|
+
defineProp = Object.defineProperty,
|
29
|
+
getProp = Object.getOwnPropertyDescriptor,
|
30
|
+
|
31
|
+
// methods being implemented
|
32
|
+
methods = [
|
33
|
+
"__defineGetter__", "__defineSetter__", "__lookupGetter__", "__lookupSetter__"
|
34
|
+
],
|
35
|
+
|
36
|
+
// objects to implement legacy methods onto their prototypes
|
37
|
+
// Object.prototype[method] doesn't work on everything for IE
|
38
|
+
extend = [Object, String, Array, Function, Boolean, Number,
|
39
|
+
RegExp, Date, Error],
|
40
|
+
len = extend.length,
|
41
|
+
proto = "prototype",
|
42
|
+
extendMethod = function (method, fun) {
|
43
|
+
var i = len;
|
44
|
+
if (!(method in {})) {
|
45
|
+
while (i--) {
|
46
|
+
defineProp(extend[i][proto], method, {value: fun, enumerable: false})
|
47
|
+
}
|
48
|
+
}
|
49
|
+
};
|
50
|
+
|
51
|
+
// IE8 Does not support enumerable key so we abort!
|
52
|
+
// TODO Fix this without cluttering the prototype
|
53
|
+
try {defineProp({}, 'domo', {value: true, enumerable: false})} catch (e) {return;}
|
54
|
+
|
55
|
+
// IE7 Does not have Element, Window defined, so we check here
|
56
|
+
if (typeof Element != 'undefined') extend.push(Element);
|
57
|
+
if (typeof Window != 'undefined') extend.push(Window);
|
58
|
+
|
59
|
+
// IE9 Does not have html document defined, so we check here
|
60
|
+
if (typeof HTMLDocument != 'undefined') extend.push(HTMLDocument);
|
61
|
+
|
62
|
+
|
63
|
+
if (defineProp) {
|
64
|
+
extendMethod(methods[0], function (prop, fun) { // __defineGetter__
|
65
|
+
defineProp(this, prop, { get: fun });
|
66
|
+
});
|
67
|
+
|
68
|
+
extendMethod(methods[1], function (prop, fun) { // __defineSetter__
|
69
|
+
defineProp(this, prop, { set: fun });
|
70
|
+
});
|
71
|
+
}
|
72
|
+
|
73
|
+
if (getProp && !defineProp.requiresDomElement) {
|
74
|
+
extendMethod(methods[2], function (prop) { // __lookupGetter__
|
75
|
+
var descriptor = getProp(this, prop);
|
76
|
+
if (descriptor && descriptor.get) return descriptor.get;
|
77
|
+
|
78
|
+
// look in prototype too
|
79
|
+
descriptor = getProp(this.constructor[proto], prop);
|
80
|
+
if (descriptor && descriptor.get) return descriptor.get;
|
81
|
+
});
|
82
|
+
|
83
|
+
extendMethod(methods[3], function (prop) { // __lookupSetter__
|
84
|
+
var descriptor = getProp(this, prop);
|
85
|
+
if (descriptor && descriptor.set) return descriptor.set;
|
86
|
+
|
87
|
+
// look in prototype too
|
88
|
+
descriptor = getProp(this.constructor[proto], prop);
|
89
|
+
if (descriptor && descriptor.set) return descriptor.set;
|
90
|
+
});
|
91
|
+
}
|
92
|
+
}());
|
@@ -0,0 +1,248 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
(function () {
|
4
|
+
// Cache native objects for better performacy and easy to use
|
5
|
+
// references
|
6
|
+
var ObjectProto = Object.prototype,
|
7
|
+
hasOwnProp = ObjectProto.hasOwnProperty,
|
8
|
+
getProp = Object.getOwnPropertyDescriptor,
|
9
|
+
defineProp = Object.defineProperty,
|
10
|
+
objectCreate = Object.create,
|
11
|
+
toStrings = [],
|
12
|
+
features = null,
|
13
|
+
stack = [], detach,
|
14
|
+
fixedOwnProperty,
|
15
|
+
prototypeBase = [Object, String, Array, Function, Boolean, Number, RegExp, Date, Error];
|
16
|
+
|
17
|
+
// IE7 Does not have Element and Window defined, so only add them if
|
18
|
+
// they exists check here
|
19
|
+
if (typeof Element != 'undefined') prototypeBase.push(Element);
|
20
|
+
if (typeof Window != 'undefined') prototypeBase.push(Window);
|
21
|
+
|
22
|
+
features = {
|
23
|
+
allowsNonEnumerableProperty: function () {
|
24
|
+
var broken = false;
|
25
|
+
try {
|
26
|
+
defineProp({}, 'x', {})
|
27
|
+
} catch(e) {
|
28
|
+
broken = true;
|
29
|
+
}
|
30
|
+
|
31
|
+
return (!broken) && (!!defineProp);
|
32
|
+
},
|
33
|
+
supportsOnPropertyChangeEvent: function () {
|
34
|
+
var test = document.createElement('domo');
|
35
|
+
return 'onpropertychange' in test
|
36
|
+
}
|
37
|
+
}
|
38
|
+
|
39
|
+
if (!features.allowsNonEnumerableProperty() && features.supportsOnPropertyChangeEvent()) {
|
40
|
+
|
41
|
+
// Check if node is on document
|
42
|
+
var inDocument = function inDocument (node) {
|
43
|
+
var curr = node;
|
44
|
+
while (curr != null) {
|
45
|
+
curr = curr.parentNode;
|
46
|
+
if (curr == document) return true;
|
47
|
+
}
|
48
|
+
return false;
|
49
|
+
},
|
50
|
+
|
51
|
+
// Generate property event handler for setting some property
|
52
|
+
generate_setter = function generate_setter (object, property, descriptor) {
|
53
|
+
var setter = function object_define_property_shim_change_listener (event) {
|
54
|
+
var current_value, changed_value;
|
55
|
+
if (
|
56
|
+
// if we are setting this property
|
57
|
+
event.propertyName == property
|
58
|
+
|
59
|
+
// prevent firing setters again
|
60
|
+
// by checking callstack
|
61
|
+
&& stack.indexOf(property) === -1
|
62
|
+
) {
|
63
|
+
// Remove the event so it doesn't fire again and
|
64
|
+
// create a loop
|
65
|
+
object.detachEvent("onpropertychange", setter);
|
66
|
+
|
67
|
+
// If detaching the current setter
|
68
|
+
// just remove the event listener
|
69
|
+
if (detach) return;
|
70
|
+
|
71
|
+
// get the changed value, run it through the set function
|
72
|
+
changed_value = object[property];
|
73
|
+
descriptor.set.call(object, changed_value);
|
74
|
+
|
75
|
+
// Restore get function if:
|
76
|
+
// it was mentioned on definition
|
77
|
+
// there's no falsey value, in that case we just need to return falsey value
|
78
|
+
// current toString is not the getter, to prevent further unecessary redefinitions
|
79
|
+
if (descriptor.get && descriptor.value && descriptor.value.toString != descriptor.bound_getter) {
|
80
|
+
// TODO if (descriptor.get + '' === 'undefined') descriptor.get = ''; // Handle undefined getter
|
81
|
+
descriptor.value.toString = descriptor.bound_getter
|
82
|
+
}
|
83
|
+
|
84
|
+
// Update stored values
|
85
|
+
object[property] = descriptor.value = changed_value;
|
86
|
+
|
87
|
+
// restore the event handler
|
88
|
+
object.attachEvent("onpropertychange", setter);
|
89
|
+
|
90
|
+
// stack.pop();
|
91
|
+
return false;
|
92
|
+
}
|
93
|
+
}
|
94
|
+
|
95
|
+
return setter;
|
96
|
+
};
|
97
|
+
|
98
|
+
// Shim define property with apropriated fail cases exceptions
|
99
|
+
Object.defineProperty = function (obj, prop, descriptor) {
|
100
|
+
var fix;
|
101
|
+
|
102
|
+
if (!prop)
|
103
|
+
|
104
|
+
if (descriptor.set) {
|
105
|
+
if (!obj.attachEvent) throw new TypeError('Object.defineProperty: First parameter must be a dom element. When descriptor has \'set\' property.');
|
106
|
+
|
107
|
+
if (!fix && !inDocument(obj)) throw new TypeError('Object.defineProperty: Dom element must be attached in document.');
|
108
|
+
}
|
109
|
+
|
110
|
+
if (!descriptor) throw new TypeError('Object.defineProperty (object, property, descriptor): Descriptor must be an object, was \'' + descriptor + '\'.');
|
111
|
+
|
112
|
+
// Store current value in descriptor
|
113
|
+
// TODO only try to set descriptor value if it was passed as parameter
|
114
|
+
descriptor.value = descriptor.value || (descriptor.get && descriptor.get.call(obj)) || obj[prop];
|
115
|
+
|
116
|
+
if (descriptor.set) {
|
117
|
+
// Detach old listeners if any
|
118
|
+
detach = true;
|
119
|
+
obj[prop] = 'detaching';
|
120
|
+
detach = false;
|
121
|
+
|
122
|
+
if (descriptor.get) {
|
123
|
+
// TODO remove jquery dependency
|
124
|
+
descriptor.bound_getter = $.extend($.proxy(descriptor.get, obj), descriptor.get);
|
125
|
+
|
126
|
+
// Why? we only bind the getter when we have a non falsey value
|
127
|
+
if (descriptor.value) descriptor.value.toString = descriptor.bound_getter;
|
128
|
+
|
129
|
+
// Although its not allowed for convention to have getters
|
130
|
+
// and setters with the descriptor value, here we just reuse
|
131
|
+
// the descriptor stored value
|
132
|
+
obj[prop] = descriptor.value;
|
133
|
+
}
|
134
|
+
|
135
|
+
(fix || obj).attachEvent("onpropertychange", generate_setter(obj, prop, descriptor));
|
136
|
+
|
137
|
+
} else if (descriptor.get) {
|
138
|
+
descriptor.bound_getter = $.extend($.proxy(descriptor.get, obj), descriptor.get);
|
139
|
+
|
140
|
+
// Why? we only bind the getter when we have a non falsey value
|
141
|
+
if (descriptor.value) descriptor.value.toString = descriptor.bound_getter;
|
142
|
+
|
143
|
+
// Although its not allowed for convention to have getters
|
144
|
+
// and setters with the descriptor value, here we just reuse
|
145
|
+
// the descriptor stored value
|
146
|
+
obj[prop] = descriptor.value;
|
147
|
+
} else {
|
148
|
+
obj[prop] = descriptor.value;
|
149
|
+
}
|
150
|
+
|
151
|
+
return obj;
|
152
|
+
}
|
153
|
+
|
154
|
+
// Allow others to check requirements for define property
|
155
|
+
Object.defineProperty.requiresDomElement = true
|
156
|
+
}
|
157
|
+
|
158
|
+
|
159
|
+
// Since we shimed define property, we can also shim defineProperties
|
160
|
+
if (!Object.defineProperties) {
|
161
|
+
Object.defineProperties = function (obj, props) {
|
162
|
+
for (var prop in props) {
|
163
|
+
if (hasOwnProp.call(props, prop)) {
|
164
|
+
Object.defineProperty(obj, prop, props[prop]);
|
165
|
+
}
|
166
|
+
}
|
167
|
+
};
|
168
|
+
|
169
|
+
baseElement = document.createElement('fix');
|
170
|
+
fixedOwnProperty = function (name) {
|
171
|
+
if (name in baseElement) return false;
|
172
|
+
return hasOwnProp.call(this, name);
|
173
|
+
};
|
174
|
+
|
175
|
+
|
176
|
+
Object.create = function (prototype, properties) {
|
177
|
+
var complexDescriptor, fix, descriptor, name;
|
178
|
+
|
179
|
+
for (name in properties) {
|
180
|
+
descriptor = properties[name]
|
181
|
+
if (descriptor instanceof Object) {
|
182
|
+
complexDescriptor = !!(descriptor.get || descriptor.set)
|
183
|
+
|
184
|
+
if (complexDescriptor) {
|
185
|
+
break;
|
186
|
+
}
|
187
|
+
}
|
188
|
+
}
|
189
|
+
|
190
|
+
if (complexDescriptor || prototype.nodeName === 'fix' || properties && properties._shim) {
|
191
|
+
properties && delete properties._shim;
|
192
|
+
|
193
|
+
if (typeof object != 'function') {
|
194
|
+
fix = document.createElement('fix');
|
195
|
+
document.appendChild(fix);
|
196
|
+
|
197
|
+
// Copy over prototype properties
|
198
|
+
for (name in prototype) {
|
199
|
+
try {
|
200
|
+
if (name in baseElement) continue;
|
201
|
+
fix[name] = prototype[name];
|
202
|
+
} catch (e) {
|
203
|
+
console.warn("Object.create: Invalid shimmed property: " + name + ", with error " + e);
|
204
|
+
}
|
205
|
+
}
|
206
|
+
|
207
|
+
// Ensure most normalized for loops to work property, by
|
208
|
+
// skiping the dom element properties on own property
|
209
|
+
// checking.
|
210
|
+
//
|
211
|
+
// TODO ensure other own property methods checking
|
212
|
+
fix.hasOwnProperty = fixedOwnProperty
|
213
|
+
|
214
|
+
Object.defineProperties(fix, properties);
|
215
|
+
} else {
|
216
|
+
throw new TypeError('Functions with complex descriptors not implemented yet');
|
217
|
+
}
|
218
|
+
return fix;
|
219
|
+
} else {
|
220
|
+
return objectCreate(prototype, properties)
|
221
|
+
}
|
222
|
+
}
|
223
|
+
};
|
224
|
+
|
225
|
+
|
226
|
+
/* TODO Use define Property, and only define if
|
227
|
+
non-enumerable properties are allowed
|
228
|
+
|
229
|
+
also define __defineGetter__ and __defineSetter__
|
230
|
+
if (!Object.defineProperty.requiresDomElement) {
|
231
|
+
if (!Object.prototype.__lookupGetter__) {
|
232
|
+
Object.__lookupGetter__ = function () {
|
233
|
+
console && console.log('__lookupGetter__ not implemented yet');
|
234
|
+
return null;
|
235
|
+
}
|
236
|
+
}
|
237
|
+
|
238
|
+
if (!Object.__lookupSetter__) {
|
239
|
+
Object.prototype.__lookupSetter__ = function () {
|
240
|
+
console && console.log('__lookupSetter__ not implemented yet');
|
241
|
+
return null;
|
242
|
+
}
|
243
|
+
}
|
244
|
+
}
|
245
|
+
*/
|
246
|
+
|
247
|
+
})();
|
248
|
+
|
@@ -0,0 +1,77 @@
|
|
1
|
+
// ES5 15.2.3.5
|
2
|
+
// http://es5.github.com/#x15.2.3.5
|
3
|
+
if (!Object.create) {
|
4
|
+
|
5
|
+
// Contributed by Brandon Benvie, October, 2012
|
6
|
+
var createEmpty;
|
7
|
+
var supportsProto = Object.prototype.__proto__ === null;
|
8
|
+
if (supportsProto || typeof document == 'undefined') {
|
9
|
+
createEmpty = function () {
|
10
|
+
return { "__proto__": null };
|
11
|
+
};
|
12
|
+
} else {
|
13
|
+
// In old IE __proto__ can't be used to manually set `null`, nor does
|
14
|
+
// any other method exist to make an object that inherits from nothing,
|
15
|
+
// aside from Object.prototype itself. Instead, create a new global
|
16
|
+
// object and *steal* its Object.prototype and strip it bare. This is
|
17
|
+
// used as the prototype to create nullary objects.
|
18
|
+
createEmpty = function () {
|
19
|
+
var iframe = document.createElement('iframe');
|
20
|
+
var parent = document.body || document.documentElement;
|
21
|
+
iframe.style.display = 'none';
|
22
|
+
parent.appendChild(iframe);
|
23
|
+
iframe.src = 'javascript:';
|
24
|
+
var empty = iframe.contentWindow.Object.prototype;
|
25
|
+
parent.removeChild(iframe);
|
26
|
+
iframe = null;
|
27
|
+
delete empty.constructor;
|
28
|
+
delete empty.hasOwnProperty;
|
29
|
+
delete empty.propertyIsEnumerable;
|
30
|
+
delete empty.isPrototypeOf;
|
31
|
+
delete empty.toLocaleString;
|
32
|
+
delete empty.toString;
|
33
|
+
delete empty.valueOf;
|
34
|
+
empty.__proto__ = null;
|
35
|
+
|
36
|
+
function Empty() {}
|
37
|
+
Empty.prototype = empty;
|
38
|
+
// short-circuit future calls
|
39
|
+
createEmpty = function () {
|
40
|
+
return new Empty();
|
41
|
+
};
|
42
|
+
return new Empty();
|
43
|
+
};
|
44
|
+
}
|
45
|
+
|
46
|
+
Object.create = function create(prototype, properties) {
|
47
|
+
|
48
|
+
var object;
|
49
|
+
function Type() {} // An empty constructor.
|
50
|
+
|
51
|
+
if (prototype === null) {
|
52
|
+
object = createEmpty();
|
53
|
+
} else {
|
54
|
+
if (typeof prototype !== "object" && typeof prototype !== "function") {
|
55
|
+
// In the native implementation `parent` can be `null`
|
56
|
+
// OR *any* `instanceof Object` (Object|Function|Array|RegExp|etc)
|
57
|
+
// Use `typeof` tho, b/c in old IE, DOM elements are not `instanceof Object`
|
58
|
+
// like they are in modern browsers. Using `Object.create` on DOM elements
|
59
|
+
// is...err...probably inappropriate, but the native version allows for it.
|
60
|
+
throw new TypeError("Object prototype may only be an Object or null"); // same msg as Chrome
|
61
|
+
}
|
62
|
+
Type.prototype = prototype;
|
63
|
+
object = new Type();
|
64
|
+
// IE has no built-in implementation of `Object.getPrototypeOf`
|
65
|
+
// neither `__proto__`, but this manually setting `__proto__` will
|
66
|
+
// guarantee that `Object.getPrototypeOf` will work as expected with
|
67
|
+
// objects created using `Object.create`
|
68
|
+
object.__proto__ = prototype;
|
69
|
+
}
|
70
|
+
|
71
|
+
if (properties !== void 0) {
|
72
|
+
Object.defineProperties(object, properties);
|
73
|
+
}
|
74
|
+
|
75
|
+
return object;
|
76
|
+
};
|
77
|
+
}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
{
|
2
|
+
"name": "assimilate",
|
3
|
+
"version": "0.4.0",
|
4
|
+
"license": "UNLICENSE",
|
5
|
+
"description": "Extends objects.",
|
6
|
+
"keywords": [
|
7
|
+
"extend",
|
8
|
+
"inherit",
|
9
|
+
"mixin"
|
10
|
+
],
|
11
|
+
"main": "dist/assimilate.js",
|
12
|
+
"dependencies": {},
|
13
|
+
"development": {},
|
14
|
+
"scripts": [
|
15
|
+
"dist/assimilate.js"
|
16
|
+
],
|
17
|
+
"styles": [],
|
18
|
+
"ignore": [
|
19
|
+
"**/.*",
|
20
|
+
"build",
|
21
|
+
"components",
|
22
|
+
"node_modules"
|
23
|
+
],
|
24
|
+
"repository": "pluma/assimilate"
|
25
|
+
}
|
data/components/indefinido/indemma/master/components/pluma/assimilate/0.4.0/dist/assimilate.js
ADDED
@@ -0,0 +1,127 @@
|
|
1
|
+
/*! assimilate 0.4.0 Original author Alan Plum <me@pluma.io>. Released into the Public Domain under the UNLICENSE. @preserve */
|
2
|
+
var slice = Array.prototype.slice;
|
3
|
+
|
4
|
+
function bind(fn, self) {
|
5
|
+
var args = slice.call(arguments, 2);
|
6
|
+
if (typeof Function.prototype.bind === 'function') {
|
7
|
+
return Function.prototype.bind.apply(fn, [self].concat(args));
|
8
|
+
}
|
9
|
+
return function() {
|
10
|
+
return fn.apply(self, args.concat(slice.call(arguments, 0)));
|
11
|
+
};
|
12
|
+
}
|
13
|
+
|
14
|
+
function simpleCopy(target, name, source) {
|
15
|
+
target[name] = source[name];
|
16
|
+
}
|
17
|
+
|
18
|
+
function properCopy(target, name, source) {
|
19
|
+
var descriptor = Object.getOwnPropertyDescriptor(source, name);
|
20
|
+
Object.defineProperty(target, name, descriptor);
|
21
|
+
}
|
22
|
+
|
23
|
+
function ownProperties(obj) {
|
24
|
+
return Object.getOwnPropertyNames(obj);
|
25
|
+
}
|
26
|
+
|
27
|
+
function allKeys(obj) {
|
28
|
+
var keys = [];
|
29
|
+
for (var name in obj) {
|
30
|
+
keys.push(name);
|
31
|
+
}
|
32
|
+
return keys;
|
33
|
+
}
|
34
|
+
|
35
|
+
function ownKeys(obj) {
|
36
|
+
var keys = [];
|
37
|
+
for (var name in obj) {
|
38
|
+
if (obj.hasOwnProperty(name)) {
|
39
|
+
keys.push(name);
|
40
|
+
}
|
41
|
+
}
|
42
|
+
return keys;
|
43
|
+
}
|
44
|
+
|
45
|
+
function assimilateWithStrategy(target) {
|
46
|
+
var strategy = this,
|
47
|
+
sources = slice.call(arguments, 1),
|
48
|
+
i, source, names, j, name;
|
49
|
+
|
50
|
+
if (target === undefined || target === null) {
|
51
|
+
target = {};
|
52
|
+
}
|
53
|
+
|
54
|
+
for (i = 0; i < sources.length; i++) {
|
55
|
+
source = sources[i];
|
56
|
+
names = strategy.keysFn(source);
|
57
|
+
for (j = 0; j < names.length; j++) {
|
58
|
+
name = names[j];
|
59
|
+
strategy.copyFn(target, name, source);
|
60
|
+
}
|
61
|
+
}
|
62
|
+
|
63
|
+
return target;
|
64
|
+
}
|
65
|
+
|
66
|
+
var strategies = {
|
67
|
+
DEFAULT: {
|
68
|
+
keysFn: ownKeys,
|
69
|
+
copyFn: simpleCopy
|
70
|
+
},
|
71
|
+
PROPER: {
|
72
|
+
keysFn: ownProperties,
|
73
|
+
copyFn: properCopy
|
74
|
+
},
|
75
|
+
INHERITED: {
|
76
|
+
keysFn: allKeys,
|
77
|
+
copyFn: simpleCopy
|
78
|
+
},
|
79
|
+
DEEP: {
|
80
|
+
keysFn: ownKeys,
|
81
|
+
copyFn: function recursiveCopy(target, name, source) {
|
82
|
+
var val = source[name];
|
83
|
+
var old = target[name];
|
84
|
+
if (typeof val === 'object' && typeof old === 'object') {
|
85
|
+
assimilateWithStrategy.call(strategies.DEEP, old, val);
|
86
|
+
} else {
|
87
|
+
simpleCopy(target, name, source);
|
88
|
+
}
|
89
|
+
}
|
90
|
+
},
|
91
|
+
STRICT: {
|
92
|
+
keysFn: ownKeys,
|
93
|
+
copyFn: function strictCopy(target, name, source) {
|
94
|
+
if (source[name] !== undefined) {
|
95
|
+
simpleCopy(target, name, source);
|
96
|
+
}
|
97
|
+
}
|
98
|
+
},
|
99
|
+
FALLBACK: {
|
100
|
+
keysFn: function fallbackCopy(target, name, source) {
|
101
|
+
if (target[name] === undefined) {
|
102
|
+
simpleCopy(target, name, source);
|
103
|
+
}
|
104
|
+
},
|
105
|
+
copyFn: simpleCopy
|
106
|
+
}
|
107
|
+
};
|
108
|
+
|
109
|
+
var assimilate = bind(assimilateWithStrategy, strategies.DEFAULT);
|
110
|
+
assimilate.strategies = strategies;
|
111
|
+
assimilate.withStrategy = function withStrategy(strategy) {
|
112
|
+
if (typeof strategy === 'string') {
|
113
|
+
strategy = strategies[strategy.toUpperCase()];
|
114
|
+
}
|
115
|
+
if (!strategy) {
|
116
|
+
throw new Error('Unknwon or invalid strategy:' + strategy);
|
117
|
+
}
|
118
|
+
if (typeof strategy.copyFn !== 'function') {
|
119
|
+
throw new Error('Strategy missing copy function:' + strategy);
|
120
|
+
}
|
121
|
+
if (typeof strategy.keysFn !== 'function') {
|
122
|
+
throw new Error('Strategy missing keys function:' + strategy);
|
123
|
+
}
|
124
|
+
return bind(assimilateWithStrategy, strategy);
|
125
|
+
};
|
126
|
+
|
127
|
+
module.exports = assimilate;
|
@@ -0,0 +1,75 @@
|
|
1
|
+
// Karma configuration
|
2
|
+
|
3
|
+
module.exports = function(config) {
|
4
|
+
config.set({
|
5
|
+
|
6
|
+
// base path, that will be used to resolve files and exclude
|
7
|
+
basePath: '',
|
8
|
+
|
9
|
+
|
10
|
+
// frameworks to use
|
11
|
+
frameworks: ['mocha'],
|
12
|
+
|
13
|
+
|
14
|
+
// list of files / patterns to load in the browser
|
15
|
+
files: [
|
16
|
+
'build/test.js',
|
17
|
+
'spec/support/**/*.js',
|
18
|
+
'spec/spec_helper.js',
|
19
|
+
'spec/**/*.js'
|
20
|
+
],
|
21
|
+
|
22
|
+
// list of files to excudle
|
23
|
+
exclude: [
|
24
|
+
'spec/coverage/**/*.js'
|
25
|
+
],
|
26
|
+
|
27
|
+
client: {
|
28
|
+
mocha: {
|
29
|
+
ui: 'bdd'
|
30
|
+
}
|
31
|
+
},
|
32
|
+
|
33
|
+
|
34
|
+
// test results reporter to use
|
35
|
+
// possible values: 'dots', 'progress', 'junit', 'growl', 'coverage'
|
36
|
+
reporters: ['progress'],
|
37
|
+
|
38
|
+
|
39
|
+
// web server port
|
40
|
+
port: 9876,
|
41
|
+
|
42
|
+
|
43
|
+
// enable / disable colors in the output (reporters and logs)
|
44
|
+
colors: true,
|
45
|
+
|
46
|
+
|
47
|
+
// level of logging
|
48
|
+
// possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
|
49
|
+
logLevel: config.LOG_INFO,
|
50
|
+
|
51
|
+
|
52
|
+
// enable / disable watching file and executing tests whenever any file changes
|
53
|
+
autoWatch: true,
|
54
|
+
|
55
|
+
|
56
|
+
// Start these browsers, currently available:
|
57
|
+
// - Chrome
|
58
|
+
// - ChromeCanary
|
59
|
+
// - Firefox
|
60
|
+
// - Opera (has to be installed with `npm install karma-opera-launcher`)
|
61
|
+
// - Safari (only Mac; has to be installed with `npm install karma-safari-launcher`)
|
62
|
+
// - PhantomJS
|
63
|
+
// - IE (only Windows; has to be installed with `npm install karma-ie-launcher`)
|
64
|
+
browsers: ['Chrome'],
|
65
|
+
|
66
|
+
|
67
|
+
// If browser does not capture in given timeout [ms], kill it
|
68
|
+
captureTimeout: 60000,
|
69
|
+
|
70
|
+
|
71
|
+
// Continuous Integration mode
|
72
|
+
// if true, it capture browsers, run tests and exit
|
73
|
+
singleRun: false
|
74
|
+
});
|
75
|
+
};
|
@@ -99,8 +99,10 @@ descriptors = {
|
|
99
99
|
|
100
100
|
association_name = this.resource.toString();
|
101
101
|
if (resource_id == null) {
|
102
|
-
this.
|
103
|
-
|
102
|
+
if (this.owner[association_name] || this.owner[association_name + '_id']) {
|
103
|
+
this.dirty = true;
|
104
|
+
this.owner[association_name] = null;
|
105
|
+
}
|
104
106
|
return resource_id;
|
105
107
|
}
|
106
108
|
current_resource_id = (_ref = this.owner.observed[association_name]) != null ? _ref._id : void 0;
|
@@ -2,7 +2,7 @@
|
|
2
2
|
var dirtyable, model, record;
|
3
3
|
|
4
4
|
dirtyable = {
|
5
|
-
ignores: ['dirty', 'resource', 'route', 'initial_route', 'after_initialize', 'before_initialize', 'parent_resource', 'nested_attributes', 'reloading', 'ready', 'saving', 'salvation', 'sustained', 'element', 'default', 'lock', 'validated', 'validation', 'errors', 'dirty'],
|
5
|
+
ignores: ['dirty', 'resource', 'route', 'initial_route', 'after_initialize', 'before_initialize', 'parent_resource', 'nested_attributes', 'reloading', 'ready', 'saving', 'saved', 'failed', 'salvation', 'sustained', 'element', 'default', 'lock', 'validate', 'validated', 'validation', 'errors', 'dirty', 'json'],
|
6
6
|
reserved_filter: function(name) {
|
7
7
|
return this.ignores.indexOf(name) === -1;
|
8
8
|
},
|