Skip to content

Commit 7294d0f

Browse files
author
Hirav Gandhi
committed
Bump version to 1.4.2
1 parent 62827e8 commit 7294d0f

15 files changed

+11478
-6686
lines changed

lib/angularjs-rails/version.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module AngularJS
22
module Rails
3-
VERSION = "1.4.0"
4-
UNSTABLE_VERSION = "2.0.0-alpha.25"
3+
VERSION = "1.4.2"
4+
UNSTABLE_VERSION = "2.0.0-alpha.28"
55
end
66
end

vendor/assets/javascripts/angular-animate.js

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @license AngularJS v1.4.0
2+
* @license AngularJS v1.4.2
33
* (c) 2010-2015 Google, Inc. http://angularjs.org
44
* License: MIT
55
*/
@@ -504,7 +504,8 @@ var $$AnimateChildrenDirective = [function() {
504504
* unless you really need a digest to kick off afterwards.
505505
*
506506
* Keep in mind that, to make this easier, ngAnimate has tweaked the JS animations API to recognize when a runner instance is returned from $animateCss
507-
* (so there is no need to call `runner.done(doneFn)` inside of your JavaScript animation code). Check the [animation code above](#usage) to see how this works.
507+
* (so there is no need to call `runner.done(doneFn)` inside of your JavaScript animation code).
508+
* Check the {@link ngAnimate.$animateCss#usage animation code above} to see how this works.
508509
*
509510
* @param {DOMElement} element the element that will be animated
510511
* @param {object} options the animation-related options that will be applied during the animation
@@ -3020,7 +3021,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
30203021
* opacity:0;
30213022
* }
30223023
*
3023-
* /* The starting CSS styles for the enter animation */
3024+
* /* The finishing CSS styles for the enter animation */
30243025
* .fade.ng-enter.ng-enter-active {
30253026
* opacity:1;
30263027
* }
@@ -3275,7 +3276,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
32753276
* ## CSS + JS Animations Together
32763277
*
32773278
* AngularJS 1.4 and higher has taken steps to make the amalgamation of CSS and JS animations more flexible. However, unlike earlier versions of Angular,
3278-
* defining CSS and JS animations to work off of the same CSS class will not work anymore. Therefore example below will only result in **JS animations taking
3279+
* defining CSS and JS animations to work off of the same CSS class will not work anymore. Therefore the example below will only result in **JS animations taking
32793280
* charge of the animation**:
32803281
*
32813282
* ```html
@@ -3304,8 +3305,8 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
33043305
* }
33053306
* ```
33063307
*
3307-
* Does this mean that CSS and JS animations cannot be used together? Do JS-based animations always have higher priority? We can suppliment for the
3308-
* lack of CSS animations by making use of the `$animateCss` service to trigger our own tweaked-out, CSS-based animations directly from
3308+
* Does this mean that CSS and JS animations cannot be used together? Do JS-based animations always have higher priority? We can make up for the
3309+
* lack of CSS animations by using the `$animateCss` service to trigger our own tweaked-out, CSS-based animations directly from
33093310
* our own JS-based animation code:
33103311
*
33113312
* ```js
@@ -3603,7 +3604,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
36033604
* ngModule.directive('greetingBox', ['$animate', function($animate) {
36043605
* return function(scope, element, attrs) {
36053606
* attrs.$observe('active', function(value) {
3606-
* value ? $animate.addClass(element, 'on') ? $animate.removeClass(element, 'on');
3607+
* value ? $animate.addClass(element, 'on') : $animate.removeClass(element, 'on');
36073608
* });
36083609
* });
36093610
* }]);
@@ -3614,7 +3615,7 @@ var $$AnimationProvider = ['$animateProvider', function($animateProvider) {
36143615
*
36153616
* ```css
36163617
* /* normally we would create a CSS class to reference on the element */
3617-
* [greeting-box].on { transition:0.5s linear all; background:green; color:white; }
3618+
* greeting-box.on { transition:0.5s linear all; background:green; color:white; }
36183619
* ```
36193620
*
36203621
* The `$animate` service contains a variety of other methods like `enter`, `leave`, `animate` and `setClass`. To learn more about what's

vendor/assets/javascripts/angular-aria.js

Lines changed: 28 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @license AngularJS v1.4.0
2+
* @license AngularJS v1.4.2
33
* (c) 2010-2015 Google, Inc. http://angularjs.org
44
* License: MIT
55
*/
@@ -19,8 +19,8 @@
1919
*
2020
* ## Usage
2121
*
22-
* For ngAria to do its magic, simply include the module as a dependency. The directives supported
23-
* by ngAria are:
22+
* For ngAria to do its magic, simply include the module `ngAria` as a dependency. The following
23+
* directives are supported:
2424
* `ngModel`, `ngDisabled`, `ngShow`, `ngHide`, `ngClick`, `ngDblClick`, and `ngMessages`.
2525
*
2626
* Below is a more detailed breakdown of the attributes handled by ngAria:
@@ -88,7 +88,8 @@ function $AriaProvider() {
8888
ariaMultiline: true,
8989
ariaValue: true,
9090
tabindex: true,
91-
bindKeypress: true
91+
bindKeypress: true,
92+
bindRoleForClick: true
9293
};
9394

9495
/**
@@ -107,6 +108,8 @@ function $AriaProvider() {
107108
* - **tabindex** – `{boolean}` – Enables/disables tabindex tags
108109
* - **bindKeypress** – `{boolean}` – Enables/disables keypress event binding on `<div>` and
109110
* `<li>` elements with ng-click
111+
* - **bindRoleForClick** – `{boolean}` – Adds role=button to non-interactive elements like `div`
112+
* using ng-click, making them more accessible to users of assistive technologies
110113
*
111114
* @description
112115
* Enables/disables various ARIA attributes
@@ -120,9 +123,8 @@ function $AriaProvider() {
120123
var ariaCamelName = attr.$normalize(ariaAttr);
121124
if (config[ariaCamelName] && !attr[ariaCamelName]) {
122125
scope.$watch(attr[attrName], function(boolVal) {
123-
if (negate) {
124-
boolVal = !boolVal;
125-
}
126+
// ensure boolean value
127+
boolVal = negate ? !boolVal : !!boolVal;
126128
elem.attr(ariaAttr, boolVal);
127129
});
128130
}
@@ -270,13 +272,23 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) {
270272
elem.attr('role', 'slider');
271273
}
272274
if ($aria.config('ariaValue')) {
273-
if (attr.min && !elem.attr('aria-valuemin')) {
274-
elem.attr('aria-valuemin', attr.min);
275+
var needsAriaValuemin = !elem.attr('aria-valuemin') &&
276+
(attr.hasOwnProperty('min') || attr.hasOwnProperty('ngMin'));
277+
var needsAriaValuemax = !elem.attr('aria-valuemax') &&
278+
(attr.hasOwnProperty('max') || attr.hasOwnProperty('ngMax'));
279+
var needsAriaValuenow = !elem.attr('aria-valuenow');
280+
281+
if (needsAriaValuemin) {
282+
attr.$observe('min', function ngAriaValueMinReaction(newVal) {
283+
elem.attr('aria-valuemin', newVal);
284+
});
275285
}
276-
if (attr.max && !elem.attr('aria-valuemax')) {
277-
elem.attr('aria-valuemax', attr.max);
286+
if (needsAriaValuemax) {
287+
attr.$observe('max', function ngAriaValueMinReaction(newVal) {
288+
elem.attr('aria-valuemax', newVal);
289+
});
278290
}
279-
if (!elem.attr('aria-valuenow')) {
291+
if (needsAriaValuenow) {
280292
scope.$watch(ngAriaWatchModelValue, function ngAriaValueNowReaction(newVal) {
281293
elem.attr('aria-valuenow', newVal);
282294
});
@@ -342,7 +354,10 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) {
342354
return true;
343355
}
344356
}
345-
if (!elem.attr('role') && !isNodeOneOf(elem, nodeBlackList)) {
357+
358+
if ($aria.config('bindRoleForClick')
359+
&& !elem.attr('role')
360+
&& !isNodeOneOf(elem, nodeBlackList)) {
346361
elem.attr('role', 'button');
347362
}
348363

vendor/assets/javascripts/angular-cookies.js

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @license AngularJS v1.4.0
2+
* @license AngularJS v1.4.2
33
* (c) 2010-2015 Google, Inc. http://angularjs.org
44
* License: MIT
55
*/
@@ -17,8 +17,7 @@
1717
*
1818
* <div doc-module-components="ngCookies"></div>
1919
*
20-
* See {@link ngCookies.$cookies `$cookies`} and
21-
* {@link ngCookies.$cookieStore `$cookieStore`} for usage.
20+
* See {@link ngCookies.$cookies `$cookies`} for usage.
2221
*/
2322

2423

@@ -48,7 +47,7 @@ angular.module('ngCookies', ['ng']).
4847
* or a Date object indicating the exact date/time this cookie will expire.
4948
* - **secure** - `{boolean}` - The cookie will be available only in secured connection.
5049
*
51-
* Note: by default the address that appears in your <base> tag will be used as path.
50+
* Note: by default the address that appears in your `<base>` tag will be used as path.
5251
* This is import so that cookies will be visible for all routes in case html5mode is enabled
5352
*
5453
**/
@@ -65,9 +64,11 @@ angular.module('ngCookies', ['ng']).
6564
* @description
6665
* Provides read/write access to browser's cookies.
6766
*
68-
* BREAKING CHANGE: `$cookies` no longer exposes properties that represent the
69-
* current browser cookie values. Now you must use the get/put/remove/etc. methods
70-
* as described below.
67+
* <div class="alert alert-info">
68+
* Up until Angular 1.3, `$cookies` exposed properties that represented the
69+
* current browser cookie values. In version 1.4, this behavior has changed, and
70+
* `$cookies` now provides a standard api of getters, setters etc.
71+
* </div>
7172
*
7273
* Requires the {@link ngCookies `ngCookies`} module to be installed.
7374
*
@@ -192,7 +193,7 @@ angular.module('ngCookies').
192193
* Requires the {@link ngCookies `ngCookies`} module to be installed.
193194
*
194195
* <div class="alert alert-danger">
195-
* **Note:** The $cookieStore service is deprecated.
196+
* **Note:** The $cookieStore service is **deprecated**.
196197
* Please use the {@link ngCookies.$cookies `$cookies`} service instead.
197198
* </div>
198199
*

vendor/assets/javascripts/angular-loader.js

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @license AngularJS v1.4.0
2+
* @license AngularJS v1.4.2
33
* (c) 2010-2015 Google, Inc. http://angularjs.org
44
* License: MIT
55
*/
@@ -58,7 +58,7 @@ function minErr(module, ErrorConstructor) {
5858
return match;
5959
});
6060

61-
message += '\nhttp://errors.angularjs.org/1.4.0/' +
61+
message += '\nhttp://errors.angularjs.org/1.4.2/' +
6262
(module ? module + '/' : '') + code;
6363

6464
for (i = SKIP_INDEXES, paramPrefix = '?'; i < templateArgs.length; i++, paramPrefix = '&') {
@@ -216,7 +216,7 @@ function setupModuleLoader(window) {
216216
* @description
217217
* See {@link auto.$provide#provider $provide.provider()}.
218218
*/
219-
provider: invokeLater('$provide', 'provider'),
219+
provider: invokeLaterAndSetModuleName('$provide', 'provider'),
220220

221221
/**
222222
* @ngdoc method
@@ -227,7 +227,7 @@ function setupModuleLoader(window) {
227227
* @description
228228
* See {@link auto.$provide#factory $provide.factory()}.
229229
*/
230-
factory: invokeLater('$provide', 'factory'),
230+
factory: invokeLaterAndSetModuleName('$provide', 'factory'),
231231

232232
/**
233233
* @ngdoc method
@@ -238,7 +238,7 @@ function setupModuleLoader(window) {
238238
* @description
239239
* See {@link auto.$provide#service $provide.service()}.
240240
*/
241-
service: invokeLater('$provide', 'service'),
241+
service: invokeLaterAndSetModuleName('$provide', 'service'),
242242

243243
/**
244244
* @ngdoc method
@@ -273,7 +273,7 @@ function setupModuleLoader(window) {
273273
* @description
274274
* See {@link auto.$provide#decorator $provide.decorator()}.
275275
*/
276-
decorator: invokeLater('$provide', 'decorator'),
276+
decorator: invokeLaterAndSetModuleName('$provide', 'decorator'),
277277

278278
/**
279279
* @ngdoc method
@@ -307,7 +307,7 @@ function setupModuleLoader(window) {
307307
* See {@link ng.$animateProvider#register $animateProvider.register()} and
308308
* {@link ngAnimate ngAnimate module} for more information.
309309
*/
310-
animation: invokeLater('$animateProvider', 'register'),
310+
animation: invokeLaterAndSetModuleName('$animateProvider', 'register'),
311311

312312
/**
313313
* @ngdoc method
@@ -325,7 +325,7 @@ function setupModuleLoader(window) {
325325
* (`myapp_subsection_filterx`).
326326
* </div>
327327
*/
328-
filter: invokeLater('$filterProvider', 'register'),
328+
filter: invokeLaterAndSetModuleName('$filterProvider', 'register'),
329329

330330
/**
331331
* @ngdoc method
@@ -337,7 +337,7 @@ function setupModuleLoader(window) {
337337
* @description
338338
* See {@link ng.$controllerProvider#register $controllerProvider.register()}.
339339
*/
340-
controller: invokeLater('$controllerProvider', 'register'),
340+
controller: invokeLaterAndSetModuleName('$controllerProvider', 'register'),
341341

342342
/**
343343
* @ngdoc method
@@ -350,7 +350,7 @@ function setupModuleLoader(window) {
350350
* @description
351351
* See {@link ng.$compileProvider#directive $compileProvider.directive()}.
352352
*/
353-
directive: invokeLater('$compileProvider', 'directive'),
353+
directive: invokeLaterAndSetModuleName('$compileProvider', 'directive'),
354354

355355
/**
356356
* @ngdoc method
@@ -400,6 +400,19 @@ function setupModuleLoader(window) {
400400
return moduleInstance;
401401
};
402402
}
403+
404+
/**
405+
* @param {string} provider
406+
* @param {string} method
407+
* @returns {angular.Module}
408+
*/
409+
function invokeLaterAndSetModuleName(provider, method) {
410+
return function(recipeName, factoryFunction) {
411+
if (factoryFunction && isFunction(factoryFunction)) factoryFunction.$$moduleName = name;
412+
invokeQueue.push([provider, method, arguments]);
413+
return moduleInstance;
414+
};
415+
}
403416
});
404417
};
405418
});

vendor/assets/javascripts/angular-message-format.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @license AngularJS v1.4.0
2+
* @license AngularJS v1.4.2
33
* (c) 2010-2015 Google, Inc. http://angularjs.org
44
* License: MIT
55
*/

vendor/assets/javascripts/angular-messages.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @license AngularJS v1.4.0
2+
* @license AngularJS v1.4.2
33
* (c) 2010-2015 Google, Inc. http://angularjs.org
44
* License: MIT
55
*/
@@ -56,7 +56,7 @@ var jqLite = angular.element;
5656
*
5757
* ```javascript
5858
* <!-- keep in mind that ngModel automatically sets these error flags -->
59-
* myField.$error = { minlength : true, required : false };
59+
* myField.$error = { minlength : true, required : true };
6060
* ```
6161
*
6262
* Then the `required` message will be displayed first. When required is false then the `minlength` message
@@ -256,7 +256,7 @@ angular.module('ngMessages', [])
256256
*
257257
* @description
258258
* `ngMessages` is a directive that is designed to show and hide messages based on the state
259-
* of a key/value object that it listens on. The directive itself compliments error message
259+
* of a key/value object that it listens on. The directive itself complements error message
260260
* reporting with the `ngModel` $error object (which stores a key/value state of validation errors).
261261
*
262262
* `ngMessages` manages the state of internal messages within its container element. The internal

vendor/assets/javascripts/angular-mocks.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @license AngularJS v1.4.0
2+
* @license AngularJS v1.4.2
33
* (c) 2010-2015 Google, Inc. http://angularjs.org
44
* License: MIT
55
*/
@@ -1090,7 +1090,7 @@ angular.mock.dump = function(object) {
10901090
$httpBackend.flush();
10911091
10921092
$httpBackend.expectPOST('/add-msg.py', undefined, function(headers) {
1093-
// check if the header was send, if it wasn't the expectation won't
1093+
// check if the header was sent, if it wasn't the expectation won't
10941094
// match the request and the test will fail
10951095
return headers['Authorization'] == 'xxx';
10961096
}).respond(201, '');

vendor/assets/javascripts/angular-resource.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @license AngularJS v1.4.0
2+
* @license AngularJS v1.4.2
33
* (c) 2010-2015 Google, Inc. http://angularjs.org
44
* License: MIT
55
*/
@@ -214,7 +214,8 @@ function shallowClearAndCopy(src, dst) {
214214
* - non-GET instance actions: `instance.$action([parameters], [success], [error])`
215215
*
216216
*
217-
* Success callback is called with (value, responseHeaders) arguments. Error callback is called
217+
* Success callback is called with (value, responseHeaders) arguments, where the value is
218+
* the populated resource instance or collection object. The error callback is called
218219
* with (httpResponse) argument.
219220
*
220221
* Class actions return empty instance (with additional properties below).

0 commit comments

Comments
 (0)