diff --git a/Gemfile b/Gemfile index 1b62b2e9..2a5e60a0 100644 --- a/Gemfile +++ b/Gemfile @@ -6,3 +6,5 @@ gem 'rack-rewrite' gem 'sinatra' gem 'sinatra-param' gem 'puma' +gem 'rake' +gem 'pry' diff --git a/Gemfile.lock b/Gemfile.lock index 7a136649..b53f6861 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,25 +1,35 @@ GEM remote: https://rubygems.org/ specs: - puma (2.10.2) + coderay (1.1.0) + method_source (0.8.2) + pry (0.10.1) + coderay (~> 1.1.0) + method_source (~> 0.8.1) + slop (~> 3.4) + puma (2.11.0) rack (>= 1.1, < 2.0) rack (1.6.0) rack-protection (1.5.3) rack rack-rewrite (1.5.1) + rake (10.4.2) sinatra (1.4.5) rack (~> 1.4) rack-protection (~> 1.4) tilt (~> 1.3, >= 1.3.4) - sinatra-param (1.2.2) + sinatra-param (1.3.1) sinatra (~> 1.3) + slop (3.6.0) tilt (1.4.1) PLATFORMS ruby DEPENDENCIES + pry puma rack-rewrite + rake sinatra sinatra-param diff --git a/Rakefile b/Rakefile new file mode 100644 index 00000000..5b918ac8 --- /dev/null +++ b/Rakefile @@ -0,0 +1,27 @@ +require "bundler" +require 'rake' +require 'rake/clean' + +include Rake::DSL + +# All the bacon specifications +PROJECT_SPECS = Dir.glob(File.expand_path('../spec/**/*.rb', __FILE__)) +PROJECT_SPECS.reject! { |e| e =~ /helper\.rb/ } +PROJECT_SPECS.reject! { |e| e =~ /init\.rb/ } + +CLEAN.include %w[ + **/.*.sw? + *.gem + .config + **/*~ + **/{vttroute-*.db,cache.yaml} + *.yaml + pkg + rdoc + public/doc + *coverage* +] + +Dir.glob(File.expand_path('../tasks/*.rake', __FILE__)).each do |f| + import(f) +end diff --git a/lib/ledger.rb b/lib/ledger.rb index 85981e1a..1d942a05 100644 --- a/lib/ledger.rb +++ b/lib/ledger.rb @@ -75,7 +75,7 @@ module Ledger end end - def budget( period, categories ) + def budget( period = nil, categories = '' ) period = period.nil? ? '' : "-p '#{period}'" budgeted = run( "--flat --no-total --budget --exchange '#{CURRENCY}' #{period}", 'budget', categories ) diff --git a/public/app/bower_components/angular-animate/.bower.json b/public/app/bower_components/angular-animate/.bower.json index f197901c..e7cc7575 100644 --- a/public/app/bower_components/angular-animate/.bower.json +++ b/public/app/bower_components/angular-animate/.bower.json @@ -1,17 +1,17 @@ { "name": "angular-animate", - "version": "1.3.1", + "version": "1.3.12", "main": "./angular-animate.js", "ignore": [], "dependencies": { - "angular": "1.3.1" + "angular": "1.3.12" }, "homepage": "https://github.com/angular/bower-angular-animate", - "_release": "1.3.1", + "_release": "1.3.12", "_resolution": { "type": "version", - "tag": "v1.3.1", - "commit": "3b55cee18abd8aafab26456b59c663afb4263a1c" + "tag": "v1.3.12", + "commit": "15ed4de8c25663d412b0c953b0d70c1133e9fd31" }, "_source": "git://github.com/angular/bower-angular-animate.git", "_target": "~1.3.1", diff --git a/public/app/bower_components/angular-animate/README.md b/public/app/bower_components/angular-animate/README.md index 50ebe819..930b5dcc 100644 --- a/public/app/bower_components/angular-animate/README.md +++ b/public/app/bower_components/angular-animate/README.md @@ -17,7 +17,7 @@ npm install angular-animate Add a ` + ``` Then add `ngAnimate` as a dependency for your app: @@ -38,7 +38,7 @@ bower install angular-animate Then add a ` + ``` Then add `ngAnimate` as a dependency for your app: diff --git a/public/app/bower_components/angular-animate/angular-animate.js b/public/app/bower_components/angular-animate/angular-animate.js index 5a56c7c2..98e39bc1 100644 --- a/public/app/bower_components/angular-animate/angular-animate.js +++ b/public/app/bower_components/angular-animate/angular-animate.js @@ -1,5 +1,5 @@ /** - * @license AngularJS v1.3.1 + * @license AngularJS v1.3.12 * (c) 2010-2014 Google, Inc. http://angularjs.org * License: MIT */ @@ -19,7 +19,7 @@ * # Usage * * To see animations in action, all that is required is to define the appropriate CSS classes - * or to register a JavaScript animation via the myModule.animation() function. The directives that support animation automatically are: + * or to register a JavaScript animation via the `myModule.animation()` function. The directives that support animation automatically are: * `ngRepeat`, `ngInclude`, `ngIf`, `ngSwitch`, `ngShow`, `ngHide`, `ngView` and `ngClass`. Custom directives can take advantage of animation * by using the `$animate` service. * @@ -161,8 +161,8 @@ * ### Structural transition animations * * Structural transitions (such as enter, leave and move) will always apply a `0s none` transition - * value to force the browser into rendering the styles defined in the setup (.ng-enter, .ng-leave - * or .ng-move) class. This means that any active transition animations operating on the element + * value to force the browser into rendering the styles defined in the setup (`.ng-enter`, `.ng-leave` + * or `.ng-move`) class. This means that any active transition animations operating on the element * will be cut off to make way for the enter, leave or move animation. * * ### Class-based transition animations @@ -245,7 +245,7 @@ * You then configure `$animate` to enforce this prefix: * * ```js - * $animateProvider.classNamePrefix(/animate-/); + * $animateProvider.classNameFilter(/animate-/); * ``` * * @@ -479,11 +479,12 @@ angular.module('ngAnimate', ['ng']) function isMatchingElement(elm1, elm2) { return extractElementNode(elm1) == extractElementNode(elm2); } - + var $$jqLite; $provide.decorator('$animate', - ['$delegate', '$$q', '$injector', '$sniffer', '$rootElement', '$$asyncCallback', '$rootScope', '$document', '$templateRequest', - function($delegate, $$q, $injector, $sniffer, $rootElement, $$asyncCallback, $rootScope, $document, $templateRequest) { + ['$delegate', '$$q', '$injector', '$sniffer', '$rootElement', '$$asyncCallback', '$rootScope', '$document', '$templateRequest', '$$jqLite', + function($delegate, $$q, $injector, $sniffer, $rootElement, $$asyncCallback, $rootScope, $document, $templateRequest, $$$jqLite) { + $$jqLite = $$$jqLite; $rootElement.data(NG_ANIMATE_STATE, rootAnimateState); // Wait until all directive and route-related templates are downloaded and @@ -838,7 +839,8 @@ angular.module('ngAnimate', ['ng']) * promise that was returned when the animation was started. * * ```js - * var promise = $animate.addClass(element, 'super-long-animation').then(function() { + * var promise = $animate.addClass(element, 'super-long-animation'); + * promise.then(function() { * //this will still be called even if cancelled * }); * @@ -877,22 +879,22 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during the `animate` animation: * - * | Animation Step | What the element class attribute looks like | - * |-------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------| - * | 1. $animate.animate(...) is called | class="my-animation" | - * | 2. $animate waits for the next digest to start the animation | class="my-animation ng-animate" | - * | 3. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 4. the className class value is added to the element | class="my-animation ng-animate className" | - * | 5. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate className" | - * | 6. $animate blocks all CSS transitions on the element to ensure the .className class styling is applied right away| class="my-animation ng-animate className" | - * | 7. $animate applies the provided collection of `from` CSS styles to the element | class="my-animation ng-animate className" | - * | 8. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate className" | - * | 9. $animate removes the CSS transition block placed on the element | class="my-animation ng-animate className" | - * | 10. the className-active class is added (this triggers the CSS transition/animation) | class="my-animation ng-animate className className-active" | - * | 11. $animate applies the collection of `to` CSS styles to the element which are then handled by the transition | class="my-animation ng-animate className className-active" | - * | 12. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate className className-active" | - * | 13. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 14. The returned promise is resolved. | class="my-animation" | + * | Animation Step | What the element class attribute looks like | + * |-----------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------| + * | 1. `$animate.animate(...)` is called | `class="my-animation"` | + * | 2. `$animate` waits for the next digest to start the animation | `class="my-animation ng-animate"` | + * | 3. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 4. the `className` class value is added to the element | `class="my-animation ng-animate className"` | + * | 5. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate className"` | + * | 6. `$animate` blocks all CSS transitions on the element to ensure the `.className` class styling is applied right away| `class="my-animation ng-animate className"` | + * | 7. `$animate` applies the provided collection of `from` CSS styles to the element | `class="my-animation ng-animate className"` | + * | 8. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate className"` | + * | 9. `$animate` removes the CSS transition block placed on the element | `class="my-animation ng-animate className"` | + * | 10. the `className-active` class is added (this triggers the CSS transition/animation) | `class="my-animation ng-animate className className-active"` | + * | 11. `$animate` applies the collection of `to` CSS styles to the element which are then handled by the transition | `class="my-animation ng-animate className className-active"` | + * | 12. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate className className-active"` | + * | 13. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 14. The returned promise is resolved. | `class="my-animation"` | * * @param {DOMElement} element the element that will be the focus of the enter animation * @param {object} from a collection of CSS styles that will be applied to the element at the start of the animation @@ -923,21 +925,21 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during enter animation: * - * | Animation Step | What the element class attribute looks like | - * |-------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------| - * | 1. $animate.enter(...) is called | class="my-animation" | - * | 2. element is inserted into the parentElement element or beside the afterElement element | class="my-animation" | - * | 3. $animate waits for the next digest to start the animation | class="my-animation ng-animate" | - * | 4. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 5. the .ng-enter class is added to the element | class="my-animation ng-animate ng-enter" | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate ng-enter" | - * | 7. $animate blocks all CSS transitions on the element to ensure the .ng-enter class styling is applied right away | class="my-animation ng-animate ng-enter" | - * | 8. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate ng-enter" | - * | 9. $animate removes the CSS transition block placed on the element | class="my-animation ng-animate ng-enter" | - * | 10. the .ng-enter-active class is added (this triggers the CSS transition/animation) | class="my-animation ng-animate ng-enter ng-enter-active" | - * | 11. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate ng-enter ng-enter-active" | - * | 12. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 13. The returned promise is resolved. | class="my-animation" | + * | Animation Step | What the element class attribute looks like | + * |-----------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------| + * | 1. `$animate.enter(...)` is called | `class="my-animation"` | + * | 2. element is inserted into the `parentElement` element or beside the `afterElement` element | `class="my-animation"` | + * | 3. `$animate` waits for the next digest to start the animation | `class="my-animation ng-animate"` | + * | 4. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 5. the `.ng-enter` class is added to the element | `class="my-animation ng-animate ng-enter"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate ng-enter"` | + * | 7. `$animate` blocks all CSS transitions on the element to ensure the `.ng-enter` class styling is applied right away | `class="my-animation ng-animate ng-enter"` | + * | 8. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate ng-enter"` | + * | 9. `$animate` removes the CSS transition block placed on the element | `class="my-animation ng-animate ng-enter"` | + * | 10. the `.ng-enter-active` class is added (this triggers the CSS transition/animation) | `class="my-animation ng-animate ng-enter ng-enter-active"` | + * | 11. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate ng-enter ng-enter-active"` | + * | 12. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 13. The returned promise is resolved. | `class="my-animation"` | * * @param {DOMElement} element the element that will be the focus of the enter animation * @param {DOMElement} parentElement the parent element of the element that will be the focus of the enter animation @@ -969,21 +971,21 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during leave animation: * - * | Animation Step | What the element class attribute looks like | - * |-------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------| - * | 1. $animate.leave(...) is called | class="my-animation" | - * | 2. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 3. $animate waits for the next digest to start the animation | class="my-animation ng-animate" | - * | 4. the .ng-leave class is added to the element | class="my-animation ng-animate ng-leave" | - * | 5. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate ng-leave" | - * | 6. $animate blocks all CSS transitions on the element to ensure the .ng-leave class styling is applied right away | class="my-animation ng-animate ng-leave” | - * | 7. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate ng-leave" | - * | 8. $animate removes the CSS transition block placed on the element | class="my-animation ng-animate ng-leave” | - * | 9. the .ng-leave-active class is added (this triggers the CSS transition/animation) | class="my-animation ng-animate ng-leave ng-leave-active" | - * | 10. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate ng-leave ng-leave-active" | - * | 11. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 12. The element is removed from the DOM | ... | - * | 13. The returned promise is resolved. | ... | + * | Animation Step | What the element class attribute looks like | + * |-----------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------| + * | 1. `$animate.leave(...)` is called | `class="my-animation"` | + * | 2. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 3. `$animate` waits for the next digest to start the animation | `class="my-animation ng-animate"` | + * | 4. the `.ng-leave` class is added to the element | `class="my-animation ng-animate ng-leave"` | + * | 5. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate ng-leave"` | + * | 6. `$animate` blocks all CSS transitions on the element to ensure the `.ng-leave` class styling is applied right away | `class="my-animation ng-animate ng-leave"` | + * | 7. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate ng-leave"` | + * | 8. `$animate` removes the CSS transition block placed on the element | `class="my-animation ng-animate ng-leave"` | + * | 9. the `.ng-leave-active` class is added (this triggers the CSS transition/animation) | `class="my-animation ng-animate ng-leave ng-leave-active"` | + * | 10. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate ng-leave ng-leave-active"` | + * | 11. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 12. The element is removed from the DOM | ... | + * | 13. The returned promise is resolved. | ... | * * @param {DOMElement} element the element that will be the focus of the leave animation * @param {object=} options an optional collection of styles that will be picked up by the CSS transition/animation @@ -1014,21 +1016,21 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during move animation: * - * | Animation Step | What the element class attribute looks like | - * |------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------| - * | 1. $animate.move(...) is called | class="my-animation" | - * | 2. element is moved into the parentElement element or beside the afterElement element | class="my-animation" | - * | 3. $animate waits for the next digest to start the animation | class="my-animation ng-animate" | - * | 4. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 5. the .ng-move class is added to the element | class="my-animation ng-animate ng-move" | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate ng-move" | - * | 7. $animate blocks all CSS transitions on the element to ensure the .ng-move class styling is applied right away | class="my-animation ng-animate ng-move” | - * | 8. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate ng-move" | - * | 9. $animate removes the CSS transition block placed on the element | class="my-animation ng-animate ng-move” | - * | 10. the .ng-move-active class is added (this triggers the CSS transition/animation) | class="my-animation ng-animate ng-move ng-move-active" | - * | 11. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate ng-move ng-move-active" | - * | 12. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 13. The returned promise is resolved. | class="my-animation" | + * | Animation Step | What the element class attribute looks like | + * |----------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------| + * | 1. `$animate.move(...)` is called | `class="my-animation"` | + * | 2. element is moved into the parentElement element or beside the afterElement element | `class="my-animation"` | + * | 3. `$animate` waits for the next digest to start the animation | `class="my-animation ng-animate"` | + * | 4. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 5. the `.ng-move` class is added to the element | `class="my-animation ng-animate ng-move"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate ng-move"` | + * | 7. `$animate` blocks all CSS transitions on the element to ensure the `.ng-move` class styling is applied right away | `class="my-animation ng-animate ng-move"` | + * | 8. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate ng-move"` | + * | 9. `$animate` removes the CSS transition block placed on the element | `class="my-animation ng-animate ng-move"` | + * | 10. the `.ng-move-active` class is added (this triggers the CSS transition/animation) | `class="my-animation ng-animate ng-move ng-move-active"` | + * | 11. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate ng-move ng-move-active"` | + * | 12. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 13. The returned promise is resolved. | `class="my-animation"` | * * @param {DOMElement} element the element that will be the focus of the move animation * @param {DOMElement} parentElement the parentElement element of the element that will be the focus of the move animation @@ -1062,18 +1064,18 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during addClass animation: * - * | Animation Step | What the element class attribute looks like | - * |----------------------------------------------------------------------------------------------------|------------------------------------------------------------------| - * | 1. $animate.addClass(element, 'super') is called | class="my-animation" | - * | 2. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 3. the .super-add class is added to the element | class="my-animation ng-animate super-add" | - * | 4. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate super-add" | - * | 5. the .super and .super-add-active classes are added (this triggers the CSS transition/animation) | class="my-animation ng-animate super super-add super-add-active" | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate super-add" | - * | 7. $animate waits for the animation to complete (via events and timeout) | class="my-animation super super-add super-add-active" | - * | 8. The animation ends and all generated CSS classes are removed from the element | class="my-animation super" | - * | 9. The super class is kept on the element | class="my-animation super" | - * | 10. The returned promise is resolved. | class="my-animation super" | + * | Animation Step | What the element class attribute looks like | + * |--------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------| + * | 1. `$animate.addClass(element, 'super')` is called | `class="my-animation"` | + * | 2. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 3. the `.super-add` class is added to the element | `class="my-animation ng-animate super-add"` | + * | 4. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate super-add"` | + * | 5. the `.super` and `.super-add-active` classes are added (this triggers the CSS transition/animation) | `class="my-animation ng-animate super super-add super-add-active"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate super super-add super-add-active"` | + * | 7. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate super super-add super-add-active"` | + * | 8. The animation ends and all generated CSS classes are removed from the element | `class="my-animation super"` | + * | 9. The super class is kept on the element | `class="my-animation super"` | + * | 10. The returned promise is resolved. | `class="my-animation super"` | * * @param {DOMElement} element the element that will be animated * @param {string} className the CSS class that will be added to the element and then animated @@ -1096,17 +1098,17 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during removeClass animation: * - * | Animation Step | What the element class attribute looks like | - * |------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------| - * | 1. $animate.removeClass(element, 'super') is called | class="my-animation super" | - * | 2. $animate runs the JavaScript-defined animations detected on the element | class="my-animation super ng-animate" | - * | 3. the .super-remove class is added to the element | class="my-animation super ng-animate super-remove" | - * | 4. $animate waits for a single animation frame (this performs a reflow) | class="my-animation super ng-animate super-remove" | - * | 5. the .super-remove-active classes are added and .super is removed (this triggers the CSS transition/animation) | class="my-animation ng-animate super-remove super-remove-active" | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation super ng-animate super-remove" | - * | 7. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate super-remove super-remove-active" | - * | 8. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 9. The returned promise is resolved. | class="my-animation" | + * | Animation Step | What the element class attribute looks like | + * |----------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------| + * | 1. `$animate.removeClass(element, 'super')` is called | `class="my-animation super"` | + * | 2. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation super ng-animate"` | + * | 3. the `.super-remove` class is added to the element | `class="my-animation super ng-animate super-remove"` | + * | 4. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation super ng-animate super-remove"` | + * | 5. the `.super-remove-active` classes are added and `.super` is removed (this triggers the CSS transition/animation) | `class="my-animation ng-animate super-remove super-remove-active"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate super-remove super-remove-active"` | + * | 7. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate super-remove super-remove-active"` | + * | 8. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 9. The returned promise is resolved. | `class="my-animation"` | * * * @param {DOMElement} element the element that will be animated @@ -1124,19 +1126,19 @@ angular.module('ngAnimate', ['ng']) * @name $animate#setClass * * @description Adds and/or removes the given CSS classes to and from the element. - * Once complete, the done() callback will be fired (if provided). + * Once complete, the `done()` callback will be fired (if provided). * - * | Animation Step | What the element class attribute looks like | - * |--------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------| - * | 1. $animate.removeClass(element, ‘on’, ‘off’) is called | class="my-animation super off” | - * | 2. $animate runs the JavaScript-defined animations detected on the element | class="my-animation super ng-animate off” | - * | 3. the .on-add and .off-remove classes are added to the element | class="my-animation ng-animate on-add off-remove off” | - * | 4. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate on-add off-remove off” | - * | 5. the .on, .on-add-active and .off-remove-active classes are added and .off is removed (this triggers the CSS transition/animation) | class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active” | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active" | - * | 7. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active" | - * | 8. The animation ends and all generated CSS classes are removed from the element | class="my-animation on" | - * | 9. The returned promise is resolved. | class="my-animation on" | + * | Animation Step | What the element class attribute looks like | + * |----------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------| + * | 1. `$animate.setClass(element, 'on', 'off')` is called | `class="my-animation off"` | + * | 2. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate off"` | + * | 3. the `.on-add` and `.off-remove` classes are added to the element | `class="my-animation ng-animate on-add off-remove off"` | + * | 4. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate on-add off-remove off"` | + * | 5. the `.on`, `.on-add-active` and `.off-remove-active` classes are added and `.off` is removed (this triggers the CSS transition/animation) | `class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active"` | + * | 7. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active"` | + * | 8. The animation ends and all generated CSS classes are removed from the element | `class="my-animation on"` | + * | 9. The returned promise is resolved. | `class="my-animation on"` | * * @param {DOMElement} element the element which will have its CSS classes changed * removed from it @@ -1274,7 +1276,7 @@ angular.module('ngAnimate', ['ng']) all animations call this shared animation triggering function internally. The animationEvent variable refers to the JavaScript animation event that will be triggered and the className value is the name of the animation that will be applied within the - CSS code. Element, parentElement and afterElement are provided DOM elements for the animation + CSS code. Element, `parentElement` and `afterElement` are provided DOM elements for the animation and the onComplete callback will be fired once the animation is fully complete. */ function performAnimation(animationEvent, className, element, parentElement, afterElement, domOperation, options, doneCallback) { @@ -1331,8 +1333,7 @@ angular.module('ngAnimate', ['ng']) } else if (lastAnimation.event == 'setClass') { animationsToCancel.push(lastAnimation); cleanup(element, className); - } - else if (runningAnimations[className]) { + } else if (runningAnimations[className]) { var current = runningAnimations[className]; if (current.event == animationEvent) { skipAnimation = true; @@ -1386,10 +1387,10 @@ angular.module('ngAnimate', ['ng']) //the ng-animate class does nothing, but it's here to allow for //parent animations to find and cancel child animations when needed - element.addClass(NG_ANIMATE_CLASS_NAME); + $$jqLite.addClass(element, NG_ANIMATE_CLASS_NAME); if (options && options.tempClasses) { forEach(options.tempClasses, function(className) { - element.addClass(className); + $$jqLite.addClass(element, className); }); } @@ -1467,7 +1468,7 @@ angular.module('ngAnimate', ['ng']) closeAnimation.hasBeenRun = true; if (options && options.tempClasses) { forEach(options.tempClasses, function(className) { - element.removeClass(className); + $$jqLite.removeClass(element, className); }); } @@ -1529,7 +1530,7 @@ angular.module('ngAnimate', ['ng']) } if (removeAnimations || !data.totalActive) { - element.removeClass(NG_ANIMATE_CLASS_NAME); + $$jqLite.removeClass(element, NG_ANIMATE_CLASS_NAME); element.removeData(NG_ANIMATE_STATE); } } @@ -1770,14 +1771,14 @@ angular.module('ngAnimate', ['ng']) var staggerCacheKey = cacheKey + ' ' + staggerClassName; var applyClasses = !lookupCache[staggerCacheKey]; - applyClasses && element.addClass(staggerClassName); + applyClasses && $$jqLite.addClass(element, staggerClassName); stagger = getElementAnimationDetails(element, staggerCacheKey); - applyClasses && element.removeClass(staggerClassName); + applyClasses && $$jqLite.removeClass(element, staggerClassName); } - element.addClass(className); + $$jqLite.addClass(element, className); var formerData = element.data(NG_ANIMATE_CSS_DATA_KEY) || {}; var timings = getElementAnimationDetails(element, eventCacheKey); @@ -1785,7 +1786,7 @@ angular.module('ngAnimate', ['ng']) var animationDuration = timings.animationDuration; if (structural && transitionDuration === 0 && animationDuration === 0) { - element.removeClass(className); + $$jqLite.removeClass(element, className); return false; } @@ -1857,7 +1858,7 @@ angular.module('ngAnimate', ['ng']) } if (!staggerTime) { - element.addClass(activeClassName); + $$jqLite.addClass(element, activeClassName); if (elementData.blockTransition) { blockTransitions(node, false); } @@ -1867,13 +1868,13 @@ angular.module('ngAnimate', ['ng']) var timings = getElementAnimationDetails(element, eventCacheKey); var maxDuration = Math.max(timings.transitionDuration, timings.animationDuration); if (maxDuration === 0) { - element.removeClass(activeClassName); + $$jqLite.removeClass(element, activeClassName); animateClose(element, className); activeAnimationComplete(); return; } - if (!staggerTime && styles) { + if (!staggerTime && styles && Object.keys(styles).length > 0) { if (!timings.transitionDuration) { element.css('transition', timings.animationDuration + 's linear all'); appliedStyles.push('transition'); @@ -1889,7 +1890,7 @@ angular.module('ngAnimate', ['ng']) //the jqLite object, so we're safe to use a single variable to house //the styles since there is always only one element being animated var oldStyle = node.getAttribute('style') || ''; - if (oldStyle.charAt(oldStyle.length-1) !== ';') { + if (oldStyle.charAt(oldStyle.length - 1) !== ';') { oldStyle += ';'; } node.setAttribute('style', oldStyle + ' ' + style); @@ -1902,7 +1903,7 @@ angular.module('ngAnimate', ['ng']) var staggerTimeout; if (staggerTime > 0) { - element.addClass(pendingClassName); + $$jqLite.addClass(element, pendingClassName); staggerTimeout = $timeout(function() { staggerTimeout = null; @@ -1913,8 +1914,8 @@ angular.module('ngAnimate', ['ng']) blockAnimations(node, false); } - element.addClass(activeClassName); - element.removeClass(pendingClassName); + $$jqLite.addClass(element, activeClassName); + $$jqLite.removeClass(element, pendingClassName); if (styles) { if (timings.transitionDuration === 0) { @@ -1941,8 +1942,8 @@ angular.module('ngAnimate', ['ng']) // timeout done method. function onEnd() { element.off(css3AnimationEvents, onAnimationProgress); - element.removeClass(activeClassName); - element.removeClass(pendingClassName); + $$jqLite.removeClass(element, activeClassName); + $$jqLite.removeClass(element, pendingClassName); if (staggerTimeout) { $timeout.cancel(staggerTimeout); } @@ -2030,7 +2031,7 @@ angular.module('ngAnimate', ['ng']) } function animateClose(element, className) { - element.removeClass(className); + $$jqLite.removeClass(element, className); var data = element.data(NG_ANIMATE_CSS_DATA_KEY); if (data) { if (data.running) { diff --git a/public/app/bower_components/angular-animate/angular-animate.min.js b/public/app/bower_components/angular-animate/angular-animate.min.js index 90b03a38..1cfef491 100644 --- a/public/app/bower_components/angular-animate/angular-animate.min.js +++ b/public/app/bower_components/angular-animate/angular-animate.min.js @@ -1,33 +1,33 @@ /* - AngularJS v1.3.1 + AngularJS v1.3.12 (c) 2010-2014 Google, Inc. http://angularjs.org License: MIT */ -(function(M,f,S){'use strict';f.module("ngAnimate",["ng"]).directive("ngAnimateChildren",function(){return function(T,B,k){k=k.ngAnimateChildren;f.isString(k)&&0===k.length?B.data("$$ngAnimateChildren",!0):T.$watch(k,function(f){B.data("$$ngAnimateChildren",!!f)})}}).factory("$$animateReflow",["$$rAF","$document",function(f,B){return function(k){return f(function(){k()})}}]).config(["$provide","$animateProvider",function(T,B){function k(f){for(var g=0;g=A&&d>=x&&c()}var m=k(d);a=d.data("$$ngAnimateCSS3Data");if(-1!=m.getAttribute("class").indexOf(b)&&a){var q="",r="";g(b.split(" "),function(a,d){var b=(0=C&&b>=x&&c()}var m=g(e);a=e.data("$$ngAnimateCSS3Data");if(-1!=m.getAttribute("class").indexOf(b)&&a){var k="",t="";n(b.split(" "),function(a, +b){var e=(0ARIA - * attributes that convey state or semantic information about the application in order to allow assistive technologies - * to convey appropriate information to persons with disabilities. + * The `ngAria` module provides support for common + * [ARIA](http://www.w3.org/TR/wai-aria/) + * attributes that convey state or semantic information about the application for users + * of assistive technologies, such as screen readers. * *
* - * # Usage - * To enable the addition of the ARIA tags, just require the module into your application and the tags will - * hook into your ng-show/ng-hide, input, textarea, button, select and ng-required directives and adds the - * appropriate ARIA attributes. + * ## Usage * - * Currently, the following ARIA attributes are implemented: + * For ngAria to do its magic, simply include the module as a dependency. The directives supported + * by ngAria are: + * `ngModel`, `ngDisabled`, `ngShow`, `ngHide`, `ngClick`, `ngDblClick`, and `ngMessages`. * - * + aria-hidden - * + aria-checked - * + aria-disabled - * + aria-required - * + aria-invalid - * + aria-multiline - * + aria-valuenow - * + aria-valuemin - * + aria-valuemax - * + tabindex + * Below is a more detailed breakdown of the attributes handled by ngAria: * - * You can disable individual ARIA attributes by using the {@link ngAria.$ariaProvider#config config} method. + * | Directive | Supported Attributes | + * |---------------------------------------------|----------------------------------------------------------------------------------------| + * | {@link ng.directive:ngModel ngModel} | aria-checked, aria-valuemin, aria-valuemax, aria-valuenow, aria-invalid, aria-required | + * | {@link ng.directive:ngDisabled ngDisabled} | aria-disabled | + * | {@link ng.directive:ngShow ngShow} | aria-hidden | + * | {@link ng.directive:ngHide ngHide} | aria-hidden | + * | {@link ng.directive:ngClick ngClick} | tabindex, keypress event | + * | {@link ng.directive:ngDblclick ngDblclick} | tabindex | + * | {@link module:ngMessages ngMessages} | aria-live | + * + * Find out more information about each directive by reading the + * {@link guide/accessibility ngAria Developer Guide}. + * + * ##Example + * Using ngDisabled with ngAria: + * ```html + * + * ``` + * Becomes: + * ```html + * + * ``` + * + * ##Disabling Attributes + * It's possible to disable individual attributes added by ngAria with the + * {@link ngAria.$ariaProvider#config config} method. For more details, see the + * {@link guide/accessibility Developer Guide}. */ - /* global -ngAriaModule */ var ngAriaModule = angular.module('ngAria', ['ng']). provider('$aria', $AriaProvider); @@ -47,10 +63,20 @@ var ngAriaModule = angular.module('ngAria', ['ng']). * * @description * - * Used for configuring ARIA attributes. + * Used for configuring the ARIA attributes injected and managed by ngAria. + * + * ```js + * angular.module('myApp', ['ngAria'], function config($ariaProvider) { + * $ariaProvider.config({ + * ariaValue: true, + * tabindex: false + * }); + * }); + *``` * * ## Dependencies * Requires the {@link ngAria} module to be installed. + * */ function $AriaProvider() { var config = { @@ -61,7 +87,8 @@ function $AriaProvider() { ariaInvalid: true, ariaMultiline: true, ariaValue: true, - tabindex: true + tabindex: true, + bindKeypress: true }; /** @@ -78,6 +105,7 @@ function $AriaProvider() { * - **ariaMultiline** – `{boolean}` – Enables/disables aria-multiline tags * - **ariaValue** – `{boolean}` – Enables/disables aria-valuemin, aria-valuemax and aria-valuenow tags * - **tabindex** – `{boolean}` – Enables/disables tabindex tags + * - **bindKeypress** – `{boolean}` – Enables/disables keypress event binding on ng-click * * @description * Enables/disables various ARIA attributes @@ -86,16 +114,9 @@ function $AriaProvider() { config = angular.extend(config, newConfig); }; - function camelCase(input) { - return input.replace(/-./g, function(letter, pos) { - return letter[1].toUpperCase(); - }); - } - - function watchExpr(attrName, ariaAttr, negate) { - var ariaCamelName = camelCase(ariaAttr); return function(scope, elem, attr) { + var ariaCamelName = attr.$normalize(ariaAttr); if (config[ariaCamelName] && !attr[ariaCamelName]) { scope.$watch(attr[attrName], function(boolVal) { if (negate) { @@ -113,7 +134,41 @@ function $AriaProvider() { * * @description * - * Contains helper methods for applying ARIA attributes to HTML + * The $aria service contains helper methods for applying common + * [ARIA](http://www.w3.org/TR/wai-aria/) attributes to HTML directives. + * + * ngAria injects common accessibility attributes that tell assistive technologies when HTML + * elements are enabled, selected, hidden, and more. To see how this is performed with ngAria, + * let's review a code snippet from ngAria itself: + * + *```js + * ngAriaModule.directive('ngDisabled', ['$aria', function($aria) { + * return $aria.$$watchExpr('ngDisabled', 'aria-disabled'); + * }]) + *``` + * Shown above, the ngAria module creates a directive with the same signature as the + * traditional `ng-disabled` directive. But this ngAria version is dedicated to + * solely managing accessibility attributes. The internal `$aria` service is used to watch the + * boolean attribute `ngDisabled`. If it has not been explicitly set by the developer, + * `aria-disabled` is injected as an attribute with its value synchronized to the value in + * `ngDisabled`. + * + * Because ngAria hooks into the `ng-disabled` directive, developers do not have to do + * anything to enable this feature. The `aria-disabled` attribute is automatically managed + * simply as a silent side-effect of using `ng-disabled` with the ngAria module. + * + * The full list of directives that interface with ngAria: + * * **ngModel** + * * **ngShow** + * * **ngHide** + * * **ngClick** + * * **ngDblclick** + * * **ngMessages** + * * **ngDisabled** + * + * Read the {@link guide/accessibility ngAria Developer Guide} for a thorough explanation of each + * directive. + * * * ## Dependencies * Requires the {@link ngAria} module to be installed. @@ -121,20 +176,13 @@ function $AriaProvider() { this.$get = function() { return { config: function(key) { - return config[camelCase(key)]; + return config[key]; }, $$watchExpr: watchExpr }; }; } -var ngAriaTabindex = ['$aria', function($aria) { - return function(scope, elem, attr) { - if ($aria.config('tabindex') && !elem.attr('tabindex')) { - elem.attr('tabindex', 0); - } - }; -}]; ngAriaModule.directive('ngShow', ['$aria', function($aria) { return $aria.$$watchExpr('ngShow', 'aria-hidden', true); @@ -144,8 +192,8 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { }]) .directive('ngModel', ['$aria', function($aria) { - function shouldAttachAttr(attr, elem) { - return $aria.config(attr) && !elem.attr(attr); + function shouldAttachAttr(attr, normalizedAttr, elem) { + return $aria.config(normalizedAttr) && !elem.attr(attr); } function getShape(attr, elem) { @@ -163,7 +211,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { require: '?ngModel', link: function(scope, elem, attr, ngModel) { var shape = getShape(attr, elem); - var needsTabIndex = shouldAttachAttr('tabindex', elem); + var needsTabIndex = shouldAttachAttr('tabindex', 'tabindex', elem); function ngAriaWatchModelValue() { return ngModel.$modelValue; @@ -191,7 +239,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { switch (shape) { case 'radio': case 'checkbox': - if (shouldAttachAttr('aria-checked', elem)) { + if (shouldAttachAttr('aria-checked', 'ariaChecked', elem)) { scope.$watch(ngAriaWatchModelValue, shape === 'radio' ? getRadioReaction() : ngAriaCheckboxReaction); } @@ -212,7 +260,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { } break; case 'multiline': - if (shouldAttachAttr('aria-multiline', elem)) { + if (shouldAttachAttr('aria-multiline', 'ariaMultiline', elem)) { elem.attr('aria-multiline', true); } break; @@ -222,7 +270,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { elem.attr('tabindex', 0); } - if (ngModel.$validators.required && shouldAttachAttr('aria-required', elem)) { + if (ngModel.$validators.required && shouldAttachAttr('aria-required', 'ariaRequired', elem)) { scope.$watch(function ngAriaRequiredWatch() { return ngModel.$error.required; }, function ngAriaRequiredReaction(newVal) { @@ -230,7 +278,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { }); } - if (shouldAttachAttr('aria-invalid', elem)) { + if (shouldAttachAttr('aria-invalid', 'ariaInvalid', elem)) { scope.$watch(function ngAriaInvalidWatch() { return ngModel.$invalid; }, function ngAriaInvalidReaction(newVal) { @@ -243,8 +291,49 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { .directive('ngDisabled', ['$aria', function($aria) { return $aria.$$watchExpr('ngDisabled', 'aria-disabled'); }]) -.directive('ngClick', ngAriaTabindex) -.directive('ngDblclick', ngAriaTabindex); +.directive('ngMessages', function() { + return { + restrict: 'A', + require: '?ngMessages', + link: function(scope, elem, attr, ngMessages) { + if (!elem.attr('aria-live')) { + elem.attr('aria-live', 'assertive'); + } + } + }; +}) +.directive('ngClick',['$aria', '$parse', function($aria, $parse) { + return { + restrict: 'A', + compile: function(elem, attr) { + var fn = $parse(attr.ngClick, /* interceptorFn */ null, /* expensiveChecks */ true); + return function(scope, elem, attr) { + if ($aria.config('tabindex') && !elem.attr('tabindex')) { + elem.attr('tabindex', 0); + } + + if ($aria.config('bindKeypress') && !attr.ngKeypress) { + elem.on('keypress', function(event) { + if (event.keyCode === 32 || event.keyCode === 13) { + scope.$apply(callback); + } + + function callback() { + fn(scope, { $event: event }); + } + }); + } + }; + } + }; +}]) +.directive('ngDblclick', ['$aria', function($aria) { + return function(scope, elem, attr) { + if ($aria.config('tabindex') && !elem.attr('tabindex')) { + elem.attr('tabindex', 0); + } + }; +}]); })(window, window.angular); diff --git a/public/app/bower_components/angular-aria/angular-aria.min.js b/public/app/bower_components/angular-aria/angular-aria.min.js index f5555ef7..f29a69a7 100644 --- a/public/app/bower_components/angular-aria/angular-aria.min.js +++ b/public/app/bower_components/angular-aria/angular-aria.min.js @@ -1,11 +1,12 @@ /* - AngularJS v1.3.1 + AngularJS v1.3.12 (c) 2010-2014 Google, Inc. http://angularjs.org License: MIT */ -(function(h,k,p){'use strict';h=["$aria",function(c){return function(e,f,a){c.config("tabindex")&&!f.attr("tabindex")&&f.attr("tabindex",0)}}];k.module("ngAria",["ng"]).provider("$aria",function(){function c(a){return a.replace(/-./g,function(b,a){return b[1].toUpperCase()})}function e(a,b,g){var d=c(b);return function(c,e,l){f[d]&&!l[d]&&c.$watch(l[a],function(a){g&&(a=!a);e.attr(b,a)})}}var f={ariaHidden:!0,ariaChecked:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaMultiline:!0,ariaValue:!0, -tabindex:!0};this.config=function(a){f=k.extend(f,a)};this.$get=function(){return{config:function(a){return f[c(a)]},$$watchExpr:e}}}).directive("ngShow",["$aria",function(c){return c.$$watchExpr("ngShow","aria-hidden",!0)}]).directive("ngHide",["$aria",function(c){return c.$$watchExpr("ngHide","aria-hidden",!1)}]).directive("ngModel",["$aria",function(c){function e(a,b){return c.config(a)&&!b.attr(a)}function f(a,b){var c=a.type,d=a.role;return"checkbox"===(c||d)||"menuitemcheckbox"===d?"checkbox": -"radio"===(c||d)||"menuitemradio"===d?"radio":"range"===c||"progressbar"===d||"slider"===d?"range":"textbox"===(c||d)||"TEXTAREA"===b[0].nodeName?"multiline":""}return{restrict:"A",require:"?ngModel",link:function(a,b,g,d){function h(){return d.$modelValue}function k(){return m?(m=!1,function(a){a=a===g.value;b.attr("aria-checked",a);b.attr("tabindex",0-!a)}):function(a){b.attr("aria-checked",a===g.value)}}function l(a){b.attr("aria-checked",!!a)}var n=f(g,b),m=e("tabindex",b);switch(n){case "radio":case "checkbox":e("aria-checked", -b)&&a.$watch(h,"radio"===n?k():l);break;case "range":c.config("ariaValue")&&(g.min&&!b.attr("aria-valuemin")&&b.attr("aria-valuemin",g.min),g.max&&!b.attr("aria-valuemax")&&b.attr("aria-valuemax",g.max),b.attr("aria-valuenow")||a.$watch(h,function(a){b.attr("aria-valuenow",a)}));break;case "multiline":e("aria-multiline",b)&&b.attr("aria-multiline",!0)}m&&b.attr("tabindex",0);d.$validators.required&&e("aria-required",b)&&a.$watch(function(){return d.$error.required},function(a){b.attr("aria-required", -!!a)});e("aria-invalid",b)&&a.$watch(function(){return d.$invalid},function(a){b.attr("aria-invalid",!!a)})}}}]).directive("ngDisabled",["$aria",function(c){return c.$$watchExpr("ngDisabled","aria-disabled")}]).directive("ngClick",h).directive("ngDblclick",h)})(window,window.angular); +(function(p,k,q){'use strict';k.module("ngAria",["ng"]).provider("$aria",function(){function b(b,e,c){return function(d,h,f){var l=f.$normalize(e);a[l]&&!f[l]&&d.$watch(f[b],function(d){c&&(d=!d);h.attr(e,d)})}}var a={ariaHidden:!0,ariaChecked:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaMultiline:!0,ariaValue:!0,tabindex:!0,bindKeypress:!0};this.config=function(b){a=k.extend(a,b)};this.$get=function(){return{config:function(b){return a[b]},$$watchExpr:b}}}).directive("ngShow",["$aria",function(b){return b.$$watchExpr("ngShow", +"aria-hidden",!0)}]).directive("ngHide",["$aria",function(b){return b.$$watchExpr("ngHide","aria-hidden",!1)}]).directive("ngModel",["$aria",function(b){function a(a,c,d){return b.config(c)&&!d.attr(a)}function g(b,c){var d=b.type,a=b.role;return"checkbox"===(d||a)||"menuitemcheckbox"===a?"checkbox":"radio"===(d||a)||"menuitemradio"===a?"radio":"range"===d||"progressbar"===a||"slider"===a?"range":"textbox"===(d||a)||"TEXTAREA"===c[0].nodeName?"multiline":""}return{restrict:"A",require:"?ngModel", +link:function(e,c,d,h){function f(){return h.$modelValue}function l(){return m?(m=!1,function(a){a=a===d.value;c.attr("aria-checked",a);c.attr("tabindex",0-!a)}):function(a){c.attr("aria-checked",a===d.value)}}function n(a){c.attr("aria-checked",!!a)}var k=g(d,c),m=a("tabindex","tabindex",c);switch(k){case "radio":case "checkbox":a("aria-checked","ariaChecked",c)&&e.$watch(f,"radio"===k?l():n);break;case "range":b.config("ariaValue")&&(d.min&&!c.attr("aria-valuemin")&&c.attr("aria-valuemin",d.min), +d.max&&!c.attr("aria-valuemax")&&c.attr("aria-valuemax",d.max),c.attr("aria-valuenow")||e.$watch(f,function(a){c.attr("aria-valuenow",a)}));break;case "multiline":a("aria-multiline","ariaMultiline",c)&&c.attr("aria-multiline",!0)}m&&c.attr("tabindex",0);h.$validators.required&&a("aria-required","ariaRequired",c)&&e.$watch(function(){return h.$error.required},function(a){c.attr("aria-required",!!a)});a("aria-invalid","ariaInvalid",c)&&e.$watch(function(){return h.$invalid},function(a){c.attr("aria-invalid", +!!a)})}}}]).directive("ngDisabled",["$aria",function(b){return b.$$watchExpr("ngDisabled","aria-disabled")}]).directive("ngMessages",function(){return{restrict:"A",require:"?ngMessages",link:function(b,a,g,e){a.attr("aria-live")||a.attr("aria-live","assertive")}}}).directive("ngClick",["$aria","$parse",function(b,a){return{restrict:"A",compile:function(g,e){var c=a(e.ngClick,null,!0);return function(a,e,f){b.config("tabindex")&&!e.attr("tabindex")&&e.attr("tabindex",0);if(b.config("bindKeypress")&& +!f.ngKeypress)e.on("keypress",function(b){function e(){c(a,{$event:b})}32!==b.keyCode&&13!==b.keyCode||a.$apply(e)})}}}}]).directive("ngDblclick",["$aria",function(b){return function(a,g,e){b.config("tabindex")&&!g.attr("tabindex")&&g.attr("tabindex",0)}}])})(window,window.angular); //# sourceMappingURL=angular-aria.min.js.map diff --git a/public/app/bower_components/angular-aria/angular-aria.min.js.map b/public/app/bower_components/angular-aria/angular-aria.min.js.map index 0df66432..a32afc5a 100644 --- a/public/app/bower_components/angular-aria/angular-aria.min.js.map +++ b/public/app/bower_components/angular-aria/angular-aria.min.js.map @@ -1,8 +1,8 @@ { "version":3, "file":"angular-aria.min.js", -"lineCount":10, -"mappings":"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", +"lineCount":11, +"mappings":"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", "sources":["angular-aria.js"], -"names":["window","angular","undefined","ngAriaTabindex","$aria","scope","elem","attr","config","module","provider","ngAriaModule","$AriaProvider","camelCase","input","replace","letter","pos","toUpperCase","watchExpr","attrName","ariaAttr","negate","ariaCamelName","$watch","boolVal","ariaHidden","ariaChecked","ariaDisabled","ariaRequired","ariaInvalid","ariaMultiline","ariaValue","tabindex","this.config","newConfig","extend","$get","this.$get","key","$$watchExpr","directive","shouldAttachAttr","getShape","type","role","nodeName","restrict","require","link","ngModel","ngAriaWatchModelValue","$modelValue","getRadioReaction","needsTabIndex","ngAriaRadioReaction","newVal","value","ngAriaCheckboxReaction","shape","min","max","ngAriaValueNowReaction","$validators","required","ngAriaRequiredWatch","$error","ngAriaRequiredReaction","ngAriaInvalidWatch","$invalid","ngAriaInvalidReaction"] +"names":["window","angular","undefined","module","provider","ngAriaModule","$AriaProvider","watchExpr","attrName","ariaAttr","negate","scope","elem","attr","ariaCamelName","$normalize","config","$watch","boolVal","ariaHidden","ariaChecked","ariaDisabled","ariaRequired","ariaInvalid","ariaMultiline","ariaValue","tabindex","bindKeypress","this.config","newConfig","extend","$get","this.$get","key","$$watchExpr","directive","$aria","shouldAttachAttr","normalizedAttr","getShape","type","role","nodeName","restrict","require","link","ngModel","ngAriaWatchModelValue","$modelValue","getRadioReaction","needsTabIndex","ngAriaRadioReaction","newVal","value","ngAriaCheckboxReaction","shape","min","max","ngAriaValueNowReaction","$validators","required","ngAriaRequiredWatch","$error","ngAriaRequiredReaction","ngAriaInvalidWatch","$invalid","ngAriaInvalidReaction","ngMessages","$parse","compile","fn","ngClick","ngKeypress","on","event","callback","$event","keyCode","$apply"] } diff --git a/public/app/bower_components/angular-aria/bower.json b/public/app/bower_components/angular-aria/bower.json index d7e0441e..c0f0853b 100644 --- a/public/app/bower_components/angular-aria/bower.json +++ b/public/app/bower_components/angular-aria/bower.json @@ -1,9 +1,9 @@ { "name": "angular-aria", - "version": "1.3.1", + "version": "1.3.12", "main": "./angular-aria.js", "ignore": [], "dependencies": { - "angular": "1.3.1" + "angular": "1.3.12" } } diff --git a/public/app/bower_components/angular-aria/package.json b/public/app/bower_components/angular-aria/package.json index 1ad9650e..d1064297 100644 --- a/public/app/bower_components/angular-aria/package.json +++ b/public/app/bower_components/angular-aria/package.json @@ -1,6 +1,6 @@ { "name": "angular-aria", - "version": "1.3.1", + "version": "1.3.12", "description": "AngularJS module for making accessibility easy", "main": "angular-aria.js", "scripts": { diff --git a/public/app/bower_components/angular-i18n/.bower.json b/public/app/bower_components/angular-i18n/.bower.json index 6e006d72..cddab009 100644 --- a/public/app/bower_components/angular-i18n/.bower.json +++ b/public/app/bower_components/angular-i18n/.bower.json @@ -1,17 +1,17 @@ { "name": "angular-i18n", - "version": "1.3.1", + "version": "1.3.12", "ignore": [ "**/.*", "node_modules", "components" ], "homepage": "https://github.com/angular/bower-angular-i18n", - "_release": "1.3.1", + "_release": "1.3.12", "_resolution": { "type": "version", - "tag": "v1.3.1", - "commit": "805a118d8935a5ac3959106fce5d68162e1eb3ae" + "tag": "v1.3.12", + "commit": "296cd4fa9d232b1ec11631edff8f76f6b874a772" }, "_source": "git://github.com/angular/bower-angular-i18n.git", "_target": "~1.3.1", diff --git a/public/app/bower_components/angular-i18n/angular-locale_af-na.js b/public/app/bower_components/angular-i18n/angular-locale_af-na.js index 84f77c9e..8d79b1f9 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_af-na.js +++ b/public/app/bower_components/angular-i18n/angular-locale_af-na.js @@ -40,9 +40,9 @@ $provide.value("$locale", { "Sa" ], "SHORTMONTH": [ - "Jan", - "Feb", - "Mar", + "Jan.", + "Feb.", + "Mrt.", "Apr", "Mei", "Jun", diff --git a/public/app/bower_components/angular-i18n/angular-locale_af-za.js b/public/app/bower_components/angular-i18n/angular-locale_af-za.js index f3e01307..63964939 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_af-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_af-za.js @@ -40,9 +40,9 @@ $provide.value("$locale", { "Sa" ], "SHORTMONTH": [ - "Jan", - "Feb", - "Mar", + "Jan.", + "Feb.", + "Mrt.", "Apr", "Mei", "Jun", @@ -53,7 +53,7 @@ $provide.value("$locale", { "Nov", "Des" ], - "fullDate": "EEEE dd MMMM y", + "fullDate": "EEEE, dd MMMM y", "longDate": "dd MMMM y", "medium": "dd MMM y h:mm:ss a", "mediumDate": "dd MMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_af.js b/public/app/bower_components/angular-i18n/angular-locale_af.js index 5b948807..7a2d41d3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_af.js +++ b/public/app/bower_components/angular-i18n/angular-locale_af.js @@ -40,9 +40,9 @@ $provide.value("$locale", { "Sa" ], "SHORTMONTH": [ - "Jan", - "Feb", - "Mar", + "Jan.", + "Feb.", + "Mrt.", "Apr", "Mei", "Jun", @@ -53,7 +53,7 @@ $provide.value("$locale", { "Nov", "Des" ], - "fullDate": "EEEE dd MMMM y", + "fullDate": "EEEE, dd MMMM y", "longDate": "dd MMMM y", "medium": "dd MMM y h:mm:ss a", "mediumDate": "dd MMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_am-et.js b/public/app/bower_components/angular-i18n/angular-locale_am-et.js index 71bbd98e..64641978 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_am-et.js +++ b/public/app/bower_components/angular-i18n/angular-locale_am-et.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "\u1301\u120b\u12ed", "\u12a6\u1308\u1235\u1275", "\u1234\u1355\u1274\u121d\u1260\u122d", - "\u12a6\u12ad\u1270\u12cd\u1260\u122d", + "\u12a6\u12ad\u1276\u1260\u122d", "\u1296\u126c\u121d\u1260\u122d", "\u12f2\u1234\u121d\u1260\u122d" ], @@ -49,7 +49,7 @@ $provide.value("$locale", { "\u1301\u120b\u12ed", "\u12a6\u1308\u1235", "\u1234\u1355\u1274", - "\u12a6\u12ad\u1270", + "\u12a6\u12ad\u1276", "\u1296\u126c\u121d", "\u12f2\u1234\u121d" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_am.js b/public/app/bower_components/angular-i18n/angular-locale_am.js index 82a07452..f52737bf 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_am.js +++ b/public/app/bower_components/angular-i18n/angular-locale_am.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "\u1301\u120b\u12ed", "\u12a6\u1308\u1235\u1275", "\u1234\u1355\u1274\u121d\u1260\u122d", - "\u12a6\u12ad\u1270\u12cd\u1260\u122d", + "\u12a6\u12ad\u1276\u1260\u122d", "\u1296\u126c\u121d\u1260\u122d", "\u12f2\u1234\u121d\u1260\u122d" ], @@ -49,7 +49,7 @@ $provide.value("$locale", { "\u1301\u120b\u12ed", "\u12a6\u1308\u1235", "\u1234\u1355\u1274", - "\u12a6\u12ad\u1270", + "\u12a6\u12ad\u1276", "\u1296\u126c\u121d", "\u12f2\u1234\u121d" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_ast-es.js b/public/app/bower_components/angular-i18n/angular-locale_ast-es.js index 71002f88..5dffeda5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ast-es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ast-es.js @@ -38,15 +38,15 @@ $provide.value("$locale", { "de xineru", "de febreru", "de marzu", - "d'abril", + "d\u2019abril", "de mayu", "de xunu", "de xunetu", - "d'agostu", + "d\u2019agostu", "de setiembre", - "d'ochobre", + "d\u2019ochobre", "de payares", - "d'avientu" + "d\u2019avientu" ], "SHORTDAY": [ "dom", @@ -71,7 +71,7 @@ $provide.value("$locale", { "pay", "avi" ], - "fullDate": "EEEE, dd MMMM 'de' y", + "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ast.js b/public/app/bower_components/angular-i18n/angular-locale_ast.js index 7d39738b..4b07ddd0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ast.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ast.js @@ -38,15 +38,15 @@ $provide.value("$locale", { "de xineru", "de febreru", "de marzu", - "d'abril", + "d\u2019abril", "de mayu", "de xunu", "de xunetu", - "d'agostu", + "d\u2019agostu", "de setiembre", - "d'ochobre", + "d\u2019ochobre", "de payares", - "d'avientu" + "d\u2019avientu" ], "SHORTDAY": [ "dom", @@ -71,7 +71,7 @@ $provide.value("$locale", { "pay", "avi" ], - "fullDate": "EEEE, dd MMMM 'de' y", + "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_az-cyrl-az.js b/public/app/bower_components/angular-i18n/angular-locale_az-cyrl-az.js index f904656b..52b4ed17 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az-cyrl-az.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az-cyrl-az.js @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440" ], "SHORTDAY": [ - "B.", - "B.E.", - "\u00c7.A.", - "\u00c7.", - "C.A.", - "C", - "\u015e." + "\u0431\u0430\u0437\u0430\u0440", + "\u0431\u0430\u0437\u0430\u0440 \u0435\u0440\u0442\u04d9\u0441\u0438", + "\u0447\u04d9\u0440\u0448\u04d9\u043d\u0431\u04d9 \u0430\u0445\u0448\u0430\u043c\u044b", + "\u0447\u04d9\u0440\u0448\u04d9\u043d\u0431\u04d9", + "\u04b9\u04af\u043c\u04d9 \u0430\u0445\u0448\u0430\u043c\u044b", + "\u04b9\u04af\u043c\u04d9", + "\u0448\u04d9\u043d\u0431\u04d9" ], "SHORTMONTH": [ - "yan", - "fev", - "mar", - "apr", - "may", - "iyn", - "iyl", - "avq", - "sen", - "okt", - "noy", - "dek" + "\u0458\u0430\u043d\u0432\u0430\u0440", + "\u0444\u0435\u0432\u0440\u0430\u043b", + "\u043c\u0430\u0440\u0442", + "\u0430\u043f\u0440\u0435\u043b", + "\u043c\u0430\u0439", + "\u0438\u0458\u0443\u043d", + "\u0438\u0458\u0443\u043b", + "\u0430\u0432\u0433\u0443\u0441\u0442", + "\u0441\u0435\u043d\u0442\u0458\u0430\u0431\u0440", + "\u043e\u043a\u0442\u0458\u0430\u0431\u0440", + "\u043d\u043e\u0458\u0430\u0431\u0440", + "\u0434\u0435\u043a\u0430\u0431\u0440" ], "fullDate": "EEEE, d, MMMM, y", "longDate": "d MMMM, y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_az-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_az-cyrl.js index d18ed470..40dfe742 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az-cyrl.js @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440" ], "SHORTDAY": [ - "B.", - "B.E.", - "\u00c7.A.", - "\u00c7.", - "C.A.", - "C", - "\u015e." + "\u0431\u0430\u0437\u0430\u0440", + "\u0431\u0430\u0437\u0430\u0440 \u0435\u0440\u0442\u04d9\u0441\u0438", + "\u0447\u04d9\u0440\u0448\u04d9\u043d\u0431\u04d9 \u0430\u0445\u0448\u0430\u043c\u044b", + "\u0447\u04d9\u0440\u0448\u04d9\u043d\u0431\u04d9", + "\u04b9\u04af\u043c\u04d9 \u0430\u0445\u0448\u0430\u043c\u044b", + "\u04b9\u04af\u043c\u04d9", + "\u0448\u04d9\u043d\u0431\u04d9" ], "SHORTMONTH": [ - "yan", - "fev", - "mar", - "apr", - "may", - "iyn", - "iyl", - "avq", - "sen", - "okt", - "noy", - "dek" + "\u0458\u0430\u043d\u0432\u0430\u0440", + "\u0444\u0435\u0432\u0440\u0430\u043b", + "\u043c\u0430\u0440\u0442", + "\u0430\u043f\u0440\u0435\u043b", + "\u043c\u0430\u0439", + "\u0438\u0458\u0443\u043d", + "\u0438\u0458\u0443\u043b", + "\u0430\u0432\u0433\u0443\u0441\u0442", + "\u0441\u0435\u043d\u0442\u0458\u0430\u0431\u0440", + "\u043e\u043a\u0442\u0458\u0430\u0431\u0440", + "\u043d\u043e\u0458\u0430\u0431\u0440", + "\u0434\u0435\u043a\u0430\u0431\u0440" ], "fullDate": "EEEE, d, MMMM, y", "longDate": "d MMMM, y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_az-latn-az.js b/public/app/bower_components/angular-i18n/angular-locale_az-latn-az.js index 80cec56b..d805ea58 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az-latn-az.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az-latn-az.js @@ -36,7 +36,7 @@ $provide.value("$locale", { "\u00c7.A.", "\u00c7.", "C.A.", - "C", + "C.", "\u015e." ], "SHORTMONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_az-latn.js b/public/app/bower_components/angular-i18n/angular-locale_az-latn.js index ac82a0a5..b5bbc4c0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az-latn.js @@ -36,7 +36,7 @@ $provide.value("$locale", { "\u00c7.A.", "\u00c7.", "C.A.", - "C", + "C.", "\u015e." ], "SHORTMONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_az.js b/public/app/bower_components/angular-i18n/angular-locale_az.js index f00497b7..7b296d54 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az.js @@ -36,7 +36,7 @@ $provide.value("$locale", { "\u00c7.A.", "\u00c7.", "C.A.", - "C", + "C.", "\u015e." ], "SHORTMONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_bg-bg.js b/public/app/bower_components/angular-i18n/angular-locale_bg-bg.js index 6da9f5b0..20b7b26e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bg-bg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bg-bg.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d.MM.y '\u0433'. H:mm:ss", "mediumDate": "d.MM.y '\u0433'.", "mediumTime": "H:mm:ss", - "short": "d.MM.yy H:mm", - "shortDate": "d.MM.yy", + "short": "d.MM.yy '\u0433'. H:mm", + "shortDate": "d.MM.yy '\u0433'.", "shortTime": "H:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_bg.js b/public/app/bower_components/angular-i18n/angular-locale_bg.js index ea9884ea..25983651 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bg.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d.MM.y '\u0433'. H:mm:ss", "mediumDate": "d.MM.y '\u0433'.", "mediumTime": "H:mm:ss", - "short": "d.MM.yy H:mm", - "shortDate": "d.MM.yy", + "short": "d.MM.yy '\u0433'. H:mm", + "shortDate": "d.MM.yy '\u0433'.", "shortTime": "H:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_bm-latn-ml.js b/public/app/bower_components/angular-i18n/angular-locale_bm-latn-ml.js new file mode 100644 index 00000000..e8214c5f --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_bm-latn-ml.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "kari", + "nt\u025bn\u025b", + "tarata", + "araba", + "alamisa", + "juma", + "sibiri" + ], + "MONTH": [ + "zanwuye", + "feburuye", + "marisi", + "awirili", + "m\u025b", + "zuw\u025bn", + "zuluye", + "uti", + "s\u025btanburu", + "\u0254kut\u0254buru", + "nowanburu", + "desanburu" + ], + "SHORTDAY": [ + "kar", + "nt\u025b", + "tar", + "ara", + "ala", + "jum", + "sib" + ], + "SHORTMONTH": [ + "zan", + "feb", + "mar", + "awi", + "m\u025b", + "zuw", + "zul", + "uti", + "s\u025bt", + "\u0254ku", + "now", + "des" + ], + "fullDate": "EEEE d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM, y HH:mm:ss", + "mediumDate": "d MMM, y", + "mediumTime": "HH:mm:ss", + "short": "d/M/y HH:mm", + "shortDate": "d/M/y", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "CFA", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" + } + ] + }, + "id": "bm-latn-ml", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_bm-latn.js b/public/app/bower_components/angular-i18n/angular-locale_bm-latn.js new file mode 100644 index 00000000..cc90ba44 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_bm-latn.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "kari", + "nt\u025bn\u025b", + "tarata", + "araba", + "alamisa", + "juma", + "sibiri" + ], + "MONTH": [ + "zanwuye", + "feburuye", + "marisi", + "awirili", + "m\u025b", + "zuw\u025bn", + "zuluye", + "uti", + "s\u025btanburu", + "\u0254kut\u0254buru", + "nowanburu", + "desanburu" + ], + "SHORTDAY": [ + "kar", + "nt\u025b", + "tar", + "ara", + "ala", + "jum", + "sib" + ], + "SHORTMONTH": [ + "zan", + "feb", + "mar", + "awi", + "m\u025b", + "zuw", + "zul", + "uti", + "s\u025bt", + "\u0254ku", + "now", + "des" + ], + "fullDate": "EEEE d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM, y HH:mm:ss", + "mediumDate": "d MMM, y", + "mediumTime": "HH:mm:ss", + "short": "d/M/y HH:mm", + "shortDate": "d/M/y", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" + } + ] + }, + "id": "bm-latn", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_bn-bd.js b/public/app/bower_components/angular-i18n/angular-locale_bn-bd.js index df9cd7d1..2443e9b5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bn-bd.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bn-bd.js @@ -12,7 +12,7 @@ $provide.value("$locale", { "\u09b8\u09cb\u09ae\u09ac\u09be\u09b0", "\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0", "\u09ac\u09c1\u09a7\u09ac\u09be\u09b0", - "\u09ac\u09c3\u09b9\u09b7\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", + "\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", "\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0", "\u09b6\u09a8\u09bf\u09ac\u09be\u09b0" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_bn-in.js b/public/app/bower_components/angular-i18n/angular-locale_bn-in.js index 73f43294..2183318e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bn-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bn-in.js @@ -12,7 +12,7 @@ $provide.value("$locale", { "\u09b8\u09cb\u09ae\u09ac\u09be\u09b0", "\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0", "\u09ac\u09c1\u09a7\u09ac\u09be\u09b0", - "\u09ac\u09c3\u09b9\u09b7\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", + "\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", "\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0", "\u09b6\u09a8\u09bf\u09ac\u09be\u09b0" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_bn.js b/public/app/bower_components/angular-i18n/angular-locale_bn.js index 118cf63c..4d6730dd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bn.js @@ -12,7 +12,7 @@ $provide.value("$locale", { "\u09b8\u09cb\u09ae\u09ac\u09be\u09b0", "\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0", "\u09ac\u09c1\u09a7\u09ac\u09be\u09b0", - "\u09ac\u09c3\u09b9\u09b7\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", + "\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", "\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0", "\u09b6\u09a8\u09bf\u09ac\u09be\u09b0" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_bo-cn.js b/public/app/bower_components/angular-i18n/angular-locale_bo-cn.js index fffa99ae..79e1087c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bo-cn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bo-cn.js @@ -29,9 +29,9 @@ $provide.value("$locale", { "\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0f44\u0f66\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "MONTH": [ @@ -52,9 +52,9 @@ $provide.value("$locale", { "\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f66\u0f44\u0f66\u0f0b", + "\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "SHORTMONTH": [ @@ -72,7 +72,7 @@ $provide.value("$locale", { "\u0f5f\u0fb3\u0f0b\u0f21\u0f22" ], "fullDate": "y MMMM d, EEEE", - "longDate": "\u0f66\u0fa6\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", + "longDate": "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", "medium": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd HH:mm:ss", "mediumDate": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_bo-in.js b/public/app/bower_components/angular-i18n/angular-locale_bo-in.js index 54de930b..64b482c8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bo-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bo-in.js @@ -29,9 +29,9 @@ $provide.value("$locale", { "\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0f44\u0f66\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "MONTH": [ @@ -52,9 +52,9 @@ $provide.value("$locale", { "\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f66\u0f44\u0f66\u0f0b", + "\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "SHORTMONTH": [ @@ -72,7 +72,7 @@ $provide.value("$locale", { "\u0f5f\u0fb3\u0f0b\u0f21\u0f22" ], "fullDate": "y MMMM d, EEEE", - "longDate": "\u0f66\u0fa6\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", + "longDate": "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", "medium": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd HH:mm:ss", "mediumDate": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_bo.js b/public/app/bower_components/angular-i18n/angular-locale_bo.js index 881b1b31..c97bc68f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bo.js @@ -29,9 +29,9 @@ $provide.value("$locale", { "\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0f44\u0f66\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "MONTH": [ @@ -52,9 +52,9 @@ $provide.value("$locale", { "\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f66\u0f44\u0f66\u0f0b", + "\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "SHORTMONTH": [ @@ -72,7 +72,7 @@ $provide.value("$locale", { "\u0f5f\u0fb3\u0f0b\u0f21\u0f22" ], "fullDate": "y MMMM d, EEEE", - "longDate": "\u0f66\u0fa6\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", + "longDate": "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", "medium": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd HH:mm:ss", "mediumDate": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_br-fr.js b/public/app/bower_components/angular-i18n/angular-locale_br-fr.js index ae40e7d1..c63e558a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_br-fr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_br-fr.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "A.M.", + "G.M." ], "DAY": [ "Sul", @@ -31,13 +31,13 @@ $provide.value("$locale", { "Kerzu" ], "SHORTDAY": [ - "sul", - "lun", - "meu.", - "mer.", - "yaou", - "gwe.", - "sad." + "Sul", + "Lun", + "Meu.", + "Mer.", + "Yaou", + "Gwe.", + "Sad." ], "SHORTMONTH": [ "Gen", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_br.js b/public/app/bower_components/angular-i18n/angular-locale_br.js index c93fc74e..08114a67 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_br.js +++ b/public/app/bower_components/angular-i18n/angular-locale_br.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "A.M.", + "G.M." ], "DAY": [ "Sul", @@ -31,13 +31,13 @@ $provide.value("$locale", { "Kerzu" ], "SHORTDAY": [ - "sul", - "lun", - "meu.", - "mer.", - "yaou", - "gwe.", - "sad." + "Sul", + "Lun", + "Meu.", + "Mer.", + "Yaou", + "Gwe.", + "Sad." ], "SHORTMONTH": [ "Gen", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_bs-latn-ba.js b/public/app/bower_components/angular-i18n/angular-locale_bs-latn-ba.js index 9e8c87ad..978b4519 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bs-latn-ba.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bs-latn-ba.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "pre podne", + "prije podne", "popodne" ], "DAY": [ @@ -42,7 +42,7 @@ $provide.value("$locale", { "maj", "juni", "juli", - "avgust", + "august", "septembar", "oktobar", "novembar", @@ -65,7 +65,7 @@ $provide.value("$locale", { "maj", "jun", "jul", - "avg", + "aug", "sep", "okt", "nov", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y.", "longDate": "dd. MMMM y.", - "medium": "dd.MM.y. HH:mm:ss", - "mediumDate": "dd.MM.y.", + "medium": "dd. MMM. y. HH:mm:ss", + "mediumDate": "dd. MMM. y.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy. HH:mm", "shortDate": "dd.MM.yy.", @@ -102,10 +102,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_bs-latn.js b/public/app/bower_components/angular-i18n/angular-locale_bs-latn.js index 3250375a..ae0a3ba3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bs-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bs-latn.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "pre podne", + "prije podne", "popodne" ], "DAY": [ @@ -42,7 +42,7 @@ $provide.value("$locale", { "maj", "juni", "juli", - "avgust", + "august", "septembar", "oktobar", "novembar", @@ -65,7 +65,7 @@ $provide.value("$locale", { "maj", "jun", "jul", - "avg", + "aug", "sep", "okt", "nov", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y.", "longDate": "dd. MMMM y.", - "medium": "dd.MM.y. HH:mm:ss", - "mediumDate": "dd.MM.y.", + "medium": "dd. MMM. y. HH:mm:ss", + "mediumDate": "dd. MMM. y.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy. HH:mm", "shortDate": "dd.MM.yy.", @@ -102,10 +102,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_bs.js b/public/app/bower_components/angular-i18n/angular-locale_bs.js index 298ea431..11edf78b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bs.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bs.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "pre podne", + "prije podne", "popodne" ], "DAY": [ @@ -42,7 +42,7 @@ $provide.value("$locale", { "maj", "juni", "juli", - "avgust", + "august", "septembar", "oktobar", "novembar", @@ -65,7 +65,7 @@ $provide.value("$locale", { "maj", "jun", "jul", - "avg", + "aug", "sep", "okt", "nov", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y.", "longDate": "dd. MMMM y.", - "medium": "dd.MM.y. HH:mm:ss", - "mediumDate": "dd.MM.y.", + "medium": "dd. MMM. y. HH:mm:ss", + "mediumDate": "dd. MMM. y.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy. HH:mm", "shortDate": "dd.MM.yy.", @@ -102,10 +102,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-ad.js b/public/app/bower_components/angular-i18n/angular-locale_ca-ad.js index 92ee60f9..988c3c1c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-ad.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-ad.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-es-valencia.js b/public/app/bower_components/angular-i18n/angular-locale_ca-es-valencia.js index 781bf6ca..4a1e28a6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-es-valencia.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-es-valencia.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-es.js b/public/app/bower_components/angular-i18n/angular-locale_ca-es.js index 37dcf763..f83aacf2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-es.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-fr.js b/public/app/bower_components/angular-i18n/angular-locale_ca-fr.js index e6c94d3a..232bb242 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-fr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-fr.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-it.js b/public/app/bower_components/angular-i18n/angular-locale_ca-it.js index fa5fb74b..ef4c3f57 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-it.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-it.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca.js b/public/app/bower_components/angular-i18n/angular-locale_ca.js index 486f7771..845f1e31 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_cy-gb.js b/public/app/bower_components/angular-i18n/angular-locale_cy-gb.js index 5b090542..6c96f5c6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_cy-gb.js +++ b/public/app/bower_components/angular-i18n/angular-locale_cy-gb.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/y HH:mm", - "shortDate": "dd/MM/y", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_cy.js b/public/app/bower_components/angular-i18n/angular-locale_cy.js index 87aadb94..18708b52 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_cy.js +++ b/public/app/bower_components/angular-i18n/angular-locale_cy.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/y HH:mm", - "shortDate": "dd/MM/y", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_da-dk.js b/public/app/bower_components/angular-i18n/angular-locale_da-dk.js index 92f549f9..ddce855c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_da-dk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_da-dk.js @@ -85,7 +85,7 @@ $provide.value("$locale", { "dec." ], "fullDate": "EEEE 'den' d. MMMM y", - "longDate": "d. MMM y", + "longDate": "d. MMMM y", "medium": "dd/MM/y HH.mm.ss", "mediumDate": "dd/MM/y", "mediumTime": "HH.mm.ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_da-gl.js b/public/app/bower_components/angular-i18n/angular-locale_da-gl.js index 179f0e47..bd713366 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_da-gl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_da-gl.js @@ -85,7 +85,7 @@ $provide.value("$locale", { "dec." ], "fullDate": "EEEE 'den' d. MMMM y", - "longDate": "d. MMM y", + "longDate": "d. MMMM y", "medium": "dd/MM/y HH.mm.ss", "mediumDate": "dd/MM/y", "mediumTime": "HH.mm.ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_da.js b/public/app/bower_components/angular-i18n/angular-locale_da.js index 9d4a5d32..ca257cc3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_da.js +++ b/public/app/bower_components/angular-i18n/angular-locale_da.js @@ -85,7 +85,7 @@ $provide.value("$locale", { "dec." ], "fullDate": "EEEE 'den' d. MMMM y", - "longDate": "d. MMM y", + "longDate": "d. MMMM y", "medium": "dd/MM/y HH.mm.ss", "mediumDate": "dd/MM/y", "mediumTime": "HH.mm.ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_de-at.js b/public/app/bower_components/angular-i18n/angular-locale_de-at.js index 75a4e3cb..53c651bf 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_de-at.js +++ b/public/app/bower_components/angular-i18n/angular-locale_de-at.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y", "longDate": "dd. MMMM y", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "medium": "dd. MMM y HH:mm:ss", + "mediumDate": "dd. MMM y", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_dsb-de.js b/public/app/bower_components/angular-i18n/angular-locale_dsb-de.js new file mode 100644 index 00000000..5601383c --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_dsb-de.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "dopo\u0142dnja", + "w\u00f3tpo\u0142dnja" + ], + "DAY": [ + "nje\u017aela", + "p\u00f3nje\u017aele", + "wa\u0142tora", + "srjoda", + "stw\u00f3rtk", + "p\u011btk", + "sobota" + ], + "MONTH": [ + "januara", + "februara", + "m\u011brca", + "apryla", + "maja", + "junija", + "julija", + "awgusta", + "septembra", + "oktobra", + "nowembra", + "decembra" + ], + "SHORTDAY": [ + "nje", + "p\u00f3n", + "wa\u0142", + "srj", + "stw", + "p\u011bt", + "sob" + ], + "SHORTMONTH": [ + "jan.", + "feb.", + "m\u011br.", + "apr.", + "maj.", + "jun.", + "jul.", + "awg.", + "sep.", + "okt.", + "now.", + "dec." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d.M.y H:mm:ss", + "mediumDate": "d.M.y", + "mediumTime": "H:mm:ss", + "short": "d.M.yy H:mm", + "shortDate": "d.M.yy", + "shortTime": "H:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ",", + "GROUP_SEP": ".", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "dsb-de", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_dsb.js b/public/app/bower_components/angular-i18n/angular-locale_dsb.js new file mode 100644 index 00000000..4cde28f2 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_dsb.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "dopo\u0142dnja", + "w\u00f3tpo\u0142dnja" + ], + "DAY": [ + "nje\u017aela", + "p\u00f3nje\u017aele", + "wa\u0142tora", + "srjoda", + "stw\u00f3rtk", + "p\u011btk", + "sobota" + ], + "MONTH": [ + "januara", + "februara", + "m\u011brca", + "apryla", + "maja", + "junija", + "julija", + "awgusta", + "septembra", + "oktobra", + "nowembra", + "decembra" + ], + "SHORTDAY": [ + "nje", + "p\u00f3n", + "wa\u0142", + "srj", + "stw", + "p\u011bt", + "sob" + ], + "SHORTMONTH": [ + "jan.", + "feb.", + "m\u011br.", + "apr.", + "maj.", + "jun.", + "jul.", + "awg.", + "sep.", + "okt.", + "now.", + "dec." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d.M.y H:mm:ss", + "mediumDate": "d.M.y", + "mediumTime": "H:mm:ss", + "short": "d.M.yy H:mm", + "shortDate": "d.M.yy", + "shortTime": "H:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ",", + "GROUP_SEP": ".", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "dsb", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-150.js b/public/app/bower_components/angular-i18n/angular-locale_en-150.js index 1eaa820b..bb362029 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-150.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-150.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-au.js b/public/app/bower_components/angular-i18n/angular-locale_en-au.js index 03f5fd7b..0cd27dbd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-au.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-au.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-be.js b/public/app/bower_components/angular-i18n/angular-locale_en-be.js index 0ffec93b..8fc40941 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-be.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-be.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-dg.js b/public/app/bower_components/angular-i18n/angular-locale_en-dg.js index 98a1c800..56dacaae 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-dg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-dg.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-fk.js b/public/app/bower_components/angular-i18n/angular-locale_en-fk.js index b8f2ce17..4a9af0d1 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-fk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-fk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-gg.js b/public/app/bower_components/angular-i18n/angular-locale_en-gg.js index 3f502d97..a7dbbe05 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-gg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-gg.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-gi.js b/public/app/bower_components/angular-i18n/angular-locale_en-gi.js index 5dbe1b62..cef1470b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-gi.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-gi.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-hk.js b/public/app/bower_components/angular-i18n/angular-locale_en-hk.js index 117c7695..d754ed05 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-hk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-hk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,13 +71,13 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, d MMMM, y", - "longDate": "d MMMM, y", - "medium": "d MMM, y h:mm:ss a", - "mediumDate": "d MMM, y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y h:mm:ss a", + "mediumDate": "d MMM y", "mediumTime": "h:mm:ss a", - "short": "d/M/yy h:mm a", - "shortDate": "d/M/yy", + "short": "d/M/y h:mm a", + "shortDate": "d/M/y", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-ie.js b/public/app/bower_components/angular-i18n/angular-locale_en-ie.js index a4a40f8e..16caaa63 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-ie.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-ie.js @@ -72,13 +72,13 @@ $provide.value("$locale", { "Dec" ], "fullDate": "EEEE d MMMM y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u20ac", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-im.js b/public/app/bower_components/angular-i18n/angular-locale_en-im.js index 49857629..a5cf5bb7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-im.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-im.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-in.js b/public/app/bower_components/angular-i18n/angular-locale_en-in.js index 23cdd9db..302a941c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-in.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-io.js b/public/app/bower_components/angular-i18n/angular-locale_en-io.js index 9c6a8be1..c58f045c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-io.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-io.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-je.js b/public/app/bower_components/angular-i18n/angular-locale_en-je.js index 60291ff4..3a8c79c8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-je.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-je.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-mo.js b/public/app/bower_components/angular-i18n/angular-locale_en-mo.js index 52eac37a..816edf00 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-mo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-mo.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "MOP", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-mt.js b/public/app/bower_components/angular-i18n/angular-locale_en-mt.js index 27eb3692..0b8eb3ef 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-mt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-mt.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -73,12 +73,12 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM y", "longDate": "dd MMMM y", - "medium": "dd MMM y h:mm:ss a", + "medium": "dd MMM y HH:mm:ss", "mediumDate": "dd MMM y", - "mediumTime": "h:mm:ss a", - "short": "dd/MM/y h:mm a", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", "shortDate": "dd/MM/y", - "shortTime": "h:mm a" + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u20ac", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-my.js b/public/app/bower_components/angular-i18n/angular-locale_en-my.js new file mode 100644 index 00000000..083838c0 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_en-my.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "MONTH": [ + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December" + ], + "SHORTDAY": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ], + "SHORTMONTH": [ + "Jan", + "Feb", + "Mar", + "Apr", + "May", + "Jun", + "Jul", + "Aug", + "Sep", + "Oct", + "Nov", + "Dec" + ], + "fullDate": "EEEE, MMMM d, y", + "longDate": "MMMM d, y", + "medium": "MMM d, y h:mm:ss a", + "mediumDate": "MMM d, y", + "mediumTime": "h:mm:ss a", + "short": "M/d/yy h:mm a", + "shortDate": "M/d/yy", + "shortTime": "h:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "RM", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" + } + ] + }, + "id": "en-my", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-nz.js b/public/app/bower_components/angular-i18n/angular-locale_en-nz.js index a025b2c0..1b38701f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-nz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-nz.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-pk.js b/public/app/bower_components/angular-i18n/angular-locale_en-pk.js index ad20eb10..92b25676 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-pk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-pk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-sg.js b/public/app/bower_components/angular-i18n/angular-locale_en-sg.js index 3a819c3f..fa0ba784 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-sg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-sg.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-sh.js b/public/app/bower_components/angular-i18n/angular-locale_en-sh.js index fe89591c..2e858730 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-sh.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-sh.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-vg.js b/public/app/bower_components/angular-i18n/angular-locale_en-vg.js index a814d0f9..547a0c7f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-vg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-vg.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, MMMM d, y", - "longDate": "MMMM d, y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", - "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", - "shortTime": "h:mm a" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-419.js b/public/app/bower_components/angular-i18n/angular-locale_es-419.js index 9c23e94c..fe3022f3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-419.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-419.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ar.js b/public/app/bower_components/angular-i18n/angular-locale_es-ar.js index aa9d0166..29a20887 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ar.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ar.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-bo.js b/public/app/bower_components/angular-i18n/angular-locale_es-bo.js index 26828bca..ead66e4e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-bo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-bo.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "Bs", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-cl.js b/public/app/bower_components/angular-i18n/angular-locale_es-cl.js index fc84ae29..461ac29e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-cl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-cl.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "dd-MM-y H:mm:ss", + "medium": "dd-MM-y h:mm:ss a", "mediumDate": "dd-MM-y", - "mediumTime": "H:mm:ss", - "short": "dd-MM-yy H:mm", + "mediumTime": "h:mm:ss a", + "short": "dd-MM-yy h:mm a", "shortDate": "dd-MM-yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-co.js b/public/app/bower_components/angular-i18n/angular-locale_es-co.js index 7a929adc..cf447547 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-co.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-co.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,7 +48,7 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-cr.js b/public/app/bower_components/angular-i18n/angular-locale_es-cr.js index 3dc01eea..5682e9b0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-cr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-cr.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u20a1", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-cu.js b/public/app/bower_components/angular-i18n/angular-locale_es-cu.js index a2c8695e..cd49522a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-cu.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-cu.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-do.js b/public/app/bower_components/angular-i18n/angular-locale_es-do.js index 833b8291..ddb4b41d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-do.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-do.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ea.js b/public/app/bower_components/angular-i18n/angular-locale_es-ea.js index 2233f375..cc1684c0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ea.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ea.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ec.js b/public/app/bower_components/angular-i18n/angular-locale_es-ec.js index 15f46c8f..27b09388 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ec.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ec.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-es.js b/public/app/bower_components/angular-i18n/angular-locale_es-es.js index 81967539..2d689335 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-es.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-gq.js b/public/app/bower_components/angular-i18n/angular-locale_es-gq.js index 2f92c53c..b274cbff 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-gq.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-gq.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-gt.js b/public/app/bower_components/angular-i18n/angular-locale_es-gt.js index 62685ee6..0e9b86f0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-gt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-gt.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/MM/y H:mm:ss", + "medium": "d/MM/y h:mm:ss a", "mediumDate": "d/MM/y", - "mediumTime": "H:mm:ss", - "short": "d/MM/yy H:mm", + "mediumTime": "h:mm:ss a", + "short": "d/MM/yy h:mm a", "shortDate": "d/MM/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "Q", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-hn.js b/public/app/bower_components/angular-i18n/angular-locale_es-hn.js index 80aa6acc..dff7efd4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-hn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-hn.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE dd 'de' MMMM 'de' y", "longDate": "dd 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "L", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ic.js b/public/app/bower_components/angular-i18n/angular-locale_es-ic.js index f280db63..468afbe4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ic.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ic.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-mx.js b/public/app/bower_components/angular-i18n/angular-locale_es-mx.js index 9a64d0a0..a3d99aa0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-mx.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-mx.js @@ -31,36 +31,36 @@ $provide.value("$locale", { "diciembre" ], "SHORTDAY": [ - "dom.", - "lun.", - "mar.", - "mi\u00e9r.", - "jue.", - "vier.", + "dom", + "lun", + "mar", + "mi\u00e9", + "jue", + "vie", "s\u00e1b" ], "SHORTMONTH": [ - "ene.", - "febr.", - "mzo.", - "abr.", - "my.", - "jun.", - "jul.", - "ag.", - "set.", - "oct.", - "nov.", - "dic." + "ene", + "feb", + "mar", + "abr", + "may", + "jun", + "jul", + "ago", + "sep", + "oct", + "nov", + "dic" ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "dd/MM/y HH:mm:ss", + "medium": "dd/MM/y H:mm:ss", "mediumDate": "dd/MM/y", - "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", + "mediumTime": "H:mm:ss", + "short": "dd/MM/yy H:mm", "shortDate": "dd/MM/yy", - "shortTime": "HH:mm" + "shortTime": "H:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ni.js b/public/app/bower_components/angular-i18n/angular-locale_es-ni.js index 21ffe12f..5f5f5966 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ni.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ni.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "C$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-pa.js b/public/app/bower_components/angular-i18n/angular-locale_es-pa.js index 7a2beb96..543aab19 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-pa.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-pa.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "MM/dd/y H:mm:ss", + "medium": "MM/dd/y h:mm:ss a", "mediumDate": "MM/dd/y", - "mediumTime": "H:mm:ss", - "short": "MM/dd/yy H:mm", + "mediumTime": "h:mm:ss a", + "short": "MM/dd/yy h:mm a", "shortDate": "MM/dd/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "B/.", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-pe.js b/public/app/bower_components/angular-i18n/angular-locale_es-pe.js index b18343a6..39297d94 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-pe.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-pe.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/MM/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/MM/yy h:mm a", "shortDate": "d/MM/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "S/.", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ph.js b/public/app/bower_components/angular-i18n/angular-locale_es-ph.js index fbf78cf0..a51444bd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ph.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ph.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-pr.js b/public/app/bower_components/angular-i18n/angular-locale_es-pr.js index d1b32788..8b7d7b7c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-pr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-pr.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,7 +48,7 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." @@ -64,8 +64,8 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-py.js b/public/app/bower_components/angular-i18n/angular-locale_es-py.js index 55e3db0c..59cf9814 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-py.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-py.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "Gs", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-sv.js b/public/app/bower_components/angular-i18n/angular-locale_es-sv.js index 05621f7c..9f3182a6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-sv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-sv.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-us.js b/public/app/bower_components/angular-i18n/angular-locale_es-us.js index 7e6d5088..915c7373 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-us.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-us.js @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-uy.js b/public/app/bower_components/angular-i18n/angular-locale_es-uy.js index c3330494..856cd07f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-uy.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-uy.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ve.js b/public/app/bower_components/angular-i18n/angular-locale_es-ve.js index 65a667c3..5af81067 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ve.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ve.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "Bs", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es.js b/public/app/bower_components/angular-i18n/angular-locale_es.js index 647890bf..cce1c131 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_et-ee.js b/public/app/bower_components/angular-i18n/angular-locale_et-ee.js index f1456fea..5a4d6593 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_et-ee.js +++ b/public/app/bower_components/angular-i18n/angular-locale_et-ee.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d. MMMM y", "longDate": "d. MMMM y", - "medium": "dd.MM.y H:mm.ss", - "mediumDate": "dd.MM.y", + "medium": "d. MMM y H:mm.ss", + "mediumDate": "d. MMM y", "mediumTime": "H:mm.ss", "short": "dd.MM.yy H:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_et.js b/public/app/bower_components/angular-i18n/angular-locale_et.js index e1d6093e..bade0a01 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_et.js +++ b/public/app/bower_components/angular-i18n/angular-locale_et.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d. MMMM y", "longDate": "d. MMMM y", - "medium": "dd.MM.y H:mm.ss", - "mediumDate": "dd.MM.y", + "medium": "d. MMM y H:mm.ss", + "mediumDate": "d. MMM y", "mediumTime": "H:mm.ss", "short": "dd.MM.yy H:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_eu-es.js b/public/app/bower_components/angular-i18n/angular-locale_eu-es.js index a6d6d23d..2734ba09 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_eu-es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_eu-es.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", - "short": "y-MM-dd HH:mm", - "shortDate": "y-MM-dd", + "short": "y/MM/dd HH:mm", + "shortDate": "y/MM/dd", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_eu.js b/public/app/bower_components/angular-i18n/angular-locale_eu.js index 8a55b138..53714803 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_eu.js +++ b/public/app/bower_components/angular-i18n/angular-locale_eu.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", - "short": "y-MM-dd HH:mm", - "shortDate": "y-MM-dd", + "short": "y/MM/dd HH:mm", + "shortDate": "y/MM/dd", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_fr-ch.js b/public/app/bower_components/angular-i18n/angular-locale_fr-ch.js index be55e9f3..bb51a7da 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_fr-ch.js +++ b/public/app/bower_components/angular-i18n/angular-locale_fr-ch.js @@ -65,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CHF", "DECIMAL_SEP": ".", - "GROUP_SEP": "'", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, diff --git a/public/app/bower_components/angular-i18n/angular-locale_gd-gb.js b/public/app/bower_components/angular-i18n/angular-locale_gd-gb.js index 39b47a0d..c9b2db6f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_gd-gb.js +++ b/public/app/bower_components/angular-i18n/angular-locale_gd-gb.js @@ -30,23 +30,23 @@ $provide.value("$locale", { "DiLuain", "DiM\u00e0irt", "DiCiadain", - "Diardaoin", + "DiarDaoin", "DihAoine", "DiSathairne" ], "MONTH": [ - "Am Faoilleach", - "An Gearran", - "Am M\u00e0rt", - "An Giblean", - "An C\u00e8itean", - "An t-\u00d2gmhios", - "An t-Iuchar", - "An L\u00f9nastal", - "An t-Sultain", - "An D\u00e0mhair", - "An t-Samhain", - "An D\u00f9bhlachd" + "dhen Fhaoilleach", + "dhen Ghearran", + "dhen Mh\u00e0rt", + "dhen Ghiblean", + "dhen Ch\u00e8itean", + "dhen \u00d2gmhios", + "dhen Iuchar", + "dhen L\u00f9nastal", + "dhen t-Sultain", + "dhen D\u00e0mhair", + "dhen t-Samhain", + "dhen D\u00f9bhlachd" ], "SHORTDAY": [ "DiD", @@ -71,8 +71,8 @@ $provide.value("$locale", { "Samh", "D\u00f9bh" ], - "fullDate": "EEEE, d MMMM y", - "longDate": "d MMMM y", + "fullDate": "EEEE, d'mh' MMMM y", + "longDate": "d'mh' MMMM y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_gd.js b/public/app/bower_components/angular-i18n/angular-locale_gd.js index 5d8d68da..f45d324d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_gd.js +++ b/public/app/bower_components/angular-i18n/angular-locale_gd.js @@ -30,23 +30,23 @@ $provide.value("$locale", { "DiLuain", "DiM\u00e0irt", "DiCiadain", - "Diardaoin", + "DiarDaoin", "DihAoine", "DiSathairne" ], "MONTH": [ - "Am Faoilleach", - "An Gearran", - "Am M\u00e0rt", - "An Giblean", - "An C\u00e8itean", - "An t-\u00d2gmhios", - "An t-Iuchar", - "An L\u00f9nastal", - "An t-Sultain", - "An D\u00e0mhair", - "An t-Samhain", - "An D\u00f9bhlachd" + "dhen Fhaoilleach", + "dhen Ghearran", + "dhen Mh\u00e0rt", + "dhen Ghiblean", + "dhen Ch\u00e8itean", + "dhen \u00d2gmhios", + "dhen Iuchar", + "dhen L\u00f9nastal", + "dhen t-Sultain", + "dhen D\u00e0mhair", + "dhen t-Samhain", + "dhen D\u00f9bhlachd" ], "SHORTDAY": [ "DiD", @@ -71,8 +71,8 @@ $provide.value("$locale", { "Samh", "D\u00f9bh" ], - "fullDate": "EEEE, d MMMM y", - "longDate": "d MMMM y", + "fullDate": "EEEE, d'mh' MMMM y", + "longDate": "d'mh' MMMM y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_gsw-fr.js b/public/app/bower_components/angular-i18n/angular-locale_gsw-fr.js new file mode 100644 index 00000000..7bf4b584 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_gsw-fr.js @@ -0,0 +1,97 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "vorm.", + "nam." + ], + "DAY": [ + "Sunntig", + "M\u00e4\u00e4ntig", + "Ziischtig", + "Mittwuch", + "Dunschtig", + "Friitig", + "Samschtig" + ], + "MONTH": [ + "Januar", + "Februar", + "M\u00e4rz", + "April", + "Mai", + "Juni", + "Juli", + "Auguscht", + "Sept\u00e4mber", + "Oktoober", + "Nov\u00e4mber", + "Dez\u00e4mber" + ], + "SHORTDAY": [ + "Su.", + "M\u00e4.", + "Zi.", + "Mi.", + "Du.", + "Fr.", + "Sa." + ], + "SHORTMONTH": [ + "Jan", + "Feb", + "M\u00e4r", + "Apr", + "Mai", + "Jun", + "Jul", + "Aug", + "Sep", + "Okt", + "Nov", + "Dez" + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "dd.MM.y HH:mm:ss", + "mediumDate": "dd.MM.y", + "mediumTime": "HH:mm:ss", + "short": "dd.MM.yy HH:mm", + "shortDate": "dd.MM.yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ".", + "GROUP_SEP": "\u2019", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "gsw-fr", + "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_gu-in.js b/public/app/bower_components/angular-i18n/angular-locale_gu-in.js index 9065f454..e9059a97 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_gu-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_gu-in.js @@ -47,7 +47,7 @@ $provide.value("$locale", { "\u0aae\u0ac7", "\u0a9c\u0ac2\u0aa8", "\u0a9c\u0ac1\u0ab2\u0abe\u0a88", - "\u0a91\u0a97\u0ab8\u0acd\u0a9f", + "\u0a91\u0a97", "\u0ab8\u0aaa\u0acd\u0a9f\u0ac7", "\u0a91\u0a95\u0acd\u0a9f\u0acb", "\u0aa8\u0ab5\u0ac7", @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM, y hh:mm:ss a", "mediumDate": "d MMM, y", "mediumTime": "hh:mm:ss a", - "short": "d-MM-yy hh:mm a", - "shortDate": "d-MM-yy", + "short": "d/M/yy hh:mm a", + "shortDate": "d/M/yy", "shortTime": "hh:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_gu.js b/public/app/bower_components/angular-i18n/angular-locale_gu.js index 0e20f7c5..2f8e7e1a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_gu.js +++ b/public/app/bower_components/angular-i18n/angular-locale_gu.js @@ -47,7 +47,7 @@ $provide.value("$locale", { "\u0aae\u0ac7", "\u0a9c\u0ac2\u0aa8", "\u0a9c\u0ac1\u0ab2\u0abe\u0a88", - "\u0a91\u0a97\u0ab8\u0acd\u0a9f", + "\u0a91\u0a97", "\u0ab8\u0aaa\u0acd\u0a9f\u0ac7", "\u0a91\u0a95\u0acd\u0a9f\u0acb", "\u0aa8\u0ab5\u0ac7", @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM, y hh:mm:ss a", "mediumDate": "d MMM, y", "mediumTime": "hh:mm:ss a", - "short": "d-MM-yy hh:mm a", - "shortDate": "d-MM-yy", + "short": "d/M/yy hh:mm a", + "shortDate": "d/M/yy", "shortTime": "hh:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-gh.js b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-gh.js index e168e449..b7ee3177 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-gh.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-gh.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ne.js b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ne.js index 6b34c92c..53ee55d7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ne.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ne.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ng.js b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ng.js index 262338f3..141a32a6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ng.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ng.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha-latn.js b/public/app/bower_components/angular-i18n/angular-locale_ha-latn.js index 7fdd7a2d..5f392435 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha-latn.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha.js b/public/app/bower_components/angular-i18n/angular-locale_ha.js index 7fd74208..30146d32 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_he-il.js b/public/app/bower_components/angular-i18n/angular-locale_he-il.js index cdf66c3b..804e25bd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_he-il.js +++ b/public/app/bower_components/angular-i18n/angular-locale_he-il.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d \u05d1MMM y HH:mm:ss", "mediumDate": "d \u05d1MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.y HH:mm", + "shortDate": "d.M.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_he.js b/public/app/bower_components/angular-i18n/angular-locale_he.js index 1c7d62b0..6b525ca7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_he.js +++ b/public/app/bower_components/angular-i18n/angular-locale_he.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d \u05d1MMM y HH:mm:ss", "mediumDate": "d \u05d1MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.y HH:mm", + "shortDate": "d.M.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hi-in.js b/public/app/bower_components/angular-i18n/angular-locale_hi-in.js index 7420d14b..e1b0b8b2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hi-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hi-in.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "\u091c\u0941\u0932\u093e\u0908", "\u0905\u0917\u0938\u094d\u0924", "\u0938\u093f\u0924\u0902\u092c\u0930", - "\u0905\u0915\u094d\u091f\u0942\u092c\u0930", + "\u0905\u0915\u094d\u0924\u0942\u092c\u0930", "\u0928\u0935\u0902\u092c\u0930", "\u0926\u093f\u0938\u0902\u092c\u0930" ], @@ -40,26 +40,26 @@ $provide.value("$locale", { "\u0936\u0928\u093f" ], "SHORTMONTH": [ - "\u091c\u0928", - "\u092b\u093c\u0930", + "\u091c\u0928\u0970", + "\u092b\u093c\u0930\u0970", "\u092e\u093e\u0930\u094d\u091a", - "\u0905\u092a\u094d\u0930\u0948", + "\u0905\u092a\u094d\u0930\u0948\u0932", "\u092e\u0908", "\u091c\u0942\u0928", - "\u091c\u0941\u0932\u093e", - "\u0905\u0917", - "\u0938\u093f\u0924\u0902", - "\u0905\u0915\u094d\u091f\u0942", - "\u0928\u0935\u0902", - "\u0926\u093f\u0938\u0902" + "\u091c\u0941\u0932\u0970", + "\u0905\u0917\u0970", + "\u0938\u093f\u0924\u0970", + "\u0905\u0915\u094d\u0924\u0942\u0970", + "\u0928\u0935\u0970", + "\u0926\u093f\u0938\u0970" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", - "medium": "dd-MM-y h:mm:ss a", - "mediumDate": "dd-MM-y", + "medium": "dd/MM/y h:mm:ss a", + "mediumDate": "dd/MM/y", "mediumTime": "h:mm:ss a", - "short": "d-M-yy h:mm a", - "shortDate": "d-M-yy", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hi.js b/public/app/bower_components/angular-i18n/angular-locale_hi.js index b3385905..d800a286 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hi.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hi.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "\u091c\u0941\u0932\u093e\u0908", "\u0905\u0917\u0938\u094d\u0924", "\u0938\u093f\u0924\u0902\u092c\u0930", - "\u0905\u0915\u094d\u091f\u0942\u092c\u0930", + "\u0905\u0915\u094d\u0924\u0942\u092c\u0930", "\u0928\u0935\u0902\u092c\u0930", "\u0926\u093f\u0938\u0902\u092c\u0930" ], @@ -40,26 +40,26 @@ $provide.value("$locale", { "\u0936\u0928\u093f" ], "SHORTMONTH": [ - "\u091c\u0928", - "\u092b\u093c\u0930", + "\u091c\u0928\u0970", + "\u092b\u093c\u0930\u0970", "\u092e\u093e\u0930\u094d\u091a", - "\u0905\u092a\u094d\u0930\u0948", + "\u0905\u092a\u094d\u0930\u0948\u0932", "\u092e\u0908", "\u091c\u0942\u0928", - "\u091c\u0941\u0932\u093e", - "\u0905\u0917", - "\u0938\u093f\u0924\u0902", - "\u0905\u0915\u094d\u091f\u0942", - "\u0928\u0935\u0902", - "\u0926\u093f\u0938\u0902" + "\u091c\u0941\u0932\u0970", + "\u0905\u0917\u0970", + "\u0938\u093f\u0924\u0970", + "\u0905\u0915\u094d\u0924\u0942\u0970", + "\u0928\u0935\u0970", + "\u0926\u093f\u0938\u0970" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", - "medium": "dd-MM-y h:mm:ss a", - "mediumDate": "dd-MM-y", + "medium": "dd/MM/y h:mm:ss a", + "mediumDate": "dd/MM/y", "mediumTime": "h:mm:ss a", - "short": "d-M-yy h:mm a", - "shortDate": "d-M-yy", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hr-ba.js b/public/app/bower_components/angular-i18n/angular-locale_hr-ba.js index 64fe0ebd..03a7a43b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hr-ba.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hr-ba.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y. HH:mm:ss", "mediumDate": "d. MMM y.", "mediumTime": "HH:mm:ss", - "short": "d.M.yy. HH:mm", - "shortDate": "d.M.yy.", + "short": "dd.MM.y. HH:mm", + "shortDate": "dd.MM.y.", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hr-hr.js b/public/app/bower_components/angular-i18n/angular-locale_hr-hr.js index b23a2f06..492d82d7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hr-hr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hr-hr.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y. HH:mm:ss", "mediumDate": "d. MMM y.", "mediumTime": "HH:mm:ss", - "short": "d.M.yy. HH:mm", - "shortDate": "d.M.yy.", + "short": "dd.MM.y. HH:mm", + "shortDate": "dd.MM.y.", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hr.js b/public/app/bower_components/angular-i18n/angular-locale_hr.js index 583ac952..baf75300 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hr.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y. HH:mm:ss", "mediumDate": "d. MMM y.", "mediumTime": "HH:mm:ss", - "short": "d.M.yy. HH:mm", - "shortDate": "d.M.yy.", + "short": "dd.MM.y. HH:mm", + "shortDate": "dd.MM.y.", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hsb-de.js b/public/app/bower_components/angular-i18n/angular-locale_hsb-de.js new file mode 100644 index 00000000..4c27db87 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_hsb-de.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "dopo\u0142dnja", + "popo\u0142dnju" + ], + "DAY": [ + "njed\u017aela", + "p\u00f3nd\u017aela", + "wutora", + "srjeda", + "\u0161tw\u00f3rtk", + "pjatk", + "sobota" + ], + "MONTH": [ + "januara", + "februara", + "m\u011brca", + "apryla", + "meje", + "junija", + "julija", + "awgusta", + "septembra", + "oktobra", + "nowembra", + "decembra" + ], + "SHORTDAY": [ + "nje", + "p\u00f3n", + "wut", + "srj", + "\u0161tw", + "pja", + "sob" + ], + "SHORTMONTH": [ + "jan.", + "feb.", + "m\u011br.", + "apr.", + "mej.", + "jun.", + "jul.", + "awg.", + "sep.", + "okt.", + "now.", + "dec." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d.M.y H:mm:ss", + "mediumDate": "d.M.y", + "mediumTime": "H:mm:ss", + "short": "d.M.yy H:mm 'hod\u017a'.", + "shortDate": "d.M.yy", + "shortTime": "H:mm 'hod\u017a'." + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ",", + "GROUP_SEP": ".", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "hsb-de", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_hsb.js b/public/app/bower_components/angular-i18n/angular-locale_hsb.js new file mode 100644 index 00000000..fbe9e8f7 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_hsb.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "dopo\u0142dnja", + "popo\u0142dnju" + ], + "DAY": [ + "njed\u017aela", + "p\u00f3nd\u017aela", + "wutora", + "srjeda", + "\u0161tw\u00f3rtk", + "pjatk", + "sobota" + ], + "MONTH": [ + "januara", + "februara", + "m\u011brca", + "apryla", + "meje", + "junija", + "julija", + "awgusta", + "septembra", + "oktobra", + "nowembra", + "decembra" + ], + "SHORTDAY": [ + "nje", + "p\u00f3n", + "wut", + "srj", + "\u0161tw", + "pja", + "sob" + ], + "SHORTMONTH": [ + "jan.", + "feb.", + "m\u011br.", + "apr.", + "mej.", + "jun.", + "jul.", + "awg.", + "sep.", + "okt.", + "now.", + "dec." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d.M.y H:mm:ss", + "mediumDate": "d.M.y", + "mediumTime": "H:mm:ss", + "short": "d.M.yy H:mm 'hod\u017a'.", + "shortDate": "d.M.yy", + "shortTime": "H:mm 'hod\u017a'." + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ",", + "GROUP_SEP": ".", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "hsb", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_hy-am.js b/public/app/bower_components/angular-i18n/angular-locale_hy-am.js index 92d2d52e..111ce69a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hy-am.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hy-am.js @@ -48,15 +48,15 @@ $provide.value("$locale", { "\u0570\u0576\u057d", "\u0570\u056c\u057d", "\u0585\u0563\u057d", - "\u057d\u057a\u057f", - "\u0570\u056f\u057f", - "\u0576\u0575\u0574", - "\u0564\u056f\u057f" + "\u057d\u0565\u057a", + "\u0570\u0578\u056f", + "\u0576\u0578\u0575", + "\u0564\u0565\u056f" ], "fullDate": "y\u0569. MMMM d, EEEE", "longDate": "dd MMMM, y\u0569.", - "medium": "dd MMM, y \u0569. H:mm:ss", - "mediumDate": "dd MMM, y \u0569.", + "medium": "dd MMM, y\u0569. H:mm:ss", + "mediumDate": "dd MMM, y\u0569.", "mediumTime": "H:mm:ss", "short": "dd.MM.yy H:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_hy.js b/public/app/bower_components/angular-i18n/angular-locale_hy.js index 8a9fb3f1..d13fbd6b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hy.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hy.js @@ -48,15 +48,15 @@ $provide.value("$locale", { "\u0570\u0576\u057d", "\u0570\u056c\u057d", "\u0585\u0563\u057d", - "\u057d\u057a\u057f", - "\u0570\u056f\u057f", - "\u0576\u0575\u0574", - "\u0564\u056f\u057f" + "\u057d\u0565\u057a", + "\u0570\u0578\u056f", + "\u0576\u0578\u0575", + "\u0564\u0565\u056f" ], "fullDate": "y\u0569. MMMM d, EEEE", "longDate": "dd MMMM, y\u0569.", - "medium": "dd MMM, y \u0569. H:mm:ss", - "mediumDate": "dd MMM, y \u0569.", + "medium": "dd MMM, y\u0569. H:mm:ss", + "mediumDate": "dd MMM, y\u0569.", "mediumTime": "H:mm:ss", "short": "dd.MM.yy H:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_it-it.js b/public/app/bower_components/angular-i18n/angular-locale_it-it.js index d56ebc2f..148ec8a5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_it-it.js +++ b/public/app/bower_components/angular-i18n/angular-locale_it-it.js @@ -72,9 +72,9 @@ $provide.value("$locale", { "dic" ], "fullDate": "EEEE d MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MMM/y HH:mm:ss", - "mediumDate": "dd/MMM/y", + "longDate": "d MMMM y", + "medium": "dd MMM y HH:mm:ss", + "mediumDate": "dd MMM y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_it-sm.js b/public/app/bower_components/angular-i18n/angular-locale_it-sm.js index 2d8eb250..6fe34b01 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_it-sm.js +++ b/public/app/bower_components/angular-i18n/angular-locale_it-sm.js @@ -72,9 +72,9 @@ $provide.value("$locale", { "dic" ], "fullDate": "EEEE d MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MMM/y HH:mm:ss", - "mediumDate": "dd/MMM/y", + "longDate": "d MMMM y", + "medium": "dd MMM y HH:mm:ss", + "mediumDate": "dd MMM y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_it.js b/public/app/bower_components/angular-i18n/angular-locale_it.js index 01874854..14389ca3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_it.js +++ b/public/app/bower_components/angular-i18n/angular-locale_it.js @@ -72,9 +72,9 @@ $provide.value("$locale", { "dic" ], "fullDate": "EEEE d MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MMM/y HH:mm:ss", - "mediumDate": "dd/MMM/y", + "longDate": "d MMMM y", + "medium": "dd MMM y HH:mm:ss", + "mediumDate": "dd MMM y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_iw.js b/public/app/bower_components/angular-i18n/angular-locale_iw.js index 2f1e0fc6..5c7ef23d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_iw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_iw.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d \u05d1MMM y HH:mm:ss", "mediumDate": "d \u05d1MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.y HH:mm", + "shortDate": "d.M.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ka-ge.js b/public/app/bower_components/angular-i18n/angular-locale_ka-ge.js index b29decc3..d234e777 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ka-ge.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ka-ge.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u10d3\u10d8\u10da\u10d8\u10e1", - "\u10e1\u10d0\u10e6\u10d0\u10db\u10dd\u10e1" + "AM", + "PM" ], "DAY": [ "\u10d9\u10d5\u10d8\u10e0\u10d0", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ka.js b/public/app/bower_components/angular-i18n/angular-locale_ka.js index 4478fc63..cd4a0b78 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ka.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ka.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u10d3\u10d8\u10da\u10d8\u10e1", - "\u10e1\u10d0\u10e6\u10d0\u10db\u10dd\u10e1" + "AM", + "PM" ], "DAY": [ "\u10d9\u10d5\u10d8\u10e0\u10d0", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kea-cv.js b/public/app/bower_components/angular-i18n/angular-locale_kea-cv.js index c224648d..6850856c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kea-cv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kea-cv.js @@ -36,7 +36,7 @@ $provide.value("$locale", { ], "MONTH": [ "Janeru", - "Fevereru", + "Febreru", "Marsu", "Abril", "Maiu", @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "Jan", - "Fev", + "Feb", "Mar", "Abr", "Mai", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'di' MMMM 'di' y", "longDate": "d 'di' MMMM 'di' y", - "medium": "d 'di' MMM 'di' y HH:mm:ss", - "mediumDate": "d 'di' MMM 'di' y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", "short": "d/M/y HH:mm", "shortDate": "d/M/y", @@ -83,7 +83,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CVE", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -103,9 +103,9 @@ $provide.value("$locale", { "minFrac": 2, "minInt": 1, "negPre": "-", - "negSuf": "\u00a4", + "negSuf": "\u00a0\u00a4", "posPre": "", - "posSuf": "\u00a4" + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_kea.js b/public/app/bower_components/angular-i18n/angular-locale_kea.js index 71cb5d2b..30f40f37 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kea.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kea.js @@ -36,7 +36,7 @@ $provide.value("$locale", { ], "MONTH": [ "Janeru", - "Fevereru", + "Febreru", "Marsu", "Abril", "Maiu", @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "Jan", - "Fev", + "Feb", "Mar", "Abr", "Mai", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'di' MMMM 'di' y", "longDate": "d 'di' MMMM 'di' y", - "medium": "d 'di' MMM 'di' y HH:mm:ss", - "mediumDate": "d 'di' MMM 'di' y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", "short": "d/M/y HH:mm", "shortDate": "d/M/y", @@ -83,7 +83,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CVE", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -103,9 +103,9 @@ $provide.value("$locale", { "minFrac": 2, "minInt": 1, "negPre": "-", - "negSuf": "\u00a4", + "negSuf": "\u00a0\u00a4", "posPre": "", - "posSuf": "\u00a4" + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl-kz.js b/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl-kz.js index 38007bc5..367b96f1 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl-kz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl-kz.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0441\u043a\u0435 \u0434\u0435\u0439\u0456\u043d", - "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d" + "\u0442\u0430\u04a3\u0435\u0440\u0442\u0435\u04a3\u0433\u0456", + "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d\u0433\u0456" ], "DAY": [ "\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d" ], "SHORTDAY": [ - "\u0436\u0441.", - "\u0434\u0441.", - "\u0441\u0441.", - "\u0441\u0440.", - "\u0431\u0441.", - "\u0436\u043c.", - "\u0441\u0431." + "\u0436\u0435\u043a", + "\u0434\u04af\u0439", + "\u0441\u0435\u0439", + "\u0441\u04d9\u0440", + "\u0431\u0435\u0439", + "\u0436\u04b1\u043c\u0430", + "\u0441\u0435\u043d" ], "SHORTMONTH": [ "\u049b\u0430\u04a3.", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u049b\u0430\u0440.", "\u0436\u0435\u043b\u0442." ], - "fullDate": "EEEE, d MMMM y '\u0436'.", - "longDate": "d MMMM y '\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "y, dd-MMM HH:mm:ss", + "mediumDate": "y, dd-MMM", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl.js index 3529839b..a427fa6e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0441\u043a\u0435 \u0434\u0435\u0439\u0456\u043d", - "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d" + "\u0442\u0430\u04a3\u0435\u0440\u0442\u0435\u04a3\u0433\u0456", + "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d\u0433\u0456" ], "DAY": [ "\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d" ], "SHORTDAY": [ - "\u0436\u0441.", - "\u0434\u0441.", - "\u0441\u0441.", - "\u0441\u0440.", - "\u0431\u0441.", - "\u0436\u043c.", - "\u0441\u0431." + "\u0436\u0435\u043a", + "\u0434\u04af\u0439", + "\u0441\u0435\u0439", + "\u0441\u04d9\u0440", + "\u0431\u0435\u0439", + "\u0436\u04b1\u043c\u0430", + "\u0441\u0435\u043d" ], "SHORTMONTH": [ "\u049b\u0430\u04a3.", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u049b\u0430\u0440.", "\u0436\u0435\u043b\u0442." ], - "fullDate": "EEEE, d MMMM y '\u0436'.", - "longDate": "d MMMM y '\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "y, dd-MMM HH:mm:ss", + "mediumDate": "y, dd-MMM", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kk.js b/public/app/bower_components/angular-i18n/angular-locale_kk.js index 57e0f311..9de60877 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kk.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0441\u043a\u0435 \u0434\u0435\u0439\u0456\u043d", - "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d" + "\u0442\u0430\u04a3\u0435\u0440\u0442\u0435\u04a3\u0433\u0456", + "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d\u0433\u0456" ], "DAY": [ "\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d" ], "SHORTDAY": [ - "\u0436\u0441.", - "\u0434\u0441.", - "\u0441\u0441.", - "\u0441\u0440.", - "\u0431\u0441.", - "\u0436\u043c.", - "\u0441\u0431." + "\u0436\u0435\u043a", + "\u0434\u04af\u0439", + "\u0441\u0435\u0439", + "\u0441\u04d9\u0440", + "\u0431\u0435\u0439", + "\u0436\u04b1\u043c\u0430", + "\u0441\u0435\u043d" ], "SHORTMONTH": [ "\u049b\u0430\u04a3.", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u049b\u0430\u0440.", "\u0436\u0435\u043b\u0442." ], - "fullDate": "EEEE, d MMMM y '\u0436'.", - "longDate": "d MMMM y '\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "y, dd-MMM HH:mm:ss", + "mediumDate": "y, dd-MMM", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kln-ke.js b/public/app/bower_components/angular-i18n/angular-locale_kln-ke.js index e792cfae..dd6b1fc2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kln-ke.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kln-ke.js @@ -28,18 +28,18 @@ $provide.value("$locale", { "DAY": [ "Betutab tisap", "Betut netai", - "Betutab aeng'", + "Betutab aeng\u2019", "Betutab somok", - "Betutab ang'wan", + "Betutab ang\u2019wan", "Betutab mut", "Betutab lo" ], "MONTH": [ "Mulgul", - "Ng'atyato", + "Ng\u2019atyato", "Kiptamo", "Iwat kut", - "Ng'eiyet", + "Ng\u2019eiyet", "Waki", "Roptui", "Kipkogaga", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kln.js b/public/app/bower_components/angular-i18n/angular-locale_kln.js index 9e53d306..c14ba19d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kln.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kln.js @@ -28,18 +28,18 @@ $provide.value("$locale", { "DAY": [ "Betutab tisap", "Betut netai", - "Betutab aeng'", + "Betutab aeng\u2019", "Betutab somok", - "Betutab ang'wan", + "Betutab ang\u2019wan", "Betutab mut", "Betutab lo" ], "MONTH": [ "Mulgul", - "Ng'atyato", + "Ng\u2019atyato", "Kiptamo", "Iwat kut", - "Ng'eiyet", + "Ng\u2019eiyet", "Waki", "Roptui", "Kipkogaga", diff --git a/public/app/bower_components/angular-i18n/angular-locale_km-kh.js b/public/app/bower_components/angular-i18n/angular-locale_km-kh.js index 21aca9cc..9e1eb22f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_km-kh.js +++ b/public/app/bower_components/angular-i18n/angular-locale_km-kh.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM y h:mm:ss a", "mediumDate": "d MMM y", "mediumTime": "h:mm:ss a", - "short": "d/M/y h:mm a", - "shortDate": "d/M/y", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_km.js b/public/app/bower_components/angular-i18n/angular-locale_km.js index 8a094eed..879247bc 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_km.js +++ b/public/app/bower_components/angular-i18n/angular-locale_km.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM y h:mm:ss a", "mediumDate": "d MMM y", "mediumTime": "h:mm:ss a", - "short": "d/M/y h:mm a", - "shortDate": "d/M/y", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_kn-in.js b/public/app/bower_components/angular-i18n/angular-locale_kn-in.js index 53862d0e..e61f6cf0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kn-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kn-in.js @@ -4,11 +4,11 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0caa\u0cc2\u0cb0\u0ccd\u0cb5\u0cbe\u0cb9\u0ccd\u0ca8", + "\u0c85\u0caa\u0cb0\u0cbe\u0cb9\u0ccd\u0ca8" ], "DAY": [ - "\u0cb0\u0cb5\u0cbf\u0cb5\u0cbe\u0cb0", + "\u0cad\u0cbe\u0ca8\u0cc1\u0cb5\u0cbe\u0cb0", "\u0cb8\u0ccb\u0cae\u0cb5\u0cbe\u0cb0", "\u0cae\u0c82\u0c97\u0cb3\u0cb5\u0cbe\u0cb0", "\u0cac\u0cc1\u0ca7\u0cb5\u0cbe\u0cb0", @@ -25,41 +25,41 @@ $provide.value("$locale", { "\u0c9c\u0cc2\u0ca8\u0ccd", "\u0c9c\u0cc1\u0cb2\u0cc8", "\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd", - "\u0cb8\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd", + "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd", "\u0c85\u0c95\u0ccd\u0c9f\u0ccb\u0cac\u0cb0\u0ccd", "\u0ca8\u0cb5\u0cc6\u0c82\u0cac\u0cb0\u0ccd", "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82\u0cac\u0cb0\u0ccd" ], "SHORTDAY": [ - "\u0cb0.", - "\u0cb8\u0ccb.", - "\u0cae\u0c82.", - "\u0cac\u0cc1.", - "\u0c97\u0cc1.", - "\u0cb6\u0cc1.", - "\u0cb6\u0ca8\u0cbf." + "\u0cad\u0cbe\u0ca8\u0cc1", + "\u0cb8\u0ccb\u0cae", + "\u0cae\u0c82\u0c97\u0cb3", + "\u0cac\u0cc1\u0ca7", + "\u0c97\u0cc1\u0cb0\u0cc1", + "\u0cb6\u0cc1\u0c95\u0ccd\u0cb0", + "\u0cb6\u0ca8\u0cbf" ], "SHORTMONTH": [ - "\u0c9c\u0ca8.", - "\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cc1.", - "\u0cae\u0cbe", - "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf.", + "\u0c9c\u0ca8", + "\u0cab\u0cc6\u0cac\u0ccd\u0cb0", + "\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd", + "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf", "\u0cae\u0cc7", - "\u0c9c\u0cc2", - "\u0c9c\u0cc1.", - "\u0c86\u0c97.", - "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82.", - "\u0c85\u0c95\u0ccd\u0c9f\u0ccb.", - "\u0ca8\u0cb5\u0cc6\u0c82.", - "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82." + "\u0c9c\u0cc2\u0ca8\u0ccd", + "\u0c9c\u0cc1\u0cb2\u0cc8", + "\u0c86\u0c97", + "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82", + "\u0c85\u0c95\u0ccd\u0c9f\u0ccb", + "\u0ca8\u0cb5\u0cc6\u0c82", + "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82" ], - "fullDate": "d MMMM y, EEEE", - "longDate": "d MMMM y", - "medium": "d MMM y hh:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "EEEE, MMMM d, y", + "longDate": "MMMM d, y", + "medium": "MMM d, y hh:mm:ss a", + "mediumDate": "MMM d, y", "mediumTime": "hh:mm:ss a", - "short": "d-M-yy hh:mm a", - "shortDate": "d-M-yy", + "short": "M/d/yy hh:mm a", + "shortDate": "M/d/yy", "shortTime": "hh:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_kn.js b/public/app/bower_components/angular-i18n/angular-locale_kn.js index bf2cf50b..6d9cdd12 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kn.js @@ -4,11 +4,11 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0caa\u0cc2\u0cb0\u0ccd\u0cb5\u0cbe\u0cb9\u0ccd\u0ca8", + "\u0c85\u0caa\u0cb0\u0cbe\u0cb9\u0ccd\u0ca8" ], "DAY": [ - "\u0cb0\u0cb5\u0cbf\u0cb5\u0cbe\u0cb0", + "\u0cad\u0cbe\u0ca8\u0cc1\u0cb5\u0cbe\u0cb0", "\u0cb8\u0ccb\u0cae\u0cb5\u0cbe\u0cb0", "\u0cae\u0c82\u0c97\u0cb3\u0cb5\u0cbe\u0cb0", "\u0cac\u0cc1\u0ca7\u0cb5\u0cbe\u0cb0", @@ -25,41 +25,41 @@ $provide.value("$locale", { "\u0c9c\u0cc2\u0ca8\u0ccd", "\u0c9c\u0cc1\u0cb2\u0cc8", "\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd", - "\u0cb8\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd", + "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd", "\u0c85\u0c95\u0ccd\u0c9f\u0ccb\u0cac\u0cb0\u0ccd", "\u0ca8\u0cb5\u0cc6\u0c82\u0cac\u0cb0\u0ccd", "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82\u0cac\u0cb0\u0ccd" ], "SHORTDAY": [ - "\u0cb0.", - "\u0cb8\u0ccb.", - "\u0cae\u0c82.", - "\u0cac\u0cc1.", - "\u0c97\u0cc1.", - "\u0cb6\u0cc1.", - "\u0cb6\u0ca8\u0cbf." + "\u0cad\u0cbe\u0ca8\u0cc1", + "\u0cb8\u0ccb\u0cae", + "\u0cae\u0c82\u0c97\u0cb3", + "\u0cac\u0cc1\u0ca7", + "\u0c97\u0cc1\u0cb0\u0cc1", + "\u0cb6\u0cc1\u0c95\u0ccd\u0cb0", + "\u0cb6\u0ca8\u0cbf" ], "SHORTMONTH": [ - "\u0c9c\u0ca8.", - "\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cc1.", - "\u0cae\u0cbe", - "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf.", + "\u0c9c\u0ca8", + "\u0cab\u0cc6\u0cac\u0ccd\u0cb0", + "\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd", + "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf", "\u0cae\u0cc7", - "\u0c9c\u0cc2", - "\u0c9c\u0cc1.", - "\u0c86\u0c97.", - "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82.", - "\u0c85\u0c95\u0ccd\u0c9f\u0ccb.", - "\u0ca8\u0cb5\u0cc6\u0c82.", - "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82." + "\u0c9c\u0cc2\u0ca8\u0ccd", + "\u0c9c\u0cc1\u0cb2\u0cc8", + "\u0c86\u0c97", + "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82", + "\u0c85\u0c95\u0ccd\u0c9f\u0ccb", + "\u0ca8\u0cb5\u0cc6\u0c82", + "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82" ], - "fullDate": "d MMMM y, EEEE", - "longDate": "d MMMM y", - "medium": "d MMM y hh:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "EEEE, MMMM d, y", + "longDate": "MMMM d, y", + "medium": "MMM d, y hh:mm:ss a", + "mediumDate": "MMM d, y", "mediumTime": "hh:mm:ss a", - "short": "d-M-yy hh:mm a", - "shortDate": "d-M-yy", + "short": "M/d/yy hh:mm a", + "shortDate": "M/d/yy", "shortTime": "hh:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl-kg.js b/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl-kg.js index 9d926161..fcfc0149 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl-kg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl-kg.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0448\u043a\u04e9 \u0447\u0435\u0439\u0438\u043d\u043a\u0438", - "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d\u043a\u0438" + "\u0442\u0430\u04a3\u043a\u044b", + "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d" ], "DAY": [ - "\u0416\u0435\u043a", - "\u0414\u04af\u0439", - "\u0428\u0435\u0439", - "\u0428\u0430\u0440", - "\u0411\u0435\u0439", - "\u0416\u0443\u043c", - "\u0418\u0448\u043c" + "\u0436\u0435\u043a\u0448\u0435\u043c\u0431\u0438", + "\u0434\u04af\u0439\u0448\u04e9\u043c\u0431\u04af", + "\u0448\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0448\u0430\u0440\u0448\u0435\u043c\u0431\u0438", + "\u0431\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u0435\u043c\u0431\u0438" ], "MONTH": [ "\u044f\u043d\u0432\u0430\u0440\u044c", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440\u044c" ], "SHORTDAY": [ - "\u0416\u043a", - "\u0414\u0448", - "\u0428\u0435", - "\u0428\u0430", - "\u0411\u0448", - "\u0416\u043c", - "\u0418\u0448" + "\u0436\u0435\u043a.", + "\u0434\u04af\u0439.", + "\u0448\u0435\u0439\u0448.", + "\u0448\u0430\u0440\u0448.", + "\u0431\u0435\u0439\u0448.", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u043c." ], "SHORTMONTH": [ "\u044f\u043d\u0432.", @@ -54,9 +54,9 @@ $provide.value("$locale", { "\u0434\u0435\u043a." ], "fullDate": "EEEE, d-MMMM, y-'\u0436'.", - "longDate": "d-MMMM, y-'\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl.js index c4e8066b..dd41ca36 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0448\u043a\u04e9 \u0447\u0435\u0439\u0438\u043d\u043a\u0438", - "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d\u043a\u0438" + "\u0442\u0430\u04a3\u043a\u044b", + "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d" ], "DAY": [ - "\u0416\u0435\u043a", - "\u0414\u04af\u0439", - "\u0428\u0435\u0439", - "\u0428\u0430\u0440", - "\u0411\u0435\u0439", - "\u0416\u0443\u043c", - "\u0418\u0448\u043c" + "\u0436\u0435\u043a\u0448\u0435\u043c\u0431\u0438", + "\u0434\u04af\u0439\u0448\u04e9\u043c\u0431\u04af", + "\u0448\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0448\u0430\u0440\u0448\u0435\u043c\u0431\u0438", + "\u0431\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u0435\u043c\u0431\u0438" ], "MONTH": [ "\u044f\u043d\u0432\u0430\u0440\u044c", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440\u044c" ], "SHORTDAY": [ - "\u0416\u043a", - "\u0414\u0448", - "\u0428\u0435", - "\u0428\u0430", - "\u0411\u0448", - "\u0416\u043c", - "\u0418\u0448" + "\u0436\u0435\u043a.", + "\u0434\u04af\u0439.", + "\u0448\u0435\u0439\u0448.", + "\u0448\u0430\u0440\u0448.", + "\u0431\u0435\u0439\u0448.", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u043c." ], "SHORTMONTH": [ "\u044f\u043d\u0432.", @@ -54,9 +54,9 @@ $provide.value("$locale", { "\u0434\u0435\u043a." ], "fullDate": "EEEE, d-MMMM, y-'\u0436'.", - "longDate": "d-MMMM, y-'\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ky.js b/public/app/bower_components/angular-i18n/angular-locale_ky.js index 26e823cc..9db5b3c5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ky.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ky.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0448\u043a\u04e9 \u0447\u0435\u0439\u0438\u043d\u043a\u0438", - "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d\u043a\u0438" + "\u0442\u0430\u04a3\u043a\u044b", + "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d" ], "DAY": [ - "\u0416\u0435\u043a", - "\u0414\u04af\u0439", - "\u0428\u0435\u0439", - "\u0428\u0430\u0440", - "\u0411\u0435\u0439", - "\u0416\u0443\u043c", - "\u0418\u0448\u043c" + "\u0436\u0435\u043a\u0448\u0435\u043c\u0431\u0438", + "\u0434\u04af\u0439\u0448\u04e9\u043c\u0431\u04af", + "\u0448\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0448\u0430\u0440\u0448\u0435\u043c\u0431\u0438", + "\u0431\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u0435\u043c\u0431\u0438" ], "MONTH": [ "\u044f\u043d\u0432\u0430\u0440\u044c", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440\u044c" ], "SHORTDAY": [ - "\u0416\u043a", - "\u0414\u0448", - "\u0428\u0435", - "\u0428\u0430", - "\u0411\u0448", - "\u0416\u043c", - "\u0418\u0448" + "\u0436\u0435\u043a.", + "\u0434\u04af\u0439.", + "\u0448\u0435\u0439\u0448.", + "\u0448\u0430\u0440\u0448.", + "\u0431\u0435\u0439\u0448.", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u043c." ], "SHORTMONTH": [ "\u044f\u043d\u0432.", @@ -54,9 +54,9 @@ $provide.value("$locale", { "\u0434\u0435\u043a." ], "fullDate": "EEEE, d-MMMM, y-'\u0436'.", - "longDate": "d-MMMM, y-'\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_lb-lu.js b/public/app/bower_components/angular-i18n/angular-locale_lb-lu.js new file mode 100644 index 00000000..4acd71d3 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_lb-lu.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "moies", + "nom\u00ebttes" + ], + "DAY": [ + "Sonndeg", + "M\u00e9indeg", + "D\u00ebnschdeg", + "M\u00ebttwoch", + "Donneschdeg", + "Freideg", + "Samschdeg" + ], + "MONTH": [ + "Januar", + "Februar", + "M\u00e4erz", + "Abr\u00ebll", + "Mee", + "Juni", + "Juli", + "August", + "September", + "Oktober", + "November", + "Dezember" + ], + "SHORTDAY": [ + "Son.", + "M\u00e9i.", + "D\u00ebn.", + "M\u00ebt.", + "Don.", + "Fre.", + "Sam." + ], + "SHORTMONTH": [ + "Jan.", + "Feb.", + "M\u00e4e.", + "Abr.", + "Mee", + "Juni", + "Juli", + "Aug.", + "Sep.", + "Okt.", + "Nov.", + "Dez." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d. MMM y HH:mm:ss", + "mediumDate": "d. MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd.MM.yy HH:mm", + "shortDate": "dd.MM.yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ",", + "GROUP_SEP": ".", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "lb-lu", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_lb.js b/public/app/bower_components/angular-i18n/angular-locale_lb.js new file mode 100644 index 00000000..71fec48d --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_lb.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "moies", + "nom\u00ebttes" + ], + "DAY": [ + "Sonndeg", + "M\u00e9indeg", + "D\u00ebnschdeg", + "M\u00ebttwoch", + "Donneschdeg", + "Freideg", + "Samschdeg" + ], + "MONTH": [ + "Januar", + "Februar", + "M\u00e4erz", + "Abr\u00ebll", + "Mee", + "Juni", + "Juli", + "August", + "September", + "Oktober", + "November", + "Dezember" + ], + "SHORTDAY": [ + "Son.", + "M\u00e9i.", + "D\u00ebn.", + "M\u00ebt.", + "Don.", + "Fre.", + "Sam." + ], + "SHORTMONTH": [ + "Jan.", + "Feb.", + "M\u00e4e.", + "Abr.", + "Mee", + "Juni", + "Juli", + "Aug.", + "Sep.", + "Okt.", + "Nov.", + "Dez." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d. MMM y HH:mm:ss", + "mediumDate": "d. MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd.MM.yy HH:mm", + "shortDate": "dd.MM.yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ",", + "GROUP_SEP": ".", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "lb", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_lt-lt.js b/public/app/bower_components/angular-i18n/angular-locale_lt-lt.js index 2775c1f3..e19343b2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_lt-lt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_lt-lt.js @@ -35,18 +35,18 @@ $provide.value("$locale", { "\u0161e\u0161tadienis" ], "MONTH": [ - "sausis", - "vasaris", - "kovas", - "balandis", - "gegu\u017e\u0117", - "bir\u017eelis", - "liepa", - "rugpj\u016btis", - "rugs\u0117jis", - "spalis", - "lapkritis", - "gruodis" + "sausio", + "vasario", + "kovo", + "baland\u017eio", + "gegu\u017e\u0117s", + "bir\u017eelio", + "liepos", + "rugpj\u016b\u010dio", + "rugs\u0117jo", + "spalio", + "lapkri\u010dio", + "gruod\u017eio" ], "SHORTDAY": [ "sk", @@ -73,15 +73,15 @@ $provide.value("$locale", { ], "fullDate": "y 'm'. MMMM d 'd'., EEEE", "longDate": "y 'm'. MMMM d 'd'.", - "medium": "y MMM d HH:mm:ss", - "mediumDate": "y MMM d", + "medium": "y-MM-dd HH:mm:ss", + "mediumDate": "y-MM-dd", "mediumTime": "HH:mm:ss", "short": "y-MM-dd HH:mm", "shortDate": "y-MM-dd", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { - "CURRENCY_SYM": "Lt", + "CURRENCY_SYM": "\u20ac", "DECIMAL_SEP": ",", "GROUP_SEP": "\u00a0", "PATTERNS": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_lt.js b/public/app/bower_components/angular-i18n/angular-locale_lt.js index 02f8921d..aea8cdd2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_lt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_lt.js @@ -35,18 +35,18 @@ $provide.value("$locale", { "\u0161e\u0161tadienis" ], "MONTH": [ - "sausis", - "vasaris", - "kovas", - "balandis", - "gegu\u017e\u0117", - "bir\u017eelis", - "liepa", - "rugpj\u016btis", - "rugs\u0117jis", - "spalis", - "lapkritis", - "gruodis" + "sausio", + "vasario", + "kovo", + "baland\u017eio", + "gegu\u017e\u0117s", + "bir\u017eelio", + "liepos", + "rugpj\u016b\u010dio", + "rugs\u0117jo", + "spalio", + "lapkri\u010dio", + "gruod\u017eio" ], "SHORTDAY": [ "sk", @@ -73,15 +73,15 @@ $provide.value("$locale", { ], "fullDate": "y 'm'. MMMM d 'd'., EEEE", "longDate": "y 'm'. MMMM d 'd'.", - "medium": "y MMM d HH:mm:ss", - "mediumDate": "y MMM d", + "medium": "y-MM-dd HH:mm:ss", + "mediumDate": "y-MM-dd", "mediumTime": "HH:mm:ss", "short": "y-MM-dd HH:mm", "shortDate": "y-MM-dd", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { - "CURRENCY_SYM": "Lt", + "CURRENCY_SYM": "\u20ac", "DECIMAL_SEP": ",", "GROUP_SEP": "\u00a0", "PATTERNS": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_luo-ke.js b/public/app/bower_components/angular-i18n/angular-locale_luo-ke.js index 3f7ce262..f9087dc8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_luo-ke.js +++ b/public/app/bower_components/angular-i18n/angular-locale_luo-ke.js @@ -30,7 +30,7 @@ $provide.value("$locale", { "Wuok Tich", "Tich Ariyo", "Tich Adek", - "Tich Ang'wen", + "Tich Ang\u2019wen", "Tich Abich", "Ngeso" ], @@ -38,7 +38,7 @@ $provide.value("$locale", { "Dwe mar Achiel", "Dwe mar Ariyo", "Dwe mar Adek", - "Dwe mar Ang'wen", + "Dwe mar Ang\u2019wen", "Dwe mar Abich", "Dwe mar Auchiel", "Dwe mar Abiriyo", diff --git a/public/app/bower_components/angular-i18n/angular-locale_luo.js b/public/app/bower_components/angular-i18n/angular-locale_luo.js index 99b12d1b..11e51ea2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_luo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_luo.js @@ -30,7 +30,7 @@ $provide.value("$locale", { "Wuok Tich", "Tich Ariyo", "Tich Adek", - "Tich Ang'wen", + "Tich Ang\u2019wen", "Tich Abich", "Ngeso" ], @@ -38,7 +38,7 @@ $provide.value("$locale", { "Dwe mar Achiel", "Dwe mar Ariyo", "Dwe mar Adek", - "Dwe mar Ang'wen", + "Dwe mar Ang\u2019wen", "Dwe mar Abich", "Dwe mar Auchiel", "Dwe mar Abiriyo", diff --git a/public/app/bower_components/angular-i18n/angular-locale_lv-lv.js b/public/app/bower_components/angular-i18n/angular-locale_lv-lv.js index f9356fa6..343b8b9a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_lv-lv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_lv-lv.js @@ -97,8 +97,8 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, - "lgSize": 3, + "gSize": 0, + "lgSize": 0, "maxFrac": 2, "minFrac": 2, "minInt": 1, diff --git a/public/app/bower_components/angular-i18n/angular-locale_lv.js b/public/app/bower_components/angular-i18n/angular-locale_lv.js index aa31eda5..8cdceb63 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_lv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_lv.js @@ -97,8 +97,8 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, - "lgSize": 3, + "gSize": 0, + "lgSize": 0, "maxFrac": 2, "minFrac": 2, "minInt": 1, diff --git a/public/app/bower_components/angular-i18n/angular-locale_mgh-mz.js b/public/app/bower_components/angular-i18n/angular-locale_mgh-mz.js index e60a2459..41860482 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mgh-mz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mgh-mz.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "wichishu", - "mchochil'l" + "mchochil\u2019l" ], "DAY": [ "Sabato", @@ -46,7 +46,7 @@ $provide.value("$locale", { "Mweri wo tisa", "Mweri wo kumi", "Mweri wo kumi na moja", - "Mweri wo kumi na yel'li" + "Mweri wo kumi na yel\u2019li" ], "SHORTDAY": [ "Sab", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mgh.js b/public/app/bower_components/angular-i18n/angular-locale_mgh.js index e5c14b90..ee4fedcf 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mgh.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mgh.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "wichishu", - "mchochil'l" + "mchochil\u2019l" ], "DAY": [ "Sabato", @@ -46,7 +46,7 @@ $provide.value("$locale", { "Mweri wo tisa", "Mweri wo kumi", "Mweri wo kumi na moja", - "Mweri wo kumi na yel'li" + "Mweri wo kumi na yel\u2019li" ], "SHORTDAY": [ "Sab", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mk-mk.js b/public/app/bower_components/angular-i18n/angular-locale_mk-mk.js index 30b8e34f..e7a3d04b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mk-mk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mk-mk.js @@ -71,8 +71,8 @@ $provide.value("$locale", { "\u043d\u043e\u0435\u043c.", "\u0434\u0435\u043a." ], - "fullDate": "EEEE, dd MMMM y '\u0433'.", - "longDate": "dd MMMM y '\u0433'.", + "fullDate": "EEEE, dd MMMM y", + "longDate": "dd MMMM y", "medium": "dd.M.y HH:mm:ss", "mediumDate": "dd.M.y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mk.js b/public/app/bower_components/angular-i18n/angular-locale_mk.js index 027cca29..94618a5d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mk.js @@ -71,8 +71,8 @@ $provide.value("$locale", { "\u043d\u043e\u0435\u043c.", "\u0434\u0435\u043a." ], - "fullDate": "EEEE, dd MMMM y '\u0433'.", - "longDate": "dd MMMM y '\u0433'.", + "fullDate": "EEEE, dd MMMM y", + "longDate": "dd MMMM y", "medium": "dd.M.y HH:mm:ss", "mediumDate": "dd.M.y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ml-in.js b/public/app/bower_components/angular-i18n/angular-locale_ml-in.js index f58fb8e0..64ec7282 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ml-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ml-in.js @@ -79,15 +79,15 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a4", - "posPre": "", - "posSuf": "\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_ml.js b/public/app/bower_components/angular-i18n/angular-locale_ml.js index 80990e2f..7a880ce1 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ml.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ml.js @@ -79,15 +79,15 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a4", - "posPre": "", - "posSuf": "\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl-mn.js b/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl-mn.js index 36c40a00..0d91c7eb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl-mn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl-mn.js @@ -53,8 +53,8 @@ $provide.value("$locale", { "11-\u0440 \u0441\u0430\u0440", "12-\u0440 \u0441\u0430\u0440" ], - "fullDate": "EEEE, y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' dd", - "longDate": "y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' d", + "fullDate": "EEEE, y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", + "longDate": "y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl.js index 02d1520e..7b9fe6fb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl.js @@ -53,8 +53,8 @@ $provide.value("$locale", { "11-\u0440 \u0441\u0430\u0440", "12-\u0440 \u0441\u0430\u0440" ], - "fullDate": "EEEE, y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' dd", - "longDate": "y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' d", + "fullDate": "EEEE, y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", + "longDate": "y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mn.js b/public/app/bower_components/angular-i18n/angular-locale_mn.js index 4ac32a41..7c284c20 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mn.js @@ -53,8 +53,8 @@ $provide.value("$locale", { "11-\u0440 \u0441\u0430\u0440", "12-\u0440 \u0441\u0430\u0440" ], - "fullDate": "EEEE, y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' dd", - "longDate": "y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' d", + "fullDate": "EEEE, y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", + "longDate": "y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mr-in.js b/public/app/bower_components/angular-i18n/angular-locale_mr-in.js index bf8c79ee..fc608100 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mr-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mr-in.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "[AM]", - "[PM]" + "\u092e.\u092a\u0942.", + "\u092e.\u0909." ], "DAY": [ "\u0930\u0935\u093f\u0935\u093e\u0930", @@ -68,7 +68,7 @@ $provide.value("$locale", { "GROUP_SEP": ",", "PATTERNS": [ { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 3, "minFrac": 0, diff --git a/public/app/bower_components/angular-i18n/angular-locale_mr.js b/public/app/bower_components/angular-i18n/angular-locale_mr.js index 1546413f..bf441203 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mr.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "[AM]", - "[PM]" + "\u092e.\u092a\u0942.", + "\u092e.\u0909." ], "DAY": [ "\u0930\u0935\u093f\u0935\u093e\u0930", @@ -68,7 +68,7 @@ $provide.value("$locale", { "GROUP_SEP": ",", "PATTERNS": [ { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 3, "minFrac": 0, diff --git a/public/app/bower_components/angular-i18n/angular-locale_mt-mt.js b/public/app/bower_components/angular-i18n/angular-locale_mt-mt.js index 957b69eb..b0b41c9b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mt-mt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mt-mt.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "QN", - "WN" + "AM", + "PM" ], "DAY": [ "Il-\u0126add", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mt.js b/public/app/bower_components/angular-i18n/angular-locale_mt.js index 7907b678..2d0b1c4e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mt.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "QN", - "WN" + "AM", + "PM" ], "DAY": [ "Il-\u0126add", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mua-cm.js b/public/app/bower_components/angular-i18n/angular-locale_mua-cm.js index a1ff1153..9496099e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mua-cm.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mua-cm.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "lilli" ], "DAY": [ - "Com'yakke", + "Com\u2019yakke", "Comlaa\u0257ii", "Comzyii\u0257ii", "Comkolle", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mua.js b/public/app/bower_components/angular-i18n/angular-locale_mua.js index c7b4a2f3..4f0e180f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mua.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mua.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "lilli" ], "DAY": [ - "Com'yakke", + "Com\u2019yakke", "Comlaa\u0257ii", "Comzyii\u0257ii", "Comkolle", diff --git a/public/app/bower_components/angular-i18n/angular-locale_my-mm.js b/public/app/bower_components/angular-i18n/angular-locale_my-mm.js index 3b98a889..cf3691c3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_my-mm.js +++ b/public/app/bower_components/angular-i18n/angular-locale_my-mm.js @@ -40,26 +40,26 @@ $provide.value("$locale", { "\u1005\u1014\u1031" ], "SHORTMONTH": [ - "\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e", - "\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e", + "\u1007\u1014\u103a", + "\u1016\u1031", "\u1019\u1010\u103a", "\u1027\u1015\u103c\u102e", "\u1019\u1031", "\u1007\u103d\u1014\u103a", - "\u1007\u1030\u101c\u102d\u102f\u1004\u103a", - "\u1029\u1002\u102f\u1010\u103a", - "\u1005\u1000\u103a\u1010\u1004\u103a\u1018\u102c", - "\u1021\u1031\u102c\u1000\u103a\u1010\u102d\u102f\u1018\u102c", - "\u1014\u102d\u102f\u101d\u1004\u103a\u1018\u102c", - "\u1012\u102e\u1007\u1004\u103a\u1018\u102c" + "\u1007\u1030", + "\u1029", + "\u1005\u1000\u103a", + "\u1021\u1031\u102c\u1000\u103a", + "\u1014\u102d\u102f", + "\u1012\u102e" ], - "fullDate": "EEEE, y MMMM dd", - "longDate": "y MMMM d", - "medium": "y MMM d HH:mm:ss", - "mediumDate": "y MMM d", + "fullDate": "EEEE, dd MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "yy/MM/dd HH:mm", - "shortDate": "yy/MM/dd", + "short": "dd-MM-yy HH:mm", + "shortDate": "dd-MM-yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_my.js b/public/app/bower_components/angular-i18n/angular-locale_my.js index 6e7edd51..01c098fd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_my.js +++ b/public/app/bower_components/angular-i18n/angular-locale_my.js @@ -40,26 +40,26 @@ $provide.value("$locale", { "\u1005\u1014\u1031" ], "SHORTMONTH": [ - "\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e", - "\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e", + "\u1007\u1014\u103a", + "\u1016\u1031", "\u1019\u1010\u103a", "\u1027\u1015\u103c\u102e", "\u1019\u1031", "\u1007\u103d\u1014\u103a", - "\u1007\u1030\u101c\u102d\u102f\u1004\u103a", - "\u1029\u1002\u102f\u1010\u103a", - "\u1005\u1000\u103a\u1010\u1004\u103a\u1018\u102c", - "\u1021\u1031\u102c\u1000\u103a\u1010\u102d\u102f\u1018\u102c", - "\u1014\u102d\u102f\u101d\u1004\u103a\u1018\u102c", - "\u1012\u102e\u1007\u1004\u103a\u1018\u102c" + "\u1007\u1030", + "\u1029", + "\u1005\u1000\u103a", + "\u1021\u1031\u102c\u1000\u103a", + "\u1014\u102d\u102f", + "\u1012\u102e" ], - "fullDate": "EEEE, y MMMM dd", - "longDate": "y MMMM d", - "medium": "y MMM d HH:mm:ss", - "mediumDate": "y MMM d", + "fullDate": "EEEE, dd MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "yy/MM/dd HH:mm", - "shortDate": "yy/MM/dd", + "short": "dd-MM-yy HH:mm", + "shortDate": "dd-MM-yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nb-no.js b/public/app/bower_components/angular-i18n/angular-locale_nb-no.js index 1cf952ea..227cc208 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nb-no.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nb-no.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nb-sj.js b/public/app/bower_components/angular-i18n/angular-locale_nb-sj.js index 463b1867..3626313e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nb-sj.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nb-sj.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nb.js b/public/app/bower_components/angular-i18n/angular-locale_nb.js index 47982afd..fc54f158 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nb.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nb.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ne-in.js b/public/app/bower_components/angular-i18n/angular-locale_ne-in.js index 95c34643..7aac84ed 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ne-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ne-in.js @@ -84,9 +84,9 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_ne-np.js b/public/app/bower_components/angular-i18n/angular-locale_ne-np.js index 5987d4d6..ad00bc49 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ne-np.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ne-np.js @@ -84,9 +84,9 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_ne.js b/public/app/bower_components/angular-i18n/angular-locale_ne.js index de55d962..d278adae 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ne.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ne.js @@ -84,9 +84,9 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-aw.js b/public/app/bower_components/angular-i18n/angular-locale_nl-aw.js index 8a9d640d..52ae309f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-aw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-aw.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-be.js b/public/app/bower_components/angular-i18n/angular-locale_nl-be.js index 9031ff5e..bd8a569f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-be.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-be.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-bq.js b/public/app/bower_components/angular-i18n/angular-locale_nl-bq.js index 61e60bed..5bf5d851 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-bq.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-bq.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-cw.js b/public/app/bower_components/angular-i18n/angular-locale_nl-cw.js index c2197595..ec766ee6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-cw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-cw.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-nl.js b/public/app/bower_components/angular-i18n/angular-locale_nl-nl.js index 764245c1..9a4a5213 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-nl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-nl.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-sr.js b/public/app/bower_components/angular-i18n/angular-locale_nl-sr.js index ee428caf..0586aca7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-sr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-sr.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-sx.js b/public/app/bower_components/angular-i18n/angular-locale_nl-sx.js index b3be861f..aa2b37e8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-sx.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-sx.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl.js b/public/app/bower_components/angular-i18n/angular-locale_nl.js index ac19d54c..bee9598d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nn-no.js b/public/app/bower_components/angular-i18n/angular-locale_nn-no.js index 7e1408ff..cb16b292 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nn-no.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nn-no.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH:mm:ss", "mediumDate": "d. MMM y", "mediumTime": "HH:mm:ss", - "short": "dd.MM.yy HH:mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH:mm", + "shortDate": "dd.MM.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nn.js b/public/app/bower_components/angular-i18n/angular-locale_nn.js index f786e739..5d25b37c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nn.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH:mm:ss", "mediumDate": "d. MMM y", "mediumTime": "HH:mm:ss", - "short": "dd.MM.yy HH:mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH:mm", + "shortDate": "dd.MM.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_no-no.js b/public/app/bower_components/angular-i18n/angular-locale_no-no.js index 74211791..94232f40 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_no-no.js +++ b/public/app/bower_components/angular-i18n/angular-locale_no-no.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_no.js b/public/app/bower_components/angular-i18n/angular-locale_no.js index d63d8855..222d64d4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_no.js +++ b/public/app/bower_components/angular-i18n/angular-locale_no.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nso-za.js b/public/app/bower_components/angular-i18n/angular-locale_nso-za.js index f586e09a..35e4532b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nso-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nso-za.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "R", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nso.js b/public/app/bower_components/angular-i18n/angular-locale_nso.js index 399e9150..d24ff6c5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nso.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nso.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "R", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_or-in.js b/public/app/bower_components/angular-i18n/angular-locale_or-in.js index 54b3004d..ecfbcb43 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_or-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_or-in.js @@ -18,10 +18,10 @@ $provide.value("$locale", { ], "MONTH": [ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40", - "\u0b2b\u0b47\u0b2c\u0b4d\u0b30\u0b41\u0b5f\u0b3e\u0b30\u0b40", + "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40", "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a", "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32", - "\u0b2e\u0b47", + "\u0b2e\u0b07", "\u0b1c\u0b41\u0b28", "\u0b1c\u0b41\u0b32\u0b3e\u0b07", "\u0b05\u0b17\u0b37\u0b4d\u0b1f", @@ -41,10 +41,10 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40", - "\u0b2b\u0b47\u0b2c\u0b4d\u0b30\u0b41\u0b5f\u0b3e\u0b30\u0b40", + "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40", "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a", "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32", - "\u0b2e\u0b47", + "\u0b2e\u0b07", "\u0b1c\u0b41\u0b28", "\u0b1c\u0b41\u0b32\u0b3e\u0b07", "\u0b05\u0b17\u0b37\u0b4d\u0b1f", diff --git a/public/app/bower_components/angular-i18n/angular-locale_or.js b/public/app/bower_components/angular-i18n/angular-locale_or.js index e355aa84..b53ab02c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_or.js +++ b/public/app/bower_components/angular-i18n/angular-locale_or.js @@ -18,10 +18,10 @@ $provide.value("$locale", { ], "MONTH": [ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40", - "\u0b2b\u0b47\u0b2c\u0b4d\u0b30\u0b41\u0b5f\u0b3e\u0b30\u0b40", + "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40", "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a", "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32", - "\u0b2e\u0b47", + "\u0b2e\u0b07", "\u0b1c\u0b41\u0b28", "\u0b1c\u0b41\u0b32\u0b3e\u0b07", "\u0b05\u0b17\u0b37\u0b4d\u0b1f", @@ -41,10 +41,10 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40", - "\u0b2b\u0b47\u0b2c\u0b4d\u0b30\u0b41\u0b5f\u0b3e\u0b30\u0b40", + "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40", "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a", "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32", - "\u0b2e\u0b47", + "\u0b2e\u0b07", "\u0b1c\u0b41\u0b28", "\u0b1c\u0b41\u0b32\u0b3e\u0b07", "\u0b05\u0b17\u0b37\u0b4d\u0b1f", diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa-arab-pk.js b/public/app/bower_components/angular-i18n/angular-locale_pa-arab-pk.js index 35da6037..66f1d7ca 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa-arab-pk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa-arab-pk.js @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u062f\u0633\u0645\u0628\u0631" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0627\u062a\u0648\u0627\u0631", + "\u067e\u06cc\u0631", + "\u0645\u0646\u06af\u0644", + "\u0628\u064f\u062f\u06be", + "\u062c\u0645\u0639\u0631\u0627\u062a", + "\u062c\u0645\u0639\u06c1", + "\u06c1\u0641\u062a\u06c1" ], "SHORTMONTH": [ - "\u0a1c\u0a28\u0a35\u0a30\u0a40", - "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40", - "\u0a2e\u0a3e\u0a30\u0a1a", - "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32", - "\u0a2e\u0a08", - "\u0a1c\u0a42\u0a28", - "\u0a1c\u0a41\u0a32\u0a3e\u0a08", - "\u0a05\u0a17\u0a38\u0a24", - "\u0a38\u0a24\u0a70\u0a2c\u0a30", - "\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30", - "\u0a28\u0a35\u0a70\u0a2c\u0a30", - "\u0a26\u0a38\u0a70\u0a2c\u0a30" + "\u062c\u0646\u0648\u0631\u06cc", + "\u0641\u0631\u0648\u0631\u06cc", + "\u0645\u0627\u0631\u0686", + "\u0627\u067e\u0631\u06cc\u0644", + "\u0645\u0626", + "\u062c\u0648\u0646", + "\u062c\u0648\u0644\u0627\u0626\u06cc", + "\u0627\u06af\u0633\u062a", + "\u0633\u062a\u0645\u0628\u0631", + "\u0627\u06a9\u062a\u0648\u0628\u0631", + "\u0646\u0648\u0645\u0628\u0631", + "\u062f\u0633\u0645\u0628\u0631" ], "fullDate": "EEEE, dd MMMM y", "longDate": "d MMMM y", @@ -65,10 +65,10 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "Rs", "DECIMAL_SEP": "\u066b", - "GROUP_SEP": ",", + "GROUP_SEP": "\u066c", "PATTERNS": [ { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 3, "minFrac": 0, @@ -79,14 +79,14 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa-arab.js b/public/app/bower_components/angular-i18n/angular-locale_pa-arab.js index c67d8d23..ffd6df41 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa-arab.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa-arab.js @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u062f\u0633\u0645\u0628\u0631" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0627\u062a\u0648\u0627\u0631", + "\u067e\u06cc\u0631", + "\u0645\u0646\u06af\u0644", + "\u0628\u064f\u062f\u06be", + "\u062c\u0645\u0639\u0631\u0627\u062a", + "\u062c\u0645\u0639\u06c1", + "\u06c1\u0641\u062a\u06c1" ], "SHORTMONTH": [ - "\u0a1c\u0a28\u0a35\u0a30\u0a40", - "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40", - "\u0a2e\u0a3e\u0a30\u0a1a", - "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32", - "\u0a2e\u0a08", - "\u0a1c\u0a42\u0a28", - "\u0a1c\u0a41\u0a32\u0a3e\u0a08", - "\u0a05\u0a17\u0a38\u0a24", - "\u0a38\u0a24\u0a70\u0a2c\u0a30", - "\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30", - "\u0a28\u0a35\u0a70\u0a2c\u0a30", - "\u0a26\u0a38\u0a70\u0a2c\u0a30" + "\u062c\u0646\u0648\u0631\u06cc", + "\u0641\u0631\u0648\u0631\u06cc", + "\u0645\u0627\u0631\u0686", + "\u0627\u067e\u0631\u06cc\u0644", + "\u0645\u0626", + "\u062c\u0648\u0646", + "\u062c\u0648\u0644\u0627\u0626\u06cc", + "\u0627\u06af\u0633\u062a", + "\u0633\u062a\u0645\u0628\u0631", + "\u0627\u06a9\u062a\u0648\u0628\u0631", + "\u0646\u0648\u0645\u0628\u0631", + "\u062f\u0633\u0645\u0628\u0631" ], "fullDate": "EEEE, dd MMMM y", "longDate": "d MMMM y", @@ -65,10 +65,10 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "Rs", "DECIMAL_SEP": "\u066b", - "GROUP_SEP": ",", + "GROUP_SEP": "\u066c", "PATTERNS": [ { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 3, "minFrac": 0, @@ -79,14 +79,14 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa-guru-in.js b/public/app/bower_components/angular-i18n/angular-locale_pa-guru-in.js index 467f35db..7f014b69 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa-guru-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa-guru-in.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0a2a\u0a42.\u0a26\u0a41.", + "\u0a2c\u0a3e.\u0a26\u0a41." ], "DAY": [ "\u0a10\u0a24\u0a35\u0a3e\u0a30", "\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30", "\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30", - "\u0a2c\u0a41\u0a27\u0a35\u0a3e\u0a30", + "\u0a2c\u0a41\u0a71\u0a27\u0a35\u0a3e\u0a30", "\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30", "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30", - "\u0a38\u0a3c\u0a28\u0a40\u0a35\u0a3e\u0a30" + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30\u0a35\u0a3e\u0a30" ], "MONTH": [ "\u0a1c\u0a28\u0a35\u0a30\u0a40", @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0a26\u0a38\u0a70\u0a2c\u0a30" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0a10\u0a24", + "\u0a38\u0a4b\u0a2e", + "\u0a2e\u0a70\u0a17\u0a32", + "\u0a2c\u0a41\u0a71\u0a27", + "\u0a35\u0a40\u0a30", + "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30", + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30" ], "SHORTMONTH": [ - "\u0a1c\u0a28\u0a35\u0a30\u0a40", - "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40", + "\u0a1c\u0a28", + "\u0a2b\u0a3c\u0a30", "\u0a2e\u0a3e\u0a30\u0a1a", - "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32", + "\u0a05\u0a2a\u0a4d\u0a30\u0a48", "\u0a2e\u0a08", "\u0a1c\u0a42\u0a28", - "\u0a1c\u0a41\u0a32\u0a3e\u0a08", - "\u0a05\u0a17\u0a38\u0a24", - "\u0a38\u0a24\u0a70\u0a2c\u0a30", - "\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30", - "\u0a28\u0a35\u0a70\u0a2c\u0a30", - "\u0a26\u0a38\u0a70\u0a2c\u0a30" + "\u0a1c\u0a41\u0a32\u0a3e", + "\u0a05\u0a17", + "\u0a38\u0a24\u0a70", + "\u0a05\u0a15\u0a24\u0a42", + "\u0a28\u0a35\u0a70", + "\u0a26\u0a38\u0a70" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa-guru.js b/public/app/bower_components/angular-i18n/angular-locale_pa-guru.js index 021980f7..f15ce9d8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa-guru.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa-guru.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0a2a\u0a42.\u0a26\u0a41.", + "\u0a2c\u0a3e.\u0a26\u0a41." ], "DAY": [ "\u0a10\u0a24\u0a35\u0a3e\u0a30", "\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30", "\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30", - "\u0a2c\u0a41\u0a27\u0a35\u0a3e\u0a30", + "\u0a2c\u0a41\u0a71\u0a27\u0a35\u0a3e\u0a30", "\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30", "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30", - "\u0a38\u0a3c\u0a28\u0a40\u0a35\u0a3e\u0a30" + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30\u0a35\u0a3e\u0a30" ], "MONTH": [ "\u0a1c\u0a28\u0a35\u0a30\u0a40", @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0a26\u0a38\u0a70\u0a2c\u0a30" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0a10\u0a24", + "\u0a38\u0a4b\u0a2e", + "\u0a2e\u0a70\u0a17\u0a32", + "\u0a2c\u0a41\u0a71\u0a27", + "\u0a35\u0a40\u0a30", + "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30", + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30" ], "SHORTMONTH": [ - "\u0a1c\u0a28\u0a35\u0a30\u0a40", - "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40", + "\u0a1c\u0a28", + "\u0a2b\u0a3c\u0a30", "\u0a2e\u0a3e\u0a30\u0a1a", - "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32", + "\u0a05\u0a2a\u0a4d\u0a30\u0a48", "\u0a2e\u0a08", "\u0a1c\u0a42\u0a28", - "\u0a1c\u0a41\u0a32\u0a3e\u0a08", - "\u0a05\u0a17\u0a38\u0a24", - "\u0a38\u0a24\u0a70\u0a2c\u0a30", - "\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30", - "\u0a28\u0a35\u0a70\u0a2c\u0a30", - "\u0a26\u0a38\u0a70\u0a2c\u0a30" + "\u0a1c\u0a41\u0a32\u0a3e", + "\u0a05\u0a17", + "\u0a38\u0a24\u0a70", + "\u0a05\u0a15\u0a24\u0a42", + "\u0a28\u0a35\u0a70", + "\u0a26\u0a38\u0a70" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa.js b/public/app/bower_components/angular-i18n/angular-locale_pa.js index 6b2a8021..61963dcf 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0a2a\u0a42.\u0a26\u0a41.", + "\u0a2c\u0a3e.\u0a26\u0a41." ], "DAY": [ "\u0a10\u0a24\u0a35\u0a3e\u0a30", "\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30", "\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30", - "\u0a2c\u0a41\u0a27\u0a35\u0a3e\u0a30", + "\u0a2c\u0a41\u0a71\u0a27\u0a35\u0a3e\u0a30", "\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30", "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30", - "\u0a38\u0a3c\u0a28\u0a40\u0a35\u0a3e\u0a30" + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30\u0a35\u0a3e\u0a30" ], "MONTH": [ "\u0a1c\u0a28\u0a35\u0a30\u0a40", @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0a26\u0a38\u0a70\u0a2c\u0a30" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0a10\u0a24", + "\u0a38\u0a4b\u0a2e", + "\u0a2e\u0a70\u0a17\u0a32", + "\u0a2c\u0a41\u0a71\u0a27", + "\u0a35\u0a40\u0a30", + "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30", + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30" ], "SHORTMONTH": [ - "\u0a1c\u0a28\u0a35\u0a30\u0a40", - "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40", + "\u0a1c\u0a28", + "\u0a2b\u0a3c\u0a30", "\u0a2e\u0a3e\u0a30\u0a1a", - "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32", + "\u0a05\u0a2a\u0a4d\u0a30\u0a48", "\u0a2e\u0a08", "\u0a1c\u0a42\u0a28", - "\u0a1c\u0a41\u0a32\u0a3e\u0a08", - "\u0a05\u0a17\u0a38\u0a24", - "\u0a38\u0a24\u0a70\u0a2c\u0a30", - "\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30", - "\u0a28\u0a35\u0a70\u0a2c\u0a30", - "\u0a26\u0a38\u0a70\u0a2c\u0a30" + "\u0a1c\u0a41\u0a32\u0a3e", + "\u0a05\u0a17", + "\u0a38\u0a24\u0a70", + "\u0a05\u0a15\u0a24\u0a42", + "\u0a28\u0a35\u0a70", + "\u0a26\u0a38\u0a70" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-ao.js b/public/app/bower_components/angular-i18n/angular-locale_pt-ao.js index 8e8007bf..cf7dbe71 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-ao.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-ao.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "Kz", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-ao", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-br.js b/public/app/bower_components/angular-i18n/angular-locale_pt-br.js index 737c3442..1872e7a9 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-br.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-br.js @@ -1,37 +1,6 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ @@ -86,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d 'de' MMM 'de' y HH:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", @@ -123,6 +92,6 @@ $provide.value("$locale", { ] }, "id": "pt-br", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-cv.js b/public/app/bower_components/angular-i18n/angular-locale_pt-cv.js index db1452c2..45846c81 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-cv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-cv.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CVE", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-cv", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-gw.js b/public/app/bower_components/angular-i18n/angular-locale_pt-gw.js index d9d1b519..8aee8662 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-gw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-gw.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CFA", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-gw", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-mo.js b/public/app/bower_components/angular-i18n/angular-locale_pt-mo.js index 46e900d8..e5a1520f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-mo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-mo.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "MOP", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-mo", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-mz.js b/public/app/bower_components/angular-i18n/angular-locale_pt-mz.js index 1333b32f..524e3595 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-mz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-mz.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "MTn", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-mz", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-pt.js b/public/app/bower_components/angular-i18n/angular-locale_pt-pt.js index 3d7f998e..2ad53e6b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-pt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-pt.js @@ -1,37 +1,6 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ @@ -48,18 +17,18 @@ $provide.value("$locale", { "s\u00e1bado" ], "MONTH": [ - "Janeiro", - "Fevereiro", - "Mar\u00e7o", - "Abril", - "Maio", - "Junho", - "Julho", - "Agosto", - "Setembro", - "Outubro", - "Novembro", - "Dezembro" + "janeiro", + "fevereiro", + "mar\u00e7o", + "abril", + "maio", + "junho", + "julho", + "agosto", + "setembro", + "outubro", + "novembro", + "dezembro" ], "SHORTDAY": [ "dom", @@ -71,18 +40,18 @@ $provide.value("$locale", { "s\u00e1b" ], "SHORTMONTH": [ - "Jan", - "Fev", - "Mar", - "Abr", - "Mai", - "Jun", - "Jul", - "Ago", - "Set", - "Out", - "Nov", - "Dez" + "jan", + "fev", + "mar", + "abr", + "mai", + "jun", + "jul", + "ago", + "set", + "out", + "nov", + "dez" ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", @@ -123,6 +92,6 @@ $provide.value("$locale", { ] }, "id": "pt-pt", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-st.js b/public/app/bower_components/angular-i18n/angular-locale_pt-st.js index e1736c30..d6e02715 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-st.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-st.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "Db", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-st", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-tl.js b/public/app/bower_components/angular-i18n/angular-locale_pt-tl.js index 92924f61..517773ee 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-tl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-tl.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "$", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-tl", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt.js b/public/app/bower_components/angular-i18n/angular-locale_pt.js index 8aa48b80..9fc521b8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt.js @@ -1,37 +1,6 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ @@ -86,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d 'de' MMM 'de' y HH:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", @@ -123,6 +92,6 @@ $provide.value("$locale", { ] }, "id": "pt", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_qu-bo.js b/public/app/bower_components/angular-i18n/angular-locale_qu-bo.js new file mode 100644 index 00000000..e394c4bc --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_qu-bo.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "a.m.", + "p.m." + ], + "DAY": [ + "Domingo", + "Lunes", + "Martes", + "Mi\u00e9rcoles", + "Jueves", + "Viernes", + "S\u00e1bado" + ], + "MONTH": [ + "Qulla puquy", + "Hatun puquy", + "Pauqar waray", + "Ayriwa", + "Aymuray", + "Inti raymi", + "Anta Sitwa", + "Qhapaq Sitwa", + "Uma raymi", + "Kantaray", + "Ayamarq\u02bca", + "Kapaq Raymi" + ], + "SHORTDAY": [ + "Dom", + "Lun", + "Mar", + "Mi\u00e9", + "Jue", + "Vie", + "Sab" + ], + "SHORTMONTH": [ + "Qul", + "Hat", + "Pau", + "Ayr", + "Aym", + "Int", + "Ant", + "Qha", + "Uma", + "Kan", + "Aya", + "Kap" + ], + "fullDate": "EEEE, d MMMM, y", + "longDate": "y MMMM d", + "medium": "y MMM d hh:mm:ss a", + "mediumDate": "y MMM d", + "mediumTime": "hh:mm:ss a", + "short": "dd/MM/y hh:mm a", + "shortDate": "dd/MM/y", + "shortTime": "hh:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "Bs", + "DECIMAL_SEP": ",", + "GROUP_SEP": ".", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "qu-bo", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_qu-ec.js b/public/app/bower_components/angular-i18n/angular-locale_qu-ec.js new file mode 100644 index 00000000..afb3073e --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_qu-ec.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "a.m.", + "p.m." + ], + "DAY": [ + "Domingo", + "Lunes", + "Martes", + "Mi\u00e9rcoles", + "Jueves", + "Viernes", + "S\u00e1bado" + ], + "MONTH": [ + "Qulla puquy", + "Hatun puquy", + "Pauqar waray", + "Ayriwa", + "Aymuray", + "Inti raymi", + "Anta Sitwa", + "Qhapaq Sitwa", + "Uma raymi", + "Kantaray", + "Ayamarq\u02bca", + "Kapaq Raymi" + ], + "SHORTDAY": [ + "Dom", + "Lun", + "Mar", + "Mi\u00e9", + "Jue", + "Vie", + "Sab" + ], + "SHORTMONTH": [ + "Qul", + "Hat", + "Pau", + "Ayr", + "Aym", + "Int", + "Ant", + "Qha", + "Uma", + "Kan", + "Aya", + "Kap" + ], + "fullDate": "EEEE, d MMMM, y", + "longDate": "y MMMM d", + "medium": "y MMM d hh:mm:ss a", + "mediumDate": "y MMM d", + "mediumTime": "hh:mm:ss a", + "short": "dd/MM/y hh:mm a", + "shortDate": "dd/MM/y", + "shortTime": "hh:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "$", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "qu-ec", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_qu-pe.js b/public/app/bower_components/angular-i18n/angular-locale_qu-pe.js new file mode 100644 index 00000000..c8c11d35 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_qu-pe.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "a.m.", + "p.m." + ], + "DAY": [ + "Domingo", + "Lunes", + "Martes", + "Mi\u00e9rcoles", + "Jueves", + "Viernes", + "S\u00e1bado" + ], + "MONTH": [ + "Qulla puquy", + "Hatun puquy", + "Pauqar waray", + "Ayriwa", + "Aymuray", + "Inti raymi", + "Anta Sitwa", + "Qhapaq Sitwa", + "Uma raymi", + "Kantaray", + "Ayamarq\u02bca", + "Kapaq Raymi" + ], + "SHORTDAY": [ + "Dom", + "Lun", + "Mar", + "Mi\u00e9", + "Jue", + "Vie", + "Sab" + ], + "SHORTMONTH": [ + "Qul", + "Hat", + "Pau", + "Ayr", + "Aym", + "Int", + "Ant", + "Qha", + "Uma", + "Kan", + "Aya", + "Kap" + ], + "fullDate": "EEEE, d MMMM, y", + "longDate": "y MMMM d", + "medium": "y MMM d hh:mm:ss a", + "mediumDate": "y MMM d", + "mediumTime": "hh:mm:ss a", + "short": "dd/MM/y hh:mm a", + "shortDate": "dd/MM/y", + "shortTime": "hh:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "S/.", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "qu-pe", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_qu.js b/public/app/bower_components/angular-i18n/angular-locale_qu.js new file mode 100644 index 00000000..53166755 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_qu.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "a.m.", + "p.m." + ], + "DAY": [ + "Domingo", + "Lunes", + "Martes", + "Mi\u00e9rcoles", + "Jueves", + "Viernes", + "S\u00e1bado" + ], + "MONTH": [ + "Qulla puquy", + "Hatun puquy", + "Pauqar waray", + "Ayriwa", + "Aymuray", + "Inti raymi", + "Anta Sitwa", + "Qhapaq Sitwa", + "Uma raymi", + "Kantaray", + "Ayamarq\u02bca", + "Kapaq Raymi" + ], + "SHORTDAY": [ + "Dom", + "Lun", + "Mar", + "Mi\u00e9", + "Jue", + "Vie", + "Sab" + ], + "SHORTMONTH": [ + "Qul", + "Hat", + "Pau", + "Ayr", + "Aym", + "Int", + "Ant", + "Qha", + "Uma", + "Kan", + "Aya", + "Kap" + ], + "fullDate": "EEEE, d MMMM, y", + "longDate": "y MMMM d", + "medium": "y MMM d hh:mm:ss a", + "mediumDate": "y MMM d", + "mediumTime": "hh:mm:ss a", + "short": "dd/MM/y hh:mm a", + "shortDate": "dd/MM/y", + "shortTime": "hh:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "S/.", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "qu", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_rn-bi.js b/public/app/bower_components/angular-i18n/angular-locale_rn-bi.js index f3c629b2..31d822fb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_rn-bi.js +++ b/public/app/bower_components/angular-i18n/angular-locale_rn-bi.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "Z.MW." ], "DAY": [ - "Ku w'indwi", + "Ku w\u2019indwi", "Ku wa mbere", "Ku wa kabiri", "Ku wa gatatu", diff --git a/public/app/bower_components/angular-i18n/angular-locale_rn.js b/public/app/bower_components/angular-i18n/angular-locale_rn.js index 703f3813..2d7ac5e9 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_rn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_rn.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "Z.MW." ], "DAY": [ - "Ku w'indwi", + "Ku w\u2019indwi", "Ku wa mbere", "Ku wa kabiri", "Ku wa gatatu", diff --git a/public/app/bower_components/angular-i18n/angular-locale_rof-tz.js b/public/app/bower_components/angular-i18n/angular-locale_rof-tz.js index 9eb177c8..b2d5c1ce 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_rof-tz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_rof-tz.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "kang'ama", + "kang\u2019ama", "kingoto" ], "DAY": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_rof.js b/public/app/bower_components/angular-i18n/angular-locale_rof.js index 9db1b0ce..21114d5e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_rof.js +++ b/public/app/bower_components/angular-i18n/angular-locale_rof.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "kang'ama", + "kang\u2019ama", "kingoto" ], "DAY": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_saq-ke.js b/public/app/bower_components/angular-i18n/angular-locale_saq-ke.js index 1152411b..7b8fb714 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_saq-ke.js +++ b/public/app/bower_components/angular-i18n/angular-locale_saq-ke.js @@ -28,7 +28,7 @@ $provide.value("$locale", { "DAY": [ "Mderot ee are", "Mderot ee kuni", - "Mderot ee ong'wan", + "Mderot ee ong\u2019wan", "Mderot ee inet", "Mderot ee ile", "Mderot ee sapa", @@ -38,7 +38,7 @@ $provide.value("$locale", { "Lapa le obo", "Lapa le waare", "Lapa le okuni", - "Lapa le ong'wan", + "Lapa le ong\u2019wan", "Lapa le imet", "Lapa le ile", "Lapa le sapa", diff --git a/public/app/bower_components/angular-i18n/angular-locale_saq.js b/public/app/bower_components/angular-i18n/angular-locale_saq.js index dd789f2e..7556ece6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_saq.js +++ b/public/app/bower_components/angular-i18n/angular-locale_saq.js @@ -28,7 +28,7 @@ $provide.value("$locale", { "DAY": [ "Mderot ee are", "Mderot ee kuni", - "Mderot ee ong'wan", + "Mderot ee ong\u2019wan", "Mderot ee inet", "Mderot ee ile", "Mderot ee sapa", @@ -38,7 +38,7 @@ $provide.value("$locale", { "Lapa le obo", "Lapa le waare", "Lapa le okuni", - "Lapa le ong'wan", + "Lapa le ong\u2019wan", "Lapa le imet", "Lapa le ile", "Lapa le sapa", diff --git a/public/app/bower_components/angular-i18n/angular-locale_se-se.js b/public/app/bower_components/angular-i18n/angular-locale_se-se.js new file mode 100644 index 00000000..1a5192e8 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_se-se.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "i\u0111itbeaivet", + "eahketbeaivet" + ], + "DAY": [ + "sotnabeaivi", + "vuoss\u00e1rga", + "ma\u014b\u014beb\u00e1rga", + "gaskavahkku", + "duorasdat", + "bearjadat", + "l\u00e1vvardat" + ], + "MONTH": [ + "o\u0111\u0111ajagem\u00e1nnu", + "guovvam\u00e1nnu", + "njuk\u010dam\u00e1nnu", + "cuo\u014bom\u00e1nnu", + "miessem\u00e1nnu", + "geassem\u00e1nnu", + "suoidnem\u00e1nnu", + "borgem\u00e1nnu", + "\u010dak\u010dam\u00e1nnu", + "golggotm\u00e1nnu", + "sk\u00e1bmam\u00e1nnu", + "juovlam\u00e1nnu" + ], + "SHORTDAY": [ + "sotn", + "vuos", + "ma\u014b", + "gask", + "duor", + "bear", + "l\u00e1v" + ], + "SHORTMONTH": [ + "o\u0111\u0111j", + "guov", + "njuk", + "cuo", + "mies", + "geas", + "suoi", + "borg", + "\u010dak\u010d", + "golg", + "sk\u00e1b", + "juov" + ], + "fullDate": "y MMMM d, EEEE", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", + "mediumTime": "HH:mm:ss", + "short": "y-MM-dd HH:mm", + "shortDate": "y-MM-dd", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "kr", + "DECIMAL_SEP": ",", + "GROUP_SEP": "\u00a0", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "se-se", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_sk-sk.js b/public/app/bower_components/angular-i18n/angular-locale_sk-sk.js index 3aff3537..d5a561f4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sk-sk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sk-sk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "dopoludnia", + "odpoludnia" ], "DAY": [ "nede\u013ea", @@ -73,11 +73,11 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d. MMMM y", "longDate": "d. MMMM y", - "medium": "d.M.y H:mm:ss", - "mediumDate": "d.M.y", + "medium": "d. M. y H:mm:ss", + "mediumDate": "d. M. y", "mediumTime": "H:mm:ss", - "short": "d.M.y H:mm", - "shortDate": "d.M.y", + "short": "dd.MM.yy H:mm", + "shortDate": "dd.MM.yy", "shortTime": "H:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sk.js b/public/app/bower_components/angular-i18n/angular-locale_sk.js index 914cec1b..3e8fcea8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "dopoludnia", + "odpoludnia" ], "DAY": [ "nede\u013ea", @@ -73,11 +73,11 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d. MMMM y", "longDate": "d. MMMM y", - "medium": "d.M.y H:mm:ss", - "mediumDate": "d.M.y", + "medium": "d. M. y H:mm:ss", + "mediumDate": "d. M. y", "mediumTime": "H:mm:ss", - "short": "d.M.y H:mm", - "shortDate": "d.M.y", + "short": "dd.MM.yy H:mm", + "shortDate": "dd.MM.yy", "shortTime": "H:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_smn-fi.js b/public/app/bower_components/angular-i18n/angular-locale_smn-fi.js new file mode 100644 index 00000000..ad729bfd --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_smn-fi.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "pasepeeivi", + "vuossaarg\u00e2", + "majebaarg\u00e2", + "koskoho", + "tuor\u00e2stuv", + "v\u00e1stuppeeivi", + "l\u00e1vurduv" + ], + "MONTH": [ + "M01", + "M02", + "M03", + "M04", + "M05", + "M06", + "M07", + "M08", + "M09", + "M10", + "M11", + "M12" + ], + "SHORTDAY": [ + "pa", + "vu", + "ma", + "ko", + "tu", + "v\u00e1", + "l\u00e1" + ], + "SHORTMONTH": [ + "M01", + "M02", + "M03", + "M04", + "M05", + "M06", + "M07", + "M08", + "M09", + "M10", + "M11", + "M12" + ], + "fullDate": "y MMMM d, EEEE", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", + "mediumTime": "HH:mm:ss", + "short": "y-MM-dd HH:mm", + "shortDate": "y-MM-dd", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "smn-fi", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_smn.js b/public/app/bower_components/angular-i18n/angular-locale_smn.js new file mode 100644 index 00000000..4c5a8b6a --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_smn.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "pasepeeivi", + "vuossaarg\u00e2", + "majebaarg\u00e2", + "koskoho", + "tuor\u00e2stuv", + "v\u00e1stuppeeivi", + "l\u00e1vurduv" + ], + "MONTH": [ + "M01", + "M02", + "M03", + "M04", + "M05", + "M06", + "M07", + "M08", + "M09", + "M10", + "M11", + "M12" + ], + "SHORTDAY": [ + "pa", + "vu", + "ma", + "ko", + "tu", + "v\u00e1", + "l\u00e1" + ], + "SHORTMONTH": [ + "M01", + "M02", + "M03", + "M04", + "M05", + "M06", + "M07", + "M08", + "M09", + "M10", + "M11", + "M12" + ], + "fullDate": "y MMMM d, EEEE", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", + "mediumTime": "HH:mm:ss", + "short": "y-MM-dd HH:mm", + "shortDate": "y-MM-dd", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "smn", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_sq-al.js b/public/app/bower_components/angular-i18n/angular-locale_sq-al.js index 80a9aa86..bf9f9269 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sq-al.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sq-al.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "N\u00ebn", "Dhj" ], - "fullDate": "EEEE, dd MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.yy HH:mm", + "shortDate": "d.M.yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sq-mk.js b/public/app/bower_components/angular-i18n/angular-locale_sq-mk.js index cbb35081..c7fcbf9a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sq-mk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sq-mk.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "N\u00ebn", "Dhj" ], - "fullDate": "EEEE, dd MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.yy HH:mm", + "shortDate": "d.M.yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sq-xk.js b/public/app/bower_components/angular-i18n/angular-locale_sq-xk.js index 94c225a8..8ffa642b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sq-xk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sq-xk.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "N\u00ebn", "Dhj" ], - "fullDate": "EEEE, dd MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.yy HH:mm", + "shortDate": "d.M.yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sq.js b/public/app/bower_components/angular-i18n/angular-locale_sq.js index 6b2289d9..6b458cd4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sq.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sq.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "N\u00ebn", "Dhj" ], - "fullDate": "EEEE, dd MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.yy HH:mm", + "shortDate": "d.M.yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-ba.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-ba.js index 5e4b3839..d9f3e6b9 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-ba.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-ba.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-me.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-me.js index 1aa82b41..dcdf4610 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-me.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-me.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-rs.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-rs.js index eea3ce78..72437869 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-rs.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-rs.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-xk.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-xk.js index 4ac313b4..c05b1d27 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-xk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-xk.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl.js index da4598bb..c20e3cdb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-ba.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-ba.js index 187875c4..81c67a55 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-ba.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-ba.js @@ -23,13 +23,13 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", "ponedeljak", "utorak", - "sreda", + "srijeda", "\u010detvrtak", "petak", "subota" @@ -40,8 +40,8 @@ $provide.value("$locale", { "mart", "april", "maj", - "jun", - "jul", + "juni", + "juli", "avgust", "septembar", "oktobar", @@ -52,7 +52,7 @@ $provide.value("$locale", { "ned", "pon", "uto", - "sre", + "sri", "\u010det", "pet", "sub" @@ -73,12 +73,12 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y.", "longDate": "dd. MMMM y.", - "medium": "dd.MM.y. HH.mm.ss", - "mediumDate": "dd.MM.y.", - "mediumTime": "HH.mm.ss", - "short": "d.M.yy. HH.mm", - "shortDate": "d.M.yy.", - "shortTime": "HH.mm" + "medium": "y-MM-dd HH:mm:ss", + "mediumDate": "y-MM-dd", + "mediumTime": "HH:mm:ss", + "short": "yy-MM-dd HH:mm", + "shortDate": "yy-MM-dd", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "KM", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-me.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-me.js index ee687b5e..ab5e884f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-me.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-me.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", @@ -72,7 +72,7 @@ $provide.value("$locale", { "dec" ], "fullDate": "EEEE, dd. MMMM y.", - "longDate": "d.MM.y.", + "longDate": "dd. MMMM y.", "medium": "dd.MM.y. HH.mm.ss", "mediumDate": "dd.MM.y.", "mediumTime": "HH.mm.ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-rs.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-rs.js index c43501a8..578782f1 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-rs.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-rs.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-xk.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-xk.js index 1815c87a..ca7ae8e4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-xk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-xk.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn.js index affadb13..8de1f715 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr.js b/public/app/bower_components/angular-i18n/angular-locale_sr.js index b68a366c..6e4f5e5f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sv-ax.js b/public/app/bower_components/angular-i18n/angular-locale_sv-ax.js index 26eeb5e4..1296a304 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sv-ax.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sv-ax.js @@ -58,18 +58,18 @@ $provide.value("$locale", { "l\u00f6r" ], "SHORTMONTH": [ - "jan", - "feb", - "mar", - "apr", + "jan.", + "feb.", + "mars", + "apr.", "maj", - "jun", - "jul", - "aug", - "sep", - "okt", - "nov", - "dec" + "juni", + "juli", + "aug.", + "sep.", + "okt.", + "nov.", + "dec." ], "fullDate": "EEEE d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sv-fi.js b/public/app/bower_components/angular-i18n/angular-locale_sv-fi.js index a21ca31b..7ccf4d6d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sv-fi.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sv-fi.js @@ -58,18 +58,18 @@ $provide.value("$locale", { "l\u00f6r" ], "SHORTMONTH": [ - "jan", - "feb", - "mar", - "apr", + "jan.", + "feb.", + "mars", + "apr.", "maj", - "jun", - "jul", - "aug", - "sep", - "okt", - "nov", - "dec" + "juni", + "juli", + "aug.", + "sep.", + "okt.", + "nov.", + "dec." ], "fullDate": "EEEE'en' 'den' d:'e' MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sv-se.js b/public/app/bower_components/angular-i18n/angular-locale_sv-se.js index 7cc24fb9..52ef0d52 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sv-se.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sv-se.js @@ -58,18 +58,18 @@ $provide.value("$locale", { "l\u00f6r" ], "SHORTMONTH": [ - "jan", - "feb", - "mar", - "apr", + "jan.", + "feb.", + "mars", + "apr.", "maj", - "jun", - "jul", - "aug", - "sep", - "okt", - "nov", - "dec" + "juni", + "juli", + "aug.", + "sep.", + "okt.", + "nov.", + "dec." ], "fullDate": "EEEE d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sv.js b/public/app/bower_components/angular-i18n/angular-locale_sv.js index f49263c8..2943207f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sv.js @@ -58,18 +58,18 @@ $provide.value("$locale", { "l\u00f6r" ], "SHORTMONTH": [ - "jan", - "feb", - "mar", - "apr", + "jan.", + "feb.", + "mars", + "apr.", "maj", - "jun", - "jul", - "aug", - "sep", - "okt", - "nov", - "dec" + "juni", + "juli", + "aug.", + "sep.", + "okt.", + "nov.", + "dec." ], "fullDate": "EEEE d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_te-in.js b/public/app/bower_components/angular-i18n/angular-locale_te-in.js index e730e9cd..eedaa20d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_te-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_te-in.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "[AM]", + "[PM]" ], "DAY": [ "\u0c06\u0c26\u0c3f\u0c35\u0c3e\u0c30\u0c02", @@ -20,7 +20,7 @@ $provide.value("$locale", { "\u0c1c\u0c28\u0c35\u0c30\u0c3f", "\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f", "\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f", - "\u0c0e\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d", + "\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d", "\u0c2e\u0c47", "\u0c1c\u0c42\u0c28\u0c4d", "\u0c1c\u0c41\u0c32\u0c48", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u0c28\u0c35\u0c02", "\u0c21\u0c3f\u0c38\u0c46\u0c02" ], - "fullDate": "d MMMM y EEEE", - "longDate": "d MMMM y", - "medium": "d MMM y h:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "d, MMMM y, EEEE", + "longDate": "d MMMM, y", + "medium": "d MMM, y h:mm:ss a", + "mediumDate": "d MMM, y", "mediumTime": "h:mm:ss a", "short": "dd-MM-yy h:mm a", "shortDate": "dd-MM-yy", @@ -68,7 +68,7 @@ $provide.value("$locale", { "GROUP_SEP": ",", "PATTERNS": [ { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 3, "minFrac": 0, @@ -79,7 +79,7 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 2, "minFrac": 2, diff --git a/public/app/bower_components/angular-i18n/angular-locale_te.js b/public/app/bower_components/angular-i18n/angular-locale_te.js index 33ae47e7..5eb8ffd0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_te.js +++ b/public/app/bower_components/angular-i18n/angular-locale_te.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "[AM]", + "[PM]" ], "DAY": [ "\u0c06\u0c26\u0c3f\u0c35\u0c3e\u0c30\u0c02", @@ -20,7 +20,7 @@ $provide.value("$locale", { "\u0c1c\u0c28\u0c35\u0c30\u0c3f", "\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f", "\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f", - "\u0c0e\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d", + "\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d", "\u0c2e\u0c47", "\u0c1c\u0c42\u0c28\u0c4d", "\u0c1c\u0c41\u0c32\u0c48", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u0c28\u0c35\u0c02", "\u0c21\u0c3f\u0c38\u0c46\u0c02" ], - "fullDate": "d MMMM y EEEE", - "longDate": "d MMMM y", - "medium": "d MMM y h:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "d, MMMM y, EEEE", + "longDate": "d MMMM, y", + "medium": "d MMM, y h:mm:ss a", + "mediumDate": "d MMM, y", "mediumTime": "h:mm:ss a", "short": "dd-MM-yy h:mm a", "shortDate": "dd-MM-yy", @@ -68,7 +68,7 @@ $provide.value("$locale", { "GROUP_SEP": ",", "PATTERNS": [ { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 3, "minFrac": 0, @@ -79,7 +79,7 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 2, "minFrac": 2, diff --git a/public/app/bower_components/angular-i18n/angular-locale_teo-ke.js b/public/app/bower_components/angular-i18n/angular-locale_teo-ke.js index 4dd4a5c4..155d0080 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_teo-ke.js +++ b/public/app/bower_components/angular-i18n/angular-locale_teo-ke.js @@ -30,17 +30,17 @@ $provide.value("$locale", { "Nakaebarasa", "Nakaare", "Nakauni", - "Nakaung'on", + "Nakaung\u2019on", "Nakakany", "Nakasabiti" ], "MONTH": [ "Orara", "Omuk", - "Okwamg'", - "Odung'el", + "Okwamg\u2019", + "Odung\u2019el", "Omaruk", - "Omodok'king'ol", + "Omodok\u2019king\u2019ol", "Ojola", "Opedel", "Osokosokoma", diff --git a/public/app/bower_components/angular-i18n/angular-locale_teo-ug.js b/public/app/bower_components/angular-i18n/angular-locale_teo-ug.js index b8ddd48d..665601eb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_teo-ug.js +++ b/public/app/bower_components/angular-i18n/angular-locale_teo-ug.js @@ -30,17 +30,17 @@ $provide.value("$locale", { "Nakaebarasa", "Nakaare", "Nakauni", - "Nakaung'on", + "Nakaung\u2019on", "Nakakany", "Nakasabiti" ], "MONTH": [ "Orara", "Omuk", - "Okwamg'", - "Odung'el", + "Okwamg\u2019", + "Odung\u2019el", "Omaruk", - "Omodok'king'ol", + "Omodok\u2019king\u2019ol", "Ojola", "Opedel", "Osokosokoma", diff --git a/public/app/bower_components/angular-i18n/angular-locale_teo.js b/public/app/bower_components/angular-i18n/angular-locale_teo.js index b3c5c997..9ebbf245 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_teo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_teo.js @@ -30,17 +30,17 @@ $provide.value("$locale", { "Nakaebarasa", "Nakaare", "Nakauni", - "Nakaung'on", + "Nakaung\u2019on", "Nakakany", "Nakasabiti" ], "MONTH": [ "Orara", "Omuk", - "Okwamg'", - "Odung'el", + "Okwamg\u2019", + "Odung\u2019el", "Omaruk", - "Omodok'king'ol", + "Omodok\u2019king\u2019ol", "Ojola", "Opedel", "Osokosokoma", diff --git a/public/app/bower_components/angular-i18n/angular-locale_th-th.js b/public/app/bower_components/angular-i18n/angular-locale_th-th.js index 3df817a4..7ff104e3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_th-th.js +++ b/public/app/bower_components/angular-i18n/angular-locale_th-th.js @@ -54,7 +54,7 @@ $provide.value("$locale", { "\u0e18.\u0e04." ], "fullDate": "EEEE\u0e17\u0e35\u0e48 d MMMM G y", - "longDate": "d MMMM y", + "longDate": "d MMMM G y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_th.js b/public/app/bower_components/angular-i18n/angular-locale_th.js index 34acd0a9..aa9e4f5e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_th.js +++ b/public/app/bower_components/angular-i18n/angular-locale_th.js @@ -54,7 +54,7 @@ $provide.value("$locale", { "\u0e18.\u0e04." ], "fullDate": "EEEE\u0e17\u0e35\u0e48 d MMMM G y", - "longDate": "d MMMM y", + "longDate": "d MMMM G y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_tn-bw.js b/public/app/bower_components/angular-i18n/angular-locale_tn-bw.js index e14e794b..1146f725 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_tn-bw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_tn-bw.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "P", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_tn-za.js b/public/app/bower_components/angular-i18n/angular-locale_tn-za.js index 5fdeefd4..01b931ba 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_tn-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_tn-za.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "R", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_tn.js b/public/app/bower_components/angular-i18n/angular-locale_tn.js index b6c8c761..6b6161d3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_tn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_tn.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "R", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ts-za.js b/public/app/bower_components/angular-i18n/angular-locale_ts-za.js index cafec73b..403e9540 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ts-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ts-za.js @@ -46,7 +46,7 @@ $provide.value("$locale", { "Ndzhati", "Nhlangula", "Hukuri", - "N'wendzamhala" + "N\u2019wendzamhala" ], "SHORTDAY": [ "Son", @@ -69,7 +69,7 @@ $provide.value("$locale", { "Ndz", "Nhl", "Huk", - "N'w" + "N\u2019w" ], "fullDate": "y MMMM d, EEEE", "longDate": "y MMMM d", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ts.js b/public/app/bower_components/angular-i18n/angular-locale_ts.js index 38bb944f..8f3004d7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ts.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ts.js @@ -46,7 +46,7 @@ $provide.value("$locale", { "Ndzhati", "Nhlangula", "Hukuri", - "N'wendzamhala" + "N\u2019wendzamhala" ], "SHORTDAY": [ "Son", @@ -69,7 +69,7 @@ $provide.value("$locale", { "Ndz", "Nhl", "Huk", - "N'w" + "N\u2019w" ], "fullDate": "y MMMM d, EEEE", "longDate": "y MMMM d", diff --git a/public/app/bower_components/angular-i18n/angular-locale_uk-ua.js b/public/app/bower_components/angular-i18n/angular-locale_uk-ua.js index a75ae089..8e7d535b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uk-ua.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uk-ua.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM y '\u0440'.", "longDate": "d MMMM y '\u0440'.", - "medium": "d MMM y HH:mm:ss", - "mediumDate": "d MMM y", + "medium": "d MMM y '\u0440'. HH:mm:ss", + "mediumDate": "d MMM y '\u0440'.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_uk.js b/public/app/bower_components/angular-i18n/angular-locale_uk.js index f8f9b55a..28d5496f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uk.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM y '\u0440'.", "longDate": "d MMMM y '\u0440'.", - "medium": "d MMM y HH:mm:ss", - "mediumDate": "d MMM y", + "medium": "d MMM y '\u0440'. HH:mm:ss", + "mediumDate": "d MMM y '\u0440'.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ur-pk.js b/public/app/bower_components/angular-i18n/angular-locale_ur-pk.js index 3bdebc5a..cd5fe199 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ur-pk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ur-pk.js @@ -97,15 +97,15 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "\u200e", - "posPre": "\u00a4", - "posSuf": "\u200e" + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_ur.js b/public/app/bower_components/angular-i18n/angular-locale_ur.js index 17039157..f578c953 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ur.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ur.js @@ -97,15 +97,15 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "\u200e", - "posPre": "\u00a4", - "posSuf": "\u200e" + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_uz-latn-uz.js b/public/app/bower_components/angular-i18n/angular-locale_uz-latn-uz.js index b71c7cd0..28fef942 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uz-latn-uz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uz-latn-uz.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "TO", + "TK" ], "DAY": [ "yakshanba", @@ -25,8 +25,8 @@ $provide.value("$locale", { "Iyun", "Iyul", "Avgust", - "Sentyabr", - "Oktyabr", + "Sentabr", + "Oktabr", "Noyabr", "Dekabr" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_uz-latn.js b/public/app/bower_components/angular-i18n/angular-locale_uz-latn.js index 43572cbf..bc73e92b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uz-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uz-latn.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "TO", + "TK" ], "DAY": [ "yakshanba", @@ -25,8 +25,8 @@ $provide.value("$locale", { "Iyun", "Iyul", "Avgust", - "Sentyabr", - "Oktyabr", + "Sentabr", + "Oktabr", "Noyabr", "Dekabr" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_uz.js b/public/app/bower_components/angular-i18n/angular-locale_uz.js index c2bd79d8..2e57664c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uz.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "TO", + "TK" ], "DAY": [ "yakshanba", @@ -25,8 +25,8 @@ $provide.value("$locale", { "Iyun", "Iyul", "Avgust", - "Sentyabr", - "Oktyabr", + "Sentabr", + "Oktabr", "Noyabr", "Dekabr" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_yi-001.js b/public/app/bower_components/angular-i18n/angular-locale_yi-001.js new file mode 100644 index 00000000..22e8df73 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_yi-001.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "\u05e4\u05d0\u05e8\u05de\u05d9\u05d8\u05d0\u05d2", + "\u05e0\u05d0\u05db\u05de\u05d9\u05d8\u05d0\u05d2" + ], + "DAY": [ + "\u05d6\u05d5\u05e0\u05d8\u05d9\u05e7", + "\u05de\u05d0\u05b8\u05e0\u05d8\u05d9\u05e7", + "\u05d3\u05d9\u05e0\u05e1\u05d8\u05d9\u05e7", + "\u05de\u05d9\u05d8\u05d5\u05d5\u05d0\u05da", + "\u05d3\u05d0\u05e0\u05e2\u05e8\u05e9\u05d8\u05d9\u05e7", + "\u05e4\u05bf\u05e8\u05f2\u05b7\u05d8\u05d9\u05e7", + "\u05e9\u05d1\u05ea" + ], + "MONTH": [ + "\u05d9\u05d0\u05b7\u05e0\u05d5\u05d0\u05b7\u05e8", + "\u05e4\u05bf\u05e2\u05d1\u05e8\u05d5\u05d0\u05b7\u05e8", + "\u05de\u05e2\u05e8\u05e5", + "\u05d0\u05b7\u05e4\u05bc\u05e8\u05d9\u05dc", + "\u05de\u05d9\u05d9", + "\u05d9\u05d5\u05e0\u05d9", + "\u05d9\u05d5\u05dc\u05d9", + "\u05d0\u05d5\u05d9\u05d2\u05d5\u05e1\u05d8", + "\u05e1\u05e2\u05e4\u05bc\u05d8\u05e2\u05de\u05d1\u05e2\u05e8", + "\u05d0\u05e7\u05d8\u05d0\u05d1\u05e2\u05e8", + "\u05e0\u05d0\u05d5\u05d5\u05e2\u05de\u05d1\u05e2\u05e8", + "\u05d3\u05e2\u05e6\u05e2\u05de\u05d1\u05e2\u05e8" + ], + "SHORTDAY": [ + "\u05d6\u05d5\u05e0\u05d8\u05d9\u05e7", + "\u05de\u05d0\u05b8\u05e0\u05d8\u05d9\u05e7", + "\u05d3\u05d9\u05e0\u05e1\u05d8\u05d9\u05e7", + "\u05de\u05d9\u05d8\u05d5\u05d5\u05d0\u05da", + "\u05d3\u05d0\u05e0\u05e2\u05e8\u05e9\u05d8\u05d9\u05e7", + "\u05e4\u05bf\u05e8\u05f2\u05b7\u05d8\u05d9\u05e7", + "\u05e9\u05d1\u05ea" + ], + "SHORTMONTH": [ + "\u05d9\u05d0\u05b7\u05e0\u05d5\u05d0\u05b7\u05e8", + "\u05e4\u05bf\u05e2\u05d1\u05e8\u05d5\u05d0\u05b7\u05e8", + "\u05de\u05e2\u05e8\u05e5", + "\u05d0\u05b7\u05e4\u05bc\u05e8\u05d9\u05dc", + "\u05de\u05d9\u05d9", + "\u05d9\u05d5\u05e0\u05d9", + "\u05d9\u05d5\u05dc\u05d9", + "\u05d0\u05d5\u05d9\u05d2\u05d5\u05e1\u05d8", + "\u05e1\u05e2\u05e4\u05bc\u05d8\u05e2\u05de\u05d1\u05e2\u05e8", + "\u05d0\u05e7\u05d8\u05d0\u05d1\u05e2\u05e8", + "\u05e0\u05d0\u05d5\u05d5\u05e2\u05de\u05d1\u05e2\u05e8", + "\u05d3\u05e2\u05e6\u05e2\u05de\u05d1\u05e2\u05e8" + ], + "fullDate": "EEEE, d\u05d8\u05df MMMM y", + "longDate": "d\u05d8\u05df MMMM y", + "medium": "d\u05d8\u05df MMM y HH:mm:ss", + "mediumDate": "d\u05d8\u05df MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "$", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "yi-001", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_yi.js b/public/app/bower_components/angular-i18n/angular-locale_yi.js new file mode 100644 index 00000000..6598e95b --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_yi.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "\u05e4\u05d0\u05e8\u05de\u05d9\u05d8\u05d0\u05d2", + "\u05e0\u05d0\u05db\u05de\u05d9\u05d8\u05d0\u05d2" + ], + "DAY": [ + "\u05d6\u05d5\u05e0\u05d8\u05d9\u05e7", + "\u05de\u05d0\u05b8\u05e0\u05d8\u05d9\u05e7", + "\u05d3\u05d9\u05e0\u05e1\u05d8\u05d9\u05e7", + "\u05de\u05d9\u05d8\u05d5\u05d5\u05d0\u05da", + "\u05d3\u05d0\u05e0\u05e2\u05e8\u05e9\u05d8\u05d9\u05e7", + "\u05e4\u05bf\u05e8\u05f2\u05b7\u05d8\u05d9\u05e7", + "\u05e9\u05d1\u05ea" + ], + "MONTH": [ + "\u05d9\u05d0\u05b7\u05e0\u05d5\u05d0\u05b7\u05e8", + "\u05e4\u05bf\u05e2\u05d1\u05e8\u05d5\u05d0\u05b7\u05e8", + "\u05de\u05e2\u05e8\u05e5", + "\u05d0\u05b7\u05e4\u05bc\u05e8\u05d9\u05dc", + "\u05de\u05d9\u05d9", + "\u05d9\u05d5\u05e0\u05d9", + "\u05d9\u05d5\u05dc\u05d9", + "\u05d0\u05d5\u05d9\u05d2\u05d5\u05e1\u05d8", + "\u05e1\u05e2\u05e4\u05bc\u05d8\u05e2\u05de\u05d1\u05e2\u05e8", + "\u05d0\u05e7\u05d8\u05d0\u05d1\u05e2\u05e8", + "\u05e0\u05d0\u05d5\u05d5\u05e2\u05de\u05d1\u05e2\u05e8", + "\u05d3\u05e2\u05e6\u05e2\u05de\u05d1\u05e2\u05e8" + ], + "SHORTDAY": [ + "\u05d6\u05d5\u05e0\u05d8\u05d9\u05e7", + "\u05de\u05d0\u05b8\u05e0\u05d8\u05d9\u05e7", + "\u05d3\u05d9\u05e0\u05e1\u05d8\u05d9\u05e7", + "\u05de\u05d9\u05d8\u05d5\u05d5\u05d0\u05da", + "\u05d3\u05d0\u05e0\u05e2\u05e8\u05e9\u05d8\u05d9\u05e7", + "\u05e4\u05bf\u05e8\u05f2\u05b7\u05d8\u05d9\u05e7", + "\u05e9\u05d1\u05ea" + ], + "SHORTMONTH": [ + "\u05d9\u05d0\u05b7\u05e0\u05d5\u05d0\u05b7\u05e8", + "\u05e4\u05bf\u05e2\u05d1\u05e8\u05d5\u05d0\u05b7\u05e8", + "\u05de\u05e2\u05e8\u05e5", + "\u05d0\u05b7\u05e4\u05bc\u05e8\u05d9\u05dc", + "\u05de\u05d9\u05d9", + "\u05d9\u05d5\u05e0\u05d9", + "\u05d9\u05d5\u05dc\u05d9", + "\u05d0\u05d5\u05d9\u05d2\u05d5\u05e1\u05d8", + "\u05e1\u05e2\u05e4\u05bc\u05d8\u05e2\u05de\u05d1\u05e2\u05e8", + "\u05d0\u05e7\u05d8\u05d0\u05d1\u05e2\u05e8", + "\u05e0\u05d0\u05d5\u05d5\u05e2\u05de\u05d1\u05e2\u05e8", + "\u05d3\u05e2\u05e6\u05e2\u05de\u05d1\u05e2\u05e8" + ], + "fullDate": "EEEE, d\u05d8\u05df MMMM y", + "longDate": "d\u05d8\u05df MMMM y", + "medium": "d\u05d8\u05df MMM y HH:mm:ss", + "mediumDate": "d\u05d8\u05df MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "$", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "yi", + "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); if (i == 1 && vf.v == 0) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_zh-hant-tw.js b/public/app/bower_components/angular-i18n/angular-locale_zh-hant-tw.js index c1582ec7..f64f1d00 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zh-hant-tw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zh-hant-tw.js @@ -53,7 +53,7 @@ $provide.value("$locale", { "11\u6708", "12\u6708" ], - "fullDate": "y\u5e74M\u6708d\u65e5EEEE", + "fullDate": "y\u5e74M\u6708d\u65e5 EEEE", "longDate": "y\u5e74M\u6708d\u65e5", "medium": "y\u5e74M\u6708d\u65e5 ah:mm:ss", "mediumDate": "y\u5e74M\u6708d\u65e5", diff --git a/public/app/bower_components/angular-i18n/angular-locale_zh-hant.js b/public/app/bower_components/angular-i18n/angular-locale_zh-hant.js index 31db6747..cf8957c8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zh-hant.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zh-hant.js @@ -53,7 +53,7 @@ $provide.value("$locale", { "11\u6708", "12\u6708" ], - "fullDate": "y\u5e74M\u6708d\u65e5EEEE", + "fullDate": "y\u5e74M\u6708d\u65e5 EEEE", "longDate": "y\u5e74M\u6708d\u65e5", "medium": "y\u5e74M\u6708d\u65e5 ah:mm:ss", "mediumDate": "y\u5e74M\u6708d\u65e5", diff --git a/public/app/bower_components/angular-i18n/angular-locale_zh-tw.js b/public/app/bower_components/angular-i18n/angular-locale_zh-tw.js index d9ba29be..d9eb9e12 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zh-tw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zh-tw.js @@ -53,7 +53,7 @@ $provide.value("$locale", { "11\u6708", "12\u6708" ], - "fullDate": "y\u5e74M\u6708d\u65e5EEEE", + "fullDate": "y\u5e74M\u6708d\u65e5 EEEE", "longDate": "y\u5e74M\u6708d\u65e5", "medium": "y\u5e74M\u6708d\u65e5 ah:mm:ss", "mediumDate": "y\u5e74M\u6708d\u65e5", diff --git a/public/app/bower_components/angular-i18n/angular-locale_zu-za.js b/public/app/bower_components/angular-i18n/angular-locale_zu-za.js index 36f2d58b..6d76b395 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zu-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zu-za.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "Nov", "Dis" ], - "fullDate": "EEEE dd MMMM y", - "longDate": "d MMMM y", - "medium": "d MMM y h:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "EEEE, MMMM d, y", + "longDate": "MMMM d, y", + "medium": "MMM d, y h:mm:ss a", + "mediumDate": "MMM d, y", "mediumTime": "h:mm:ss a", - "short": "y-MM-dd h:mm a", - "shortDate": "y-MM-dd", + "short": "M/d/yy h:mm a", + "shortDate": "M/d/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_zu.js b/public/app/bower_components/angular-i18n/angular-locale_zu.js index 0938a02a..1ad6b029 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zu.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zu.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "Nov", "Dis" ], - "fullDate": "EEEE dd MMMM y", - "longDate": "d MMMM y", - "medium": "d MMM y h:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "EEEE, MMMM d, y", + "longDate": "MMMM d, y", + "medium": "MMM d, y h:mm:ss a", + "mediumDate": "MMM d, y", "mediumTime": "h:mm:ss a", - "short": "y-MM-dd h:mm a", - "shortDate": "y-MM-dd", + "short": "M/d/yy h:mm a", + "shortDate": "M/d/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/bower.json b/public/app/bower_components/angular-i18n/bower.json index 8fec9129..e054c3fb 100644 --- a/public/app/bower_components/angular-i18n/bower.json +++ b/public/app/bower_components/angular-i18n/bower.json @@ -1,6 +1,6 @@ { "name": "angular-i18n", - "version": "1.3.1", + "version": "1.3.12", "ignore": [ "**/.*", "node_modules", diff --git a/public/app/bower_components/angular-i18n/package.json b/public/app/bower_components/angular-i18n/package.json index e57d0d32..20807f0b 100644 --- a/public/app/bower_components/angular-i18n/package.json +++ b/public/app/bower_components/angular-i18n/package.json @@ -1,6 +1,6 @@ { "name": "angular-i18n", - "version": "1.3.1", + "version": "1.3.12", "description": "AngularJS module for internationalization", "main": "angular-i18n.js", "scripts": { diff --git a/public/app/bower_components/angular-loader/.bower.json b/public/app/bower_components/angular-loader/.bower.json index aff09fae..53cce376 100644 --- a/public/app/bower_components/angular-loader/.bower.json +++ b/public/app/bower_components/angular-loader/.bower.json @@ -1,17 +1,17 @@ { "name": "angular-loader", - "version": "1.3.1", + "version": "1.3.12", "main": "./angular-loader.js", "ignore": [], "dependencies": { - "angular": "1.3.1" + "angular": "1.3.12" }, "homepage": "https://github.com/angular/bower-angular-loader", - "_release": "1.3.1", + "_release": "1.3.12", "_resolution": { "type": "version", - "tag": "v1.3.1", - "commit": "0e6defd9cd018dae882a33bd9b9a2c0e8c94719d" + "tag": "v1.3.12", + "commit": "447168dec97596a75e65146ccf46189f1fcb337a" }, "_source": "git://github.com/angular/bower-angular-loader.git", "_target": "~1.3.1", diff --git a/public/app/bower_components/angular-loader/angular-loader.js b/public/app/bower_components/angular-loader/angular-loader.js index 7fddeaeb..602ff10e 100644 --- a/public/app/bower_components/angular-loader/angular-loader.js +++ b/public/app/bower_components/angular-loader/angular-loader.js @@ -1,5 +1,5 @@ /** - * @license AngularJS v1.3.1 + * @license AngularJS v1.3.12 * (c) 2010-2014 Google, Inc. http://angularjs.org * License: MIT */ @@ -43,40 +43,23 @@ function minErr(module, ErrorConstructor) { prefix = '[' + (module ? module + ':' : '') + code + '] ', template = arguments[1], templateArgs = arguments, - stringify = function(obj) { - if (typeof obj === 'function') { - return obj.toString().replace(/ \{[\s\S]*$/, ''); - } else if (typeof obj === 'undefined') { - return 'undefined'; - } else if (typeof obj !== 'string') { - return JSON.stringify(obj); - } - return obj; - }, + message, i; message = prefix + template.replace(/\{\d+\}/g, function(match) { var index = +match.slice(1, -1), arg; if (index + 2 < templateArgs.length) { - arg = templateArgs[index + 2]; - if (typeof arg === 'function') { - return arg.toString().replace(/ ?\{[\s\S]*$/, ''); - } else if (typeof arg === 'undefined') { - return 'undefined'; - } else if (typeof arg !== 'string') { - return toJson(arg); - } - return arg; + return toDebugString(templateArgs[index + 2]); } return match; }); - message = message + '\nhttp://errors.angularjs.org/1.3.1/' + + message = message + '\nhttp://errors.angularjs.org/1.3.12/' + (module ? module + '/' : '') + code; for (i = 2; i < arguments.length; i++) { - message = message + (i == 2 ? '?' : '&') + 'p' + (i-2) + '=' + - encodeURIComponent(stringify(arguments[i])); + message = message + (i == 2 ? '?' : '&') + 'p' + (i - 2) + '=' + + encodeURIComponent(toDebugString(arguments[i])); } return new ErrorConstructor(message); }; diff --git a/public/app/bower_components/angular-loader/angular-loader.min.js b/public/app/bower_components/angular-loader/angular-loader.min.js index 9c2248e8..c0478de4 100644 --- a/public/app/bower_components/angular-loader/angular-loader.min.js +++ b/public/app/bower_components/angular-loader/angular-loader.min.js @@ -1,9 +1,9 @@ /* - AngularJS v1.3.1 + AngularJS v1.3.12 (c) 2010-2014 Google, Inc. http://angularjs.org License: MIT */ -(function(){'use strict';function d(b){return function(){var c=arguments[0],e;e="["+(b?b+":":"")+c+"] http://errors.angularjs.org/1.3.1/"+(b?b+"/":"")+c;for(c=1;c Please note that using Angular Material requires **Angular 1.3.x** or higher. - -Below is a sample set of commands: +To install and use the Angular Material distribution files, change to your project's root directory. ```bash -cd yourProjectDir +# To get the latest stable version, use Bower from the command line. +bower install angular-material + +# To get the most recent, last committed-to-master version use: +bower install angular-material#master + +# To save the bower settings for future use: bower install angular-material --save + +# Later, you can use easily update with: +bower update ``` -### Usage +> Please note that using Angular Material requires **Angular 1.3.x** or higher. + + +### Using the Bower-Material Library Now that you have installed [locally] the Angular libraries, simply include the scripts and stylesheet in your main HTML file: @@ -23,7 +33,6 @@ Now that you have installed [locally] the Angular libraries, simply include the - @@ -48,3 +57,60 @@ Now that you have installed [locally] the Angular libraries, simply include the ``` + +#### CDN + +CDN versions of Angular Material are now available at [Google Hosted Libraries](https://developers.google.com/speed/libraries/devguide#angularmaterial). + +With the Google CDN, you will not need to download local copies of the distribution files. Instead simply reference the CDN urls to easily use those remote library files. This is especially useful when using online tools such as CodePen, Plunkr, or jsFiddle. + +```html + + + + + + + + + + + + + + + + + + +``` + +> Note that the above sample references the 0.6.1 CDN release. Your version will change based on the latest stable release version. + +Developers seeking the latest, most-current build versions can use [RawGit.com](//rawgit.com) to +pull directly from the distribution GitHub +[Bower-Material](https://github.com/angular/bower-material) repository: + +```html + + + + + + + + + + + + + + + + + + +``` + +> Please note that the above RawGit access is intended **ONLY** for development purposes or sharing + low-traffic, temporary examples or demos with small numbers of people. diff --git a/public/app/bower_components/angular-material/angular-material.css b/public/app/bower_components/angular-material/angular-material.css index 03fa4b95..5ae0dc18 100644 --- a/public/app/bower_components/angular-material/angular-material.css +++ b/public/app/bower_components/angular-material/angular-material.css @@ -2,7 +2,7 @@ * Angular Material Design * https://github.com/angular/material * @license MIT - * v0.5.0 + * v0.7.1 */ *, *:before, *:after { box-sizing: border-box; } @@ -12,8 +12,8 @@ html, body { height: 100%; - color: rgba(0, 0, 0, 0.73); - background: #ffffff; + color: rgba(0, 0, 0, 0.87); + background: white; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -webkit-touch-callout: none; -webkit-text-size-adjust: 100%; @@ -31,7 +31,7 @@ html, body { font-weight: bold; } button, select, html, textarea, input { - font-family: 'RobotoDraft', 'Helvetica Neue', Helvetica, Arial; } + font-family: RobotoDraft, Roboto, 'Helvetica Neue', sans-serif; } body { margin: 0; @@ -42,7 +42,7 @@ body { padding: 10px; } button { - font-family: 'RobotoDraft', 'Helvetica Neue', Helvetica, Arial; } + font-family: RobotoDraft, Roboto, 'Helvetica Neue', sans-serif; } a { background: transparent; @@ -98,54 +98,6 @@ input[type="search"] { input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; } -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 100; - src: local('RobotoDraft Thin'), local('RobotoDraft-Thin'), url(//fonts.gstatic.com/s/robotodraft/v1/hope9NW9iJ5hh8P5PM_EAyeJLMOzE6CCkidNEpZOseY.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 300; - src: local('RobotoDraft Light'), local('RobotoDraft-Light'), url(//fonts.gstatic.com/s/robotodraft/v1/u0_CMoUf3y3-4Ss4ci-VwR_xHqYgAV9Bl_ZQbYUxnQU.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 400; - src: local('RobotoDraft'), local('RobotoDraft-Regular'), url(//fonts.gstatic.com/s/robotodraft/v1/0xES5Sl_v6oyT7dAKuoni4bN6UDyHWBl620a-IRfuBk.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 500; - src: local('RobotoDraft Medium'), local('RobotoDraft-Medium'), url(//fonts.gstatic.com/s/robotodraft/v1/u0_CMoUf3y3-4Ss4ci-VwSqHEX2q--o2so14pIEl08w.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 700; - src: local('RobotoDraft Bold'), local('RobotoDraft-Bold'), url(//fonts.gstatic.com/s/robotodraft/v1/u0_CMoUf3y3-4Ss4ci-VwTqR_3kx9_hJXbbyU8S6IN0.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 900; - src: local('RobotoDraft Black'), local('RobotoDraft-Black'), url(//fonts.gstatic.com/s/robotodraft/v1/u0_CMoUf3y3-4Ss4ci-VwUExzZ44ka2Lr5i-x5aWr0E.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: italic; - font-weight: 400; - src: local('RobotoDraft Italic'), local('RobotoDraft-Italic'), url(//fonts.gstatic.com/s/robotodraft/v1/er-TIW55l9KWsTS1x9bTftkZXW4sYc4BjuAIFc1SXII.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: italic; - font-weight: 700; - src: local('RobotoDraft Bold Italic'), local('RobotoDraft-BoldItalic'), url(//fonts.gstatic.com/s/robotodraft/v1/5SAvdU0uYYlH8OURAykt5wRV2F9RPTaqyJ4QibDfkzM.woff) format('woff'); } - .md-shadow { position: absolute; top: 0; @@ -155,38 +107,360 @@ input[type="search"] { border-radius: inherit; pointer-events: none; } -.md-shadow-bottom-z-1, md-button.md-raised:not([disabled]), md-button.md-fab { +.md-shadow-bottom-z-1, .md-button.md-raised:not([disabled]), .md-button.md-fab { box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26); } -.md-shadow-bottom-z-2, md-button.md-raised.focus:not([disabled]), md-button.md-raised:not([disabled]):hover, md-button.md-fab.focus:not([disabled]), md-button.md-fab:not([disabled]):hover { +.md-shadow-bottom-z-2, .md-button.md-raised:not([disabled]):focus, .md-button.md-raised:not([disabled]):hover, .md-button.md-fab:not([disabled]):focus, .md-button.md-fab:not([disabled]):hover { box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.4); } .md-shadow-animated.md-shadow { transition: box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1); } +/* + * A container inside of a rippling element (eg a button), + * which contains all of the individual ripples + */ +.md-ripple-container { + pointer-events: none; + position: absolute; + overflow: hidden; + left: 0; + top: 0; + width: 100%; + height: 100%; + transition: all 0.55s cubic-bezier(0.25, 0.8, 0.25, 1); } + +.md-ripple { + position: absolute; + -webkit-transform: scale(0); + transform: scale(0); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + opacity: 0; + border-radius: 50%; } + .md-ripple.md-ripple-placed { + transition: left 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), top 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), margin 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), border 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), width 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), height 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), -webkit-transform 0.65s cubic-bezier(0.25, 0.8, 0.25, 1); + transition: left 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), top 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), margin 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), border 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), width 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), height 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), transform 0.65s cubic-bezier(0.25, 0.8, 0.25, 1); } + .md-ripple.md-ripple-scaled { + -webkit-transform: scale(1); + transform: scale(1); } + .md-ripple.md-ripple-active, .md-ripple.md-ripple-full, .md-ripple.md-ripple-visible { + opacity: 0.2; } + +md-tab > .md-ripple-container .md-ripple { + box-sizing: content-box; + background-color: transparent !important; + border-width: 0; + border-style: solid; + opacity: 0.2; + -webkit-transform: none !important; + transform: none !important; } + md-tab > .md-ripple-container .md-ripple.md-ripple-active, md-tab > .md-ripple-container .md-ripple.md-ripple-full, md-tab > .md-ripple-container .md-ripple.md-ripple-visible { + opacity: 0.2; } + +/* Sizes: + 0 <= size <= 600 Phone + 600 <= size <= 960 Tablet + 960 <= size <= 1200 Tablet-Landscape + 1200 <= size PC +*/ [layout] { box-sizing: border-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } -[layout=vertical] { +[layout=column] { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } -[layout-padding], [layout][layout-padding] > [flex] { +[layout=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } + +[layout-padding], [layout-padding] > [flex] { padding: 8px; } -[layout-padding] + [layout-padding] { - margin-top: -8px; - padding-top: 0; } +[layout-margin], [layout-margin] > [flex] { + margin: 8px; } + +[layout-wrap] { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } [layout-fill] { margin: 0; min-height: 100%; width: 100%; } +@-moz-document url-prefix() { + [layout-fill] { + margin: 0; + width: 100%; + min-height: auto; + height: inherit; } } + +[flex] { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; } + +[flex="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } + +[layout="row"] > [flex="0"] { + max-width: 0%; } + +[layout="column"] > [flex="0"] { + max-height: 0%; } + +[flex="5"] { + -webkit-flex: 0 0 5%; + -ms-flex: 0 0 5%; + flex: 0 0 5%; } + +[layout="row"] > [flex="5"] { + max-width: 5%; } + +[layout="column"] > [flex="5"] { + max-height: 5%; } + +[flex="10"] { + -webkit-flex: 0 0 10%; + -ms-flex: 0 0 10%; + flex: 0 0 10%; } + +[layout="row"] > [flex="10"] { + max-width: 10%; } + +[layout="column"] > [flex="10"] { + max-height: 10%; } + +[flex="15"] { + -webkit-flex: 0 0 15%; + -ms-flex: 0 0 15%; + flex: 0 0 15%; } + +[layout="row"] > [flex="15"] { + max-width: 15%; } + +[layout="column"] > [flex="15"] { + max-height: 15%; } + +[flex="20"] { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; } + +[layout="row"] > [flex="20"] { + max-width: 20%; } + +[layout="column"] > [flex="20"] { + max-height: 20%; } + +[flex="25"] { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; } + +[layout="row"] > [flex="25"] { + max-width: 25%; } + +[layout="column"] > [flex="25"] { + max-height: 25%; } + +[flex="30"] { + -webkit-flex: 0 0 30%; + -ms-flex: 0 0 30%; + flex: 0 0 30%; } + +[layout="row"] > [flex="30"] { + max-width: 30%; } + +[layout="column"] > [flex="30"] { + max-height: 30%; } + +[flex="35"] { + -webkit-flex: 0 0 35%; + -ms-flex: 0 0 35%; + flex: 0 0 35%; } + +[layout="row"] > [flex="35"] { + max-width: 35%; } + +[layout="column"] > [flex="35"] { + max-height: 35%; } + +[flex="40"] { + -webkit-flex: 0 0 40%; + -ms-flex: 0 0 40%; + flex: 0 0 40%; } + +[layout="row"] > [flex="40"] { + max-width: 40%; } + +[layout="column"] > [flex="40"] { + max-height: 40%; } + +[flex="45"] { + -webkit-flex: 0 0 45%; + -ms-flex: 0 0 45%; + flex: 0 0 45%; } + +[layout="row"] > [flex="45"] { + max-width: 45%; } + +[layout="column"] > [flex="45"] { + max-height: 45%; } + +[flex="50"] { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; } + +[layout="row"] > [flex="50"] { + max-width: 50%; } + +[layout="column"] > [flex="50"] { + max-height: 50%; } + +[flex="55"] { + -webkit-flex: 0 0 55%; + -ms-flex: 0 0 55%; + flex: 0 0 55%; } + +[layout="row"] > [flex="55"] { + max-width: 55%; } + +[layout="column"] > [flex="55"] { + max-height: 55%; } + +[flex="60"] { + -webkit-flex: 0 0 60%; + -ms-flex: 0 0 60%; + flex: 0 0 60%; } + +[layout="row"] > [flex="60"] { + max-width: 60%; } + +[layout="column"] > [flex="60"] { + max-height: 60%; } + +[flex="65"] { + -webkit-flex: 0 0 65%; + -ms-flex: 0 0 65%; + flex: 0 0 65%; } + +[layout="row"] > [flex="65"] { + max-width: 65%; } + +[layout="column"] > [flex="65"] { + max-height: 65%; } + +[flex="70"] { + -webkit-flex: 0 0 70%; + -ms-flex: 0 0 70%; + flex: 0 0 70%; } + +[layout="row"] > [flex="70"] { + max-width: 70%; } + +[layout="column"] > [flex="70"] { + max-height: 70%; } + +[flex="75"] { + -webkit-flex: 0 0 75%; + -ms-flex: 0 0 75%; + flex: 0 0 75%; } + +[layout="row"] > [flex="75"] { + max-width: 75%; } + +[layout="column"] > [flex="75"] { + max-height: 75%; } + +[flex="80"] { + -webkit-flex: 0 0 80%; + -ms-flex: 0 0 80%; + flex: 0 0 80%; } + +[layout="row"] > [flex="80"] { + max-width: 80%; } + +[layout="column"] > [flex="80"] { + max-height: 80%; } + +[flex="85"] { + -webkit-flex: 0 0 85%; + -ms-flex: 0 0 85%; + flex: 0 0 85%; } + +[layout="row"] > [flex="85"] { + max-width: 85%; } + +[layout="column"] > [flex="85"] { + max-height: 85%; } + +[flex="90"] { + -webkit-flex: 0 0 90%; + -ms-flex: 0 0 90%; + flex: 0 0 90%; } + +[layout="row"] > [flex="90"] { + max-width: 90%; } + +[layout="column"] > [flex="90"] { + max-height: 90%; } + +[flex="95"] { + -webkit-flex: 0 0 95%; + -ms-flex: 0 0 95%; + flex: 0 0 95%; } + +[layout="row"] > [flex="95"] { + max-width: 95%; } + +[layout="column"] > [flex="95"] { + max-height: 95%; } + +[flex="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + +[layout="row"] > [flex="100"] { + max-width: 100%; } + +[layout="column"] > [flex="100"] { + max-height: 100%; } + +[layout="row"] > [flex="33"], [layout="row"] > [flex="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-width: 33.33%; } +[layout="row"] > [flex="66"], [layout="row"] > [flex="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-width: 66.66%; } + +[layout="column"] > [flex="33"], [layout="column"] > [flex="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } +[layout="column"] > [flex="66"], [layout="column"] > [flex="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } + [layout-align="center"], [layout-align="center center"], [layout-align="center start"], [layout-align="center end"] { -webkit-justify-content: center; -ms-flex-pack: center; @@ -222,1093 +496,2305 @@ input[type="search"] { -ms-flex-align: end; align-items: flex-end; } -[block] { - display: block; } +[flex-order="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } -[inline-block] { - display: inline-block; } - -[hide] { - display: none; } - -[show] { - display: inherit; } - -[flex] { - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; } - -[flex="5"] { - -webkit-flex: 0 0 5%; - -ms-flex: 0 0 5%; - flex: 0 0 5%; - max-width: 5%; } - -[flex="10"] { - -webkit-flex: 0 0 10%; - -ms-flex: 0 0 10%; - flex: 0 0 10%; - max-width: 10%; } - -[flex="15"] { - -webkit-flex: 0 0 15%; - -ms-flex: 0 0 15%; - flex: 0 0 15%; - max-width: 15%; } - -[flex="20"] { - -webkit-flex: 0 0 20%; - -ms-flex: 0 0 20%; - flex: 0 0 20%; - max-width: 20%; } - -[flex="25"] { - -webkit-flex: 0 0 25%; - -ms-flex: 0 0 25%; - flex: 0 0 25%; - max-width: 25%; } - -[flex="30"] { - -webkit-flex: 0 0 30%; - -ms-flex: 0 0 30%; - flex: 0 0 30%; - max-width: 30%; } - -[flex="35"] { - -webkit-flex: 0 0 35%; - -ms-flex: 0 0 35%; - flex: 0 0 35%; - max-width: 35%; } - -[flex="40"] { - -webkit-flex: 0 0 40%; - -ms-flex: 0 0 40%; - flex: 0 0 40%; - max-width: 40%; } - -[flex="45"] { - -webkit-flex: 0 0 45%; - -ms-flex: 0 0 45%; - flex: 0 0 45%; - max-width: 45%; } - -[flex="50"] { - -webkit-flex: 0 0 50%; - -ms-flex: 0 0 50%; - flex: 0 0 50%; - max-width: 50%; } - -[flex="55"] { - -webkit-flex: 0 0 55%; - -ms-flex: 0 0 55%; - flex: 0 0 55%; - max-width: 55%; } - -[flex="60"] { - -webkit-flex: 0 0 60%; - -ms-flex: 0 0 60%; - flex: 0 0 60%; - max-width: 60%; } - -[flex="65"] { - -webkit-flex: 0 0 65%; - -ms-flex: 0 0 65%; - flex: 0 0 65%; - max-width: 65%; } - -[flex="70"] { - -webkit-flex: 0 0 70%; - -ms-flex: 0 0 70%; - flex: 0 0 70%; - max-width: 70%; } - -[flex="75"] { - -webkit-flex: 0 0 75%; - -ms-flex: 0 0 75%; - flex: 0 0 75%; - max-width: 75%; } - -[flex="80"] { - -webkit-flex: 0 0 80%; - -ms-flex: 0 0 80%; - flex: 0 0 80%; - max-width: 80%; } - -[flex="85"] { - -webkit-flex: 0 0 85%; - -ms-flex: 0 0 85%; - flex: 0 0 85%; - max-width: 85%; } - -[flex="90"] { - -webkit-flex: 0 0 90%; - -ms-flex: 0 0 90%; - flex: 0 0 90%; - max-width: 90%; } - -[flex="95"] { - -webkit-flex: 0 0 95%; - -ms-flex: 0 0 95%; - flex: 0 0 95%; - max-width: 95%; } - -[flex="33"], [flex="34"] { - -webkit-flex: 0 0 33.33%; - -ms-flex: 0 0 33.33%; - flex: 0 0 33.33%; - max-width: 33.33%; } - -[flex="66"], [flex="67"] { - -webkit-flex: 0 0 66.66%; - -ms-flex: 0 0 66.66%; - flex: 0 0 66.66%; - max-width: 66.66%; } - -[offset="5"] { - margin-left: 5%; } - -[offset="10"] { - margin-left: 10%; } - -[offset="15"] { - margin-left: 15%; } - -[offset="20"] { - margin-left: 20%; } - -[offset="25"] { - margin-left: 25%; } - -[offset="30"] { - margin-left: 30%; } - -[offset="35"] { - margin-left: 35%; } - -[offset="40"] { - margin-left: 40%; } - -[offset="45"] { - margin-left: 45%; } - -[offset="50"] { - margin-left: 50%; } - -[offset="55"] { - margin-left: 55%; } - -[offset="60"] { - margin-left: 60%; } - -[offset="65"] { - margin-left: 65%; } - -[offset="70"] { - margin-left: 70%; } - -[offset="75"] { - margin-left: 75%; } - -[offset="80"] { - margin-left: 80%; } - -[offset="85"] { - margin-left: 85%; } - -[offset="90"] { - margin-left: 90%; } - -[offset="95"] { - margin-left: 95%; } - -[offset="33"], [offset="34"] { - margin-left: 33.33%; } - -[offset="66"], [offset="67"] { - margin-left: 66.66%; } - -[layout-order="1"] { +[flex-order="1"] { -webkit-order: 1; -ms-flex-order: 1; order: 1; } -[layout-order="2"] { +[flex-order="2"] { -webkit-order: 2; -ms-flex-order: 2; order: 2; } -[layout-order="3"] { +[flex-order="3"] { -webkit-order: 3; -ms-flex-order: 3; order: 3; } -[layout-order="4"] { +[flex-order="4"] { -webkit-order: 4; -ms-flex-order: 4; order: 4; } -[layout-order="5"] { +[flex-order="5"] { -webkit-order: 5; -ms-flex-order: 5; order: 5; } -[layout-order="6"] { +[flex-order="6"] { -webkit-order: 6; -ms-flex-order: 6; order: 6; } -@media (min-width: 600px) { +[flex-order="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } + +[flex-order="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + +[flex-order="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + +/** + * `hide-gt-sm show-gt-lg` should hide from 600px to 1200px + * `show-md hide-gt-sm` should show from 0px to 960px and hide at >960px + * `hide-gt-md show-gt-sm` should show everywhere (show overrides hide)` + */ +@media (max-width: 600px) { + [hide-sm]:not([show-sm]):not([show]), [hide]:not([show-sm]):not([show]) { + display: none; } + + [flex-order-sm="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } + + [flex-order-sm="1"] { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } + + [flex-order-sm="2"] { + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; } + + [flex-order-sm="3"] { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; } + + [flex-order-sm="4"] { + -webkit-order: 4; + -ms-flex-order: 4; + order: 4; } + + [flex-order-sm="5"] { + -webkit-order: 5; + -ms-flex-order: 5; + order: 5; } + + [flex-order-sm="6"] { + -webkit-order: 6; + -ms-flex-order: 6; + order: 6; } + + [flex-order-sm="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } + + [flex-order-sm="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-sm="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-sm="center"], [layout-align-sm="center center"], [layout-align-sm="center start"], [layout-align-sm="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-sm="end"], [layout-align-sm="end center"], [layout-align-sm="end start"], [layout-align-sm="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-sm="space-around"], [layout-align-sm="space-around center"], [layout-align-sm="space-around start"], [layout-align-sm="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-sm="space-between"], [layout-align-sm="space-between center"], [layout-align-sm="space-between start"], [layout-align-sm="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-sm="center center"], [layout-align-sm="start center"], [layout-align-sm="end center"], [layout-align-sm="space-between center"], [layout-align-sm="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-sm="center start"], [layout-align-sm="start start"], [layout-align-sm="end start"], [layout-align-sm="space-between start"], [layout-align-sm="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-sm="center end"], [layout-align-sm="start end"], [layout-align-sm="end end"], [layout-align-sm="space-between end"], [layout-align-sm="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-sm] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-sm=column] { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; } + + [layout-sm=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } + [flex-sm] { -webkit-flex: 1; -ms-flex: 1; flex: 1; } + [flex-sm="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } + + [layout="row"] > [flex-sm="0"] { + max-width: 0%; } + + [layout="column"] > [flex-sm="0"] { + max-height: 0%; } + [flex-sm="5"] { -webkit-flex: 0 0 5%; -ms-flex: 0 0 5%; - flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-sm="5"] { max-width: 5%; } + [layout="column"] > [flex-sm="5"] { + max-height: 5%; } + [flex-sm="10"] { -webkit-flex: 0 0 10%; -ms-flex: 0 0 10%; - flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-sm="10"] { max-width: 10%; } + [layout="column"] > [flex-sm="10"] { + max-height: 10%; } + [flex-sm="15"] { -webkit-flex: 0 0 15%; -ms-flex: 0 0 15%; - flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-sm="15"] { max-width: 15%; } + [layout="column"] > [flex-sm="15"] { + max-height: 15%; } + [flex-sm="20"] { -webkit-flex: 0 0 20%; -ms-flex: 0 0 20%; - flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-sm="20"] { max-width: 20%; } + [layout="column"] > [flex-sm="20"] { + max-height: 20%; } + [flex-sm="25"] { -webkit-flex: 0 0 25%; -ms-flex: 0 0 25%; - flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-sm="25"] { max-width: 25%; } + [layout="column"] > [flex-sm="25"] { + max-height: 25%; } + [flex-sm="30"] { -webkit-flex: 0 0 30%; -ms-flex: 0 0 30%; - flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-sm="30"] { max-width: 30%; } + [layout="column"] > [flex-sm="30"] { + max-height: 30%; } + [flex-sm="35"] { -webkit-flex: 0 0 35%; -ms-flex: 0 0 35%; - flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-sm="35"] { max-width: 35%; } + [layout="column"] > [flex-sm="35"] { + max-height: 35%; } + [flex-sm="40"] { -webkit-flex: 0 0 40%; -ms-flex: 0 0 40%; - flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-sm="40"] { max-width: 40%; } + [layout="column"] > [flex-sm="40"] { + max-height: 40%; } + [flex-sm="45"] { -webkit-flex: 0 0 45%; -ms-flex: 0 0 45%; - flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-sm="45"] { max-width: 45%; } + [layout="column"] > [flex-sm="45"] { + max-height: 45%; } + [flex-sm="50"] { -webkit-flex: 0 0 50%; -ms-flex: 0 0 50%; - flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-sm="50"] { max-width: 50%; } + [layout="column"] > [flex-sm="50"] { + max-height: 50%; } + [flex-sm="55"] { -webkit-flex: 0 0 55%; -ms-flex: 0 0 55%; - flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-sm="55"] { max-width: 55%; } + [layout="column"] > [flex-sm="55"] { + max-height: 55%; } + [flex-sm="60"] { -webkit-flex: 0 0 60%; -ms-flex: 0 0 60%; - flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-sm="60"] { max-width: 60%; } + [layout="column"] > [flex-sm="60"] { + max-height: 60%; } + [flex-sm="65"] { -webkit-flex: 0 0 65%; -ms-flex: 0 0 65%; - flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-sm="65"] { max-width: 65%; } + [layout="column"] > [flex-sm="65"] { + max-height: 65%; } + [flex-sm="70"] { -webkit-flex: 0 0 70%; -ms-flex: 0 0 70%; - flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-sm="70"] { max-width: 70%; } + [layout="column"] > [flex-sm="70"] { + max-height: 70%; } + [flex-sm="75"] { -webkit-flex: 0 0 75%; -ms-flex: 0 0 75%; - flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-sm="75"] { max-width: 75%; } + [layout="column"] > [flex-sm="75"] { + max-height: 75%; } + [flex-sm="80"] { -webkit-flex: 0 0 80%; -ms-flex: 0 0 80%; - flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-sm="80"] { max-width: 80%; } + [layout="column"] > [flex-sm="80"] { + max-height: 80%; } + [flex-sm="85"] { -webkit-flex: 0 0 85%; -ms-flex: 0 0 85%; - flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-sm="85"] { max-width: 85%; } + [layout="column"] > [flex-sm="85"] { + max-height: 85%; } + [flex-sm="90"] { -webkit-flex: 0 0 90%; -ms-flex: 0 0 90%; - flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-sm="90"] { max-width: 90%; } + [layout="column"] > [flex-sm="90"] { + max-height: 90%; } + [flex-sm="95"] { -webkit-flex: 0 0 95%; -ms-flex: 0 0 95%; - flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-sm="95"] { max-width: 95%; } - [flex-sm="33"], [flex-sm="34"] { + [layout="column"] > [flex-sm="95"] { + max-height: 95%; } + + [flex-sm="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-sm="100"] { + max-width: 100%; } + + [layout="column"] > [flex-sm="100"] { + max-height: 100%; } + + [layout="row"] > [flex-sm="33"], [layout="row"] > [flex-sm="34"] { -webkit-flex: 0 0 33.33%; -ms-flex: 0 0 33.33%; flex: 0 0 33.33%; max-width: 33.33%; } - - [flex-sm="66"], [flex-sm="67"] { + [layout="row"] > [flex-sm="66"], [layout="row"] > [flex-sm="67"] { -webkit-flex: 0 0 66.66%; -ms-flex: 0 0 66.66%; flex: 0 0 66.66%; max-width: 66.66%; } - [offset-sm="5"] { - margin-left: 5%; } + [layout="column"] > [flex-sm="33"], [layout="column"] > [flex-sm="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-sm="66"], [layout="column"] > [flex-sm="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } + } - [offset-sm="10"] { - margin-left: 10%; } +@media (min-width: 600px) { + [flex-order-gt-sm="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } - [offset-sm="15"] { - margin-left: 15%; } - - [offset-sm="20"] { - margin-left: 20%; } - - [offset-sm="25"] { - margin-left: 25%; } - - [offset-sm="30"] { - margin-left: 30%; } - - [offset-sm="35"] { - margin-left: 35%; } - - [offset-sm="40"] { - margin-left: 40%; } - - [offset-sm="45"] { - margin-left: 45%; } - - [offset-sm="50"] { - margin-left: 50%; } - - [offset-sm="55"] { - margin-left: 55%; } - - [offset-sm="60"] { - margin-left: 60%; } - - [offset-sm="65"] { - margin-left: 65%; } - - [offset-sm="70"] { - margin-left: 70%; } - - [offset-sm="75"] { - margin-left: 75%; } - - [offset-sm="80"] { - margin-left: 80%; } - - [offset-sm="85"] { - margin-left: 85%; } - - [offset-sm="90"] { - margin-left: 90%; } - - [offset-sm="95"] { - margin-left: 95%; } - - [offset-sm="33"], [offset-sm="34"] { - margin-left: 33.33%; } - - [offset-sm="66"], [offset-sm="67"] { - margin-left: 66.66%; } - - [layout-order-sm="1"] { + [flex-order-gt-sm="1"] { -webkit-order: 1; -ms-flex-order: 1; order: 1; } - [layout-order-sm="2"] { + [flex-order-gt-sm="2"] { -webkit-order: 2; -ms-flex-order: 2; order: 2; } - [layout-order-sm="3"] { + [flex-order-gt-sm="3"] { -webkit-order: 3; -ms-flex-order: 3; order: 3; } - [layout-order-sm="4"] { + [flex-order-gt-sm="4"] { -webkit-order: 4; -ms-flex-order: 4; order: 4; } - [layout-order-sm="5"] { + [flex-order-gt-sm="5"] { -webkit-order: 5; -ms-flex-order: 5; order: 5; } - [layout-order-sm="6"] { + [flex-order-gt-sm="6"] { -webkit-order: 6; -ms-flex-order: 6; order: 6; } - [layout-sm] { - -webkit-flex-direction: row; - -ms-flex-direction: row; - flex-direction: row; } + [flex-order-gt-sm="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } - [layout-sm=vertical] { + [flex-order-gt-sm="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-gt-sm="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-gt-sm="center"], [layout-align-gt-sm="center center"], [layout-align-gt-sm="center start"], [layout-align-gt-sm="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-gt-sm="end"], [layout-align-gt-sm="end center"], [layout-align-gt-sm="end start"], [layout-align-gt-sm="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-gt-sm="space-around"], [layout-align-gt-sm="space-around center"], [layout-align-gt-sm="space-around start"], [layout-align-gt-sm="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-gt-sm="space-between"], [layout-align-gt-sm="space-between center"], [layout-align-gt-sm="space-between start"], [layout-align-gt-sm="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-gt-sm="center center"], [layout-align-gt-sm="start center"], [layout-align-gt-sm="end center"], [layout-align-gt-sm="space-between center"], [layout-align-gt-sm="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-gt-sm="center start"], [layout-align-gt-sm="start start"], [layout-align-gt-sm="end start"], [layout-align-gt-sm="space-between start"], [layout-align-gt-sm="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-gt-sm="center end"], [layout-align-gt-sm="start end"], [layout-align-gt-sm="end end"], [layout-align-gt-sm="space-between end"], [layout-align-gt-sm="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-gt-sm] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-gt-sm=column] { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } - [block-sm] { - display: block; } + [layout-gt-sm=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } - [inline-block-sm] { - display: inline-block; } + [flex-gt-sm] { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; } - [show-sm] { - display: inherit; } + [flex-gt-sm="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } - [hide-sm] { - display: none; } + [layout="row"] > [flex-gt-sm="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-sm="0"] { + max-height: 0%; } + + [flex-gt-sm="5"] { + -webkit-flex: 0 0 5%; + -ms-flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-sm="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-sm="5"] { + max-height: 5%; } + + [flex-gt-sm="10"] { + -webkit-flex: 0 0 10%; + -ms-flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-sm="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-sm="10"] { + max-height: 10%; } + + [flex-gt-sm="15"] { + -webkit-flex: 0 0 15%; + -ms-flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-sm="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-sm="15"] { + max-height: 15%; } + + [flex-gt-sm="20"] { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-sm="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-sm="20"] { + max-height: 20%; } + + [flex-gt-sm="25"] { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-sm="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-sm="25"] { + max-height: 25%; } + + [flex-gt-sm="30"] { + -webkit-flex: 0 0 30%; + -ms-flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-sm="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-sm="30"] { + max-height: 30%; } + + [flex-gt-sm="35"] { + -webkit-flex: 0 0 35%; + -ms-flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-sm="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-sm="35"] { + max-height: 35%; } + + [flex-gt-sm="40"] { + -webkit-flex: 0 0 40%; + -ms-flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-sm="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-sm="40"] { + max-height: 40%; } + + [flex-gt-sm="45"] { + -webkit-flex: 0 0 45%; + -ms-flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-sm="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-sm="45"] { + max-height: 45%; } + + [flex-gt-sm="50"] { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-sm="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-sm="50"] { + max-height: 50%; } + + [flex-gt-sm="55"] { + -webkit-flex: 0 0 55%; + -ms-flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-sm="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-sm="55"] { + max-height: 55%; } + + [flex-gt-sm="60"] { + -webkit-flex: 0 0 60%; + -ms-flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-sm="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-sm="60"] { + max-height: 60%; } + + [flex-gt-sm="65"] { + -webkit-flex: 0 0 65%; + -ms-flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-sm="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-sm="65"] { + max-height: 65%; } + + [flex-gt-sm="70"] { + -webkit-flex: 0 0 70%; + -ms-flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-sm="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-sm="70"] { + max-height: 70%; } + + [flex-gt-sm="75"] { + -webkit-flex: 0 0 75%; + -ms-flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-sm="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-sm="75"] { + max-height: 75%; } + + [flex-gt-sm="80"] { + -webkit-flex: 0 0 80%; + -ms-flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-sm="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-sm="80"] { + max-height: 80%; } + + [flex-gt-sm="85"] { + -webkit-flex: 0 0 85%; + -ms-flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-sm="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-sm="85"] { + max-height: 85%; } + + [flex-gt-sm="90"] { + -webkit-flex: 0 0 90%; + -ms-flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-sm="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-sm="90"] { + max-height: 90%; } + + [flex-gt-sm="95"] { + -webkit-flex: 0 0 95%; + -ms-flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-sm="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-sm="95"] { + max-height: 95%; } + + [flex-gt-sm="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-sm="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-sm="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-sm="33"], [layout="row"] > [flex-gt-sm="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-sm="66"], [layout="row"] > [flex-gt-sm="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-sm="33"], [layout="column"] > [flex-gt-sm="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-sm="66"], [layout="column"] > [flex-gt-sm="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } } -@media (min-width: 960px) { +@media (min-width: 600px) and (max-width: 960px) { + [hide]:not([show-gt-sm]):not([show-md]):not([show]), [hide-gt-sm]:not([show-gt-sm]):not([show-md]):not([show]) { + display: none; } + + [hide-md]:not([show-md]):not([show]) { + display: none; } + + [flex-order-md="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } + + [flex-order-md="1"] { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } + + [flex-order-md="2"] { + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; } + + [flex-order-md="3"] { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; } + + [flex-order-md="4"] { + -webkit-order: 4; + -ms-flex-order: 4; + order: 4; } + + [flex-order-md="5"] { + -webkit-order: 5; + -ms-flex-order: 5; + order: 5; } + + [flex-order-md="6"] { + -webkit-order: 6; + -ms-flex-order: 6; + order: 6; } + + [flex-order-md="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } + + [flex-order-md="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-md="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-md="center"], [layout-align-md="center center"], [layout-align-md="center start"], [layout-align-md="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-md="end"], [layout-align-md="end center"], [layout-align-md="end start"], [layout-align-md="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-md="space-around"], [layout-align-md="space-around center"], [layout-align-md="space-around start"], [layout-align-md="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-md="space-between"], [layout-align-md="space-between center"], [layout-align-md="space-between start"], [layout-align-md="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-md="center center"], [layout-align-md="start center"], [layout-align-md="end center"], [layout-align-md="space-between center"], [layout-align-md="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-md="center start"], [layout-align-md="start start"], [layout-align-md="end start"], [layout-align-md="space-between start"], [layout-align-md="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-md="center end"], [layout-align-md="start end"], [layout-align-md="end end"], [layout-align-md="space-between end"], [layout-align-md="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-md] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-md=column] { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; } + + [layout-md=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } + [flex-md] { -webkit-flex: 1; -ms-flex: 1; flex: 1; } + [flex-md="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } + + [layout="row"] > [flex-md="0"] { + max-width: 0%; } + + [layout="column"] > [flex-md="0"] { + max-height: 0%; } + [flex-md="5"] { -webkit-flex: 0 0 5%; -ms-flex: 0 0 5%; - flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-md="5"] { max-width: 5%; } + [layout="column"] > [flex-md="5"] { + max-height: 5%; } + [flex-md="10"] { -webkit-flex: 0 0 10%; -ms-flex: 0 0 10%; - flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-md="10"] { max-width: 10%; } + [layout="column"] > [flex-md="10"] { + max-height: 10%; } + [flex-md="15"] { -webkit-flex: 0 0 15%; -ms-flex: 0 0 15%; - flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-md="15"] { max-width: 15%; } + [layout="column"] > [flex-md="15"] { + max-height: 15%; } + [flex-md="20"] { -webkit-flex: 0 0 20%; -ms-flex: 0 0 20%; - flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-md="20"] { max-width: 20%; } + [layout="column"] > [flex-md="20"] { + max-height: 20%; } + [flex-md="25"] { -webkit-flex: 0 0 25%; -ms-flex: 0 0 25%; - flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-md="25"] { max-width: 25%; } + [layout="column"] > [flex-md="25"] { + max-height: 25%; } + [flex-md="30"] { -webkit-flex: 0 0 30%; -ms-flex: 0 0 30%; - flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-md="30"] { max-width: 30%; } + [layout="column"] > [flex-md="30"] { + max-height: 30%; } + [flex-md="35"] { -webkit-flex: 0 0 35%; -ms-flex: 0 0 35%; - flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-md="35"] { max-width: 35%; } + [layout="column"] > [flex-md="35"] { + max-height: 35%; } + [flex-md="40"] { -webkit-flex: 0 0 40%; -ms-flex: 0 0 40%; - flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-md="40"] { max-width: 40%; } + [layout="column"] > [flex-md="40"] { + max-height: 40%; } + [flex-md="45"] { -webkit-flex: 0 0 45%; -ms-flex: 0 0 45%; - flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-md="45"] { max-width: 45%; } + [layout="column"] > [flex-md="45"] { + max-height: 45%; } + [flex-md="50"] { -webkit-flex: 0 0 50%; -ms-flex: 0 0 50%; - flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-md="50"] { max-width: 50%; } + [layout="column"] > [flex-md="50"] { + max-height: 50%; } + [flex-md="55"] { -webkit-flex: 0 0 55%; -ms-flex: 0 0 55%; - flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-md="55"] { max-width: 55%; } + [layout="column"] > [flex-md="55"] { + max-height: 55%; } + [flex-md="60"] { -webkit-flex: 0 0 60%; -ms-flex: 0 0 60%; - flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-md="60"] { max-width: 60%; } + [layout="column"] > [flex-md="60"] { + max-height: 60%; } + [flex-md="65"] { -webkit-flex: 0 0 65%; -ms-flex: 0 0 65%; - flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-md="65"] { max-width: 65%; } + [layout="column"] > [flex-md="65"] { + max-height: 65%; } + [flex-md="70"] { -webkit-flex: 0 0 70%; -ms-flex: 0 0 70%; - flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-md="70"] { max-width: 70%; } + [layout="column"] > [flex-md="70"] { + max-height: 70%; } + [flex-md="75"] { -webkit-flex: 0 0 75%; -ms-flex: 0 0 75%; - flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-md="75"] { max-width: 75%; } + [layout="column"] > [flex-md="75"] { + max-height: 75%; } + [flex-md="80"] { -webkit-flex: 0 0 80%; -ms-flex: 0 0 80%; - flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-md="80"] { max-width: 80%; } + [layout="column"] > [flex-md="80"] { + max-height: 80%; } + [flex-md="85"] { -webkit-flex: 0 0 85%; -ms-flex: 0 0 85%; - flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-md="85"] { max-width: 85%; } + [layout="column"] > [flex-md="85"] { + max-height: 85%; } + [flex-md="90"] { -webkit-flex: 0 0 90%; -ms-flex: 0 0 90%; - flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-md="90"] { max-width: 90%; } + [layout="column"] > [flex-md="90"] { + max-height: 90%; } + [flex-md="95"] { -webkit-flex: 0 0 95%; -ms-flex: 0 0 95%; - flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-md="95"] { max-width: 95%; } - [flex-md="33"], [flex-md="34"] { + [layout="column"] > [flex-md="95"] { + max-height: 95%; } + + [flex-md="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-md="100"] { + max-width: 100%; } + + [layout="column"] > [flex-md="100"] { + max-height: 100%; } + + [layout="row"] > [flex-md="33"], [layout="row"] > [flex-md="34"] { -webkit-flex: 0 0 33.33%; -ms-flex: 0 0 33.33%; flex: 0 0 33.33%; max-width: 33.33%; } - - [flex-md="66"], [flex-md="67"] { + [layout="row"] > [flex-md="66"], [layout="row"] > [flex-md="67"] { -webkit-flex: 0 0 66.66%; -ms-flex: 0 0 66.66%; flex: 0 0 66.66%; max-width: 66.66%; } - [offset-md="5"] { - margin-left: 5%; } + [layout="column"] > [flex-md="33"], [layout="column"] > [flex-md="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-md="66"], [layout="column"] > [flex-md="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } + } - [offset-md="10"] { - margin-left: 10%; } +@media (min-width: 960px) { + [flex-order-gt-md="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } - [offset-md="15"] { - margin-left: 15%; } - - [offset-md="20"] { - margin-left: 20%; } - - [offset-md="25"] { - margin-left: 25%; } - - [offset-md="30"] { - margin-left: 30%; } - - [offset-md="35"] { - margin-left: 35%; } - - [offset-md="40"] { - margin-left: 40%; } - - [offset-md="45"] { - margin-left: 45%; } - - [offset-md="50"] { - margin-left: 50%; } - - [offset-md="55"] { - margin-left: 55%; } - - [offset-md="60"] { - margin-left: 60%; } - - [offset-md="65"] { - margin-left: 65%; } - - [offset-md="70"] { - margin-left: 70%; } - - [offset-md="75"] { - margin-left: 75%; } - - [offset-md="80"] { - margin-left: 80%; } - - [offset-md="85"] { - margin-left: 85%; } - - [offset-md="90"] { - margin-left: 90%; } - - [offset-md="95"] { - margin-left: 95%; } - - [offset-md="33"], [offset-md="34"] { - margin-left: 33.33%; } - - [offset-md="66"], [offset-md="67"] { - margin-left: 66.66%; } - - [layout-order-md="1"] { + [flex-order-gt-md="1"] { -webkit-order: 1; -ms-flex-order: 1; order: 1; } - [layout-order-md="2"] { + [flex-order-gt-md="2"] { -webkit-order: 2; -ms-flex-order: 2; order: 2; } - [layout-order-md="3"] { + [flex-order-gt-md="3"] { -webkit-order: 3; -ms-flex-order: 3; order: 3; } - [layout-order-md="4"] { + [flex-order-gt-md="4"] { -webkit-order: 4; -ms-flex-order: 4; order: 4; } - [layout-order-md="5"] { + [flex-order-gt-md="5"] { -webkit-order: 5; -ms-flex-order: 5; order: 5; } - [layout-order-md="6"] { + [flex-order-gt-md="6"] { -webkit-order: 6; -ms-flex-order: 6; order: 6; } - [layout-md] { - -webkit-flex-direction: row; - -ms-flex-direction: row; - flex-direction: row; } + [flex-order-gt-md="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } - [layout-md=vertical] { + [flex-order-gt-md="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-gt-md="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-gt-md="center"], [layout-align-gt-md="center center"], [layout-align-gt-md="center start"], [layout-align-gt-md="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-gt-md="end"], [layout-align-gt-md="end center"], [layout-align-gt-md="end start"], [layout-align-gt-md="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-gt-md="space-around"], [layout-align-gt-md="space-around center"], [layout-align-gt-md="space-around start"], [layout-align-gt-md="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-gt-md="space-between"], [layout-align-gt-md="space-between center"], [layout-align-gt-md="space-between start"], [layout-align-gt-md="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-gt-md="center center"], [layout-align-gt-md="start center"], [layout-align-gt-md="end center"], [layout-align-gt-md="space-between center"], [layout-align-gt-md="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-gt-md="center start"], [layout-align-gt-md="start start"], [layout-align-gt-md="end start"], [layout-align-gt-md="space-between start"], [layout-align-gt-md="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-gt-md="center end"], [layout-align-gt-md="start end"], [layout-align-gt-md="end end"], [layout-align-gt-md="space-between end"], [layout-align-gt-md="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-gt-md] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-gt-md=column] { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } - [block-md] { - display: block; } + [layout-gt-md=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } - [inline-block-md] { - display: inline-block; } + [flex-gt-md] { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; } - [show-md] { - display: inherit; } + [flex-gt-md="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } - [hide-md] { - display: none; } + [layout="row"] > [flex-gt-md="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-md="0"] { + max-height: 0%; } + + [flex-gt-md="5"] { + -webkit-flex: 0 0 5%; + -ms-flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-md="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-md="5"] { + max-height: 5%; } + + [flex-gt-md="10"] { + -webkit-flex: 0 0 10%; + -ms-flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-md="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-md="10"] { + max-height: 10%; } + + [flex-gt-md="15"] { + -webkit-flex: 0 0 15%; + -ms-flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-md="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-md="15"] { + max-height: 15%; } + + [flex-gt-md="20"] { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-md="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-md="20"] { + max-height: 20%; } + + [flex-gt-md="25"] { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-md="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-md="25"] { + max-height: 25%; } + + [flex-gt-md="30"] { + -webkit-flex: 0 0 30%; + -ms-flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-md="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-md="30"] { + max-height: 30%; } + + [flex-gt-md="35"] { + -webkit-flex: 0 0 35%; + -ms-flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-md="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-md="35"] { + max-height: 35%; } + + [flex-gt-md="40"] { + -webkit-flex: 0 0 40%; + -ms-flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-md="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-md="40"] { + max-height: 40%; } + + [flex-gt-md="45"] { + -webkit-flex: 0 0 45%; + -ms-flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-md="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-md="45"] { + max-height: 45%; } + + [flex-gt-md="50"] { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-md="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-md="50"] { + max-height: 50%; } + + [flex-gt-md="55"] { + -webkit-flex: 0 0 55%; + -ms-flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-md="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-md="55"] { + max-height: 55%; } + + [flex-gt-md="60"] { + -webkit-flex: 0 0 60%; + -ms-flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-md="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-md="60"] { + max-height: 60%; } + + [flex-gt-md="65"] { + -webkit-flex: 0 0 65%; + -ms-flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-md="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-md="65"] { + max-height: 65%; } + + [flex-gt-md="70"] { + -webkit-flex: 0 0 70%; + -ms-flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-md="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-md="70"] { + max-height: 70%; } + + [flex-gt-md="75"] { + -webkit-flex: 0 0 75%; + -ms-flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-md="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-md="75"] { + max-height: 75%; } + + [flex-gt-md="80"] { + -webkit-flex: 0 0 80%; + -ms-flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-md="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-md="80"] { + max-height: 80%; } + + [flex-gt-md="85"] { + -webkit-flex: 0 0 85%; + -ms-flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-md="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-md="85"] { + max-height: 85%; } + + [flex-gt-md="90"] { + -webkit-flex: 0 0 90%; + -ms-flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-md="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-md="90"] { + max-height: 90%; } + + [flex-gt-md="95"] { + -webkit-flex: 0 0 95%; + -ms-flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-md="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-md="95"] { + max-height: 95%; } + + [flex-gt-md="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-md="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-md="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-md="33"], [layout="row"] > [flex-gt-md="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-md="66"], [layout="row"] > [flex-gt-md="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-md="33"], [layout="column"] > [flex-gt-md="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-md="66"], [layout="column"] > [flex-gt-md="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } } -@media (min-width: 1200px) { +@media (min-width: 960px) and (max-width: 1200px) { + [hide]:not([show-gt-sm]):not([show-gt-md]):not([show-lg]):not([show]), [hide-gt-sm]:not([show-gt-sm]):not([show-gt-md]):not([show-lg]):not([show]), [hide-gt-md]:not([show-gt-sm]):not([show-gt-md]):not([show-lg]):not([show]) { + display: none; } + + [hide-lg]:not([show-lg]):not([show]) { + display: none; } + + [flex-order-lg="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } + + [flex-order-lg="1"] { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } + + [flex-order-lg="2"] { + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; } + + [flex-order-lg="3"] { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; } + + [flex-order-lg="4"] { + -webkit-order: 4; + -ms-flex-order: 4; + order: 4; } + + [flex-order-lg="5"] { + -webkit-order: 5; + -ms-flex-order: 5; + order: 5; } + + [flex-order-lg="6"] { + -webkit-order: 6; + -ms-flex-order: 6; + order: 6; } + + [flex-order-lg="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } + + [flex-order-lg="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-lg="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-lg="center"], [layout-align-lg="center center"], [layout-align-lg="center start"], [layout-align-lg="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-lg="end"], [layout-align-lg="end center"], [layout-align-lg="end start"], [layout-align-lg="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-lg="space-around"], [layout-align-lg="space-around center"], [layout-align-lg="space-around start"], [layout-align-lg="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-lg="space-between"], [layout-align-lg="space-between center"], [layout-align-lg="space-between start"], [layout-align-lg="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-lg="center center"], [layout-align-lg="start center"], [layout-align-lg="end center"], [layout-align-lg="space-between center"], [layout-align-lg="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-lg="center start"], [layout-align-lg="start start"], [layout-align-lg="end start"], [layout-align-lg="space-between start"], [layout-align-lg="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-lg="center end"], [layout-align-lg="start end"], [layout-align-lg="end end"], [layout-align-lg="space-between end"], [layout-align-lg="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-lg] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-lg=column] { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; } + + [layout-lg=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } + [flex-lg] { -webkit-flex: 1; -ms-flex: 1; flex: 1; } + [flex-lg="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } + + [layout="row"] > [flex-lg="0"] { + max-width: 0%; } + + [layout="column"] > [flex-lg="0"] { + max-height: 0%; } + [flex-lg="5"] { -webkit-flex: 0 0 5%; -ms-flex: 0 0 5%; - flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-lg="5"] { max-width: 5%; } + [layout="column"] > [flex-lg="5"] { + max-height: 5%; } + [flex-lg="10"] { -webkit-flex: 0 0 10%; -ms-flex: 0 0 10%; - flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-lg="10"] { max-width: 10%; } + [layout="column"] > [flex-lg="10"] { + max-height: 10%; } + [flex-lg="15"] { -webkit-flex: 0 0 15%; -ms-flex: 0 0 15%; - flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-lg="15"] { max-width: 15%; } + [layout="column"] > [flex-lg="15"] { + max-height: 15%; } + [flex-lg="20"] { -webkit-flex: 0 0 20%; -ms-flex: 0 0 20%; - flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-lg="20"] { max-width: 20%; } + [layout="column"] > [flex-lg="20"] { + max-height: 20%; } + [flex-lg="25"] { -webkit-flex: 0 0 25%; -ms-flex: 0 0 25%; - flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-lg="25"] { max-width: 25%; } + [layout="column"] > [flex-lg="25"] { + max-height: 25%; } + [flex-lg="30"] { -webkit-flex: 0 0 30%; -ms-flex: 0 0 30%; - flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-lg="30"] { max-width: 30%; } + [layout="column"] > [flex-lg="30"] { + max-height: 30%; } + [flex-lg="35"] { -webkit-flex: 0 0 35%; -ms-flex: 0 0 35%; - flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-lg="35"] { max-width: 35%; } + [layout="column"] > [flex-lg="35"] { + max-height: 35%; } + [flex-lg="40"] { -webkit-flex: 0 0 40%; -ms-flex: 0 0 40%; - flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-lg="40"] { max-width: 40%; } + [layout="column"] > [flex-lg="40"] { + max-height: 40%; } + [flex-lg="45"] { -webkit-flex: 0 0 45%; -ms-flex: 0 0 45%; - flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-lg="45"] { max-width: 45%; } + [layout="column"] > [flex-lg="45"] { + max-height: 45%; } + [flex-lg="50"] { -webkit-flex: 0 0 50%; -ms-flex: 0 0 50%; - flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-lg="50"] { max-width: 50%; } + [layout="column"] > [flex-lg="50"] { + max-height: 50%; } + [flex-lg="55"] { -webkit-flex: 0 0 55%; -ms-flex: 0 0 55%; - flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-lg="55"] { max-width: 55%; } + [layout="column"] > [flex-lg="55"] { + max-height: 55%; } + [flex-lg="60"] { -webkit-flex: 0 0 60%; -ms-flex: 0 0 60%; - flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-lg="60"] { max-width: 60%; } + [layout="column"] > [flex-lg="60"] { + max-height: 60%; } + [flex-lg="65"] { -webkit-flex: 0 0 65%; -ms-flex: 0 0 65%; - flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-lg="65"] { max-width: 65%; } + [layout="column"] > [flex-lg="65"] { + max-height: 65%; } + [flex-lg="70"] { -webkit-flex: 0 0 70%; -ms-flex: 0 0 70%; - flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-lg="70"] { max-width: 70%; } + [layout="column"] > [flex-lg="70"] { + max-height: 70%; } + [flex-lg="75"] { -webkit-flex: 0 0 75%; -ms-flex: 0 0 75%; - flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-lg="75"] { max-width: 75%; } + [layout="column"] > [flex-lg="75"] { + max-height: 75%; } + [flex-lg="80"] { -webkit-flex: 0 0 80%; -ms-flex: 0 0 80%; - flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-lg="80"] { max-width: 80%; } + [layout="column"] > [flex-lg="80"] { + max-height: 80%; } + [flex-lg="85"] { -webkit-flex: 0 0 85%; -ms-flex: 0 0 85%; - flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-lg="85"] { max-width: 85%; } + [layout="column"] > [flex-lg="85"] { + max-height: 85%; } + [flex-lg="90"] { -webkit-flex: 0 0 90%; -ms-flex: 0 0 90%; - flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-lg="90"] { max-width: 90%; } + [layout="column"] > [flex-lg="90"] { + max-height: 90%; } + [flex-lg="95"] { -webkit-flex: 0 0 95%; -ms-flex: 0 0 95%; - flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-lg="95"] { max-width: 95%; } - [flex-lg="33"], [flex-lg="34"] { + [layout="column"] > [flex-lg="95"] { + max-height: 95%; } + + [flex-lg="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-lg="100"] { + max-width: 100%; } + + [layout="column"] > [flex-lg="100"] { + max-height: 100%; } + + [layout="row"] > [flex-lg="33"], [layout="row"] > [flex-lg="34"] { -webkit-flex: 0 0 33.33%; -ms-flex: 0 0 33.33%; flex: 0 0 33.33%; max-width: 33.33%; } - - [flex-lg="66"], [flex-lg="67"] { + [layout="row"] > [flex-lg="66"], [layout="row"] > [flex-lg="67"] { -webkit-flex: 0 0 66.66%; -ms-flex: 0 0 66.66%; flex: 0 0 66.66%; max-width: 66.66%; } - [offset-lg="5"] { - margin-left: 5%; } + [layout="column"] > [flex-lg="33"], [layout="column"] > [flex-lg="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-lg="66"], [layout="column"] > [flex-lg="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } + } - [offset-lg="10"] { - margin-left: 10%; } +@media (min-width: 1200px) { + [hide-gt-sm]:not([show-gt-sm]):not([show-gt-md]):not([show-gt-lg]):not([show]), [hide-gt-md]:not([show-gt-sm]):not([show-gt-md]):not([show-gt-lg]):not([show]), [hide-gt-lg]:not([show-gt-sm]):not([show-gt-md]):not([show-gt-lg]):not([show]), [hide]:not([show-gt-sm]):not([show-gt-md]):not([show-gt-lg]):not([show]) { + display: none; } - [offset-lg="15"] { - margin-left: 15%; } + [flex-order-gt-lg="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } - [offset-lg="20"] { - margin-left: 20%; } - - [offset-lg="25"] { - margin-left: 25%; } - - [offset-lg="30"] { - margin-left: 30%; } - - [offset-lg="35"] { - margin-left: 35%; } - - [offset-lg="40"] { - margin-left: 40%; } - - [offset-lg="45"] { - margin-left: 45%; } - - [offset-lg="50"] { - margin-left: 50%; } - - [offset-lg="55"] { - margin-left: 55%; } - - [offset-lg="60"] { - margin-left: 60%; } - - [offset-lg="65"] { - margin-left: 65%; } - - [offset-lg="70"] { - margin-left: 70%; } - - [offset-lg="75"] { - margin-left: 75%; } - - [offset-lg="80"] { - margin-left: 80%; } - - [offset-lg="85"] { - margin-left: 85%; } - - [offset-lg="90"] { - margin-left: 90%; } - - [offset-lg="95"] { - margin-left: 95%; } - - [offset-lg="33"], [offset-lg="34"] { - margin-left: 33.33%; } - - [offset-lg="66"], [offset-lg="67"] { - margin-left: 66.66%; } - - [layout-order-lg="1"] { + [flex-order-gt-lg="1"] { -webkit-order: 1; -ms-flex-order: 1; order: 1; } - [layout-order-lg="2"] { + [flex-order-gt-lg="2"] { -webkit-order: 2; -ms-flex-order: 2; order: 2; } - [layout-order-lg="3"] { + [flex-order-gt-lg="3"] { -webkit-order: 3; -ms-flex-order: 3; order: 3; } - [layout-order-lg="4"] { + [flex-order-gt-lg="4"] { -webkit-order: 4; -ms-flex-order: 4; order: 4; } - [layout-order-lg="5"] { + [flex-order-gt-lg="5"] { -webkit-order: 5; -ms-flex-order: 5; order: 5; } - [layout-order-lg="6"] { + [flex-order-gt-lg="6"] { -webkit-order: 6; -ms-flex-order: 6; order: 6; } - [layout-lg] { - -webkit-flex-direction: row; - -ms-flex-direction: row; - flex-direction: row; } + [flex-order-gt-lg="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } - [layout-lg=vertical] { + [flex-order-gt-lg="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-gt-lg="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-gt-lg="center"], [layout-align-gt-lg="center center"], [layout-align-gt-lg="center start"], [layout-align-gt-lg="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-gt-lg="end"], [layout-align-gt-lg="end center"], [layout-align-gt-lg="end start"], [layout-align-gt-lg="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-gt-lg="space-around"], [layout-align-gt-lg="space-around center"], [layout-align-gt-lg="space-around start"], [layout-align-gt-lg="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-gt-lg="space-between"], [layout-align-gt-lg="space-between center"], [layout-align-gt-lg="space-between start"], [layout-align-gt-lg="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-gt-lg="center center"], [layout-align-gt-lg="start center"], [layout-align-gt-lg="end center"], [layout-align-gt-lg="space-between center"], [layout-align-gt-lg="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-gt-lg="center start"], [layout-align-gt-lg="start start"], [layout-align-gt-lg="end start"], [layout-align-gt-lg="space-between start"], [layout-align-gt-lg="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-gt-lg="center end"], [layout-align-gt-lg="start end"], [layout-align-gt-lg="end end"], [layout-align-gt-lg="space-between end"], [layout-align-gt-lg="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-gt-lg] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-gt-lg=column] { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } - [block-lg] { - display: block; } + [layout-gt-lg=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } - [inline-block-lg] { - display: inline-block; } + [flex-gt-lg] { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; } - [show-lg] { - display: inherit; } + [flex-gt-lg="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } - [hide-lg] { - display: none; } + [layout="row"] > [flex-gt-lg="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-lg="0"] { + max-height: 0%; } + + [flex-gt-lg="5"] { + -webkit-flex: 0 0 5%; + -ms-flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-lg="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-lg="5"] { + max-height: 5%; } + + [flex-gt-lg="10"] { + -webkit-flex: 0 0 10%; + -ms-flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-lg="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-lg="10"] { + max-height: 10%; } + + [flex-gt-lg="15"] { + -webkit-flex: 0 0 15%; + -ms-flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-lg="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-lg="15"] { + max-height: 15%; } + + [flex-gt-lg="20"] { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-lg="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-lg="20"] { + max-height: 20%; } + + [flex-gt-lg="25"] { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-lg="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-lg="25"] { + max-height: 25%; } + + [flex-gt-lg="30"] { + -webkit-flex: 0 0 30%; + -ms-flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-lg="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-lg="30"] { + max-height: 30%; } + + [flex-gt-lg="35"] { + -webkit-flex: 0 0 35%; + -ms-flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-lg="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-lg="35"] { + max-height: 35%; } + + [flex-gt-lg="40"] { + -webkit-flex: 0 0 40%; + -ms-flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-lg="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-lg="40"] { + max-height: 40%; } + + [flex-gt-lg="45"] { + -webkit-flex: 0 0 45%; + -ms-flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-lg="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-lg="45"] { + max-height: 45%; } + + [flex-gt-lg="50"] { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-lg="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-lg="50"] { + max-height: 50%; } + + [flex-gt-lg="55"] { + -webkit-flex: 0 0 55%; + -ms-flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-lg="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-lg="55"] { + max-height: 55%; } + + [flex-gt-lg="60"] { + -webkit-flex: 0 0 60%; + -ms-flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-lg="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-lg="60"] { + max-height: 60%; } + + [flex-gt-lg="65"] { + -webkit-flex: 0 0 65%; + -ms-flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-lg="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-lg="65"] { + max-height: 65%; } + + [flex-gt-lg="70"] { + -webkit-flex: 0 0 70%; + -ms-flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-lg="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-lg="70"] { + max-height: 70%; } + + [flex-gt-lg="75"] { + -webkit-flex: 0 0 75%; + -ms-flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-lg="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-lg="75"] { + max-height: 75%; } + + [flex-gt-lg="80"] { + -webkit-flex: 0 0 80%; + -ms-flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-lg="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-lg="80"] { + max-height: 80%; } + + [flex-gt-lg="85"] { + -webkit-flex: 0 0 85%; + -ms-flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-lg="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-lg="85"] { + max-height: 85%; } + + [flex-gt-lg="90"] { + -webkit-flex: 0 0 90%; + -ms-flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-lg="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-lg="90"] { + max-height: 90%; } + + [flex-gt-lg="95"] { + -webkit-flex: 0 0 95%; + -ms-flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-lg="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-lg="95"] { + max-height: 95%; } + + [flex-gt-lg="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-lg="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-lg="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-lg="33"], [layout="row"] > [flex-gt-lg="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-lg="66"], [layout="row"] > [flex-gt-lg="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-lg="33"], [layout="column"] > [flex-gt-lg="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-lg="66"], [layout="column"] > [flex-gt-lg="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } } md-backdrop { - z-index: 7; + z-index: 50; background-color: rgba(0, 0, 0, 0); position: fixed; left: 0; top: 0; right: 0; - bottom: 0; - transition: all 0.2s ease-out; } + bottom: 0; } + md-backdrop.md-dialog-backdrop { + z-index: 79; } + md-backdrop.md-bottom-sheet-backdrop { + z-index: 69; } + md-backdrop.md-sidenav-backdrop { + z-index: 59; } md-backdrop.ng-enter { - transition-delay: 0.1s; } - md-backdrop.ng-enter, md-backdrop.ng-leave.ng-leave-active { + -webkit-animation: cubic-bezier(0.25, 0.8, 0.25, 1) mdBackdropFadeIn 0.5s both; + animation: cubic-bezier(0.25, 0.8, 0.25, 1) mdBackdropFadeIn 0.5s both; } + md-backdrop.ng-leave { + -webkit-animation: cubic-bezier(0.55, 0, 0.55, 0.2) mdBackdropFadeOut 0.2s both; + animation: cubic-bezier(0.55, 0, 0.55, 0.2) mdBackdropFadeOut 0.2s both; } + +@-webkit-keyframes mdBackdropFadeIn { + from { opacity: 0; } - md-backdrop.ng-leave, md-backdrop.ng-enter.ng-enter-active { + + to { + opacity: 1; } } + +@keyframes mdBackdropFadeIn { + from { + opacity: 0; } + + to { + opacity: 1; } } + +@-webkit-keyframes mdBackdropFadeOut { + from { opacity: 1; } -@-webkit-keyframes inkRippleButton { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 0.15; } - - 50% { - -webkit-transform: scale(0.75); - transform: scale(0.75); - opacity: 0.15; } - - 100% { - -webkit-transform: scale(2); - transform: scale(2); + to { opacity: 0; } } -@keyframes inkRippleButton { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 0.15; } +@keyframes mdBackdropFadeOut { + from { + opacity: 1; } - 50% { - -webkit-transform: scale(0.75); - transform: scale(0.75); - opacity: 0.15; } - - 100% { - -webkit-transform: scale(2); - transform: scale(2); + to { opacity: 0; } } -@-webkit-keyframes inkRippleCheckbox { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 0.4; } - - 50% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0.4; } - - 100% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0; } } - -@keyframes inkRippleCheckbox { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 0.4; } - - 50% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0.4; } - - 100% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0; } } - -/* - * A container inside of a rippling element (eg a button), - * which contains all of the individual ripples - */ -.md-ripple-container { - pointer-events: none; - position: absolute; - overflow: hidden; - left: 0; - top: 0; - width: 100%; - height: 100%; } - -.md-ripple { - position: absolute; } - md-bottom-sheet { - position: fixed; + position: absolute; left: 0; right: 0; bottom: 0; padding: 8px 16px 88px 16px; - z-index: 8; + z-index: 70; border-top: 1px solid; -webkit-transform: translate3d(0, 80px, 0); transform: translate3d(0, 80px, 0); - transition: 0.2s linear; + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); transition-property: -webkit-transform; transition-property: transform; } md-bottom-sheet.md-has-header { @@ -1324,10 +2810,11 @@ md-bottom-sheet { transform: translate3d(0, 80px, 0) !important; } md-bottom-sheet.ng-leave-active { -webkit-transform: translate3d(0, 100%, 0) !important; - transform: translate3d(0, 100%, 0) !important; } + transform: translate3d(0, 100%, 0) !important; + transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); } md-bottom-sheet .md-subheader { background-color: transparent; - font-family: 'RobotoDraft', 'Helvetica Neue', Helvetica, Arial; + font-family: RobotoDraft, Roboto, 'Helvetica Neue', sans-serif; line-height: 56px; padding: 0; white-space: nowrap; } @@ -1366,7 +2853,10 @@ md-bottom-sheet { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; - transition: all 0.5s; } + transition: all 0.5s; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } md-bottom-sheet.md-grid md-item { -webkit-flex-direction: column; -ms-flex-direction: column; @@ -1375,7 +2865,7 @@ md-bottom-sheet { -ms-flex-align: center; align-items: center; transition: all 0.5s; - height: 80px; + height: 96px; margin-top: 8px; margin-bottom: 8px; /* Mixin for how many grid items to show per row */ } @@ -1421,84 +2911,77 @@ md-bottom-sheet { -webkit-align-items: center; -ms-flex-align: center; align-items: center; - width: 48px; } + width: 48px; + padding-bottom: 16px; } + md-bottom-sheet.md-grid md-item .md-grid-item-content { + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; + width: 80px; } md-bottom-sheet.md-grid md-item .md-icon-container { display: inline-block; box-sizing: border-box; height: 48px; width: 48px; - margin: 8px 0; } + margin: 0 0; } md-bottom-sheet.md-grid md-item p.md-grid-text { font-weight: 300; line-height: 16px; font-size: 13px; margin: 0; white-space: nowrap; - width: 48px; - text-align: center; } + width: 64px; + text-align: center; + padding-top: 8px; } /** * Position a FAB button. */ -md-button { +.md-button { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; position: relative; - display: inline-block; outline: none; border: 0; - padding: 0; + padding: 6px; margin: 0; + background: transparent; + white-space: nowrap; text-align: center; text-transform: uppercase; - font-weight: inherit; + font-weight: 500; font-style: inherit; font-variant: inherit; font-size: inherit; font-family: inherit; line-height: inherit; + text-decoration: none; cursor: pointer; - overflow: hidden; } - md-button .md-button-inner { - display: block; - left: 0; - top: 0; - width: 100%; - height: 100%; - background: transparent; - border: none; - color: inherit; - outline: none; - text-transform: inherit; - font-weight: inherit; - font-style: inherit; - font-variant: inherit; - font-size: inherit; - font-family: inherit; - line-height: inherit; - white-space: nowrap; - padding: 6px; } - md-button a { - text-decoration: none; } - md-button[href] { - pointer-events: none; } - md-button[href] .md-button-inner { - pointer-events: auto; } - md-button.md-cornered { + overflow: hidden; + transition: box-shadow 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), -webkit-transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); + transition: box-shadow 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); } + .md-button:focus { + outline: none; } + .md-button.ng-hide { + transition: none; } + .md-button.md-cornered { border-radius: 0; } - md-button.md-icon { + .md-button.md-icon { padding: 0; background: none; } - md-button.md-raised { - transition: 0.2s linear; - transition-property: box-shadow, -webkit-transform, background-color; - transition-property: box-shadow, transform, background-color; + .md-button.md-raised { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } - md-button.md-fab { - z-index: 2; + .md-button.md-fab { + z-index: 20; width: 56px; height: 56px; border-radius: 50%; @@ -1509,47 +2992,55 @@ md-button { transition: 0.2s linear; transition-property: -webkit-transform, box-shadow; transition-property: transform, box-shadow; } - md-button.md-fab.md-fab-bottom-right { + .md-button.md-fab.md-fab-bottom-right { top: auto; - right: 28px; - bottom: 28px; + right: 20px; + bottom: 20px; left: auto; position: absolute; } - md-button.md-fab.md-fab-bottom-left { + .md-button.md-fab.md-fab-bottom-left { top: auto; right: auto; - bottom: 28px; - left: 28px; + bottom: 20px; + left: 20px; position: absolute; } - md-button.md-fab.md-fab-top-right { - top: 28px; - right: 28px; + .md-button.md-fab.md-fab-top-right { + top: 20px; + right: 20px; bottom: auto; left: auto; position: absolute; } - md-button.md-fab.md-fab-top-left { - top: 28px; + .md-button.md-fab.md-fab-top-left { + top: 20px; right: auto; bottom: auto; - left: 28px; + left: 20px; position: absolute; } - md-button:not([disabled]).md-raised.focus, md-button:not([disabled]).md-raised:hover, md-button:not([disabled]).md-fab.focus, md-button:not([disabled]).md-fab:hover { + .md-button.md-fab md-icon { + line-height: 56px; + margin-top: 0; } + .md-button.md-fab.md-mini { + width: 40px; + height: 40px; } + .md-button.md-fab.md-mini md-icon { + line-height: 40px; } + .md-button:not([disabled]).md-raised:focus, .md-button:not([disabled]).md-raised:hover, .md-button:not([disabled]).md-fab:focus, .md-button:not([disabled]).md-fab:hover { -webkit-transform: translate3d(0, -1px, 0); transform: translate3d(0, -1px, 0); } -.md-toast-open-top md-button.md-fab-top-left, .md-toast-open-top md-button.md-fab-top-right { - -webkit-transform: translate3d(0, 32px, 0); - transform: translate3d(0, 32px, 0); } - .md-toast-open-top md-button.md-fab-top-left.focus, .md-toast-open-top md-button.md-fab-top-left:hover:not([disabled]), .md-toast-open-top md-button.md-fab-top-right.focus, .md-toast-open-top md-button.md-fab-top-right:hover:not([disabled]) { - -webkit-transform: translate3d(0, 31px, 0); - transform: translate3d(0, 31px, 0); } +.md-toast-open-top .md-button.md-fab-top-left, .md-toast-open-top .md-button.md-fab-top-right { + -webkit-transform: translate3d(0, 42px, 0); + transform: translate3d(0, 42px, 0); } + .md-toast-open-top .md-button.md-fab-top-left:not([disabled]):focus, .md-toast-open-top .md-button.md-fab-top-left:not([disabled]):hover, .md-toast-open-top .md-button.md-fab-top-right:not([disabled]):focus, .md-toast-open-top .md-button.md-fab-top-right:not([disabled]):hover { + -webkit-transform: translate3d(0, 41px, 0); + transform: translate3d(0, 41px, 0); } -.md-toast-open-bottom md-button.md-fab-bottom-left, .md-toast-open-bottom md-button.md-fab-bottom-right { - -webkit-transform: translate3d(0, -32px, 0); - transform: translate3d(0, -32px, 0); } - .md-toast-open-bottom md-button.md-fab-bottom-left.focus, .md-toast-open-bottom md-button.md-fab-bottom-left:hover, .md-toast-open-bottom md-button.md-fab-bottom-right.focus, .md-toast-open-bottom md-button.md-fab-bottom-right:hover { - -webkit-transform: translate3d(0, -33px, 0); - transform: translate3d(0, -33px, 0); } +.md-toast-open-bottom .md-button.md-fab-bottom-left, .md-toast-open-bottom .md-button.md-fab-bottom-right { + -webkit-transform: translate3d(0, -42px, 0); + transform: translate3d(0, -42px, 0); } + .md-toast-open-bottom .md-button.md-fab-bottom-left:not([disabled]):focus, .md-toast-open-bottom .md-button.md-fab-bottom-left:not([disabled]):hover, .md-toast-open-bottom .md-button.md-fab-bottom-right:not([disabled]):focus, .md-toast-open-bottom .md-button.md-fab-bottom-right:not([disabled]):hover { + -webkit-transform: translate3d(0, -43px, 0); + transform: translate3d(0, -43px, 0); } .md-button-group { display: -webkit-flex; @@ -1579,34 +3070,58 @@ md-button { border-radius: 0px 2px 2px 0px; } md-card { - display: block; box-sizing: border-box; - box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26); + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; margin: 8px; - padding: 8px; } - md-card .md-card-image { - display: block; + box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26); } + md-card > img, md-card :not(md-card-content) img { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; width: 100%; } + md-card md-card-content { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; + padding: 16px; } md-checkbox { display: block; margin: 15px; white-space: nowrap; cursor: pointer; - outline: none; } + outline: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } md-checkbox .md-container { position: relative; top: 4px; display: inline-block; width: 18px; height: 18px; } + md-checkbox .md-container:after { + content: ''; + position: absolute; + top: -10px; + right: -10px; + bottom: -10px; + left: -10px; } md-checkbox .md-container .md-ripple-container { position: absolute; display: block; - width: 54px; - height: 54px; - left: -18px; - top: -18px; } + width: auto; + height: auto; + left: -15px; + top: -15px; + right: -15px; + bottom: -15px; } md-checkbox .md-icon { transition: 240ms; position: absolute; @@ -1620,7 +3135,7 @@ md-checkbox { border: none; } md-checkbox[disabled] { cursor: no-drop; } - md-checkbox:focus .md-label { + md-checkbox:focus .md-label:not(:empty) { border-color: black; } md-checkbox.md-checked .md-icon:after { -webkit-transform: rotate(45deg); @@ -1642,17 +3157,21 @@ md-checkbox { margin-left: 10px; vertical-align: middle; white-space: normal; - pointer-events: none; } + pointer-events: none; + -webkit-user-select: text; + -moz-user-select: text; + -ms-user-select: text; + user-select: text; } md-content { display: block; position: relative; overflow: auto; -webkit-overflow-scrolling: touch; } - md-content[scroll-y] { + md-content[md-scroll-y] { overflow-y: auto; overflow-x: hidden; } - md-content[scroll-x] { + md-content[md-scroll-x] { overflow-x: auto; overflow-y: hidden; } md-content.md-padding { @@ -1673,28 +3192,20 @@ md-content { -webkit-align-items: center; -ms-flex-align: center; align-items: center; - position: fixed; - left: 0; + position: absolute; top: 0; - right: 0; - bottom: 0; - z-index: 10; } - .md-dialog-container.md-active { - transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); - -webkit-transform: translate3d(0, 0, 0) scale(1); - transform: translate3d(0, 0, 0) scale(1); - opacity: 1; } - .md-dialog-container.ng-leave.ng-leave-active { - -webkit-transform: translate3d(0, 100%, 0) scale(0.5); - transform: translate3d(0, 100%, 0) scale(0.5); - opacity: 0; } + left: 0; + width: 100%; + height: 100%; + z-index: 80; } md-dialog { + opacity: 0; min-width: 240px; max-width: 80%; max-height: 80%; - margin: auto; position: relative; + overflow: hidden; box-shadow: 0px 27px 24px 0 rgba(0, 0, 0, 0.2); display: -webkit-flex; display: -ms-flexbox; @@ -1702,6 +3213,15 @@ md-dialog { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } + md-dialog.transition-in { + opacity: 1; + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); + -webkit-transform: translate3d(0, 0, 0) scale(1); + transform: translate3d(0, 0, 0) scale(1); } + md-dialog.transition-out { + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); + -webkit-transform: translate3d(0, 100%, 0) scale(0.2); + transform: translate3d(0, 100%, 0) scale(0.2); } md-dialog md-content { -webkit-order: 1; -ms-flex-order: 1; @@ -1709,7 +3229,7 @@ md-dialog { padding: 24px; overflow: auto; -webkit-overflow-scrolling: touch; } - md-dialog md-content *:first-child { + md-dialog md-content:not([layout=row]) > *:first-child { margin-top: 0px; } md-dialog .md-actions { display: -webkit-flex; @@ -1736,7 +3256,7 @@ md-divider { display: block; border-top: 1px solid; margin: 0; } - md-divider[inset] { + md-divider[md-inset] { margin-left: 80px; } md-icon { @@ -1745,12 +3265,126 @@ md-icon { display: inline-block; margin-top: 5px; background-repeat: no-repeat no-repeat; - pointer-events: none; } + pointer-events: none; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + z-index: 0; } + md-icon object.md-icon { + display: inline-block; } svg, object { fill: currentColor; color: currentColor; } +md-input-container { + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + position: relative; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + padding: 2px; + padding-bottom: 26px; + /* + * The .md-input class is added to the input/textarea + */ } + md-input-container textarea, md-input-container input[type="text"], md-input-container input[type="password"], md-input-container input[type="datetime"], md-input-container input[type="datetime-local"], md-input-container input[type="date"], md-input-container input[type="month"], md-input-container input[type="time"], md-input-container input[type="week"], md-input-container input[type="number"], md-input-container input[type="email"], md-input-container input[type="url"], md-input-container input[type="search"], md-input-container input[type="tel"], md-input-container input[type="color"] { + /* remove default appearance from all input/textarea */ + -moz-appearance: none; + -webkit-appearance: none; } + md-input-container textarea { + resize: none; + overflow: hidden; } + md-input-container label, md-input-container .md-placeholder { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; + pointer-events: none; + -webkit-font-smoothing: antialiased; + padding-left: 2px; + z-index: 1; + -webkit-transform: translate3d(0, 24px, 0) scale(1); + transform: translate3d(0, 24px, 0) scale(1); + -webkit-transform-origin: left top; + transform-origin: left top; + transition: -webkit-transform cubic-bezier(0.25, 0.8, 0.25, 1) 0.25s; + transition: transform cubic-bezier(0.25, 0.8, 0.25, 1) 0.25s; } + md-input-container .md-placeholder { + position: absolute; + top: 0; + opacity: 0; + transition-property: opacity, -webkit-transform; + transition-property: opacity, transform; + -webkit-transform: translate3d(0, 30px, 0); + transform: translate3d(0, 30px, 0); } + md-input-container.md-input-focused .md-placeholder { + opacity: 1; + -webkit-transform: translate3d(0, 24px, 0); + transform: translate3d(0, 24px, 0); } + md-input-container.md-input-has-value .md-placeholder { + transition: none; + opacity: 0; } + md-input-container .md-input { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; + display: block; + background: none; + padding-top: 2px; + padding-bottom: 1px; + padding-left: 2px; + padding-right: 2px; + border-width: 0 0 1px 0; + line-height: 26px; + -ms-flex-preferred-size: 26px; + border-radius: 0; } + md-input-container .md-input:focus { + outline: none; } + md-input-container .md-input:invalid { + outline: none; + box-shadow: none; } + md-input-container ng-messages, md-input-container data-ng-messages, md-input-container x-ng-messages, md-input-container [ng-messages], md-input-container [data-ng-messages], md-input-container [x-ng-messages] { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; + position: relative; } + md-input-container ng-message, md-input-container data-ng-message, md-input-container x-ng-message, md-input-container [ng-message], md-input-container [data-ng-message], md-input-container [x-ng-message], md-input-container .md-char-counter { + -webkit-font-smoothing: antialiased; + position: absolute; + font-size: 12px; + line-height: 24px; } + md-input-container ng-message.ng-enter, md-input-container data-ng-message.ng-enter, md-input-container x-ng-message.ng-enter, md-input-container [ng-message].ng-enter, md-input-container [data-ng-message].ng-enter, md-input-container [x-ng-message].ng-enter, md-input-container .md-char-counter.ng-enter { + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); + transition-delay: 0.2s; } + md-input-container ng-message.ng-leave, md-input-container data-ng-message.ng-leave, md-input-container x-ng-message.ng-leave, md-input-container [ng-message].ng-leave, md-input-container [data-ng-message].ng-leave, md-input-container [x-ng-message].ng-leave, md-input-container .md-char-counter.ng-leave { + transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); } + md-input-container ng-message.ng-enter, md-input-container ng-message.ng-leave.ng-leave-active, md-input-container data-ng-message.ng-enter, md-input-container data-ng-message.ng-leave.ng-leave-active, md-input-container x-ng-message.ng-enter, md-input-container x-ng-message.ng-leave.ng-leave-active, md-input-container [ng-message].ng-enter, md-input-container [ng-message].ng-leave.ng-leave-active, md-input-container [data-ng-message].ng-enter, md-input-container [data-ng-message].ng-leave.ng-leave-active, md-input-container [x-ng-message].ng-enter, md-input-container [x-ng-message].ng-leave.ng-leave-active, md-input-container .md-char-counter.ng-enter, md-input-container .md-char-counter.ng-leave.ng-leave-active { + opacity: 0; + -webkit-transform: translate3d(0, -20%, 0); + transform: translate3d(0, -20%, 0); } + md-input-container ng-message.ng-leave, md-input-container ng-message.ng-enter.ng-enter-active, md-input-container data-ng-message.ng-leave, md-input-container data-ng-message.ng-enter.ng-enter-active, md-input-container x-ng-message.ng-leave, md-input-container x-ng-message.ng-enter.ng-enter-active, md-input-container [ng-message].ng-leave, md-input-container [ng-message].ng-enter.ng-enter-active, md-input-container [data-ng-message].ng-leave, md-input-container [data-ng-message].ng-enter.ng-enter-active, md-input-container [x-ng-message].ng-leave, md-input-container [x-ng-message].ng-enter.ng-enter-active, md-input-container .md-char-counter.ng-leave, md-input-container .md-char-counter.ng-enter.ng-enter-active { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); } + md-input-container .md-char-counter { + bottom: 2px; + right: 2px; } + md-input-container.md-input-focused label, md-input-container.md-input-has-value label { + -webkit-transform: translate3d(0, 4px, 0) scale(0.75); + transform: translate3d(0, 4px, 0) scale(0.75); } + md-input-container.md-input-focused .md-input, md-input-container .md-input.ng-invalid.ng-dirty { + padding-bottom: 0px; + border-width: 0 0 2px 0; } + md-input-container .md-input[disabled] { + background-position: 0 bottom; + background-size: 3px 1px; + background-repeat: repeat-x; } + md-list { padding: 8px 0px 8px 0px; } @@ -1802,181 +3436,1395 @@ md-item-content { .md-tile-right { padding-right: 0px; } +@-webkit-keyframes outer-rotate { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@keyframes outer-rotate { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@-webkit-keyframes left-wobble { + 0%, 100% { + -webkit-transform: rotate(130deg); + transform: rotate(130deg); } + + 50% { + -webkit-transform: rotate(-5deg); + transform: rotate(-5deg); } } + +@keyframes left-wobble { + 0%, 100% { + -webkit-transform: rotate(130deg); + transform: rotate(130deg); } + + 50% { + -webkit-transform: rotate(-5deg); + transform: rotate(-5deg); } } + +@-webkit-keyframes right-wobble { + 0%, 100% { + -webkit-transform: rotate(-130deg); + transform: rotate(-130deg); } + + 50% { + -webkit-transform: rotate(5deg); + transform: rotate(5deg); } } + +@keyframes right-wobble { + 0%, 100% { + -webkit-transform: rotate(-130deg); + transform: rotate(-130deg); } + + 50% { + -webkit-transform: rotate(5deg); + transform: rotate(5deg); } } + +@-webkit-keyframes sporadic-rotate { + 12.5% { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + + 25% { + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + + 37.5% { + -webkit-transform: rotate(405deg); + transform: rotate(405deg); } + + 50% { + -webkit-transform: rotate(540deg); + transform: rotate(540deg); } + + 62.5% { + -webkit-transform: rotate(675deg); + transform: rotate(675deg); } + + 75% { + -webkit-transform: rotate(810deg); + transform: rotate(810deg); } + + 87.5% { + -webkit-transform: rotate(945deg); + transform: rotate(945deg); } + + 100% { + -webkit-transform: rotate(1080deg); + transform: rotate(1080deg); } } + +@keyframes sporadic-rotate { + 12.5% { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + + 25% { + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + + 37.5% { + -webkit-transform: rotate(405deg); + transform: rotate(405deg); } + + 50% { + -webkit-transform: rotate(540deg); + transform: rotate(540deg); } + + 62.5% { + -webkit-transform: rotate(675deg); + transform: rotate(675deg); } + + 75% { + -webkit-transform: rotate(810deg); + transform: rotate(810deg); } + + 87.5% { + -webkit-transform: rotate(945deg); + transform: rotate(945deg); } + + 100% { + -webkit-transform: rotate(1080deg); + transform: rotate(1080deg); } } + md-progress-circular { + width: 50px; + height: 50px; display: block; - width: 54px; - height: 54px; - border-radius: 50%; - padding: 3px; } - md-progress-circular .md-wrapper1, md-progress-circular .md-wrapper2 { - width: 48px; - height: 48px; - position: absolute; - border-radius: 50%; } - md-progress-circular .md-circle .md-mask, md-progress-circular .md-circle .md-fill, md-progress-circular .md-circle .md-shadow { - width: 48px; - height: 48px; - position: absolute; - border-radius: 50%; } - md-progress-circular .md-circle .md-mask, md-progress-circular .md-circle .md-fill { - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; } - md-progress-circular .md-circle .md-mask { - clip: rect(0px, 48px, 48px, 24px); } - md-progress-circular .md-circle .md-mask .md-fill { - clip: rect(0px, 24px, 48px, 0px); } - md-progress-circular .md-inset { - width: 36px; - height: 36px; - position: absolute; - margin-left: 6px; - margin-top: 6px; - border-radius: 50%; } - md-progress-circular[mode=indeterminate] .md-wrapper1, md-progress-circular[mode=indeterminate] .md-wrapper2 { - -webkit-transform-origin: 50% 50%; - transform-origin: 50% 50%; } - md-progress-circular[mode=indeterminate] .md-wrapper1 { - -webkit-animation: indeterminate_rotate1 3s infinite linear; - animation: indeterminate_rotate1 3s infinite linear; } - md-progress-circular[mode=indeterminate] .md-wrapper2 { - -webkit-animation: indeterminate_rotate2 1.5s infinite linear; - animation: indeterminate_rotate2 1.5s infinite linear; } - md-progress-circular[mode=indeterminate] .md-fill, md-progress-circular[mode=indeterminate] .md-mask.md-full { - -webkit-animation: indeterminate_size_fill 1.5s infinite linear; - animation: indeterminate_size_fill 1.5s infinite linear; } - md-progress-circular[mode=indeterminate] .md-fill.md-fix { - -webkit-animation: indeterminate_size_fix 1.5s infinite linear; - animation: indeterminate_size_fix 1.5s infinite linear; } - -@-webkit-keyframes indeterminate_rotate1 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -@keyframes indeterminate_rotate1 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -@-webkit-keyframes indeterminate_rotate2 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 70% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -@keyframes indeterminate_rotate2 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 70% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -@-webkit-keyframes indeterminate_size_fill { - 0% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } - - 10% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } - - 50% { + position: relative; + padding-top: 0 !important; + margin-bottom: 0 !important; + overflow: hidden; } + md-progress-circular .md-inner { + width: 50px; + height: 50px; + position: relative; } + md-progress-circular .md-inner .md-gap { + position: absolute; + left: 24px; + right: 24px; + top: 0; + bottom: 0; + border-top: 5px solid black; + box-sizing: border-box; } + md-progress-circular .md-inner .md-left, md-progress-circular .md-inner .md-right { + position: absolute; + top: 0; + height: 50px; + width: 25px; + overflow: hidden; } + md-progress-circular .md-inner .md-left .md-half-circle, md-progress-circular .md-inner .md-right .md-half-circle { + position: absolute; + top: 0; + width: 50px; + height: 50px; + box-sizing: border-box; + border-width: 5px; + border-style: solid; + border-color: black black transparent; + border-radius: 50%; } + md-progress-circular .md-inner .md-left { + left: 0; } + md-progress-circular .md-inner .md-left .md-half-circle { + left: 0; + border-right-color: transparent; } + md-progress-circular .md-inner .md-right { + right: 0; } + md-progress-circular .md-inner .md-right .md-half-circle { + right: 0; + border-left-color: transparent; } + md-progress-circular[value="0"] .md-inner .md-left .md-half-circle { -webkit-transform: rotate(135deg); transform: rotate(135deg); } - - 70% { + md-progress-circular[value="0"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-135deg); + transform: rotate(-135deg); } + md-progress-circular[value="0"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="1"] .md-inner .md-left .md-half-circle { -webkit-transform: rotate(135deg); transform: rotate(135deg); } - - 100% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } } - -@keyframes indeterminate_size_fill { - 0% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } - - 10% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } - - 50% { + md-progress-circular[value="1"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-131.4deg); + transform: rotate(-131.4deg); } + md-progress-circular[value="1"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="2"] .md-inner .md-left .md-half-circle { -webkit-transform: rotate(135deg); transform: rotate(135deg); } - - 70% { + md-progress-circular[value="2"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-127.8deg); + transform: rotate(-127.8deg); } + md-progress-circular[value="2"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="3"] .md-inner .md-left .md-half-circle { -webkit-transform: rotate(135deg); transform: rotate(135deg); } - - 100% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } } - -@-webkit-keyframes indeterminate_size_fix { - 0% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } - - 10% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } - - 50% { - -webkit-transform: rotate(270deg); - transform: rotate(270deg); } - - 70% { - -webkit-transform: rotate(270deg); - transform: rotate(270deg); } - - 100% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } } - -@keyframes indeterminate_size_fix { - 0% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } - - 10% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } - - 50% { - -webkit-transform: rotate(270deg); - transform: rotate(270deg); } - - 70% { - -webkit-transform: rotate(270deg); - transform: rotate(270deg); } - - 100% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } } + md-progress-circular[value="3"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-124.2deg); + transform: rotate(-124.2deg); } + md-progress-circular[value="3"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="4"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="4"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-120.6deg); + transform: rotate(-120.6deg); } + md-progress-circular[value="4"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="5"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="5"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-117deg); + transform: rotate(-117deg); } + md-progress-circular[value="5"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="6"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="6"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-113.4deg); + transform: rotate(-113.4deg); } + md-progress-circular[value="6"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="7"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="7"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-109.8deg); + transform: rotate(-109.8deg); } + md-progress-circular[value="7"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="8"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="8"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-106.2deg); + transform: rotate(-106.2deg); } + md-progress-circular[value="8"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="9"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="9"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-102.6deg); + transform: rotate(-102.6deg); } + md-progress-circular[value="9"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="10"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="10"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-99deg); + transform: rotate(-99deg); } + md-progress-circular[value="10"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="11"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="11"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-95.4deg); + transform: rotate(-95.4deg); } + md-progress-circular[value="11"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="12"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="12"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-91.8deg); + transform: rotate(-91.8deg); } + md-progress-circular[value="12"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="13"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="13"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-88.2deg); + transform: rotate(-88.2deg); } + md-progress-circular[value="13"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="14"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="14"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-84.6deg); + transform: rotate(-84.6deg); } + md-progress-circular[value="14"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="15"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="15"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-81deg); + transform: rotate(-81deg); } + md-progress-circular[value="15"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="16"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="16"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-77.4deg); + transform: rotate(-77.4deg); } + md-progress-circular[value="16"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="17"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="17"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-73.8deg); + transform: rotate(-73.8deg); } + md-progress-circular[value="17"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="18"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="18"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-70.2deg); + transform: rotate(-70.2deg); } + md-progress-circular[value="18"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="19"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="19"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-66.6deg); + transform: rotate(-66.6deg); } + md-progress-circular[value="19"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="20"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="20"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-63deg); + transform: rotate(-63deg); } + md-progress-circular[value="20"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="21"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="21"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-59.4deg); + transform: rotate(-59.4deg); } + md-progress-circular[value="21"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="22"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="22"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-55.8deg); + transform: rotate(-55.8deg); } + md-progress-circular[value="22"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="23"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="23"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-52.2deg); + transform: rotate(-52.2deg); } + md-progress-circular[value="23"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="24"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="24"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-48.6deg); + transform: rotate(-48.6deg); } + md-progress-circular[value="24"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="25"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="25"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); } + md-progress-circular[value="25"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="26"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="26"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-41.4deg); + transform: rotate(-41.4deg); } + md-progress-circular[value="26"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="27"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="27"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-37.8deg); + transform: rotate(-37.8deg); } + md-progress-circular[value="27"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="28"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="28"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-34.2deg); + transform: rotate(-34.2deg); } + md-progress-circular[value="28"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="29"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="29"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-30.6deg); + transform: rotate(-30.6deg); } + md-progress-circular[value="29"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="30"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="30"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-27deg); + transform: rotate(-27deg); } + md-progress-circular[value="30"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="31"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="31"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-23.4deg); + transform: rotate(-23.4deg); } + md-progress-circular[value="31"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="32"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="32"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-19.8deg); + transform: rotate(-19.8deg); } + md-progress-circular[value="32"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="33"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="33"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-16.2deg); + transform: rotate(-16.2deg); } + md-progress-circular[value="33"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="34"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="34"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-12.6deg); + transform: rotate(-12.6deg); } + md-progress-circular[value="34"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="35"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="35"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-9deg); + transform: rotate(-9deg); } + md-progress-circular[value="35"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="36"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="36"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-5.4deg); + transform: rotate(-5.4deg); } + md-progress-circular[value="36"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="37"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="37"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-1.8deg); + transform: rotate(-1.8deg); } + md-progress-circular[value="37"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="38"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="38"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(1.8deg); + transform: rotate(1.8deg); } + md-progress-circular[value="38"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="39"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="39"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(5.4deg); + transform: rotate(5.4deg); } + md-progress-circular[value="39"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="40"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="40"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(9deg); + transform: rotate(9deg); } + md-progress-circular[value="40"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="41"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="41"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(12.6deg); + transform: rotate(12.6deg); } + md-progress-circular[value="41"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="42"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="42"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(16.2deg); + transform: rotate(16.2deg); } + md-progress-circular[value="42"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="43"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="43"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(19.8deg); + transform: rotate(19.8deg); } + md-progress-circular[value="43"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="44"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="44"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(23.4deg); + transform: rotate(23.4deg); } + md-progress-circular[value="44"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="45"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="45"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(27deg); + transform: rotate(27deg); } + md-progress-circular[value="45"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="46"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="46"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(30.6deg); + transform: rotate(30.6deg); } + md-progress-circular[value="46"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="47"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="47"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(34.2deg); + transform: rotate(34.2deg); } + md-progress-circular[value="47"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="48"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="48"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(37.8deg); + transform: rotate(37.8deg); } + md-progress-circular[value="48"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="49"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="49"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(41.4deg); + transform: rotate(41.4deg); } + md-progress-circular[value="49"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="50"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="50"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="50"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="51"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(138.6deg); + transform: rotate(138.6deg); } + md-progress-circular[value="51"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="51"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="52"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(142.2deg); + transform: rotate(142.2deg); } + md-progress-circular[value="52"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="52"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="53"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(145.8deg); + transform: rotate(145.8deg); } + md-progress-circular[value="53"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="53"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="54"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(149.4deg); + transform: rotate(149.4deg); } + md-progress-circular[value="54"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="54"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="55"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(153deg); + transform: rotate(153deg); } + md-progress-circular[value="55"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="55"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="56"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(156.6deg); + transform: rotate(156.6deg); } + md-progress-circular[value="56"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="56"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="57"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(160.2deg); + transform: rotate(160.2deg); } + md-progress-circular[value="57"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="57"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="58"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(163.8deg); + transform: rotate(163.8deg); } + md-progress-circular[value="58"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="58"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="59"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(167.4deg); + transform: rotate(167.4deg); } + md-progress-circular[value="59"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="59"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="60"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(171deg); + transform: rotate(171deg); } + md-progress-circular[value="60"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="60"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="61"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(174.6deg); + transform: rotate(174.6deg); } + md-progress-circular[value="61"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="61"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="62"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(178.2deg); + transform: rotate(178.2deg); } + md-progress-circular[value="62"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="62"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="63"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(181.8deg); + transform: rotate(181.8deg); } + md-progress-circular[value="63"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="63"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="64"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(185.4deg); + transform: rotate(185.4deg); } + md-progress-circular[value="64"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="64"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="65"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(189deg); + transform: rotate(189deg); } + md-progress-circular[value="65"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="65"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="66"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(192.6deg); + transform: rotate(192.6deg); } + md-progress-circular[value="66"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="66"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="67"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(196.2deg); + transform: rotate(196.2deg); } + md-progress-circular[value="67"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="67"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="68"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(199.8deg); + transform: rotate(199.8deg); } + md-progress-circular[value="68"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="68"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="69"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(203.4deg); + transform: rotate(203.4deg); } + md-progress-circular[value="69"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="69"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="70"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(207deg); + transform: rotate(207deg); } + md-progress-circular[value="70"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="70"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="71"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(210.6deg); + transform: rotate(210.6deg); } + md-progress-circular[value="71"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="71"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="72"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(214.2deg); + transform: rotate(214.2deg); } + md-progress-circular[value="72"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="72"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="73"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(217.8deg); + transform: rotate(217.8deg); } + md-progress-circular[value="73"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="73"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="74"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(221.4deg); + transform: rotate(221.4deg); } + md-progress-circular[value="74"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="74"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="75"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(225deg); + transform: rotate(225deg); } + md-progress-circular[value="75"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="75"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="76"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(228.6deg); + transform: rotate(228.6deg); } + md-progress-circular[value="76"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="76"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="77"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(232.2deg); + transform: rotate(232.2deg); } + md-progress-circular[value="77"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="77"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="78"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(235.8deg); + transform: rotate(235.8deg); } + md-progress-circular[value="78"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="78"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="79"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(239.4deg); + transform: rotate(239.4deg); } + md-progress-circular[value="79"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="79"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="80"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(243deg); + transform: rotate(243deg); } + md-progress-circular[value="80"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="80"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="81"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(246.6deg); + transform: rotate(246.6deg); } + md-progress-circular[value="81"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="81"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="82"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(250.2deg); + transform: rotate(250.2deg); } + md-progress-circular[value="82"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="82"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="83"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(253.8deg); + transform: rotate(253.8deg); } + md-progress-circular[value="83"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="83"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="84"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(257.4deg); + transform: rotate(257.4deg); } + md-progress-circular[value="84"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="84"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="85"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(261deg); + transform: rotate(261deg); } + md-progress-circular[value="85"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="85"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="86"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(264.6deg); + transform: rotate(264.6deg); } + md-progress-circular[value="86"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="86"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="87"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(268.2deg); + transform: rotate(268.2deg); } + md-progress-circular[value="87"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="87"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="88"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(271.8deg); + transform: rotate(271.8deg); } + md-progress-circular[value="88"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="88"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="89"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(275.4deg); + transform: rotate(275.4deg); } + md-progress-circular[value="89"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="89"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="90"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(279deg); + transform: rotate(279deg); } + md-progress-circular[value="90"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="90"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="91"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(282.6deg); + transform: rotate(282.6deg); } + md-progress-circular[value="91"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="91"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="92"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(286.2deg); + transform: rotate(286.2deg); } + md-progress-circular[value="92"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="92"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="93"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(289.8deg); + transform: rotate(289.8deg); } + md-progress-circular[value="93"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="93"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="94"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(293.4deg); + transform: rotate(293.4deg); } + md-progress-circular[value="94"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="94"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="95"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(297deg); + transform: rotate(297deg); } + md-progress-circular[value="95"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="95"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="96"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(300.6deg); + transform: rotate(300.6deg); } + md-progress-circular[value="96"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="96"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="97"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(304.2deg); + transform: rotate(304.2deg); } + md-progress-circular[value="97"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="97"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="98"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(307.8deg); + transform: rotate(307.8deg); } + md-progress-circular[value="98"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="98"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="99"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(311.4deg); + transform: rotate(311.4deg); } + md-progress-circular[value="99"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="99"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="100"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(315deg); + transform: rotate(315deg); } + md-progress-circular[value="100"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="100"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper { + -webkit-animation: outer-rotate 2.91667s linear infinite; + animation: outer-rotate 2.91667s linear infinite; } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner { + -webkit-animation: sporadic-rotate 5.25s cubic-bezier(0.35, 0, 0.25, 1) infinite; + animation: sporadic-rotate 5.25s cubic-bezier(0.35, 0, 0.25, 1) infinite; } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle, md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle { + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-duration: 1.3125s; + animation-duration: 1.3125s; + -webkit-animation-timing-function: cubic-bezier(0.35, 0, 0.25, 1); + animation-timing-function: cubic-bezier(0.35, 0, 0.25, 1); } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle { + -webkit-animation-name: left-wobble; + animation-name: left-wobble; } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle { + -webkit-animation-name: right-wobble; + animation-name: right-wobble; } md-progress-linear { display: block; @@ -1999,17 +4847,17 @@ md-progress-linear { width: 100%; } md-progress-linear .md-bar1, md-progress-linear .md-bar2 { transition: all 0.2s linear; } - md-progress-linear[mode=determinate] .md-bar1 { + md-progress-linear[md-mode=determinate] .md-bar1 { display: none; } - md-progress-linear[mode=indeterminate] .md-bar1 { + md-progress-linear[md-mode=indeterminate] .md-bar1 { -webkit-animation: indeterminate1 4s infinite linear; animation: indeterminate1 4s infinite linear; } - md-progress-linear[mode=indeterminate] .md-bar2 { + md-progress-linear[md-mode=indeterminate] .md-bar2 { -webkit-animation: indeterminate2 4s infinite linear; animation: indeterminate2 4s infinite linear; } - md-progress-linear[mode=buffer] .md-container { + md-progress-linear[md-mode=buffer] .md-container { background-color: transparent !important; } - md-progress-linear[mode=buffer] .md-dashed:before { + md-progress-linear[md-mode=buffer] .md-dashed:before { content: ""; display: block; height: 5px; @@ -2021,7 +4869,7 @@ md-progress-linear { background-position: 0px -23px; -webkit-animation: buffer 3s infinite linear; animation: buffer 3s infinite linear; } - md-progress-linear[mode=query] .md-bar2 { + md-progress-linear[md-mode=query] .md-bar2 { -webkit-animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1); animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1); } @@ -2387,6 +5235,7 @@ md-radio-button, .md-switch-thumb { position: relative; display: inline-block; margin-left: 10px; + margin-right: 10px; vertical-align: middle; white-space: normal; pointer-events: none; @@ -2402,27 +5251,59 @@ md-radio-group { md-sidenav { position: absolute; width: 304px; + min-width: 304px; bottom: 0; - z-index: 8; + z-index: 60; background-color: white; - overflow: auto; } + overflow: auto; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; } md-sidenav.md-closed { display: none; } md-sidenav.md-closed-add, md-sidenav.md-closed-remove { - display: block; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; /* this is required as of 1.3x to properly apply all styling in a show/hide animation */ transition: 0s all; } md-sidenav.md-closed-add.md-closed-add-active, md-sidenav.md-closed-remove.md-closed-remove-active { - transition: -webkit-transform 0.3s ease-in-out; - transition: transform 0.3s ease-in-out; } - md-sidenav.md-locked-open, md-sidenav.md-locked-open.md-closed, md-sidenav.md-locked-open.md-closed.md-sidenav-left, md-sidenav.md-locked-open.md-closed, md-sidenav.md-locked-open.md-closed.md-sidenav-right { + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); } + md-sidenav.md-locked-open-add, md-sidenav.md-locked-open-remove { position: static; - display: block; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } + md-sidenav.md-locked-open { + width: 304px; + min-width: 304px; } + md-sidenav.md-locked-open, md-sidenav.md-locked-open.md-closed, md-sidenav.md-locked-open.md-closed.md-sidenav-left, md-sidenav.md-locked-open.md-closed, md-sidenav.md-locked-open.md-closed.md-sidenav-right, md-sidenav.md-locked-open-remove.md-closed { + position: static; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); } + md-sidenav.md-locked-open-remove-active { + transition: width 0.3s cubic-bezier(0.55, 0, 0.55, 0.2), min-width 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); + width: 0; + min-width: 0; } + md-sidenav.md-closed.md-locked-open-add { + width: 0; + min-width: 0; + -webkit-transform: translate3d(0%, 0, 0); + transform: translate3d(0%, 0, 0); } + md-sidenav.md-closed.md-locked-open-add-active { + transition: width 0.3s cubic-bezier(0.55, 0, 0.55, 0.2), min-width 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); + width: 304px; + min-width: 304px; + -webkit-transform: translate3d(0%, 0, 0); + transform: translate3d(0%, 0, 0); } -.md-sidenav-backdrop.locked-open { +.md-sidenav-backdrop.md-locked-open { display: none; } .md-sidenav-left, md-sidenav { @@ -2443,6 +5324,11 @@ md-sidenav { -webkit-transform: translate3d(0%, 0, 0); transform: translate3d(0%, 0, 0); } +@media (max-width: 360px) { + md-sidenav { + width: 85%; } + } + @-webkit-keyframes sliderFocusThumb { 0% { opacity: 0; @@ -2509,6 +5395,7 @@ md-slider { position: absolute; left: 0; top: 0; + right: 0; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); transition: -webkit-transform 0.1s linear; @@ -2612,28 +5499,28 @@ md-slider { opacity: 0; } md-slider:focus { outline: none; } - md-slider.panning .md-thumb-container, md-slider.panning .md-track-fill { + md-slider.dragging .md-thumb-container, md-slider.dragging .md-track-fill { transition: none; } - md-slider:not([discrete]) { + md-slider:not([md-discrete]) { /* Hide the sign and ticks in non-discrete mode */ } - md-slider:not([discrete]) .md-track-ticks, md-slider:not([discrete]) .md-sign { + md-slider:not([md-discrete]) .md-track-ticks, md-slider:not([md-discrete]) .md-sign { display: none; } - md-slider:not([discrete]):not([disabled]):hover .md-thumb { + md-slider:not([md-discrete]):not([disabled]):hover .md-thumb { -webkit-transform: scale(0.6); transform: scale(0.6); } - md-slider:not([discrete]):not([disabled]):focus .md-focus-thumb, md-slider:not([discrete]):not([disabled]).active .md-focus-thumb { + md-slider:not([md-discrete]):not([disabled]):focus .md-focus-thumb, md-slider:not([md-discrete]):not([disabled]).active .md-focus-thumb { display: block; } - md-slider:not([discrete]):not([disabled]):focus .md-focus-ring, md-slider:not([discrete]):not([disabled]).active .md-focus-ring { + md-slider:not([md-discrete]):not([disabled]):focus .md-focus-ring, md-slider:not([md-discrete]):not([disabled]).active .md-focus-ring { -webkit-transform: scale(1); transform: scale(1); } - md-slider:not([discrete]):not([disabled]):focus .md-thumb, md-slider:not([discrete]):not([disabled]).active .md-thumb { + md-slider:not([md-discrete]):not([disabled]):focus .md-thumb, md-slider:not([md-discrete]):not([disabled]).active .md-thumb { -webkit-transform: scale(0.85); transform: scale(0.85); } - md-slider[discrete] { + md-slider[md-discrete] { /* Hide the focus thumb in discrete mode */ } - md-slider[discrete] .md-focus-thumb, md-slider[discrete] .md-focus-ring { + md-slider[md-discrete] .md-focus-thumb, md-slider[md-discrete] .md-focus-ring { display: none; } - md-slider[discrete]:not([disabled]):focus .md-sign, md-slider[discrete]:not([disabled]):focus .md-sign:after, md-slider[discrete]:not([disabled]).active .md-sign, md-slider[discrete]:not([disabled]).active .md-sign:after { + md-slider[md-discrete]:not([disabled]):focus .md-sign, md-slider[md-discrete]:not([disabled]):focus .md-sign:after, md-slider[md-discrete]:not([disabled]).active .md-sign, md-slider[md-discrete]:not([disabled]).active .md-sign:after { opacity: 1; -webkit-transform: translate3d(0, 0, 0) scale(1); transform: translate3d(0, 0, 0) scale(1); } @@ -2648,7 +5535,7 @@ md-slider { display: block; } .md-sticky-clone { - z-index: 1; + z-index: 2; top: 0; left: 0; right: 0; @@ -2708,53 +5595,98 @@ md-slider { top: 0; right: -16px; content: ''; } + .md-subheader:not(.md-sticky-no-effect).md-sticky-clone { + z-index: 2; } .md-subheader:not(.md-sticky-no-effect)[sticky-state="active"] { margin-top: -2px; } .md-subheader:not(.md-sticky-no-effect):not(.md-sticky-clone)[sticky-prev-state="active"]:after { -webkit-animation: subheaderStickyHoverOut 0.3s ease-out both; animation: subheaderStickyHoverOut 0.3s ease-out both; } + .md-subheader .md-subheader-content { + z-index: 1; + position: relative; } md-switch { - display: block; - position: relative; - height: 24px; - margin: 8px; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; - /* used also in _radio-button.scss */ } - md-switch .md-switch-bar { + margin: 15px; + white-space: nowrap; + cursor: pointer; + outline: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } + md-switch .md-container { + cursor: -webkit-grab; + cursor: grab; + width: 36px; + height: 24px; + position: relative; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + margin-right: 8px; } + md-switch:not([disabled]) .md-dragging, md-switch:not([disabled]).md-dragging .md-container { + cursor: -webkit-grabbing; + cursor: grabbing; } + md-switch .md-label { + border-color: transparent; + border-width: 0px; } + md-switch .md-bar { + left: 1px; + width: 34px; + top: 5px; + height: 14px; + border-radius: 8px; + position: absolute; } + md-switch .md-thumb-container { + top: 2px; + left: 0; + width: 16px; position: absolute; - left: 16px; - top: 12px; - width: 32px; - height: 1px; - pointer-events: none; } - md-switch .md-switch-thumb { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + z-index: 1; } + md-switch.md-checked .md-thumb-container { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); } + md-switch .md-thumb { position: absolute; margin: 0; left: 0; top: 0; - outline: none; } - md-switch .md-switch-thumb .md-container { + outline: none; + height: 20px; + width: 20px; + border-radius: 50%; + box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26); } + md-switch .md-thumb .md-ripple-container { position: absolute; - transition: -webkit-transform 0.2s linear; - transition: transform 0.2s linear; - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); } - md-switch .md-switch-thumb.md-checked .md-container { - -webkit-transform: translate3d(48px, 0, 0); - transform: translate3d(48px, 0, 0); } - md-switch .md-switch-thumb .md-label { - margin-left: 72px; } + display: block; + width: auto; + height: auto; + left: -20px; + top: -20px; + right: -20px; + bottom: -20px; } + md-switch:not(.md-dragging) .md-bar, md-switch:not(.md-dragging) .md-thumb-container, md-switch:not(.md-dragging) .md-thumb { + transition: all 0.5s cubic-bezier(0.35, 0, 0.25, 1); + transition-property: -webkit-transform, background-color; + transition-property: transform, background-color; } + md-switch:not(.md-dragging) .md-bar, md-switch:not(.md-dragging) .md-thumb { + transition-delay: 0.05s; } md-tabs { display: block; width: 100%; - font-weight: 500; } + font-weight: 500; + overflow: auto; } .md-header { width: 100%; @@ -2777,6 +5709,8 @@ md-tabs { width: 32px; min-height: 100%; cursor: pointer; + border: none; + background-color: transparent; background-repeat: no-repeat; background-position: center center; position: absolute; @@ -2808,7 +5742,7 @@ md-tabs[center] .md-header:not(.md-paginating) .md-header-items { right: 0; height: 100%; white-space: nowrap; - font-size: 16px; + font-size: 14px; font-weight: 500; text-transform: uppercase; margin: auto; } @@ -2817,67 +5751,102 @@ md-tabs[center] .md-header:not(.md-paginating) .md-header-items { display: -ms-flexbox; display: flex; box-sizing: border-box; - transition: -webkit-transform 0.2s linear; - transition: transform 0.2s linear; + transition: -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1); + transition: transform 0.5s cubic-bezier(0.35, 0, 0.25, 1); -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); - width: 100%; - height: 100%; } + height: 100%; + width: 99999px; } .md-tabs-content { overflow: hidden; - width: 100%; } + width: 100%; + position: relative; } .md-tabs-content .md-tab-content { height: 100%; } + .md-tabs-content .md-tab-content.ng-hide.ng-animate { + display: block !important; } + .md-tabs-content .md-tab-content.ng-animate { + transition: -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1); + transition: transform 0.5s cubic-bezier(0.35, 0, 0.25, 1); + -webkit-transform: translateX(0); + transform: translateX(0); } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-add { + -webkit-transform: translateX(-100%); + transform: translateX(-100%); } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-add.md-transition-rtl { + -webkit-transform: translateX(100%); + transform: translateX(100%); } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-remove { + position: absolute; + -webkit-transform: translateX(100%); + transform: translateX(100%); + top: 0; + left: 0; + right: 0; + bottom: 0; } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-remove.md-transition-rtl { + -webkit-transform: translateX(-100%); + transform: translateX(-100%); } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-remove.ng-hide-remove-active { + -webkit-transform: translateX(0); + transform: translateX(0); } md-tabs-ink-bar { + z-index: 1; + display: none; position: absolute; left: 0; bottom: 0; box-sizing: border-box; - transition: all 0.2s linear; height: 2px; - margin-top: -2px; } + margin-top: -2px; + -webkit-transform: scaleX(1); + transform: scaleX(1); + -webkit-transform-origin: 0 0; + transform-origin: 0 0; } + md-tabs-ink-bar.md-transition-right { + transition: right 0.25s cubic-bezier(0.35, 0, 0.25, 1), left 0.25s cubic-bezier(0.35, 0, 0.25, 1) 0.075s; } + md-tabs-ink-bar.md-transition-left { + transition: right 0.25s cubic-bezier(0.35, 0, 0.25, 1) 0.075s, left 0.25s cubic-bezier(0.35, 0, 0.25, 1); } md-tab { display: -webkit-flex; display: -ms-flexbox; display: flex; - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; - box-sizing: border-box; position: relative; z-index: 0; overflow: hidden; height: 100%; text-align: center; cursor: pointer; - min-width: 96px; - border: 1px dotted transparent; + padding: 20px 24px; + box-sizing: border-box; + transition: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } + md-tab.md-tab-themed { + transition: background 0.35s cubic-bezier(0.35, 0, 0.25, 1), color 0.35s cubic-bezier(0.35, 0, 0.25, 1); } md-tab[disabled] { pointer-events: none; cursor: default; } md-tab:focus { outline: none; } md-tab md-tab-label { - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; + -webkit-flex: 1 1 auto; + -ms-flex: 1 1 auto; + flex: 1 1 auto; z-index: 100; opacity: 1; - overflow: hidden; - text-overflow: ellipsis; } + overflow: hidden; } md-input-group label, .md-input-group label { display: block; @@ -2910,11 +5879,11 @@ md-input-group, .md-input-group { transform: translate3d(0, 22px, 0); -webkit-transform-origin: left center; transform-origin: left center; - transition: all ease-out 150ms; - transition: all ease-out 150ms; } + transition: all 0.15s cubic-bezier(0.35, 0, 0.25, 1); + transition: all 0.15s cubic-bezier(0.35, 0, 0.25, 1); } md-input-group input, md-input-group textarea, .md-input-group input, .md-input-group textarea { border-bottom-width: 1px; - transition: all ease-out 150ms; } + transition: all 0.15s cubic-bezier(0.35, 0, 0.25, 1); } md-input-group.md-input-focused label, .md-input-group.md-input-focused label { -webkit-transform: translate3d(0, 4px, 0) scale(0.75); transform: translate3d(0, 4px, 0) scale(0.75); } @@ -2944,12 +5913,13 @@ md-input-group, .md-input-group { transform: translate3d(0, 22px, 0); -webkit-transform-origin: left center; transform-origin: left center; - transition: all ease-out 150ms; } + transition: all 0.15s cubic-bezier(0.35, 0, 0.25, 1); } md-toast { display: -webkit-flex; display: -ms-flexbox; display: flex; + position: absolute; box-sizing: border-box; -webkit-align-items: center; -ms-flex-align: center; @@ -2961,22 +5931,21 @@ md-toast { border-radius: 2px; font-size: 14px; cursor: default; - position: fixed; max-width: 879px; max-height: 40px; height: 24px; - z-index: 9; + z-index: 90; opacity: 1; -webkit-transform: translate3d(0, 0, 0) rotateZ(0deg); transform: translate3d(0, 0, 0) rotateZ(0deg); - transition: 0.2s linear; - transition-property: -webkit-transform, opacity; - transition-property: transform, opacity; + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); /* Transition differently when swiping */ } md-toast.md-capsule { border-radius: 24px; } + md-toast.ng-leave-active { + transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); } md-toast.md-swipeleft, md-toast.md-swiperight, md-toast.md-swipeup, md-toast.md-swipedown { - transition: 0.15s ease-out; } + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); } md-toast.ng-enter { -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); @@ -3003,7 +5972,7 @@ md-toast { transform: translate3d(100%, 0%, 0); } md-toast .md-action { line-height: 19px; - padding-left: 24px; + margin-left: 24px; cursor: pointer; text-transform: uppercase; float: right; } @@ -3062,13 +6031,20 @@ md-toolbar { z-index: 2; font-size: 1.3em; min-height: 64px; - width: 100%; } + width: 100%; + box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26); } md-toolbar.md-tall { - height: 192px; } + height: 128px; + min-height: 128px; + max-height: 128px; } md-toolbar.md-medium-tall { - height: 88px; } + height: 88px; + min-height: 88px; + max-height: 88px; } md-toolbar.md-medium-tall .md-toolbar-tools { - height: 48px; } + height: 48px; + min-height: 48px; + max-height: 48px; } md-toolbar .md-indent { margin-left: 64px; } @@ -3084,20 +6060,29 @@ md-toolbar { flex-direction: row; width: 100%; height: 64px; + max-height: 64px; font-size: inherit; font-weight: normal; - padding: 0 10px; + padding: 0 16px; margin: 0; } .md-toolbar-tools > * { - font-size: inherit; - margin: 0 8px; } + font-size: inherit; } .md-toolbar-tools h2, .md-toolbar-tools h3 { font-weight: normal; } .md-toolbar-tools a { color: inherit; text-decoration: none; } - .md-toolbar-tools md-button { - font-size: 16px; } + .md-toolbar-tools .fill-height { + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + .md-toolbar-tools .md-tools { + margin-left: auto; } + .md-toolbar-tools .md-button { + font-size: 14px; } @-webkit-keyframes tooltipBackgroundShow { 0% { @@ -3144,7 +6129,7 @@ md-toolbar { md-tooltip { position: absolute; font-size: 14px; - z-index: 6; + z-index: 100; overflow: hidden; pointer-events: none; border-radius: 4px; @@ -3181,11 +6166,10 @@ md-tooltip { background: transparent; opacity: 0.3; transition: inherit; } - md-tooltip.md-show, md-tooltip.md-hide { - transition: 0.2s ease-out; - transition-property: -webkit-transform, opacity; - transition-property: transform, opacity; } + md-tooltip.md-hide { + transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); } md-tooltip.md-show { + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); pointer-events: auto; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } @@ -3242,202 +6226,3 @@ md-tooltip { .md-whiteframe-z5 { box-shadow: 0px 27px 24px 0 rgba(0, 0, 0, 0.2); } - -md-backdrop.md-opaque.md-default-theme { - background-color: rgba(0, 0, 0, 0.3); } - -md-bottom-sheet.md-default-theme { - background-color: #fafafa; - border-top-color: #bdbdbd; } - md-bottom-sheet.md-default-theme.md-list md-item { - color: rgba(0, 0, 0, 0.54); } - md-bottom-sheet.md-default-theme .md-subheader { - background-color: #fafafa; } - md-bottom-sheet.md-default-theme .md-subheader { - color: rgba(0, 0, 0, 0.54); } - -md-button.md-default-theme { - border-radius: 3px; } - md-button.md-default-theme[disabled] { - background-color: rgba(158, 158, 158, 0.145) !important; - color: #9e9e9e !important; - fill: #9e9e9e !important; - cursor: auto; } - md-button.md-default-theme:not([disabled]):hover, md-button.md-default-theme:not([disabled]).focus { - background-color: rgba(158, 158, 158, 0.2); } - md-button.md-default-theme.md-fab { - border-radius: 50%; } - md-button.md-default-theme.md-primary { - color: #29b6f6; - fill: #29b6f6; } - md-button.md-default-theme.md-warn { - color: #e84e40; - fill: #e84e40; } - md-button.md-default-theme.md-raised, md-button.md-default-theme.md-fab { - background-color: rgba(158, 158, 158, 0.185); } - md-button.md-default-theme.md-raised:not([disabled]):hover, md-button.md-default-theme.md-raised:not([disabled]).focus, md-button.md-default-theme.md-fab:not([disabled]):hover, md-button.md-default-theme.md-fab:not([disabled]).focus { - background-color: rgba(158, 158, 158, 0.3); } - md-button.md-default-theme.md-raised.md-primary, md-button.md-default-theme.md-fab.md-primary { - color: white; - background-color: #03a9f4; } - md-button.md-default-theme.md-raised.md-primary:not([disabled]):hover, md-button.md-default-theme.md-raised.md-primary:not([disabled]).focus, md-button.md-default-theme.md-fab.md-primary:not([disabled]):hover, md-button.md-default-theme.md-fab.md-primary:not([disabled]).focus { - background-color: #039be5; } - md-button.md-default-theme.md-raised.md-warn, md-button.md-default-theme.md-fab.md-warn { - color: white; - background-color: #e51c23; } - md-button.md-default-theme.md-raised.md-warn:not([disabled]):hover, md-button.md-default-theme.md-raised.md-warn:not([disabled]).focus, md-button.md-default-theme.md-fab.md-warn:not([disabled]):hover, md-button.md-default-theme.md-fab.md-warn:not([disabled]).focus { - background-color: #d01716; } - -md-card.md-default-theme { - border-radius: 2px; } - md-card.md-default-theme .md-card-image { - border-radius: 2px 2px 0 0; } - -md-checkbox.md-default-theme .md-ripple { - color: #0a8f08; } -md-checkbox.md-default-theme.md-checked .md-ripple { - color: #757575; } -md-checkbox.md-default-theme .md-icon { - border-color: rgba(0, 0, 0, 0.54); } -md-checkbox.md-default-theme.md-checked .md-icon { - background-color: rgba(43, 175, 43, 0.87); } -md-checkbox.md-default-theme.md-checked .md-icon:after { - border-color: #eeeeee; } -md-checkbox.md-default-theme[disabled] .md-icon { - border-color: rgba(0, 0, 0, 0.26); } -md-checkbox.md-default-theme[disabled].md-checked .md-icon { - background-color: rgba(0, 0, 0, 0.26); } - -md-content.md-default-theme { - background-color: #ffffff; } - -md-dialog.md-default-theme { - border-radius: 4px; - background-color: #ffffff; } - md-dialog.md-default-theme.md-content-overflow .md-actions { - border-top-color: rgba(0, 0, 0, 0.12); } - -md-divider.md-default-theme { - border-top-color: rgba(0, 0, 0, 0.12); } - -md-progress-circular.md-default-theme { - background-color: transparent; } - md-progress-circular.md-default-theme .md-circle .md-mask .md-fill { - background-color: #03a9f4; } - md-progress-circular.md-default-theme .md-inset { - background-color: #ffffff; } - -md-progress-linear.md-default-theme .md-container { - background-color: #b3e5fc; } -md-progress-linear.md-default-theme .md-bar { - background-color: #03a9f4; } -md-progress-linear.md-default-theme[mode=buffer] .md-dashed:before { - background: radial-gradient(#b3e5fc 0%, #b3e5fc 16%, transparent 42%); } -md-progress-linear.md-default-theme[mode=buffer] .md-bar1 { - background-color: #b3e5fc; } - -md-radio-button.md-default-theme .md-container .md-ripple, md-switch.md-default-theme .md-switch-thumb .md-container .md-ripple { - color: #0a8f08; } -md-radio-button.md-default-theme .md-off, md-switch.md-default-theme .md-switch-thumb .md-off { - border-color: rgba(0, 0, 0, 0.54); } -md-radio-button.md-default-theme .md-on, md-switch.md-default-theme .md-switch-thumb .md-on { - background-color: rgba(43, 175, 43, 0.87); } -md-radio-button.md-default-theme.md-checked .md-off, md-switch.md-default-theme .md-switch-thumb.md-checked .md-off { - border-color: rgba(43, 175, 43, 0.87); } -md-radio-button.md-default-theme.md-checked .md-ink-ripple, md-switch.md-default-theme .md-switch-thumb.md-checked .md-ink-ripple { - color: rgba(43, 175, 43, 0.87); } - -md-radio-group.md-default-theme:focus { - border-color: rgba(0, 0, 0, 0.73); } - -md-slider.md-default-theme .md-track { - background-color: #c8c8c8; } -md-slider.md-default-theme .md-track-fill { - background-color: #03a9f4; } -md-slider.md-default-theme .md-thumb:after { - border-color: #03a9f4; - background-color: #03a9f4; } -md-slider.md-default-theme .md-sign { - background-color: #03a9f4; } - md-slider.md-default-theme .md-sign:after { - border-top-color: #03a9f4; } -md-slider.md-default-theme .md-thumb-text { - color: white; } -md-slider.md-default-theme .md-focus-thumb { - background-color: rgba(0, 0, 0, 0.54); } -md-slider.md-default-theme .md-focus-ring { - border-color: rgba(0, 0, 0, 0.12); } -md-slider.md-default-theme .md-disabled-thumb { - border-color: #ffffff; } -md-slider.md-default-theme.md-min .md-thumb:after { - background-color: #ffffff; } -md-slider.md-default-theme[disabled] .md-thumb:after { - border-color: #bdbdbd; } -md-slider.md-default-theme[disabled]:not(.md-min) .md-thumb:after { - background-color: #bdbdbd; } - -.md-subheader.md-default-theme { - color: rgba(0, 0, 0, 0.54); - background-color: #ffffff; } - .md-subheader.md-default-theme.md-primary { - color: #03a9f4; } - -md-switch.md-default-theme .md-switch-bar { - background-color: rgba(0, 0, 0, 0.54); } -md-switch.md-default-theme .md-switch-thumb:focus .md-label { - border: 1px dotted black; } - -md-tabs.md-default-theme .md-header { - background-color: #03a9f4; } -md-tabs.md-default-theme md-tabs-ink-bar { - background: #ffff85; } -md-tabs.md-default-theme md-tab { - color: #b3e5fc; } - md-tabs.md-default-theme md-tab.active { - color: white; } - md-tabs.md-default-theme md-tab[disabled] { - color: rgba(0, 0, 0, 0.12); } - md-tabs.md-default-theme md-tab:focus { - border-color: rgba(0, 0, 0, 0.73); } - md-tabs.md-default-theme md-tab .md-ripple-container { - color: #ffff85; } - -md-input-group.md-default-theme input, md-input-group.md-default-theme textarea { - text-shadow: none; } - md-input-group.md-default-theme input:-ms-input-placeholder, md-input-group.md-default-theme textarea:-ms-input-placeholder { - color: rgba(0, 0, 0, 0.26); } - md-input-group.md-default-theme input::-webkit-input-placeholder, md-input-group.md-default-theme textarea::-webkit-input-placeholder { - color: rgba(0, 0, 0, 0.26); } -md-input-group.md-default-theme label { - text-shadow: none; - color: rgba(0, 0, 0, 0.26); } -md-input-group.md-default-theme input, md-input-group.md-default-theme textarea { - color: rgba(0, 0, 0, 0.73); - border-color: rgba(0, 0, 0, 0.12); } -md-input-group.md-default-theme.md-input-focused input, md-input-group.md-default-theme.md-input-focused textarea { - border-color: #03a9f4; } -md-input-group.md-default-theme.md-input-focused label { - color: #03a9f4; } -md-input-group.md-default-theme.md-input-has-value:not(.md-input-focused) label { - color: rgba(0, 0, 0, 0.372); } -md-input-group.md-default-theme[disabled] input, md-input-group.md-default-theme[disabled] textarea { - border-bottom-color: rgba(0, 0, 0, 0.12); - color: rgba(0, 0, 0, 0.26); - background-image: linear-gradient(to right, rgba(0, 0, 0, 0.19) 0%, rgba(0, 0, 0, 0.19) 50%, rgba(0, 0, 0, 0) 0%); } - -md-toast.md-default-theme { - background-color: #323232; - color: white; } - md-toast.md-default-theme md-button { - color: white; } - md-toast.md-default-theme .md-action { - color: #40c4ff; } - -md-toolbar.md-default-theme { - background-color: #03a9f4; - color: white; } - -md-tooltip.md-default-theme { - color: #ffffff; } - md-tooltip.md-default-theme .md-background { - background-color: rgba(0, 0, 0, 0.52); } diff --git a/public/app/bower_components/angular-material/angular-material.js b/public/app/bower_components/angular-material/angular-material.js index 7c68e620..699f86e1 100644 --- a/public/app/bower_components/angular-material/angular-material.js +++ b/public/app/bower_components/angular-material/angular-material.js @@ -2,143 +2,496 @@ * Angular Material Design * https://github.com/angular/material * @license MIT - * v0.5.0 + * v0.7.1 + */ +angular.module('ngMaterial', ["ng","ngAnimate","ngAria","material.core","material.core.theming.palette","material.core.theming","material.components.backdrop","material.components.bottomSheet","material.components.button","material.components.card","material.components.checkbox","material.components.content","material.components.dialog","material.components.divider","material.components.icon","material.components.input","material.components.list","material.components.progressCircular","material.components.progressLinear","material.components.radioButton","material.components.sidenav","material.components.slider","material.components.sticky","material.components.subheader","material.components.swipe","material.components.switch","material.components.tabs","material.components.textField","material.components.toast","material.components.toolbar","material.components.tooltip","material.components.whiteframe"]); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 */ (function() { -angular.module('ngMaterial', ["ng","ngAnimate","ngAria","material.core","material.decorators","material.animations","material.components.backdrop","material.components.bottomSheet","material.components.button","material.components.card","material.components.checkbox","material.components.content","material.components.dialog","material.components.divider","material.components.icon","material.components.list","material.components.progressCircular","material.components.progressLinear","material.components.radioButton","material.components.sidenav","material.components.slider","material.components.sticky","material.components.subheader","material.components.swipe","material.components.switch","material.components.tabs","material.components.textField","material.components.toast","material.components.toolbar","material.components.tooltip","material.components.whiteframe","material.services.aria","material.services.attrBind","material.services.compiler","material.services.interimElement","material.services.media","material.services.registry","material.services.theming"]);})(); +'use strict'; -(function() { +/** + * Initialization function that validates environment + * requirements. + */ +angular + .module('material.core', ['material.core.theming']) + .config(MdCoreConfigure); + + +function MdCoreConfigure($provide, $mdThemingProvider) { + $provide.decorator('$$rAF', ["$delegate", rAFDecorator]); + + $mdThemingProvider.theme('default') + .primaryPalette('indigo') + .accentPalette('pink') + .warnPalette('red') + .backgroundPalette('grey'); +} +MdCoreConfigure.$inject = ["$provide", "$mdThemingProvider"]; + +function rAFDecorator( $delegate ) { /** - * Angular Mds initialization function that validates environment - * requirements. + * Use this to throttle events that come in often. + * The throttled function will always use the *last* invocation before the + * coming frame. + * + * For example, window resize events that fire many times a second: + * If we set to use an raf-throttled callback on window resize, then + * our callback will only be fired once per frame, with the last resize + * event that happened before that frame. + * + * @param {function} callback function to debounce */ - angular.module('material.core', [] ) - .run(function validateEnvironment() { + $delegate.throttle = function(cb) { + var queueArgs, alreadyQueued, queueCb, context; + return function debounced() { + queueArgs = arguments; + context = this; + queueCb = cb; + if (!alreadyQueued) { + alreadyQueued = true; + $delegate(function() { + queueCb.apply(context, queueArgs); + alreadyQueued = false; + }); + } + }; + }; + return $delegate; +} - if (typeof Hammer === 'undefined') { - throw new Error( - 'ngMaterial requires HammerJS to be preloaded.' - ); +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +angular.module('material.core') +.factory('$mdConstant', MdConstantFactory); + +function MdConstantFactory($$rAF, $sniffer) { + + var webkit = /webkit/i.test($sniffer.vendorPrefix); + function vendorProperty(name) { + return webkit ? ('webkit' + name.charAt(0).toUpperCase() + name.substring(1)) : name; + } + + return { + KEY_CODE: { + ENTER: 13, + ESCAPE: 27, + SPACE: 32, + LEFT_ARROW : 37, + UP_ARROW : 38, + RIGHT_ARROW : 39, + DOWN_ARROW : 40 + }, + CSS: { + /* Constants */ + TRANSITIONEND: 'transitionend' + (webkit ? ' webkitTransitionEnd' : ''), + ANIMATIONEND: 'animationend' + (webkit ? ' webkitAnimationEnd' : ''), + + TRANSFORM: vendorProperty('transform'), + TRANSITION: vendorProperty('transition'), + TRANSITION_DURATION: vendorProperty('transitionDuration'), + ANIMATION_PLAY_STATE: vendorProperty('animationPlayState'), + ANIMATION_DURATION: vendorProperty('animationDuration'), + ANIMATION_NAME: vendorProperty('animationName'), + ANIMATION_TIMING: vendorProperty('animationTimingFunction'), + ANIMATION_DIRECTION: vendorProperty('animationDirection') + }, + MEDIA: { + 'sm': '(max-width: 600px)', + 'gt-sm': '(min-width: 600px)', + 'md': '(min-width: 600px) and (max-width: 960px)', + 'gt-md': '(min-width: 960px)', + 'lg': '(min-width: 960px) and (max-width: 1200px)', + 'gt-lg': '(min-width: 1200px)' + } + }; +} +MdConstantFactory.$inject = ["$$rAF", "$sniffer"]; + +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function(){ + + angular + .module('material.core') + .config( ["$provide", function($provide){ + $provide.decorator('$mdUtil', ['$delegate', function ($delegate){ + /** + * Inject the iterator facade to easily support iteration and accessors + * @see iterator below + */ + $delegate.iterator = Iterator; + + return $delegate; + } + ]); + }]); + + /** + * iterator is a list facade to easily support iteration and accessors + * + * @param items Array list which this iterator will enumerate + * @param reloop Boolean enables iterator to consider the list as an endless reloop + */ + function Iterator(items, reloop) { + var trueFn = function() { return true; }; + + reloop = !!reloop; + var _items = items || [ ]; + + // Published API + return { + items: getItems, + count: count, + + inRange: inRange, + contains: contains, + indexOf: indexOf, + itemAt: itemAt, + + findBy: findBy, + + add: add, + remove: remove, + + first: first, + last: last, + next: angular.bind(null, findSubsequentItem, false), + previous: angular.bind(null, findSubsequentItem, true), + + hasPrevious: hasPrevious, + hasNext: hasNext + + }; + + /** + * Publish copy of the enumerable set + * @returns {Array|*} + */ + function getItems() { + return [].concat(_items); + } + + /** + * Determine length of the list + * @returns {Array.length|*|number} + */ + function count() { + return _items.length; + } + + /** + * Is the index specified valid + * @param index + * @returns {Array.length|*|number|boolean} + */ + function inRange(index) { + return _items.length && ( index > -1 ) && (index < _items.length ); + } + + /** + * Can the iterator proceed to the next item in the list; relative to + * the specified item. + * + * @param item + * @returns {Array.length|*|number|boolean} + */ + function hasNext(item) { + return item ? inRange(indexOf(item) + 1) : false; + } + + /** + * Can the iterator proceed to the previous item in the list; relative to + * the specified item. + * + * @param item + * @returns {Array.length|*|number|boolean} + */ + function hasPrevious(item) { + return item ? inRange(indexOf(item) - 1) : false; + } + + /** + * Get item at specified index/position + * @param index + * @returns {*} + */ + function itemAt(index) { + return inRange(index) ? _items[index] : null; + } + + /** + * Find all elements matching the key/value pair + * otherwise return null + * + * @param val + * @param key + * + * @return array + */ + function findBy(key, val) { + return _items.filter(function(item) { + return item[key] === val; + }); + } + + /** + * Add item to list + * @param item + * @param index + * @returns {*} + */ + function add(item, index) { + if ( !item ) return -1; + + if (!angular.isNumber(index)) { + index = _items.length; } - }); + _items.splice(index, 0, item); + return indexOf(item); + } + /** + * Remove item from list... + * @param item + */ + function remove(item) { + if ( contains(item) ){ + _items.splice(indexOf(item), 1); + } + } + /** + * Get the zero-based index of the target item + * @param item + * @returns {*} + */ + function indexOf(item) { + return _items.indexOf(item); + } -})(); + /** + * Boolean existence check + * @param item + * @returns {boolean} + */ + function contains(item) { + return item && (indexOf(item) > -1); + } -(function() { -angular.module('material.core') -.constant('$mdConstant', { - KEY_CODE: { - ENTER: 13, - ESCAPE: 27, - SPACE: 32, - LEFT_ARROW : 37, - UP_ARROW : 38, - RIGHT_ARROW : 39, - DOWN_ARROW : 40 + /** + * Return first item in the list + * @returns {*} + */ + function first() { + return _items.length ? _items[0] : null; + } + + /** + * Return last item in the list... + * @returns {*} + */ + function last() { + return _items.length ? _items[_items.length - 1] : null; + } + + /** + * Find the next item. If reloop is true and at the end of the list, it will + * go back to the first item. If given ,the `validate` callback will be used + * determine whether the next item is valid. If not valid, it will try to find the + * next item again. + * @param item + * @param {optional} validate Validate function + * @param {optional} limit Recursion limit + * @returns {*} + */ + function findSubsequentItem(backwards, item, validate, limit) { + validate = validate || trueFn; + + var curIndex = indexOf(item); + if (!inRange(curIndex)) { + return null; + } + + var nextIndex = curIndex + (backwards ? -1 : 1); + var foundItem = null; + if (inRange(nextIndex)) { + foundItem = _items[nextIndex]; + } else if (reloop) { + foundItem = backwards ? last() : first(); + nextIndex = indexOf(foundItem); + } + + if ((foundItem === null) || (nextIndex === limit)) { + return null; + } + + if (angular.isUndefined(limit)) { + limit = nextIndex; + } + + return validate(foundItem) ? foundItem : findSubsequentItem(backwards, foundItem, validate, limit); + } } -}); + })(); -(function() { +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ angular.module('material.core') -.factory('$mdUtil', ['$cacheFactory', function($cacheFactory) { - var SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g; - /* for nextUid() function below */ - var uid = ['0','0','0']; +.factory('$mdMedia', mdMediaFactory); +/** + * Exposes a function on the '$mdMedia' service which will return true or false, + * whether the given media query matches. Re-evaluates on resize. Allows presets + * for 'sm', 'md', 'lg'. + * + * @example $mdMedia('sm') == true if device-width <= sm + * @example $mdMedia('(min-width: 1200px)') == true if device-width >= 1200px + * @example $mdMedia('max-width: 300px') == true if device-width <= 300px (sanitizes input, adding parens) + */ +function mdMediaFactory($mdConstant, $rootScope, $window) { + var queries = {}; + var results = {}; + + return $mdMedia; + + function $mdMedia(query) { + var validated = queries[query]; + if (angular.isUndefined(validated)) { + validated = queries[query] = validate(query); + } + + var result = results[validated]; + if (angular.isUndefined(result)) { + result = add(validated); + } + + return result; + } + + function validate(query) { + return $mdConstant.MEDIA[query] || + ((query.charAt(0) !== '(') ? ('(' + query + ')') : query); + } + + function add(query) { + var result = $window.matchMedia(query); + result.addListener(onQueryChange); + return (results[result.media] = !!result.matches); + } + + function onQueryChange() { + var query = this; + $rootScope.$evalAsync(function() { + results[query.media] = !!query.matches; + }); + } + +} +mdMediaFactory.$inject = ["$mdConstant", "$rootScope", "$window"]; + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +/* + * This var has to be outside the angular factory, otherwise when + * there are multiple material apps on the same page, each app + * will create its own instance of this array and the app's IDs + * will not be unique. + */ +var nextUniqueId = ['0','0','0']; + +angular.module('material.core') +.factory('$mdUtil', ["$document", "$timeout", function($document, $timeout) { var Util; + return Util = { now: window.performance ? angular.bind(window.performance, window.performance.now) : Date.now, - /** - * Checks if the specified element has an ancestor (ancestor being parent, grandparent, etc) - * with the given attribute defined. - * - * Also pass in an optional `limit` (levels of ancestry to scan), default 4. - */ - ancestorHasAttribute: function ancestorHasAttribute(element, attrName, limit) { - limit = limit || 4; - var current = element; - while (limit-- && current.length) { - if (current[0].hasAttribute && current[0].hasAttribute(attrName)) { - return true; - } - current = current.parent(); - } - return false; + elementRect: function(element, offsetParent) { + var node = element[0]; + offsetParent = offsetParent || node.offsetParent || document.body; + offsetParent = offsetParent[0] || offsetParent; + var nodeRect = node.getBoundingClientRect(); + var parentRect = offsetParent.getBoundingClientRect(); + return { + left: nodeRect.left - parentRect.left + offsetParent.scrollLeft, + top: nodeRect.top - parentRect.top + offsetParent.scrollTop, + width: nodeRect.width, + height: nodeRect.height + }; }, - /** - * Checks to see if the element or its parents are disabled. - * @param element DOM element to start scanning for `disabled` attribute - * @param limit Number of parent levels that should be scanned; defaults to 4 - * @returns {*} Boolean - */ - isParentDisabled: function isParentDisabled(element, limit) { - return Util.ancestorHasAttribute(element, 'disabled', limit); + fakeNgModel: function() { + return { + $fake: true, + $setViewValue: function(value) { + this.$viewValue = value; + this.$render(value); + this.$viewChangeListeners.forEach(function(cb) { cb(); }); + }, + $isEmpty: function(value) { + return (''+value).length === 0; + }, + $parsers: [], + $formatters: [], + $viewChangeListeners: [], + $render: angular.noop + }; }, - /** - * Checks if two elements have the same parent - */ - elementIsSibling: function elementIsSibling(element, otherElement) { - return element.parent().length && - (element.parent()[0] === otherElement.parent()[0]); - }, - - /** - * Converts snake_case to camelCase. - * @param name Name to normalize - */ - camelCase: function camelCase(name) { - return name - .replace(SPECIAL_CHARS_REGEXP, function(_, separator, letter, offset) { - return offset ? letter.toUpperCase() : letter; - }); - }, - - /** - * Selects 'n' words from a string - * for use in an HTML attribute - */ - stringFromTextBody: function stringFromTextBody(textBody, numWords) { - var string = textBody.trim(); - - if(string.split(/\s+/).length > numWords){ - string = textBody.split(/\s+/).slice(1, (numWords + 1)).join(" ") + '...'; - } - return string; - }, - - /** - * Publish the iterator facade to easily support iteration and accessors - * @see iterator below - */ - iterator: iterator, - - /** - * @see cacheFactory below - */ - cacheFactory: cacheFactory, - // Returns a function, that, as long as it continues to be invoked, will not // be triggered. The function will be called after it stops being called for - // N milliseconds. If `immediate` is passed, trigger the function on the - // leading edge, instead of the trailing. - debounce: function debounce(func, wait, immediate) { - var timeout; + // N milliseconds. + // @param wait Integer value of msecs to delay (since last debounce reset); default value 10 msecs + // @param invokeApply should the $timeout trigger $digest() dirty checking + debounce: function (func, wait, scope, invokeApply) { + var timer; + return function debounced() { - var context = this, args = arguments; - clearTimeout(timeout); - timeout = setTimeout(function() { - timeout = null; - if (!immediate) func.apply(context, args); - }, wait); - if (immediate && !timeout) func.apply(context, args); + var context = scope, + args = Array.prototype.slice.call(arguments); + + $timeout.cancel(timer); + timer = $timeout(function() { + + timer = undefined; + func.apply(context, args); + + }, wait || 10, invokeApply ); }; }, @@ -152,30 +505,13 @@ angular.module('material.core') var args = arguments; var now = Util.now(); - if (!recent || recent - now > delay) { + if (!recent || (now - recent > delay)) { func.apply(context, args); recent = now; } }; }, - /** - * Wraps an element with a tag - * - * @param el element to wrap - * @param tag tag to wrap it with - * @param [className] optional class to apply to the wrapper - * @returns new element - * - */ - wrap: function(el, tag, className) { - if(el.hasOwnProperty(0)) { el = el[0]; } - var wrapper = document.createElement(tag); - wrapper.className += className; - wrapper.appendChild(el.parentNode.replaceChild(wrapper, el)); - return angular.element(wrapper); - }, - /** * nextUid, from angular.js. * A consistent way of creating unique IDs in angular. The ID is a sequence of alpha numeric @@ -186,25 +522,25 @@ angular.module('material.core') * @returns an unique alpha-numeric string */ nextUid: function() { - var index = uid.length; + var index = nextUniqueId.length; var digit; while(index) { index--; - digit = uid[index].charCodeAt(0); + digit = nextUniqueId[index].charCodeAt(0); if (digit == 57 /*'9'*/) { - uid[index] = 'A'; - return uid.join(''); + nextUniqueId[index] = 'A'; + return nextUniqueId.join(''); } if (digit == 90 /*'Z'*/) { - uid[index] = '0'; + nextUniqueId[index] = '0'; } else { - uid[index] = String.fromCharCode(digit + 1); - return uid.join(''); + nextUniqueId[index] = String.fromCharCode(digit + 1); + return nextUniqueId.join(''); } } - uid.unshift('0'); - return uid.join(''); + nextUniqueId.unshift('0'); + return nextUniqueId.join(''); }, // Stop watchers and events from firing on a scope without destroying it, @@ -249,252 +585,27 @@ angular.module('material.core') } else { parent.$$childHead = parent.$$childTail = child; } + }, + /* + * getClosest replicates jQuery.closest() to walk up the DOM tree until it finds a matching nodeName + * + * @param el Element to start walking the DOM from + * @param tagName Tag name to find closest to el, such as 'form' + */ + getClosest: function getClosest(el, tagName) { + tagName = tagName.toUpperCase(); + do { + if (el.nodeName === tagName) { + return el; + } + } while (el = el.parentNode); + return null; } }; - /* - * iterator is a list facade to easily support iteration and accessors - * - * @param items Array list which this iterator will enumerate - * @param reloop Boolean enables iterator to consider the list as an endless reloop - */ - function iterator(items, reloop) { - var trueFn = function() { return true; }; - - reloop = !!reloop; - var _items = items || [ ]; - - // Published API - return { - items: getItems, - count: count, - - inRange: inRange, - contains: contains, - indexOf: indexOf, - itemAt: itemAt, - - findBy: findBy, - - add: add, - remove: remove, - - first: first, - last: last, - next: next, - previous: previous, - - hasPrevious: hasPrevious, - hasNext: hasNext - - }; - - /* - * Publish copy of the enumerable set - * @returns {Array|*} - */ - function getItems() { - return [].concat(_items); - } - - /* - * Determine length of the list - * @returns {Array.length|*|number} - */ - function count() { - return _items.length; - } - - /* - * Is the index specified valid - * @param index - * @returns {Array.length|*|number|boolean} - */ - function inRange(index) { - return _items.length && ( index > -1 ) && (index < _items.length ); - } - - /* - * Can the iterator proceed to the next item in the list; relative to - * the specified item. - * - * @param item - * @returns {Array.length|*|number|boolean} - */ - function hasNext(item) { - return item ? inRange(indexOf(item) + 1) : false; - } - - /* - * Can the iterator proceed to the previous item in the list; relative to - * the specified item. - * - * @param item - * @returns {Array.length|*|number|boolean} - */ - function hasPrevious(item) { - return item ? inRange(indexOf(item) - 1) : false; - } - - /* - * Get item at specified index/position - * @param index - * @returns {*} - */ - function itemAt(index) { - return inRange(index) ? _items[index] : null; - } - - /* - * Find all elements matching the key/value pair - * otherwise return null - * - * @param val - * @param key - * - * @return array - */ - function findBy(key, val) { - return _items.filter(function(item) { - return item[key] === val; - }); - } - - /* - * Add item to list - * @param item - * @param index - * @returns {*} - */ - function add(item, index) { - if ( !item ) return -1; - - if (!angular.isNumber(index)) { - index = _items.length; - } - - _items.splice(index, 0, item); - - return indexOf(item); - } - - /* - * Remove item from list... - * @param item - */ - function remove(item) { - if ( contains(item) ){ - _items.splice(indexOf(item), 1); - } - } - - /* - * Get the zero-based index of the target item - * @param item - * @returns {*} - */ - function indexOf(item) { - return _items.indexOf(item); - } - - /* - * Boolean existence check - * @param item - * @returns {boolean} - */ - function contains(item) { - return item && (indexOf(item) > -1); - } - - /* - * Find the next item. If reloop is true and at the end of the list, it will - * go back to the first item. If given ,the `validate` callback will be used - * determine whether the next item is valid. If not valid, it will try to find the - * next item again. - * @param item - * @param {optional} validate - * @returns {*} - */ - function next(item, validate) { - validate = validate || trueFn; - - if (contains(item)) { - var index = indexOf(item) + 1, - found = inRange(index) ? _items[ index ] : (reloop ? first() : null); - - return validate(found) ? found : next(found, validate); - } - - return null; - } - - /* - * Find the previous item. If reloop is true and at the beginning of the list, it will - * go back to the last item. If given ,the `validate` callback will be used - * determine whether the previous item is valid. If not valid, it will try to find the - * previous item again. - * @param item - * @param {optional} validate - * @returns {*} - */ - function previous(item, validate) { - validate = validate || trueFn; - - if (contains(item)) { - var index = indexOf(item) - 1, - found = inRange(index) ? _items[ index ] : (reloop ? last() : null); - - return validate(found) ? found : previous(found, validate); - } - - return null; - } - - /* - * Return first item in the list - * @returns {*} - */ - function first() { - return _items.length ? _items[0] : null; - } - - /* - * Return last item in the list... - * @returns {*} - */ - function last() { - return _items.length ? _items[_items.length - 1] : null; - } - } - - /* - * Angular's $cacheFactory doesn't have a keys() method, - * so we add one ourself. - */ - function cacheFactory(id, options) { - var cache = $cacheFactory(id, options); - - var keys = {}; - cache._put = cache.put; - cache.put = function(k,v) { - keys[k] = true; - return cache._put(k, v); - }; - cache._remove = cache.remove; - cache.remove = function(k) { - delete keys[k]; - return cache._remove(k); - }; - - cache.keys = function() { - return Object.keys(keys); - }; - - return cache; - } }]); -/* +/* * Since removing jQuery from the demos, some code that uses `element.focus()` is broken. * * We need to add `element.focus()`, because it's testable unlike `element[0].focus`. @@ -514,344 +625,1559 @@ angular.element.prototype.blur = angular.element.prototype.blur || function() { } return this; }; + })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { -angular.module('material.decorators', []) -.config(['$provide', function($provide) { - $provide.decorator('$$rAF', ['$delegate', '$rootScope', rAFDecorator]); +'use strict'; - function rAFDecorator($$rAF, $rootScope) { +angular.module('material.core') + .service('$mdAria', AriaService); - /** - * Use this to debounce events that come in often. - * The debounced function will always use the *last* invocation before the - * coming frame. - * - * For example, window resize events that fire many times a second: - * If we set to use an raf-debounced callback on window resize, then - * our callback will only be fired once per frame, with the last resize - * event that happened before that frame. - * - * @param {function} callback function to debounce - */ - $$rAF.debounce = function(cb) { - var queueArgs, alreadyQueued, queueCb, context; - return function debounced() { - queueArgs = arguments; - context = this; - queueCb = cb; - if (!alreadyQueued) { - alreadyQueued = true; - $$rAF(function() { - queueCb.apply(context, queueArgs); - alreadyQueued = false; - }); +function AriaService($$rAF, $log, $window) { + + return { + expect: expect, + expectAsync: expectAsync, + expectWithText: expectWithText + }; + + /** + * Check if expected attribute has been specified on the target element or child + * @param element + * @param attrName + * @param {optional} defaultValue What to set the attr to if no value is found + */ + function expect(element, attrName, defaultValue) { + var node = element[0]; + + if (!node.hasAttribute(attrName) && !childHasAttribute(node, attrName)) { + + defaultValue = angular.isString(defaultValue) && defaultValue.trim() || ''; + if (defaultValue.length) { + element.attr(attrName, defaultValue); + } else { + $log.warn('ARIA: Attribute "', attrName, '", required for accessibility, is missing on node:', node); + } + + } + } + + function expectAsync(element, attrName, defaultValueGetter) { + // Problem: when retrieving the element's contents synchronously to find the label, + // the text may not be defined yet in the case of a binding. + // There is a higher chance that a binding will be defined if we wait one frame. + $$rAF(function() { + expect(element, attrName, defaultValueGetter()); + }); + } + + function expectWithText(element, attrName) { + expectAsync(element, attrName, function() { + return element.text().trim(); + }); + } + + function childHasAttribute(node, attrName) { + var hasChildren = node.hasChildNodes(), + hasAttr = false; + + function isHidden(el) { + var style = el.currentStyle ? el.currentStyle : $window.getComputedStyle(el); + return (style.display === 'none'); + } + + if(hasChildren) { + var children = node.childNodes; + for(var i=0; i + * $mdCompiler.compile({ + * templateUrl: 'modal.html', + * controller: 'ModalCtrl', + * locals: { + * modal: myModalInstance; + * } + * }).then(function(compileData) { + * compileData.element; // modal.html's template in an element + * compileData.link(myScope); //attach controller & scope to element + * }); + * + */ + + /* + * @ngdoc method + * @name $mdCompiler#compile + * @description A helper to compile an HTML template/templateUrl with a given controller, + * locals, and scope. + * @param {object} options An options object, with the following properties: + * + * - `controller` - `{(string=|function()=}` Controller fn that should be associated with + * newly created scope or the name of a registered controller if passed as a string. + * - `controllerAs` - `{string=}` A controller alias name. If present the controller will be + * published to scope under the `controllerAs` name. + * - `template` - `{string=}` An html template as a string. + * - `templateUrl` - `{string=}` A path to an html template. + * - `transformTemplate` - `{function(template)=}` A function which transforms the template after + * it is loaded. It will be given the template string as a parameter, and should + * return a a new string representing the transformed template. + * - `resolve` - `{Object.=}` - An optional map of dependencies which should + * be injected into the controller. If any of these dependencies are promises, the compiler + * will wait for them all to be resolved, or if one is rejected before the controller is + * instantiated `compile()` will fail.. + * * `key` - `{string}`: a name of a dependency to be injected into the controller. + * * `factory` - `{string|function}`: If `string` then it is an alias for a service. + * Otherwise if function, then it is injected and the return value is treated as the + * dependency. If the result is a promise, it is resolved before its value is + * injected into the controller. + * + * @returns {object=} promise A promise, which will be resolved with a `compileData` object. + * `compileData` has the following properties: + * + * - `element` - `{element}`: an uncompiled element matching the provided template. + * - `link` - `{function(scope)}`: A link function, which, when called, will compile + * the element and instantiate the provided controller (if given). + * - `locals` - `{object}`: The locals which will be passed into the controller once `link` is + * called. If `bindToController` is true, they will be coppied to the ctrl instead + * - `bindToController` - `bool`: bind the locals to the controller, instead of passing them in + */ + this.compile = function(options) { + var templateUrl = options.templateUrl; + var template = options.template || ''; + var controller = options.controller; + var controllerAs = options.controllerAs; + var resolve = options.resolve || {}; + var locals = options.locals || {}; + var transformTemplate = options.transformTemplate || angular.identity; + var bindToController = options.bindToController; + + // Take resolve values and invoke them. + // Resolves can either be a string (value: 'MyRegisteredAngularConst'), + // or an invokable 'factory' of sorts: (value: function ValueGetter($dependency) {}) + angular.forEach(resolve, function(value, key) { + if (angular.isString(value)) { + resolve[key] = $injector.get(value); + } else { + resolve[key] = $injector.invoke(value); + } + }); + //Add the locals, which are just straight values to inject + //eg locals: { three: 3 }, will inject three into the controller + angular.extend(resolve, locals); + + if (templateUrl) { + resolve.$template = $http.get(templateUrl, {cache: $templateCache}) + .then(function(response) { + return response.data; + }); + } else { + resolve.$template = $q.when(template); + } + + // Wait for all the resolves to finish if they are promises + return $q.all(resolve).then(function(locals) { + + var template = transformTemplate(locals.$template); + var element = angular.element('
').html(template.trim()).contents(); + var linkFn = $compile(element); + + //Return a linking function that can be used later when the element is ready + return { + locals: locals, + element: element, + link: function link(scope) { + locals.$scope = scope; + + //Instantiate controller if it exists, because we have scope + if (controller) { + var ctrl = $controller(controller, locals); + if (bindToController) { + angular.extend(ctrl, locals); + } + //See angular-route source for this logic + element.data('$ngControllerController', ctrl); + element.children().data('$ngControllerController', ctrl); + + if (controllerAs) { + scope[controllerAs] = ctrl; + } + } + + return linkFn(scope); } }; - }; + }); - return $$rAF; - } -}]); + }; +} +mdCompilerService.$inject = ["$q", "$http", "$injector", "$compile", "$controller", "$templateCache"]; })(); -(function() { -/* - * @ngdoc module - * @name material.components.animate - * @description - * - * Ink and Popup Effects +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 */ -angular.module('material.animations', ['material.core']) - .service('$mdEffects', [ - '$rootElement', - '$$rAF', - '$sniffer', - '$q', - MdEffects - ]); +(function() { +'use strict'; + +/* + * TODO: Add support for multiple fingers on the `pointer` object (enables pinch gesture) + */ + +var START_EVENTS = 'mousedown touchstart pointerdown'; +var MOVE_EVENTS = 'mousemove touchmove pointermove'; +var END_EVENTS = 'mouseup mouseleave touchend touchcancel pointerup pointercancel'; +var HANDLERS; + +document.contains || (document.contains = function(node) { + return document.body.contains(node); +}); + +// TODO add windows phone to this +var userAgent = navigator.userAgent || navigator.vendor || window.opera; +var isIos = userAgent.match(/iPad/i) || userAgent.match(/iPhone/i) || userAgent.match(/iPod/i); +var isAndroid = userAgent.match(/Android/i); +var shouldHijackClicks = isIos || isAndroid; + +if (shouldHijackClicks) { + document.addEventListener('click', function(ev) { + // Space/enter on a button, and submit events, can send clicks + var isKeyClick = ev.clientX === 0 && ev.clientY === 0; + if (isKeyClick || ev.$material) return; + + // Prevent clicks unless they're sent by material + ev.preventDefault(); + ev.stopPropagation(); + }, true); +} + +angular.element(document) + .on(START_EVENTS, gestureStart) + .on(MOVE_EVENTS, gestureMove) + .on(END_EVENTS, gestureEnd) + // For testing + .on('$$mdGestureReset', function() { + lastPointer = pointer = null; + }); + +// The state of the current and previous 'pointer' (user's hand) +var pointer, lastPointer; + +function runHandlers(handlerEvent, event) { + var handler; + for (var handlerName in HANDLERS) { + handler = HANDLERS[handlerName]; + if (handlerEvent === 'start') { + // Run cancel to reset any handlers' state + handler.cancel(); + } + handler[handlerEvent](event, pointer); + } +} + +function gestureStart(ev) { + // If we're already touched down, abort + if (pointer) return; + + var now = +Date.now(); + + // iOS & old android bug: after a touch event, a click event is sent 350 ms later. + // If <400ms have passed, don't allow an event of a different type than the previous event + if (lastPointer && !typesMatch(ev, lastPointer) && (now - lastPointer.endTime < 1500)) { + return; + } + + pointer = makeStartPointer(ev); + + runHandlers('start', ev); +} + +function gestureMove(ev) { + if (!pointer || !typesMatch(ev, pointer)) return; + + updatePointerState(ev, pointer); + runHandlers('move', ev); +} + +function gestureEnd(ev) { + if (!pointer || !typesMatch(ev, pointer)) return; + + updatePointerState(ev, pointer); + pointer.endTime = +Date.now(); + + runHandlers('end', ev); + + lastPointer = pointer; + pointer = null; +} + +/******** Helpers *********/ +function typesMatch(ev, pointer) { + return ev && pointer && ev.type.charAt(0) === pointer.type; +} + +function getEventPoint(ev) { + ev = ev.originalEvent || ev; // support jQuery events + return (ev.touches && ev.touches[0]) || + (ev.changedTouches && ev.changedTouches[0]) || + ev; +} + +function updatePointerState(ev, pointer) { + var point = getEventPoint(ev); + var x = pointer.x = point.pageX; + var y = pointer.y = point.pageY; + + pointer.distanceX = x - pointer.startX; + pointer.distanceY = y - pointer.startY; + pointer.distance = Math.sqrt( + pointer.distanceX * pointer.distanceX + pointer.distanceY * pointer.distanceY + ); + + pointer.directionX = pointer.distanceX > 0 ? 'right' : pointer.distanceX < 0 ? 'left' : ''; + pointer.directionY = pointer.distanceY > 0 ? 'up' : pointer.distanceY < 0 ? 'down' : ''; + + pointer.duration = +Date.now() - pointer.startTime; + pointer.velocityX = pointer.distanceX / pointer.duration; + pointer.velocityY = pointer.distanceY / pointer.duration; +} + + +function makeStartPointer(ev) { + var point = getEventPoint(ev); + var startPointer = { + startTime: +Date.now(), + target: ev.target, + // 'p' for pointer, 'm' for mouse, 't' for touch + type: ev.type.charAt(0) + }; + startPointer.startX = startPointer.x = point.pageX; + startPointer.startY = startPointer.y = point.pageY; + return startPointer; +} + +angular.module('material.core') +.run(["$mdGesture", function($mdGesture) {}]) // make sure $mdGesture is always instantiated +.factory('$mdGesture', ["$$MdGestureHandler", "$$rAF", "$timeout", function($$MdGestureHandler, $$rAF, $timeout) { + HANDLERS = {}; + + if (shouldHijackClicks) { + addHandler('click', { + options: { + maxDistance: 6 + }, + onEnd: function(ev, pointer) { + if (pointer.distance < this.state.options.maxDistance) { + this.dispatchEvent(ev, 'click', null, ev); + } + } + }); + } + + addHandler('press', { + onStart: function(ev, pointer) { + this.dispatchEvent(ev, '$md.pressdown'); + }, + onEnd: function(ev, pointer) { + this.dispatchEvent(ev, '$md.pressup'); + } + }); + + + addHandler('hold', { + options: { + // If the user keeps his finger within the same area for + // ms, dispatch a hold event. + maxDistance: 6, + delay: 500, + }, + onCancel: function() { + $timeout.cancel(this.state.timeout); + }, + onStart: function(ev, pointer) { + // For hold, require a parent to be registered with $mdGesture.register() + // Because we prevent scroll events, this is necessary. + if (!this.state.registeredParent) return this.cancel(); + + this.state.pos = {x: pointer.x, y: pointer.y}; + this.state.timeout = $timeout(angular.bind(this, function holdDelayFn() { + this.dispatchEvent(ev, '$md.hold'); + this.cancel(); //we're done! + }), this.state.options.delay, false); + }, + onMove: function(ev, pointer) { + // Don't scroll while waiting for hold + ev.preventDefault(); + var dx = this.state.pos.x - pointer.x; + var dy = this.state.pos.y - pointer.y; + if (Math.sqrt(dx*dx + dy*dy) > this.options.maxDistance) { + this.cancel(); + } + }, + onEnd: function(ev, pointer) { + this.onCancel(); + }, + }); + + addHandler('drag', { + options: { + minDistance: 6, + horizontal: true, + }, + onStart: function(ev) { + // For drag, require a parent to be registered with $mdGesture.register() + if (!this.state.registeredParent) this.cancel(); + }, + onMove: function(ev, pointer) { + var shouldStartDrag, shouldCancel; + // Don't allow touch events to scroll while we're dragging or + // deciding if this touchmove is a proper drag + ev.preventDefault(); + + if (!this.state.dragPointer) { + if (this.state.options.horizontal) { + shouldStartDrag = Math.abs(pointer.distanceX) > this.state.options.minDistance; + shouldCancel = Math.abs(pointer.distanceY) > this.state.options.minDistance * 1.5; + } else { + shouldStartDrag = Math.abs(pointer.distanceY) > this.state.options.minDistance; + shouldCancel = Math.abs(pointer.distanceX) > this.state.options.minDistance * 1.5; + } + + if (shouldStartDrag) { + // Create a new pointer, starting at this point where the drag started. + this.state.dragPointer = makeStartPointer(ev); + updatePointerState(ev, this.state.dragPointer); + this.dispatchEvent(ev, '$md.dragstart', this.state.dragPointer); + + } else if (shouldCancel) { + this.cancel(); + } + } else { + this.dispatchDragMove(ev); + } + }, + // Only dispatch these every frame; any more is unnecessray + dispatchDragMove: $$rAF.throttle(function(ev) { + // Make sure the drag didn't stop while waiting for the next frame + if (this.state.isRunning) { + updatePointerState(ev, this.state.dragPointer); + this.dispatchEvent(ev, '$md.drag', this.state.dragPointer); + } + }), + onEnd: function(ev, pointer) { + if (this.state.dragPointer) { + updatePointerState(ev, this.state.dragPointer); + this.dispatchEvent(ev, '$md.dragend', this.state.dragPointer); + } + } + }); + + addHandler('swipe', { + options: { + minVelocity: 0.65, + minDistance: 10, + }, + onEnd: function(ev, pointer) { + if (Math.abs(pointer.velocityX) > this.state.options.minVelocity && + Math.abs(pointer.distanceX) > this.state.options.minDistance) { + var eventType = pointer.directionX == 'left' ? '$md.swipeleft' : '$md.swiperight'; + this.dispatchEvent(ev, eventType); + } + } + }); + + var self; + return self = { + handler: addHandler, + register: register + }; + + function addHandler(name, definition) { + var handler = new $$MdGestureHandler(name); + angular.extend(handler, definition); + HANDLERS[name] = handler; + return self; + } + + function register(element, handlerName, options) { + var handler = HANDLERS[ handlerName.replace(/^\$md./, '') ]; + if (!handler) { + throw new Error('Failed to register element with handler ' + handlerName + '. ' + + 'Available handlers: ' + Object.keys(HANDLERS).join(', ')); + } + return handler.registerElement(element, options); + } +}]) +.factory('$$MdGestureHandler', ["$$rAF", function($$rAF) { + + function GestureHandler(name) { + this.name = name; + this.state = {}; + } + GestureHandler.prototype = { + onStart: angular.noop, + onMove: angular.noop, + onEnd: angular.noop, + onCancel: angular.noop, + options: {}, + + dispatchEvent: dispatchEvent, + + start: function(ev, pointer) { + if (this.state.isRunning) return; + var parentTarget = this.getNearestParent(ev.target); + var parentTargetOptions = parentTarget && parentTarget.$mdGesture[this.name] || {}; + + this.state = { + isRunning: true, + options: angular.extend({}, this.options, parentTargetOptions), + registeredParent: parentTarget + }; + this.onStart(ev, pointer); + }, + move: function(ev, pointer) { + if (!this.state.isRunning) return; + this.onMove(ev, pointer); + }, + end: function(ev, pointer) { + if (!this.state.isRunning) return; + this.onEnd(ev, pointer); + this.state.isRunning = false; + }, + cancel: function(ev, pointer) { + this.onCancel(ev, pointer); + this.state = {}; + }, + + // Find and return the nearest parent element that has been registered via + // $mdGesture.register(element, 'handlerName'). + getNearestParent: function(node) { + var current = node; + while (current) { + if ( (current.$mdGesture || {})[this.name] ) { + return current; + } + current = current.parentNode; + } + }, + + registerElement: function(element, options) { + var self = this; + element[0].$mdGesture = element[0].$mdGesture || {}; + element[0].$mdGesture[this.name] = options || {}; + element.on('$destroy', onDestroy); + + return onDestroy; + + function onDestroy() { + delete element[0].$mdGesture[self.name]; + element.off('$destroy', onDestroy); + } + }, + }; + + var customEventOptions = { + bubbles: true, + cancelable: true + }; + /* + * NOTE: dispatchEvent is very performance sensitive. + */ + function dispatchEvent(srcEvent, eventType, eventPointer, /*original DOMEvent */ev) { + eventPointer = eventPointer || pointer; + var eventObj; + + if (eventType === 'click') { + eventObj = document.createEvent('MouseEvents'); + eventObj.initMouseEvent( + 'click', true, true, window, ev.detail, + ev.screenX, ev.screenY, ev.clientX, ev.clientY, + ev.ctrlKey, ev.altKey, ev.shiftKey, ev.metaKey, + ev.button, ev.relatedTarget || null + ); + + } else { + eventObj = document.createEvent('CustomEvent'); + eventObj.initCustomEvent(eventType, true, true, {}); + } + eventObj.$material = true; + eventObj.pointer = eventPointer; + eventObj.srcEvent = srcEvent; + eventPointer.target.dispatchEvent(eventObj); + } + + return GestureHandler; +}]); + +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +angular.module('material.core') + .provider('$$interimElement', InterimElementProvider); /* * @ngdoc service - * @name $mdEffects - * @module material.components.animate + * @name $$interimElement + * @module material.core * * @description - * The `$mdEffects` service provides a simple API for various - * Material Design effects. * - * @returns A `$mdEffects` object with the following properties: - * - `{function(element,styles,duration)}` `inkBar` - starts ink bar - * animation on specified DOM element - * - `{function(element,parentElement,clickElement)}` `popIn` - animated show of element overlayed on parent element - * - `{function(element,parentElement)}` `popOut` - animated close of popup overlay + * Factory that contructs `$$interimElement.$service` services. + * Used internally in material design for elements that appear on screen temporarily. + * The service provides a promise-like API for interacting with the temporary + * elements. + * + * ```js + * app.service('$mdToast', function($$interimElement) { + * var $mdToast = $$interimElement(toastDefaultOptions); + * return $mdToast; + * }); + * ``` + * @param {object=} defaultOptions Options used by default for the `show` method on the service. + * + * @returns {$$interimElement.$service} * */ -function MdEffects($rootElement, $$rAF, $sniffer, $q) { - var webkit = /webkit/i.test($sniffer.vendorPrefix); - function vendorProperty(name) { - return webkit ? - ('webkit' + name.charAt(0).toUpperCase() + name.substring(1)) : - name; - } +function InterimElementProvider() { + createInterimElementProvider.$get = InterimElementFactory; + InterimElementFactory.$inject = ["$document", "$q", "$rootScope", "$timeout", "$rootElement", "$animate", "$interpolate", "$mdCompiler", "$mdTheming"]; + return createInterimElementProvider; - var self; - // Publish API for effects... - return self = { - popIn: popIn, + /** + * Returns a new provider which allows configuration of a new interimElement + * service. Allows configuration of default options & methods for options, + * as well as configuration of 'preset' methods (eg dialog.basic(): basic is a preset method) + */ + function createInterimElementProvider(interimFactoryName) { + var EXPOSED_METHODS = ['onHide', 'onShow', 'onRemove']; + var providerConfig = { + presets: {} + }; + var provider = { + setDefaults: setDefaults, + addPreset: addPreset, + $get: factory + }; - /* Constants */ - TRANSITIONEND_EVENT: 'transitionend' + (webkit ? ' webkitTransitionEnd' : ''), - ANIMATIONEND_EVENT: 'animationend' + (webkit ? ' webkitAnimationEnd' : ''), - - TRANSFORM: vendorProperty('transform'), - TRANSITION: vendorProperty('transition'), - TRANSITION_DURATION: vendorProperty('transitionDuration'), - ANIMATION_PLAY_STATE: vendorProperty('animationPlayState'), - ANIMATION_DURATION: vendorProperty('animationDuration'), - ANIMATION_NAME: vendorProperty('animationName'), - ANIMATION_TIMING: vendorProperty('animationTimingFunction'), - ANIMATION_DIRECTION: vendorProperty('animationDirection') - }; - - // ********************************************************** - // API Methods - // ********************************************************** - function popIn(element, parentElement, clickElement) { - var deferred = $q.defer(); - parentElement.append(element); - - var startPos; - if (clickElement) { - var clickRect = clickElement[0].getBoundingClientRect(); - startPos = translateString( - clickRect.left - element[0].offsetWidth, - clickRect.top - element[0].offsetHeight, - 0 - ) + ' scale(0.2)'; - } else { - startPos = 'translate3d(0,100%,0) scale(0.5)'; - } - - element - .css(self.TRANSFORM, startPos) - .css('opacity', 0); - - $$rAF(function() { - $$rAF(function() { - element - .addClass('md-active') - .css(self.TRANSFORM, '') - .css('opacity', '') - .on(self.TRANSITIONEND_EVENT, finished); - }); + /** + * all interim elements will come with the 'build' preset + */ + provider.addPreset('build', { + methods: ['controller', 'controllerAs', 'resolve', + 'template', 'templateUrl', 'themable', 'transformTemplate', 'parent'] }); - function finished(ev) { - //Make sure this transitionend didn't bubble up from a child - if (ev.target === element[0]) { - element.off(self.TRANSITIONEND_EVENT, finished); - deferred.resolve(); - } + factory.$inject = ["$$interimElement", "$animate", "$injector"]; + return provider; + + /** + * Save the configured defaults to be used when the factory is instantiated + */ + function setDefaults(definition) { + providerConfig.optionsFactory = definition.options; + providerConfig.methods = (definition.methods || []).concat(EXPOSED_METHODS); + return provider; + } + + /** + * Save the configured preset to be used when the factory is instantiated + */ + function addPreset(name, definition) { + definition = definition || {}; + definition.methods = definition.methods || []; + definition.options = definition.options || function() { return {}; }; + + if (/^cancel|hide|show$/.test(name)) { + throw new Error("Preset '" + name + "' in " + interimFactoryName + " is reserved!"); + } + if (definition.methods.indexOf('_options') > -1) { + throw new Error("Method '_options' in " + interimFactoryName + " is reserved!"); + } + providerConfig.presets[name] = { + methods: definition.methods.concat(EXPOSED_METHODS), + optionsFactory: definition.options, + argOption: definition.argOption + }; + return provider; + } + + /** + * Create a factory that has the given methods & defaults implementing interimElement + */ + /* @ngInject */ + function factory($$interimElement, $animate, $injector) { + var defaultMethods; + var defaultOptions; + var interimElementService = $$interimElement(); + + /* + * publicService is what the developer will be using. + * It has methods hide(), cancel(), show(), build(), and any other + * presets which were set during the config phase. + */ + var publicService = { + hide: interimElementService.hide, + cancel: interimElementService.cancel, + show: showInterimElement + }; + + defaultMethods = providerConfig.methods || []; + // This must be invoked after the publicService is initialized + defaultOptions = invokeFactory(providerConfig.optionsFactory, {}); + + angular.forEach(providerConfig.presets, function(definition, name) { + var presetDefaults = invokeFactory(definition.optionsFactory, {}); + var presetMethods = (definition.methods || []).concat(defaultMethods); + + // Every interimElement built with a preset has a field called `$type`, + // which matches the name of the preset. + // Eg in preset 'confirm', options.$type === 'confirm' + angular.extend(presetDefaults, { $type: name }); + + // This creates a preset class which has setter methods for every + // method given in the `.addPreset()` function, as well as every + // method given in the `.setDefaults()` function. + // + // @example + // .setDefaults({ + // methods: ['hasBackdrop', 'clickOutsideToClose', 'escapeToClose', 'targetEvent'], + // options: dialogDefaultOptions + // }) + // .addPreset('alert', { + // methods: ['title', 'ok'], + // options: alertDialogOptions + // }) + // + // Set values will be passed to the options when interimElemnt.show() is called. + function Preset(opts) { + this._options = angular.extend({}, presetDefaults, opts); + } + angular.forEach(presetMethods, function(name) { + Preset.prototype[name] = function(value) { + this._options[name] = value; + return this; + }; + }); + + // Create shortcut method for one-linear methods + if (definition.argOption) { + var methodName = 'show' + name.charAt(0).toUpperCase() + name.slice(1); + publicService[methodName] = function(arg) { + var config = publicService[name](arg); + return publicService.show(config); + }; + } + + // eg $mdDialog.alert() will return a new alert preset + publicService[name] = function(arg) { + // If argOption is supplied, eg `argOption: 'content'`, then we assume + // if the argument is not an options object then it is the `argOption` option. + // + // @example `$mdToast.simple('hello')` // sets options.content to hello + // // because argOption === 'content' + if (arguments.length && definition.argOption && !angular.isObject(arg) && + !angular.isArray(arg)) { + return (new Preset())[definition.argOption](arg); + } else { + return new Preset(arg); + } + + }; + }); + + return publicService; + + function showInterimElement(opts) { + // opts is either a preset which stores its options on an _options field, + // or just an object made up of options + if (opts && opts._options) opts = opts._options; + return interimElementService.show( + angular.extend({}, defaultOptions, opts) + ); + } + + /** + * Helper to call $injector.invoke with a local of the factory name for + * this provider. + * If an $mdDialog is providing options for a dialog and tries to inject + * $mdDialog, a circular dependency error will happen. + * We get around that by manually injecting $mdDialog as a local. + */ + function invokeFactory(factory, defaultVal) { + var locals = {}; + locals[interimFactoryName] = publicService; + return $injector.invoke(factory || function() { return defaultVal; }, {}, locals); + } + } - return deferred.promise; } - // ********************************************************** - // Utility Methods - // ********************************************************** + /* @ngInject */ + function InterimElementFactory($document, $q, $rootScope, $timeout, $rootElement, $animate, + $interpolate, $mdCompiler, $mdTheming ) { + var startSymbol = $interpolate.startSymbol(), + endSymbol = $interpolate.endSymbol(), + usesStandardSymbols = ((startSymbol === '{{') && (endSymbol === '}}')), + processTemplate = usesStandardSymbols ? angular.identity : replaceInterpolationSymbols; + + return function createInterimElementService() { + /* + * @ngdoc service + * @name $$interimElement.$service + * + * @description + * A service used to control inserting and removing an element into the DOM. + * + */ + var stack = []; + var service; + return service = { + show: show, + hide: hide, + cancel: cancel + }; + + /* + * @ngdoc method + * @name $$interimElement.$service#show + * @kind function + * + * @description + * Adds the `$interimElement` to the DOM and returns a promise that will be resolved or rejected + * with hide or cancel, respectively. + * + * @param {*} options is hashMap of settings + * @returns a Promise + * + */ + function show(options) { + if (stack.length) { + service.cancel(); + } + + var interimElement = new InterimElement(options); + + stack.push(interimElement); + return interimElement.show().then(function() { + return interimElement.deferred.promise; + }); + } + + /* + * @ngdoc method + * @name $$interimElement.$service#hide + * @kind function + * + * @description + * Removes the `$interimElement` from the DOM and resolves the promise returned from `show` + * + * @param {*} resolveParam Data to resolve the promise with + * @returns a Promise that will be resolved after the element has been removed. + * + */ + function hide(response) { + var interimElement = stack.shift(); + interimElement && interimElement.remove().then(function() { + interimElement.deferred.resolve(response); + }); + + return interimElement ? interimElement.deferred.promise : $q.when(response); + } + + /* + * @ngdoc method + * @name $$interimElement.$service#cancel + * @kind function + * + * @description + * Removes the `$interimElement` from the DOM and rejects the promise returned from `show` + * + * @param {*} reason Data to reject the promise with + * @returns Promise that will be rejected after the element has been removed. + * + */ + function cancel(reason) { + var interimElement = stack.shift(); + interimElement && interimElement.remove().then(function() { + interimElement.deferred.reject(reason); + }); + + return interimElement ? interimElement.deferred.promise : $q.reject(reason); + } - function translateString(x, y, z) { - return 'translate3d(' + Math.floor(x) + 'px,' + Math.floor(y) + 'px,' + Math.floor(z) + 'px)'; + /* + * Internal Interim Element Object + * Used internally to manage the DOM element and related data + */ + function InterimElement(options) { + var self; + var hideTimeout, element; + + options = options || {}; + options = angular.extend({ + scope: options.scope || $rootScope.$new(options.isolateScope), + onShow: function(scope, element, options) { + return $animate.enter(element, options.parent); + }, + onRemove: function(scope, element, options) { + // Element could be undefined if a new element is shown before + // the old one finishes compiling. + return element && $animate.leave(element) || $q.when(); + } + }, options); + + if (options.template) { + options.template = processTemplate(options.template); + } + + return self = { + options: options, + deferred: $q.defer(), + show: function() { + return $mdCompiler.compile(options).then(function(compileData) { + angular.extend(compileData.locals, self.options); + + // Search for parent at insertion time, if not specified + if (angular.isString(options.parent)) { + options.parent = angular.element($document[0].querySelector(options.parent)); + } else if (!options.parent) { + options.parent = $rootElement.find('body'); + if (!options.parent.length) options.parent = $rootElement; + } + + element = compileData.link(options.scope); + if (options.themable) $mdTheming(element); + var ret = options.onShow(options.scope, element, options); + return $q.when(ret) + .then(function(){ + // Issue onComplete callback when the `show()` finishes + (options.onComplete || angular.noop)(options.scope, element, options); + startHideTimeout(); + }); + + function startHideTimeout() { + if (options.hideDelay) { + hideTimeout = $timeout(service.cancel, options.hideDelay) ; + } + } + }); + }, + cancelTimeout: function() { + if (hideTimeout) { + $timeout.cancel(hideTimeout); + hideTimeout = undefined; + } + }, + remove: function() { + self.cancelTimeout(); + var ret = options.onRemove(options.scope, element, options); + return $q.when(ret).then(function() { + options.scope.$destroy(); + }); + } + }; + } + }; + + /* + * Replace `{{` and `}}` in a string (usually a template) with the actual start-/endSymbols used + * for interpolation. This allows pre-defined templates (for components such as dialog, toast etc) + * to continue to work in apps that use custom interpolation start-/endSymbols. + * + * @param {string} text The text in which to replace `{{` / `}}` + * @returns {string} The modified string using the actual interpolation start-/endSymbols + */ + function replaceInterpolationSymbols(text) { + if (!text || !angular.isString(text)) return text; + return text.replace(/\{\{/g, startSymbol).replace(/}}/g, endSymbol); + } } } })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { + 'use strict'; -angular.module('material.animations') + /** + * @ngdoc module + * @name material.core.componentRegistry + * + * @description + * A component instance registration service. + * Note: currently this as a private service in the SideNav component. + */ + angular.module('material.core') + .factory('$mdComponentRegistry', ComponentRegistry); -.directive('inkRipple', [ - '$mdInkRipple', - InkRippleDirective -]) + /* + * @private + * @ngdoc factory + * @name ComponentRegistry + * @module material.core.componentRegistry + * + */ + function ComponentRegistry($log, $q) { -.factory('$mdInkRipple', [ - '$window', - '$$rAF', - '$mdEffects', - '$timeout', - '$mdUtil', - InkRippleService -]); + var self; + var instances = [ ]; + var pendings = { }; + + return self = { + /** + * Used to print an error when an instance for a handle isn't found. + */ + notFoundError: function(handle) { + $log.error('No instance found for handle', handle); + }, + /** + * Return all registered instances as an array. + */ + getInstances: function() { + return instances; + }, + + /** + * Get a registered instance. + * @param handle the String handle to look up for a registered instance. + */ + get: function(handle) { + if ( !isValidID(handle) ) return null; + + var i, j, instance; + for(i = 0, j = instances.length; i < j; i++) { + instance = instances[i]; + if(instance.$$mdHandle === handle) { + return instance; + } + } + return null; + }, + + /** + * Register an instance. + * @param instance the instance to register + * @param handle the handle to identify the instance under. + */ + register: function(instance, handle) { + if ( !handle ) return angular.noop; + + instance.$$mdHandle = handle; + instances.push(instance); + resolveWhen(); + + return deregister; + + /** + * Remove registration for an instance + */ + function deregister() { + var index = instances.indexOf(instance); + if (index !== -1) { + instances.splice(index, 1); + } + } + + /** + * Resolve any pending promises for this instance + */ + function resolveWhen() { + var dfd = pendings[handle]; + if ( dfd ) { + dfd.resolve( instance ); + delete pendings[handle]; + } + } + }, + + /** + * Async accessor to registered component instance + * If not available then a promise is created to notify + * all listeners when the instance is registered. + */ + when : function(handle) { + if ( isValidID(handle) ) { + var deferred = $q.defer(); + var instance = self.get(handle); + + if ( instance ) { + deferred.resolve( instance ); + } else { + pendings[handle] = deferred; + } + + return deferred.promise; + } + return $q.reject("Invalid `md-component-id` value."); + } + + }; + + function isValidID(handle){ + return handle && (handle !== ""); + } + + } + ComponentRegistry.$inject = ["$log", "$q"]; + + +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +angular.module('material.core') + .factory('$mdInkRipple', InkRippleService) + .directive('mdInkRipple', InkRippleDirective) + .directive('mdNoInk', attrNoDirective()) + .directive('mdNoBar', attrNoDirective()) + .directive('mdNoStretch', attrNoDirective()); function InkRippleDirective($mdInkRipple) { - return function(scope, element, attr) { - if (attr.inkRipple == 'checkbox') { - $mdInkRipple.attachCheckboxBehavior(element); - } else { - $mdInkRipple.attachButtonBehavior(element); + return { + controller: angular.noop, + link: function (scope, element, attr) { + if (attr.hasOwnProperty('mdInkRippleCheckbox')) { + $mdInkRipple.attachCheckboxBehavior(scope, element); + } else { + $mdInkRipple.attachButtonBehavior(scope, element); + } } }; } +InkRippleDirective.$inject = ["$mdInkRipple"]; -function InkRippleService($window, $$rAF, $mdEffects, $timeout, $mdUtil) { +function InkRippleService($window, $timeout) { return { attachButtonBehavior: attachButtonBehavior, attachCheckboxBehavior: attachCheckboxBehavior, + attachTabBehavior: attachTabBehavior, attach: attach }; - function attachButtonBehavior(element) { - return attach(element, { - mousedown: true, + function attachButtonBehavior(scope, element, options) { + return attach(scope, element, angular.extend({ + isFAB: element.hasClass('md-fab'), + isMenuItem: element.hasClass('md-menu-item'), center: false, - animationDuration: 350, - mousedownPauseTime: 175, - animationName: 'inkRippleButton', - animationTimingFunction: 'linear' - }); + dimBackground: true + }, options)); } - function attachCheckboxBehavior(element) { - return attach(element, { - mousedown: true, + function attachCheckboxBehavior(scope, element, options) { + return attach(scope, element, angular.extend({ center: true, - animationDuration: 300, - mousedownPauseTime: 180, - animationName: 'inkRippleCheckbox', - animationTimingFunction: 'linear' - }); + dimBackground: false, + fitRipple: true + }, options)); } - function attach(element, options) { - // Parent element with noink attr? Abort. - if (element.controller('noink')) return angular.noop; - var contentParent = element.controller('mdContent'); + function attachTabBehavior(scope, element, options) { + return attach(scope, element, angular.extend({ + center: false, + dimBackground: true, + outline: true + }, options)); + } + + function attach(scope, element, options) { + if (element.controller('mdNoInk')) return angular.noop; options = angular.extend({ + colorElement: element, mousedown: true, hover: true, focus: true, center: false, - animationDuration: 300, mousedownPauseTime: 150, - animationName: '', - animationTimingFunction: 'linear' - }, options || {}); + dimBackground: false, + outline: false, + isFAB: false, + isMenuItem: false, + fitRipple: false + }, options); - var rippleContainer; - var node = element[0]; - var hammertime = new Hammer(node); + var rippleSize, + controller = element.controller('mdInkRipple') || {}, + counter = 0, + ripples = [], + states = [], + isActiveExpr = element.attr('md-highlight'), + isActive = false, + isHeld = false, + node = element[0], + rippleSizeSetting = element.attr('md-ripple-size'), + color = parseColor(element.attr('md-ink-ripple')) || parseColor($window.getComputedStyle(options.colorElement[0]).color || 'rgb(0, 0, 0)'); + switch (rippleSizeSetting) { + case 'full': + options.isFAB = true; + break; + case 'partial': + options.isFAB = false; + break; + } + + // expose onInput for ripple testing if (options.mousedown) { - hammertime.on('hammer.input', onInput); + element.on('$md.pressdown', onPressDown) + .on('$md.pressup', onPressUp); + } + + controller.createRipple = createRipple; + + if (isActiveExpr) { + scope.$watch(isActiveExpr, function watchActive(newValue) { + isActive = newValue; + if (isActive && !ripples.length) { + $timeout(function () { createRipple(0, 0); }, 0, false); + } + angular.forEach(ripples, updateElement); + }); } // Publish self-detach method if desired... return function detach() { - hammertime.destroy(); - if (rippleContainer) { - rippleContainer.remove(); - } + element.off('$md.pressdown', onPressDown) + .off('$md.pressup', onPressUp); + getRippleContainer().remove(); }; - function rippleIsAllowed() { - return !element[0].hasAttribute('disabled'); + /** + * Gets the current ripple container + * If there is no ripple container, it creates one and returns it + * + * @returns {angular.element} ripple container element + */ + function getRippleContainer() { + var container = element.data('$mdRippleContainer'); + if (container) return container; + container = angular.element('
'); + element.append(container); + element.data('$mdRippleContainer', container); + return container; } - function createRipple(left, top, positionsAreAbsolute) { + function parseColor(color) { + if (!color) return; + if (color.indexOf('rgba') === 0) return color.replace(/\d?\.?\d*\s*\)\s*$/, '0.1)'); + if (color.indexOf('rgb') === 0) return rgbToRGBA(color); + if (color.indexOf('#') === 0) return hexToRGBA(color); - var rippleEl = angular.element('
') - .css($mdEffects.ANIMATION_DURATION, options.animationDuration + 'ms') - .css($mdEffects.ANIMATION_NAME, options.animationName) - .css($mdEffects.ANIMATION_TIMING, options.animationTimingFunction) - .on($mdEffects.ANIMATIONEND_EVENT, function() { - rippleEl.remove(); - }); - - if (!rippleContainer) { - rippleContainer = angular.element('
'); - element.append(rippleContainer); - } - rippleContainer.append(rippleEl); - - var containerWidth = rippleContainer.prop('offsetWidth'); - - if (options.center) { - left = containerWidth / 2; - top = rippleContainer.prop('offsetHeight') / 2; - } else if (positionsAreAbsolute) { - var elementRect = node.getBoundingClientRect(); - left -= elementRect.left; - top -= elementRect.top; + /** + * Converts a hex value to an rgba string + * + * @param {string} hex value (3 or 6 digits) to be converted + * + * @returns {string} rgba color with 0.1 alpha + */ + function hexToRGBA(color) { + var hex = color.charAt(0) === '#' ? color.substr(1) : color, + dig = hex.length / 3, + red = hex.substr(0, dig), + grn = hex.substr(dig, dig), + blu = hex.substr(dig * 2); + if (dig === 1) { + red += red; + grn += grn; + blu += blu; + } + return 'rgba(' + parseInt(red, 16) + ',' + parseInt(grn, 16) + ',' + parseInt(blu, 16) + ',0.1)'; } - if (contentParent) { - top += contentParent.$element.prop('scrollTop'); + /** + * Converts rgb value to rgba string + * + * @param {string} rgb color string + * + * @returns {string} rgba color with 0.1 alpha + */ + function rgbToRGBA(color) { + return color.replace(')', ', 0.1)').replace('(', 'a('); } - var css = { - 'background-color': $window.getComputedStyle(rippleEl[0]).color || - $window.getComputedStyle(node).color, - 'border-radius': (containerWidth / 2) + 'px', - - left: (left - containerWidth / 2) + 'px', - width: containerWidth + 'px', - - top: (top - containerWidth / 2) + 'px', - height: containerWidth + 'px' - }; - css[$mdEffects.ANIMATION_DURATION] = options.fadeoutDuration + 'ms'; - rippleEl.css(css); - - return rippleEl; } - var pauseTimeout; - var rippleEl; - function onInput(ev) { - if (ev.eventType === Hammer.INPUT_START && ev.isFirst && rippleIsAllowed()) { + function removeElement(elem, wait) { + ripples.splice(ripples.indexOf(elem), 1); + if (ripples.length === 0) { + getRippleContainer().css({ backgroundColor: '' }); + } + $timeout(function () { elem.remove(); }, wait, false); + } - rippleEl = createRipple(ev.center.x, ev.center.y, true); - pauseTimeout = $timeout(function() { - rippleEl && rippleEl.css($mdEffects.ANIMATION_PLAY_STATE, 'paused'); - }, options.mousedownPauseTime, false); + function updateElement(elem) { + var index = ripples.indexOf(elem), + state = states[index] || {}, + elemIsActive = ripples.length > 1 ? false : isActive, + elemIsHeld = ripples.length > 1 ? false : isHeld; + if (elemIsActive || state.animating || elemIsHeld) { + elem.addClass('md-ripple-visible'); + } else if (elem) { + elem.removeClass('md-ripple-visible'); + if (options.outline) { + elem.css({ + width: rippleSize + 'px', + height: rippleSize + 'px', + marginLeft: (rippleSize * -1) + 'px', + marginTop: (rippleSize * -1) + 'px' + }); + } + removeElement(elem, options.outline ? 450 : 650); + } + } - rippleEl.on('$destroy', function() { - rippleEl = null; - }); + /** + * Creates a ripple at the provided coordinates + * + * @param {number} left cursor position + * @param {number} top cursor position + * + * @returns {angular.element} the generated ripple element + */ + function createRipple(left, top) { - } else if (ev.eventType === Hammer.INPUT_END && ev.isFinal) { - $timeout.cancel(pauseTimeout); - rippleEl && rippleEl.css($mdEffects.ANIMATION_PLAY_STATE, ''); + color = parseColor(element.attr('md-ink-ripple')) || parseColor($window.getComputedStyle(options.colorElement[0]).color || 'rgb(0, 0, 0)'); + + var container = getRippleContainer(), + size = getRippleSize(left, top), + css = getRippleCss(size, left, top), + elem = getRippleElement(css), + index = ripples.indexOf(elem), + state = states[index] || {}; + + rippleSize = size; + + state.animating = true; + + $timeout(function () { + if (options.dimBackground) { + container.css({ backgroundColor: color }); + } + elem.addClass('md-ripple-placed md-ripple-scaled'); + if (options.outline) { + elem.css({ + borderWidth: (size * 0.5) + 'px', + marginLeft: (size * -0.5) + 'px', + marginTop: (size * -0.5) + 'px' + }); + } else { + elem.css({ left: '50%', top: '50%' }); + } + updateElement(elem); + $timeout(function () { + state.animating = false; + updateElement(elem); + }, (options.outline ? 450 : 225), false); + }, 0, false); + + return elem; + + /** + * Creates the ripple element with the provided css + * + * @param {object} css properties to be applied + * + * @returns {angular.element} the generated ripple element + */ + function getRippleElement(css) { + var elem = angular.element('
'); + ripples.unshift(elem); + states.unshift({ animating: true }); + container.append(elem); + css && elem.css(css); + return elem; + } + + /** + * Calculate the ripple size + * + * @returns {number} calculated ripple diameter + */ + function getRippleSize(left, top) { + var width = container.prop('offsetWidth'), + height = container.prop('offsetHeight'), + multiplier, size, rect; + if (options.isMenuItem) { + size = Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)); + } else if (options.outline) { + rect = node.getBoundingClientRect(); + left -= rect.left; + top -= rect.top; + width = Math.max(left, width - left); + height = Math.max(top, height - top); + size = 2 * Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)); + } else { + multiplier = options.isFAB ? 1.1 : 0.8; + size = Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)) * multiplier; + if (options.fitRipple) { + size = Math.min(height, width, size); + } + } + return size; + } + + /** + * Generates the ripple css + * + * @param {number} the diameter of the ripple + * @param {number} the left cursor offset + * @param {number} the top cursor offset + * + * @returns {{backgroundColor: *, width: string, height: string, marginLeft: string, marginTop: string}} + */ + function getRippleCss(size, left, top) { + var rect, + css = { + backgroundColor: rgbaToRGB(color), + borderColor: rgbaToRGB(color), + width: size + 'px', + height: size + 'px' + }; + + if (options.outline) { + css.width = 0; + css.height = 0; + } else { + css.marginLeft = css.marginTop = (size * -0.5) + 'px'; + } + + if (options.center) { + css.left = css.top = '50%'; + } else { + rect = node.getBoundingClientRect(); + css.left = Math.round((left - rect.left) / container.prop('offsetWidth') * 100) + '%'; + css.top = Math.round((top - rect.top) / container.prop('offsetHeight') * 100) + '%'; + } + + return css; + + /** + * Converts rgba string to rgb, removing the alpha value + * + * @param {string} rgba color + * + * @returns {string} rgb color + */ + function rgbaToRGB(color) { + return color.replace('rgba', 'rgb').replace(/,[^\)\,]+\)/, ')'); + } + } + } + + /** + * Handles user input start and stop events + * + */ + function onPressDown(ev) { + if (!isRippleAllowed()) return; + + var ripple = createRipple(ev.pointer.x, ev.pointer.y); + isHeld = true; + } + function onPressUp(ev) { + isHeld = false; + var ripple = ripples[ ripples.length - 1 ]; + $timeout(function () { updateElement(ripple); }, 0, false); + } + + /** + * Determines if the ripple is allowed + * + * @returns {boolean} true if the ripple is allowed, false if not + */ + function isRippleAllowed() { + var parent = node.parentNode; + var grandparent = parent && parent.parentNode; + var ancestor = grandparent && grandparent.parentNode; + return !isDisabled(node) && !isDisabled(parent) && !isDisabled(grandparent) && !isDisabled(ancestor); + function isDisabled (elem) { + return elem && elem.hasAttribute && elem.hasAttribute('disabled'); } } } - } -})(); - -(function() { -angular.module('material.animations') +InkRippleService.$inject = ["$window", "$timeout"]; /** * noink/nobar/nostretch directive: make any element that has one of - * these attributes be given a controller, so that other directives can + * these attributes be given a controller, so that other directives can * `require:` these and see if there is a `no` parent attribute. * * @usage * - * + * * * * @@ -860,27 +2186,21 @@ angular.module('material.animations') * * myApp.directive('detectNo', function() { * return { - * require: ['^?noink', ^?nobar'], + * require: ['^?mdNoInk', ^?mdNoBar'], * link: function(scope, element, attr, ctrls) { * var noinkCtrl = ctrls[0]; * var nobarCtrl = ctrls[1]; * if (noInkCtrl) { - * alert("the noink flag has been specified on an ancestor!"); + * alert("the md-no-ink flag has been specified on an ancestor!"); * } * if (nobarCtrl) { - * alert("the nobar flag has been specified on an ancestor!"); + * alert("the md-no-bar flag has been specified on an ancestor!"); * } * } * }; * }); * */ -.directive({ - noink: attrNoDirective(), - nobar: attrNoDirective(), - nostretch: attrNoDirective() -}); - function attrNoDirective() { return function() { return { @@ -890,7 +2210,971 @@ function attrNoDirective() { } })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + +angular.module('material.core.theming.palette', []) +.constant('$mdColorPalette', { + 'red': { + '50': '#ffebee', + '100': '#ffcdd2', + '200': '#ef9a9a', + '300': '#e57373', + '400': '#ef5350', + '500': '#f44336', + '600': '#e53935', + '700': '#d32f2f', + '800': '#c62828', + '900': '#b71c1c', + 'A100': '#ff8a80', + 'A200': '#ff5252', + 'A400': '#ff1744', + 'A700': '#d50000', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 300 400 A100', + 'contrastStrongLightColors': '500 600 700 A200 A400 A700' + }, + 'pink': { + '50': '#fce4ec', + '100': '#f8bbd0', + '200': '#f48fb1', + '300': '#f06292', + '400': '#ec407a', + '500': '#e91e63', + '600': '#d81b60', + '700': '#c2185b', + '800': '#ad1457', + '900': '#880e4f', + 'A100': '#ff80ab', + 'A200': '#ff4081', + 'A400': '#f50057', + 'A700': '#c51162', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 300 400 A100', + 'contrastStrongLightColors': '500 600 A200 A400 A700' + }, + 'purple': { + '50': '#f3e5f5', + '100': '#e1bee7', + '200': '#ce93d8', + '300': '#ba68c8', + '400': '#ab47bc', + '500': '#9c27b0', + '600': '#8e24aa', + '700': '#7b1fa2', + '800': '#6a1b9a', + '900': '#4a148c', + 'A100': '#ea80fc', + 'A200': '#e040fb', + 'A400': '#d500f9', + 'A700': '#aa00ff', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 A100', + 'contrastStrongLightColors': '300 400 A200 A400 A700' + }, + 'deep-purple': { + '50': '#ede7f6', + '100': '#d1c4e9', + '200': '#b39ddb', + '300': '#9575cd', + '400': '#7e57c2', + '500': '#673ab7', + '600': '#5e35b1', + '700': '#512da8', + '800': '#4527a0', + '900': '#311b92', + 'A100': '#b388ff', + 'A200': '#7c4dff', + 'A400': '#651fff', + 'A700': '#6200ea', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 A100', + 'contrastStrongLightColors': '300 400 A200' + }, + 'indigo': { + '50': '#e8eaf6', + '100': '#c5cae9', + '200': '#9fa8da', + '300': '#7986cb', + '400': '#5c6bc0', + '500': '#3f51b5', + '600': '#3949ab', + '700': '#303f9f', + '800': '#283593', + '900': '#1a237e', + 'A100': '#8c9eff', + 'A200': '#536dfe', + 'A400': '#3d5afe', + 'A700': '#304ffe', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 A100', + 'contrastStrongLightColors': '300 400 A200 A400' + }, + 'blue': { + '50': '#e3f2fd', + '100': '#bbdefb', + '200': '#90caf9', + '300': '#64b5f6', + '400': '#42a5f5', + '500': '#2196f3', + '600': '#1e88e5', + '700': '#1976d2', + '800': '#1565c0', + '900': '#0d47a1', + 'A100': '#82b1ff', + 'A200': '#448aff', + 'A400': '#2979ff', + 'A700': '#2962ff', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '100 200 300 400 A100', + 'contrastStrongLightColors': '500 600 700 A200 A400 A700' + }, + 'light-blue': { + '50': '#e1f5fe', + '100': '#b3e5fc', + '200': '#81d4fa', + '300': '#4fc3f7', + '400': '#29b6f6', + '500': '#03a9f4', + '600': '#039be5', + '700': '#0288d1', + '800': '#0277bd', + '900': '#01579b', + 'A100': '#80d8ff', + 'A200': '#40c4ff', + 'A400': '#00b0ff', + 'A700': '#0091ea', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '500 600 700 800 900 A700', + 'contrastStrongLightColors': '500 600 700 800 A700' + }, + 'cyan': { + '50': '#e0f7fa', + '100': '#b2ebf2', + '200': '#80deea', + '300': '#4dd0e1', + '400': '#26c6da', + '500': '#00bcd4', + '600': '#00acc1', + '700': '#0097a7', + '800': '#00838f', + '900': '#006064', + 'A100': '#84ffff', + 'A200': '#18ffff', + 'A400': '#00e5ff', + 'A700': '#00b8d4', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '500 600 700 800 900', + 'contrastStrongLightColors': '500 600 700 800' + }, + 'teal': { + '50': '#e0f2f1', + '100': '#b2dfdb', + '200': '#80cbc4', + '300': '#4db6ac', + '400': '#26a69a', + '500': '#009688', + '600': '#00897b', + '700': '#00796b', + '800': '#00695c', + '900': '#004d40', + 'A100': '#a7ffeb', + 'A200': '#64ffda', + 'A400': '#1de9b6', + 'A700': '#00bfa5', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '500 600 700 800 900', + 'contrastStrongLightColors': '500 600 700' + }, + 'green': { + '50': '#e8f5e9', + '100': '#c8e6c9', + '200': '#a5d6a7', + '300': '#81c784', + '400': '#66bb6a', + '500': '#4caf50', + '600': '#43a047', + '700': '#388e3c', + '800': '#2e7d32', + '900': '#1b5e20', + 'A100': '#b9f6ca', + 'A200': '#69f0ae', + 'A400': '#00e676', + 'A700': '#00c853', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '500 600 700 800 900', + 'contrastStrongLightColors': '500 600 700' + }, + 'light-green': { + '50': '#f1f8e9', + '100': '#dcedc8', + '200': '#c5e1a5', + '300': '#aed581', + '400': '#9ccc65', + '500': '#8bc34a', + '600': '#7cb342', + '700': '#689f38', + '800': '#558b2f', + '900': '#33691e', + 'A100': '#ccff90', + 'A200': '#b2ff59', + 'A400': '#76ff03', + 'A700': '#64dd17', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '800 900', + 'contrastStrongLightColors': '800 900' + }, + 'lime': { + '50': '#f9fbe7', + '100': '#f0f4c3', + '200': '#e6ee9c', + '300': '#dce775', + '400': '#d4e157', + '500': '#cddc39', + '600': '#c0ca33', + '700': '#afb42b', + '800': '#9e9d24', + '900': '#827717', + 'A100': '#f4ff81', + 'A200': '#eeff41', + 'A400': '#c6ff00', + 'A700': '#aeea00', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '900', + 'contrastStrongLightColors': '900' + }, + 'yellow': { + '50': '#fffde7', + '100': '#fff9c4', + '200': '#fff59d', + '300': '#fff176', + '400': '#ffee58', + '500': '#ffeb3b', + '600': '#fdd835', + '700': '#fbc02d', + '800': '#f9a825', + '900': '#f57f17', + 'A100': '#ffff8d', + 'A200': '#ffff00', + 'A400': '#ffea00', + 'A700': '#ffd600', + 'contrastDefaultColor': 'dark' + }, + 'amber': { + '50': '#fff8e1', + '100': '#ffecb3', + '200': '#ffe082', + '300': '#ffd54f', + '400': '#ffca28', + '500': '#ffc107', + '600': '#ffb300', + '700': '#ffa000', + '800': '#ff8f00', + '900': '#ff6f00', + 'A100': '#ffe57f', + 'A200': '#ffd740', + 'A400': '#ffc400', + 'A700': '#ffab00', + 'contrastDefaultColor': 'dark' + }, + 'orange': { + '50': '#fff3e0', + '100': '#ffe0b2', + '200': '#ffcc80', + '300': '#ffb74d', + '400': '#ffa726', + '500': '#ff9800', + '600': '#fb8c00', + '700': '#f57c00', + '800': '#ef6c00', + '900': '#e65100', + 'A100': '#ffd180', + 'A200': '#ffab40', + 'A400': '#ff9100', + 'A700': '#ff6d00', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '800 900', + 'contrastStrongLightColors': '800 900' + }, + 'deep-orange': { + '50': '#fbe9e7', + '100': '#ffccbc', + '200': '#ffab91', + '300': '#ff8a65', + '400': '#ff7043', + '500': '#ff5722', + '600': '#f4511e', + '700': '#e64a19', + '800': '#d84315', + '900': '#bf360c', + 'A100': '#ff9e80', + 'A200': '#ff6e40', + 'A400': '#ff3d00', + 'A700': '#dd2c00', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 300 400 A100 A200', + 'contrastStrongLightColors': '500 600 700 800 900 A400 A700' + }, + 'brown': { + '50': '#efebe9', + '100': '#d7ccc8', + '200': '#bcaaa4', + '300': '#a1887f', + '400': '#8d6e63', + '500': '#795548', + '600': '#6d4c41', + '700': '#5d4037', + '800': '#4e342e', + '900': '#3e2723', + 'A100': '#d7ccc8', + 'A200': '#bcaaa4', + 'A400': '#8d6e63', + 'A700': '#5d4037', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200', + 'contrastStrongLightColors': '300 400' + }, + 'grey': { + '0': '#ffffff', + '50': '#fafafa', + '100': '#f5f5f5', + '200': '#eeeeee', + '300': '#e0e0e0', + '400': '#bdbdbd', + '500': '#9e9e9e', + '600': '#757575', + '700': '#616161', + '800': '#424242', + '900': '#212121', + '1000': '#000000', + 'A100': '#ffffff', + 'A200': '#eeeeee', + 'A400': '#bdbdbd', + 'A700': '#616161', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '600 700 800 900' + }, + 'blue-grey': { + '50': '#eceff1', + '100': '#cfd8dc', + '200': '#b0bec5', + '300': '#90a4ae', + '400': '#78909c', + '500': '#607d8b', + '600': '#546e7a', + '700': '#455a64', + '800': '#37474f', + '900': '#263238', + 'A100': '#cfd8dc', + 'A200': '#b0bec5', + 'A400': '#78909c', + 'A700': '#455a64', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 300', + 'contrastStrongLightColors': '400 500' + } +}); +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +angular.module('material.core.theming', ['material.core.theming.palette']) + .directive('mdTheme', ThemingDirective) + .directive('mdThemable', ThemableDirective) + .provider('$mdTheming', ThemingProvider) + .run(generateThemes); + +/** + * @ngdoc provider + * @name $mdThemingProvider + * @module material.core + * + * @description Provider to configure the `$mdTheming` service. + */ + +/** + * @ngdoc method + * @name $mdThemingProvider#setDefaultTheme + * @param {string} themeName Default theme name to be applied to elements. Default value is `default`. + */ + +/** + * @ngdoc method + * @name $mdThemingProvider#alwaysWatchTheme + * @param {boolean} watch Whether or not to always watch themes for changes and re-apply + * classes when they change. Default is `false`. Enabling can reduce performance. + */ + +// In memory storage of defined themes and color palettes (both loaded by CSS, and user specified) +var PALETTES; +var THEMES; +var themingProvider; +var generationIsDone; + +var DARK_FOREGROUND = { + name: 'dark', + '1': 'rgba(0,0,0,0.87)', + '2': 'rgba(0,0,0,0.54)', + '3': 'rgba(0,0,0,0.26)', + '4': 'rgba(0,0,0,0.12)' +}; +var LIGHT_FOREGROUND = { + name: 'light', + '1': 'rgba(255,255,255,1.0)', + '2': 'rgba(255,255,255,0.7)', + '3': 'rgba(255,255,255,0.3)', + '4': 'rgba(255,255,255,0.12)' +}; + +var DARK_SHADOW = '1px 1px 0px rgba(0,0,0,0.4), -1px -1px 0px rgba(0,0,0,0.4)'; +var LIGHT_SHADOW = ''; + +var DARK_CONTRAST_COLOR = colorToRgbaArray('rgba(0,0,0,0.87)'); +var LIGHT_CONTRAST_COLOR = colorToRgbaArray('rgba(255,255,255,0.87'); +var STRONG_LIGHT_CONTRAST_COLOR = colorToRgbaArray('rgb(255,255,255)'); + +var THEME_COLOR_TYPES = ['primary', 'accent', 'warn', 'background']; +var DEFAULT_COLOR_TYPE = 'primary'; + +// A color in a theme will use these hues by default, if not specified by user. +var LIGHT_DEFAULT_HUES = { + 'accent': { + 'default': 'A200', + 'hue-1': 'A100', + 'hue-2': 'A400', + 'hue-3': 'A700' + } +}; +var DARK_DEFAULT_HUES = { + 'background': { + 'default': '500', + 'hue-1': '300', + 'hue-2': '600', + 'hue-3': '800' + } +}; +THEME_COLOR_TYPES.forEach(function(colorType) { + // Color types with unspecified default hues will use these default hue values + var defaultDefaultHues = { + 'default': '500', + 'hue-1': '300', + 'hue-2': '800', + 'hue-3': 'A100' + }; + if (!LIGHT_DEFAULT_HUES[colorType]) LIGHT_DEFAULT_HUES[colorType] = defaultDefaultHues; + if (!DARK_DEFAULT_HUES[colorType]) DARK_DEFAULT_HUES[colorType] = defaultDefaultHues; +}); + +var VALID_HUE_VALUES = [ + '50', '100', '200', '300', '400', '500', '600', + '700', '800', '900', 'A100', 'A200', 'A400', 'A700' +]; + +function ThemingProvider($mdColorPalette) { + PALETTES = {}; + THEMES = {}; + var defaultTheme = 'default'; + var alwaysWatchTheme = false; + + // Load JS Defined Palettes + angular.extend(PALETTES, $mdColorPalette); + + // Default theme defined in core.js + + ThemingService.$inject = ["$rootScope", "$log"]; + return themingProvider = { + definePalette: definePalette, + extendPalette: extendPalette, + theme: registerTheme, + + setDefaultTheme: function(theme) { + defaultTheme = theme; + }, + alwaysWatchTheme: function(alwaysWatch) { + alwaysWatchTheme = alwaysWatch; + }, + $get: ThemingService, + _LIGHT_DEFAULT_HUES: LIGHT_DEFAULT_HUES, + _DARK_DEFAULT_HUES: DARK_DEFAULT_HUES, + _PALETTES: PALETTES, + _THEMES: THEMES, + _parseRules: parseRules, + _rgba: rgba + }; + + // Example: $mdThemingProvider.definePalette('neonRed', { 50: '#f5fafa', ... }); + function definePalette(name, map) { + map = map || {}; + PALETTES[name] = checkPaletteValid(name, map); + return themingProvider; + } + + // Returns an new object which is a copy of a given palette `name` with variables from + // `map` overwritten + // Example: var neonRedMap = $mdThemingProvider.extendPalette('red', { 50: '#f5fafafa' }); + function extendPalette(name, map) { + return checkPaletteValid(name, angular.extend({}, PALETTES[name] || {}, map) ); + } + + // Make sure that palette has all required hues + function checkPaletteValid(name, map) { + var missingColors = VALID_HUE_VALUES.filter(function(field) { + return !map[field]; + }); + if (missingColors.length) { + throw new Error("Missing colors %1 in palette %2!" + .replace('%1', missingColors.join(', ')) + .replace('%2', name)); + } + + return map; + } + + // Register a theme (which is a collection of color palettes to use with various states + // ie. warn, accent, primary ) + // Optionally inherit from an existing theme + // $mdThemingProvider.theme('custom-theme').primaryPalette('red'); + function registerTheme(name, inheritFrom) { + inheritFrom = inheritFrom || 'default'; + if (THEMES[name]) return THEMES[name]; + + var parentTheme = typeof inheritFrom === 'string' ? THEMES[inheritFrom] : inheritFrom; + var theme = new Theme(name); + + if (parentTheme) { + angular.forEach(parentTheme.colors, function(color, colorType) { + theme.colors[colorType] = { + name: color.name, + // Make sure a COPY of the hues is given to the child color, + // not the same reference. + hues: angular.extend({}, color.hues) + }; + }); + } + THEMES[name] = theme; + + return theme; + } + + function Theme(name) { + var self = this; + self.name = name; + self.colors = {}; + + self.dark = setDark; + setDark(false); + + function setDark(isDark) { + isDark = arguments.length === 0 ? true : !!isDark; + + // If no change, abort + if (isDark === self.isDark) return; + + self.isDark = isDark; + + self.foregroundPalette = self.isDark ? LIGHT_FOREGROUND : DARK_FOREGROUND; + self.foregroundShadow = self.isDark ? DARK_SHADOW : LIGHT_SHADOW; + + // Light and dark themes have different default hues. + // Go through each existing color type for this theme, and for every + // hue value that is still the default hue value from the previous light/dark setting, + // set it to the default hue value from the new light/dark setting. + var newDefaultHues = self.isDark ? DARK_DEFAULT_HUES : LIGHT_DEFAULT_HUES; + var oldDefaultHues = self.isDark ? LIGHT_DEFAULT_HUES : DARK_DEFAULT_HUES; + angular.forEach(newDefaultHues, function(newDefaults, colorType) { + var color = self.colors[colorType]; + var oldDefaults = oldDefaultHues[colorType]; + if (color) { + for (var hueName in color.hues) { + if (color.hues[hueName] === oldDefaults[hueName]) { + color.hues[hueName] = newDefaults[hueName]; + } + } + } + }); + + return self; + } + + THEME_COLOR_TYPES.forEach(function(colorType) { + var defaultHues = (self.isDark ? DARK_DEFAULT_HUES : LIGHT_DEFAULT_HUES)[colorType]; + self[colorType + 'Palette'] = function setPaletteType(paletteName, hues) { + var color = self.colors[colorType] = { + name: paletteName, + hues: angular.extend({}, defaultHues, hues) + }; + + Object.keys(color.hues).forEach(function(name) { + if (!defaultHues[name]) { + throw new Error("Invalid hue name '%1' in theme %2's %3 color %4. Available hue names: %4" + .replace('%1', name) + .replace('%2', self.name) + .replace('%3', paletteName) + .replace('%4', Object.keys(defaultHues).join(', ')) + ); + } + }); + Object.keys(color.hues).map(function(key) { + return color.hues[key]; + }).forEach(function(hueValue) { + if (VALID_HUE_VALUES.indexOf(hueValue) == -1) { + throw new Error("Invalid hue value '%1' in theme %2's %3 color %4. Available hue values: %5" + .replace('%1', hueValue) + .replace('%2', self.name) + .replace('%3', colorType) + .replace('%4', paletteName) + .replace('%5', VALID_HUE_VALUES.join(', ')) + ); + } + }); + return self; + }; + + self[colorType + 'Color'] = function() { + var args = Array.prototype.slice.call(arguments); + console.warn('$mdThemingProviderTheme.' + colorType + 'Color() has been depricated. ' + + 'Use $mdThemingProviderTheme.' + colorType + 'Palette() instead.'); + return self[colorType + 'Palette'].apply(self, args); + }; + }); + } + + /** + * @ngdoc service + * @name $mdTheming + * + * @description + * + * Service that makes an element apply theming related classes to itself. + * + * ```js + * app.directive('myFancyDirective', function($mdTheming) { + * return { + * restrict: 'e', + * link: function(scope, el, attrs) { + * $mdTheming(el); + * } + * }; + * }); + * ``` + * @param {el=} element to apply theming to + */ + /* @ngInject */ + function ThemingService($rootScope, $log) { + applyTheme.inherit = function(el, parent) { + var ctrl = parent.controller('mdTheme'); + + var attrThemeValue = el.attr('md-theme-watch'); + if ( (alwaysWatchTheme || angular.isDefined(attrThemeValue)) && attrThemeValue != 'false') { + var deregisterWatch = $rootScope.$watch(function() { + return ctrl && ctrl.$mdTheme || defaultTheme; + }, changeTheme); + el.on('$destroy', deregisterWatch); + } else { + var theme = ctrl && ctrl.$mdTheme || defaultTheme; + changeTheme(theme); + } + + function changeTheme(theme) { + if (!registered(theme)) { + $log.warn('Attempted to use unregistered theme \'' + theme + '\'. ' + + 'Register it with $mdThemingProvider.theme().'); + } + var oldTheme = el.data('$mdThemeName'); + if (oldTheme) el.removeClass('md-' + oldTheme +'-theme'); + el.addClass('md-' + theme + '-theme'); + el.data('$mdThemeName', theme); + } + }; + + applyTheme.registered = registered; + + return applyTheme; + + function registered(theme) { + if (theme === undefined || theme === '') return true; + return THEMES[theme] !== undefined; + } + + function applyTheme(scope, el) { + // Allow us to be invoked via a linking function signature. + if (el === undefined) { + el = scope; + scope = undefined; + } + if (scope === undefined) { + scope = $rootScope; + } + applyTheme.inherit(el, el); + } + } +} +ThemingProvider.$inject = ["$mdColorPalette"]; + +function ThemingDirective($mdTheming, $interpolate, $log) { + return { + priority: 100, + link: { + pre: function(scope, el, attrs) { + var ctrl = { + $setTheme: function(theme) { + if (!$mdTheming.registered(theme)) { + $log.warn('attempted to use unregistered theme \'' + theme + '\''); + } + ctrl.$mdTheme = theme; + } + }; + el.data('$mdThemeController', ctrl); + ctrl.$setTheme($interpolate(attrs.mdTheme)(scope)); + attrs.$observe('mdTheme', ctrl.$setTheme); + } + } + }; +} +ThemingDirective.$inject = ["$mdTheming", "$interpolate", "$log"]; + +function ThemableDirective($mdTheming) { + return $mdTheming; +} +ThemableDirective.$inject = ["$mdTheming"]; + +function parseRules(theme, colorType, rules) { + checkValidPalette(theme, colorType); + + rules = rules.replace(/THEME_NAME/g, theme.name); + var generatedRules = []; + var color = theme.colors[colorType]; + + var themeNameRegex = new RegExp('.md-' + theme.name + '-theme', 'g'); + // Matches '{{ primary-color }}', etc + var hueRegex = new RegExp('(\'|")?{{\\s*(' + colorType + ')-(color|contrast)-?(\\d\\.?\\d*)?\\s*}}(\"|\')?','g'); + var simpleVariableRegex = /'?"?\{\{\s*([a-zA-Z]+)-(A?\d+|hue\-[0-3]|shadow)-?(\d\.?\d*)?\s*\}\}'?"?/g; + var palette = PALETTES[color.name]; + + // find and replace simple variables where we use a specific hue, not angentire palette + // eg. "{{primary-100}}" + //\(' + THEME_COLOR_TYPES.join('\|') + '\)' + rules = rules.replace(simpleVariableRegex, function(match, colorType, hue, opacity) { + if (colorType === 'foreground') { + if (hue == 'shadow') { + return theme.foregroundShadow; + } else { + return theme.foregroundPalette[hue] || theme.foregroundPalette['1']; + } + } + if (hue.indexOf('hue') === 0) { + hue = theme.colors[colorType].hues[hue]; + } + return rgba( (PALETTES[ theme.colors[colorType].name ][hue] || '').value, opacity ); + }); + + // For each type, generate rules for each hue (ie. default, md-hue-1, md-hue-2, md-hue-3) + angular.forEach(color.hues, function(hueValue, hueName) { + var newRule = rules + .replace(hueRegex, function(match, _, colorType, hueType, opacity) { + return rgba(palette[hueValue][hueType === 'color' ? 'value' : 'contrast'], opacity); + }); + if (hueName !== 'default') { + newRule = newRule.replace(themeNameRegex, '.md-' + theme.name + '-theme.md-' + hueName); + } + generatedRules.push(newRule); + }); + + return generatedRules.join(''); +} + +// Generate our themes at run time given the state of THEMES and PALETTES +function generateThemes($injector) { + var themeCss = $injector.has('$MD_THEME_CSS') ? $injector.get('$MD_THEME_CSS') : ''; + + // MD_THEME_CSS is a string generated by the build process that includes all the themable + // components as templates + + // Expose contrast colors for palettes to ensure that text is always readable + angular.forEach(PALETTES, sanitizePalette); + + // Break the CSS into individual rules + var rules = themeCss.split(/\}(?!(\}|'|"|;))/) + .filter(function(rule) { return rule && rule.length; }) + .map(function(rule) { return rule.trim() + '}'; }); + + var rulesByType = {}; + THEME_COLOR_TYPES.forEach(function(type) { + rulesByType[type] = ''; + }); + var ruleMatchRegex = new RegExp('md-(' + THEME_COLOR_TYPES.join('|') + ')', 'g'); + + // Sort the rules based on type, allowing us to do color substitution on a per-type basis + rules.forEach(function(rule) { + var match = rule.match(ruleMatchRegex); + // First: test that if the rule has '.md-accent', it goes into the accent set of rules + for (var i = 0, type; type = THEME_COLOR_TYPES[i]; i++) { + if (rule.indexOf('.md-' + type) > -1) { + return rulesByType[type] += rule; + } + } + + // If no eg 'md-accent' class is found, try to just find 'accent' in the rule and guess from + // there + for (i = 0; type = THEME_COLOR_TYPES[i]; i++) { + if (rule.indexOf(type) > -1) { + return rulesByType[type] += rule; + } + } + + // Default to the primary array + return rulesByType[DEFAULT_COLOR_TYPE] += rule; + }); + + var styleString = ''; + + // For each theme, use the color palettes specified for `primary`, `warn` and `accent` + // to generate CSS rules. + angular.forEach(THEMES, function(theme) { + THEME_COLOR_TYPES.forEach(function(colorType) { + styleString += parseRules(theme, colorType, rulesByType[colorType] + ''); + }); + if (theme.colors.primary.name == theme.colors.accent.name) { + console.warn("$mdThemingProvider: Using the same palette for primary and" + + "accent. This violates the material design spec."); + } + }); + + // Insert our newly minted styles into the DOM + if (!generationIsDone) { + var style = document.createElement('style'); + style.innerHTML = styleString; + var head = document.getElementsByTagName('head')[0]; + head.insertBefore(style, head.firstElementChild); + generationIsDone = true; + } + + // The user specifies a 'default' contrast color as either light or dark, + // then explicitly lists which hues are the opposite contrast (eg. A100 has dark, A200 has light) + function sanitizePalette(palette) { + var defaultContrast = palette.contrastDefaultColor; + var lightColors = palette.contrastLightColors || []; + var strongLightColors = palette.contrastStrongLightColors || []; + var darkColors = palette.contrastDarkColors || []; + + // These colors are provided as space-separated lists + if (typeof lightColors === 'string') lightColors = lightColors.split(' '); + if (typeof strongLightColors === 'string') strongLightColors = strongLightColors.split(' '); + if (typeof darkColors === 'string') darkColors = darkColors.split(' '); + + // Cleanup after ourselves + delete palette.contrastDefaultColor; + delete palette.contrastLightColors; + delete palette.contrastStrongLightColors; + delete palette.contrastDarkColors; + + // Change { 'A100': '#fffeee' } to { 'A100': { value: '#fffeee', contrast:DARK_CONTRAST_COLOR } + angular.forEach(palette, function(hueValue, hueName) { + if (angular.isObject(hueValue)) return; // Already converted + // Map everything to rgb colors + var rgbValue = colorToRgbaArray(hueValue); + if (!rgbValue) { + throw new Error("Color %1, in palette %2's hue %3, is invalid. Hex or rgb(a) color expected." + .replace('%1', hueValue) + .replace('%2', palette.name) + .replace('%3', hueName)); + } + + palette[hueName] = { + value: rgbValue, + contrast: getContrastColor() + }; + function getContrastColor() { + if (defaultContrast === 'light') { + if (darkColors.indexOf(hueName) > -1) { + return DARK_CONTRAST_COLOR; + } else { + return strongLightColors.indexOf(hueName) > -1 ? STRONG_LIGHT_CONTRAST_COLOR + : LIGHT_CONTRAST_COLOR; + } + } else { + if (lightColors.indexOf(hueName) > -1) { + return strongLightColors.indexOf(hueName) > -1 ? STRONG_LIGHT_CONTRAST_COLOR + : LIGHT_CONTRAST_COLOR; + } else { + return DARK_CONTRAST_COLOR; + } + } + } + }); + } + +} +generateThemes.$inject = ["$injector"]; + +function checkValidPalette(theme, colorType) { + // If theme attempts to use a palette that doesnt exist, throw error + if (!PALETTES[ (theme.colors[colorType] || {}).name ]) { + throw new Error( + "You supplied an invalid color palette for theme %1's %2 palette. Available palettes: %3" + .replace('%1', theme.name) + .replace('%2', colorType) + .replace('%3', Object.keys(PALETTES).join(', ')) + ); + } +} + +function colorToRgbaArray(clr) { + if (angular.isArray(clr) && clr.length == 3) return clr; + if (/^rgb/.test(clr)) { + return clr.replace(/(^\s*rgba?\(|\)\s*$)/g, '').split(',').map(function(value, i) { + return i == 3 ? parseFloat(value, 10) : parseInt(value, 10); + }); + } + if (clr.charAt(0) == '#') clr = clr.substring(1); + if (!/^([a-fA-F0-9]{3}){1,2}$/g.test(clr)) return; + + var dig = clr.length / 3; + var red = clr.substr(0, dig); + var grn = clr.substr(dig, dig); + var blu = clr.substr(dig * 2); + if (dig === 1) { + red += red; + grn += grn; + blu += blu; + } + return [parseInt(red, 16), parseInt(grn, 16), parseInt(blu, 16)]; +} + +function rgba(rgbArray, opacity) { + if (rgbArray.length == 4) { + rgbArray = angular.copy(rgbArray); + opacity ? rgbArray.pop() : opacity = rgbArray.pop(); + } + return opacity && (typeof opacity == 'number' || (typeof opacity == 'string' && opacity.length)) ? + 'rgba(' + rgbArray.join(',') + ',' + opacity + ')' : + 'rgb(' + rgbArray.join(',') + ')'; +} + +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + /* * @ngdoc module * @name material.components.backdrop @@ -909,20 +3193,27 @@ function attrNoDirective() { * Apply class `opaque` to make the backdrop use the theme backdrop color. * */ + angular.module('material.components.backdrop', [ - 'material.services.theming' + 'material.core' ]) -.directive('mdBackdrop', [ - '$mdTheming', - BackdropDirective -]); + .directive('mdBackdrop', BackdropDirective); function BackdropDirective($mdTheming) { return $mdTheming; } +BackdropDirective.$inject = ["$mdTheming"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.bottomSheet @@ -930,23 +3221,11 @@ function BackdropDirective($mdTheming) { * BottomSheet */ angular.module('material.components.bottomSheet', [ - 'material.components.backdrop', - 'material.services.interimElement', - 'material.services.theming' + 'material.core', + 'material.components.backdrop' ]) -.directive('mdBottomSheet', [ - MdBottomSheetDirective -]) -.factory('$mdBottomSheet', [ - '$$interimElement', - '$animate', - '$mdEffects', - '$timeout', - '$$rAF', - '$compile', - '$mdTheming', - MdBottomSheet -]); + .directive('mdBottomSheet', MdBottomSheetDirective) + .provider('$mdBottomSheet', MdBottomSheetProvider); function MdBottomSheetDirective() { return { @@ -963,7 +3242,7 @@ function MdBottomSheetDirective() { * `$mdBottomSheet` opens a bottom sheet over the app and provides a simple promise API. * * ### Restrictions - * + * * - The bottom sheet's template must have an outer `` element. * - Add the `md-grid` class to the bottom sheet for a grid layout. * - Add the `md-list` class to the bottom sheet for a list layout. @@ -1004,15 +3283,19 @@ function MdBottomSheetDirective() { * template string. * - `controller` - `{string=}`: The controller to associate with this bottom sheet. * - `locals` - `{string=}`: An object containing key/value pairs. The keys will - * be used as names of values to inject into the controller. For example, + * be used as names of values to inject into the controller. For example, * `locals: {three: 3}` would inject `three` into the controller with the value * of 3. - * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, + * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, * the location of the click will be used as the starting point for the opening animation * of the the dialog. * - `resolve` - `{object=}`: Similar to locals, except it takes promises as values * and the bottom sheet will not open until the promises resolve. * - `controllerAs` - `{string=}`: An alias to assign the controller to on the scope. + * - `parent` - `{element=}`: The element to append the bottom sheet to. Defaults to appending + * to the root element of the application. + * - `disableParentScroll` - `{boolean=}`: Whether to disable scrolling while the bottom sheet is open. + * Default true. * * @returns {promise} A promise that can be resolved with `$mdBottomSheet.hide()` or * rejected with `$mdBottomSheet.cancel()`. @@ -1023,7 +3306,7 @@ function MdBottomSheetDirective() { * @name $mdBottomSheet#hide * * @description - * Hide the existing bottom sheet and resolve the promise returned from + * Hide the existing bottom sheet and resolve the promise returned from * `$mdBottomSheet.show()`. * * @param {*=} response An argument for the resolved promise. @@ -1035,159 +3318,163 @@ function MdBottomSheetDirective() { * @name $mdBottomSheet#cancel * * @description - * Hide the existing bottom sheet and reject the promise returned from + * Hide the existing bottom sheet and reject the promise returned from * `$mdBottomSheet.show()`. * * @param {*=} response An argument for the rejected promise. * */ -function MdBottomSheet($$interimElement, $animate, $mdEffects, $timeout, $$rAF, $compile, $mdTheming) { - var backdrop; +function MdBottomSheetProvider($$interimElementProvider) { + // how fast we need to flick down to close the sheet, pixels/ms + var CLOSING_VELOCITY = 0.5; + var PADDING = 80; // same as css - var $mdBottomSheet; - return $mdBottomSheet = $$interimElement({ - themable: true, - targetEvent: null, - onShow: onShow, - onRemove: onRemove, - }); - - function onShow(scope, element, options) { - // Add a backdrop that will close on click - backdrop = $compile('')(scope); - backdrop.on('click touchstart', function() { - $timeout($mdBottomSheet.cancel); + bottomSheetDefaults.$inject = ["$animate", "$mdConstant", "$timeout", "$$rAF", "$compile", "$mdTheming", "$mdBottomSheet", "$rootElement", "$rootScope", "$mdGesture"]; + return $$interimElementProvider('$mdBottomSheet') + .setDefaults({ + methods: ['disableParentScroll', 'escapeToClose', 'targetEvent'], + options: bottomSheetDefaults }); - $mdTheming.inherit(backdrop, options.parent); - $animate.enter(backdrop, options.parent, null); - - var bottomSheet = new BottomSheet(element); - options.bottomSheet = bottomSheet; - - // Give up focus on calling item - options.targetEvent && angular.element(options.targetEvent.target).blur(); - $mdTheming.inherit(bottomSheet.element, options.parent); - - return $animate.enter(bottomSheet.element, options.parent); - - } - - function onRemove(scope, element, options) { - var bottomSheet = options.bottomSheet; - $animate.leave(backdrop); - return $animate.leave(bottomSheet.element).then(function() { - bottomSheet.cleanup(); - - // Restore focus - options.targetEvent && angular.element(options.targetEvent.target).focus(); - }); - } - - /** - * BottomSheet class to apply bottom-sheet behavior to an element - */ - function BottomSheet(element) { - var MAX_OFFSET = 80; // amount past the bottom of the element that we can drag down, this is same as in _bottomSheet.scss - var WIGGLE_AMOUNT = 20; // point where it starts to get "harder" to drag - var CLOSING_VELOCITY = 10; // how fast we need to flick down to close the sheet - var startY, lastY, velocity, transitionDelay, startTarget; - - // coercion incase $mdCompiler returns multiple elements - element = element.eq(0); - - element.on('touchstart', onTouchStart); - element.on('touchmove', onTouchMove); - element.on('touchend', onTouchEnd); + /* @ngInject */ + function bottomSheetDefaults($animate, $mdConstant, $timeout, $$rAF, $compile, $mdTheming, $mdBottomSheet, $rootElement, $rootScope, $mdGesture) { + var backdrop; return { - element: element, - cleanup: function cleanup() { - element.off('touchstart', onTouchStart); - element.off('touchmove', onTouchMove); - element.off('touchend', onTouchEnd); - } + themable: true, + targetEvent: null, + onShow: onShow, + onRemove: onRemove, + escapeToClose: true, + disableParentScroll: true }; - function onTouchStart(e) { - e.preventDefault(); - startTarget = e.target; - startY = getY(e); - - // Disable transitions on transform so that it feels fast - transitionDelay = element.css($mdEffects.TRANSITION_DURATION); - element.css($mdEffects.TRANSITION_DURATION, '0s'); + function onShow(scope, element, options) { + // Add a backdrop that will close on click + backdrop = $compile('')(scope); + backdrop.on('click', function() { + $timeout($mdBottomSheet.cancel); + }); + + $mdTheming.inherit(backdrop, options.parent); + + $animate.enter(backdrop, options.parent, null); + + var bottomSheet = new BottomSheet(element, options.parent); + options.bottomSheet = bottomSheet; + + // Give up focus on calling item + options.targetEvent && angular.element(options.targetEvent.target).blur(); + $mdTheming.inherit(bottomSheet.element, options.parent); + + if (options.disableParentScroll) { + options.lastOverflow = options.parent.css('overflow'); + options.parent.css('overflow', 'hidden'); + } + + return $animate.enter(bottomSheet.element, options.parent) + .then(function() { + var focusable = angular.element( + element[0].querySelector('button') || + element[0].querySelector('a') || + element[0].querySelector('[ng-click]') + ); + focusable.focus(); + + if (options.escapeToClose) { + options.rootElementKeyupCallback = function(e) { + if (e.keyCode === $mdConstant.KEY_CODE.ESCAPE) { + $timeout($mdBottomSheet.cancel); + } + }; + $rootElement.on('keyup', options.rootElementKeyupCallback); + } + }); + } - function onTouchEnd(e) { - // Re-enable the transitions on transforms - element.css($mdEffects.TRANSITION_DURATION, transitionDelay); + function onRemove(scope, element, options) { + var bottomSheet = options.bottomSheet; - var currentY = getY(e); - // If we didn't scroll much, and we didn't change targets, assume its a click - if ( Math.abs(currentY - startY) < 5 && e.target == startTarget) { - angular.element(e.target).triggerHandler('click'); - } else { - // If they went fast enough, trigger a close. - if (velocity > CLOSING_VELOCITY) { + + $animate.leave(backdrop); + return $animate.leave(bottomSheet.element).then(function() { + if (options.disableParentScroll) { + options.parent.css('overflow', options.lastOverflow); + delete options.lastOverflow; + } + + bottomSheet.cleanup(); + + // Restore focus + options.targetEvent && angular.element(options.targetEvent.target).focus(); + }); + } + + /** + * BottomSheet class to apply bottom-sheet behavior to an element + */ + function BottomSheet(element, parent) { + var deregister = $mdGesture.register(parent, 'drag', { horizontal: false }); + parent.on('$md.dragstart', onDragStart) + .on('$md.drag', onDrag) + .on('$md.dragend', onDragEnd); + + return { + element: element, + cleanup: function cleanup() { + deregister(); + parent.off('$md.dragstart', onDragStart) + .off('$md.drag', onDrag) + .off('$md.dragend', onDragEnd); + } + }; + + function onDragStart(ev) { + // Disable transitions on transform so that it feels fast + element.css($mdConstant.CSS.TRANSITION_DURATION, '0ms'); + } + + function onDrag(ev) { + var transform = ev.pointer.distanceY; + if (transform < 5) { + // Slow down drag when trying to drag up, and stop after PADDING + transform = Math.max(-PADDING, transform / 2); + } + element.css($mdConstant.CSS.TRANSFORM, 'translate3d(0,' + (PADDING + transform) + 'px,0)'); + } + + function onDragEnd(ev) { + if (ev.pointer.distanceY > 0 && + (ev.pointer.distanceY > 20 || Math.abs(ev.pointer.velocityY) > CLOSING_VELOCITY)) { + var distanceRemaining = element.prop('offsetHeight') - ev.pointer.distanceY; + var transitionDuration = Math.min(distanceRemaining / ev.pointer.velocityY * 0.75, 500); + element.css($mdConstant.CSS.TRANSITION_DURATION, transitionDuration + 'ms'); $timeout($mdBottomSheet.cancel); - - // Otherwise, untransform so that we go back to our normal position } else { - setTransformY(undefined); + element.css($mdConstant.CSS.TRANSITION_DURATION, ''); + element.css($mdConstant.CSS.TRANSFORM, ''); } } } - function onTouchMove(e) { - var currentY = getY(e); - var delta = currentY - startY; - - velocity = currentY - lastY; - lastY = currentY; - - // Do some conversion on delta to get a friction-like effect - delta = adjustedDelta(delta); - setTransformY(delta + MAX_OFFSET); - } - - /** - * Helper function to find the Y aspect of various touch events. - **/ - function getY(e) { - var touch = e.touches && e.touches.length ? e.touches[0] : e.changedTouches[0]; - return touch.clientY; - } - - /** - * Transform the element along the y-axis - **/ - function setTransformY(amt) { - if (amt === null || amt === undefined) { - element.css($mdEffects.TRANSFORM, ''); - } else { - element.css($mdEffects.TRANSFORM, 'translate3d(0, ' + amt + 'px, 0)'); - } - } - - // Returns a new value for delta that will never exceed MAX_OFFSET_AMOUNT - // Will get harder to exceed it as you get closer to it - function adjustedDelta(delta) { - if ( delta < 0 && delta < -MAX_OFFSET + WIGGLE_AMOUNT) { - delta = -delta; - var base = MAX_OFFSET - WIGGLE_AMOUNT; - delta = Math.max(-MAX_OFFSET, -Math.min(MAX_OFFSET - 5, base + ( WIGGLE_AMOUNT * (delta - base)) / MAX_OFFSET) - delta / 50); - } - - return delta; - } } } +MdBottomSheetProvider.$inject = ["$$interimElementProvider"]; + })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.button @@ -1196,19 +3483,9 @@ function MdBottomSheet($$interimElement, $animate, $mdEffects, $timeout, $$rAF, * Button */ angular.module('material.components.button', [ - 'material.core', - 'material.animations', - 'material.services.aria', - 'material.services.theming' + 'material.core' ]) - .directive('mdButton', [ - 'ngHrefDirective', - '$mdInkRipple', - '$mdAria', - '$mdUtil', - '$mdTheming', - MdButtonDirective - ]); + .directive('mdButton', MdButtonDirective); /** * @ngdoc directive @@ -1220,87 +3497,84 @@ angular.module('material.components.button', [ * @description * `` is a button directive with optional ink ripples (default enabled). * - * @param {boolean=} noink If present, disable ripple ink effects. - * @param {boolean=} disabled If present, disable tab selection. - * @param {string=} type Optional attribute to specific button types (useful for forms); such as 'submit', etc. - * @param {string=} ng-href Optional attribute to support both ARIA and link navigation - * @param {string=} href Optional attribute to support both ARIA and link navigation - * @param {string=} ariaLabel Publish the button label used by screen-readers for accessibility. Defaults to the button's text. + * If you supply a `href` or `ng-href` attribute, it will become an `` element. Otherwise, it will + * become a `'; + } + + function postLink(scope, element, attr) { + var node = element[0]; + $mdTheming(element); + $mdInkRipple.attachButtonBehavior(scope, element); + + var elementHasText = node.textContent.trim(); + if (!elementHasText) { + $mdAria.expect(element, 'aria-label'); + } + + // For anchor elements, we have to set tabindex manually when the + // element is disabled + if (isAnchor(attr) && angular.isDefined(attr.ngDisabled) ) { + scope.$watch(attr.ngDisabled, function(isDisabled) { + element.attr('tabindex', isDisabled ? -1 : 0); + }); + } + } + } +MdButtonDirective.$inject = ["$mdInkRipple", "$mdTheming", "$mdAria"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.card @@ -1309,10 +3583,9 @@ function MdButtonDirective(ngHrefDirectives, $mdInkRipple, $mdAria, $mdUtil, $md * Card components. */ angular.module('material.components.card', [ + 'material.core' ]) - .directive('mdCard', [ - mdCardDirective - ]); + .directive('mdCard', mdCardDirective); @@ -1332,7 +3605,7 @@ angular.module('material.components.card', [ * @usage * * - * + * *

Paracosm

*

* The titles of Washed Out's breakthrough song and the first single from Paracosm share the * two most important words in Ernest Greene's musical language: feel it. It's a simple request, as well... @@ -1341,35 +3614,35 @@ angular.module('material.components.card', [ * * */ -function mdCardDirective() { +function mdCardDirective($mdTheming) { return { restrict: 'E', link: function($scope, $element, $attr) { + $mdTheming($element); } }; } +mdCardDirective.$inject = ["$mdTheming"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.checkbox * @description Checkbox module! */ angular.module('material.components.checkbox', [ - 'material.core', - 'material.animations', - 'material.services.theming', - 'material.services.aria' + 'material.core' ]) - .directive('mdCheckbox', [ - 'inputDirective', - '$mdInkRipple', - '$mdAria', - '$mdConstant', - '$mdTheming', - MdCheckboxDirective - ]); + .directive('mdCheckbox', MdCheckboxDirective); /** * @ngdoc directive @@ -1380,14 +3653,18 @@ angular.module('material.components.checkbox', [ * @description * The checkbox directive is used like the normal [angular checkbox](https://docs.angularjs.org/api/ng/input/input%5Bcheckbox%5D). * - * @param {string} ngModel Assignable angular expression to data-bind to. + * As per the [material design spec](http://www.google.com/design/spec/style/color.html#color-ui-color-application) + * the checkbox is in the accent color by default. The primary color palette may be used with + * the `md-primary` class. + * + * @param {string} ng-model Assignable angular expression to data-bind to. * @param {string=} name Property name of the form under which the control is published. - * @param {expression=} ngTrueValue The value to which the expression should be set when selected. - * @param {expression=} ngFalseValue The value to which the expression should be set when not selected. - * @param {string=} ngChange Angular expression to be executed when input changes due to user interaction with the input element. - * @param {boolean=} noink Use of attribute indicates use of ripple ink effects - * @param {boolean=} disabled Use of attribute indicates the switch is disabled: no ink effects and not selectable - * @param {string=} ariaLabel Publish the button label used by screen-readers for accessibility. Defaults to the checkbox's text. + * @param {expression=} ng-true-value The value to which the expression should be set when selected. + * @param {expression=} ng-false-value The value to which the expression should be set when not selected. + * @param {string=} ng-change Angular expression to be executed when input changes due to user interaction with the input element. + * @param {boolean=} md-no-ink Use of attribute indicates use of ripple ink effects + * @param {string=} aria-label Adds label to checkbox for accessibility. + * Defaults to checkbox's text. If no default text is found, a warning will be logged. * * @usage * @@ -1395,20 +3672,19 @@ angular.module('material.components.checkbox', [ * Finished ? * * - * + * * No Ink Effects * * - * + * * Disabled * * * * */ -function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant, $mdTheming) { - var inputDirective = inputDirectives[0]; - +function MdCheckboxDirective(inputDirective, $mdInkRipple, $mdAria, $mdConstant, $mdTheming, $mdUtil) { + inputDirective = inputDirective[0]; var CHECKED_CSS = 'md-checked'; return { @@ -1416,7 +3692,7 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant transclude: true, require: '?ngModel', template: - '

' + + '
' + '
' + '
' + '
', @@ -1434,19 +3710,11 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant tElement.attr('role', tAttrs.type); return function postLink(scope, element, attr, ngModelCtrl) { + ngModelCtrl = ngModelCtrl || $mdUtil.fakeNgModel(); var checked = false; $mdTheming(element); - // Create a mock ngModel if the user doesn't provide one - ngModelCtrl = ngModelCtrl || { - $setViewValue: function(value) { - this.$viewValue = value; - }, - $parsers: [], - $formatters: [] - }; - - $mdAria.expect(tElement, 'aria-label', true); + $mdAria.expectWithText(element, 'aria-label'); // Reuse the original input[type=checkbox] directive from Angular core. // This is a bit hacky as we need our own event listener and own render @@ -1456,8 +3724,8 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant 0: {} }, attr, [ngModelCtrl]); - element.on('click', listener); - element.on('keypress', keypressHandler); + element.on('click', listener) + .on('keypress', keypressHandler); ngModelCtrl.$render = render; function keypressHandler(ev) { @@ -1487,11 +3755,19 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant }; } } - +MdCheckboxDirective.$inject = ["inputDirective", "$mdInkRipple", "$mdAria", "$mdConstant", "$mdTheming", "$mdUtil"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.content @@ -1500,13 +3776,9 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant * Scrollable content */ angular.module('material.components.content', [ - 'material.services.theming', - 'material.services.registry' + 'material.core' ]) - .directive('mdContent', [ - '$mdTheming', - mdContentDirective - ]); + .directive('mdContent', mdContentDirective); /** * @ngdoc directive @@ -1530,13 +3802,18 @@ angular.module('material.components.content', [ * * */ + function mdContentDirective($mdTheming) { return { restrict: 'E', controller: ['$scope', '$element', ContentController], - link: function($scope, $element, $attr) { - $mdTheming($element); - $scope.$broadcast('$mdContentLoaded', $element); + link: function(scope, element, attr) { + var node = element[0]; + + $mdTheming(element); + scope.$broadcast('$mdContentLoaded', element); + + iosScrollFix(element[0]); } }; @@ -1545,40 +3822,48 @@ function mdContentDirective($mdTheming) { this.$element = $element; } } +mdContentDirective.$inject = ["$mdTheming"]; + +function iosScrollFix(node) { + // IOS FIX: + // If we scroll where there is no more room for the webview to scroll, + // by default the webview itself will scroll up and down, this looks really + // bad. So if we are scrolling to the very top or bottom, add/subtract one + angular.element(node).on('$md.pressdown', function(ev) { + // Only touch events + if (ev.pointer.type !== 't') return; + // Don't let a child content's touchstart ruin it for us. + if (ev.$materialScrollFixed) return; + ev.$materialScrollFixed = true; + + if (node.scrollTop === 0) { + node.scrollTop = 1; + } else if (node.scrollHeight === node.scrollTop + node.offsetHeight) { + node.scrollTop -= 1; + } + }); +} })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.dialog */ angular.module('material.components.dialog', [ 'material.core', - 'material.animations', - 'material.components.backdrop', - 'material.services.compiler', - 'material.services.aria', - 'material.services.interimElement', - 'material.services.theming', + 'material.components.backdrop' ]) - .directive('mdDialog', [ - '$$rAF', - '$mdTheming', - MdDialogDirective - ]) - .factory('$mdDialog', [ - '$timeout', - '$rootElement', - '$compile', - '$mdEffects', - '$animate', - '$mdAria', - '$$interimElement', - '$mdUtil', - '$mdConstant', - '$mdTheming', - MdDialogService - ]); + .directive('mdDialog', MdDialogDirective) + .provider('$mdDialog', MdDialogProvider); function MdDialogDirective($$rAF, $mdTheming) { return { @@ -1594,6 +3879,7 @@ function MdDialogDirective($$rAF, $mdTheming) { } }; } +MdDialogDirective.$inject = ["$$rAF", "$mdTheming"]; /** * @ngdoc service @@ -1608,60 +3894,171 @@ function MdDialogDirective($$rAF, $mdTheming) { * - The dialog is always given an isolate scope. * - The dialog's template must have an outer `` element. * Inside, use an `` element for the dialog's content, and use - * an element with class `md-actions` for the dialog's actions. + * an element with class `md-actions` for the dialog's actions. * * @usage + * #### HTML + * * - *
- * - * Open a Dialog from this button! + *
+ * + * Employee Alert! + * + * + * Close Alert + * + * + * Greet Employee * *
* * + * #### JavaScript + * * - * var app = angular.module('app', ['ngMaterial']); - * app.controller('MyController', function($scope, $mdDialog) { - * $scope.openDialog = function($event) { - * $mdDialog.show({ - * targetEvent: $event, - * controller: 'DialogController', - * template: - * '' + - * ' Hello!' + - * '
' + - * ' ' + - * ' Close' + - * ' ' + - * '
' + - * '
' - * }); - * }; - * }); - * app.controller('DialogController', function($scope, $mdDialog) { - * $scope.closeDialog = function() { - * $mdDialog.hide(); - * }; - * }); + * (function(angular, undefined){ + * "use strict"; + * + * angular + * .module('demoApp', ['ngMaterial']) + * .controller('EmployeeController', EmployeeEditor) + * .controller('GreetingController', GreetingController); + * + * // Fictitious Employee Editor to show how to use simple and complex dialogs. + * + * function EmployeeEditor($scope, $mdDialog) { + * var alert; + * + * $scope.showAlert = showAlert; + * $scope.closeAlert = closeAlert; + * $scope.showGreeting = showCustomGreeting; + * + * $scope.hasAlert = function() { return !!alert }; + * $scope.userName = $scope.userName || 'Bobby'; + * + * // Dialog #1 - Show simple alert dialog and cache + * // reference to dialog instance + * + * function showAlert() { + * alert = $mdDialog.alert() + * .title('Attention, ' + $scope.userName) + * .content('This is an example of how easy dialogs can be!') + * .ok('Close'); + * + * $mdDialog + * .show( alert ) + * .finally(function() { + * alert = undefined; + * }); + * } + * + * // Close the specified dialog instance and resolve with 'finished' flag + * // Normally this is not needed, just use '$mdDialog.hide()' to close + * // the most recent dialog popup. + * + * function closeAlert() { + * $mdDialog.hide( alert, "finished" ); + * alert = undefined; + * } + * + * // Dialog #2 - Demonstrate more complex dialogs construction and popup. + * + * function showCustomGreeting($event) { + * $mdDialog.show({ + * targetEvent: $event, + * template: + * '' + + * + * ' Hello {{ employee }}!' + + * + * '
' + + * ' ' + + * ' Close Greeting' + + * + * ' ' + + * '
' + + * '
', + * controller: 'GreetingController', + * onComplete: afterShowAnimation, + * locals: { employee: $scope.userName } + * }); + * + * // When the 'enter' animation finishes... + * + * function afterShowAnimation(scope, element, options) { + * // post-show code here: DOM element focus, etc. + * } + * } + * } + * + * // Greeting controller used with the more complex 'showCustomGreeting()' custom dialog + * + * function GreetingController($scope, $mdDialog, employee) { + * // Assigned from construction locals options... + * $scope.employee = employee; + * + * $scope.closeDialog = function() { + * // Easily hides most recent dialog shown... + * // no specific instance reference is needed. + * $mdDialog.hide(); + * }; + * } + * + * })(angular); *
+ */ + + /** + * @ngdoc method + * @name $mdDialog#alert + * + * @description + * Builds a preconfigured dialog with the specified message. + * + * @returns {obj} an `$mdDialogPreset` with the chainable configuration methods: + * + * - $mdDialogPreset#title(string) - sets title to string + * - $mdDialogPreset#content(string) - sets content / message to string + * - $mdDialogPreset#ok(string) - sets okay button text to string + * + */ + + /** + * @ngdoc method + * @name $mdDialog#confirm + * + * @description + * Builds a preconfigured dialog with the specified message. You can call show and the promise returned + * will be resolved only if the user clicks the confirm action on the dialog. + * + * @returns {obj} an `$mdDialogPreset` with the chainable configuration methods: + * + * Additionally, it supports the following methods: + * + * - $mdDialogPreset#title(string) - sets title to string + * - $mdDialogPreset#content(string) - sets content / message to string + * - $mdDialogPreset#ok(string) - sets okay button text to string + * - $mdDialogPreset#cancel(string) - sets cancel button text to string * */ /** - * * @ngdoc method * @name $mdDialog#show * * @description * Show a dialog with the specified options. * - * @param {object} options An options object, with the following properties: + * @param {object} optionsOrPreset Either provide an `$mdDialogPreset` returned from `alert()`, and + * `confirm()`, or an options object with the following properties: * - `templateUrl` - `{string=}`: The url of a template that will be used as the content - * of the dialog. + * of the dialog. * - `template` - `{string=}`: Same as templateUrl, except this is an actual template string. - * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, + * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, * the location of the click will be used as the starting point for the opening animation * of the the dialog. + * - `disableParentScroll` - `{boolean=}`: Whether to disable scrolling while the dialog is open. + * Default true. * - `hasBackdrop` - `{boolean=}`: Whether there should be an opaque backdrop behind the dialog. * Default true. * - `clickOutsideToClose` - `{boolean=}`: Whether the user can click outside the dialog to @@ -1672,12 +4069,16 @@ function MdDialogDirective($$rAF, $mdTheming) { * will be injected with the local `$hideDialog`, which is a function used to hide the dialog. * - `locals` - `{object=}`: An object containing key/value pairs. The keys will be used as names * of values to inject into the controller. For example, `locals: {three: 3}` would inject - * `three` into the controller, with the value 3. + * `three` into the controller, with the value 3. If `bindToController` is true, they will be + * copied to the controller instead. + * - `bindToController` - `bool`: bind the locals to the controller, instead of passing them in * - `resolve` - `{object=}`: Similar to locals, except it takes promises as values, and the - * toast will not open until all of the promises resolve. + * dialog will not open until all of the promises resolve. * - `controllerAs` - `{string=}`: An alias to assign the controller to on the scope. * - `parent` - `{element=}`: The element to append the dialog to. Defaults to appending * to the root element of the application. + * - `onComplete` `{function=}`: Callback function used to announce when the show() action is + * finished. * * @returns {promise} A promise that can be resolved with `$mdDialog.hide()` or * rejected with `mdDialog.cancel()`. @@ -1691,7 +4092,6 @@ function MdDialogDirective($$rAF, $mdTheming) { * Hide an existing dialog and resolve the promise returned from `$mdDialog.show()`. * * @param {*=} response An argument for the resolved promise. - * */ /** @@ -1702,135 +4102,265 @@ function MdDialogDirective($$rAF, $mdTheming) { * Hide an existing dialog and reject the promise returned from `$mdDialog.show()`. * * @param {*=} response An argument for the rejected promise. - * */ -function MdDialogService($timeout, $rootElement, $compile, $mdEffects, $animate, $mdAria, $$interimElement, $mdUtil, $mdConstant, $mdTheming) { +function MdDialogProvider($$interimElementProvider) { - var $dialogService; - return $dialogService = $$interimElement({ - hasBackdrop: true, - isolateScope: true, - onShow: onShow, - onRemove: onRemove, - clickOutsideToClose: true, - escapeToClose: true, - targetEvent: null, - transformTemplate: function(template) { - return '
' + template + '
'; - } - }); + var alertDialogMethods = ['title', 'content', 'ariaLabel', 'ok']; - function onShow(scope, element, options) { - // Incase the user provides a raw dom element, always wrap it in jqLite - options.parent = angular.element(options.parent); + advancedDialogOptions.$inject = ["$mdDialog"]; + dialogDefaultOptions.$inject = ["$timeout", "$rootElement", "$compile", "$animate", "$mdAria", "$document", "$mdUtil", "$mdConstant", "$mdTheming", "$$rAF", "$q", "$mdDialog"]; + return $$interimElementProvider('$mdDialog') + .setDefaults({ + methods: ['disableParentScroll', 'hasBackdrop', 'clickOutsideToClose', 'escapeToClose', 'targetEvent'], + options: dialogDefaultOptions + }) + .addPreset('alert', { + methods: ['title', 'content', 'ariaLabel', 'ok'], + options: advancedDialogOptions + }) + .addPreset('confirm', { + methods: ['title', 'content', 'ariaLabel', 'ok', 'cancel'], + options: advancedDialogOptions + }); - options.popInTarget = angular.element((options.targetEvent || {}).target); - var closeButton = findCloseButton(); + /* @ngInject */ + function advancedDialogOptions($mdDialog) { + return { + template: [ + '', + '', + '

{{ dialog.title }}

', + '

{{ dialog.content }}

', + '
', + '
', + '', + '{{ dialog.cancel }}', + '', + '', + '{{ dialog.ok }}', + '', + '
', + '
' + ].join(''), + controller: function mdDialogCtrl() { + this.hide = function() { + $mdDialog.hide(true); + }; + this.abort = function() { + $mdDialog.cancel(); + }; + }, + controllerAs: 'dialog', + bindToController: true + }; + } - configureAria(element.find('md-dialog')); + /* @ngInject */ + function dialogDefaultOptions($timeout, $rootElement, $compile, $animate, $mdAria, $document, + $mdUtil, $mdConstant, $mdTheming, $$rAF, $q, $mdDialog) { + return { + hasBackdrop: true, + isolateScope: true, + onShow: onShow, + onRemove: onRemove, + clickOutsideToClose: true, + escapeToClose: true, + targetEvent: null, + disableParentScroll: true, + transformTemplate: function(template) { + return '
' + template + '
'; + } + }; + + + // On show method for dialogs + function onShow(scope, element, options) { + // Incase the user provides a raw dom element, always wrap it in jqLite + options.parent = angular.element(options.parent); + + options.popInTarget = angular.element((options.targetEvent || {}).target); + var closeButton = findCloseButton(); + + configureAria(element.find('md-dialog')); + + if (options.hasBackdrop) { + var parentOffset = options.parent.prop('scrollTop'); + options.backdrop = angular.element(''); + $mdTheming.inherit(options.backdrop, options.parent); + $animate.enter(options.backdrop, options.parent); + element.css('top', parentOffset +'px'); + } + + if (options.disableParentScroll) { + options.lastOverflow = options.parent.css('overflow'); + options.parent.css('overflow', 'hidden'); + } + + return dialogPopIn( + element, + options.parent, + options.popInTarget && options.popInTarget.length && options.popInTarget + ) + .then(function() { + if (options.escapeToClose) { + options.rootElementKeyupCallback = function(e) { + if (e.keyCode === $mdConstant.KEY_CODE.ESCAPE) { + $timeout($mdDialog.cancel); + } + }; + $rootElement.on('keyup', options.rootElementKeyupCallback); + } + + if (options.clickOutsideToClose) { + options.dialogClickOutsideCallback = function(ev) { + // Only close if we click the flex container outside the backdrop + if (ev.target === element[0]) { + $timeout($mdDialog.cancel); + } + }; + element.on('click', options.dialogClickOutsideCallback); + } + closeButton.focus(); + }); + + + function findCloseButton() { + //If no element with class dialog-close, try to find the last + //button child in md-actions and assume it is a close button + var closeButton = element[0].querySelector('.dialog-close'); + if (!closeButton) { + var actionButtons = element[0].querySelectorAll('.md-actions button'); + closeButton = actionButtons[ actionButtons.length - 1 ]; + } + return angular.element(closeButton); + } - if (options.hasBackdrop) { - options.backdrop = $compile('')(scope); - $mdTheming.inherit(options.backdrop, options.parent); - $animate.enter(options.backdrop, options.parent, null); } - return $mdEffects.popIn( - element, - options.parent, - options.popInTarget.length && options.popInTarget - ) - .then(function() { + // On remove function for all dialogs + function onRemove(scope, element, options) { + + if (options.backdrop) { + $animate.leave(options.backdrop); + } + if (options.disableParentScroll) { + options.parent.css('overflow', options.lastOverflow); + delete options.lastOverflow; + } if (options.escapeToClose) { - options.rootElementKeyupCallback = function(e) { - if (e.keyCode === $mdConstant.KEY_CODE.ESCAPE) { - $timeout($dialogService.cancel); - } - }; - - $rootElement.on('keyup', options.rootElementKeyupCallback); + $rootElement.off('keyup', options.rootElementKeyupCallback); } - if (options.clickOutsideToClose) { - options.dialogClickOutsideCallback = function(e) { - // Only close if we click the flex container outside the backdrop - if (e.target === element[0]) { - $timeout($dialogService.cancel); - } - }; - - element.on('click', options.dialogClickOutsideCallback); + element.off('click', options.dialogClickOutsideCallback); } - closeButton.focus(); - }); + return dialogPopOut( + element, + options.parent, + options.popInTarget && options.popInTarget.length && options.popInTarget + ).then(function() { + options.scope.$destroy(); + element.remove(); + options.popInTarget && options.popInTarget.focus(); + }); + } - function findCloseButton() { - //If no element with class dialog-close, try to find the last - //button child in md-actions and assume it is a close button - var closeButton = element[0].querySelector('.dialog-close'); - if (!closeButton) { - var actionButtons = element[0].querySelectorAll('.md-actions button'); - closeButton = actionButtons[ actionButtons.length - 1 ]; + /** + * Inject ARIA-specific attributes appropriate for Dialogs + */ + function configureAria(element) { + element.attr({ + 'role': 'dialog' + }); + + var dialogContent = element.find('md-content'); + if (dialogContent.length === 0){ + dialogContent = element; } - return angular.element(closeButton); + $mdAria.expectAsync(element, 'aria-label', function() { + var words = dialogContent.text().split(/\s+/); + if (words.length > 3) words = words.slice(0,3).concat('...'); + return words.join(' '); + }); } - } + function dialogPopIn(container, parentElement, clickElement) { + var dialogEl = container.find('md-dialog'); - function onRemove(scope, element, options) { + parentElement.append(container); + transformToClickElement(dialogEl, clickElement); - if (options.backdrop) { - $animate.leave(options.backdrop); - element.data('backdrop', undefined); + $$rAF(function() { + dialogEl.addClass('transition-in') + .css($mdConstant.CSS.TRANSFORM, ''); + }); + + return dialogTransitionEnd(dialogEl); } - if (options.escapeToClose) { - $rootElement.off('keyup', options.rootElementKeyupCallback); - } - if (options.clickOutsideToClose) { - element.off('click', options.dialogClickOutsideCallback); - } - return $animate.leave(element).then(function() { - element.remove(); - options.popInTarget && options.popInTarget.focus(); - }); - } + function dialogPopOut(container, parentElement, clickElement) { + var dialogEl = container.find('md-dialog'); - /** - * Inject ARIA-specific attributes appropriate for Dialogs - */ - function configureAria(element) { - element.attr({ - 'role': 'dialog' - }); + dialogEl.addClass('transition-out').removeClass('transition-in'); + transformToClickElement(dialogEl, clickElement); - var dialogContent = element.find('md-content'); - if (dialogContent.length === 0){ - dialogContent = element; + return dialogTransitionEnd(dialogEl); } - var defaultText = $mdUtil.stringFromTextBody(dialogContent.text(), 3); - $mdAria.expect(element, 'aria-label', true, defaultText); + + function transformToClickElement(dialogEl, clickElement) { + if (clickElement) { + var clickRect = clickElement[0].getBoundingClientRect(); + var dialogRect = dialogEl[0].getBoundingClientRect(); + + var scaleX = Math.min(0.5, clickRect.width / dialogRect.width); + var scaleY = Math.min(0.5, clickRect.height / dialogRect.height); + + dialogEl.css($mdConstant.CSS.TRANSFORM, 'translate3d(' + + (-dialogRect.left + clickRect.left + clickRect.width/2 - dialogRect.width/2) + 'px,' + + (-dialogRect.top + clickRect.top + clickRect.height/2 - dialogRect.height/2) + 'px,' + + '0) scale(' + scaleX + ',' + scaleY + ')' + ); + } + } + + function dialogTransitionEnd(dialogEl) { + var deferred = $q.defer(); + dialogEl.on($mdConstant.CSS.TRANSITIONEND, finished); + function finished(ev) { + //Make sure this transitionend didn't bubble up from a child + if (ev.target === dialogEl[0]) { + dialogEl.off($mdConstant.CSS.TRANSITIONEND, finished); + deferred.resolve(); + } + } + return deferred.promise; + } + } } +MdDialogProvider.$inject = ["$$interimElementProvider"]; + })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.divider * @description Divider module! */ angular.module('material.components.divider', [ - 'material.animations', - 'material.services.aria', - 'material.services.theming' + 'material.core' ]) -.directive('mdDivider', [ - '$mdTheming', - MdDividerDirective -]); + .directive('mdDivider', MdDividerDirective); function MdDividerController(){} @@ -1843,12 +4373,12 @@ function MdDividerController(){} * @description * Dividers group and separate content within lists and page layouts using strong visual and spatial distinctions. This divider is a thin rule, lightweight enough to not distract the user from content. * - * @param {boolean=} inset Add this attribute to activate the inset divider style. + * @param {boolean=} md-inset Add this attribute to activate the inset divider style. * @usage * * * - * + * * * */ @@ -1859,19 +4389,28 @@ function MdDividerDirective($mdTheming) { controller: [MdDividerController] }; } +MdDividerDirective.$inject = ["$mdTheming"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /* * @ngdoc module * @name material.components.icon * @description * Icon */ -angular.module('material.components.icon', []) - .directive('mdIcon', [ - mdIconDirective - ]); +angular.module('material.components.icon', [ + 'material.core' +]) + .directive('mdIcon', mdIconDirective); /* * @ngdoc directive @@ -1904,21 +4443,380 @@ function mdIconDirective() { } })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { + +/** + * @ngdoc module + * @name material.components.input + */ + +angular.module('material.components.input', [ + 'material.core' +]) + .directive('mdInputContainer', mdInputContainerDirective) + .directive('label', labelDirective) + .directive('input', inputTextareaDirective) + .directive('textarea', inputTextareaDirective) + .directive('mdMaxlength', mdMaxlengthDirective) + .directive('placeholder', placeholderDirective); + +/** + * @ngdoc directive + * @name mdInputContainer + * @module material.components.input + * + * @restrict E + * + * @description + * `` is the parent of any input or textarea element. + * + * Input and textarea elements will not behave properly unless the md-input-container + * parent is provided. + * + * @param md-is-error {expression=} When the given expression evaluates to true, the input container will go into error state. Defaults to erroring if the input has been touched and is invalid. + * + * @usage + * + * + * + * + * + * + * + * + * + * + * + * + * + */ +function mdInputContainerDirective($mdTheming, $parse) { + ContainerCtrl.$inject = ["$scope", "$element", "$attrs"]; + return { + restrict: 'E', + link: postLink, + controller: ContainerCtrl + }; + + function postLink(scope, element, attr) { + $mdTheming(element); + } + function ContainerCtrl($scope, $element, $attrs) { + var self = this; + + self.isErrorGetter = $attrs.mdIsError && $parse($attrs.mdIsError); + + self.element = $element; + self.setFocused = function(isFocused) { + $element.toggleClass('md-input-focused', !!isFocused); + }; + self.setHasValue = function(hasValue) { + $element.toggleClass('md-input-has-value', !!hasValue); + }; + self.setInvalid = function(isInvalid) { + $element.toggleClass('md-input-invalid', !!isInvalid); + }; + $scope.$watch(function() { + return self.label && self.input; + }, function(hasLabelAndInput) { + if (hasLabelAndInput && !self.label.attr('for')) { + self.label.attr('for', self.input.attr('id')); + } + }); + } +} +mdInputContainerDirective.$inject = ["$mdTheming", "$parse"]; + +function labelDirective() { + return { + restrict: 'E', + require: '^?mdInputContainer', + link: function(scope, element, attr, containerCtrl) { + if (!containerCtrl) return; + + containerCtrl.label = element; + scope.$on('$destroy', function() { + containerCtrl.label = null; + }); + } + }; +} + +/** + * @ngdoc directive + * @name input + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/input). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
That's too short!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +/** + * @ngdoc directive + * @name textarea + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/textarea). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +function inputTextareaDirective($mdUtil, $window, $compile, $animate) { + return { + restrict: 'E', + require: ['^?mdInputContainer', '?ngModel'], + link: postLink + }; + + function postLink(scope, element, attr, ctrls) { + + var containerCtrl = ctrls[0]; + var ngModelCtrl = ctrls[1] || $mdUtil.fakeNgModel(); + var isReadonly = angular.isDefined(attr.readonly); + + if ( !containerCtrl ) return; + if (containerCtrl.input) { + throw new Error(" can only have *one* or + * + * + * + */ +function mdInputContainerDirective($mdTheming, $parse) { + ContainerCtrl.$inject = ["$scope", "$element", "$attrs"]; + return { + restrict: 'E', + link: postLink, + controller: ContainerCtrl + }; + + function postLink(scope, element, attr) { + $mdTheming(element); + } + function ContainerCtrl($scope, $element, $attrs) { + var self = this; + + self.isErrorGetter = $attrs.mdIsError && $parse($attrs.mdIsError); + + self.element = $element; + self.setFocused = function(isFocused) { + $element.toggleClass('md-input-focused', !!isFocused); + }; + self.setHasValue = function(hasValue) { + $element.toggleClass('md-input-has-value', !!hasValue); + }; + self.setInvalid = function(isInvalid) { + $element.toggleClass('md-input-invalid', !!isInvalid); + }; + $scope.$watch(function() { + return self.label && self.input; + }, function(hasLabelAndInput) { + if (hasLabelAndInput && !self.label.attr('for')) { + self.label.attr('for', self.input.attr('id')); + } + }); + } +} +mdInputContainerDirective.$inject = ["$mdTheming", "$parse"]; + +function labelDirective() { + return { + restrict: 'E', + require: '^?mdInputContainer', + link: function(scope, element, attr, containerCtrl) { + if (!containerCtrl) return; + + containerCtrl.label = element; + scope.$on('$destroy', function() { + containerCtrl.label = null; + }); + } + }; +} + +/** + * @ngdoc directive + * @name input + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/input). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
That's too short!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +/** + * @ngdoc directive + * @name textarea + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/textarea). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +function inputTextareaDirective($mdUtil, $window, $compile, $animate) { + return { + restrict: 'E', + require: ['^?mdInputContainer', '?ngModel'], + link: postLink + }; + + function postLink(scope, element, attr, ctrls) { + + var containerCtrl = ctrls[0]; + var ngModelCtrl = ctrls[1] || $mdUtil.fakeNgModel(); + var isReadonly = angular.isDefined(attr.readonly); + + if ( !containerCtrl ) return; + if (containerCtrl.input) { + throw new Error(" can only have *one* or + * + * + * + */ +function mdInputContainerDirective($mdTheming) { + ContainerCtrl.$inject = ["$scope", "$element", "$mdUtil"]; + return { + restrict: 'E', + link: postLink, + controller: ContainerCtrl + }; + + function postLink(scope, element, attr) { + $mdTheming(element); + } + function ContainerCtrl($scope, $element, $mdUtil) { + var self = this; + + self.element = $element; + self.setFocused = function(isFocused) { + $element.toggleClass('md-input-focused', !!isFocused); + }; + self.setHasValue = function(hasValue) { + $element.toggleClass('md-input-has-value', !!hasValue); + }; + self.setInvalid = function(isInvalid) { + $element.toggleClass('md-input-invalid', !!isInvalid); + }; + + $scope.$watch(function() { + return self.label && self.input; + }, function(hasLabelAndInput) { + if (hasLabelAndInput && !self.label.attr('for')) { + self.label.attr('for', self.input.attr('id')); + } + }); + } +} +mdInputContainerDirective.$inject = ["$mdTheming"]; + +function labelDirective() { + return { + restrict: 'E', + require: '^?mdInputContainer', + link: function(scope, element, attr, containerCtrl) { + if (!containerCtrl) return; + + containerCtrl.label = element; + scope.$on('$destroy', function() { + containerCtrl.label = null; + }); + } + }; +} + +/** + * @ngdoc directive + * @name input + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/input). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
That's too short!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +/** + * @ngdoc directive + * @name textarea + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/textarea). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +function inputTextareaDirective($mdUtil, $window, $compile, $animate) { + return { + restrict: 'E', + require: ['^?mdInputContainer', '?ngModel'], + compile: compile, + }; + + function compile(element) { + element.addClass('md-input'); + return postLink; + } + function postLink(scope, element, attr, ctrls) { + + var containerCtrl = ctrls[0]; + var ngModelCtrl = ctrls[1]; + + if ( !containerCtrl ) return; + if (containerCtrl.input) { + throw new Error(" can only have *one* or - - - - it('should data-bind and become invalid', function() { - if (browser.params.browser == 'safari' || browser.params.browser == 'firefox') { - // SafariDriver can't handle contenteditable - // and Firefox driver can't clear contenteditables very well - return; - } - var contentEditable = element(by.css('[contenteditable]')); - var content = 'Change me!'; - - expect(contentEditable.getText()).toEqual(content); - - contentEditable.clear(); - contentEditable.sendKeys(protractor.Key.BACK_SPACE); - expect(contentEditable.getText()).toEqual(''); - expect(contentEditable.getAttribute('class')).toMatch(/ng-invalid-required/); - }); - - * - * - * - */ -var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$parse', '$animate', '$timeout', '$rootScope', '$q', '$interpolate', - function($scope, $exceptionHandler, $attr, $element, $parse, $animate, $timeout, $rootScope, $q, $interpolate) { - this.$viewValue = Number.NaN; - this.$modelValue = Number.NaN; - this.$validators = {}; - this.$asyncValidators = {}; - this.$parsers = []; - this.$formatters = []; - this.$viewChangeListeners = []; - this.$untouched = true; - this.$touched = false; - this.$pristine = true; - this.$dirty = false; - this.$valid = true; - this.$invalid = false; - this.$error = {}; // keep invalid keys here - this.$$success = {}; // keep valid keys here - this.$pending = undefined; // keep pending keys here - this.$name = $interpolate($attr.name || '', false)($scope); - - - var parsedNgModel = $parse($attr.ngModel), - pendingDebounce = null, - ctrl = this; - - var ngModelGet = function ngModelGet() { - var modelValue = parsedNgModel($scope); - if (ctrl.$options && ctrl.$options.getterSetter && isFunction(modelValue)) { - modelValue = modelValue(); - } - return modelValue; - }; - - var ngModelSet = function ngModelSet(newValue) { - var getterSetter; - if (ctrl.$options && ctrl.$options.getterSetter && - isFunction(getterSetter = parsedNgModel($scope))) { - - getterSetter(ctrl.$modelValue); - } else { - parsedNgModel.assign($scope, ctrl.$modelValue); - } - }; - - this.$$setOptions = function(options) { - ctrl.$options = options; - - if (!parsedNgModel.assign && (!options || !options.getterSetter)) { - throw $ngModelMinErr('nonassign', "Expression '{0}' is non-assignable. Element: {1}", - $attr.ngModel, startingTag($element)); - } - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$render - * - * @description - * Called when the view needs to be updated. It is expected that the user of the ng-model - * directive will implement this method. - * - * The `$render()` method is invoked in the following situations: - * - * * `$rollbackViewValue()` is called. If we are rolling back the view value to the last - * committed value then `$render()` is called to update the input control. - * * The value referenced by `ng-model` is changed programmatically and both the `$modelValue` and - * the `$viewValue` are different to last time. - * - * Since `ng-model` does not do a deep watch, `$render()` is only invoked if the values of - * `$modelValue` and `$viewValue` are actually different to their previous value. If `$modelValue` - * or `$viewValue` are objects (rather than a string or number) then `$render()` will not be - * invoked if you only change a property on the objects. - */ - this.$render = noop; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$isEmpty - * - * @description - * This is called when we need to determine if the value of the input is empty. - * - * For instance, the required directive does this to work out if the input has data or not. - * The default `$isEmpty` function checks whether the value is `undefined`, `''`, `null` or `NaN`. - * - * You can override this for input directives whose concept of being empty is different to the - * default. The `checkboxInputType` directive does this because in its case a value of `false` - * implies empty. - * - * @param {*} value Model value to check. - * @returns {boolean} True if `value` is empty. - */ - this.$isEmpty = function(value) { - return isUndefined(value) || value === '' || value === null || value !== value; - }; - - var parentForm = $element.inheritedData('$formController') || nullFormCtrl, - currentValidationRunId = 0; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$setValidity - * - * @description - * Change the validity state, and notify the form. - * - * This method can be called within $parsers/$formatters or a custom validation implementation. - * However, in most cases it should be sufficient to use the `ngModel.$validators` and - * `ngModel.$asyncValidators` collections which will call `$setValidity` automatically. - * - * @param {string} validationErrorKey Name of the validator. The `validationErrorKey` will be assigned - * to either `$error[validationErrorKey]` or `$pending[validationErrorKey]` - * (for unfulfilled `$asyncValidators`), so that it is available for data-binding. - * The `validationErrorKey` should be in camelCase and will get converted into dash-case - * for class name. Example: `myError` will result in `ng-valid-my-error` and `ng-invalid-my-error` - * class and can be bound to as `{{someForm.someControl.$error.myError}}` . - * @param {boolean} isValid Whether the current state is valid (true), invalid (false), pending (undefined), - * or skipped (null). Pending is used for unfulfilled `$asyncValidators`. - * Skipped is used by Angular when validators do not run because of parse errors and - * when `$asyncValidators` do not run because any of the `$validators` failed. - */ - addSetValidityMethod({ - ctrl: this, - $element: $element, - set: function(object, property) { - object[property] = true; - }, - unset: function(object, property) { - delete object[property]; - }, - parentForm: parentForm, - $animate: $animate - }); - - /** - * @ngdoc method - * @name ngModel.NgModelController#$setPristine - * - * @description - * Sets the control to its pristine state. - * - * This method can be called to remove the 'ng-dirty' class and set the control to its pristine - * state (ng-pristine class). A model is considered to be pristine when the model has not been changed - * from when first compiled within then form. - */ - this.$setPristine = function() { - ctrl.$dirty = false; - ctrl.$pristine = true; - $animate.removeClass($element, DIRTY_CLASS); - $animate.addClass($element, PRISTINE_CLASS); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$setUntouched - * - * @description - * Sets the control to its untouched state. - * - * This method can be called to remove the 'ng-touched' class and set the control to its - * untouched state (ng-untouched class). Upon compilation, a model is set as untouched - * by default, however this function can be used to restore that state if the model has - * already been touched by the user. - */ - this.$setUntouched = function() { - ctrl.$touched = false; - ctrl.$untouched = true; - $animate.setClass($element, UNTOUCHED_CLASS, TOUCHED_CLASS); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$setTouched - * - * @description - * Sets the control to its touched state. - * - * This method can be called to remove the 'ng-untouched' class and set the control to its - * touched state (ng-touched class). A model is considered to be touched when the user has - * first interacted (focussed) on the model input element and then shifted focus away (blurred) - * from the input element. - */ - this.$setTouched = function() { - ctrl.$touched = true; - ctrl.$untouched = false; - $animate.setClass($element, TOUCHED_CLASS, UNTOUCHED_CLASS); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$rollbackViewValue - * - * @description - * Cancel an update and reset the input element's value to prevent an update to the `$modelValue`, - * which may be caused by a pending debounced event or because the input is waiting for a some - * future event. - * - * If you have an input that uses `ng-model-options` to set up debounced events or events such - * as blur you can have a situation where there is a period when the `$viewValue` - * is out of synch with the ngModel's `$modelValue`. - * - * In this case, you can run into difficulties if you try to update the ngModel's `$modelValue` - * programmatically before these debounced/future events have resolved/occurred, because Angular's - * dirty checking mechanism is not able to tell whether the model has actually changed or not. - * - * The `$rollbackViewValue()` method should be called before programmatically changing the model of an - * input which may have such events pending. This is important in order to make sure that the - * input field will be updated with the new model value and any pending operations are cancelled. - * - * - * - * angular.module('cancel-update-example', []) - * - * .controller('CancelUpdateController', ['$scope', function($scope) { - * $scope.resetWithCancel = function(e) { - * if (e.keyCode == 27) { - * $scope.myForm.myInput1.$rollbackViewValue(); - * $scope.myValue = ''; - * } - * }; - * $scope.resetWithoutCancel = function(e) { - * if (e.keyCode == 27) { - * $scope.myValue = ''; - * } - * }; - * }]); - * - * - *
- *

Try typing something in each input. See that the model only updates when you - * blur off the input. - *

- *

Now see what happens if you start typing then press the Escape key

- * - *
- *

With $rollbackViewValue()

- *
- * myValue: "{{ myValue }}" - * - *

Without $rollbackViewValue()

- *
- * myValue: "{{ myValue }}" - *
- *
- *
- *
- */ - this.$rollbackViewValue = function() { - $timeout.cancel(pendingDebounce); - ctrl.$viewValue = ctrl.$$lastCommittedViewValue; - ctrl.$render(); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$validate - * - * @description - * Runs each of the registered validators (first synchronous validators and then asynchronous validators). - */ - this.$validate = function() { - // ignore $validate before model is initialized - if (isNumber(ctrl.$modelValue) && isNaN(ctrl.$modelValue)) { - return; - } - this.$$parseAndValidate(); - }; - - this.$$runValidators = function(parseValid, modelValue, viewValue, doneCallback) { - currentValidationRunId++; - var localValidationRunId = currentValidationRunId; - - // check parser error - if (!processParseErrors(parseValid)) { - validationDone(false); - return; - } - if (!processSyncValidators()) { - validationDone(false); - return; - } - processAsyncValidators(); - - function processParseErrors(parseValid) { - var errorKey = ctrl.$$parserName || 'parse'; - if (parseValid === undefined) { - setValidity(errorKey, null); - } else { - setValidity(errorKey, parseValid); - if (!parseValid) { - forEach(ctrl.$validators, function(v, name) { - setValidity(name, null); - }); - forEach(ctrl.$asyncValidators, function(v, name) { - setValidity(name, null); - }); - return false; - } - } - return true; - } - - function processSyncValidators() { - var syncValidatorsValid = true; - forEach(ctrl.$validators, function(validator, name) { - var result = validator(modelValue, viewValue); - syncValidatorsValid = syncValidatorsValid && result; - setValidity(name, result); - }); - if (!syncValidatorsValid) { - forEach(ctrl.$asyncValidators, function(v, name) { - setValidity(name, null); - }); - return false; - } - return true; - } - - function processAsyncValidators() { - var validatorPromises = []; - var allValid = true; - forEach(ctrl.$asyncValidators, function(validator, name) { - var promise = validator(modelValue, viewValue); - if (!isPromiseLike(promise)) { - throw $ngModelMinErr("$asyncValidators", - "Expected asynchronous validator to return a promise but got '{0}' instead.", promise); - } - setValidity(name, undefined); - validatorPromises.push(promise.then(function() { - setValidity(name, true); - }, function(error) { - allValid = false; - setValidity(name, false); - })); - }); - if (!validatorPromises.length) { - validationDone(true); - } else { - $q.all(validatorPromises).then(function() { - validationDone(allValid); - }, noop); - } - } - - function setValidity(name, isValid) { - if (localValidationRunId === currentValidationRunId) { - ctrl.$setValidity(name, isValid); - } - } - - function validationDone(allValid) { - if (localValidationRunId === currentValidationRunId) { - - doneCallback(allValid); - } - } - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$commitViewValue - * - * @description - * Commit a pending update to the `$modelValue`. - * - * Updates may be pending by a debounced event or because the input is waiting for a some future - * event defined in `ng-model-options`. this method is rarely needed as `NgModelController` - * usually handles calling this in response to input events. - */ - this.$commitViewValue = function() { - var viewValue = ctrl.$viewValue; - - $timeout.cancel(pendingDebounce); - - // If the view value has not changed then we should just exit, except in the case where there is - // a native validator on the element. In this case the validation state may have changed even though - // the viewValue has stayed empty. - if (ctrl.$$lastCommittedViewValue === viewValue && (viewValue !== '' || !ctrl.$$hasNativeValidators)) { - return; - } - ctrl.$$lastCommittedViewValue = viewValue; - - // change to dirty - if (ctrl.$pristine) { - ctrl.$dirty = true; - ctrl.$pristine = false; - $animate.removeClass($element, PRISTINE_CLASS); - $animate.addClass($element, DIRTY_CLASS); - parentForm.$setDirty(); - } - this.$$parseAndValidate(); - }; - - this.$$parseAndValidate = function() { - var viewValue = ctrl.$$lastCommittedViewValue; - var modelValue = viewValue; - var parserValid = isUndefined(modelValue) ? undefined : true; - - if (parserValid) { - for (var i = 0; i < ctrl.$parsers.length; i++) { - modelValue = ctrl.$parsers[i](modelValue); - if (isUndefined(modelValue)) { - parserValid = false; - break; - } - } - } - if (isNumber(ctrl.$modelValue) && isNaN(ctrl.$modelValue)) { - // ctrl.$modelValue has not been touched yet... - ctrl.$modelValue = ngModelGet(); - } - var prevModelValue = ctrl.$modelValue; - var allowInvalid = ctrl.$options && ctrl.$options.allowInvalid; - if (allowInvalid) { - ctrl.$modelValue = modelValue; - writeToModelIfNeeded(); - } - ctrl.$$runValidators(parserValid, modelValue, viewValue, function(allValid) { - if (!allowInvalid) { - // Note: Don't check ctrl.$valid here, as we could have - // external validators (e.g. calculated on the server), - // that just call $setValidity and need the model value - // to calculate their validity. - ctrl.$modelValue = allValid ? modelValue : undefined; - writeToModelIfNeeded(); - } - }); - - function writeToModelIfNeeded() { - if (ctrl.$modelValue !== prevModelValue) { - ctrl.$$writeModelToScope(); - } - } - }; - - this.$$writeModelToScope = function() { - ngModelSet(ctrl.$modelValue); - forEach(ctrl.$viewChangeListeners, function(listener) { - try { - listener(); - } catch (e) { - $exceptionHandler(e); - } - }); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$setViewValue - * - * @description - * Update the view value. - * - * This method should be called when an input directive want to change the view value; typically, - * this is done from within a DOM event handler. - * - * For example {@link ng.directive:input input} calls it when the value of the input changes and - * {@link ng.directive:select select} calls it when an option is selected. - * - * If the new `value` is an object (rather than a string or a number), we should make a copy of the - * object before passing it to `$setViewValue`. This is because `ngModel` does not perform a deep - * watch of objects, it only looks for a change of identity. If you only change the property of - * the object then ngModel will not realise that the object has changed and will not invoke the - * `$parsers` and `$validators` pipelines. - * - * For this reason, you should not change properties of the copy once it has been passed to - * `$setViewValue`. Otherwise you may cause the model value on the scope to change incorrectly. - * - * When this method is called, the new `value` will be staged for committing through the `$parsers` - * and `$validators` pipelines. If there are no special {@link ngModelOptions} specified then the staged - * value sent directly for processing, finally to be applied to `$modelValue` and then the - * **expression** specified in the `ng-model` attribute. - * - * Lastly, all the registered change listeners, in the `$viewChangeListeners` list, are called. - * - * In case the {@link ng.directive:ngModelOptions ngModelOptions} directive is used with `updateOn` - * and the `default` trigger is not listed, all those actions will remain pending until one of the - * `updateOn` events is triggered on the DOM element. - * All these actions will be debounced if the {@link ng.directive:ngModelOptions ngModelOptions} - * directive is used with a custom debounce for this particular event. - * - * Note that calling this function does not trigger a `$digest`. - * - * @param {string} value Value from the view. - * @param {string} trigger Event that triggered the update. - */ - this.$setViewValue = function(value, trigger) { - ctrl.$viewValue = value; - if (!ctrl.$options || ctrl.$options.updateOnDefault) { - ctrl.$$debounceViewValueCommit(trigger); - } - }; - - this.$$debounceViewValueCommit = function(trigger) { - var debounceDelay = 0, - options = ctrl.$options, - debounce; - - if (options && isDefined(options.debounce)) { - debounce = options.debounce; - if (isNumber(debounce)) { - debounceDelay = debounce; - } else if (isNumber(debounce[trigger])) { - debounceDelay = debounce[trigger]; - } else if (isNumber(debounce['default'])) { - debounceDelay = debounce['default']; - } - } - - $timeout.cancel(pendingDebounce); - if (debounceDelay) { - pendingDebounce = $timeout(function() { - ctrl.$commitViewValue(); - }, debounceDelay); - } else if ($rootScope.$$phase) { - ctrl.$commitViewValue(); - } else { - $scope.$apply(function() { - ctrl.$commitViewValue(); - }); - } - }; - - // model -> value - // Note: we cannot use a normal scope.$watch as we want to detect the following: - // 1. scope value is 'a' - // 2. user enters 'b' - // 3. ng-change kicks in and reverts scope value to 'a' - // -> scope value did not change since the last digest as - // ng-change executes in apply phase - // 4. view should be changed back to 'a' - $scope.$watch(function ngModelWatch() { - var modelValue = ngModelGet(); - - // if scope model value and ngModel value are out of sync - // TODO(perf): why not move this to the action fn? - if (modelValue !== ctrl.$modelValue) { - ctrl.$modelValue = modelValue; - - var formatters = ctrl.$formatters, - idx = formatters.length; - - var viewValue = modelValue; - while (idx--) { - viewValue = formatters[idx](viewValue); - } - if (ctrl.$viewValue !== viewValue) { - ctrl.$viewValue = ctrl.$$lastCommittedViewValue = viewValue; - ctrl.$render(); - - ctrl.$$runValidators(undefined, modelValue, viewValue, noop); - } - } - - return modelValue; - }); -}]; - - -/** - * @ngdoc directive - * @name ngModel - * - * @element input - * @priority 1 - * - * @description - * The `ngModel` directive binds an `input`,`select`, `textarea` (or custom form control) to a - * property on the scope using {@link ngModel.NgModelController NgModelController}, - * which is created and exposed by this directive. - * - * `ngModel` is responsible for: - * - * - Binding the view into the model, which other directives such as `input`, `textarea` or `select` - * require. - * - Providing validation behavior (i.e. required, number, email, url). - * - Keeping the state of the control (valid/invalid, dirty/pristine, touched/untouched, validation errors). - * - Setting related css classes on the element (`ng-valid`, `ng-invalid`, `ng-dirty`, `ng-pristine`, `ng-touched`, `ng-untouched`) including animations. - * - Registering the control with its parent {@link ng.directive:form form}. - * - * Note: `ngModel` will try to bind to the property given by evaluating the expression on the - * current scope. If the property doesn't already exist on this scope, it will be created - * implicitly and added to the scope. - * - * For best practices on using `ngModel`, see: - * - * - [Understanding Scopes](https://github.com/angular/angular.js/wiki/Understanding-Scopes) - * - * For basic examples, how to use `ngModel`, see: - * - * - {@link ng.directive:input input} - * - {@link input[text] text} - * - {@link input[checkbox] checkbox} - * - {@link input[radio] radio} - * - {@link input[number] number} - * - {@link input[email] email} - * - {@link input[url] url} - * - {@link input[date] date} - * - {@link input[dateTimeLocal] dateTimeLocal} - * - {@link input[time] time} - * - {@link input[month] month} - * - {@link input[week] week} - * - {@link ng.directive:select select} - * - {@link ng.directive:textarea textarea} - * - * # CSS classes - * The following CSS classes are added and removed on the associated input/select/textarea element - * depending on the validity of the model. - * - * - `ng-valid`: the model is valid - * - `ng-invalid`: the model is invalid - * - `ng-valid-[key]`: for each valid key added by `$setValidity` - * - `ng-invalid-[key]`: for each invalid key added by `$setValidity` - * - `ng-pristine`: the control hasn't been interacted with yet - * - `ng-dirty`: the control has been interacted with - * - `ng-touched`: the control has been blurred - * - `ng-untouched`: the control hasn't been blurred - * - `ng-pending`: any `$asyncValidators` are unfulfilled - * - * Keep in mind that ngAnimate can detect each of these classes when added and removed. - * - * ## Animation Hooks - * - * Animations within models are triggered when any of the associated CSS classes are added and removed - * on the input element which is attached to the model. These classes are: `.ng-pristine`, `.ng-dirty`, - * `.ng-invalid` and `.ng-valid` as well as any other validations that are performed on the model itself. - * The animations that are triggered within ngModel are similar to how they work in ngClass and - * animations can be hooked into using CSS transitions, keyframes as well as JS animations. - * - * The following example shows a simple way to utilize CSS transitions to style an input element - * that has been rendered as invalid after it has been validated: - * - *
- * //be sure to include ngAnimate as a module to hook into more
- * //advanced animations
- * .my-input {
- *   transition:0.5s linear all;
- *   background: white;
- * }
- * .my-input.ng-invalid {
- *   background: red;
- *   color:white;
- * }
- * 
- * - * @example - * - - - - Update input to see transitions when valid/invalid. - Integer is a valid value. -
- -
-
- *
- * - * ## Binding to a getter/setter - * - * Sometimes it's helpful to bind `ngModel` to a getter/setter function. A getter/setter is a - * function that returns a representation of the model when called with zero arguments, and sets - * the internal state of a model when called with an argument. It's sometimes useful to use this - * for models that have an internal representation that's different than what the model exposes - * to the view. - * - *
- * **Best Practice:** It's best to keep getters fast because Angular is likely to call them more - * frequently than other parts of your code. - *
- * - * You use this behavior by adding `ng-model-options="{ getterSetter: true }"` to an element that - * has `ng-model` attached to it. You can also add `ng-model-options="{ getterSetter: true }"` to - * a `
`, which will enable this behavior for all ``s within it. See - * {@link ng.directive:ngModelOptions `ngModelOptions`} for more. - * - * The following example shows how to use `ngModel` with a getter/setter: - * - * @example - * - -
- - Name: - - -
user.name = 
-
-
- - angular.module('getterSetterExample', []) - .controller('ExampleController', ['$scope', function($scope) { - var _name = 'Brian'; - $scope.user = { - name: function(newName) { - if (angular.isDefined(newName)) { - _name = newName; - } - return _name; - } - }; - }]); - - *
- */ -var ngModelDirective = function() { - return { - restrict: 'A', - require: ['ngModel', '^?form', '^?ngModelOptions'], - controller: NgModelController, - // Prelink needs to run before any input directive - // so that we can set the NgModelOptions in NgModelController - // before anyone else uses it. - priority: 1, - compile: function ngModelCompile(element) { - // Setup initial state of the control - element.addClass(PRISTINE_CLASS).addClass(UNTOUCHED_CLASS).addClass(VALID_CLASS); - - return { - pre: function ngModelPreLink(scope, element, attr, ctrls) { - var modelCtrl = ctrls[0], - formCtrl = ctrls[1] || nullFormCtrl; - - modelCtrl.$$setOptions(ctrls[2] && ctrls[2].$options); - - // notify others, especially parent forms - formCtrl.$addControl(modelCtrl); - - attr.$observe('name', function(newValue) { - if (modelCtrl.$name !== newValue) { - formCtrl.$$renameControl(modelCtrl, newValue); - } - }); - - scope.$on('$destroy', function() { - formCtrl.$removeControl(modelCtrl); - }); - }, - post: function ngModelPostLink(scope, element, attr, ctrls) { - var modelCtrl = ctrls[0]; - if (modelCtrl.$options && modelCtrl.$options.updateOn) { - element.on(modelCtrl.$options.updateOn, function(ev) { - modelCtrl.$$debounceViewValueCommit(ev && ev.type); - }); - } - - element.on('blur', function(ev) { - if (modelCtrl.$touched) return; - - scope.$apply(function() { - modelCtrl.$setTouched(); - }); - }); - } - }; - } - }; -}; - - -/** - * @ngdoc directive - * @name ngChange - * - * @description - * Evaluate the given expression when the user changes the input. - * The expression is evaluated immediately, unlike the JavaScript onchange event - * which only triggers at the end of a change (usually, when the user leaves the - * form element or presses the return key). - * - * The `ngChange` expression is only evaluated when a change in the input value causes - * a new value to be committed to the model. - * - * It will not be evaluated: - * * if the value returned from the `$parsers` transformation pipeline has not changed - * * if the input has continued to be invalid since the model will stay `null` - * * if the model is changed programmatically and not by a change to the input value - * - * - * Note, this directive requires `ngModel` to be present. - * - * @element input - * @param {expression} ngChange {@link guide/expression Expression} to evaluate upon change - * in input value. - * - * @example - * - * - * - *
- * - * - *
- * debug = {{confirmed}}
- * counter = {{counter}}
- *
- *
- * - * var counter = element(by.binding('counter')); - * var debug = element(by.binding('confirmed')); - * - * it('should evaluate the expression if changing from view', function() { - * expect(counter.getText()).toContain('0'); - * - * element(by.id('ng-change-example1')).click(); - * - * expect(counter.getText()).toContain('1'); - * expect(debug.getText()).toContain('true'); - * }); - * - * it('should not evaluate the expression if changing from model', function() { - * element(by.id('ng-change-example2')).click(); - - * expect(counter.getText()).toContain('0'); - * expect(debug.getText()).toContain('true'); - * }); - * - *
- */ -var ngChangeDirective = valueFn({ - restrict: 'A', - require: 'ngModel', - link: function(scope, element, attr, ctrl) { - ctrl.$viewChangeListeners.push(function() { - scope.$eval(attr.ngChange); - }); - } -}); - - -var requiredDirective = function() { - return { - restrict: 'A', - require: '?ngModel', - link: function(scope, elm, attr, ctrl) { - if (!ctrl) return; - attr.required = true; // force truthy in case we are on non input element - - ctrl.$validators.required = function(value) { - return !attr.required || !ctrl.$isEmpty(value); - }; - - attr.$observe('required', function() { - ctrl.$validate(); - }); - } - }; -}; - - -var patternDirective = function() { - return { - restrict: 'A', - require: '?ngModel', - link: function(scope, elm, attr, ctrl) { - if (!ctrl) return; - - var regexp, patternExp = attr.ngPattern || attr.pattern; - attr.$observe('pattern', function(regex) { - if (isString(regex) && regex.length > 0) { - regex = new RegExp(regex); - } - - if (regex && !regex.test) { - throw minErr('ngPattern')('noregexp', - 'Expected {0} to be a RegExp but was {1}. Element: {2}', patternExp, - regex, startingTag(elm)); - } - - regexp = regex || undefined; - ctrl.$validate(); - }); - - ctrl.$validators.pattern = function(value) { - return ctrl.$isEmpty(value) || isUndefined(regexp) || regexp.test(value); - }; - } - }; -}; - - -var maxlengthDirective = function() { - return { - restrict: 'A', - require: '?ngModel', - link: function(scope, elm, attr, ctrl) { - if (!ctrl) return; - - var maxlength = 0; - attr.$observe('maxlength', function(value) { - maxlength = int(value) || 0; - ctrl.$validate(); - }); - ctrl.$validators.maxlength = function(modelValue, viewValue) { - return ctrl.$isEmpty(modelValue) || viewValue.length <= maxlength; - }; - } - }; -}; - -var minlengthDirective = function() { - return { - restrict: 'A', - require: '?ngModel', - link: function(scope, elm, attr, ctrl) { - if (!ctrl) return; - - var minlength = 0; - attr.$observe('minlength', function(value) { - minlength = int(value) || 0; - ctrl.$validate(); - }); - ctrl.$validators.minlength = function(modelValue, viewValue) { - return ctrl.$isEmpty(modelValue) || viewValue.length >= minlength; - }; - } - }; -}; - - -/** - * @ngdoc directive - * @name ngList - * - * @description - * Text input that converts between a delimited string and an array of strings. The default - * delimiter is a comma followed by a space - equivalent to `ng-list=", "`. You can specify a custom - * delimiter as the value of the `ngList` attribute - for example, `ng-list=" | "`. - * - * The behaviour of the directive is affected by the use of the `ngTrim` attribute. - * * If `ngTrim` is set to `"false"` then whitespace around both the separator and each - * list item is respected. This implies that the user of the directive is responsible for - * dealing with whitespace but also allows you to use whitespace as a delimiter, such as a - * tab or newline character. - * * Otherwise whitespace around the delimiter is ignored when splitting (although it is respected - * when joining the list items back together) and whitespace around each list item is stripped - * before it is added to the model. - * - * ### Example with Validation - * - * - * - * angular.module('listExample', []) - * .controller('ExampleController', ['$scope', function($scope) { - * $scope.names = ['morpheus', 'neo', 'trinity']; - * }]); - * - * - *
- * List: - * - * Required! - *
- * names = {{names}}
- * myForm.namesInput.$valid = {{myForm.namesInput.$valid}}
- * myForm.namesInput.$error = {{myForm.namesInput.$error}}
- * myForm.$valid = {{myForm.$valid}}
- * myForm.$error.required = {{!!myForm.$error.required}}
- *
- *
- * - * var listInput = element(by.model('names')); - * var names = element(by.exactBinding('names')); - * var valid = element(by.binding('myForm.namesInput.$valid')); - * var error = element(by.css('span.error')); - * - * it('should initialize to model', function() { - * expect(names.getText()).toContain('["morpheus","neo","trinity"]'); - * expect(valid.getText()).toContain('true'); - * expect(error.getCssValue('display')).toBe('none'); - * }); - * - * it('should be invalid if empty', function() { - * listInput.clear(); - * listInput.sendKeys(''); - * - * expect(names.getText()).toContain(''); - * expect(valid.getText()).toContain('false'); - * expect(error.getCssValue('display')).not.toBe('none'); - * }); - * - *
- * - * ### Example - splitting on whitespace - * - * - * - *
{{ list | json }}
- *
- * - * it("should split the text by newlines", function() { - * var listInput = element(by.model('list')); - * var output = element(by.binding('list | json')); - * listInput.sendKeys('abc\ndef\nghi'); - * expect(output.getText()).toContain('[\n "abc",\n "def",\n "ghi"\n]'); - * }); - * - *
- * - * @element input - * @param {string=} ngList optional delimiter that should be used to split the value. - */ -var ngListDirective = function() { - return { - restrict: 'A', - priority: 100, - require: 'ngModel', - link: function(scope, element, attr, ctrl) { - // We want to control whitespace trimming so we use this convoluted approach - // to access the ngList attribute, which doesn't pre-trim the attribute - var ngList = element.attr(attr.$attr.ngList) || ', '; - var trimValues = attr.ngTrim !== 'false'; - var separator = trimValues ? trim(ngList) : ngList; - - var parse = function(viewValue) { - // If the viewValue is invalid (say required but empty) it will be `undefined` - if (isUndefined(viewValue)) return; - - var list = []; - - if (viewValue) { - forEach(viewValue.split(separator), function(value) { - if (value) list.push(trimValues ? trim(value) : value); - }); - } - - return list; - }; - - ctrl.$parsers.push(parse); - ctrl.$formatters.push(function(value) { - if (isArray(value)) { - return value.join(ngList); - } - - return undefined; - }); - - // Override the standard $isEmpty because an empty array means the input is empty. - ctrl.$isEmpty = function(value) { - return !value || !value.length; - }; - } - }; -}; var CONSTANT_VALUE_REGEXP = /^(true|false|\d+)$/; @@ -21112,12 +20188,17 @@ var CONSTANT_VALUE_REGEXP = /^(true|false|\d+)$/; * @name ngValue * * @description - * Binds the given expression to the value of `option` or `input[radio]`, so - * that when the element is selected, the `ngModel` of that element is set to + * Binds the given expression to the value of `
* - * ## `select as` + * ## `select` **`as`** * - * Using `select as` will bind the result of the `select as` expression to the model, but + * Using `select` **`as`** will bind the result of the `select` expression to the model, but * the value of the ` + * ``` + * + * ```js + * $scope.values = [{ + * id: 1, + * label: 'aLabel', + * subItem: { name: 'aSubItem' } + * }, { + * id: 2, + * label: 'bLabel', + * subItem: { name: 'bSubItem' } + * }]; + * + * $scope.selected = { name: 'aSubItem' }; + * ``` + * + * With the purpose of preserving the selection, the **`track by`** expression is always applied to the element + * of the data source (to `item` in this example). To calculate whether an element is selected, we do the + * following: + * + * 1. Apply **`track by`** to the elements in the array. In the example: `[1, 2]` + * 2. Apply **`track by`** to the already selected value in `ngModel`. + * In the example: this is not possible as **`track by`** refers to `item.id`, but the selected + * value from `ngModel` is `{name: 'aSubItem'}`, so the **`track by`** expression is applied to + * a wrong object, the selected element can't be found, `',""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ha.optgroup=ha.option;ha.tbody=ha.tfoot=ha.colgroup=ha.caption=ha.thead;ha.th=ha.td;var Ka=Q.prototype={ready:function(b){function a(){c||(c= -!0,b())}var c=!1;"complete"===U.readyState?setTimeout(a):(this.on("DOMContentLoaded",a),Q(N).on("load",a))},toString:function(){var b=[];s(this,function(a){b.push(""+a)});return"["+b.join(", ")+"]"},eq:function(b){return 0<=b?v(this[b]):v(this[this.length+b])},length:0,push:If,sort:[].sort,splice:[].splice},vb={};s("multiple selected checked disabled readOnly required open".split(" "),function(b){vb[S(b)]=b});var Kc={};s("input select option textarea button form details".split(" "),function(b){Kc[b]= -!0});var Lc={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};s({data:Qb,removeData:rb},function(b,a){Q[a]=b});s({data:Qb,inheritedData:ub,scope:function(b){return v.data(b,"$scope")||ub(b.parentNode||b,["$isolateScope","$scope"])},isolateScope:function(b){return v.data(b,"$isolateScope")||v.data(b,"$isolateScopeNoTemplate")},controller:Gc,injector:function(b){return ub(b,"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:Rb,css:function(b, -a,c){a=$a(a);if(z(c))b.style[a]=c;else return b.style[a]},attr:function(b,a,c){var d=S(a);if(vb[d])if(z(c))c?(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d));else return b[a]||(b.attributes.getNamedItem(a)||y).specified?d:t;else if(z(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,2),null===b?t:b},prop:function(b,a,c){if(z(c))b[a]=c;else return b[a]},text:function(){function b(a,b){if(x(b)){var d=a.nodeType;return d===ka||d===jb?a.textContent:""}a.textContent=b} -b.$dv="";return b}(),val:function(b,a){if(x(a)){if(b.multiple&&"select"===pa(b)){var c=[];s(b.options,function(a){a.selected&&c.push(a.value||a.text)});return 0===c.length?null:c}return b.value}b.value=a},html:function(b,a){if(x(a))return b.innerHTML;qb(b,!0);b.innerHTML=a},empty:Hc},function(b,a){Q.prototype[a]=function(a,d){var e,f,g=this.length;if(b!==Hc&&(2==b.length&&b!==Rb&&b!==Gc?a:d)===t){if(P(a)){for(e=0;e":function(a,c,d,e){return d(a,c)>e(a,c)},"<=":function(a,c,d,e){return d(a,c)<=e(a,c)},">=":function(a,c,d,e){return d(a,c)>=e(a,c)},"&&":function(a,c,d,e){return d(a,c)&&e(a,c)},"||":function(a,c,d,e){return d(a,c)||e(a,c)},"!":function(a,c,d){return!d(a,c)},"=":!0,"|":!0}),Qf={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'}, -ec=function(a){this.options=a};ec.prototype={constructor:ec,lex:function(a){this.text=a;this.index=0;this.ch=t;for(this.tokens=[];this.index=a},isWhitespace:function(a){return" "===a||"\r"===a||"\t"===a||"\n"===a||"\v"===a||"\u00a0"===a},isIdent:function(a){return"a"<=a&&"z">=a||"A"<=a&&"Z">=a||"_"===a||"$"===a},isExpOperator:function(a){return"-"===a||"+"===a||this.isNumber(a)},throwError:function(a,c,d){d=d||this.index;c=z(c)?"s "+c+"-"+this.index+" ["+this.text.substring(c,d)+"]":" "+d;throw oa("lexerr",a,c,this.text);},readNumber:function(){for(var a="",c=this.index;this.index","<=",">="))a=this.binaryFn(a,c.fn,this.relational());return a},additive:function(){for(var a= -this.multiplicative(),c;c=this.expect("+","-");)a=this.binaryFn(a,c.fn,this.multiplicative());return a},multiplicative:function(){for(var a=this.unary(),c;c=this.expect("*","/","%");)a=this.binaryFn(a,c.fn,this.unary());return a},unary:function(){var a;return this.expect("+")?this.primary():(a=this.expect("-"))?this.binaryFn(cb.ZERO,a.fn,this.unary()):(a=this.expect("!"))?this.unaryFn(a.fn,this.unary()):this.primary()},fieldAccess:function(a){var c=this.text,d=this.expect().text,e=bd(d,this.options, -c);return F(function(c,d,k){return e(k||a(c,d))},{assign:function(e,g,k){(k=a(e,k))||a.assign(e,k={});return Oa(k,d,g,c)}})},objectIndex:function(a){var c=this.text,d=this.expression();this.consume("]");return F(function(e,f){var g=a(e,f),k=d(e,f);na(k,c);return g?Aa(g[k],c):t},{assign:function(e,f,g){var k=na(d(e,g),c);(g=Aa(a(e,g),c))||a.assign(e,g={});return g[k]=f}})},functionCall:function(a,c){var d=[];if(")"!==this.peekToken().text){do d.push(this.expression());while(this.expect(","))}this.consume(")"); -var e=this.text,f=d.length?[]:null;return function(g,k){var h=c?c(g,k):g,l=a(g,k,h)||y;if(f)for(var m=d.length;m--;)f[m]=Aa(d[m](g,k),e);Aa(h,e);if(l){if(l.constructor===l)throw oa("isecfn",e);if(l===Nf||l===Of||l===Pf)throw oa("isecff",e);}h=l.apply?l.apply(h,f):l(f[0],f[1],f[2],f[3],f[4]);return Aa(h,e)}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;var c=this.expression();a.push(c)}while(this.expect(","))}this.consume("]");return F(function(c, -e){for(var f=[],g=0,k=a.length;ga.getHours()?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){a=-1*a.getTimezoneOffset();return a=(0<=a?"+":"")+(Ab(Math[0=k};d.$observe("min",function(a){z(a)&&!X(a)&&(a=parseFloat(a,10));k=X(a)&&!isNaN(a)?a:t;e.$validate()})}if(d.max||d.ngMax){var h;e.$validators.max=function(a){return e.$isEmpty(a)|| -x(h)||a<=h};d.$observe("max",function(a){z(a)&&!X(a)&&(a=parseFloat(a,10));h=X(a)&&!isNaN(a)?a:t;e.$validate()})}},url:function(a,c,d,e,f,g){db(a,c,d,e,f,g);fc(e);e.$$parserName="url";e.$validators.url=function(a){return e.$isEmpty(a)||Rf.test(a)}},email:function(a,c,d,e,f,g){db(a,c,d,e,f,g);fc(e);e.$$parserName="email";e.$validators.email=function(a){return e.$isEmpty(a)||Sf.test(a)}},radio:function(a,c,d,e){x(d.name)&&c.attr("name",++gb);c.on("click",function(a){c[0].checked&&e.$setViewValue(d.value, -a&&a.type)});e.$render=function(){c[0].checked=d.value==e.$viewValue};d.$observe("value",e.$render)},checkbox:function(a,c,d,e,f,g,k,h){var l=sd(h,a,"ngTrueValue",d.ngTrueValue,!0),m=sd(h,a,"ngFalseValue",d.ngFalseValue,!1);c.on("click",function(a){e.$setViewValue(c[0].checked,a&&a.type)});e.$render=function(){c[0].checked=e.$viewValue};e.$isEmpty=function(a){return a!==l};e.$formatters.push(function(a){return la(a,l)});e.$parsers.push(function(a){return a?l:m})},hidden:y,button:y,submit:y,reset:y, -file:y},vc=["$browser","$sniffer","$filter","$parse",function(a,c,d,e){return{restrict:"E",require:["?ngModel"],link:{pre:function(f,g,k,h){h[0]&&(Bd[S(k.type)]||Bd.text)(f,g,k,h[0],c,a,d,e)}}}}],fb="ng-valid",td="ng-invalid",Pa="ng-pristine",Db="ng-dirty",vd="ng-pending",Vf=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(a,c,d,e,f,g,k,h,l,m){this.$modelValue=this.$viewValue=Number.NaN;this.$validators={};this.$asyncValidators= -{};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success={};this.$pending=t;this.$name=m(d.name||"",!1)(a);var p=f(d.ngModel),q=null,n=this,r=function(){var c=p(a);n.$options&&n.$options.getterSetter&&A(c)&&(c=c());return c},O=function(c){var d;n.$options&&n.$options.getterSetter&&A(d=p(a))?d(n.$modelValue):p.assign(a,n.$modelValue)};this.$$setOptions=function(a){n.$options= -a;if(!(p.assign||a&&a.getterSetter))throw Fb("nonassign",d.ngModel,sa(e));};this.$render=y;this.$isEmpty=function(a){return x(a)||""===a||null===a||a!==a};var B=e.inheritedData("$formController")||Cb,C=0;qd({ctrl:this,$element:e,set:function(a,c){a[c]=!0},unset:function(a,c){delete a[c]},parentForm:B,$animate:g});this.$setPristine=function(){n.$dirty=!1;n.$pristine=!0;g.removeClass(e,Db);g.addClass(e,Pa)};this.$setUntouched=function(){n.$touched=!1;n.$untouched=!0;g.setClass(e,"ng-untouched","ng-touched")}; -this.$setTouched=function(){n.$touched=!0;n.$untouched=!1;g.setClass(e,"ng-touched","ng-untouched")};this.$rollbackViewValue=function(){k.cancel(q);n.$viewValue=n.$$lastCommittedViewValue;n.$render()};this.$validate=function(){X(n.$modelValue)&&isNaN(n.$modelValue)||this.$$parseAndValidate()};this.$$runValidators=function(a,c,d,e){function f(){var a=!0;s(n.$validators,function(e,f){var g=e(c,d);a=a&&g;h(f,g)});return a?!0:(s(n.$asyncValidators,function(a,c){h(c,null)}),!1)}function g(){var a=[],e= -!0;s(n.$asyncValidators,function(f,g){var k=f(c,d);if(!k||!A(k.then))throw Fb("$asyncValidators",k);h(g,t);a.push(k.then(function(){h(g,!0)},function(a){e=!1;h(g,!1)}))});a.length?l.all(a).then(function(){k(e)},y):k(!0)}function h(a,c){m===C&&n.$setValidity(a,c)}function k(a){m===C&&e(a)}C++;var m=C;(function(a){var c=n.$$parserName||"parse";if(a===t)h(c,null);else if(h(c,a),!a)return s(n.$validators,function(a,c){h(c,null)}),s(n.$asyncValidators,function(a,c){h(c,null)}),!1;return!0})(a)?f()?g(): -k(!1):k(!1)};this.$commitViewValue=function(){var a=n.$viewValue;k.cancel(q);if(n.$$lastCommittedViewValue!==a||""===a&&n.$$hasNativeValidators)n.$$lastCommittedViewValue=a,n.$pristine&&(n.$dirty=!0,n.$pristine=!1,g.removeClass(e,Pa),g.addClass(e,Db),B.$setDirty()),this.$$parseAndValidate()};this.$$parseAndValidate=function(){var a=n.$$lastCommittedViewValue,c=a,d=x(c)?t:!0;if(d)for(var e=0;e=f}}}}},ue=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,c,d,e){var f=c.attr(d.$attr.ngList)||", ",g="false"!==d.ngTrim,k=g?T(f):f;e.$parsers.push(function(a){if(!x(a)){var c=[];a&&s(a.split(k),function(a){a&&c.push(g?T(a):a)});return c}});e.$formatters.push(function(a){return H(a)? -a.join(f):t});e.$isEmpty=function(a){return!a||!a.length}}}},Wf=/^(true|false|\d+)$/,we=function(){return{restrict:"A",priority:100,compile:function(a,c){return Wf.test(c.ngValue)?function(a,c,f){f.$set("value",a.$eval(f.ngValue))}:function(a,c,f){a.$watch(f.ngValue,function(a){f.$set("value",a)})}}}},xe=function(){return{restrict:"A",controller:["$scope","$attrs",function(a,c){var d=this;this.$options=a.$eval(c.ngModelOptions);this.$options.updateOn!==t?(this.$options.updateOnDefault=!1,this.$options.updateOn= -T(this.$options.updateOn.replace(Uf,function(){d.$options.updateOnDefault=!0;return" "}))):this.$options.updateOnDefault=!0}]}},Xd=["$compile",function(a){return{restrict:"AC",compile:function(c){a.$$addBindingClass(c);return function(c,e,f){a.$$addBindingInfo(e,f.ngBind);e=e[0];c.$watch(f.ngBind,function(a){e.textContent=a===t?"":a})}}}}],Zd=["$interpolate","$compile",function(a,c){return{compile:function(d){c.$$addBindingClass(d);return function(d,f,g){d=a(f.attr(g.$attr.ngBindTemplate));c.$$addBindingInfo(f, -d.expressions);f=f[0];g.$observe("ngBindTemplate",function(a){f.textContent=a===t?"":a})}}}}],Yd=["$sce","$parse","$compile",function(a,c,d){return{restrict:"A",compile:function(e,f){var g=c(f.ngBindHtml),k=c(f.ngBindHtml,function(a){return(a||"").toString()});d.$$addBindingClass(e);return function(c,e,f){d.$$addBindingInfo(e,f.ngBindHtml);c.$watch(k,function(){e.html(a.getTrustedHtml(g(c))||"")})}}}}],$d=gc("",!0),be=gc("Odd",0),ae=gc("Even",1),ce=Ia({compile:function(a,c){c.$set("ngCloak",t);a.removeClass("ng-cloak")}}), -de=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Ac={},Xf={blur:!0,focus:!0};s("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(a){var c=ua("ng-"+a);Ac[c]=["$parse","$rootScope",function(d,e){return{restrict:"A",compile:function(f,g){var k=d(g[c]);return function(c,d){d.on(a,function(d){var f=function(){k(c,{$event:d})};Xf[a]&&e.$$phase?c.$evalAsync(f):c.$apply(f)})}}}}]}); -var ge=["$animate",function(a){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(c,d,e,f,g){var k,h,l;c.$watch(e.ngIf,function(c){c?h||g(function(c,f){h=f;c[c.length++]=U.createComment(" end ngIf: "+e.ngIf+" ");k={clone:c};a.enter(c,d.parent(),d)}):(l&&(l.remove(),l=null),h&&(h.$destroy(),h=null),k&&(l=nb(k.clone),a.leave(l).then(function(){l=null}),k=null))})}}}],he=["$templateRequest","$anchorScroll","$animate","$sce",function(a,c,d,e){return{restrict:"ECA", -priority:400,terminal:!0,transclude:"element",controller:ta.noop,compile:function(f,g){var k=g.ngInclude||g.src,h=g.onload||"",l=g.autoscroll;return function(f,g,q,n,r){var s=0,t,C,D,G=function(){C&&(C.remove(),C=null);t&&(t.$destroy(),t=null);D&&(d.leave(D).then(function(){C=null}),C=D,D=null)};f.$watch(e.parseAsResourceUrl(k),function(e){var k=function(){!z(l)||l&&!f.$eval(l)||c()},q=++s;e?(a(e,!0).then(function(a){if(q===s){var c=f.$new();n.template=a;a=r(c,function(a){G();d.enter(a,null,g).then(k)}); -t=c;D=a;t.$emit("$includeContentLoaded",e);f.$eval(h)}},function(){q===s&&(G(),f.$emit("$includeContentError",e))}),f.$emit("$includeContentRequested",e)):(G(),n.template=null)})}}}}],ye=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(c,d,e,f){/SVG/.test(d[0].toString())?(d.empty(),a(Dc(f.template,U).childNodes)(c,function(a){d.append(a)},t,t,d)):(d.html(f.template),a(d.contents())(c))}}}],ie=Ia({priority:450,compile:function(){return{pre:function(a,c, -d){a.$eval(d.ngInit)}}}}),je=Ia({terminal:!0,priority:1E3}),ke=["$locale","$interpolate",function(a,c){var d=/{}/g;return{restrict:"EA",link:function(e,f,g){var k=g.count,h=g.$attr.when&&f.attr(g.$attr.when),l=g.offset||0,m=e.$eval(h)||{},p={},q=c.startSymbol(),n=c.endSymbol(),r=/^when(Minus)?(.+)$/;s(g,function(a,c){r.test(c)&&(m[S(c.replace("when","").replace("Minus","-"))]=f.attr(g.$attr[c]))});s(m,function(a,e){p[e]=c(a.replace(d,q+k+"-"+l+n))});e.$watch(function(){var c=parseFloat(e.$eval(k)); -if(isNaN(c))return"";c in m||(c=a.pluralCat(c-l));return p[c](e)},function(a){f.text(a)})}}}],le=["$parse","$animate",function(a,c){var d=w("ngRepeat"),e=function(a,c,d,e,l,m,p){a[d]=e;l&&(a[l]=m);a.$index=c;a.$first=0===c;a.$last=c===p-1;a.$middle=!(a.$first||a.$last);a.$odd=!(a.$even=0===(c&1))};return{restrict:"A",multiElement:!0,transclude:"element",priority:1E3,terminal:!0,$$tlb:!0,compile:function(f,g){var k=g.ngRepeat,h=U.createComment(" end ngRepeat: "+k+" "),l=k.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/); -if(!l)throw d("iexp",k);var m=l[1],p=l[2],q=l[3],n=l[4],l=m.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/);if(!l)throw d("iidexp",m);var r=l[3]||l[1],z=l[2];if(q&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(q)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent)$/.test(q)))throw d("badident",q);var w,C,D,G,u={$id:Ma};n?w=a(n):(D=function(a,c){return Ma(c)},G=function(a){return a});return function(a,f,g,l,m){w&&(C=function(c,d,e){z&&(u[z]=c);u[r]=d;u.$index=e;return w(a,u)}); -var n=wa();a.$watchCollection(p,function(g){var l,p,E=f[0],u,w=wa(),B,y,F,x,H,A,J;q&&(a[q]=g);if(Qa(g))H=g,p=C||D;else{p=C||G;H=[];for(J in g)g.hasOwnProperty(J)&&"$"!=J.charAt(0)&&H.push(J);H.sort()}B=H.length;J=Array(B);for(l=0;lB;)d=t.pop(),m(R,d.label,!1),d.element.remove();s(R,function(a,c){0a&&q.removeOption(c)})}for(;Q.length> -v;)Q.pop()[0].element.remove()}var u;if(!(u=r.match(d)))throw Yf("iexp",r,sa(f));var A=c(u[2]||u[1]),y=u[4]||u[6],x=/ as /.test(u[0])&&u[1],v=x?c(x):null,F=u[5],J=c(u[3]||""),B=c(u[2]?u[1]:y),K=c(u[7]),I=u[8]?c(u[8]):null,P={},Q=[[{element:f,label:""}]],S={};w&&(a(w)(e),w.removeClass("ng-scope"),w.remove());f.empty();f.on("change",function(){e.$apply(function(){var a=K(e)||[],c;if(n)c=[],s(f.val(),function(d){d=I?P[d]:d;c.push("?"===d?t:""===d?null:h(v?v:B,d,a[d]))});else{var d=I?P[f.val()]:f.val(); -c="?"===d?t:""===d?null:h(v?v:B,d,a[d])}g.$setViewValue(c);p()})});g.$render=p;e.$watchCollection(K,l);e.$watchCollection(function(){var a=K(e),c;if(a&&H(a)){c=Array(a.length);for(var d=0,f=a.length;d@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}'); +(function(M,Y,t){'use strict';function S(b){return function(){var a=arguments[0],c;c="["+(b?b+":":"")+a+"] http://errors.angularjs.org/1.3.12/"+(b?b+"/":"")+a;for(a=1;a").append(b).html();try{return b[0].nodeType===qb?Q(c):c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+Q(b)})}catch(d){return Q(c)}}function pc(b){try{return decodeURIComponent(b)}catch(a){}}function qc(b){var a= +{},c,d;s((b||"").split("&"),function(b){b&&(c=b.replace(/\+/g,"%20").split("="),d=pc(c[0]),y(d)&&(b=y(c[1])?pc(c[1]):!0,rc.call(a,d)?H(a[d])?a[d].push(b):a[d]=[a[d],b]:a[d]=b))});return a}function Pb(b){var a=[];s(b,function(b,d){H(b)?s(b,function(b){a.push(Fa(d,!0)+(!0===b?"":"="+Fa(b,!0)))}):a.push(Fa(d,!0)+(!0===b?"":"="+Fa(b,!0)))});return a.length?a.join("&"):""}function rb(b){return Fa(b,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function Fa(b,a){return encodeURIComponent(b).replace(/%40/gi, +"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,a?"%20":"+")}function Id(b,a){var c,d,e=sb.length;b=D(b);for(d=0;d/,">"));}a=a||[];a.unshift(["$provide",function(a){a.value("$rootElement",b)}]);c.debugInfoEnabled&&a.push(["$compileProvider",function(a){a.debugInfoEnabled(!0)}]);a.unshift("ng");d=ab(a,c.strictDi);d.invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector", +d);c(b)(a)})}]);return d},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;M&&e.test(M.name)&&(c.debugInfoEnabled=!0,M.name=M.name.replace(e,""));if(M&&!f.test(M.name))return d();M.name=M.name.replace(f,"");ca.resumeBootstrap=function(b){s(b,function(b){a.push(b)});return d()};G(ca.resumeDeferredBootstrap)&&ca.resumeDeferredBootstrap()}function Kd(){M.name="NG_ENABLE_DEBUG_INFO!"+M.name;M.location.reload()}function Ld(b){b=ca.element(b).injector();if(!b)throw Ka("test");return b.get("$$testability")} +function tc(b,a){a=a||"_";return b.replace(Md,function(b,d){return(d?a:"")+b.toLowerCase()})}function Nd(){var b;uc||((sa=M.jQuery)&&sa.fn.on?(D=sa,x(sa.fn,{scope:La.scope,isolateScope:La.isolateScope,controller:La.controller,injector:La.injector,inheritedData:La.inheritedData}),b=sa.cleanData,sa.cleanData=function(a){var c;if(Qb)Qb=!1;else for(var d=0,e;null!=(e=a[d]);d++)(c=sa._data(e,"events"))&&c.$destroy&&sa(e).triggerHandler("$destroy");b(a)}):D=R,ca.element=D,uc=!0)}function Rb(b,a,c){if(!b)throw Ka("areq", +a||"?",c||"required");return b}function tb(b,a,c){c&&H(b)&&(b=b[b.length-1]);Rb(G(b),a,"not a function, got "+(b&&"object"===typeof b?b.constructor.name||"Object":typeof b));return b}function Ma(b,a){if("hasOwnProperty"===b)throw Ka("badname",a);}function vc(b,a,c){if(!a)return b;a=a.split(".");for(var d,e=b,f=a.length,g=0;g")+d[2];for(d=d[0];d--;)c=c.lastChild;f=Ya(f,c.childNodes);c=e.firstChild;c.textContent=""}else f.push(a.createTextNode(b));e.textContent="";e.innerHTML="";s(f,function(a){e.appendChild(a)}); +return e}function R(b){if(b instanceof R)return b;var a;F(b)&&(b=U(b),a=!0);if(!(this instanceof R)){if(a&&"<"!=b.charAt(0))throw Tb("nosel");return new R(b)}if(a){a=Y;var c;b=(c=gf.exec(b))?[a.createElement(c[1])]:(c=Fc(b,a))?c.childNodes:[]}Gc(this,b)}function Ub(b){return b.cloneNode(!0)}function xb(b,a){a||yb(b);if(b.querySelectorAll)for(var c=b.querySelectorAll("*"),d=0,e=c.length;d 4096 bytes)!"));else{if(n.cookie!==y)for(y=n.cookie,d=y.split("; "),fa={},f=0;fk&&this.remove(q.key),b},get:function(a){if(k").parent()[0])});var f=T(a,b,a,c,d,e);E.$$addScopeClass(a);var g=null;return function(b,c, +d){Rb(b,"scope");d=d||{};var e=d.parentBoundTranscludeFn,h=d.transcludeControllers;d=d.futureParentElement;e&&e.$$boundTransclude&&(e=e.$$boundTransclude);g||(g=(d=d&&d[0])?"foreignobject"!==ua(d)&&d.toString().match(/SVG/)?"svg":"html":"html");d="html"!==g?D(Wb(g,D("
").append(a).html())):c?La.clone.call(a):a;if(h)for(var l in h)d.data("$"+l+"Controller",h[l].instance);E.$$addScopeInfo(d,b);c&&c(d,b);f&&f(b,d,d,e);return d}}function T(a,b,c,d,e,f){function g(a,c,d,e){var f,l,k,q,n,p,w;if(r)for(w= +Array(c.length),q=0;qK.priority)break;if(N=K.scope)K.templateUrl||(I(N)?(Oa("new/isolated scope",T||O,K,aa),T=K):Oa("new/isolated scope",T,K,aa)),O=O||K;x=K.name;!K.templateUrl&&K.controller&&(N=K.controller,C=C||{},Oa("'"+x+"' controller",C[x],K,aa),C[x]=K);if(N=K.transclude)da=!0,K.$$tlb||(Oa("transclusion",fa,K,aa),fa=K),"element"==N?(z=!0,A=K.priority,N=aa,aa=e.$$element=D(Y.createComment(" "+x+": "+e[x]+" ")),d=aa[0],V(g,Za.call(N, +0),d),Aa=E(N,f,A,l&&l.name,{nonTlbTranscludeDirective:fa})):(N=D(Ub(d)).contents(),aa.empty(),Aa=E(N,f));if(K.template)if(B=!0,Oa("template",ka,K,aa),ka=K,N=G(K.template)?K.template(aa,e):K.template,N=Sc(N),K.replace){l=K;N=Sb.test(N)?Tc(Wb(K.templateNamespace,U(N))):[];d=N[0];if(1!=N.length||d.nodeType!==oa)throw ja("tplrt",x,"");V(g,aa,d);R={$attr:{}};N=W(d,[],R);var ba=a.splice(M+1,a.length-(M+1));T&&y(N);a=a.concat(N).concat(ba);Qc(e,R);R=a.length}else aa.html(N);if(K.templateUrl)B=!0,Oa("template", +ka,K,aa),ka=K,K.replace&&(l=K),v=S(a.splice(M,a.length-M),aa,e,g,da&&Aa,k,n,{controllerDirectives:C,newIsolateScopeDirective:T,templateDirective:ka,nonTlbTranscludeDirective:fa}),R=a.length;else if(K.compile)try{Q=K.compile(aa,e,Aa),G(Q)?w(null,Q,Pa,gb):Q&&w(Q.pre,Q.post,Pa,gb)}catch(of){c(of,va(aa))}K.terminal&&(v.terminal=!0,A=Math.max(A,K.priority))}v.scope=O&&!0===O.scope;v.transcludeOnThisElement=da;v.elementTranscludeOnThisElement=z;v.templateOnThisElement=B;v.transclude=Aa;r.hasElementTranscludeDirective= +z;return v}function y(a){for(var b=0,c=a.length;bq.priority)&&-1!=q.restrict.indexOf(f)&&(l&&(q=Ob(q,{$$start:l,$$end:k})),b.push(q),h=q)}catch(w){c(w)}}return h}function B(b){if(d.hasOwnProperty(b))for(var c=a.get(b+"Directive"),e=0,f=c.length;e"+b+"";return c.childNodes[0].childNodes;default:return b}}function R(a,b){if("srcdoc"== +b)return L.HTML;var c=ua(a);if("xlinkHref"==b||"form"==c&&"action"==b||"img"!=c&&("src"==b||"ngSrc"==b))return L.RESOURCE_URL}function Pa(a,c,d,e,f){var h=R(a,e);f=g[e]||f;var k=b(d,!0,h,f);if(k){if("multiple"===e&&"select"===ua(a))throw ja("selmulti",va(a));c.push({priority:100,compile:function(){return{pre:function(a,c,g){c=g.$$observers||(g.$$observers={});if(l.test(e))throw ja("nodomevents");var n=g[e];n!==d&&(k=n&&b(n,!0,h,f),d=n);k&&(g[e]=k(a),(c[e]||(c[e]=[])).$$inter=!0,(g.$$observers&&g.$$observers[e].$$scope|| +a).$watch(k,function(a,b){"class"===e&&a!=b?g.$updateClass(a,b):g.$set(e,a)}))}}}})}}function V(a,b,c){var d=b[0],e=b.length,f=d.parentNode,g,h;if(a)for(g=0,h=a.length;g=a)return b;for(;a--;)8===b[a].nodeType&&pf.call(b,a,1);return b}function Fe(){var b={},a=!1,c=/^(\S+)(\s+as\s+(\w+))?$/;this.register=function(a,c){Ma(a,"controller");I(a)?x(b,a):b[a]=c};this.allowGlobals=function(){a= +!0};this.$get=["$injector","$window",function(d,e){function f(a,b,c,d){if(!a||!I(a.$scope))throw S("$controller")("noscp",d,b);a.$scope[b]=c}return function(g,h,l,k){var m,n,q;l=!0===l;k&&F(k)&&(q=k);if(F(g)){k=g.match(c);if(!k)throw qf("ctrlfmt",g);n=k[1];q=q||k[3];g=b.hasOwnProperty(n)?b[n]:vc(h.$scope,n,!0)||(a?vc(e,n,!0):t);tb(g,n,!0)}if(l)return l=(H(g)?g[g.length-1]:g).prototype,m=Object.create(l||null),q&&f(h,q,m,n||g.name),x(function(){d.invoke(g,m,h,n);return m},{instance:m,identifier:q}); +m=d.instantiate(g,h,n);q&&f(h,q,m,n||g.name);return m}}]}function Ge(){this.$get=["$window",function(b){return D(b.document)}]}function He(){this.$get=["$log",function(b){return function(a,c){b.error.apply(b,arguments)}}]}function Yb(b,a){if(F(b)){var c=b.replace(rf,"").trim();if(c){var d=a("Content-Type");(d=d&&0===d.indexOf(Vc))||(d=(d=c.match(sf))&&tf[d[0]].test(c));d&&(b=oc(c))}}return b}function Wc(b){var a=ha(),c,d,e;if(!b)return a;s(b.split("\n"),function(b){e=b.indexOf(":");c=Q(U(b.substr(0, +e)));d=U(b.substr(e+1));c&&(a[c]=a[c]?a[c]+", "+d:d)});return a}function Xc(b){var a=I(b)?b:t;return function(c){a||(a=Wc(b));return c?(c=a[Q(c)],void 0===c&&(c=null),c):a}}function Yc(b,a,c,d){if(G(d))return d(b,a,c);s(d,function(d){b=d(b,a,c)});return b}function Ke(){var b=this.defaults={transformResponse:[Yb],transformRequest:[function(a){return I(a)&&"[object File]"!==Da.call(a)&&"[object Blob]"!==Da.call(a)&&"[object FormData]"!==Da.call(a)?$a(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"}, +post:ra(Zb),put:ra(Zb),patch:ra(Zb)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN"},a=!1;this.useApplyAsync=function(b){return y(b)?(a=!!b,this):a};var c=this.interceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(d,e,f,g,h,l){function k(a){function c(a){var b=x({},a);b.data=a.data?Yc(a.data,a.headers,a.status,e.transformResponse):a.data;a=a.status;return 200<=a&&300>a?b:h.reject(b)}function d(a){var b,c={};s(a,function(a,d){G(a)?(b= +a(),null!=b&&(c[d]=b)):c[d]=a});return c}if(!ca.isObject(a))throw S("$http")("badreq",a);var e=x({method:"get",transformRequest:b.transformRequest,transformResponse:b.transformResponse},a);e.headers=function(a){var c=b.headers,e=x({},a.headers),f,g,c=x({},c.common,c[Q(a.method)]);a:for(f in c){a=Q(f);for(g in e)if(Q(g)===a)continue a;e[f]=c[f]}return d(e)}(a);e.method=vb(e.method);var f=[function(a){var d=a.headers,e=Yc(a.data,Xc(d),t,a.transformRequest);B(e)&&s(d,function(a,b){"content-type"===Q(b)&& +delete d[b]});B(a.withCredentials)&&!B(b.withCredentials)&&(a.withCredentials=b.withCredentials);return m(a,e).then(c,c)},t],g=h.when(e);for(s(u,function(a){(a.request||a.requestError)&&f.unshift(a.request,a.requestError);(a.response||a.responseError)&&f.push(a.response,a.responseError)});f.length;){a=f.shift();var l=f.shift(),g=g.then(a,l)}g.success=function(a){g.then(function(b){a(b.data,b.status,b.headers,e)});return g};g.error=function(a){g.then(null,function(b){a(b.data,b.status,b.headers,e)}); +return g};return g}function m(c,f){function l(b,c,d,e){function f(){m(c,b,d,e)}O&&(200<=b&&300>b?O.put(X,[b,c,Wc(d),e]):O.remove(X));a?g.$applyAsync(f):(f(),g.$$phase||g.$apply())}function m(a,b,d,e){b=Math.max(b,0);(200<=b&&300>b?C.resolve:C.reject)({data:a,status:b,headers:Xc(d),config:c,statusText:e})}function w(a){m(a.data,a.status,ra(a.headers()),a.statusText)}function u(){var a=k.pendingRequests.indexOf(c);-1!==a&&k.pendingRequests.splice(a,1)}var C=h.defer(),A=C.promise,O,E,s=c.headers,X=n(c.url, +c.params);k.pendingRequests.push(c);A.then(u,u);!c.cache&&!b.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(O=I(c.cache)?c.cache:I(b.cache)?b.cache:q);O&&(E=O.get(X),y(E)?E&&G(E.then)?E.then(w,w):H(E)?m(E[1],E[0],ra(E[2]),E[3]):m(E,200,{},"OK"):O.put(X,A));B(E)&&((E=Zc(c.url)?e.cookies()[c.xsrfCookieName||b.xsrfCookieName]:t)&&(s[c.xsrfHeaderName||b.xsrfHeaderName]=E),d(c.method,X,f,l,s,c.timeout,c.withCredentials,c.responseType));return A}function n(a,b){if(!b)return a;var c=[];Ed(b, +function(a,b){null===a||B(a)||(H(a)||(a=[a]),s(a,function(a){I(a)&&(a=qa(a)?a.toISOString():$a(a));c.push(Fa(b)+"="+Fa(a))}))});0=l&&(r.resolve(q),n(P.$$intervalId),delete f[P.$$intervalId]);u||b.$apply()},h);f[P.$$intervalId]=r;return P}var f={};e.cancel=function(b){return b&&b.$$intervalId in f?(f[b.$$intervalId].reject("canceled"),a.clearInterval(b.$$intervalId),delete f[b.$$intervalId],!0):!1};return e}]} +function Rd(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"\u00a4",posSuf:"",negPre:"(\u00a4",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January February March April May June July August September October November December".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "), +DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a","short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a"},pluralCat:function(b){return 1===b?"one":"other"}}}}function ac(b){b=b.split("/");for(var a=b.length;a--;)b[a]=rb(b[a]);return b.join("/")}function $c(b,a){var c=Ba(b);a.$$protocol= +c.protocol;a.$$host=c.hostname;a.$$port=ba(c.port)||wf[c.protocol]||null}function ad(b,a){var c="/"!==b.charAt(0);c&&(b="/"+b);var d=Ba(b);a.$$path=decodeURIComponent(c&&"/"===d.pathname.charAt(0)?d.pathname.substring(1):d.pathname);a.$$search=qc(d.search);a.$$hash=decodeURIComponent(d.hash);a.$$path&&"/"!=a.$$path.charAt(0)&&(a.$$path="/"+a.$$path)}function za(b,a){if(0===a.indexOf(b))return a.substr(b.length)}function Ha(b){var a=b.indexOf("#");return-1==a?b:b.substr(0,a)}function bd(b){return b.replace(/(#.+)|#$/, +"$1")}function bc(b){return b.substr(0,Ha(b).lastIndexOf("/")+1)}function cc(b,a){this.$$html5=!0;a=a||"";var c=bc(b);$c(b,this);this.$$parse=function(a){var b=za(c,a);if(!F(b))throw Gb("ipthprfx",a,c);ad(b,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var a=Pb(this.$$search),b=this.$$hash?"#"+rb(this.$$hash):"";this.$$url=ac(this.$$path)+(a?"?"+a:"")+b;this.$$absUrl=c+this.$$url.substr(1)};this.$$parseLinkUrl=function(d,e){if(e&&"#"===e[0])return this.hash(e.slice(1)), +!0;var f,g;(f=za(b,d))!==t?(g=f,g=(f=za(a,f))!==t?c+(za("/",f)||f):b+g):(f=za(c,d))!==t?g=c+f:c==d+"/"&&(g=c);g&&this.$$parse(g);return!!g}}function dc(b,a){var c=bc(b);$c(b,this);this.$$parse=function(d){d=za(b,d)||za(c,d);var e;"#"===d.charAt(0)?(e=za(a,d),B(e)&&(e=d)):e=this.$$html5?d:"";ad(e,this);d=this.$$path;var f=/^\/[A-Z]:(\/.*)/;0===e.indexOf(b)&&(e=e.replace(b,""));f.exec(e)||(d=(e=f.exec(d))?e[1]:d);this.$$path=d;this.$$compose()};this.$$compose=function(){var c=Pb(this.$$search),e=this.$$hash? +"#"+rb(this.$$hash):"";this.$$url=ac(this.$$path)+(c?"?"+c:"")+e;this.$$absUrl=b+(this.$$url?a+this.$$url:"")};this.$$parseLinkUrl=function(a,c){return Ha(b)==Ha(a)?(this.$$parse(a),!0):!1}}function cd(b,a){this.$$html5=!0;dc.apply(this,arguments);var c=bc(b);this.$$parseLinkUrl=function(d,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;b==Ha(d)?f=d:(g=za(c,d))?f=b+a+g:c===d+"/"&&(f=c);f&&this.$$parse(f);return!!f};this.$$compose=function(){var c=Pb(this.$$search),e=this.$$hash?"#"+rb(this.$$hash): +"";this.$$url=ac(this.$$path)+(c?"?"+c:"")+e;this.$$absUrl=b+a+this.$$url}}function Hb(b){return function(){return this[b]}}function dd(b,a){return function(c){if(B(c))return this[b];this[b]=a(c);this.$$compose();return this}}function Me(){var b="",a={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(a){return y(a)?(b=a,this):b};this.html5Mode=function(b){return Wa(b)?(a.enabled=b,this):I(b)?(Wa(b.enabled)&&(a.enabled=b.enabled),Wa(b.requireBase)&&(a.requireBase=b.requireBase),Wa(b.rewriteLinks)&& +(a.rewriteLinks=b.rewriteLinks),this):a};this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(c,d,e,f,g){function h(a,b,c){var e=k.url(),f=k.$$state;try{d.url(a,b,c),k.$$state=d.state()}catch(g){throw k.url(e),k.$$state=f,g;}}function l(a,b){c.$broadcast("$locationChangeSuccess",k.absUrl(),a,k.$$state,b)}var k,m;m=d.baseHref();var n=d.url(),q;if(a.enabled){if(!m&&a.requireBase)throw Gb("nobase");q=n.substring(0,n.indexOf("/",n.indexOf("//")+2))+(m||"/");m=e.history?cc:cd}else q= +Ha(n),m=dc;k=new m(q,"#"+b);k.$$parseLinkUrl(n,n);k.$$state=d.state();var u=/^\s*(javascript|mailto):/i;f.on("click",function(b){if(a.rewriteLinks&&!b.ctrlKey&&!b.metaKey&&!b.shiftKey&&2!=b.which&&2!=b.button){for(var e=D(b.target);"a"!==ua(e[0]);)if(e[0]===f[0]||!(e=e.parent())[0])return;var h=e.prop("href"),l=e.attr("href")||e.attr("xlink:href");I(h)&&"[object SVGAnimatedString]"===h.toString()&&(h=Ba(h.animVal).href);u.test(h)||!h||e.attr("target")||b.isDefaultPrevented()||!k.$$parseLinkUrl(h, +l)||(b.preventDefault(),k.absUrl()!=d.url()&&(c.$apply(),g.angular["ff-684208-preventDefault"]=!0))}});k.absUrl()!=n&&d.url(k.absUrl(),!0);var r=!0;d.onUrlChange(function(a,b){c.$evalAsync(function(){var d=k.absUrl(),e=k.$$state,f;k.$$parse(a);k.$$state=b;f=c.$broadcast("$locationChangeStart",a,d,b,e).defaultPrevented;k.absUrl()===a&&(f?(k.$$parse(d),k.$$state=e,h(d,!1,e)):(r=!1,l(d,e)))});c.$$phase||c.$digest()});c.$watch(function(){var a=bd(d.url()),b=bd(k.absUrl()),f=d.state(),g=k.$$replace,q= +a!==b||k.$$html5&&e.history&&f!==k.$$state;if(r||q)r=!1,c.$evalAsync(function(){var b=k.absUrl(),d=c.$broadcast("$locationChangeStart",b,a,k.$$state,f).defaultPrevented;k.absUrl()===b&&(d?(k.$$parse(a),k.$$state=f):(q&&h(b,g,f===k.$$state?null:k.$$state),l(a,f)))});k.$$replace=!1});return k}]}function Ne(){var b=!0,a=this;this.debugEnabled=function(a){return y(a)?(b=a,this):b};this.$get=["$window",function(c){function d(a){a instanceof Error&&(a.stack?a=a.message&&-1===a.stack.indexOf(a.message)? +"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function e(a){var b=c.console||{},e=b[a]||b.log||z;a=!1;try{a=!!e.apply}catch(l){}return a?function(){var a=[];s(arguments,function(b){a.push(d(b))});return e.apply(b,a)}:function(a,b){e(a,null==b?"":b)}}return{log:e("log"),info:e("info"),warn:e("warn"),error:e("error"),debug:function(){var c=e("debug");return function(){b&&c.apply(a,arguments)}}()}}]}function ta(b,a){if("__defineGetter__"=== +b||"__defineSetter__"===b||"__lookupGetter__"===b||"__lookupSetter__"===b||"__proto__"===b)throw la("isecfld",a);return b}function ma(b,a){if(b){if(b.constructor===b)throw la("isecfn",a);if(b.window===b)throw la("isecwindow",a);if(b.children&&(b.nodeName||b.prop&&b.attr&&b.find))throw la("isecdom",a);if(b===Object)throw la("isecobj",a);}return b}function ec(b){return b.constant}function hb(b,a,c,d,e){ma(b,e);ma(a,e);c=c.split(".");for(var f,g=0;1h?ed(g[0],g[1],g[2],g[3],g[4],c,d):function(a,b){var e=0,f;do f=ed(g[e++],g[e++],g[e++],g[e++],g[e++],c,d)(a,b),b=t,a=f;while(e=this.promise.$$state.status&&d&&d.length&&b(function(){for(var b,e,f=0,g=d.length;fa)for(b in k++,f)e.hasOwnProperty(b)||(u--,delete f[b])}else f!==e&&(f=e,k++);return k}}c.$stateful=!0;var d=this,e,f,h,l=1s&&(y=4-s,W[y]||(W[y]=[]),W[y].push({msg:G(e.exp)?"fn: "+(e.exp.name||e.exp.toString()):e.exp,newVal:g,oldVal:l}));else if(e===c){v=!1;break a}}catch(B){f(B)}if(!(m=t.$$childHead||t!==this&&t.$$nextSibling))for(;t!==this&&!(m=t.$$nextSibling);)t=t.$parent}while(t=m);if((v||P.length)&&!s--)throw r.$$phase=null,a("infdig",b,W);}while(v||P.length); +for(r.$$phase=null;p.length;)try{p.shift()()}catch(da){f(da)}},$destroy:function(){if(!this.$$destroyed){var a=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;if(this!==r){for(var b in this.$$listenerCount)m(this,this.$$listenerCount[b],b);a.$$childHead==this&&(a.$$childHead=this.$$nextSibling);a.$$childTail==this&&(a.$$childTail=this.$$prevSibling);this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling);this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling); +this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=z;this.$on=this.$watch=this.$watchGroup=function(){return z};this.$$listeners={};this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=this.$root=this.$$watchers=null}}},$eval:function(a,b){return g(a)(this,b)},$evalAsync:function(a,b){r.$$phase||P.length||h.defer(function(){P.length&&r.$digest()});P.push({scope:this,expression:a,locals:b})},$$postDigest:function(a){p.push(a)},$apply:function(a){try{return k("$apply"), +this.$eval(a)}catch(b){f(b)}finally{r.$$phase=null;try{r.$digest()}catch(c){throw f(c),c;}}},$applyAsync:function(a){function b(){c.$eval(a)}var c=this;a&&v.push(b);u()},$on:function(a,b){var c=this.$$listeners[a];c||(this.$$listeners[a]=c=[]);c.push(b);var d=this;do d.$$listenerCount[a]||(d.$$listenerCount[a]=0),d.$$listenerCount[a]++;while(d=d.$parent);var e=this;return function(){var d=c.indexOf(b);-1!==d&&(c[d]=null,m(e,1,a))}},$emit:function(a,b){var c=[],d,e=this,g=!1,h={name:a,targetScope:e, +stopPropagation:function(){g=!0},preventDefault:function(){h.defaultPrevented=!0},defaultPrevented:!1},l=Ya([h],arguments,1),k,m;do{d=e.$$listeners[a]||c;h.currentScope=e;k=0;for(m=d.length;kRa)throw Ca("iequirks");var d=ra(na);d.isEnabled=function(){return b};d.trustAs=c.trustAs;d.getTrusted=c.getTrusted;d.valueOf=c.valueOf;b||(d.trustAs=d.getTrusted=function(a,b){return b},d.valueOf=pa);d.parseAs=function(b,c){var e=a(c);return e.literal&&e.constant?e:a(c,function(a){return d.getTrusted(b,a)})};var e=d.parseAs,f=d.getTrusted,g=d.trustAs;s(na,function(a,b){var c=Q(b);d[db("parse_as_"+c)]=function(b){return e(a, +b)};d[db("get_trusted_"+c)]=function(b){return f(a,b)};d[db("trust_as_"+c)]=function(b){return g(a,b)}});return d}]}function Ue(){this.$get=["$window","$document",function(b,a){var c={},d=ba((/android (\d+)/.exec(Q((b.navigator||{}).userAgent))||[])[1]),e=/Boxee/i.test((b.navigator||{}).userAgent),f=a[0]||{},g,h=/^(Moz|webkit|ms)(?=[A-Z])/,l=f.body&&f.body.style,k=!1,m=!1;if(l){for(var n in l)if(k=h.exec(n)){g=k[0];g=g.substr(0,1).toUpperCase()+g.substr(1);break}g||(g="WebkitOpacity"in l&&"webkit"); +k=!!("transition"in l||g+"Transition"in l);m=!!("animation"in l||g+"Animation"in l);!d||k&&m||(k=F(f.body.style.webkitTransition),m=F(f.body.style.webkitAnimation))}return{history:!(!b.history||!b.history.pushState||4>d||e),hasEvent:function(a){if("input"===a&&11>=Ra)return!1;if(B(c[a])){var b=f.createElement("div");c[a]="on"+a in b}return c[a]},csp:bb(),vendorPrefix:g,transitions:k,animations:m,android:d}}]}function We(){this.$get=["$templateCache","$http","$q",function(b,a,c){function d(e,f){d.totalPendingRequests++; +var g=a.defaults&&a.defaults.transformResponse;H(g)?g=g.filter(function(a){return a!==Yb}):g===Yb&&(g=null);return a.get(e,{cache:b,transformResponse:g}).finally(function(){d.totalPendingRequests--}).then(function(a){return a.data},function(a){if(!f)throw ja("tpload",e);return c.reject(a)})}d.totalPendingRequests=0;return d}]}function Xe(){this.$get=["$rootScope","$browser","$location",function(b,a,c){return{findBindings:function(a,b,c){a=a.getElementsByClassName("ng-binding");var g=[];s(a,function(a){var d= +ca.element(a).data("$binding");d&&s(d,function(d){c?(new RegExp("(^|\\s)"+gd(b)+"(\\s|\\||$)")).test(d)&&g.push(a):-1!=d.indexOf(b)&&g.push(a)})});return g},findModels:function(a,b,c){for(var g=["ng-","data-ng-","ng\\:"],h=0;hb;b=Math.abs(b);var g=b+"",h="",l=[],k=!1;if(-1!==g.indexOf("e")){var m=g.match(/([\d\.]+)e(-?)(\d+)/);m&&"-"==m[2]&&m[3]>e+1?b=0:(h=g,k=!0)}if(k)0b&&(h=b.toFixed(e),b=parseFloat(h));else{g=(g.split(od)[1]||"").length;B(e)&&(e=Math.min(Math.max(a.minFrac,g),a.maxFrac));b=+(Math.round(+(b.toString()+"e"+e)).toString()+"e"+-e);var g=(""+b).split(od),k=g[0],g=g[1]||"",n=0,q=a.lgSize,u=a.gSize;if(k.length>=q+u)for(n=k.length-q,m=0;mb&&(d="-",b=-b);for(b=""+b;b.length-c)e+=c;0===e&&-12==c&&(e=12);return Ib(e,a,d)}}function Jb(b,a){return function(c,d){var e=c["get"+b](),f=vb(a?"SHORT"+b:b);return d[f][e]}} +function pd(b){var a=(new Date(b,0,1)).getDay();return new Date(b,0,(4>=a?5:12)-a)}function qd(b){return function(a){var c=pd(a.getFullYear());a=+new Date(a.getFullYear(),a.getMonth(),a.getDate()+(4-a.getDay()))-+c;a=1+Math.round(a/6048E5);return Ib(a,b)}}function kd(b){function a(a){var b;if(b=a.match(c)){a=new Date(0);var f=0,g=0,h=b[8]?a.setUTCFullYear:a.setFullYear,l=b[8]?a.setUTCHours:a.setHours;b[9]&&(f=ba(b[9]+b[10]),g=ba(b[9]+b[11]));h.call(a,ba(b[1]),ba(b[2])-1,ba(b[3]));f=ba(b[4]||0)-f; +g=ba(b[5]||0)-g;h=ba(b[6]||0);b=Math.round(1E3*parseFloat("0."+(b[7]||0)));l.call(a,f,g,h,b)}return a}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c,e,f){var g="",h=[],l,k;e=e||"mediumDate";e=b.DATETIME_FORMATS[e]||e;F(c)&&(c=Jf.test(c)?ba(c):a(c));V(c)&&(c=new Date(c));if(!qa(c))return c;for(;e;)(k=Kf.exec(e))?(h=Ya(h,k,1),e=h.pop()):(h.push(e),e=null);f&&"UTC"===f&&(c=new Date(c.getTime()),c.setMinutes(c.getMinutes()+ +c.getTimezoneOffset()));s(h,function(a){l=Lf[a];g+=l?l(c,b.DATETIME_FORMATS):a.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function Ef(){return function(b,a){B(a)&&(a=2);return $a(b,a)}}function Ff(){return function(b,a){V(b)&&(b=b.toString());return H(b)||F(b)?(a=Infinity===Math.abs(Number(a))?Number(a):ba(a))?0b||37<=b&&40>=b||m(a,this,this.value)});if(e.hasEvent("paste"))a.on("paste cut",m)}a.on("change",l);d.$render=function(){a.val(d.$isEmpty(d.$viewValue)?"":d.$viewValue)}} +function Mb(b,a){return function(c,d){var e,f;if(qa(c))return c;if(F(c)){'"'==c.charAt(0)&&'"'==c.charAt(c.length-1)&&(c=c.substring(1,c.length-1));if(Mf.test(c))return new Date(c);b.lastIndex=0;if(e=b.exec(c))return e.shift(),f=d?{yyyy:d.getFullYear(),MM:d.getMonth()+1,dd:d.getDate(),HH:d.getHours(),mm:d.getMinutes(),ss:d.getSeconds(),sss:d.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},s(e,function(b,c){c=s};g.$observe("min",function(a){s=q(a);h.$validate()})}if(y(g.max)||g.ngMax){var p;h.$validators.max=function(a){return!n(a)||B(p)||c(a)<=p};g.$observe("max",function(a){p=q(a);h.$validate()})}}}function td(b,a,c,d){(d.$$hasNativeValidators=I(a[0].validity))&&d.$parsers.push(function(b){var c=a.prop("validity")||{}; +return c.badInput&&!c.typeMismatch?t:b})}function ud(b,a,c,d,e){if(y(d)){b=b(d);if(!b.constant)throw S("ngModel")("constexpr",c,d);return b(a)}return e}function ic(b,a){b="ngClass"+b;return["$animate",function(c){function d(a,b){var c=[],d=0;a:for(;d(?:<\/\1>|)$/,Sb=/<|&#?\w+;/,ef=/<([\w:]+)/,ff=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, +ia={option:[1,'"],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ia.optgroup=ia.option;ia.tbody=ia.tfoot=ia.colgroup=ia.caption=ia.thead;ia.th=ia.td;var La=R.prototype={ready:function(b){function a(){c||(c=!0,b())}var c=!1;"complete"===Y.readyState?setTimeout(a):(this.on("DOMContentLoaded",a),R(M).on("load",a))}, +toString:function(){var b=[];s(this,function(a){b.push(""+a)});return"["+b.join(", ")+"]"},eq:function(b){return 0<=b?D(this[b]):D(this[this.length+b])},length:0,push:Of,sort:[].sort,splice:[].splice},Fb={};s("multiple selected checked disabled readOnly required open".split(" "),function(b){Fb[Q(b)]=b});var Mc={};s("input select option textarea button form details".split(" "),function(b){Mc[b]=!0});var Nc={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"}; +s({data:Vb,removeData:yb},function(b,a){R[a]=b});s({data:Vb,inheritedData:Eb,scope:function(b){return D.data(b,"$scope")||Eb(b.parentNode||b,["$isolateScope","$scope"])},isolateScope:function(b){return D.data(b,"$isolateScope")||D.data(b,"$isolateScopeNoTemplate")},controller:Ic,injector:function(b){return Eb(b,"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:Bb,css:function(b,a,c){a=db(a);if(y(c))b.style[a]=c;else return b.style[a]},attr:function(b,a,c){var d=Q(a);if(Fb[d])if(y(c))c? +(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d));else return b[a]||(b.attributes.getNamedItem(a)||z).specified?d:t;else if(y(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,2),null===b?t:b},prop:function(b,a,c){if(y(c))b[a]=c;else return b[a]},text:function(){function b(a,b){if(B(b)){var d=a.nodeType;return d===oa||d===qb?a.textContent:""}a.textContent=b}b.$dv="";return b}(),val:function(b,a){if(B(a)){if(b.multiple&&"select"===ua(b)){var c=[];s(b.options,function(a){a.selected&& +c.push(a.value||a.text)});return 0===c.length?null:c}return b.value}b.value=a},html:function(b,a){if(B(a))return b.innerHTML;xb(b,!0);b.innerHTML=a},empty:Jc},function(b,a){R.prototype[a]=function(a,d){var e,f,g=this.length;if(b!==Jc&&(2==b.length&&b!==Bb&&b!==Ic?a:d)===t){if(I(a)){for(e=0;e":function(a,c,d,e){return d(a,c)>e(a,c)},"<=":function(a,c,d,e){return d(a,c)<=e(a,c)},">=":function(a, +c,d,e){return d(a,c)>=e(a,c)},"&&":function(a,c,d,e){return d(a,c)&&e(a,c)},"||":function(a,c,d,e){return d(a,c)||e(a,c)},"!":function(a,c,d){return!d(a,c)},"=":!0,"|":!0}),Yf={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},gc=function(a){this.options=a};gc.prototype={constructor:gc,lex:function(a){this.text=a;this.index=0;for(this.tokens=[];this.index=a&&"string"===typeof a},isWhitespace:function(a){return" "===a||"\r"===a||"\t"===a||"\n"===a||"\v"===a||"\u00a0"===a},isIdent:function(a){return"a"<=a&&"z">=a||"A"<=a&&"Z">=a||"_"===a||"$"===a},isExpOperator:function(a){return"-"===a||"+"===a||this.isNumber(a)},throwError:function(a,c,d){d=d||this.index;c=y(c)?"s "+c+"-"+this.index+" ["+this.text.substring(c,d)+"]":" "+d;throw la("lexerr",a,c,this.text); +},readNumber:function(){for(var a="",c=this.index;this.indexa){a=this.tokens[a];var g=a.text;if(g===c||g===d||g===e||g=== +f||!(c||d||e||f))return a}return!1},expect:function(a,c,d,e){return(a=this.peek(a,c,d,e))?(this.tokens.shift(),a):!1},consume:function(a){if(0===this.tokens.length)throw la("ueoe",this.text);var c=this.expect(a);c||this.throwError("is unexpected, expecting ["+a+"]",this.peek());return c},unaryFn:function(a,c){var d=nb[a];return x(function(a,f){return d(a,f,c)},{constant:c.constant,inputs:[c]})},binaryFn:function(a,c,d,e){var f=nb[c];return x(function(c,e){return f(c,e,a,d)},{constant:a.constant&& +d.constant,inputs:!e&&[a,d]})},identifier:function(){for(var a=this.consume().text;this.peek(".")&&this.peekAhead(1).identifier&&!this.peekAhead(2,"(");)a+=this.consume().text+this.consume().text;return yf(a,this.options,this.text)},constant:function(){var a=this.consume().value;return x(function(){return a},{constant:!0,literal:!0})},statements:function(){for(var a=[];;)if(0","<=",">=");)a=this.binaryFn(a,c.text, +this.additive());return a},additive:function(){for(var a=this.multiplicative(),c;c=this.expect("+","-");)a=this.binaryFn(a,c.text,this.multiplicative());return a},multiplicative:function(){for(var a=this.unary(),c;c=this.expect("*","/","%");)a=this.binaryFn(a,c.text,this.unary());return a},unary:function(){var a;return this.expect("+")?this.primary():(a=this.expect("-"))?this.binaryFn(ib.ZERO,a.text,this.unary()):(a=this.expect("!"))?this.unaryFn(a.text,this.unary()):this.primary()},fieldAccess:function(a){var c= +this.identifier();return x(function(d,e,f){d=f||a(d,e);return null==d?t:c(d)},{assign:function(d,e,f){var g=a(d,f);g||a.assign(d,g={},f);return c.assign(g,e)}})},objectIndex:function(a){var c=this.text,d=this.expression();this.consume("]");return x(function(e,f){var g=a(e,f),h=d(e,f);ta(h,c);return g?ma(g[h],c):t},{assign:function(e,f,g){var h=ta(d(e,g),c),l=ma(a(e,g),c);l||a.assign(e,l={},g);return l[h]=f}})},functionCall:function(a,c){var d=[];if(")"!==this.peekToken().text){do d.push(this.expression()); +while(this.expect(","))}this.consume(")");var e=this.text,f=d.length?[]:null;return function(g,h){var l=c?c(g,h):y(c)?t:g,k=a(g,h,l)||z;if(f)for(var m=d.length;m--;)f[m]=ma(d[m](g,h),e);ma(l,e);if(k){if(k.constructor===k)throw la("isecfn",e);if(k===Vf||k===Wf||k===Xf)throw la("isecff",e);}l=k.apply?k.apply(l,f):k(f[0],f[1],f[2],f[3],f[4]);f&&(f.length=0);return ma(l,e)}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;a.push(this.expression())}while(this.expect(",")) +}this.consume("]");return x(function(c,d){for(var e=[],f=0,g=a.length;fa.getHours()?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){a=-1*a.getTimezoneOffset();return a=(0<=a?"+":"")+(Ib(Math[0=h};d.$observe("min",function(a){y(a)&&!V(a)&&(a=parseFloat(a,10));h=V(a)&&!isNaN(a)?a:t;e.$validate()})}if(d.max|| +d.ngMax){var l;e.$validators.max=function(a){return e.$isEmpty(a)||B(l)||a<=l};d.$observe("max",function(a){y(a)&&!V(a)&&(a=parseFloat(a,10));l=V(a)&&!isNaN(a)?a:t;e.$validate()})}},url:function(a,c,d,e,f,g){jb(a,c,d,e,f,g);hc(e);e.$$parserName="url";e.$validators.url=function(a,c){var d=a||c;return e.$isEmpty(d)||Zf.test(d)}},email:function(a,c,d,e,f,g){jb(a,c,d,e,f,g);hc(e);e.$$parserName="email";e.$validators.email=function(a,c){var d=a||c;return e.$isEmpty(d)||$f.test(d)}},radio:function(a,c, +d,e){B(d.name)&&c.attr("name",++ob);c.on("click",function(a){c[0].checked&&e.$setViewValue(d.value,a&&a.type)});e.$render=function(){c[0].checked=d.value==e.$viewValue};d.$observe("value",e.$render)},checkbox:function(a,c,d,e,f,g,h,l){var k=ud(l,a,"ngTrueValue",d.ngTrueValue,!0),m=ud(l,a,"ngFalseValue",d.ngFalseValue,!1);c.on("click",function(a){e.$setViewValue(c[0].checked,a&&a.type)});e.$render=function(){c[0].checked=e.$viewValue};e.$isEmpty=function(a){return!1===a};e.$formatters.push(function(a){return ga(a, +k)});e.$parsers.push(function(a){return a?k:m})},hidden:z,button:z,submit:z,reset:z,file:z},xc=["$browser","$sniffer","$filter","$parse",function(a,c,d,e){return{restrict:"E",require:["?ngModel"],link:{pre:function(f,g,h,l){l[0]&&(Dd[Q(h.type)]||Dd.text)(f,g,h,l[0],c,a,d,e)}}}}],bg=/^(true|false|\d+)$/,ye=function(){return{restrict:"A",priority:100,compile:function(a,c){return bg.test(c.ngValue)?function(a,c,f){f.$set("value",a.$eval(f.ngValue))}:function(a,c,f){a.$watch(f.ngValue,function(a){f.$set("value", +a)})}}}},Zd=["$compile",function(a){return{restrict:"AC",compile:function(c){a.$$addBindingClass(c);return function(c,e,f){a.$$addBindingInfo(e,f.ngBind);e=e[0];c.$watch(f.ngBind,function(a){e.textContent=a===t?"":a})}}}}],ae=["$interpolate","$compile",function(a,c){return{compile:function(d){c.$$addBindingClass(d);return function(d,f,g){d=a(f.attr(g.$attr.ngBindTemplate));c.$$addBindingInfo(f,d.expressions);f=f[0];g.$observe("ngBindTemplate",function(a){f.textContent=a===t?"":a})}}}}],$d=["$sce", +"$parse","$compile",function(a,c,d){return{restrict:"A",compile:function(e,f){var g=c(f.ngBindHtml),h=c(f.ngBindHtml,function(a){return(a||"").toString()});d.$$addBindingClass(e);return function(c,e,f){d.$$addBindingInfo(e,f.ngBindHtml);c.$watch(h,function(){e.html(a.getTrustedHtml(g(c))||"")})}}}}],xe=ea({restrict:"A",require:"ngModel",link:function(a,c,d,e){e.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),be=ic("",!0),de=ic("Odd",0),ce=ic("Even",1),ee=Ja({compile:function(a,c){c.$set("ngCloak", +t);a.removeClass("ng-cloak")}}),fe=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Cc={},cg={blur:!0,focus:!0};s("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(a){var c=ya("ng-"+a);Cc[c]=["$parse","$rootScope",function(d,e){return{restrict:"A",compile:function(f,g){var h=d(g[c],null,!0);return function(c,d){d.on(a,function(d){var f=function(){h(c,{$event:d})}; +cg[a]&&e.$$phase?c.$evalAsync(f):c.$apply(f)})}}}}]});var ie=["$animate",function(a){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(c,d,e,f,g){var h,l,k;c.$watch(e.ngIf,function(c){c?l||g(function(c,f){l=f;c[c.length++]=Y.createComment(" end ngIf: "+e.ngIf+" ");h={clone:c};a.enter(c,d.parent(),d)}):(k&&(k.remove(),k=null),l&&(l.$destroy(),l=null),h&&(k=ub(h.clone),a.leave(k).then(function(){k=null}),h=null))})}}}],je=["$templateRequest","$anchorScroll", +"$animate","$sce",function(a,c,d,e){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:ca.noop,compile:function(f,g){var h=g.ngInclude||g.src,l=g.onload||"",k=g.autoscroll;return function(f,g,q,s,r){var t=0,p,v,w,L=function(){v&&(v.remove(),v=null);p&&(p.$destroy(),p=null);w&&(d.leave(w).then(function(){v=null}),v=w,w=null)};f.$watch(e.parseAsResourceUrl(h),function(e){var h=function(){!y(k)||k&&!f.$eval(k)||c()},q=++t;e?(a(e,!0).then(function(a){if(q===t){var c=f.$new(); +s.template=a;a=r(c,function(a){L();d.enter(a,null,g).then(h)});p=c;w=a;p.$emit("$includeContentLoaded",e);f.$eval(l)}},function(){q===t&&(L(),f.$emit("$includeContentError",e))}),f.$emit("$includeContentRequested",e)):(L(),s.template=null)})}}}}],Ae=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(c,d,e,f){/SVG/.test(d[0].toString())?(d.empty(),a(Fc(f.template,Y).childNodes)(c,function(a){d.append(a)},{futureParentElement:d})):(d.html(f.template),a(d.contents())(c))}}}], +ke=Ja({priority:450,compile:function(){return{pre:function(a,c,d){a.$eval(d.ngInit)}}}}),we=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,c,d,e){var f=c.attr(d.$attr.ngList)||", ",g="false"!==d.ngTrim,h=g?U(f):f;e.$parsers.push(function(a){if(!B(a)){var c=[];a&&s(a.split(h),function(a){a&&c.push(g?U(a):a)});return c}});e.$formatters.push(function(a){return H(a)?a.join(f):t});e.$isEmpty=function(a){return!a||!a.length}}}},lb="ng-valid",vd="ng-invalid",Sa="ng-pristine", +Lb="ng-dirty",xd="ng-pending",Nb=new S("ngModel"),dg=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(a,c,d,e,f,g,h,l,k,m){this.$modelValue=this.$viewValue=Number.NaN;this.$$rawModelValue=t;this.$validators={};this.$asyncValidators={};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success= +{};this.$pending=t;this.$name=m(d.name||"",!1)(a);var n=f(d.ngModel),q=n.assign,u=n,r=q,P=null,p=this;this.$$setOptions=function(a){if((p.$options=a)&&a.getterSetter){var c=f(d.ngModel+"()"),g=f(d.ngModel+"($$$p)");u=function(a){var d=n(a);G(d)&&(d=c(a));return d};r=function(a,c){G(n(a))?g(a,{$$$p:p.$modelValue}):q(a,p.$modelValue)}}else if(!n.assign)throw Nb("nonassign",d.ngModel,va(e));};this.$render=z;this.$isEmpty=function(a){return B(a)||""===a||null===a||a!==a};var v=e.inheritedData("$formController")|| +Kb,w=0;sd({ctrl:this,$element:e,set:function(a,c){a[c]=!0},unset:function(a,c){delete a[c]},parentForm:v,$animate:g});this.$setPristine=function(){p.$dirty=!1;p.$pristine=!0;g.removeClass(e,Lb);g.addClass(e,Sa)};this.$setDirty=function(){p.$dirty=!0;p.$pristine=!1;g.removeClass(e,Sa);g.addClass(e,Lb);v.$setDirty()};this.$setUntouched=function(){p.$touched=!1;p.$untouched=!0;g.setClass(e,"ng-untouched","ng-touched")};this.$setTouched=function(){p.$touched=!0;p.$untouched=!1;g.setClass(e,"ng-touched", +"ng-untouched")};this.$rollbackViewValue=function(){h.cancel(P);p.$viewValue=p.$$lastCommittedViewValue;p.$render()};this.$validate=function(){if(!V(p.$modelValue)||!isNaN(p.$modelValue)){var a=p.$$rawModelValue,c=p.$valid,d=p.$modelValue,e=p.$options&&p.$options.allowInvalid;p.$$runValidators(p.$error[p.$$parserName||"parse"]?!1:t,a,p.$$lastCommittedViewValue,function(f){e||c===f||(p.$modelValue=f?a:t,p.$modelValue!==d&&p.$$writeModelToScope())})}};this.$$runValidators=function(a,c,d,e){function f(){var a= +!0;s(p.$validators,function(e,f){var g=e(c,d);a=a&&g;h(f,g)});return a?!0:(s(p.$asyncValidators,function(a,c){h(c,null)}),!1)}function g(){var a=[],e=!0;s(p.$asyncValidators,function(f,g){var l=f(c,d);if(!l||!G(l.then))throw Nb("$asyncValidators",l);h(g,t);a.push(l.then(function(){h(g,!0)},function(a){e=!1;h(g,!1)}))});a.length?k.all(a).then(function(){l(e)},z):l(!0)}function h(a,c){m===w&&p.$setValidity(a,c)}function l(a){m===w&&e(a)}w++;var m=w;(function(a){var c=p.$$parserName||"parse";if(a=== +t)h(c,null);else if(h(c,a),!a)return s(p.$validators,function(a,c){h(c,null)}),s(p.$asyncValidators,function(a,c){h(c,null)}),!1;return!0})(a)?f()?g():l(!1):l(!1)};this.$commitViewValue=function(){var a=p.$viewValue;h.cancel(P);if(p.$$lastCommittedViewValue!==a||""===a&&p.$$hasNativeValidators)p.$$lastCommittedViewValue=a,p.$pristine&&this.$setDirty(),this.$$parseAndValidate()};this.$$parseAndValidate=function(){var c=p.$$lastCommittedViewValue,d=B(c)?t:!0;if(d)for(var e=0;eF;)d=r.pop(),m(N,d.label,!1),d.element.remove()}for(;R.length> +x;){l=R.pop();for(F=1;Fa&&q.removeOption(c)})}var n;if(!(n=r.match(d)))throw fg("iexp",r,va(f));var C=c(n[2]||n[1]),x=n[4]||n[6],A=/ as /.test(n[0])&&n[1],B=A?c(A):null,D=n[5],I=c(n[3]||""),F=c(n[2]?n[1]:x),O=c(n[7]),M=n[8]?c(n[8]):null,Q={},R=[[{element:f,label:""}]],S={};z&&(a(z)(e),z.removeClass("ng-scope"),z.remove());f.empty();f.on("change",function(){e.$apply(function(){var a=O(e)||[],c;if(u)c=[],s(f.val(), +function(d){d=M?Q[d]:d;c.push("?"===d?t:""===d?null:h(B?B:F,d,a[d]))});else{var d=M?Q[f.val()]:f.val();c="?"===d?t:""===d?null:h(B?B:F,d,a[d])}g.$setViewValue(c);p()})});g.$render=p;e.$watchCollection(O,l);e.$watchCollection(function(){var a=O(e),c;if(a&&H(a)){c=Array(a.length);for(var d=0,f=a.length;df||e.$isEmpty(c)||c.length<=f}}}}},Ac=function(){return{restrict:"A",require:"?ngModel",link:function(a,c,d,e){if(e){var f=0;d.$observe("minlength",function(a){f=ba(a)||0;e.$validate()});e.$validators.minlength=function(a,c){return e.$isEmpty(c)||c.length>=f}}}}};M.angular.bootstrap?console.log("WARNING: Tried to load angular more than once."):(Nd(),Pd(ca),D(Y).ready(function(){Jd(Y,sc)}))})(window,document);!window.angular.$$csp()&&window.angular.element(document).find("head").prepend(''); //# sourceMappingURL=angular.min.js.map diff --git a/public/app/bower_components/angular/angular.min.js.gzip b/public/app/bower_components/angular/angular.min.js.gzip index d5095e7b..09b46010 100644 Binary files a/public/app/bower_components/angular/angular.min.js.gzip and b/public/app/bower_components/angular/angular.min.js.gzip differ diff --git a/public/app/bower_components/angular/angular.min.js.map b/public/app/bower_components/angular/angular.min.js.map index 268672d4..45a9dba7 100644 --- a/public/app/bower_components/angular/angular.min.js.map +++ b/public/app/bower_components/angular/angular.min.js.map @@ -1,8 +1,8 @@ { "version":3, "file":"angular.min.js", -"lineCount":246, -"mappings":"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", +"lineCount":249, +"mappings":"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", "sources":["angular.js"], -"names":["window","document","undefined","minErr","isArrayLike","obj","isWindow","length","nodeType","NODE_TYPE_ELEMENT","isString","isArray","forEach","iterator","context","key","isFunction","hasOwnProperty","call","isPrimitive","forEachSorted","keys","Object","sort","i","reverseParams","iteratorFn","value","nextUid","uid","setHashKey","h","$$hashKey","extend","dst","ii","arguments","j","jj","int","str","parseInt","inherit","parent","extra","prototype","noop","identity","$","valueFn","isUndefined","isDefined","isObject","isNumber","isDate","toString","isRegExp","isScope","$evalAsync","$watch","isBoolean","isElement","node","nodeName","prop","attr","find","makeMap","items","split","nodeName_","element","lowercase","arrayRemove","array","index","indexOf","splice","copy","source","destination","stackSource","stackDest","ngMinErr","push","result","Date","getTime","RegExp","match","lastIndex","emptyObject","create","getPrototypeOf","shallowCopy","src","charAt","equals","o1","o2","t1","t2","keySet","concat","array1","array2","slice","bind","self","fn","curryArgs","startIndex","apply","toJsonReplacer","val","toJson","pretty","JSON","stringify","fromJson","json","parse","startingTag","jqLite","clone","empty","e","elemHtml","append","html","NODE_TYPE_TEXT","replace","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","key_value","toKeyValue","parts","arrayValue","encodeUriQuery","join","encodeUriSegment","pctEncodeSpaces","encodeURIComponent","getNgAttribute","ngAttr","ngAttrPrefixes","angularInit","bootstrap","appElement","module","config","prefix","name","hasAttribute","getAttribute","candidate","querySelector","strictDi","modules","defaultConfig","doBootstrap","injector","tag","unshift","$provide","debugInfoEnabled","$compileProvider","createInjector","invoke","bootstrapApply","scope","compile","$apply","data","NG_ENABLE_DEBUG_INFO","NG_DEFER_BOOTSTRAP","test","angular","resumeBootstrap","angular.resumeBootstrap","extraModules","reloadWithDebugInfo","location","reload","getTestability","rootElement","get","snake_case","separator","SNAKE_CASE_REGEXP","letter","pos","toLowerCase","bindJQuery","originalCleanData","bindJQueryFired","jQuery","on","JQLitePrototype","isolateScope","controller","inheritedData","cleanData","jQuery.cleanData","elems","events","skipDestroyOnNextJQueryCleanData","elem","_data","$destroy","triggerHandler","JQLite","assertArg","arg","reason","assertArgFn","acceptArrayAnnotation","constructor","assertNotHasOwnProperty","getter","path","bindFnToScope","lastInstance","len","getBlockNodes","nodes","endNode","blockNodes","nextSibling","createMap","setupModuleLoader","ensure","factory","$injectorMinErr","$$minErr","requires","configFn","invokeLater","provider","method","insertMethod","queue","invokeQueue","moduleInstance","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","animation","filter","directive","run","block","publishExternalAPI","version","uppercase","counter","csp","angularModule","$LocaleProvider","ngModule","$$sanitizeUri","$$SanitizeUriProvider","$CompileProvider","a","htmlAnchorDirective","input","inputDirective","textarea","form","formDirective","script","scriptDirective","select","selectDirective","style","styleDirective","option","optionDirective","ngBind","ngBindDirective","ngBindHtml","ngBindHtmlDirective","ngBindTemplate","ngBindTemplateDirective","ngClass","ngClassDirective","ngClassEven","ngClassEvenDirective","ngClassOdd","ngClassOddDirective","ngCloak","ngCloakDirective","ngController","ngControllerDirective","ngForm","ngFormDirective","ngHide","ngHideDirective","ngIf","ngIfDirective","ngInclude","ngIncludeDirective","ngInit","ngInitDirective","ngNonBindable","ngNonBindableDirective","ngPluralize","ngPluralizeDirective","ngRepeat","ngRepeatDirective","ngShow","ngShowDirective","ngStyle","ngStyleDirective","ngSwitch","ngSwitchDirective","ngSwitchWhen","ngSwitchWhenDirective","ngSwitchDefault","ngSwitchDefaultDirective","ngOptions","ngOptionsDirective","ngTransclude","ngTranscludeDirective","ngModel","ngModelDirective","ngList","ngListDirective","ngChange","ngChangeDirective","pattern","patternDirective","ngPattern","required","requiredDirective","ngRequired","minlength","minlengthDirective","ngMinlength","maxlength","maxlengthDirective","ngMaxlength","ngValue","ngValueDirective","ngModelOptions","ngModelOptionsDirective","ngIncludeFillContentDirective","ngAttributeAliasDirectives","ngEventDirectives","$anchorScroll","$AnchorScrollProvider","$animate","$AnimateProvider","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$http","$HttpProvider","$httpBackend","$HttpBackendProvider","$location","$LocationProvider","$log","$LogProvider","$parse","$ParseProvider","$rootScope","$RootScopeProvider","$q","$QProvider","$$q","$$QProvider","$sce","$SceProvider","$sceDelegate","$SceDelegateProvider","$sniffer","$SnifferProvider","$templateCache","$TemplateCacheProvider","$templateRequest","$TemplateRequestProvider","$$testability","$$TestabilityProvider","$timeout","$TimeoutProvider","$window","$WindowProvider","$$rAF","$$RAFProvider","$$asyncCallback","$$AsyncCallbackProvider","camelCase","SPECIAL_CHARS_REGEXP","_","offset","toUpperCase","MOZ_HACK_REGEXP","jqLiteAcceptsData","NODE_TYPE_DOCUMENT","jqLiteBuildFragment","tmp","fragment","createDocumentFragment","HTML_REGEXP","appendChild","createElement","TAG_NAME_REGEXP","exec","wrap","wrapMap","_default","innerHTML","XHTML_TAG_REGEXP","lastChild","childNodes","firstChild","textContent","createTextNode","argIsString","trim","jqLiteMinErr","parsed","SINGLE_TAG_REGEXP","jqLiteAddNodes","jqLiteClone","cloneNode","jqLiteDealoc","onlyDescendants","jqLiteRemoveData","querySelectorAll","descendants","l","jqLiteOff","type","unsupported","expandoStore","jqLiteExpandoStore","handle","listenerFns","removeEventListener","expandoId","ng339","jqCache","createIfNecessary","jqId","jqLiteData","isSimpleSetter","isSimpleGetter","massGetter","jqLiteHasClass","selector","jqLiteRemoveClass","cssClasses","setAttribute","cssClass","jqLiteAddClass","existingClasses","root","elements","jqLiteController","jqLiteInheritedData","documentElement","names","parentNode","NODE_TYPE_DOCUMENT_FRAGMENT","host","jqLiteEmpty","removeChild","jqLiteRemove","keepData","jqLiteDocumentLoaded","action","win","readyState","setTimeout","getBooleanAttrName","booleanAttr","BOOLEAN_ATTR","BOOLEAN_ELEMENTS","getAliasedAttrName","ALIASED_ATTR","createEventHandler","eventHandler","event","isDefaultPrevented","event.isDefaultPrevented","defaultPrevented","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","stopImmediatePropagation","event.stopImmediatePropagation","stopPropagation","isImmediatePropagationStopped","event.isImmediatePropagationStopped","hashKey","nextUidFn","objType","HashMap","isolatedUid","this.nextUid","put","anonFn","args","fnText","STRIP_COMMENTS","FN_ARGS","annotate","$inject","argDecl","FN_ARG_SPLIT","FN_ARG","all","underscore","last","modulesToLoad","supportObject","delegate","provider_","providerInjector","instantiate","$get","providerCache","providerSuffix","enforceReturnValue","enforcedReturnValue","instanceInjector","factoryFn","enforce","loadModules","moduleFn","runInvokeQueue","invokeArgs","loadedModules","message","stack","createInternalInjector","cache","getService","serviceName","INSTANTIATING","err","shift","locals","Type","Constructor","instance","returnedValue","has","$injector","instanceCache","decorator","decorFn","origProvider","orig$get","origProvider.$get","origInstance","$delegate","servicename","autoScrollingEnabled","disableAutoScrolling","this.disableAutoScrolling","getFirstAnchor","list","Array","some","scrollTo","scrollIntoView","scroll","yOffset","getComputedStyle","position","getBoundingClientRect","bottom","elemTop","top","scrollBy","hash","elm","getElementById","getElementsByName","autoScrollWatch","autoScrollWatchAction","newVal","oldVal","supported","Browser","completeOutstandingRequest","outstandingRequestCount","outstandingRequestCallbacks","pop","error","startPoller","interval","check","pollFns","pollFn","pollTimeout","cacheStateAndFireUrlChange","cacheState","fireUrlChange","cachedState","history","state","lastCachedState","lastBrowserUrl","url","lastHistoryState","urlChangeListeners","listener","safeDecodeURIComponent","rawDocument","clearTimeout","pendingDeferIds","isMock","$$completeOutstandingRequest","$$incOutstandingRequestCount","self.$$incOutstandingRequestCount","notifyWhenNoOutstandingRequests","self.notifyWhenNoOutstandingRequests","callback","addPollFn","self.addPollFn","href","baseElement","reloadLocation","self.url","sameState","sameBase","stripHash","self.state","urlChangeInit","onUrlChange","self.onUrlChange","$$checkUrlChange","baseHref","self.baseHref","lastCookies","lastCookieString","cookiePath","cookies","self.cookies","cookieLength","cookie","warn","cookieArray","substring","defer","self.defer","delay","timeoutId","cancel","self.defer.cancel","deferId","this.$get","cacheFactory","cacheId","options","refresh","entry","freshEnd","staleEnd","n","link","p","nextEntry","prevEntry","caches","size","stats","id","capacity","Number","MAX_VALUE","lruHash","lruEntry","remove","removeAll","destroy","info","cacheFactory.info","cacheFactory.get","$$sanitizeUriProvider","parseIsolateBindings","directiveName","LOCAL_REGEXP","bindings","definition","scopeName","$compileMinErr","mode","collection","optional","attrName","hasDirectives","COMMENT_DIRECTIVE_REGEXP","CLASS_DIRECTIVE_REGEXP","ALL_OR_NOTHING_ATTRS","REQUIRE_PREFIX_REGEXP","EVENT_HANDLER_ATTR_REGEXP","this.directive","registerDirective","directiveFactory","Suffix","directives","priority","require","restrict","$$isolateBindings","aHrefSanitizationWhitelist","this.aHrefSanitizationWhitelist","regexp","imgSrcSanitizationWhitelist","this.imgSrcSanitizationWhitelist","this.debugInfoEnabled","enabled","safeAddClass","$element","className","addClass","$compileNodes","transcludeFn","maxPriority","ignoreDirective","previousCompileContext","nodeValue","compositeLinkFn","compileNodes","$$addScopeClass","namespace","publicLinkFn","cloneConnectFn","transcludeControllers","parentBoundTranscludeFn","futureParentElement","$linkNode","wrapTemplate","controllerName","$$addScopeInfo","nodeList","$rootElement","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","linkFns","idx","nodeLinkFn","$new","transcludeOnThisElement","createBoundTranscludeFn","transclude","elementTranscludeOnThisElement","templateOnThisElement","attrs","linkFnFound","Attributes","collectDirectives","applyDirectivesToNode","$$element","terminal","previousBoundTranscludeFn","elementTransclusion","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","attrsMap","$attr","addDirective","directiveNormalize","nName","isNgAttr","nAttrs","attributes","attrStartName","attrEndName","ngAttrName","NG_ATTR_BINDING","substr","directiveNName","multiElement","addAttrInterpolateDirective","addTextInterpolateDirective","NODE_TYPE_COMMENT","byPriority","groupScan","attrStart","attrEnd","depth","groupElementsLinkFnWrapper","linkFn","compileNode","templateAttrs","jqCollection","originalReplaceDirective","preLinkFns","postLinkFns","addLinkFns","pre","post","newIsolateScopeDirective","$$isolateScope","cloneAndAnnotateFn","getControllers","elementControllers","retrievalMethod","$searchElement","linkNode","controllersBoundTransclude","cloneAttachFn","hasElementTranscludeDirective","scopeToChild","controllerDirectives","$scope","$attrs","$transclude","controllerInstance","controllerAs","templateDirective","$$originalDirective","isolateScopeController","isolateBindingContext","identifier","bindToController","lastValue","parentGet","parentSet","compare","$observe","$$observers","$$scope","literal","b","assign","parentValueWatch","parentValue","$stateful","unwatch","$watchCollection","$on","invokeLinkFn","template","templateUrl","terminalPriority","newScopeDirective","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","$template","childTranscludeFn","$$start","$$end","directiveValue","assertNoDuplicate","$$tlb","createComment","replaceWith","replaceDirective","contents","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectivesAsIsolate","mergeTemplateAttributes","compileTemplateUrl","Math","max","tDirectives","startAttrName","endAttrName","srcAttr","dstAttr","$set","tAttrs","linkQueue","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","getTrustedResourceUrl","then","content","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","delayedNodeLinkFn","ignoreChildLinkFn","diff","what","previousDirective","text","interpolateFn","textInterpolateCompileFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","textInterpolateLinkFn","$$addBindingInfo","expressions","interpolateFnWatchAction","wrapper","getTrustedContext","attrNormalizedName","HTML","RESOURCE_URL","allOrNothing","attrInterpolatePreLinkFn","$$inter","newValue","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","replaceChild","expando","k","kk","annotation","attributesToCopy","$normalize","$addClass","classVal","$removeClass","removeClass","newClasses","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","observer","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","floor","innerIdx","lastTuple","removeAttr","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","dataName","PREFIX_REGEXP","str1","str2","values","tokens1","tokens2","token","jqNodes","globals","CNTRL_REG","register","this.register","allowGlobals","this.allowGlobals","addIdentifier","expression","later","ident","exception","cause","defaultHttpResponseTransform","headers","JSON_PROTECTION_PREFIX","contentType","APPLICATION_JSON","JSON_START","JSON_END","parseHeaders","line","headersGetter","headersObj","transformData","fns","defaults","transformResponse","transformRequest","d","common","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","useApplyAsync","this.useApplyAsync","interceptorFactories","interceptors","requestConfig","response","resp","status","reject","mergeHeaders","defHeaders","reqHeaders","defHeaderName","reqHeaderName","lowercaseDefHeaderName","execHeaders","headerContent","headerFn","header","chain","serverRequest","reqData","withCredentials","sendReq","promise","when","reversedInterceptors","interceptor","request","requestError","responseError","thenFn","rejectFn","success","promise.success","promise.error","done","headersString","statusText","resolveHttpPromise","resolvePromise","$applyAsync","$$phase","deferred","resolve","removePendingReq","pendingRequests","cachedResp","buildUrl","params","defaultCache","xsrfValue","urlIsSameOrigin","timeout","responseType","v","toISOString","interceptorFactory","createShortMethods","createShortMethodsWithData","createXhr","XMLHttpRequest","createHttpBackend","callbacks","$browserDefer","jsonpReq","callbackId","async","body","called","addEventListener","timeoutRequest","jsonpDone","xhr","abort","completeRequest","open","setRequestHeader","onload","xhr.onload","responseText","urlResolve","protocol","getAllResponseHeaders","onerror","onabort","send","this.startSymbol","this.endSymbol","escape","ch","mustHaveExpression","trustedContext","unescapeText","escapedStartRegexp","escapedEndRegexp","parseStringifyInterceptor","getTrusted","valueOf","newErr","$interpolateMinErr","endIndex","parseFns","textLength","expressionPositions","startSymbolLength","exp","endSymbolLength","compute","interpolationFn","$$watchDelegate","objectEquality","$watchGroup","interpolateFnWatcher","oldValues","currValue","$interpolate.startSymbol","$interpolate.endSymbol","count","invokeApply","setInterval","clearInterval","iteration","skipApply","$$intervalId","tick","notify","intervals","interval.cancel","NUMBER_FORMATS","DECIMAL_SEP","GROUP_SEP","PATTERNS","minInt","minFrac","maxFrac","posPre","posSuf","negPre","negSuf","gSize","lgSize","CURRENCY_SYM","DATETIME_FORMATS","MONTH","SHORTMONTH","DAY","SHORTDAY","AMPMS","medium","fullDate","longDate","mediumDate","shortDate","mediumTime","shortTime","pluralCat","num","encodePath","segments","parseAbsoluteUrl","absoluteUrl","locationObj","appBase","parsedUrl","$$protocol","$$host","hostname","$$port","port","DEFAULT_PORTS","parseAppUrl","relativeUrl","prefixed","$$path","pathname","$$search","search","$$hash","beginsWith","begin","whole","stripFile","lastIndexOf","LocationHtml5Url","basePrefix","$$html5","appBaseNoFile","$$parse","this.$$parse","pathUrl","$locationMinErr","$$compose","this.$$compose","$$url","$$absUrl","$$parseLinkUrl","this.$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","withoutBaseUrl","withoutHashUrl","windowsFilePathExp","firstPathSegmentMatch","LocationHashbangInHtml5Url","locationGetter","property","locationGetterSetter","preprocess","html5Mode","requireBase","rewriteLinks","this.hashPrefix","this.html5Mode","setBrowserUrlWithFallback","oldUrl","oldState","$$state","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","IGNORE_URI_REGEXP","ctrlKey","metaKey","which","target","absHref","animVal","preventDefault","initializing","newUrl","newState","$digest","$locationWatch","currentReplace","$$replace","urlOrStateChanged","debug","debugEnabled","this.debugEnabled","flag","formatError","Error","sourceURL","consoleLog","console","logFn","log","hasApply","arg1","arg2","ensureSafeMemberName","fullExpression","$parseMinErr","ensureSafeObject","children","isConstant","setter","setValue","fullExp","propertyObj","cspSafeGetterFn","key0","key1","key2","key3","key4","cspSafeGetter","pathVal","getterFn","getterFnCache","pathKeys","pathKeysLength","code","evaledFnGetter","Function","sharedGetter","fn.assign","getValueOf","objectValueOf","$parseOptions","wrapSharedExpression","wrapped","collectExpressionInputs","inputs","expressionInputDirtyCheck","oldValueOfValue","inputsWatchDelegate","parsedExpression","inputExpressions","$$inputs","lastResult","oldInputValue","expressionInputWatch","newInputValue","oldInputValueOfValues","expressionInputsWatch","changed","oneTimeWatchDelegate","oneTimeWatch","oneTimeListener","old","$$postDigest","oneTimeLiteralWatchDelegate","isAllDefined","allDefined","constantWatchDelegate","constantWatch","constantListener","addInterceptor","interceptorFn","oneTime","cacheKey","lexer","Lexer","parser","Parser","qFactory","nextTick","exceptionHandler","callOnce","resolveFn","Promise","simpleBind","scheduleProcessQueue","processScheduled","pending","Deferred","$qMinErr","TypeError","onFulfilled","onRejected","progressBack","catch","finally","handleCallback","$$reject","$$resolve","progress","makePromise","resolved","isResolved","callbackOutput","errback","$Q","Q","resolver","promises","results","requestAnimationFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","webkitCancelRequestAnimationFrame","rafSupported","raf","timer","TTL","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","this.digestTtl","Scope","$id","$parent","$$watchers","$$nextSibling","$$prevSibling","$$childHead","$$childTail","$root","$$listeners","$$listenerCount","beginPhase","phase","decrementListenerCount","current","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","destroyChild","child","$$ChildScope","this.$$ChildScope","watchExp","watcher","eq","deregisterWatch","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","deregisterWatchGroup","expr","unwatchFn","watchGroupSubAction","$watchCollectionInterceptor","_value","bothNaN","newItem","oldItem","internalArray","oldLength","changeDetected","newLength","internalObject","veryOldValue","trackVeryOldValue","changeDetector","initRun","$watchCollectionAction","watch","watchers","dirty","ttl","watchLog","logIdx","logMsg","asyncTask","asyncQueue","$eval","isNaN","next","postDigestQueue","eventName","this.$watchGroup","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","currentScope","$$asyncQueue","$$postDigestQueue","$$applyAsyncQueue","sanitizeUri","uri","isImage","regex","normalizedVal","adjustMatcher","matcher","$sceMinErr","escapeForRegexp","adjustMatchers","matchers","adjustedMatchers","SCE_CONTEXTS","resourceUrlWhitelist","resourceUrlBlacklist","this.resourceUrlWhitelist","this.resourceUrlBlacklist","matchUrl","generateHolderType","Base","holderType","trustedValue","$$unwrapTrustedValue","this.$$unwrapTrustedValue","holderType.prototype.valueOf","holderType.prototype.toString","htmlSanitizer","trustedValueHolderBase","byType","CSS","URL","JS","trustAs","maybeTrusted","allowed","this.enabled","msie","sce","isEnabled","sce.isEnabled","sce.getTrusted","parseAs","sce.parseAs","enumValue","lName","eventSupport","android","userAgent","navigator","boxee","vendorPrefix","vendorRegex","bodyStyle","transitions","animations","webkitTransition","webkitAnimation","pushState","hasEvent","divElm","handleRequestFn","tpl","ignoreRequestError","totalPendingRequests","original","transformer","httpOptions","handleError","testability","testability.findBindings","opt_exactMatch","getElementsByClassName","matches","dataBinding","bindingName","testability.findModels","prefixes","attributeEquals","testability.getLocation","testability.setLocation","testability.whenStable","deferreds","$$timeoutId","timeout.cancel","base","urlParsingNode","requestUrl","originUrl","filters","suffix","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","comparatorType","predicates","predicates.check","objKey","filtered","$locale","formats","amount","currencySymbol","fractionSize","formatNumber","number","groupSep","decimalSep","isFinite","isNegative","abs","numStr","formatedText","hasExponent","toFixed","fractionLen","min","round","fraction","lgroup","group","padNumber","digits","neg","dateGetter","date","dateStrGetter","shortForm","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","weekGetter","firstThurs","getFullYear","thisThurs","getMonth","getDate","jsonStringToDate","string","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","m","s","ms","parseFloat","format","timezone","NUMBER_STRING","DATE_FORMATS_SPLIT","setMinutes","getMinutes","getTimezoneOffset","DATE_FORMATS","object","limit","Infinity","out","sortPredicate","reverseOrder","reverseComparator","comp","descending","v1","v2","map","predicate","arrayCopy","ngDirective","FormController","controls","parentForm","$$parentForm","nullFormCtrl","$error","$$success","$pending","$name","$dirty","$pristine","$valid","$invalid","$submitted","$addControl","$rollbackViewValue","form.$rollbackViewValue","control","$commitViewValue","form.$commitViewValue","form.$addControl","$$renameControl","form.$$renameControl","newName","oldName","$removeControl","form.$removeControl","$setValidity","addSetValidityMethod","ctrl","set","unset","$setDirty","form.$setDirty","PRISTINE_CLASS","DIRTY_CLASS","$setPristine","form.$setPristine","setClass","SUBMITTED_CLASS","$setUntouched","form.$setUntouched","$setSubmitted","form.$setSubmitted","stringBasedInputType","$formatters","$isEmpty","baseInputType","placeholder","noevent","composing","ev","ngTrim","$viewValue","$$hasNativeValidators","$setViewValue","deferListener","keyCode","$render","ctrl.$render","$modelValue","createDateParser","mapping","iso","ISO_DATE_REGEXP","yyyy","MM","dd","HH","getHours","mm","ss","getSeconds","sss","getMilliseconds","part","NaN","createDateInputType","parseDate","dynamicDateInputType","parseObservedDateValue","badInputChecker","$options","previousDate","$$parserName","$parsers","parsedDate","$ngModelMinErr","timezoneOffset","ngMin","minVal","$validators","ctrl.$validators.min","$validate","ngMax","maxVal","ctrl.$validators.max","ctrl.$isEmpty","validity","VALIDITY_STATE_PROPERTY","badInput","typeMismatch","parseConstantExpr","fallback","parseFn","cachedToggleClass","switchValue","classCache","toggleValidationCss","validationErrorKey","isValid","VALID_CLASS","INVALID_CLASS","hasClass","setValidity","isObjectEmpty","PENDING_CLASS","combinedState","classDirective","arrayDifference","arrayClasses","classes","digestClassCounts","classCounts","classesToUpdate","ngClassWatchAction","$index","old$index","mod","REGEX_STRING_REGEXP","documentMode","isActive_","active","full","major","minor","dot","codeName","JQLite._data","MOUSE_EVENT_MAP","mouseleave","mouseenter","optgroup","tbody","tfoot","colgroup","caption","thead","th","td","ready","trigger","fired","removeData","removeAttribute","css","lowercasedName","specified","getNamedItem","ret","getText","$dv","multiple","selected","nodeCount","jqLiteOn","types","related","relatedTarget","contains","off","one","onFn","replaceNode","insertBefore","contentDocument","prepend","wrapNode","detach","after","newElement","toggleClass","condition","classCondition","nextElementSibling","getElementsByTagName","extraParameters","dummyEvent","handlerArgs","eventFnsCopy","arg3","unbind","$$annotate","$animateMinErr","$$selectors","classNameFilter","this.classNameFilter","$$classNameFilter","runAnimationPostDigest","cancelFn","$$cancelFn","defer.promise.$$cancelFn","ngAnimatePostDigest","ngAnimateNotifyComplete","resolveElementClasses","hasClasses","cachedClassManipulation","op","asyncPromise","currentDefer","applyStyles","styles","from","to","animate","enter","leave","move","$$addClassImmediately","$$removeClassImmediately","add","createdCache","STORAGE_KEY","$$setClassImmediately","PATH_MATCH","locationPrototype","paramValue","Location","Location.prototype.state","CALL","APPLY","BIND","CONSTANTS","null","true","false","constantGetter","OPERATORS","+","-","*","/","%","===","!==","==","!=","<",">","<=",">=","&&","||","!","ESCAPE","lex","tokens","is","readString","peek","readNumber","isIdent","readIdent","isWhitespace","ch2","ch3","fn2","fn3","throwError","chars","isExpOperator","start","end","colStr","peekCh","lastDot","peekIndex","methodName","quote","rawString","hex","String","fromCharCode","rep","ZERO","statements","primary","expect","filterChain","consume","arrayDeclaration","functionCall","objectIndex","fieldAccess","msg","peekToken","e1","e2","e3","e4","t","unaryFn","right","$parseUnaryFn","binaryFn","left","isBranching","$parseBinaryFn","$parseStatements","inputFn","argsFn","$parseFilter","every","assignment","ternary","$parseAssignment","logicalOR","middle","$parseTernary","logicalAND","equality","relational","additive","multiplicative","unary","field","$parseFieldAccess","o","indexFn","$parseObjectIndex","fnGetter","contextGetter","expressionText","$parseFunctionCall","elementFns","elementFn","$parseArrayLiteral","valueFns","$parseObjectLiteral","yy","y","MMMM","MMM","M","H","hh","EEEE","EEE","ampmGetter","Z","timeZoneGetter","zone","paddedZone","ww","w","xlinkHref","propName","normalized","ngBooleanAttrWatchAction","htmlAttr","ngAttrAliasWatchAction","nullFormRenameControl","formDirectiveFactory","isNgForm","ngFormCompile","formElement","ngFormPreLink","handleFormSubmission","returnValue","parentFormCtrl","alias","URL_REGEXP","EMAIL_REGEXP","NUMBER_REGEXP","DATE_REGEXP","DATETIMELOCAL_REGEXP","WEEK_REGEXP","MONTH_REGEXP","TIME_REGEXP","DEFAULT_REGEXP","inputType","textInputType","weekParser","isoWeek","existingDate","week","minutes","hours","seconds","milliseconds","addDays","numberInputType","urlInputType","ctrl.$validators.url","emailInputType","email","ctrl.$validators.email","radioInputType","checked","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","ctrls","NgModelController","$asyncValidators","$viewChangeListeners","$untouched","$touched","parsedNgModel","pendingDebounce","ngModelGet","modelValue","getterSetter","ngModelSet","$$setOptions","this.$$setOptions","this.$isEmpty","currentValidationRunId","this.$setPristine","this.$setUntouched","UNTOUCHED_CLASS","TOUCHED_CLASS","$setTouched","this.$setTouched","this.$rollbackViewValue","$$lastCommittedViewValue","this.$validate","$$parseAndValidate","$$runValidators","this.$$runValidators","parseValid","viewValue","doneCallback","processSyncValidators","syncValidatorsValid","validator","processAsyncValidators","validatorPromises","allValid","validationDone","localValidationRunId","processParseErrors","errorKey","this.$commitViewValue","this.$$parseAndValidate","parserValid","prevModelValue","allowInvalid","$$writeModelToScope","this.$$writeModelToScope","this.$setViewValue","updateOnDefault","$$debounceViewValueCommit","this.$$debounceViewValueCommit","debounceDelay","debounce","ngModelWatch","formatters","ngModelCompile","ngModelPreLink","modelCtrl","formCtrl","ngModelPostLink","updateOn","ctrl.$validators.required","patternExp","ctrl.$validators.pattern","ctrl.$validators.maxlength","ctrl.$validators.minlength","trimValues","CONSTANT_VALUE_REGEXP","tplAttr","ngValueConstantLink","ngValueLink","valueWatchAction","that","$compile","ngBindCompile","templateElement","ngBindLink","ngBindWatchAction","ngBindTemplateCompile","ngBindTemplateLink","ngBindHtmlCompile","tElement","ngBindHtmlGetter","ngBindHtmlWatch","getStringValue","ngBindHtmlLink","ngBindHtmlWatchAction","getTrustedHtml","forceAsyncEvents","ngEventHandler","$event","previousElements","ngIfWatchAction","newScope","srcExp","onloadExp","autoScrollExp","autoscroll","changeCounter","previousElement","currentElement","cleanupLastIncludeContent","parseAsResourceUrl","ngIncludeWatchAction","afterAnimation","thisChangeId","namespaceAdaptedClone","BRACE","numberExp","whenExp","whens","whensExpFns","isWhen","attributeName","ngPluralizeWatch","ngPluralizeWatchAction","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","ngRepeatCompile","ngRepeatEndComment","lhs","rhs","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","ngRepeatLink","lastBlockMap","ngRepeatAction","previousNode","nextNode","nextBlockMap","collectionLength","trackById","collectionKeys","nextBlockOrder","trackByIdFn","itemKey","blockKey","ngRepeatTransclude","ngShowWatchAction","NG_HIDE_CLASS","tempClasses","NG_HIDE_IN_PROGRESS_CLASS","ngHideWatchAction","ngStyleWatchAction","newStyles","oldStyles","ngSwitchController","cases","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","ngSwitchWatchAction","selectedTransclude","caseElement","selectedScope","anchor","ngOptionsMinErr","NG_OPTIONS_REGEXP","nullModelCtrl","optionsMap","ngModelCtrl","unknownOption","databound","init","self.init","ngModelCtrl_","nullOption_","unknownOption_","addOption","self.addOption","removeOption","self.removeOption","hasOption","renderUnknownOption","self.renderUnknownOption","unknownVal","self.hasOption","setupAsSingle","selectElement","selectCtrl","ngModelCtrl.$render","emptyOption","setupAsMultiple","lastView","selectMultipleWatch","setupAsOptions","callExpression","exprFn","valueName","keyName","createIsSelectedFn","selectedSet","trackFn","trackIndex","isSelected","compareValueFn","selectAsFn","scheduleRendering","renderScheduled","render","updateLabelMap","labelMap","label","added","optionGroups","optionGroupNames","optionGroupName","optionGroup","existingParent","existingOptions","existingOption","valuesFn","anySelected","optionId","trackKeysCache","groupByFn","displayFn","nullOption","groupIndex","groupLength","optionGroupsCache","optGroupTemplate","lastElement","optionTemplate","optionsExp","selectAs","track","selectionChanged","selectedKey","viewValueFn","getLabels","toDisplay","ngModelCtrl.$isEmpty","nullSelectCtrl","selectCtrlName","interpolateWatchAction","$$csp"] +"names":["window","document","undefined","minErr","isArrayLike","obj","isWindow","length","nodeType","NODE_TYPE_ELEMENT","isString","isArray","forEach","iterator","context","key","isFunction","hasOwnProperty","call","isPrimitive","forEachSorted","keys","Object","sort","i","reverseParams","iteratorFn","value","nextUid","uid","setHashKey","h","$$hashKey","extend","dst","ii","arguments","j","jj","int","str","parseInt","inherit","parent","extra","create","noop","identity","$","valueFn","isUndefined","isDefined","isObject","isNumber","isDate","toString","isRegExp","isScope","$evalAsync","$watch","isBoolean","isElement","node","nodeName","prop","attr","find","makeMap","items","split","nodeName_","element","lowercase","arrayRemove","array","index","indexOf","splice","copy","source","destination","stackSource","stackDest","ngMinErr","push","result","Date","getTime","RegExp","match","lastIndex","emptyObject","getPrototypeOf","shallowCopy","src","charAt","equals","o1","o2","t1","t2","keySet","concat","array1","array2","slice","bind","self","fn","curryArgs","startIndex","apply","toJsonReplacer","val","toJson","pretty","JSON","stringify","fromJson","json","parse","startingTag","jqLite","clone","empty","e","elemHtml","append","html","NODE_TYPE_TEXT","replace","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","key_value","toKeyValue","parts","arrayValue","encodeUriQuery","join","encodeUriSegment","pctEncodeSpaces","encodeURIComponent","getNgAttribute","ngAttr","ngAttrPrefixes","angularInit","bootstrap","appElement","module","config","prefix","name","hasAttribute","getAttribute","candidate","querySelector","strictDi","modules","defaultConfig","doBootstrap","injector","tag","unshift","$provide","debugInfoEnabled","$compileProvider","createInjector","invoke","bootstrapApply","scope","compile","$apply","data","NG_ENABLE_DEBUG_INFO","NG_DEFER_BOOTSTRAP","test","angular","resumeBootstrap","angular.resumeBootstrap","extraModules","resumeDeferredBootstrap","reloadWithDebugInfo","location","reload","getTestability","rootElement","get","snake_case","separator","SNAKE_CASE_REGEXP","letter","pos","toLowerCase","bindJQuery","originalCleanData","bindJQueryFired","jQuery","on","JQLitePrototype","isolateScope","controller","inheritedData","cleanData","jQuery.cleanData","elems","events","skipDestroyOnNextJQueryCleanData","elem","_data","$destroy","triggerHandler","JQLite","assertArg","arg","reason","assertArgFn","acceptArrayAnnotation","constructor","assertNotHasOwnProperty","getter","path","bindFnToScope","lastInstance","len","getBlockNodes","nodes","endNode","blockNodes","nextSibling","createMap","setupModuleLoader","ensure","factory","$injectorMinErr","$$minErr","requires","configFn","invokeLater","provider","method","insertMethod","queue","invokeQueue","moduleInstance","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","animation","filter","directive","run","block","publishExternalAPI","version","uppercase","counter","csp","angularModule","$LocaleProvider","ngModule","$$sanitizeUri","$$SanitizeUriProvider","$CompileProvider","a","htmlAnchorDirective","input","inputDirective","textarea","form","formDirective","script","scriptDirective","select","selectDirective","style","styleDirective","option","optionDirective","ngBind","ngBindDirective","ngBindHtml","ngBindHtmlDirective","ngBindTemplate","ngBindTemplateDirective","ngClass","ngClassDirective","ngClassEven","ngClassEvenDirective","ngClassOdd","ngClassOddDirective","ngCloak","ngCloakDirective","ngController","ngControllerDirective","ngForm","ngFormDirective","ngHide","ngHideDirective","ngIf","ngIfDirective","ngInclude","ngIncludeDirective","ngInit","ngInitDirective","ngNonBindable","ngNonBindableDirective","ngPluralize","ngPluralizeDirective","ngRepeat","ngRepeatDirective","ngShow","ngShowDirective","ngStyle","ngStyleDirective","ngSwitch","ngSwitchDirective","ngSwitchWhen","ngSwitchWhenDirective","ngSwitchDefault","ngSwitchDefaultDirective","ngOptions","ngOptionsDirective","ngTransclude","ngTranscludeDirective","ngModel","ngModelDirective","ngList","ngListDirective","ngChange","ngChangeDirective","pattern","patternDirective","ngPattern","required","requiredDirective","ngRequired","minlength","minlengthDirective","ngMinlength","maxlength","maxlengthDirective","ngMaxlength","ngValue","ngValueDirective","ngModelOptions","ngModelOptionsDirective","ngIncludeFillContentDirective","ngAttributeAliasDirectives","ngEventDirectives","$anchorScroll","$AnchorScrollProvider","$animate","$AnimateProvider","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$http","$HttpProvider","$httpBackend","$HttpBackendProvider","$location","$LocationProvider","$log","$LogProvider","$parse","$ParseProvider","$rootScope","$RootScopeProvider","$q","$QProvider","$$q","$$QProvider","$sce","$SceProvider","$sceDelegate","$SceDelegateProvider","$sniffer","$SnifferProvider","$templateCache","$TemplateCacheProvider","$templateRequest","$TemplateRequestProvider","$$testability","$$TestabilityProvider","$timeout","$TimeoutProvider","$window","$WindowProvider","$$rAF","$$RAFProvider","$$asyncCallback","$$AsyncCallbackProvider","$$jqLite","$$jqLiteProvider","camelCase","SPECIAL_CHARS_REGEXP","_","offset","toUpperCase","MOZ_HACK_REGEXP","jqLiteAcceptsData","NODE_TYPE_DOCUMENT","jqLiteBuildFragment","tmp","fragment","createDocumentFragment","HTML_REGEXP","appendChild","createElement","TAG_NAME_REGEXP","exec","wrap","wrapMap","_default","innerHTML","XHTML_TAG_REGEXP","lastChild","childNodes","firstChild","textContent","createTextNode","argIsString","trim","jqLiteMinErr","parsed","SINGLE_TAG_REGEXP","jqLiteAddNodes","jqLiteClone","cloneNode","jqLiteDealoc","onlyDescendants","jqLiteRemoveData","querySelectorAll","descendants","l","jqLiteOff","type","unsupported","expandoStore","jqLiteExpandoStore","handle","listenerFns","removeEventListener","expandoId","ng339","jqCache","createIfNecessary","jqId","jqLiteData","isSimpleSetter","isSimpleGetter","massGetter","jqLiteHasClass","selector","jqLiteRemoveClass","cssClasses","setAttribute","cssClass","jqLiteAddClass","existingClasses","root","elements","jqLiteController","jqLiteInheritedData","documentElement","names","parentNode","NODE_TYPE_DOCUMENT_FRAGMENT","host","jqLiteEmpty","removeChild","jqLiteRemove","keepData","jqLiteDocumentLoaded","action","win","readyState","setTimeout","getBooleanAttrName","booleanAttr","BOOLEAN_ATTR","BOOLEAN_ELEMENTS","getAliasedAttrName","ALIASED_ATTR","createEventHandler","eventHandler","event","isDefaultPrevented","event.isDefaultPrevented","defaultPrevented","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","stopImmediatePropagation","event.stopImmediatePropagation","stopPropagation","isImmediatePropagationStopped","event.isImmediatePropagationStopped","$get","this.$get","hasClass","classes","addClass","removeClass","hashKey","nextUidFn","objType","HashMap","isolatedUid","this.nextUid","put","anonFn","args","fnText","STRIP_COMMENTS","FN_ARGS","modulesToLoad","supportObject","delegate","provider_","providerInjector","instantiate","providerCache","providerSuffix","enforceReturnValue","enforcedReturnValue","instanceInjector","factoryFn","enforce","loadModules","moduleFn","runInvokeQueue","invokeArgs","loadedModules","message","stack","createInternalInjector","cache","getService","serviceName","caller","INSTANTIATING","err","shift","locals","$inject","$$annotate","Type","instance","prototype","returnedValue","annotate","has","$injector","instanceCache","decorator","decorFn","origProvider","orig$get","origProvider.$get","origInstance","$delegate","autoScrollingEnabled","disableAutoScrolling","this.disableAutoScrolling","getFirstAnchor","list","Array","some","scrollTo","scrollIntoView","scroll","yOffset","getComputedStyle","position","getBoundingClientRect","bottom","elemTop","top","scrollBy","hash","elm","getElementById","getElementsByName","autoScrollWatch","autoScrollWatchAction","newVal","oldVal","supported","Browser","completeOutstandingRequest","outstandingRequestCount","outstandingRequestCallbacks","pop","error","startPoller","interval","check","pollFns","pollFn","pollTimeout","cacheStateAndFireUrlChange","cacheState","fireUrlChange","cachedState","history","state","lastCachedState","lastBrowserUrl","url","lastHistoryState","urlChangeListeners","listener","safeDecodeURIComponent","rawDocument","clearTimeout","pendingDeferIds","isMock","$$completeOutstandingRequest","$$incOutstandingRequestCount","self.$$incOutstandingRequestCount","notifyWhenNoOutstandingRequests","self.notifyWhenNoOutstandingRequests","callback","addPollFn","self.addPollFn","href","baseElement","reloadLocation","self.url","sameState","sameBase","stripHash","substr","self.state","urlChangeInit","onUrlChange","self.onUrlChange","$$checkUrlChange","baseHref","self.baseHref","lastCookies","lastCookieString","cookiePath","cookies","self.cookies","cookieLength","cookie","warn","cookieArray","substring","defer","self.defer","delay","timeoutId","cancel","self.defer.cancel","deferId","cacheFactory","cacheId","options","refresh","entry","freshEnd","staleEnd","n","link","p","nextEntry","prevEntry","caches","size","stats","id","capacity","Number","MAX_VALUE","lruHash","lruEntry","remove","removeAll","destroy","info","cacheFactory.info","cacheFactory.get","$$sanitizeUriProvider","parseIsolateBindings","directiveName","LOCAL_REGEXP","bindings","definition","scopeName","$compileMinErr","mode","collection","optional","attrName","hasDirectives","COMMENT_DIRECTIVE_REGEXP","CLASS_DIRECTIVE_REGEXP","ALL_OR_NOTHING_ATTRS","REQUIRE_PREFIX_REGEXP","EVENT_HANDLER_ATTR_REGEXP","this.directive","registerDirective","directiveFactory","Suffix","directives","priority","require","restrict","$$isolateBindings","aHrefSanitizationWhitelist","this.aHrefSanitizationWhitelist","regexp","imgSrcSanitizationWhitelist","this.imgSrcSanitizationWhitelist","this.debugInfoEnabled","enabled","safeAddClass","$element","className","$compileNodes","transcludeFn","maxPriority","ignoreDirective","previousCompileContext","nodeValue","compositeLinkFn","compileNodes","$$addScopeClass","namespace","publicLinkFn","cloneConnectFn","parentBoundTranscludeFn","transcludeControllers","futureParentElement","$$boundTransclude","$linkNode","wrapTemplate","controllerName","$$addScopeInfo","nodeList","$rootElement","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","linkFns","idx","nodeLinkFn","$new","transcludeOnThisElement","createBoundTranscludeFn","transclude","elementTranscludeOnThisElement","templateOnThisElement","attrs","linkFnFound","Attributes","collectDirectives","applyDirectivesToNode","$$element","terminal","previousBoundTranscludeFn","elementTransclusion","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","attrsMap","$attr","addDirective","directiveNormalize","isNgAttr","nAttrs","attributes","attrStartName","attrEndName","ngAttrName","NG_ATTR_BINDING","PREFIX_REGEXP","directiveNName","directiveIsMultiElement","nName","addAttrInterpolateDirective","animVal","addTextInterpolateDirective","NODE_TYPE_COMMENT","byPriority","groupScan","attrStart","attrEnd","depth","groupElementsLinkFnWrapper","linkFn","compileNode","templateAttrs","jqCollection","originalReplaceDirective","preLinkFns","postLinkFns","addLinkFns","pre","post","newIsolateScopeDirective","$$isolateScope","cloneAndAnnotateFn","getControllers","elementControllers","retrievalMethod","$searchElement","linkNode","controllersBoundTransclude","cloneAttachFn","hasElementTranscludeDirective","scopeToChild","controllerDirectives","$scope","$attrs","$transclude","controllerInstance","controllerAs","templateDirective","$$originalDirective","isolateScopeController","isolateBindingContext","identifier","bindToController","lastValue","parentGet","parentSet","compare","$observe","$$observers","$$scope","literal","b","assign","parentValueWatch","parentValue","$stateful","unwatch","$watchCollection","$on","invokeLinkFn","template","templateUrl","terminalPriority","newScopeDirective","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","$template","childTranscludeFn","$$start","$$end","directiveValue","assertNoDuplicate","$$tlb","createComment","replaceWith","replaceDirective","contents","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectivesAsIsolate","mergeTemplateAttributes","compileTemplateUrl","Math","max","tDirectives","startAttrName","endAttrName","multiElement","srcAttr","dstAttr","$set","tAttrs","linkQueue","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","getTrustedResourceUrl","then","content","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","delayedNodeLinkFn","ignoreChildLinkFn","diff","what","previousDirective","text","interpolateFn","textInterpolateCompileFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","textInterpolateLinkFn","$$addBindingInfo","expressions","interpolateFnWatchAction","wrapper","getTrustedContext","attrNormalizedName","HTML","RESOURCE_URL","allOrNothing","trustedContext","attrInterpolatePreLinkFn","newValue","$$inter","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","replaceChild","expando","k","kk","annotation","attributesToCopy","$normalize","$addClass","classVal","$removeClass","newClasses","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","observer","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","floor","innerIdx","lastTuple","removeAttr","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","dataName","str1","str2","values","tokens1","tokens2","token","jqNodes","globals","CNTRL_REG","register","this.register","allowGlobals","this.allowGlobals","addIdentifier","expression","later","ident","$controllerMinErr","controllerPrototype","exception","cause","defaultHttpResponseTransform","headers","tempData","JSON_PROTECTION_PREFIX","contentType","jsonStart","JSON_START","JSON_ENDS","parseHeaders","line","headersGetter","headersObj","transformData","status","fns","defaults","transformResponse","transformRequest","d","common","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","useApplyAsync","this.useApplyAsync","interceptorFactories","interceptors","requestConfig","response","resp","reject","executeHeaderFns","headerContent","processedHeaders","headerFn","header","mergeHeaders","defHeaders","reqHeaders","defHeaderName","reqHeaderName","lowercaseDefHeaderName","chain","serverRequest","reqData","withCredentials","sendReq","promise","when","reversedInterceptors","interceptor","request","requestError","responseError","thenFn","rejectFn","success","promise.success","promise.error","done","headersString","statusText","resolveHttpPromise","resolvePromise","$applyAsync","$$phase","deferred","resolve","resolvePromiseWithResult","removePendingReq","pendingRequests","cachedResp","buildUrl","params","defaultCache","xsrfValue","urlIsSameOrigin","timeout","responseType","v","toISOString","interceptorFactory","createShortMethods","createShortMethodsWithData","createXhr","XMLHttpRequest","createHttpBackend","callbacks","$browserDefer","jsonpReq","callbackId","async","body","called","addEventListener","timeoutRequest","jsonpDone","xhr","abort","completeRequest","open","setRequestHeader","onload","xhr.onload","responseText","urlResolve","protocol","getAllResponseHeaders","onerror","onabort","send","this.startSymbol","this.endSymbol","escape","ch","mustHaveExpression","unescapeText","escapedStartRegexp","escapedEndRegexp","parseStringifyInterceptor","getTrusted","valueOf","newErr","$interpolateMinErr","endIndex","parseFns","textLength","expressionPositions","startSymbolLength","exp","endSymbolLength","compute","interpolationFn","$$watchDelegate","objectEquality","$watchGroup","interpolateFnWatcher","oldValues","currValue","$interpolate.startSymbol","$interpolate.endSymbol","count","invokeApply","setInterval","clearInterval","iteration","skipApply","$$intervalId","tick","notify","intervals","interval.cancel","NUMBER_FORMATS","DECIMAL_SEP","GROUP_SEP","PATTERNS","minInt","minFrac","maxFrac","posPre","posSuf","negPre","negSuf","gSize","lgSize","CURRENCY_SYM","DATETIME_FORMATS","MONTH","SHORTMONTH","DAY","SHORTDAY","AMPMS","medium","fullDate","longDate","mediumDate","shortDate","mediumTime","shortTime","pluralCat","num","encodePath","segments","parseAbsoluteUrl","absoluteUrl","locationObj","parsedUrl","$$protocol","$$host","hostname","$$port","port","DEFAULT_PORTS","parseAppUrl","relativeUrl","prefixed","$$path","pathname","$$search","search","$$hash","beginsWith","begin","whole","trimEmptyHash","stripFile","lastIndexOf","LocationHtml5Url","appBase","basePrefix","$$html5","appBaseNoFile","$$parse","this.$$parse","pathUrl","$locationMinErr","$$compose","this.$$compose","$$url","$$absUrl","$$parseLinkUrl","this.$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","withoutBaseUrl","withoutHashUrl","windowsFilePathExp","firstPathSegmentMatch","LocationHashbangInHtml5Url","locationGetter","property","locationGetterSetter","preprocess","html5Mode","requireBase","rewriteLinks","this.hashPrefix","this.html5Mode","setBrowserUrlWithFallback","oldUrl","oldState","$$state","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","IGNORE_URI_REGEXP","ctrlKey","metaKey","shiftKey","which","button","target","absHref","preventDefault","initializing","newUrl","newState","$digest","$locationWatch","currentReplace","$$replace","urlOrStateChanged","debug","debugEnabled","this.debugEnabled","flag","formatError","Error","sourceURL","consoleLog","console","logFn","log","hasApply","arg1","arg2","ensureSafeMemberName","fullExpression","$parseMinErr","ensureSafeObject","children","isConstant","setter","setValue","fullExp","propertyObj","isPossiblyDangerousMemberName","cspSafeGetterFn","key0","key1","key2","key3","key4","expensiveChecks","eso","o","eso0","eso1","eso2","eso3","eso4","cspSafeGetter","pathVal","getterFnWithEnsureSafeObject","s","getterFn","getterFnCache","getterFnCacheExpensive","getterFnCacheDefault","pathKeys","pathKeysLength","code","needsEnsureSafeObject","lookupJs","evaledFnGetter","Function","sharedGetter","fn.assign","getValueOf","objectValueOf","cacheDefault","cacheExpensive","wrapSharedExpression","wrapped","collectExpressionInputs","inputs","expressionInputDirtyCheck","oldValueOfValue","inputsWatchDelegate","parsedExpression","inputExpressions","$$inputs","lastResult","oldInputValue","expressionInputWatch","newInputValue","oldInputValueOfValues","expressionInputsWatch","changed","oneTimeWatchDelegate","oneTimeWatch","oneTimeListener","old","$$postDigest","oneTimeLiteralWatchDelegate","isAllDefined","allDefined","constantWatchDelegate","constantWatch","constantListener","addInterceptor","interceptorFn","watchDelegate","regularInterceptedExpression","oneTimeInterceptedExpression","$parseOptions","$parseOptionsExpensive","oneTime","cacheKey","parseOptions","lexer","Lexer","parser","Parser","qFactory","nextTick","exceptionHandler","callOnce","resolveFn","Promise","simpleBind","scheduleProcessQueue","processScheduled","pending","Deferred","$qMinErr","TypeError","onFulfilled","onRejected","progressBack","catch","finally","handleCallback","$$reject","$$resolve","progress","makePromise","resolved","isResolved","callbackOutput","errback","$Q","Q","resolver","all","promises","results","requestAnimationFrame","webkitRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","rafSupported","raf","timer","TTL","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","this.digestTtl","Scope","$id","$parent","$$watchers","$$nextSibling","$$prevSibling","$$childHead","$$childTail","$root","$$listeners","$$listenerCount","beginPhase","phase","decrementListenerCount","current","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","destroyChild","child","$$ChildScope","this.$$ChildScope","watchExp","watcher","last","eq","deregisterWatch","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","deregisterWatchGroup","expr","unwatchFn","watchGroupSubAction","$watchCollectionInterceptor","_value","bothNaN","newItem","oldItem","internalArray","oldLength","changeDetected","newLength","internalObject","veryOldValue","trackVeryOldValue","changeDetector","initRun","$watchCollectionAction","watch","watchers","dirty","ttl","watchLog","logIdx","asyncTask","asyncQueue","$eval","isNaN","msg","next","postDigestQueue","eventName","this.$watchGroup","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","currentScope","$$asyncQueue","$$postDigestQueue","$$applyAsyncQueue","sanitizeUri","uri","isImage","regex","normalizedVal","adjustMatcher","matcher","$sceMinErr","escapeForRegexp","adjustMatchers","matchers","adjustedMatchers","SCE_CONTEXTS","resourceUrlWhitelist","resourceUrlBlacklist","this.resourceUrlWhitelist","this.resourceUrlBlacklist","matchUrl","generateHolderType","Base","holderType","trustedValue","$$unwrapTrustedValue","this.$$unwrapTrustedValue","holderType.prototype.valueOf","holderType.prototype.toString","htmlSanitizer","trustedValueHolderBase","byType","CSS","URL","JS","trustAs","Constructor","maybeTrusted","allowed","this.enabled","msie","sce","isEnabled","sce.isEnabled","sce.getTrusted","parseAs","sce.parseAs","enumValue","lName","eventSupport","android","userAgent","navigator","boxee","vendorPrefix","vendorRegex","bodyStyle","transitions","animations","webkitTransition","webkitAnimation","pushState","hasEvent","divElm","handleRequestFn","tpl","ignoreRequestError","totalPendingRequests","transformer","httpOptions","handleError","testability","testability.findBindings","opt_exactMatch","getElementsByClassName","matches","dataBinding","bindingName","testability.findModels","prefixes","attributeEquals","testability.getLocation","testability.setLocation","testability.whenStable","deferreds","$$timeoutId","timeout.cancel","urlParsingNode","requestUrl","originUrl","filters","suffix","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","matchAgainstAnyProp","predicateFn","createPredicateFn","shouldMatchPrimitives","actual","expected","item","deepCompare","dontMatchWholeObject","actualType","expectedType","expectedVal","matchAnyProperty","actualVal","$locale","formats","amount","currencySymbol","fractionSize","formatNumber","number","groupSep","decimalSep","isFinite","isNegative","abs","numStr","formatedText","hasExponent","toFixed","parseFloat","fractionLen","min","round","fraction","lgroup","group","padNumber","digits","neg","dateGetter","date","dateStrGetter","shortForm","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","weekGetter","firstThurs","getFullYear","thisThurs","getMonth","getDate","jsonStringToDate","string","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","m","ms","format","timezone","NUMBER_STRING","DATE_FORMATS_SPLIT","setMinutes","getMinutes","getTimezoneOffset","DATE_FORMATS","object","spacing","limit","Infinity","sortPredicate","reverseOrder","reverseComparator","comp","descending","objectToString","v1","v2","map","predicate","ngDirective","FormController","controls","parentForm","$$parentForm","nullFormCtrl","$error","$$success","$pending","$name","$dirty","$pristine","$valid","$invalid","$submitted","$addControl","$rollbackViewValue","form.$rollbackViewValue","control","$commitViewValue","form.$commitViewValue","form.$addControl","$$renameControl","form.$$renameControl","newName","oldName","$removeControl","form.$removeControl","$setValidity","addSetValidityMethod","ctrl","set","unset","$setDirty","form.$setDirty","PRISTINE_CLASS","DIRTY_CLASS","$setPristine","form.$setPristine","setClass","SUBMITTED_CLASS","$setUntouched","form.$setUntouched","$setSubmitted","form.$setSubmitted","stringBasedInputType","$formatters","$isEmpty","baseInputType","composing","ev","ngTrim","$viewValue","$$hasNativeValidators","$setViewValue","deferListener","origValue","keyCode","$render","ctrl.$render","createDateParser","mapping","iso","ISO_DATE_REGEXP","yyyy","MM","dd","HH","getHours","mm","ss","getSeconds","sss","getMilliseconds","part","NaN","createDateInputType","parseDate","dynamicDateInputType","isValidDate","parseObservedDateValue","badInputChecker","$options","previousDate","$$parserName","$parsers","parsedDate","$ngModelMinErr","timezoneOffset","ngMin","minVal","$validators","ctrl.$validators.min","$validate","ngMax","maxVal","ctrl.$validators.max","validity","VALIDITY_STATE_PROPERTY","badInput","typeMismatch","parseConstantExpr","fallback","parseFn","classDirective","arrayDifference","arrayClasses","digestClassCounts","classCounts","classesToUpdate","ngClassWatchAction","$index","old$index","mod","cachedToggleClass","switchValue","classCache","toggleValidationCss","validationErrorKey","isValid","VALID_CLASS","INVALID_CLASS","setValidity","isObjectEmpty","PENDING_CLASS","combinedState","REGEX_STRING_REGEXP","documentMode","isActive_","active","full","major","minor","dot","codeName","JQLite._data","MOUSE_EVENT_MAP","mouseleave","mouseenter","optgroup","tbody","tfoot","colgroup","caption","thead","th","td","ready","trigger","fired","removeData","removeAttribute","css","lowercasedName","specified","getNamedItem","ret","getText","$dv","multiple","selected","nodeCount","jqLiteOn","types","related","relatedTarget","contains","off","one","onFn","replaceNode","insertBefore","contentDocument","prepend","wrapNode","detach","after","newElement","toggleClass","condition","classCondition","nextElementSibling","getElementsByTagName","extraParameters","dummyEvent","handlerArgs","eventFnsCopy","arg3","unbind","FN_ARG_SPLIT","FN_ARG","argDecl","underscore","$animateMinErr","$$selectors","classNameFilter","this.classNameFilter","$$classNameFilter","runAnimationPostDigest","cancelFn","$$cancelFn","defer.promise.$$cancelFn","ngAnimatePostDigest","ngAnimateNotifyComplete","resolveElementClasses","hasClasses","cachedClassManipulation","op","asyncPromise","currentDefer","applyStyles","styles","from","to","animate","enter","leave","move","$$addClassImmediately","$$removeClassImmediately","add","createdCache","STORAGE_KEY","$$setClassImmediately","APPLICATION_JSON","PATH_MATCH","locationPrototype","paramValue","Location","Location.prototype.state","CALL","APPLY","BIND","CONSTANTS","null","true","false","constantGetter","OPERATORS","+","-","*","/","%","===","!==","==","!=","<",">","<=",">=","&&","||","!","ESCAPE","lex","tokens","readString","peek","readNumber","isIdent","readIdent","is","isWhitespace","ch2","ch3","op2","op3","op1","operator","throwError","chars","isExpOperator","start","end","colStr","peekCh","quote","rawString","hex","String","fromCharCode","rep","ZERO","statements","primary","expect","filterChain","consume","arrayDeclaration","functionCall","objectIndex","fieldAccess","peekToken","e1","e2","e3","e4","peekAhead","t","unaryFn","right","$parseUnaryFn","binaryFn","left","isBranching","$parseBinaryFn","$parseConstant","$parseStatements","inputFn","argsFn","$parseFilter","every","assignment","ternary","$parseAssignment","logicalOR","middle","$parseTernary","logicalAND","equality","relational","additive","multiplicative","unary","$parseFieldAccess","indexFn","$parseObjectIndex","fnGetter","contextGetter","expressionText","$parseFunctionCall","elementFns","$parseArrayLiteral","valueFns","$parseObjectLiteral","yy","y","MMMM","MMM","M","H","hh","EEEE","EEE","ampmGetter","Z","timeZoneGetter","zone","paddedZone","ww","w","xlinkHref","propName","normalized","ngBooleanAttrWatchAction","htmlAttr","ngAttrAliasWatchAction","nullFormRenameControl","formDirectiveFactory","isNgForm","ngFormCompile","formElement","ngFormPreLink","handleFormSubmission","parentFormCtrl","alias","URL_REGEXP","EMAIL_REGEXP","NUMBER_REGEXP","DATE_REGEXP","DATETIMELOCAL_REGEXP","WEEK_REGEXP","MONTH_REGEXP","TIME_REGEXP","inputType","textInputType","weekParser","isoWeek","existingDate","week","minutes","hours","seconds","milliseconds","addDays","numberInputType","urlInputType","ctrl.$validators.url","modelValue","viewValue","emailInputType","email","ctrl.$validators.email","radioInputType","checked","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","ctrl.$isEmpty","ctrls","CONSTANT_VALUE_REGEXP","tplAttr","ngValueConstantLink","ngValueLink","valueWatchAction","$compile","ngBindCompile","templateElement","ngBindLink","ngBindWatchAction","ngBindTemplateCompile","ngBindTemplateLink","ngBindHtmlCompile","tElement","ngBindHtmlGetter","ngBindHtmlWatch","getStringValue","ngBindHtmlLink","ngBindHtmlWatchAction","getTrustedHtml","$viewChangeListeners","forceAsyncEvents","ngEventHandler","$event","previousElements","ngIfWatchAction","newScope","srcExp","onloadExp","autoScrollExp","autoscroll","changeCounter","previousElement","currentElement","cleanupLastIncludeContent","parseAsResourceUrl","ngIncludeWatchAction","afterAnimation","thisChangeId","namespaceAdaptedClone","trimValues","NgModelController","$modelValue","$$rawModelValue","$asyncValidators","$untouched","$touched","parsedNgModel","parsedNgModelAssign","ngModelGet","ngModelSet","pendingDebounce","$$setOptions","this.$$setOptions","getterSetter","invokeModelGetter","invokeModelSetter","$$$p","this.$isEmpty","currentValidationRunId","this.$setPristine","this.$setDirty","this.$setUntouched","UNTOUCHED_CLASS","TOUCHED_CLASS","$setTouched","this.$setTouched","this.$rollbackViewValue","$$lastCommittedViewValue","this.$validate","prevValid","prevModelValue","allowInvalid","$$runValidators","parserValid","allValid","$$writeModelToScope","this.$$runValidators","parseValid","doneCallback","processSyncValidators","syncValidatorsValid","validator","processAsyncValidators","validatorPromises","validationDone","localValidationRunId","processParseErrors","errorKey","this.$commitViewValue","$$parseAndValidate","this.$$parseAndValidate","this.$$writeModelToScope","this.$setViewValue","updateOnDefault","$$debounceViewValueCommit","this.$$debounceViewValueCommit","debounceDelay","debounce","ngModelWatch","formatters","ngModelCompile","ngModelPreLink","modelCtrl","formCtrl","ngModelPostLink","updateOn","DEFAULT_REGEXP","that","BRACE","IS_WHEN","updateElementText","newText","numberExp","whenExp","whens","whensExpFns","braceReplacement","watchRemover","lastCount","attributeName","tmpMatch","whenKey","ngPluralizeWatchAction","countIsNaN","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","ngRepeatCompile","ngRepeatEndComment","lhs","rhs","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","ngRepeatLink","lastBlockMap","ngRepeatAction","previousNode","nextNode","nextBlockMap","collectionLength","trackById","collectionKeys","nextBlockOrder","trackByIdFn","itemKey","blockKey","ngRepeatTransclude","ngShowWatchAction","NG_HIDE_CLASS","tempClasses","NG_HIDE_IN_PROGRESS_CLASS","ngHideWatchAction","ngStyleWatchAction","newStyles","oldStyles","ngSwitchController","cases","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","ngSwitchWatchAction","selectedTransclude","caseElement","selectedScope","anchor","ngOptionsMinErr","NG_OPTIONS_REGEXP","nullModelCtrl","optionsMap","ngModelCtrl","unknownOption","databound","init","self.init","ngModelCtrl_","nullOption_","unknownOption_","addOption","self.addOption","removeOption","self.removeOption","hasOption","renderUnknownOption","self.renderUnknownOption","unknownVal","self.hasOption","setupAsSingle","selectElement","selectCtrl","ngModelCtrl.$render","emptyOption","setupAsMultiple","lastView","selectMultipleWatch","setupAsOptions","callExpression","exprFn","valueName","keyName","createIsSelectedFn","selectedSet","trackFn","trackIndex","isSelected","compareValueFn","selectAsFn","scheduleRendering","renderScheduled","render","updateLabelMap","labelMap","label","added","optionGroups","optionGroupNames","optionGroupName","optionGroup","existingParent","existingOptions","existingOption","valuesFn","anySelected","optionId","trackKeysCache","groupByFn","displayFn","nullOption","groupIndex","groupLength","optionGroupsCache","optGroupTemplate","lastElement","optionTemplate","optionsExp","selectAs","track","selectionChanged","selectedKey","viewValueFn","getLabels","toDisplay","ngModelCtrl.$isEmpty","nullSelectCtrl","selectCtrlName","interpolateWatchAction","ctrl.$validators.required","patternExp","ctrl.$validators.pattern","intVal","ctrl.$validators.maxlength","ctrl.$validators.minlength","$$csp"] } diff --git a/public/app/bower_components/angular/bower.json b/public/app/bower_components/angular/bower.json index db95c247..2690e016 100644 --- a/public/app/bower_components/angular/bower.json +++ b/public/app/bower_components/angular/bower.json @@ -1,6 +1,6 @@ { "name": "angular", - "version": "1.3.1", + "version": "1.3.12", "main": "./angular.js", "ignore": [], "dependencies": { diff --git a/public/app/bower_components/angular/package.json b/public/app/bower_components/angular/package.json index bdb1eff0..b5476ab9 100644 --- a/public/app/bower_components/angular/package.json +++ b/public/app/bower_components/angular/package.json @@ -1,6 +1,6 @@ { "name": "angular", - "version": "1.3.1", + "version": "1.3.12", "description": "HTML enhanced for web apps", "main": "angular.js", "scripts": { diff --git a/public/app/bower_components/html5-boilerplate/.bower.json b/public/app/bower_components/html5-boilerplate/.bower.json index 5fb96e72..c30d1ae1 100644 --- a/public/app/bower_components/html5-boilerplate/.bower.json +++ b/public/app/bower_components/html5-boilerplate/.bower.json @@ -1,12 +1,12 @@ { "name": "html5-boilerplate", "homepage": "https://github.com/h5bp/html5-boilerplate", - "version": "4.3.0", - "_release": "4.3.0", + "version": "5.0.0", + "_release": "5.0.0", "_resolution": { "type": "version", - "tag": "v4.3.0", - "commit": "72cdf1e96c6506c76c51e53abc1f2bd224776649" + "tag": "v5.0.0", + "commit": "60a8ff033665e1207714d6670fcd7b65304ec02f" }, "_source": "git://github.com/h5bp/html5-boilerplate.git", "_target": "*", diff --git a/public/app/bower_components/html5-boilerplate/.editorconfig b/public/app/bower_components/html5-boilerplate/.editorconfig new file mode 100644 index 00000000..f6c80807 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/.editorconfig @@ -0,0 +1,22 @@ +# For more information about the properties used in +# this file, please see the EditorConfig documentation: +# http://editorconfig.org/ + +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_size = 4 +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false + +[{.travis.yml,package.json}] +# The indent size used in the `package.json` file cannot be changed +# https://github.com/npm/npm/pull/3180#issuecomment-16336516 +indent_size = 2 +indent_style = space diff --git a/public/app/bower_components/html5-boilerplate/.gitattributes b/public/app/bower_components/html5-boilerplate/.gitattributes index 21256661..cf911c10 100644 --- a/public/app/bower_components/html5-boilerplate/.gitattributes +++ b/public/app/bower_components/html5-boilerplate/.gitattributes @@ -1 +1,17 @@ -* text=auto \ No newline at end of file +# Automatically normalize line endings for all text-based files +# http://git-scm.com/docs/gitattributes#_end_of_line_conversion +* text=auto + +# For the following file types, normalize line endings to LF on +# checkin and prevent conversion to CRLF when they are checked out +# (this is required in order to prevent newline related issues like, +# for example, after the build script is run) +.* text eol=lf +*.css text eol=lf +*.html text eol=lf +*.js text eol=lf +*.json text eol=lf +*.md text eol=lf +*.sh text eol=lf +*.txt text eol=lf +*.xml text eol=lf diff --git a/public/app/bower_components/html5-boilerplate/.gitignore b/public/app/bower_components/html5-boilerplate/.gitignore index 16b2d7d0..9eb74bc7 100644 --- a/public/app/bower_components/html5-boilerplate/.gitignore +++ b/public/app/bower_components/html5-boilerplate/.gitignore @@ -1,2 +1,2 @@ -# Include your project-specific ignores in this file -# Read about how to use .gitignore: https://help.github.com/articles/ignoring-files +archive +node_modules diff --git a/public/app/bower_components/html5-boilerplate/.htaccess b/public/app/bower_components/html5-boilerplate/.htaccess deleted file mode 100644 index 6861adaa..00000000 --- a/public/app/bower_components/html5-boilerplate/.htaccess +++ /dev/null @@ -1,551 +0,0 @@ -# Apache Server Configs v1.1.0 | MIT License -# https://github.com/h5bp/server-configs-apache - -# (!) Using `.htaccess` files slows down Apache, therefore, if you have access -# to the main server config file (usually called `httpd.conf`), you should add -# this logic there: http://httpd.apache.org/docs/current/howto/htaccess.html. - -# ############################################################################## -# # CROSS-ORIGIN RESOURCE SHARING (CORS) # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Cross-domain AJAX requests | -# ------------------------------------------------------------------------------ - -# Enable cross-origin AJAX requests. -# http://code.google.com/p/html5security/wiki/CrossOriginRequestSecurity -# http://enable-cors.org/ - -# -# Header set Access-Control-Allow-Origin "*" -# - -# ------------------------------------------------------------------------------ -# | CORS-enabled images | -# ------------------------------------------------------------------------------ - -# Send the CORS header for images when browsers request it. -# https://developer.mozilla.org/en/CORS_Enabled_Image -# http://blog.chromium.org/2011/07/using-cross-domain-images-in-webgl-and.html -# http://hacks.mozilla.org/2011/11/using-cors-to-load-webgl-textures-from-cross-domain-images/ - - - - - SetEnvIf Origin ":" IS_CORS - Header set Access-Control-Allow-Origin "*" env=IS_CORS - - - - -# ------------------------------------------------------------------------------ -# | Web fonts access | -# ------------------------------------------------------------------------------ - -# Allow access from all domains for web fonts - - - - Header set Access-Control-Allow-Origin "*" - - - - -# ############################################################################## -# # ERRORS # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | 404 error prevention for non-existing redirected folders | -# ------------------------------------------------------------------------------ - -# Prevent Apache from returning a 404 error for a rewrite if a directory -# with the same name does not exist. -# http://httpd.apache.org/docs/current/content-negotiation.html#multiviews -# http://www.webmasterworld.com/apache/3808792.htm - -Options -MultiViews - -# ------------------------------------------------------------------------------ -# | Custom error messages / pages | -# ------------------------------------------------------------------------------ - -# You can customize what Apache returns to the client in case of an error (see -# http://httpd.apache.org/docs/current/mod/core.html#errordocument), e.g.: - -ErrorDocument 404 /404.html - - -# ############################################################################## -# # INTERNET EXPLORER # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Better website experience | -# ------------------------------------------------------------------------------ - -# Force IE to render pages in the highest available mode in the various -# cases when it may not: http://hsivonen.iki.fi/doctype/ie-mode.pdf. - - - Header set X-UA-Compatible "IE=edge" - # `mod_headers` can't match based on the content-type, however, we only - # want to send this header for HTML pages and not for the other resources - - Header unset X-UA-Compatible - - - -# ------------------------------------------------------------------------------ -# | Cookie setting from iframes | -# ------------------------------------------------------------------------------ - -# Allow cookies to be set from iframes in IE. - -# -# Header set P3P "policyref=\"/w3c/p3p.xml\", CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"" -# - -# ------------------------------------------------------------------------------ -# | Screen flicker | -# ------------------------------------------------------------------------------ - -# Stop screen flicker in IE on CSS rollovers (this only works in -# combination with the `ExpiresByType` directives for images from below). - -# BrowserMatch "MSIE" brokenvary=1 -# BrowserMatch "Mozilla/4.[0-9]{2}" brokenvary=1 -# BrowserMatch "Opera" !brokenvary -# SetEnvIf brokenvary 1 force-no-vary - - -# ############################################################################## -# # MIME TYPES AND ENCODING # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Proper MIME types for all files | -# ------------------------------------------------------------------------------ - - - - # Audio - AddType audio/mp4 m4a f4a f4b - AddType audio/ogg oga ogg - - # JavaScript - # Normalize to standard type (it's sniffed in IE anyways): - # http://tools.ietf.org/html/rfc4329#section-7.2 - AddType application/javascript js - AddType application/json json - - # Video - AddType video/mp4 mp4 m4v f4v f4p - AddType video/ogg ogv - AddType video/webm webm - AddType video/x-flv flv - - # Web fonts - AddType application/font-woff woff - AddType application/vnd.ms-fontobject eot - - # Browsers usually ignore the font MIME types and sniff the content, - # however, Chrome shows a warning if other MIME types are used for the - # following fonts. - AddType application/x-font-ttf ttc ttf - AddType font/opentype otf - - # Make SVGZ fonts work on iPad: - # https://twitter.com/FontSquirrel/status/14855840545 - AddType image/svg+xml svg svgz - AddEncoding gzip svgz - - # Other - AddType application/octet-stream safariextz - AddType application/x-chrome-extension crx - AddType application/x-opera-extension oex - AddType application/x-shockwave-flash swf - AddType application/x-web-app-manifest+json webapp - AddType application/x-xpinstall xpi - AddType application/xml atom rdf rss xml - AddType image/webp webp - AddType image/x-icon ico - AddType text/cache-manifest appcache manifest - AddType text/vtt vtt - AddType text/x-component htc - AddType text/x-vcard vcf - - - -# ------------------------------------------------------------------------------ -# | UTF-8 encoding | -# ------------------------------------------------------------------------------ - -# Use UTF-8 encoding for anything served as `text/html` or `text/plain`. -AddDefaultCharset utf-8 - -# Force UTF-8 for certain file formats. - - AddCharset utf-8 .atom .css .js .json .rss .vtt .webapp .xml - - - -# ############################################################################## -# # URL REWRITES # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Rewrite engine | -# ------------------------------------------------------------------------------ - -# Turning on the rewrite engine and enabling the `FollowSymLinks` option is -# necessary for the following directives to work. - -# If your web host doesn't allow the `FollowSymlinks` option, you may need to -# comment it out and use `Options +SymLinksIfOwnerMatch` but, be aware of the -# performance impact: http://httpd.apache.org/docs/current/misc/perf-tuning.html#symlinks - -# Also, some cloud hosting services require `RewriteBase` to be set: -# http://www.rackspace.com/knowledge_center/frequently-asked-question/why-is-mod-rewrite-not-working-on-my-site - - - Options +FollowSymlinks - # Options +SymLinksIfOwnerMatch - RewriteEngine On - # RewriteBase / - - -# ------------------------------------------------------------------------------ -# | Suppressing / Forcing the "www." at the beginning of URLs | -# ------------------------------------------------------------------------------ - -# The same content should never be available under two different URLs especially -# not with and without "www." at the beginning. This can cause SEO problems -# (duplicate content), therefore, you should choose one of the alternatives and -# redirect the other one. - -# By default option 1 (no "www.") is activated: -# http://no-www.org/faq.php?q=class_b - -# If you'd prefer to use option 2, just comment out all the lines from option 1 -# and uncomment the ones from option 2. - -# IMPORTANT: NEVER USE BOTH RULES AT THE SAME TIME! - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Option 1: rewrite www.example.com → example.com - - - RewriteCond %{HTTPS} !=on - RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] - RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L] - - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Option 2: rewrite example.com → www.example.com - -# Be aware that the following might not be a good idea if you use "real" -# subdomains for certain parts of your website. - -# -# RewriteCond %{HTTPS} !=on -# RewriteCond %{HTTP_HOST} !^www\..+$ [NC] -# RewriteCond %{HTTP_HOST} !=localhost [NC] -# RewriteCond %{HTTP_HOST} !=127.0.0.1 -# RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] -# - - -# ############################################################################## -# # SECURITY # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Content Security Policy (CSP) | -# ------------------------------------------------------------------------------ - -# You can mitigate the risk of cross-site scripting and other content-injection -# attacks by setting a Content Security Policy which whitelists trusted sources -# of content for your site. - -# The example header below allows ONLY scripts that are loaded from the current -# site's origin (no inline scripts, no CDN, etc). This almost certainly won't -# work as-is for your site! - -# To get all the details you'll need to craft a reasonable policy for your site, -# read: http://html5rocks.com/en/tutorials/security/content-security-policy (or -# see the specification: http://w3.org/TR/CSP). - -# -# Header set Content-Security-Policy "script-src 'self'; object-src 'self'" -# -# Header unset Content-Security-Policy -# -# - -# ------------------------------------------------------------------------------ -# | File access | -# ------------------------------------------------------------------------------ - -# Block access to directories without a default document. -# Usually you should leave this uncommented because you shouldn't allow anyone -# to surf through every directory on your server (which may includes rather -# private places like the CMS's directories). - - - Options -Indexes - - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Block access to hidden files and directories. -# This includes directories used by version control systems such as Git and SVN. - - - RewriteCond %{SCRIPT_FILENAME} -d [OR] - RewriteCond %{SCRIPT_FILENAME} -f - RewriteRule "(^|/)\." - [F] - - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Block access to backup and source files. -# These files may be left by some text editors and can pose a great security -# danger when anyone has access to them. - - - Order allow,deny - Deny from all - Satisfy All - - -# ------------------------------------------------------------------------------ -# | Secure Sockets Layer (SSL) | -# ------------------------------------------------------------------------------ - -# Rewrite secure requests properly to prevent SSL certificate warnings, e.g.: -# prevent `https://www.example.com` when your certificate only allows -# `https://secure.example.com`. - -# -# RewriteCond %{SERVER_PORT} !^443 -# RewriteRule ^ https://example-domain-please-change-me.com%{REQUEST_URI} [R=301,L] -# - -# ------------------------------------------------------------------------------ -# | HTTP Strict Transport Security (HSTS) | -# ------------------------------------------------------------------------------ - -# Force client-side SSL redirection. - -# If a user types "example.com" in his browser, the above rule will redirect -# him to the secure version of the site. That still leaves a window of oppor- -# tunity (the initial HTTP connection) for an attacker to downgrade or redirect -# the request. The following header ensures that browser will ONLY connect to -# your server via HTTPS, regardless of what the users type in the address bar. -# http://tools.ietf.org/html/draft-ietf-websec-strict-transport-sec-14#section-6.1 -# http://www.html5rocks.com/en/tutorials/security/transport-layer-security/ - -# (!) Remove the `includeSubDomains` optional directive if the subdomains are -# not using HTTPS. - -# -# Header set Strict-Transport-Security "max-age=16070400; includeSubDomains" -# - -# ------------------------------------------------------------------------------ -# | Server software information | -# ------------------------------------------------------------------------------ - -# Avoid displaying the exact Apache version number, the description of the -# generic OS-type and the information about Apache's compiled-in modules. - -# ADD THIS DIRECTIVE IN THE `httpd.conf` AS IT WILL NOT WORK IN THE `.htaccess`! - -# ServerTokens Prod - - -# ############################################################################## -# # WEB PERFORMANCE # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Compression | -# ------------------------------------------------------------------------------ - - - - # Force compression for mangled headers. - # http://developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping - - - SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding - RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding - - - - # Compress all output labeled with one of the following MIME-types - # (for Apache versions below 2.3.7, you don't need to enable `mod_filter` - # and can remove the `` and `` lines - # as `AddOutputFilterByType` is still in the core directives). - - AddOutputFilterByType DEFLATE application/atom+xml \ - application/javascript \ - application/json \ - application/rss+xml \ - application/vnd.ms-fontobject \ - application/x-font-ttf \ - application/x-web-app-manifest+json \ - application/xhtml+xml \ - application/xml \ - font/opentype \ - image/svg+xml \ - image/x-icon \ - text/css \ - text/html \ - text/plain \ - text/x-component \ - text/xml - - - - -# ------------------------------------------------------------------------------ -# | Content transformations | -# ------------------------------------------------------------------------------ - -# Prevent some of the mobile network providers from modifying the content of -# your site: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.5. - -# -# Header set Cache-Control "no-transform" -# - -# ------------------------------------------------------------------------------ -# | ETag removal | -# ------------------------------------------------------------------------------ - -# Since we're sending far-future expires headers (see below), ETags can -# be removed: http://developer.yahoo.com/performance/rules.html#etags. - -# `FileETag None` is not enough for every server. - - Header unset ETag - - -FileETag None - -# ------------------------------------------------------------------------------ -# | Expires headers (for better cache control) | -# ------------------------------------------------------------------------------ - -# The following expires headers are set pretty far in the future. If you don't -# control versioning with filename-based cache busting, consider lowering the -# cache time for resources like CSS and JS to something like 1 week. - - - - ExpiresActive on - ExpiresDefault "access plus 1 month" - - # CSS - ExpiresByType text/css "access plus 1 year" - - # Data interchange - ExpiresByType application/json "access plus 0 seconds" - ExpiresByType application/xml "access plus 0 seconds" - ExpiresByType text/xml "access plus 0 seconds" - - # Favicon (cannot be renamed!) - ExpiresByType image/x-icon "access plus 1 week" - - # HTML components (HTCs) - ExpiresByType text/x-component "access plus 1 month" - - # HTML - ExpiresByType text/html "access plus 0 seconds" - - # JavaScript - ExpiresByType application/javascript "access plus 1 year" - - # Manifest files - ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds" - ExpiresByType text/cache-manifest "access plus 0 seconds" - - # Media - ExpiresByType audio/ogg "access plus 1 month" - ExpiresByType image/gif "access plus 1 month" - ExpiresByType image/jpeg "access plus 1 month" - ExpiresByType image/png "access plus 1 month" - ExpiresByType video/mp4 "access plus 1 month" - ExpiresByType video/ogg "access plus 1 month" - ExpiresByType video/webm "access plus 1 month" - - # Web feeds - ExpiresByType application/atom+xml "access plus 1 hour" - ExpiresByType application/rss+xml "access plus 1 hour" - - # Web fonts - ExpiresByType application/font-woff "access plus 1 month" - ExpiresByType application/vnd.ms-fontobject "access plus 1 month" - ExpiresByType application/x-font-ttf "access plus 1 month" - ExpiresByType font/opentype "access plus 1 month" - ExpiresByType image/svg+xml "access plus 1 month" - - - -# ------------------------------------------------------------------------------ -# | Filename-based cache busting | -# ------------------------------------------------------------------------------ - -# If you're not using a build process to manage your filename version revving, -# you might want to consider enabling the following directives to route all -# requests such as `/css/style.12345.css` to `/css/style.css`. - -# To understand why this is important and a better idea than `*.css?v231`, read: -# http://stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring - -# -# RewriteCond %{REQUEST_FILENAME} !-f -# RewriteRule ^(.+)\.(\d+)\.(js|css|png|jpg|gif)$ $1.$3 [L] -# - -# ------------------------------------------------------------------------------ -# | File concatenation | -# ------------------------------------------------------------------------------ - -# Allow concatenation from within specific CSS and JS files, e.g.: -# Inside of `script.combined.js` you could have -# -# -# and they would be included into this single file. - -# -# -# Options +Includes -# AddOutputFilterByType INCLUDES application/javascript application/json -# SetOutputFilter INCLUDES -# -# -# Options +Includes -# AddOutputFilterByType INCLUDES text/css -# SetOutputFilter INCLUDES -# -# - -# ------------------------------------------------------------------------------ -# | Persistent connections | -# ------------------------------------------------------------------------------ - -# Allow multiple requests to be sent over the same TCP connection: -# http://httpd.apache.org/docs/current/en/mod/core.html#keepalive. - -# Enable if you serve a lot of static content but, be aware of the -# possible disadvantages! - -# -# Header set Connection Keep-Alive -# diff --git a/public/app/bower_components/html5-boilerplate/.jscsrc b/public/app/bower_components/html5-boilerplate/.jscsrc new file mode 100644 index 00000000..a83f173d --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/.jscsrc @@ -0,0 +1,68 @@ +{ + "disallowEmptyBlocks": true, + "disallowKeywords": [ + "with" + ], + "disallowMixedSpacesAndTabs": true, + "disallowMultipleLineStrings": true, + "disallowMultipleVarDecl": true, + "disallowSpaceAfterPrefixUnaryOperators": [ + "!", + "+", + "++", + "-", + "--", + "~" + ], + "disallowSpaceBeforeBinaryOperators": [ + "," + ], + "disallowSpaceBeforePostfixUnaryOperators": true, + "disallowSpacesInNamedFunctionExpression": { + "beforeOpeningRoundBrace": true + }, + "disallowSpacesInsideArrayBrackets": true, + "disallowSpacesInsideParentheses": true, + "disallowTrailingComma": true, + "disallowTrailingWhitespace": true, + "requireCamelCaseOrUpperCaseIdentifiers": true, + "requireCapitalizedConstructors": true, + "requireCommaBeforeLineBreak": true, + "requireCurlyBraces": true, + "requireDotNotation": true, + "requireLineFeedAtFileEnd": true, + "requireParenthesesAroundIIFE": true, + "requireSpaceAfterBinaryOperators": true, + "requireSpaceAfterKeywords": [ + "catch", + "do", + "else", + "for", + "if", + "return", + "switch", + "try", + "while" + ], + "requireSpaceAfterLineComment": true, + "requireSpaceBeforeBinaryOperators": true, + "requireSpaceBeforeBlockStatements": true, + "requireSpacesInAnonymousFunctionExpression": { + "beforeOpeningCurlyBrace": true + }, + "requireSpacesInConditionalExpression": true, + "requireSpacesInFunctionDeclaration": { + "beforeOpeningCurlyBrace": true + }, + "requireSpacesInFunctionExpression": { + "beforeOpeningCurlyBrace": true + }, + "requireSpacesInNamedFunctionExpression": { + "beforeOpeningCurlyBrace": true + }, + "requireSpacesInsideObjectBrackets": "allButNested", + "validateIndentation": 4, + "validateLineBreaks": "LF", + "validateParameterSeparator": ", ", + "validateQuoteMarks": "'" +} diff --git a/public/app/bower_components/html5-boilerplate/.jshintrc b/public/app/bower_components/html5-boilerplate/.jshintrc new file mode 100644 index 00000000..8b2a0be4 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/.jshintrc @@ -0,0 +1,32 @@ +{ + + // Enforcing options + // http://www.jshint.com/docs/options/#enforcing-options + + "bitwise": true, + "eqeqeq": true, + "forin": true, + "latedef": true, + "noarg": true, + "nonbsp": true, + "nonew": true, + "undef": true, + "unused": true, + + // - - - - - - - - - - - - - - - - - - - - - - - - - - - + + // Relaxing options + // http://www.jshint.com/docs/options/#relaxing-options + + "esnext": true, + + // - - - - - - - - - - - - - - - - - - - - - - - - - - - + + // Environments + // http://www.jshint.com/docs/options/#environments + + "browser": true, + "jquery": true, + "node": true + +} diff --git a/public/app/bower_components/html5-boilerplate/.travis.yml b/public/app/bower_components/html5-boilerplate/.travis.yml new file mode 100644 index 00000000..922330a7 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/.travis.yml @@ -0,0 +1,62 @@ +# For more information about the configurations used +# in this file, please see the Travis CI documentation: +# http://docs.travis-ci.com + +after_success: + + # If the tests past, Travis will automatically download and execute + # the following script(s). + + # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + # The `commit_build_changes.sh` script will run `npm run build`, + # and if that generates changes, it will commit them to the `master` + # branch: + # + # * ensuring that the content from the `dist/` directory is always + # in sync with the rest of the content + # + # * removing the need to execute the build step locally everytime + # a change is made (especially in the case of trivial changes + # such as typos) + # + # Note: The `commit_build_changes.sh` script will only run if the + # commit was made to the `master` branch. + + - curl -sSL "https://raw.githubusercontent.com/h5bp-bot/scripts/0.6.0/commit_build_changes.sh" | + bash -s -- --branch "master" + --commands "npm install && npm run build" + --commit-message "Update content from the \`dist\` directory [skip ci]" + +env: + global: + + # The `secure` key contains three encrypted environment variables + # (GH_TOKEN, GH_USER_EMAIL and GH_USER_NAME), the values of which + # are used by the scripts that are automatically executed by Travis. + # + # Note: The `secure` key will only work for this repository, so if + # you create your own fork, you will need to generate your own key: + # + # travis encrypt -r "/" \ + # GH_TOKEN="" \ + # GH_USER_EMAIL="" \ + # GH_USER_NAME="" + # + # To learn more about how to generate the: + # + # * `secure` key, see: + # http://docs.travis-ci.com/user/encryption-keys/ + # + # * GitHub access token, see: + # https://help.github.com/articles/creating-an-access-token-for-command-line-use/ + + - secure: "mkLhS1ajE7gYNUdHsAfcW6vU9THb2DmPA01PQlXz2y/F3Ld0IwEpqrGGLWyg9ZSYr0g7xq+M46pPiZsfZgCYSLv0flA/RFLmiXcVQfap3BZf8sqTtE3M9AHuy9sxUgus2M9GA7Wupws2KC2PXZM0OT12GSSOCYQCLD3ySD4b4mE=" + +git: + depth: 10 + +language: node_js + +node_js: + - "0.10" diff --git a/public/app/bower_components/html5-boilerplate/404.html b/public/app/bower_components/html5-boilerplate/404.html deleted file mode 100644 index fdace4ab..00000000 --- a/public/app/bower_components/html5-boilerplate/404.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - Page Not Found :( - - - -
-

Not found :(

-

Sorry, but the page you were trying to view does not exist.

-

It looks like this was the result of either:

-
    -
  • a mistyped address
  • -
  • an out-of-date link
  • -
- - -
- - diff --git a/public/app/bower_components/html5-boilerplate/CHANGELOG.md b/public/app/bower_components/html5-boilerplate/CHANGELOG.md index 90a0a3bf..a937640c 100644 --- a/public/app/bower_components/html5-boilerplate/CHANGELOG.md +++ b/public/app/bower_components/html5-boilerplate/CHANGELOG.md @@ -1,23 +1,83 @@ -### HEAD +### 5.0 + +* Update to jQuery 1.11.2. +* Update Apache Server Configs to v2.11.0. +* Rename Apple touch icon to `apple-touch-icon.png` and add + `` in `index.html` + ([#1622](https://github.com/h5bp/html5-boilerplate/issues/1622)). +* Add vertical centering for `iframe` + ([#1613](https://github.com/h5bp/html5-boilerplate/issues/1613)). +* Change the outdated browser prompt classname to `browserupgrade` + ([#1608](https://github.com/h5bp/html5-boilerplate/issues/1608)). +* Update to Normalize.css 3.0.2. + ([#1050](https://github.com/h5bp/html5-boilerplate/issues/1050)). +* Update `apple-touch-icon-precomposed.png` and the _"Apple touch + icons"_ related documentation + ([#1599](https://github.com/h5bp/html5-boilerplate/pull/1599)). +* Add pseudo-elements to universal selector in print media query + ([#1585](https://github.com/h5bp/html5-boilerplate/pull/1585)). +* Update to Modernizr 2.8.3. +* Remove need to readjust margins in `404.html` + ([#1567](https://github.com/h5bp/html5-boilerplate/pull/1567)). +* Add `/.editorconfig` file + ([#1561](https://github.com/h5bp/html5-boilerplate/issues/1561), + [#1564](https://github.com/h5bp/html5-boilerplate/issues/1564)). +* Add `auto` to the Google Universal Analytics tracker create method + ([#1562](https://github.com/h5bp/html5-boilerplate/issues/1562)). +* Add `timeline` and `timelineEnd` to the list of `console` methods + ([#1559](https://github.com/h5bp/html5-boilerplate/issues/1559)). +* Add `lang=""` to `` + ([#1542](https://github.com/h5bp/html5-boilerplate/issues/1542)). +* Use `` instead of `` + ([#1522](https://github.com/h5bp/html5-boilerplate/issues/1522)). +* Add `/browserconfig.xml` file and tile images + ([#1481](https://github.com/h5bp/html5-boilerplate/issues/1481)). +* Add `Disallow:` to `robots.txt` + ([#1487](https://github.com/h5bp/html5-boilerplate/issues/1487)). +* Remove default foreground color from form elements + ([#1390](https://github.com/h5bp/html5-boilerplate/issues/1390)). +* Remove default margin from print styles + ([#1477](https://github.com/h5bp/html5-boilerplate/issues/1477)). +* Remove image replacement helper class `.ir` + ([#1472](https://github.com/h5bp/html5-boilerplate/issues/1472), + [#1475](https://github.com/h5bp/html5-boilerplate/issues/1475)). +* Add vertical centering for `svg` + ([#1453](https://github.com/h5bp/html5-boilerplate/issues/1453)). +* Redesign 404 page + ([#1443](https://github.com/h5bp/html5-boilerplate/pull/1443)). +* Remove IE 6/7 hacks from `main.css` + ([#1050](https://github.com/h5bp/html5-boilerplate/issues/1050)). +* Remove IE conditional classes + ([#1187](https://github.com/h5bp/html5-boilerplate/issues/1187), + [#1290](https://github.com/h5bp/html5-boilerplate/issues/1290)). ### 4.3.0 (September 10, 2013) -* Use one apple-touch-icon instead of six ([#1367](https://github.com/h5bp/html5-boilerplate/issues/1367)). -* Move font-related declarations from `body` to `html` ([#1411](https://github.com/h5bp/html5-boilerplate/issues/1411)). +* Use one `apple-touch-icon` instead of six + ([#1367](https://github.com/h5bp/html5-boilerplate/issues/1367)). +* Move font-related declarations from `body` to `html` + ([#1411](https://github.com/h5bp/html5-boilerplate/issues/1411)). * Update to Apache Server Configs 1.1.0. -* Add `initial-scale=1` to the viewport `meta` ([#1398](https://github.com/h5bp/html5-boilerplate/pull/1398)). -* Vertical centering for audio-, canvas- and video-tags ([#1326](https://github.com/h5bp/html5-boilerplate/issues/1326)). -* Remove Google Chrome Frame related code ([#1379](https://github.com/h5bp/html5-boilerplate/pull/1379), [#1396](https://github.com/h5bp/html5-boilerplate/pull/1396)). -* Update to Google Universal Analytics ([#1347](https://github.com/h5bp/html5-boilerplate/issues/1347)). +* Add `initial-scale=1` to the viewport `meta` + ([#1398](https://github.com/h5bp/html5-boilerplate/pull/1398)). +* Vertical centering for audio-, canvas- and video-tags + ([#1326](https://github.com/h5bp/html5-boilerplate/issues/1326)). +* Remove Google Chrome Frame related code + ([#1379](https://github.com/h5bp/html5-boilerplate/pull/1379), + [#1396](https://github.com/h5bp/html5-boilerplate/pull/1396)). +* Update to Google Universal Analytics + ([#1347](https://github.com/h5bp/html5-boilerplate/issues/1347)). * Update to jQuery 1.10.2. * Update to Normalize.css 1.1.3. ### 4.2.0 (April 8, 2013) -* Remove Google Analytics protocol check ([#1319](https://github.com/h5bp/html5-boilerplate/pull/1319)). +* Remove Google Analytics protocol check + ([#1319](https://github.com/h5bp/html5-boilerplate/pull/1319)). * Update to Normalize.css 1.1.1. -* Update Apache configurations to include the latest changes in the canonical - [`.htaccess`](https://github.com/h5bp/server-configs-apache) file. +* Update Apache configurations to include the latest changes in the + canonical [`.htaccess`](https://github.com/h5bp/server-configs-apache) + file. * Use a protocol relative URL for the 404 template script. * Update to jQuery 1.9.1. @@ -28,10 +88,14 @@ ### 4.0.3 (January 12, 2013) -* Use 32x32 favicon.ico ([#1286](https://github.com/h5bp/html5-boilerplate/pull/1286)). -* Remove named function expression in plugins.js ([#1280](https://github.com/h5bp/html5-boilerplate/pull/1280)). -* Adjust CSS image-replacement code ([#1239](https://github.com/h5bp/html5-boilerplate/issues/1239)). -* Update HiDPI example media query ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)). +* Use 32x32 favicon.ico + ([#1286](https://github.com/h5bp/html5-boilerplate/pull/1286)). +* Remove named function expression in plugins.js + ([#1280](https://github.com/h5bp/html5-boilerplate/pull/1280)). +* Adjust CSS image-replacement code + ([#1239](https://github.com/h5bp/html5-boilerplate/issues/1239)). +* Update HiDPI example media query + ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)). ### 4.0.2 (December 9, 2012) @@ -41,28 +105,43 @@ ### 4.0.1 (October 20, 2012) -* Further improvements to `console` method stubbing ([#1206](https://github.com/h5bp/html5-boilerplate/issues/1206), [#1229](https://github.com/h5bp/html5-boilerplate/pull/1229)). +* Further improvements to `console` method stubbing + ([#1206](https://github.com/h5bp/html5-boilerplate/issues/1206), + [#1229](https://github.com/h5bp/html5-boilerplate/pull/1229)). * Update to jQuery 1.8.2. * Update to Modernizr 2.6.2. * Minor additions to the documentation. ### 4.0.0 (August 28, 2012) -* Improve the Apache compression configuration ([#1012](https://github.com/h5bp/html5-boilerplate/issues/1012), [#1173](https://github.com/h5bp/html5-boilerplate/issues/1173)). -* Add a HiDPI example media query ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)). -* Add bundled docs ([#1154](https://github.com/h5bp/html5-boilerplate/issues/1154)). -* Add MIT license ([#1139](https://github.com/h5bp/html5-boilerplate/issues/1139)). +* Improve the Apache compression configuration + ([#1012](https://github.com/h5bp/html5-boilerplate/issues/1012), + [#1173](https://github.com/h5bp/html5-boilerplate/issues/1173)). +* Add a HiDPI example media query + ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)). +* Add bundled docs + ([#1154](https://github.com/h5bp/html5-boilerplate/issues/1154)). +* Add MIT license + ([#1139](https://github.com/h5bp/html5-boilerplate/issues/1139)). * Update to Normalize.css 1.0.1. -* Separate Normalize.css from the rest of the CSS ([#1160](https://github.com/h5bp/html5-boilerplate/issues/1160)). -* Improve `console.log` protection ([#1107](https://github.com/h5bp/html5-boilerplate/issues/1107)). +* Separate Normalize.css from the rest of the CSS + ([#1160](https://github.com/h5bp/html5-boilerplate/issues/1160)). +* Improve `console.log` protection + ([#1107](https://github.com/h5bp/html5-boilerplate/issues/1107)). * Replace hot pink text selection color with a neutral color. -* Change image replacement technique ([#1149](https://github.com/h5bp/html5-boilerplate/issues/1149)). -* Code format and consistency changes ([#1112](https://github.com/h5bp/html5-boilerplate/issues/1112)). +* Change image replacement technique + ([#1149](https://github.com/h5bp/html5-boilerplate/issues/1149)). +* Code format and consistency changes + ([#1112](https://github.com/h5bp/html5-boilerplate/issues/1112)). * Rename CSS file and rename JS files and subdirectories. -* Update to jQuery 1.8 ([#1161](https://github.com/h5bp/html5-boilerplate/issues/1161)). -* Update to Modernizr 2.6.1 ([#1086](https://github.com/h5bp/html5-boilerplate/issues/1086)). -* Remove uncompressed jQuery ([#1153](https://github.com/h5bp/html5-boilerplate/issues/1153)). -* Remove superfluous inline comments ([#1150](https://github.com/h5bp/html5-boilerplate/issues/1150)). +* Update to jQuery 1.8 + ([#1161](https://github.com/h5bp/html5-boilerplate/issues/1161)). +* Update to Modernizr 2.6.1 + ([#1086](https://github.com/h5bp/html5-boilerplate/issues/1086)). +* Remove uncompressed jQuery + ([#1153](https://github.com/h5bp/html5-boilerplate/issues/1153)). +* Remove superfluous inline comments + ([#1150](https://github.com/h5bp/html5-boilerplate/issues/1150)). ### 3.0.2 (February 19, 2012) @@ -77,42 +156,60 @@ * Improvements to `.htaccess`. * Improve 404 design. * Simplify JS folder structure. -* Change `html` IE class names changed to target ranges rather than specific versions of IE. -* Update CSS to include latest normalize.css changes and better typographic defaults ([#825](https://github.com/h5bp/html5-boilerplate/issues/825)). +* Change `html` IE class names changed to target ranges rather than + specific versions of IE. +* Update CSS to include latest normalize.css changes and better + typographic defaults + ([#825](https://github.com/h5bp/html5-boilerplate/issues/825)). * Update to Modernizr 2.5 (includes yepnope 1.5 and html5shiv 3.2). * Update to jQuery 1.7.1. * Revert to async snippet for the Google Analytics script. -* Remove the ant build script ([#826](https://github.com/h5bp/html5-boilerplate/issues/826)). -* Remove Respond.js ([#816](https://github.com/h5bp/html5-boilerplate/issues/816)). -* Remove the `demo/` directory ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)). -* Remove the `test/` directory ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)). -* Remove Google Chrome Frame script for IE6 users; replace with links to Chrome Frame and options for alternative browsers. -* Remove `initial-scale=1` from the viewport `meta` ([#824](https://github.com/h5bp/html5-boilerplate/issues/824)). +* Remove the ant build script + ([#826](https://github.com/h5bp/html5-boilerplate/issues/826)). +* Remove Respond.js + ([#816](https://github.com/h5bp/html5-boilerplate/issues/816)). +* Remove the `demo/` directory + ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)). +* Remove the `test/` directory + ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)). +* Remove Google Chrome Frame script for IE6 users; replace with links + to Chrome Frame and options for alternative browsers. +* Remove `initial-scale=1` from the viewport `meta` + ([#824](https://github.com/h5bp/html5-boilerplate/issues/824)). * Remove `defer` from all scripts to avoid legacy IE bugs. -* Remove explicit Site Speed tracking for Google Analytics. It's now enabled by default. +* Remove explicit Site Speed tracking for Google Analytics. It's now + enabled by default. ### 2.0.0 (August 10, 2011) -* Change starting CSS to be based on normalize.css instead of reset.css ([#500](https://github.com/h5bp/html5-boilerplate/issues/500)). +* Change starting CSS to be based on normalize.css instead of reset.css + ([#500](https://github.com/h5bp/html5-boilerplate/issues/500)). * Add Respond.js media query polyfill. * Add Google Chrome Frame script prompt for IE6 users. -* Simplify the `html` conditional comments for modern browsers and add an `oldie` class. +* Simplify the `html` conditional comments for modern browsers and add + an `oldie` class. * Update clearfix to use "micro clearfix". * Add placeholder CSS MQs for mobile-first approach. * Add `textarea { resize: vertical; }` to only allow vertical resizing. -* Add `img { max-width: 100%; }` to the print styles; prevents images being truncated. +* Add `img { max-width: 100%; }` to the print styles; prevents images + being truncated. * Add Site Speed tracking for Google Analytics. * Update to jQuery 1.6.2 (and use minified by default). -* Update to Modernizr 2.0 Complete, Production minified (includes yepnope, html5shiv, and Respond.js). +* Update to Modernizr 2.0 Complete, Production minified (includes + yepnope, html5shiv, and Respond.js). * Use `Modernizr.load()` to load the Google Analytics script. * Much faster build process. * Add build script options for CSSLint, JSLint, JSHint tools. * Build script now compresses all images in subfolders. * Build script now versions files by SHA hash. -* Many `.htaccess` improvements including: disable directory browsing, improved support for all versions of Apache, more robust and extensive HTTP compression rules. +* Many `.htaccess` improvements including: disable directory browsing, + improved support for all versions of Apache, more robust and extensive + HTTP compression rules. * Remove `handheld.css` as it has very poor device support. -* Remove touch-icon `link` elements from the HTML and include improved touch-icon support. -* Remove the cache-busting query paramaters from files references in the HTML. +* Remove touch-icon `link` elements from the HTML and include improved + touch-icon support. +* Remove the cache-busting query paramaters from files references in + the HTML. * Remove IE6 PNGFix. ### 1.0.0 (March 21, 2011) @@ -120,8 +217,10 @@ * Rewrite build script to make it more customizable and flexible. * Add a humans.txt. * Numerous `.htaccess` improvements (including inline documentation). -* Move the alternative server configurations to the H5BP server configs repo. -* Use a protocol-relative url to reference jQuery and prevent mixed content warnings. +* Move the alternative server configurations to the H5BP server configs + repo. +* Use a protocol-relative url to reference jQuery and prevent mixed + content warnings. * Optimize the Google Analytics snippet. * Use Eric Meyer's recent CSS reset update and the HTML5 Doctor reset. * More robust `sub`/`sup` CSS styles. diff --git a/public/app/bower_components/html5-boilerplate/CONTRIBUTING.md b/public/app/bower_components/html5-boilerplate/CONTRIBUTING.md index 89c63e1d..e8335c00 100644 --- a/public/app/bower_components/html5-boilerplate/CONTRIBUTING.md +++ b/public/app/bower_components/html5-boilerplate/CONTRIBUTING.md @@ -20,8 +20,7 @@ and [submitting pull requests](#pull-requests), but please respect the following restrictions: * Please **do not** use the issue tracker for personal support requests (use - [Stack Overflow](http://stackoverflow.com/questions/tagged/html5boilerplate) - or IRC). + [Stack Overflow](https://stackoverflow.com/questions/tagged/html5boilerplate)). * Please **do not** derail or troll issues. Keep the discussion on topic and respect the opinions of others. @@ -100,11 +99,11 @@ project's developers might not want to merge into the project. Please adhere to the coding conventions used throughout a project (indentation, accurate comments, etc.) and any other requirements (such as test coverage). -Adhering to the following this process is the best way to get your work +Adhering to the following process is the best way to get your work included in the project: -1. [Fork](http://help.github.com/fork-a-repo/) the project, clone your fork, - and configure the remotes: +1. [Fork](https://help.github.com/articles/fork-a-repo) the project, clone your + fork, and configure the remotes: ```bash # Clone your fork of the repo into the current directory @@ -132,7 +131,7 @@ included in the project: 4. Commit your changes in logical chunks. Please adhere to these [git commit message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) or your code is unlikely be merged into the main project. Use Git's - [interactive rebase](https://help.github.com/articles/interactive-rebase) + [interactive rebase](https://help.github.com/articles/about-git-rebase) feature to tidy up your commits before making them public. 5. Locally merge (or rebase) the upstream development branch into your topic branch: @@ -151,4 +150,4 @@ included in the project: with a clear title and description. **IMPORTANT**: By submitting a patch, you agree to allow the project owners to -license your work under the the terms of the [MIT License](LICENSE.md). +license your work under the terms of the [MIT License](LICENSE.md). diff --git a/public/app/bower_components/html5-boilerplate/README.md b/public/app/bower_components/html5-boilerplate/README.md index 55830a77..e05ab7ea 100644 --- a/public/app/bower_components/html5-boilerplate/README.md +++ b/public/app/bower_components/html5-boilerplate/README.md @@ -1,5 +1,8 @@ # [HTML5 Boilerplate](http://html5boilerplate.com) +[![Build Status](https://travis-ci.org/h5bp/html5-boilerplate.svg)](https://travis-ci.org/h5bp/html5-boilerplate) +[![devDependency Status](https://david-dm.org/h5bp/html5-boilerplate/dev-status.svg)](https://david-dm.org/h5bp/html5-boilerplate#info=devDependencies) + HTML5 Boilerplate is a professional front-end template for building fast, robust, and adaptable web apps or sites. @@ -9,7 +12,7 @@ framework, so you're free to architect your code in the way that you want. * Source: [https://github.com/h5bp/html5-boilerplate](https://github.com/h5bp/html5-boilerplate) * Homepage: [http://html5boilerplate.com](http://html5boilerplate.com) -* Twitter: [@h5bp](http://twitter.com/h5bp) +* Twitter: [@h5bp](https://twitter.com/h5bp) ## Quick start @@ -20,36 +23,38 @@ Choose one of the following options: [html5boilerplate.com](http://html5boilerplate.com/) or a custom build from [Initializr](http://www.initializr.com). 2. Clone the git repo — `git clone - https://github.com/h5bp/html5-boilerplate.git` - and checkout the tagged - release you'd like to use. + https://github.com/h5bp/html5-boilerplate.git` - and checkout the [tagged + release](https://github.com/h5bp/html5-boilerplate/releases) you'd like to + use. ## Features * HTML5 ready. Use the new elements with confidence. -* Cross-browser compatible (Chrome, Opera, Safari, Firefox 3.6+, IE6+). +* Cross-browser compatible (Chrome, Firefox, IE8+, Opera, Safari). * Designed with progressive enhancement in mind. * Includes [Normalize.css](http://necolas.github.com/normalize.css/) for CSS normalizations and common bug fixes. -* The latest [jQuery](http://jquery.com/) via CDN, with a local fallback. +* The latest [jQuery](https://jquery.com/) via CDN, with a local fallback. * The latest [Modernizr](http://modernizr.com/) build for feature detection. -* IE-specific classes for easier cross-browser control. * Placeholder CSS Media Queries. * Useful CSS helpers. * Default print CSS, performance optimized. -* Protection against any stray `console.log` causing JavaScript errors in - IE6/7. +* Protection against any stray `console` statements causing JavaScript errors + in older browsers. * An optimized Google Analytics snippet. * Apache server caching, compression, and other configuration defaults for Grade-A performance. -* Cross-domain Ajax and Flash. * "Delete-key friendly." Easy to strip out parts you don't need. * Extensive inline and accompanying documentation. +[HTML5 Boilerplate v4 provides legacy browser +support](https://github.com/h5bp/html5-boilerplate/tree/v4) (IE 6+, Firefox +3.6+, Safari 4+), but is no longer actively developed. ## Documentation -Take a look at the [documentation table of contents](doc/TOC.md). This +Take a look at the [documentation table of contents](dist/doc/TOC.md). This documentation is bundled with the project, which makes it readily available for offline reading and provides a useful starting point for any documentation you want to write about your project. diff --git a/public/app/bower_components/html5-boilerplate/apple-touch-icon-precomposed.png b/public/app/bower_components/html5-boilerplate/apple-touch-icon-precomposed.png deleted file mode 100644 index 1ea85edc..00000000 Binary files a/public/app/bower_components/html5-boilerplate/apple-touch-icon-precomposed.png and /dev/null differ diff --git a/public/app/bower_components/html5-boilerplate/css/normalize.css b/public/app/bower_components/html5-boilerplate/css/normalize.css deleted file mode 100644 index 42e24d68..00000000 --- a/public/app/bower_components/html5-boilerplate/css/normalize.css +++ /dev/null @@ -1,527 +0,0 @@ -/*! normalize.css v1.1.3 | MIT License | git.io/normalize */ - -/* ========================================================================== - HTML5 display definitions - ========================================================================== */ - -/** - * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3. - */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -nav, -section, -summary { - display: block; -} - -/** - * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. - */ - -audio, -canvas, -video { - display: inline-block; - *display: inline; - *zoom: 1; -} - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4. - * Known issue: no IE 6 support. - */ - -[hidden] { - display: none; -} - -/* ========================================================================== - Base - ========================================================================== */ - -/** - * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using - * `em` units. - * 2. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - */ - -html { - font-size: 100%; /* 1 */ - -ms-text-size-adjust: 100%; /* 2 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} - -/** - * Address `font-family` inconsistency between `textarea` and other form - * elements. - */ - -html, -button, -input, -select, -textarea { - font-family: sans-serif; -} - -/** - * Address margins handled incorrectly in IE 6/7. - */ - -body { - margin: 0; -} - -/* ========================================================================== - Links - ========================================================================== */ - -/** - * Address `outline` inconsistency between Chrome and other browsers. - */ - -a:focus { - outline: thin dotted; -} - -/** - * Improve readability when focused and also mouse hovered in all browsers. - */ - -a:active, -a:hover { - outline: 0; -} - -/* ========================================================================== - Typography - ========================================================================== */ - -/** - * Address font sizes and margins set differently in IE 6/7. - * Address font sizes within `section` and `article` in Firefox 4+, Safari 5, - * and Chrome. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -h2 { - font-size: 1.5em; - margin: 0.83em 0; -} - -h3 { - font-size: 1.17em; - margin: 1em 0; -} - -h4 { - font-size: 1em; - margin: 1.33em 0; -} - -h5 { - font-size: 0.83em; - margin: 1.67em 0; -} - -h6 { - font-size: 0.67em; - margin: 2.33em 0; -} - -/** - * Address styling not present in IE 7/8/9, Safari 5, and Chrome. - */ - -abbr[title] { - border-bottom: 1px dotted; -} - -/** - * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. - */ - -b, -strong { - font-weight: bold; -} - -blockquote { - margin: 1em 40px; -} - -/** - * Address styling not present in Safari 5 and Chrome. - */ - -dfn { - font-style: italic; -} - -/** - * Address differences between Firefox and other browsers. - * Known issue: no IE 6/7 normalization. - */ - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -/** - * Address styling not present in IE 6/7/8/9. - */ - -mark { - background: #ff0; - color: #000; -} - -/** - * Address margins set differently in IE 6/7. - */ - -p, -pre { - margin: 1em 0; -} - -/** - * Correct font family set oddly in IE 6, Safari 4/5, and Chrome. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, serif; - _font-family: 'courier new', monospace; - font-size: 1em; -} - -/** - * Improve readability of pre-formatted text in all browsers. - */ - -pre { - white-space: pre; - white-space: pre-wrap; - word-wrap: break-word; -} - -/** - * Address CSS quotes not supported in IE 6/7. - */ - -q { - quotes: none; -} - -/** - * Address `quotes` property not supported in Safari 4. - */ - -q:before, -q:after { - content: ''; - content: none; -} - -/** - * Address inconsistent and variable font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -/* ========================================================================== - Lists - ========================================================================== */ - -/** - * Address margins set differently in IE 6/7. - */ - -dl, -menu, -ol, -ul { - margin: 1em 0; -} - -dd { - margin: 0 0 0 40px; -} - -/** - * Address paddings set differently in IE 6/7. - */ - -menu, -ol, -ul { - padding: 0 0 0 40px; -} - -/** - * Correct list images handled incorrectly in IE 7. - */ - -nav ul, -nav ol { - list-style: none; - list-style-image: none; -} - -/* ========================================================================== - Embedded content - ========================================================================== */ - -/** - * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3. - * 2. Improve image quality when scaled in IE 7. - */ - -img { - border: 0; /* 1 */ - -ms-interpolation-mode: bicubic; /* 2 */ -} - -/** - * Correct overflow displayed oddly in IE 9. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* ========================================================================== - Figures - ========================================================================== */ - -/** - * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. - */ - -figure { - margin: 0; -} - -/* ========================================================================== - Forms - ========================================================================== */ - -/** - * Correct margin displayed oddly in IE 6/7. - */ - -form { - margin: 0; -} - -/** - * Define consistent border, margin, and padding. - */ - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -/** - * 1. Correct color not being inherited in IE 6/7/8/9. - * 2. Correct text not wrapping in Firefox 3. - * 3. Correct alignment displayed oddly in IE 6/7. - */ - -legend { - border: 0; /* 1 */ - padding: 0; - white-space: normal; /* 2 */ - *margin-left: -7px; /* 3 */ -} - -/** - * 1. Correct font size not being inherited in all browsers. - * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5, - * and Chrome. - * 3. Improve appearance and consistency in all browsers. - */ - -button, -input, -select, -textarea { - font-size: 100%; /* 1 */ - margin: 0; /* 2 */ - vertical-align: baseline; /* 3 */ - *vertical-align: middle; /* 3 */ -} - -/** - * Address Firefox 3+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ - -button, -input { - line-height: normal; -} - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+. - * Correct `select` style inheritance in Firefox 4+ and Opera. - */ - -button, -select { - text-transform: none; -} - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - * 4. Remove inner spacing in IE 7 without affecting normal text inputs. - * Known issue: inner spacing remains in IE 6. - */ - -button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ - *overflow: visible; /* 4 */ -} - -/** - * Re-set default cursor for disabled elements. - */ - -button[disabled], -html input[disabled] { - cursor: default; -} - -/** - * 1. Address box sizing set to content-box in IE 8/9. - * 2. Remove excess padding in IE 8/9. - * 3. Remove excess padding in IE 7. - * Known issue: excess padding remains in IE 6. - */ - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ - *height: 13px; /* 3 */ - *width: 13px; /* 3 */ -} - -/** - * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome - * (include `-moz` to future-proof). - */ - -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} - -/** - * Remove inner padding and search cancel button in Safari 5 and Chrome - * on OS X. - */ - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Remove inner padding and border in Firefox 3+. - */ - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -/** - * 1. Remove default vertical scrollbar in IE 6/7/8/9. - * 2. Improve readability and alignment in all browsers. - */ - -textarea { - overflow: auto; /* 1 */ - vertical-align: top; /* 2 */ -} - -/* ========================================================================== - Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} diff --git a/public/app/bower_components/html5-boilerplate/dist/.editorconfig b/public/app/bower_components/html5-boilerplate/dist/.editorconfig new file mode 100644 index 00000000..1b44e422 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/.editorconfig @@ -0,0 +1,13 @@ +# editorconfig.org + +root = true + +[*] +charset = utf-8 +indent_size = 4 +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false diff --git a/public/app/bower_components/html5-boilerplate/dist/.gitattributes b/public/app/bower_components/html5-boilerplate/dist/.gitattributes new file mode 100644 index 00000000..176a458f --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/.gitattributes @@ -0,0 +1 @@ +* text=auto diff --git a/public/app/bower_components/html5-boilerplate/dist/.gitignore b/public/app/bower_components/html5-boilerplate/dist/.gitignore new file mode 100644 index 00000000..16b2d7d0 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/.gitignore @@ -0,0 +1,2 @@ +# Include your project-specific ignores in this file +# Read about how to use .gitignore: https://help.github.com/articles/ignoring-files diff --git a/public/app/bower_components/html5-boilerplate/dist/.htaccess b/public/app/bower_components/html5-boilerplate/dist/.htaccess new file mode 100644 index 00000000..760ccd39 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/.htaccess @@ -0,0 +1,935 @@ +# Apache Server Configs v2.11.0 | MIT License +# https://github.com/h5bp/server-configs-apache + +# (!) Using `.htaccess` files slows down Apache, therefore, if you have +# access to the main server configuration file (which is usually called +# `httpd.conf`), you should add this logic there. +# +# https://httpd.apache.org/docs/current/howto/htaccess.html. + +# ###################################################################### +# # CROSS-ORIGIN # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Cross-origin requests | +# ---------------------------------------------------------------------- + +# Allow cross-origin requests. +# +# https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS +# http://enable-cors.org/ +# http://www.w3.org/TR/cors/ + +# +# Header set Access-Control-Allow-Origin "*" +# + +# ---------------------------------------------------------------------- +# | Cross-origin images | +# ---------------------------------------------------------------------- + +# Send the CORS header for images when browsers request it. +# +# https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image +# https://blog.chromium.org/2011/07/using-cross-domain-images-in-webgl-and.html + + + + + SetEnvIf Origin ":" IS_CORS + Header set Access-Control-Allow-Origin "*" env=IS_CORS + + + + +# ---------------------------------------------------------------------- +# | Cross-origin web fonts | +# ---------------------------------------------------------------------- + +# Allow cross-origin access to web fonts. + + + + Header set Access-Control-Allow-Origin "*" + + + +# ---------------------------------------------------------------------- +# | Cross-origin resource timing | +# ---------------------------------------------------------------------- + +# Allow cross-origin access to the timing information for all resources. +# +# If a resource isn't served with a `Timing-Allow-Origin` header that +# would allow its timing information to be shared with the document, +# some of the attributes of the `PerformanceResourceTiming` object will +# be set to zero. +# +# http://www.w3.org/TR/resource-timing/ +# http://www.stevesouders.com/blog/2014/08/21/resource-timing-practical-tips/ + +# +# Header set Timing-Allow-Origin: "*" +# + + +# ###################################################################### +# # ERRORS # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Custom error messages/pages | +# ---------------------------------------------------------------------- + +# Customize what Apache returns to the client in case of an error. +# https://httpd.apache.org/docs/current/mod/core.html#errordocument + +ErrorDocument 404 /404.html + +# ---------------------------------------------------------------------- +# | Error prevention | +# ---------------------------------------------------------------------- + +# Disable the pattern matching based on filenames. +# +# This setting prevents Apache from returning a 404 error as the result +# of a rewrite when the directory with the same name does not exist. +# +# https://httpd.apache.org/docs/current/content-negotiation.html#multiviews + +Options -MultiViews + + +# ###################################################################### +# # INTERNET EXPLORER # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Document modes | +# ---------------------------------------------------------------------- + +# Force Internet Explorer 8/9/10 to render pages in the highest mode +# available in the various cases when it may not. +# +# https://hsivonen.fi/doctype/#ie8 +# +# (!) Starting with Internet Explorer 11, document modes are deprecated. +# If your business still relies on older web apps and services that were +# designed for older versions of Internet Explorer, you might want to +# consider enabling `Enterprise Mode` throughout your company. +# +# http://msdn.microsoft.com/en-us/library/ie/bg182625.aspx#docmode +# http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx + + + Header set X-UA-Compatible "IE=edge" + # `mod_headers` cannot match based on the content-type, however, + # the `X-UA-Compatible` response header should be send only for + # HTML documents and not for the other resources. + + Header unset X-UA-Compatible + + + +# ---------------------------------------------------------------------- +# | Iframes cookies | +# ---------------------------------------------------------------------- + +# Allow cookies to be set from iframes in Internet Explorer. +# +# http://msdn.microsoft.com/en-us/library/ms537343.aspx +# http://www.w3.org/TR/2000/CR-P3P-20001215/ + +# +# Header set P3P "policyref=\"/w3c/p3p.xml\", CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"" +# + + +# ###################################################################### +# # MEDIA TYPES AND CHARACTER ENCODINGS # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Media types | +# ---------------------------------------------------------------------- + +# Serve resources with the proper media types (f.k.a. MIME types). +# +# https://www.iana.org/assignments/media-types/media-types.xhtml +# https://httpd.apache.org/docs/current/mod/mod_mime.html#addtype + + + + # Data interchange + + AddType application/json json map topojson + AddType application/ld+json jsonld + AddType application/vnd.geo+json geojson + AddType application/xml atom rdf rss xml + + + # JavaScript + + # Normalize to standard type. + # https://tools.ietf.org/html/rfc4329#section-7.2 + + AddType application/javascript js + + + # Manifest files + + # If you are providing a web application manifest file (see + # the specification: https://w3c.github.io/manifest/), it is + # recommended that you serve it with the `application/manifest+json` + # media type. + # + # Because the web application manifest file doesn't have its + # own unique file extension, you can set its media type either + # by matching: + # + # 1) the exact location of the file (this can be done using a + # directive such as ``, but it will NOT work in + # the `.htaccess` file, so you will have to do it in the main + # server configuration file or inside of a `` + # container) + # + # e.g.: + # + # + # AddType application/manifest+json json + # + # + # 2) the filename (this can be problematic as you will need to + # ensure that you don't have any other file with the same name + # as the one you gave to your web application manifest file) + # + # e.g.: + # + # + # AddType application/manifest+json json + # + + AddType application/x-web-app-manifest+json webapp + AddType text/cache-manifest appcache manifest + + + # Media files + + AddType audio/mp4 f4a f4b m4a + AddType audio/ogg oga ogg opus + AddType image/bmp bmp + AddType image/webp webp + AddType video/mp4 f4v f4p m4v mp4 + AddType video/ogg ogv + AddType video/webm webm + AddType video/x-flv flv + AddType image/svg+xml svg svgz + + # Serving `.ico` image files with a different media type + # prevents Internet Explorer from displaying then as images: + # https://github.com/h5bp/html5-boilerplate/commit/37b5fec090d00f38de64b591bcddcb205aadf8ee + + AddType image/x-icon cur ico + + + # Web fonts + + AddType application/font-woff woff + AddType application/font-woff2 woff2 + AddType application/vnd.ms-fontobject eot + + # Browsers usually ignore the font media types and simply sniff + # the bytes to figure out the font type. + # https://mimesniff.spec.whatwg.org/#matching-a-font-type-pattern + # + # However, Blink and WebKit based browsers will show a warning + # in the console if the following font types are served with any + # other media types. + + AddType application/x-font-ttf ttc ttf + AddType font/opentype otf + + + # Other + + AddType application/octet-stream safariextz + AddType application/x-bb-appworld bbaw + AddType application/x-chrome-extension crx + AddType application/x-opera-extension oex + AddType application/x-xpinstall xpi + AddType text/vcard vcard vcf + AddType text/vnd.rim.location.xloc xloc + AddType text/vtt vtt + AddType text/x-component htc + + + +# ---------------------------------------------------------------------- +# | Character encodings | +# ---------------------------------------------------------------------- + +# Serve all resources labeled as `text/html` or `text/plain` +# with the media type `charset` parameter set to `UTF-8`. +# +# https://httpd.apache.org/docs/current/mod/core.html#adddefaultcharset + +AddDefaultCharset utf-8 + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Serve the following file types with the media type `charset` +# parameter set to `UTF-8`. +# +# https://httpd.apache.org/docs/current/mod/mod_mime.html#addcharset + + + AddCharset utf-8 .atom \ + .bbaw \ + .css \ + .geojson \ + .js \ + .json \ + .jsonld \ + .rdf \ + .rss \ + .topojson \ + .vtt \ + .webapp \ + .xloc \ + .xml + + + +# ###################################################################### +# # REWRITES # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Rewrite engine | +# ---------------------------------------------------------------------- + +# (1) Turn on the rewrite engine (this is necessary in order for +# the `RewriteRule` directives to work). +# +# https://httpd.apache.org/docs/current/mod/mod_rewrite.html#RewriteEngine +# +# (2) Enable the `FollowSymLinks` option if it isn't already. +# +# https://httpd.apache.org/docs/current/mod/core.html#options +# +# (3) If your web host doesn't allow the `FollowSymlinks` option, +# you need to comment it out or remove it, and then uncomment +# the `Options +SymLinksIfOwnerMatch` line (4), but be aware +# of the performance impact. +# +# https://httpd.apache.org/docs/current/misc/perf-tuning.html#symlinks +# +# (4) Some cloud hosting services will require you set `RewriteBase`. +# +# http://www.rackspace.com/knowledge_center/frequently-asked-question/why-is-modrewrite-not-working-on-my-site +# https://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase +# +# (5) Depending on how your server is set up, you may also need to +# use the `RewriteOptions` directive to enable some options for +# the rewrite engine. +# +# https://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriteoptions + + + + # (1) + RewriteEngine On + + # (2) + Options +FollowSymlinks + + # (3) + # Options +SymLinksIfOwnerMatch + + # (4) + # RewriteBase / + + # (5) + # RewriteOptions + + + +# ---------------------------------------------------------------------- +# | Forcing `https://` | +# ---------------------------------------------------------------------- + +# Redirect from the `http://` to the `https://` version of the URL. +# https://wiki.apache.org/httpd/RewriteHTTPToHTTPS + +# +# RewriteEngine On +# RewriteCond %{HTTPS} !=on +# RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] +# + +# ---------------------------------------------------------------------- +# | Suppressing / Forcing the `www.` at the beginning of URLs | +# ---------------------------------------------------------------------- + +# The same content should never be available under two different +# URLs, especially not with and without `www.` at the beginning. +# This can cause SEO problems (duplicate content), and therefore, +# you should choose one of the alternatives and redirect the other +# one. +# +# By default `Option 1` (no `www.`) is activated. +# http://no-www.org/faq.php?q=class_b +# +# If you would prefer to use `Option 2`, just comment out all the +# lines from `Option 1` and uncomment the ones from `Option 2`. +# +# (!) NEVER USE BOTH RULES AT THE SAME TIME! + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Option 1: rewrite www.example.com → example.com + + + RewriteEngine On + RewriteCond %{HTTPS} !=on + RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] + RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L] + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Option 2: rewrite example.com → www.example.com +# +# Be aware that the following might not be a good idea if you use "real" +# subdomains for certain parts of your website. + +# +# RewriteEngine On +# RewriteCond %{HTTPS} !=on +# RewriteCond %{HTTP_HOST} !^www\. [NC] +# RewriteCond %{SERVER_ADDR} !=127.0.0.1 +# RewriteCond %{SERVER_ADDR} !=::1 +# RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] +# + + +# ###################################################################### +# # SECURITY # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Clickjacking | +# ---------------------------------------------------------------------- + +# Protect website against clickjacking. +# +# The example below sends the `X-Frame-Options` response header with +# the value `DENY`, informing browsers not to display the content of +# the web page in any frame. +# +# This might not be the best setting for everyone. You should read +# about the other two possible values the `X-Frame-Options` header +# field can have: `SAMEORIGIN` and `ALLOW-FROM`. +# https://tools.ietf.org/html/rfc7034#section-2.1. +# +# Keep in mind that while you could send the `X-Frame-Options` header +# for all of your website’s pages, this has the potential downside that +# it forbids even non-malicious framing of your content (e.g.: when +# users visit your website using a Google Image Search results page). +# +# Nonetheless, you should ensure that you send the `X-Frame-Options` +# header for all pages that allow a user to make a state changing +# operation (e.g: pages that contain one-click purchase links, checkout +# or bank-transfer confirmation pages, pages that make permanent +# configuration changes, etc.). +# +# Sending the `X-Frame-Options` header can also protect your website +# against more than just clickjacking attacks: +# https://cure53.de/xfo-clickjacking.pdf. +# +# https://tools.ietf.org/html/rfc7034 +# http://blogs.msdn.com/b/ieinternals/archive/2010/03/30/combating-clickjacking-with-x-frame-options.aspx +# https://www.owasp.org/index.php/Clickjacking + +# +# Header set X-Frame-Options "DENY" +# # `mod_headers` cannot match based on the content-type, however, +# # the `X-Frame-Options` response header should be send only for +# # HTML documents and not for the other resources. +# +# Header unset X-Frame-Options +# +# + +# ---------------------------------------------------------------------- +# | Content Security Policy (CSP) | +# ---------------------------------------------------------------------- + +# Mitigate the risk of cross-site scripting and other content-injection +# attacks. +# +# This can be done by setting a `Content Security Policy` which +# whitelists trusted sources of content for your website. +# +# The example header below allows ONLY scripts that are loaded from the +# current website's origin (no inline scripts, no CDN, etc). That almost +# certainly won't work as-is for your website! +# +# For more details on how to craft a reasonable policy for your website, +# read: http://www.html5rocks.com/en/tutorials/security/content-security-policy/ +# (or the specification: http://www.w3.org/TR/CSP11/). Also, to make +# things easier, you can use an online CSP header generator such as: +# http://cspisawesome.com/. + +# +# Header set Content-Security-Policy "script-src 'self'; object-src 'self'" +# # `mod_headers` cannot match based on the content-type, however, +# # the `Content-Security-Policy` response header should be send +# # only for HTML documents and not for the other resources. +# +# Header unset Content-Security-Policy +# +# + +# ---------------------------------------------------------------------- +# | File access | +# ---------------------------------------------------------------------- + +# Block access to directories without a default document. +# +# You should leave the following uncommented, as you shouldn't allow +# anyone to surf through every directory on your server (which may +# includes rather private places such as the CMS's directories). + + + Options -Indexes + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Block access to all hidden files and directories with the exception of +# the visible content from within the `/.well-known/` hidden directory. +# +# These types of files usually contain user preferences or the preserved +# state of an utility, and can include rather private places like, for +# example, the `.git` or `.svn` directories. +# +# The `/.well-known/` directory represents the standard (RFC 5785) path +# prefix for "well-known locations" (e.g.: `/.well-known/manifest.json`, +# `/.well-known/keybase.txt`), and therefore, access to its visible +# content should not be blocked. +# +# https://www.mnot.net/blog/2010/04/07/well-known +# https://tools.ietf.org/html/rfc5785 + + + RewriteEngine On + RewriteCond %{REQUEST_URI} "!(^|/)\.well-known/([^./]+./?)+$" [NC] + RewriteCond %{SCRIPT_FILENAME} -d [OR] + RewriteCond %{SCRIPT_FILENAME} -f + RewriteRule "(^|/)\." - [F] + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Block access to files that can expose sensitive information. +# +# By default, block access to backup and source files that may be +# left by some text editors and can pose a security risk when anyone +# has access to them. +# +# http://feross.org/cmsploit/ +# +# (!) Update the `` regular expression from below to +# include any files that might end up on your production server and +# can expose sensitive information about your website. These files may +# include: configuration files, files that contain metadata about the +# project (e.g.: project dependencies), build scripts, etc.. + + + + # Apache < 2.3 + + Order allow,deny + Deny from all + Satisfy All + + + # Apache ≥ 2.3 + + Require all denied + + + + +# ---------------------------------------------------------------------- +# | HTTP Strict Transport Security (HSTS) | +# ---------------------------------------------------------------------- + +# Force client-side SSL redirection. +# +# If a user types `example.com` in their browser, even if the server +# redirects them to the secure version of the website, that still leaves +# a window of opportunity (the initial HTTP connection) for an attacker +# to downgrade or redirect the request. +# +# The following header ensures that browser will ONLY connect to your +# server via HTTPS, regardless of what the users type in the browser's +# address bar. +# +# (!) Remove the `includeSubDomains` optional directive if the website's +# subdomains are not using HTTPS. +# +# http://www.html5rocks.com/en/tutorials/security/transport-layer-security/ +# https://tools.ietf.org/html/draft-ietf-websec-strict-transport-sec-14#section-6.1 +# http://blogs.msdn.com/b/ieinternals/archive/2014/08/18/hsts-strict-transport-security-attacks-mitigations-deployment-https.aspx + +# +# Header set Strict-Transport-Security "max-age=16070400; includeSubDomains" +# + +# ---------------------------------------------------------------------- +# | Reducing MIME type security risks | +# ---------------------------------------------------------------------- + +# Prevent some browsers from MIME-sniffing the response. +# +# This reduces exposure to drive-by download attacks and cross-origin +# data leaks, and should be left uncommented, especially if the server +# is serving user-uploaded content or content that could potentially be +# treated as executable by the browser. +# +# http://www.slideshare.net/hasegawayosuke/owasp-hasegawa +# http://blogs.msdn.com/b/ie/archive/2008/07/02/ie8-security-part-v-comprehensive-protection.aspx +# http://msdn.microsoft.com/en-us/library/ie/gg622941.aspx +# https://mimesniff.spec.whatwg.org/ + + + Header set X-Content-Type-Options "nosniff" + + +# ---------------------------------------------------------------------- +# | Reflected Cross-Site Scripting (XSS) attacks | +# ---------------------------------------------------------------------- + +# (1) Try to re-enable the cross-site scripting (XSS) filter built +# into most web browsers. +# +# The filter is usually enabled by default, but in some cases it +# may be disabled by the user. However, in Internet Explorer for +# example, it can be re-enabled just by sending the +# `X-XSS-Protection` header with the value of `1`. +# +# (2) Prevent web browsers from rendering the web page if a potential +# reflected (a.k.a non-persistent) XSS attack is detected by the +# filter. +# +# By default, if the filter is enabled and browsers detect a +# reflected XSS attack, they will attempt to block the attack +# by making the smallest possible modifications to the returned +# web page. +# +# Unfortunately, in some browsers (e.g.: Internet Explorer), +# this default behavior may allow the XSS filter to be exploited, +# thereby, it's better to inform browsers to prevent the rendering +# of the page altogether, instead of attempting to modify it. +# +# http://hackademix.net/2009/11/21/ies-xss-filter-creates-xss-vulnerabilities +# +# (!) Do not rely on the XSS filter to prevent XSS attacks! Ensure that +# you are taking all possible measures to prevent XSS attacks, the +# most obvious being: validating and sanitizing your website's inputs. +# +# http://blogs.msdn.com/b/ie/archive/2008/07/02/ie8-security-part-iv-the-xss-filter.aspx +# http://blogs.msdn.com/b/ieinternals/archive/2011/01/31/controlling-the-internet-explorer-xss-filter-with-the-x-xss-protection-http-header.aspx +# https://www.owasp.org/index.php/Cross-site_Scripting_%28XSS%29 + +# +# # (1) (2) +# Header set X-XSS-Protection "1; mode=block" +# # `mod_headers` cannot match based on the content-type, however, +# # the `X-XSS-Protection` response header should be send only for +# # HTML documents and not for the other resources. +# +# Header unset X-XSS-Protection +# +# + +# ---------------------------------------------------------------------- +# | Server software information | +# ---------------------------------------------------------------------- + +# Prevent Apache from sending in the `Server` response header its +# exact version number, the description of the generic OS-type or +# information about its compiled-in modules. +# +# (!) The `ServerTokens` directive will only work in the main server +# configuration file, so don't try to enable it in the `.htaccess` file! +# +# https://httpd.apache.org/docs/current/mod/core.html#servertokens + +# ServerTokens Prod + + +# ###################################################################### +# # WEB PERFORMANCE # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Compression | +# ---------------------------------------------------------------------- + + + + # Force compression for mangled `Accept-Encoding` request headers + # https://developer.yahoo.com/blogs/ydn/pushing-beyond-gzipping-25601.html + + + + SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding + RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding + + + + # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + # Compress all output labeled with one of the following media types. + # + # (!) For Apache versions below version 2.3.7 you don't need to + # enable `mod_filter` and can remove the `` + # and `` lines as `AddOutputFilterByType` is still in + # the core directives. + # + # https://httpd.apache.org/docs/current/mod/mod_filter.html#addoutputfilterbytype + + + AddOutputFilterByType DEFLATE "application/atom+xml" \ + "application/javascript" \ + "application/json" \ + "application/ld+json" \ + "application/manifest+json" \ + "application/rdf+xml" \ + "application/rss+xml" \ + "application/schema+json" \ + "application/vnd.geo+json" \ + "application/vnd.ms-fontobject" \ + "application/x-font-ttf" \ + "application/x-javascript" \ + "application/x-web-app-manifest+json" \ + "application/xhtml+xml" \ + "application/xml" \ + "font/eot" \ + "font/opentype" \ + "image/bmp" \ + "image/svg+xml" \ + "image/vnd.microsoft.icon" \ + "image/x-icon" \ + "text/cache-manifest" \ + "text/css" \ + "text/html" \ + "text/javascript" \ + "text/plain" \ + "text/vcard" \ + "text/vnd.rim.location.xloc" \ + "text/vtt" \ + "text/x-component" \ + "text/x-cross-domain-policy" \ + "text/xml" + + + + # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + # Map the following filename extensions to the specified + # encoding type in order to make Apache serve the file types + # with the appropriate `Content-Encoding` response header + # (do note that this will NOT make Apache compress them!). + # + # If these files types would be served without an appropriate + # `Content-Enable` response header, client applications (e.g.: + # browsers) wouldn't know that they first need to uncompress + # the response, and thus, wouldn't be able to understand the + # content. + # + # https://httpd.apache.org/docs/current/mod/mod_mime.html#addencoding + + + AddEncoding gzip svgz + + + + +# ---------------------------------------------------------------------- +# | Content transformation | +# ---------------------------------------------------------------------- + +# Prevent intermediate caches or proxies (e.g.: such as the ones +# used by mobile network providers) from modifying the website's +# content. +# +# https://tools.ietf.org/html/rfc2616#section-14.9.5 +# +# (!) If you are using `mod_pagespeed`, please note that setting +# the `Cache-Control: no-transform` response header will prevent +# `PageSpeed` from rewriting `HTML` files, and, if the +# `ModPagespeedDisableRewriteOnNoTransform` directive isn't set +# to `off`, also from rewriting other resources. +# +# https://developers.google.com/speed/pagespeed/module/configuration#notransform + +# +# Header merge Cache-Control "no-transform" +# + +# ---------------------------------------------------------------------- +# | ETags | +# ---------------------------------------------------------------------- + +# Remove `ETags` as resources are sent with far-future expires headers. +# +# https://developer.yahoo.com/performance/rules.html#etags +# https://tools.ietf.org/html/rfc7232#section-2.3 + +# `FileETag None` doesn't work in all cases. + + Header unset ETag + + +FileETag None + +# ---------------------------------------------------------------------- +# | Expires headers | +# ---------------------------------------------------------------------- + +# Serve resources with far-future expires headers. +# +# (!) If you don't control versioning with filename-based +# cache busting, you should consider lowering the cache times +# to something like one week. +# +# https://httpd.apache.org/docs/current/mod/mod_expires.html + + + + ExpiresActive on + ExpiresDefault "access plus 1 month" + + # CSS + ExpiresByType text/css "access plus 1 year" + + # Data interchange + ExpiresByType application/atom+xml "access plus 1 hour" + ExpiresByType application/rdf+xml "access plus 1 hour" + ExpiresByType application/rss+xml "access plus 1 hour" + + ExpiresByType application/json "access plus 0 seconds" + ExpiresByType application/ld+json "access plus 0 seconds" + ExpiresByType application/schema+json "access plus 0 seconds" + ExpiresByType application/vnd.geo+json "access plus 0 seconds" + ExpiresByType application/xml "access plus 0 seconds" + ExpiresByType text/xml "access plus 0 seconds" + + # Favicon (cannot be renamed!) and cursor images + ExpiresByType image/vnd.microsoft.icon "access plus 1 week" + ExpiresByType image/x-icon "access plus 1 week" + + # HTML + ExpiresByType text/html "access plus 0 seconds" + + # JavaScript + ExpiresByType application/javascript "access plus 1 year" + ExpiresByType application/x-javascript "access plus 1 year" + ExpiresByType text/javascript "access plus 1 year" + + # Manifest files + ExpiresByType application/manifest+json "access plus 1 year" + + ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds" + ExpiresByType text/cache-manifest "access plus 0 seconds" + + # Media files + ExpiresByType audio/ogg "access plus 1 month" + ExpiresByType image/bmp "access plus 1 month" + ExpiresByType image/gif "access plus 1 month" + ExpiresByType image/jpeg "access plus 1 month" + ExpiresByType image/png "access plus 1 month" + ExpiresByType image/svg+xml "access plus 1 month" + ExpiresByType video/mp4 "access plus 1 month" + ExpiresByType video/ogg "access plus 1 month" + ExpiresByType video/webm "access plus 1 month" + + # Web fonts + + # Embedded OpenType (EOT) + ExpiresByType application/vnd.ms-fontobject "access plus 1 month" + ExpiresByType font/eot "access plus 1 month" + + # OpenType + ExpiresByType font/opentype "access plus 1 month" + + # TrueType + ExpiresByType application/x-font-ttf "access plus 1 month" + + # Web Open Font Format (WOFF) 1.0 + ExpiresByType application/font-woff "access plus 1 month" + ExpiresByType application/x-font-woff "access plus 1 month" + ExpiresByType font/woff "access plus 1 month" + + # Web Open Font Format (WOFF) 2.0 + ExpiresByType application/font-woff2 "access plus 1 month" + + # Other + ExpiresByType text/x-cross-domain-policy "access plus 1 week" + + + +# ---------------------------------------------------------------------- +# | File concatenation | +# ---------------------------------------------------------------------- + +# Allow concatenation from within specific files. +# +# e.g.: +# +# If you have the following lines in a file called, for +# example, `main.combined.js`: +# +# +# +# +# Apache will replace those lines with the content of the +# specified files. + +# +# +# Options +Includes +# AddOutputFilterByType INCLUDES application/javascript \ +# application/x-javascript \ +# text/javascript +# SetOutputFilter INCLUDES +# +# +# Options +Includes +# AddOutputFilterByType INCLUDES text/css +# SetOutputFilter INCLUDES +# +# + +# ---------------------------------------------------------------------- +# | Filename-based cache busting | +# ---------------------------------------------------------------------- + +# If you're not using a build process to manage your filename version +# revving, you might want to consider enabling the following directives +# to route all requests such as `/style.12345.css` to `/style.css`. +# +# To understand why this is important and even a better solution than +# using something like `*.css?v231`, please see: +# http://www.stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring/ + +# +# RewriteEngine On +# RewriteCond %{REQUEST_FILENAME} !-f +# RewriteRule ^(.+)\.(\d+)\.(bmp|css|cur|gif|ico|jpe?g|js|png|svgz?|webp)$ $1.$3 [L] +# diff --git a/public/app/bower_components/html5-boilerplate/dist/404.html b/public/app/bower_components/html5-boilerplate/dist/404.html new file mode 100644 index 00000000..8d7925a8 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/404.html @@ -0,0 +1,60 @@ + + + + + Page Not Found + + + + +

Page Not Found

+

Sorry, but the page you were trying to view does not exist.

+ + + diff --git a/public/app/bower_components/html5-boilerplate/dist/apple-touch-icon.png b/public/app/bower_components/html5-boilerplate/dist/apple-touch-icon.png new file mode 100644 index 00000000..600738f2 Binary files /dev/null and b/public/app/bower_components/html5-boilerplate/dist/apple-touch-icon.png differ diff --git a/public/app/bower_components/html5-boilerplate/dist/browserconfig.xml b/public/app/bower_components/html5-boilerplate/dist/browserconfig.xml new file mode 100644 index 00000000..46de5d3c --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/browserconfig.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/public/app/bower_components/html5-boilerplate/crossdomain.xml b/public/app/bower_components/html5-boilerplate/dist/crossdomain.xml similarity index 84% rename from public/app/bower_components/html5-boilerplate/crossdomain.xml rename to public/app/bower_components/html5-boilerplate/dist/crossdomain.xml index 29a035d7..818b8225 100644 --- a/public/app/bower_components/html5-boilerplate/crossdomain.xml +++ b/public/app/bower_components/html5-boilerplate/dist/crossdomain.xml @@ -1,7 +1,7 @@ - + diff --git a/public/app/bower_components/html5-boilerplate/dist/css/main.css b/public/app/bower_components/html5-boilerplate/dist/css/main.css new file mode 100644 index 00000000..a2451dd4 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/css/main.css @@ -0,0 +1,282 @@ +/*! HTML5 Boilerplate v5.0.0 | MIT License | http://h5bp.com/ */ + +/* + * What follows is the result of much research on cross-browser styling. + * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal, + * Kroc Camen, and the H5BP dev community and team. + */ + +/* ========================================================================== + Base styles: opinionated defaults + ========================================================================== */ + +html { + color: #222; + font-size: 1em; + line-height: 1.4; +} + +/* + * Remove text-shadow in selection highlight: + * https://twitter.com/miketaylr/status/12228805301 + * + * These selection rule sets have to be separate. + * Customize the background color to match your design. + */ + +::-moz-selection { + background: #b3d4fc; + text-shadow: none; +} + +::selection { + background: #b3d4fc; + text-shadow: none; +} + +/* + * A better looking default horizontal rule + */ + +hr { + display: block; + height: 1px; + border: 0; + border-top: 1px solid #ccc; + margin: 1em 0; + padding: 0; +} + +/* + * Remove the gap between audio, canvas, iframes, + * images, videos and the bottom of their containers: + * https://github.com/h5bp/html5-boilerplate/issues/440 + */ + +audio, +canvas, +iframe, +img, +svg, +video { + vertical-align: middle; +} + +/* + * Remove default fieldset styles. + */ + +fieldset { + border: 0; + margin: 0; + padding: 0; +} + +/* + * Allow only vertical resizing of textareas. + */ + +textarea { + resize: vertical; +} + +/* ========================================================================== + Browser Upgrade Prompt + ========================================================================== */ + +.browserupgrade { + margin: 0.2em 0; + background: #ccc; + color: #000; + padding: 0.2em 0; +} + +/* ========================================================================== + Author's custom styles + ========================================================================== */ + + + + + + + + + + + + + + + + + +/* ========================================================================== + Helper classes + ========================================================================== */ + +/* + * Hide visually and from screen readers: + * http://juicystudio.com/article/screen-readers-display-none.php + */ + +.hidden { + display: none !important; + visibility: hidden; +} + +/* + * Hide only visually, but have it available for screen readers: + * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility + */ + +.visuallyhidden { + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} + +/* + * Extends the .visuallyhidden class to allow the element + * to be focusable when navigated to via the keyboard: + * https://www.drupal.org/node/897638 + */ + +.visuallyhidden.focusable:active, +.visuallyhidden.focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; +} + +/* + * Hide visually and from screen readers, but maintain layout + */ + +.invisible { + visibility: hidden; +} + +/* + * Clearfix: contain floats + * + * For modern browsers + * 1. The space content is one way to avoid an Opera bug when the + * `contenteditable` attribute is included anywhere else in the document. + * Otherwise it causes space to appear at the top and bottom of elements + * that receive the `clearfix` class. + * 2. The use of `table` rather than `block` is only necessary if using + * `:before` to contain the top-margins of child elements. + */ + +.clearfix:before, +.clearfix:after { + content: " "; /* 1 */ + display: table; /* 2 */ +} + +.clearfix:after { + clear: both; +} + +/* ========================================================================== + EXAMPLE Media Queries for Responsive Design. + These examples override the primary ('mobile first') styles. + Modify as content requires. + ========================================================================== */ + +@media only screen and (min-width: 35em) { + /* Style adjustments for viewports that meet the condition */ +} + +@media print, + (-o-min-device-pixel-ratio: 5/4), + (-webkit-min-device-pixel-ratio: 1.25), + (min-resolution: 120dpi) { + /* Style adjustments for high resolution devices */ +} + +/* ========================================================================== + Print styles. + Inlined to avoid the additional HTTP request: + http://www.phpied.com/delay-loading-your-print-css/ + ========================================================================== */ + +@media print { + *, + *:before, + *:after { + background: transparent !important; + color: #000 !important; /* Black prints faster: + http://www.sanbeiji.com/archives/953 */ + box-shadow: none !important; + text-shadow: none !important; + } + + a, + a:visited { + text-decoration: underline; + } + + a[href]:after { + content: " (" attr(href) ")"; + } + + abbr[title]:after { + content: " (" attr(title) ")"; + } + + /* + * Don't show links that are fragment identifiers, + * or use the `javascript:` pseudo protocol + */ + + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + + pre, + blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + + /* + * Printing Tables: + * http://css-discuss.incutio.com/wiki/Printing_Tables + */ + + thead { + display: table-header-group; + } + + tr, + img { + page-break-inside: avoid; + } + + img { + max-width: 100% !important; + } + + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + + h2, + h3 { + page-break-after: avoid; + } +} diff --git a/public/app/bower_components/html5-boilerplate/dist/css/normalize.css b/public/app/bower_components/html5-boilerplate/dist/css/normalize.css new file mode 100644 index 00000000..458eea1e --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/css/normalize.css @@ -0,0 +1,427 @@ +/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ + +/** + * 1. Set default font family to sans-serif. + * 2. Prevent iOS text size adjust after orientation change, without disabling + * user zoom. + */ + +html { + font-family: sans-serif; /* 1 */ + -ms-text-size-adjust: 100%; /* 2 */ + -webkit-text-size-adjust: 100%; /* 2 */ +} + +/** + * Remove default margin. + */ + +body { + margin: 0; +} + +/* HTML5 display definitions + ========================================================================== */ + +/** + * Correct `block` display not defined for any HTML5 element in IE 8/9. + * Correct `block` display not defined for `details` or `summary` in IE 10/11 + * and Firefox. + * Correct `block` display not defined for `main` in IE 11. + */ + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} + +/** + * 1. Correct `inline-block` display not defined in IE 8/9. + * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. + */ + +audio, +canvas, +progress, +video { + display: inline-block; /* 1 */ + vertical-align: baseline; /* 2 */ +} + +/** + * Prevent modern browsers from displaying `audio` without controls. + * Remove excess height in iOS 5 devices. + */ + +audio:not([controls]) { + display: none; + height: 0; +} + +/** + * Address `[hidden]` styling not present in IE 8/9/10. + * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. + */ + +[hidden], +template { + display: none; +} + +/* Links + ========================================================================== */ + +/** + * Remove the gray background color from active links in IE 10. + */ + +a { + background-color: transparent; +} + +/** + * Improve readability when focused and also mouse hovered in all browsers. + */ + +a:active, +a:hover { + outline: 0; +} + +/* Text-level semantics + ========================================================================== */ + +/** + * Address styling not present in IE 8/9/10/11, Safari, and Chrome. + */ + +abbr[title] { + border-bottom: 1px dotted; +} + +/** + * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. + */ + +b, +strong { + font-weight: bold; +} + +/** + * Address styling not present in Safari and Chrome. + */ + +dfn { + font-style: italic; +} + +/** + * Address variable `h1` font-size and margin within `section` and `article` + * contexts in Firefox 4+, Safari, and Chrome. + */ + +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/** + * Address styling not present in IE 8/9. + */ + +mark { + background: #ff0; + color: #000; +} + +/** + * Address inconsistent and variable font size in all browsers. + */ + +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` affecting `line-height` in all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +/* Embedded content + ========================================================================== */ + +/** + * Remove border when inside `a` element in IE 8/9/10. + */ + +img { + border: 0; +} + +/** + * Correct overflow not hidden in IE 9/10/11. + */ + +svg:not(:root) { + overflow: hidden; +} + +/* Grouping content + ========================================================================== */ + +/** + * Address margin not present in IE 8/9 and Safari. + */ + +figure { + margin: 1em 40px; +} + +/** + * Address differences between Firefox and other browsers. + */ + +hr { + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; +} + +/** + * Contain overflow in all browsers. + */ + +pre { + overflow: auto; +} + +/** + * Address odd `em`-unit font size rendering in all browsers. + */ + +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} + +/* Forms + ========================================================================== */ + +/** + * Known limitation: by default, Chrome and Safari on OS X allow very limited + * styling of `select`, unless a `border` property is set. + */ + +/** + * 1. Correct color not being inherited. + * Known issue: affects color of disabled elements. + * 2. Correct font properties not being inherited. + * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. + */ + +button, +input, +optgroup, +select, +textarea { + color: inherit; /* 1 */ + font: inherit; /* 2 */ + margin: 0; /* 3 */ +} + +/** + * Address `overflow` set to `hidden` in IE 8/9/10/11. + */ + +button { + overflow: visible; +} + +/** + * Address inconsistent `text-transform` inheritance for `button` and `select`. + * All other form control elements do not inherit `text-transform` values. + * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. + * Correct `select` style inheritance in Firefox. + */ + +button, +select { + text-transform: none; +} + +/** + * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + * and `video` controls. + * 2. Correct inability to style clickable `input` types in iOS. + * 3. Improve usability and consistency of cursor style between image-type + * `input` and others. + */ + +button, +html input[type="button"], /* 1 */ +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; /* 2 */ + cursor: pointer; /* 3 */ +} + +/** + * Re-set default cursor for disabled elements. + */ + +button[disabled], +html input[disabled] { + cursor: default; +} + +/** + * Remove inner padding and border in Firefox 4+. + */ + +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} + +/** + * Address Firefox 4+ setting `line-height` on `input` using `!important` in + * the UA stylesheet. + */ + +input { + line-height: normal; +} + +/** + * It's recommended that you don't attempt to style these elements. + * Firefox's implementation doesn't respect box-sizing, padding, or width. + * + * 1. Address box sizing set to `content-box` in IE 8/9/10. + * 2. Remove excess padding in IE 8/9/10. + */ + +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Fix the cursor style for Chrome's increment/decrement buttons. For certain + * `font-size` values of the `input`, it causes the cursor style of the + * decrement button to change from `default` to `text`. + */ + +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Address `appearance` set to `searchfield` in Safari and Chrome. + * 2. Address `box-sizing` set to `border-box` in Safari and Chrome + * (include `-moz` to future-proof). + */ + +input[type="search"] { + -webkit-appearance: textfield; /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; /* 2 */ + box-sizing: content-box; +} + +/** + * Remove inner padding and search cancel button in Safari and Chrome on OS X. + * Safari (but not Chrome) clips the cancel button when the search input has + * padding (and `textfield` appearance). + */ + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * Define consistent border, margin, and padding. + */ + +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/** + * 1. Correct `color` not being inherited in IE 8/9/10/11. + * 2. Remove padding so people aren't caught out if they zero out fieldsets. + */ + +legend { + border: 0; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Remove default vertical scrollbar in IE 8/9/10/11. + */ + +textarea { + overflow: auto; +} + +/** + * Don't inherit the `font-weight` (applied by a rule above). + * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. + */ + +optgroup { + font-weight: bold; +} + +/* Tables + ========================================================================== */ + +/** + * Remove most spacing between table cells. + */ + +table { + border-collapse: collapse; + border-spacing: 0; +} + +td, +th { + padding: 0; +} diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/TOC.md b/public/app/bower_components/html5-boilerplate/dist/doc/TOC.md new file mode 100644 index 00000000..199c6b07 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/TOC.md @@ -0,0 +1,29 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) + +## Getting started + +* [Usage](usage.md) — Overview of the project contents. +* [FAQ](faq.md) — Frequently asked questions along with their answers. + +## HTML5 Boilerplate core + +* [HTML](html.md) — Guide to the default HTML. +* [CSS](css.md) — Guide to the default CSS. +* [JavaScript](js.md) — Guide to the default JavaScript. +* [Everything else](misc.md). + +## Development + +* [Extending and customizing HTML5 Boilerplate](extend.md) — Going further + with the boilerplate. + +## Related projects + +The [H5BP organization](https://github.com/h5bp) maintains several projects +that complement HTML5 Boilerplate, projects that can help you improve different +aspects of your website/web app (e.g.: the performance, security, etc.). + +* [Server Configs](https://github.com/h5bp/server-configs) — Fast & smart + configurations for web servers, like Apache and Nginx +* [Ant Build Script](https://github.com/h5bp/ant-build-script) — Apache Ant + based build script. diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/css.md b/public/app/bower_components/html5-boilerplate/dist/doc/css.md new file mode 100644 index 00000000..59f9cabb --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/css.md @@ -0,0 +1,162 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The CSS + +HTML5 Boilerplate's CSS includes: + +* [Normalize.css](#normalizecss) +* [Useful defaults](#useful-defaults) +* [Common helpers](#common-helpers) +* [Placeholder media queries](#media-queries) +* [Print styles](#print-styles) + +This starting CSS does not rely on the presence of +[conditional class names](http://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/), +[conditional style sheets](http://css-tricks.com/how-to-create-an-ie-only-stylesheet/), +or [Modernizr](http://modernizr.com/), and it is ready to use no matter what +your development preferences happen to be. + + +## Normalize.css + +In order to make browsers render all elements more consistently and in line +with modern standards, we include +[Normalize.css](https://necolas.github.io/normalize.css/) — a modern, HTML5-ready +alternative to CSS resets. + +As opposed to CSS resets, Normalize.css: + +* targets only the styles that need normalizing +* preserves useful browser defaults rather than erasing them +* corrects bugs and common browser inconsistencies +* improves usability with subtle improvements +* doesn't clutter the debugging tools +* has better documentation + +For more information about Normalize.css, please refer to its [project +page](https://necolas.github.com/normalize.css/), as well as this +[blog post](http://nicolasgallagher.com/about-normalize-css/). + + +## Useful defaults + +Several base styles are included that build upon `Normalize.css`. These +styles: + +* provide basic typography settings that improve text readability +* protect against unwanted `text-shadow` during text highlighting +* tweak the default alignment of some elements (e.g.: `img`, `video`, + `fieldset`, `textarea`) +* style the prompt that is displayed to users using an outdated browser + +You are free and even encouraged to modify or add to these base styles as your +project requires. + + +## Common helpers + +Along with the base styles, we also provide some commonly used helper classes. + +#### `.hidden` + +The `hidden` class can be added to any element that you want to hide visually +and from screen readers. It could be an element that will be populated and +displayed later, or an element you will hide with JavaScript. + +#### `.visuallyhidden` + +The `visuallyhidden` class can be added to any element that you want to hide +visually, while still have its content accessible to screen readers. + +See also: + +* [CSS in Action: Invisible Content Just for Screen Reader + Users](http://www.webaim.org/techniques/css/invisiblecontent/) +* [Hiding content for + accessibility](http://snook.ca/archives/html_and_css/hiding-content-for-accessibility) +* [HTML5 Boilerplate - Issue #194](https://github.com/h5bp/html5-boilerplate/issues/194/). + +#### `.invisible` + +The `invisible` class can be added to any element that you want to hide +visually and from screen readers, but without affecting the layout. + +As opposed to the `hidden` class that effectively removes the element from the +layout, the `invisible` class will simply make the element invisible while +keeping it in the flow and not affecting the positioning of the surrounding +content. + +__N.B.__ Try to stay away from, and don't use the classes specified above for +[keyword stuffing](https://en.wikipedia.org/wiki/Keyword_stuffing) as you will +harm your site's ranking! + +#### `.clearfix` + +The `clearfix` class can be added to any element to ensure that it always fully +contains its floated children. + +Over the years there have been many variants of the clearfix hack, but currently, +we use the [micro clearfix](http://nicolasgallagher.com/micro-clearfix-hack/). + + +## Media Queries + +HTML5 Boilerplate makes it easy for you to get started with a +[_mobile first_](http://www.lukew.com/presos/preso.asp?26) and [_responsive web +design_](http://www.alistapart.com/articles/responsive-web-design/) approach to +development. But it's worth remembering that there are [no silver +bullets](http://www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/). + +We include placeholder media queries to help you build up your mobile styles for +wider viewports and high-resolution displays. It's recommended that you adapt +these media queries based on the content of your site rather than mirroring the +fixed dimensions of specific devices. + +If you do not want to take the _mobile first_ approach, you can simply edit or +remove these placeholder media queries. One possibility would be to work from +wide viewports down, and use `max-width` media queries instead (e.g.: +`@media only screen and (max-width: 480px)`). + +For more features that can help you in your mobile web development, take a look +into our [Mobile Boilerplate](https://github.com/h5bp/mobile-boilerplate). + + +## Print styles + +Lastly, we provide some useful print styles that will optimize the printing +process, as well as make the printed pages easier to read. + +At printing time, these styles will: + +* strip all background colors, change the font color to black, and remove the + `text-shadow` — done in order to [help save printer ink and speed up the + printing process](http://www.sanbeiji.com/archives/953) +* underline and expand links to include the URL — done in order to allow users + to know where to refer to
+ (exceptions to this are: the links that are + [fragment identifiers](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href), + or use the + [`javascript:` pseudo protocol](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void#JavaScript_URIs)) +* expand abbreviations to include the full description — done in order to allow + users to know what the abbreviations stands for +* provide instructions on how browsers should break the content into pages and + on [orphans/widows](https://en.wikipedia.org/wiki/Widows_and_orphans), namely, + we instruct + [supporting browsers](https://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28Cascading_Style_Sheets%29#Grammar_and_rules) + that they should: + + * ensure the table header (``) is [printed on each page spanned by the + table](http://css-discuss.incutio.com/wiki/Printing_Tables) + * prevent block quotations, preformatted text, images and table rows from + being split onto two different pages + * ensure that headings never appear on a different page than the text they + are associated with + * ensure that + [orphans and widows](https://en.wikipedia.org/wiki/Widows_and_orphans) do + [not appear on printed pages](http://css-tricks.com/almanac/properties/o/orphans/) + +The print styles are included along with the other `css` to [avoid the +additional HTTP request](http://www.phpied.com/delay-loading-your-print-css/). +Also, they should always be included last, so that the other styles can be +overwritten. diff --git a/public/app/bower_components/html5-boilerplate/doc/extend.md b/public/app/bower_components/html5-boilerplate/dist/doc/extend.md similarity index 67% rename from public/app/bower_components/html5-boilerplate/doc/extend.md rename to public/app/bower_components/html5-boilerplate/dist/doc/extend.md index 87ba790f..1eeb55b3 100644 --- a/public/app/bower_components/html5-boilerplate/doc/extend.md +++ b/public/app/bower_components/html5-boilerplate/dist/doc/extend.md @@ -4,10 +4,46 @@ table of contents](TOC.md) # Extend and customise HTML5 Boilerplate Here is some useful advice for how you can make your project with HTML5 -Boilerplate even better. We don't want to include it all by default, as not -everything fits with everyone's needs. +Boilerplate even better. We don't want to include it all by default, as +not everything fits with everyone's needs. +* [App Stores](#app-stores) +* [DNS prefetching](#dns-prefetching) +* [Google Universal Analytics](#google-universal-analytics) +* [Internet Explorer](#internet-explorer) +* [Miscellaneous](#miscellaneous) +* [News Feeds](#news-feeds) +* [Search](#search) +* [Social Networks](#social-networks) +* [URLs](#urls) +* [Web Apps](#web-apps) + + +## App Stores + +### Install a Chrome Web Store app + +Users can install a Chrome app directly from your website, as long as +the app and site have been associated via Google's Webmaster Tools. +Read more on [Chrome Web Store's Inline Installation +docs](https://developer.chrome.com/webstore/inline_installation). + +```html + +``` + +### Smart App Banners in iOS 6+ Safari + +Stop bothering everyone with gross modals advertising your entry in the +App Store. Include the following [meta tag](https://developer.apple.com/library/IOS/documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html#//apple_ref/doc/uid/TP40002051-CH6-SW2) +will unintrusively allow the user the option to download your iOS app, +or open it with some data about the user's current state on the website. + +```html + +``` + ## DNS prefetching In short, DNS Prefetching is a method of informing the browser of domain names @@ -27,7 +63,7 @@ page. The goal of this is that when the foreign IP address is finally needed it will already be in the client cache and will not block the loading of the foreign -content. Less requests result in faster page load times. The perception of this +content. Fewer requests result in faster page load times. The perception of this is increased on a mobile platform where DNS latency can be greater. #### Disable implicit prefetching @@ -56,7 +92,7 @@ your site, for example) then you can queue up a domain name to be prefetched. You can use as many of these as you need, but it's best if they are all immediately after the [Meta -Charset](https://developer.mozilla.org/en/HTML/Element/meta#attr-charset) +Charset](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) element (which should go right at the top of the `head`), so the browser can act on them ASAP. @@ -81,53 +117,114 @@ Microsoft Ajax Content Delivery Network: ``` -### Browser support for DNS prefetching - -Chrome, Firefox 3.5+, Safari 5+, Opera (Unknown), IE 9 (called "Pre-resolution" -on blogs.msdn.com) - ### Further reading about DNS prefetching -* https://developer.mozilla.org/En/Controlling_DNS_prefetching -* http://dev.chromium.org/developers/design-documents/dns-prefetching -* http://www.apple.com/safari/whats-new.html +* https://developer.mozilla.org/en-US/docs/Controlling_DNS_prefetching +* https://dev.chromium.org/developers/design-documents/dns-prefetching * http://blogs.msdn.com/b/ie/archive/2011/03/17/internet-explorer-9-network-performance-improvements.aspx * http://dayofjs.com/videos/22158462/web-browsers_alex-russel -## Search +## Google Universal Analytics -### Direct search spiders to your sitemap +### More tracking settings -[Learn how to make a sitemap](http://www.sitemaps.org/protocol.php) +The [optimized Google Universal Analytics +snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics) +included with HTML5 Boilerplate includes something like this: -```html - +```js +ga('create', 'UA-XXXXX-X', 'auto'); ga('send', 'pageview'); ``` -### Hide pages from search engines +To customize further, see Google's [Advanced +Setup](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced), +[Pageview](https://developers.google.com/analytics/devguides/collection/analyticsjs/pages), +and [Event](https://developers.google.com/analytics/devguides/collection/analyticsjs/events) Docs. -According to Heather Champ, former community manager at Flickr, you should not -allow search engines to index your "Contact Us" or "Complaints" page if you -value your sanity. This is an HTML-centric way of achieving that. +### Anonymize IP addresses -```html - +In some countries, no personal data may be transferred outside jurisdictions +that do not have similarly strict laws (i.e. from Germany to outside the EU). +Thus a webmaster using the Google Universal Analytics may have to ensure that +no personal (trackable) data is transferred to the US. You can do that with +[the `ga('set', 'anonymizeIp', true);` +parameter](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#anonymizeip) +before sending any events/pageviews. In use it looks like this: + +```js +ga('create', 'UA-XXXXX-X', 'auto'); +ga('set', 'anonymizeIp', true); +ga('send', 'pageview'); ``` -**_WARNING:_** DO NOT INCLUDE ON PAGES THAT SHOULD APPEAR IN SEARCH ENGINES. +### Track jQuery AJAX requests in Google Analytics -### Firefox and IE Search Plugins +An article by @JangoSteve explains how to [track jQuery AJAX requests in Google +Analytics](http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/). -Sites with in-site search functionality should be strongly considered for a -browser search plugin. A "search plugin" is an XML file which defines how your -plugin behaves in the browser. [How to make a browser search -plugin](http://www.google.com/search?ie=UTF-8&q=how+to+make+browser+search+plugin). +Add this to `plugins.js`: -```html - +```js +/* + * Log all jQuery AJAX requests to Google Analytics + * See: http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/ + */ +if (typeof ga !== "undefined" && ga !== null) { + $(document).ajaxSend(function(event, xhr, settings){ + ga('send', 'pageview', settings.url); + }); +} ``` +### Track JavaScript errors in Google Analytics + +Add this function after `ga` is defined: + +```js +(function(window){ + var undefined, + link = function (href) { + var a = window.document.createElement('a'); + a.href = href; + return a; + }; + window.onerror = function (message, file, line, column) { + var host = link(file).hostname; + ga('send', { + 'hitType': 'event', + 'eventCategory': (host == window.location.hostname || host == undefined || host == '' ? '' : 'external ') + 'error', + 'eventAction': message, + 'eventLabel': (file + ' LINE: ' + line + (column ? ' COLUMN: ' + column : '')).trim(), + 'nonInteraction': 1 + }); + }; +}(window)); +``` + +### Track page scroll + +Add this function after `ga` is defined: + +```js +$(function(){ + var isDuplicateScrollEvent, + scrollTimeStart = new Date, + $window = $(window), + $document = $(document), + scrollPercent; + + $window.scroll(function() { + scrollPercent = Math.round(100 * ($window.height() + $window.scrollTop())/$document.height()); + if (scrollPercent > 90 && !isDuplicateScrollEvent) { //page scrolled to 90% + isDuplicateScrollEvent = 1; + ga('send', 'event', 'scroll', + 'Window: ' + $window.height() + 'px; Document: ' + $document.height() + 'px; Time: ' + Math.round((new Date - scrollTimeStart )/1000,1) + 's' + ); + } + }); +}); +``` ## Internet Explorer @@ -144,7 +241,7 @@ element, which will prompt them to switch to Desktop Mode. Here's what it looks like alongside H5BP's default X-UA-Compatible values: ```html - + ``` You can find more information in [Microsoft's IEBlog post about prompting for @@ -249,7 +346,7 @@ or one of a predefined list of glyphs. ### Disable link highlighting upon tap in IE10 Similar to [-webkit-tap-highlight-color](http://davidwalsh.name/mobile-highlight-color) -in iOS Safari. Unlike that CSS property, this is an HTML meta element, and it's +in iOS Safari. Unlike that CSS property, this is an HTML meta element, and its value is boolean rather than a color. It's all or nothing. ```html @@ -259,15 +356,108 @@ value is boolean rather than a color. It's all or nothing. You can read about this useful element and more techniques in [Microsoft's documentation on adapting WebKit-oriented apps for IE10](http://blogs.windows.com/windows_phone/b/wpdev/archive/2012/11/15/adapting-your-webkit-optimized-site-for-internet-explorer-10.aspx). -### Suppress IE6 image toolbar -Kill IE6's pop-up-on-mouseover toolbar for images that can interfere with -certain designs and be pretty distracting in general. +## Search + +### Direct search spiders to your sitemap + +[Learn how to make a sitemap](http://www.sitemaps.org/protocol.html) ```html - + ``` +### Hide pages from search engines + +According to Heather Champ, former community manager at Flickr, you should not +allow search engines to index your "Contact Us" or "Complaints" page if you +value your sanity. This is an HTML-centric way of achieving that. + +```html + +``` + +**_WARNING:_** DO NOT INCLUDE ON PAGES THAT SHOULD APPEAR IN SEARCH ENGINES. + +### Firefox and IE Search Plugins + +Sites with in-site search functionality should be strongly considered for a +browser search plugin. A "search plugin" is an XML file which defines how your +plugin behaves in the browser. [How to make a browser search +plugin](https://www.google.com/search?ie=UTF-8&q=how+to+make+browser+search+plugin). + +```html + +``` + + +## Miscellaneous + +* Use [polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills). + +* Use [Microformats](http://microformats.org/wiki/Main_Page) (via + [microdata](http://microformats.org/wiki/microdata)) for optimum search + results + [visibility](http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html). + +* If you're building a web app you may want [native style momentum scrolling in + iOS 5+](http://www.johanbrook.com/articles/native-style-momentum-scrolling-to-arrive-in-ios-5/) + using `-webkit-overflow-scrolling: touch`. + +* If you want to disable the translation prompt in Chrome or block Google + Translate from translating your web page, use [``](https://support.google.com/translate/?hl=en#2641276). + To disable translation for a particular section of the web page, add + [`class="notranslate"`](https://support.google.com/translate/?hl=en#2641276). + +* If you want to disable the automatic detection and formatting of possible + phone numbers in Safari on iOS, use [``](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html/#//apple_ref/doc/uid/TP40008193-SW5). + +* Avoid development/stage websites "leaking" into SERPs (search engine results + page) by [implementing X-Robots-tag + headers](https://github.com/h5bp/html5-boilerplate/issues/804). + +* Screen readers currently have less-than-stellar support for HTML5 but the JS + script [accessifyhtml5.js](https://github.com/yatil/accessifyhtml5.js) can + help increase accessibility by adding ARIA roles to HTML5 elements. + + +## News Feeds + +### RSS + +Have an RSS feed? Link to it here. Want to [learn how to write an RSS feed from +scratch](http://www.rssboard.org/rss-specification)? + +```html + +``` + +### Atom + +Atom is similar to RSS, and you might prefer to use it instead of or in +addition to it. [See what Atom's all +about](http://www.atomenabled.org/developers/syndication/). + +```html + +``` + +### Pingbacks + +Your server may be notified when another site links to yours. The href +attribute should contain the location of your pingback service. + +```html + +``` + +* High-level explanation: https://codex.wordpress.org/Introduction_to_Blogging#Pingbacks +* Step-by-step example case: http://www.hixie.ch/specs/pingback/pingback-1.0#TOC5 +* PHP pingback service: https://web.archive.org/web/20131211032834/http://blog.perplexedlabs.com/2009/07/15/xmlrpc-pingbacks-using-php/ + + ## Social Networks @@ -331,216 +521,94 @@ the Microformats wiki](http://microformats.org/wiki/rel-shortlink). ``` +### Separate mobile URLs -## News Feeds +If you use separate URLs for desktop and mobile users, you should consider +helping search engine algorithms better understand the configuration on your +web site. -### RSS +This can be done by adding the following annotations in your HTML pages: -Have an RSS feed? Link to it here. Want to [learn how to write an RSS feed from -scratch](http://www.rssboard.org/rss-specification)? +* on the desktop page, add the `link rel="alternate"` tag pointing to the + corresponding mobile URL, e.g.: -```html - -``` + `` -### Atom +* on the mobile page, add the `link rel="canonical"` tag pointing to the + corresponding desktop URL, e.g.: -Atom is similar to RSS, and you might prefer to use it instead of or in -addition to it. [See what Atom's all -about](http://www.atomenabled.org/developers/syndication/). + `` -```html - -``` +For more information please see: -### Pingbacks - -Your server may be notified when another site links to yours. The href -attribute should contain the location of your pingback service. - -```html - -``` - -* High-level explanation: http://codex.wordpress.org/Introduction_to_Blogging#Pingbacks -* Step-by-step example case: http://www.hixie.ch/specs/pingback/pingback-1.0#TOC5 -* PHP pingback service: http://blog.perplexedlabs.com/2009/07/15/xmlrpc-pingbacks-using-php/ +* https://developers.google.com/webmasters/smartphone-sites/details#separateurls +* https://developers.google.com/webmasters/smartphone-sites/feature-phones -## App Stores - -### Install a Chrome Web Store app - -Users can install a Chrome app directly from your website, as long as the app -and site have been associated via Google's Webmaster Tools. Read more on -[Chrome Web Store's Inline Installation -docs](https://developers.google.com/chrome/web-store/docs/inline_installation). - -```html - -``` - -### Smart App Banners in iOS 6 Safari - -Stop bothering everyone with gross modals advertising your entry in the App Store. -This bit of code will unintrusively allow the user the option to download your iOS -app, or open it with some data about the user's current state on the website. - -```html - -``` - -## Google Analytics augments - -### More tracking settings - -The [optimized Google Analytics -snippet](http://mathiasbynens.be/notes/async-analytics-snippet) included with -HTML5 Boilerplate includes something like this: - -```js -var _gaq = [['_setAccount', 'UA-XXXXX-X'], ['_trackPageview']]; -``` - -In case you need more settings, just extend the array literal instead of -[`.push()`ing to the -array](http://mathiasbynens.be/notes/async-analytics-snippet#dont-push-it) -afterwards: - -```js -var _gaq = [['_setAccount', 'UA-XXXXX-X'], ['_trackPageview'], ['_setAllowAnchor', true]]; -``` - -### Anonymize IP addresses - -In some countries, no personal data may be transferred outside jurisdictions -that do not have similarly strict laws (i.e. from Germany to outside the EU). -Thus a webmaster using the Google Analytics script may have to ensure that no -personal (trackable) data is transferred to the US. You can do that with [the -`_gat.anonymizeIp` -option](http://code.google.com/apis/analytics/docs/gaJS/gaJSApi_gat.html#_gat._anonymizeIp). -In use it looks like this: - -```js -var _gaq = [['_setAccount', 'UA-XXXXX-X'], ['_gat._anonymizeIp'], ['_trackPageview']]; -``` - -### Track jQuery AJAX requests in Google Analytics - -An article by @JangoSteve explains how to [track jQuery AJAX requests in Google -Analytics](http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/). - -Add this to `plugins.js`: - -```js -/* - * Log all jQuery AJAX requests to Google Analytics - * See: http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/ - */ -if (typeof _gaq !== "undefined" && _gaq !== null) { - $(document).ajaxSend(function(event, xhr, settings){ - _gaq.push(['_trackPageview', settings.url]); - }); -} -``` - -### Track JavaScript errors in Google Analytics - -Add this function after `_gaq` is defined: - -```js -(function(window){ - var undefined, - link = function (href) { - var a = window.document.createElement('a'); - a.href = href; - return a; - }; - window.onerror = function (message, file, line, column) { - var host = link(file).hostname; - _gaq.push([ - '_trackEvent', - (host == window.location.hostname || host == undefined || host == '' ? '' : 'external ') + 'error', - message, file + ' LINE: ' + line + (column ? ' COLUMN: ' + column : ''), undefined, undefined, true - ]); - }; -}(window)); -``` - -### Track page scroll - -Add this function after `_gaq` is defined: - -```js -$(function(){ - var isDuplicateScrollEvent, - scrollTimeStart = new Date, - $window = $(window), - $document = $(document), - scrollPercent; - - $window.scroll(function() { - scrollPercent = Math.round(100 * ($window.height() + $window.scrollTop())/$document.height()); - if (scrollPercent > 90 && !isDuplicateScrollEvent) { //page scrolled to 90% - isDuplicateScrollEvent = 1; - _gaq.push(['_trackEvent', 'scroll', - 'Window: ' + $window.height() + 'px; Document: ' + $document.height() + 'px; Time: ' + Math.round((new Date - scrollTimeStart )/1000,1) + 's', - undefined, undefined, true - ]); - } - }); -}); -``` - -## iOS Web Apps +## Web Apps There are a couple of meta tags that provide information about a web app when -added to the Home Screen on iOS. +added to the Home Screen on iOS: -Adding `apple-mobile-web-app-capable` will make your web app chrome-less and +* Adding `apple-mobile-web-app-capable` will make your web app chrome-less and provide the default iOS app view. You can control the color scheme of the default view by adding `apple-mobile-web-app-status-bar-style`. -```html + ```html ``` -You can use `apple-mobile-web-app-title` to add a specific sites name for the +* You can use `apple-mobile-web-app-title` to add a specific sites name for the Home Screen icon. This works since iOS 6. -```html + ```html ``` -For further information please read the [official documentation](http://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html) +For further information please read the [official +documentation](https://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html) on Apple's site. + ### Apple Touch Icons -Touch Icons can be seen as the favicons of mobile devices and tablets. +The Apple touch icons can be seen as the favicons of iOS devices. -If your site or icons are in a sub-directory, you will need to reference the -icons using `link` elements placed in the HTML `head` of your document. +The main sizes of the Apple touch icons are: + +* `57×57px` – iPhone with @1x display and iPod Touch +* `72×72px` – iPad and iPad mini with @1x display running iOS ≤ 6 +* `76×76px` – iPad and iPad mini with @1x display running iOS ≥ 7 +* `114×114px` – iPhone with @2x display running iOS ≤ 6 +* `120×120px` – iPhone with @2x and @3x display running iOS ≥ 7 +* `144×144px` – iPad and iPad mini with @2x display running iOS ≤ 6 +* `152×152px` – iPad and iPad mini with @2x display running iOS 7 +* `180×180px` – iPad and iPad mini with @2x display running iOS 8 + +Displays meaning: + +* @1x - non-Retina +* @2x - Retina +* @3x - Retina HD + +More information about the displays of iOS devices can be found +[here](https://en.wikipedia.org/wiki/List_of_iOS_devices#Display). + +In most cases, one `180×180px` touch icon named `apple-touch-icon.png` +and including: ```html - + ``` -The main sizes of the icons on iOS are: +in the `` of the page is enough. If you use art-direction and/or +want to have different content for each device, you can add more touch +icons as written above. -* iPad, high-resolution display, iOS 7: 152x152 -* iPad, high-resolution display, iOS ≤ 6: 144x144 -* iPhone, high-resolution display, iOS 7: 120x120 -* iPhone, high-resolution display, iOS ≤ 6: 114x114 -* iPad, non-Retina, iOS ≤ 6: 72x72 +For a more comprehensive overview, please refer to Mathias' [article on Touch +Icons](https://mathiasbynens.be/notes/touch-icons). -For non-Retina iPhone, iPod Touch, and Android 2.1+ devices you can use the -example from above or replace the `apple-touch-icon-precomposed.png` within this -project's root folder. - -Please refer to Mathias' [article on Touch -Icons](http://mathiasbynens.be/notes/touch-icons) for a comprehensive overview. ### Apple Touch Startup Image @@ -556,31 +624,22 @@ example for a retina iPhone: However, it is possible to detect which start-up image to use with JavaScript. The Mobile Boilerplate provides a useful function for this. Please see -[helpers.js](https://github.com/h5bp/mobile-boilerplate/blob/master/js/helper.js#L354) +[helpers.js](https://github.com/h5bp/mobile-boilerplate/blob/v4.1.0/js/helper.js#L336-L383) for the implementation. -## Miscellaneous -* Use [HTML5 - polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills). +### Chrome Mobile web apps -* Use [Microformats](http://microformats.org/wiki/Main_Page) (via - [microdata](http://microformats.org/wiki/microdata)) for optimum search - results - [visibility](http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html). +Chrome Mobile has a specific meta tag for making apps [installable to the +homescreen](https://developer.chrome.com/multidevice/android/installtohomescreen) +which tries to be a more generic replacement to Apple's proprietary meta tag: -* If you're building a web app you may want [native style momentum scrolling in - iOS5](http://johanbrook.com/browsers/native-momentum-scrolling-ios-5/) using - `-webkit-overflow-scrolling: touch`. +```html + +``` -* Avoid development/stage websites "leaking" into SERPs (search engine results - page) by [implementing X-Robots-tag - headers](https://github.com/h5bp/html5-boilerplate/issues/804). +Same applies to the touch icons: -* Screen readers currently have less-than-stellar support for HTML5 but the JS - script [accessifyhtml5.js](https://github.com/yatil/accessifyhtml5.js) can - help increase accessibility by adding ARIA roles to HTML5 elements. - - -*Many thanks to [Brian Blakely](https://github.com/brianblakely) for -contributing much of this information.* +```html + +``` diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/faq.md b/public/app/bower_components/html5-boilerplate/dist/doc/faq.md new file mode 100644 index 00000000..e3e2a9c5 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/faq.md @@ -0,0 +1,93 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Frequently asked questions + +* [Why is the URL for jQuery without + `http`?](#why-is-the-url-for-jquery-without-http) +* [Why don't you automatically load the latest version of jQuery from the Google + CDN?](#why-dont-you-automatically-load-the-latest-version-of-jquery-from-the-google-cdn) +* [Why is the Google Analytics code at the bottom? Google recommends it be + placed in the ``.](#why-is-the-google-analytics-code-at-the-bottom-google-recommends-it-be-placed-in-the-head) +* [How can I integrate Bootstrap with HTML5 + Boilerplate?](#how-can-i-integrate-bootstrap-with-html5-boilerplate) +* [Do I need to upgrade my site each time a new version of HTML5 Boilerplate is + released?](#do-i-need-to-upgrade-my-site-each-time-a-new-version-of-html5-boilerplate-is-released) +* [Where can I get help with support + questions?](#where-can-i-get-help-with-support-questions) + +-- + +### Why is the URL for jQuery without `http`? + +It is because of the use of [protocol-relative +URLs](http://paulirish.com/2010/the-protocol-relative-url/). + +**N.B.** If you try to view the local web page directly in the browser, the +browser will fail to load the assets specified using protocol-relative URLs +as it will attempt to fetch them from the local file system. We recommend you +use a local HTTP server to test your web pages, or a file hosting service that +allows you to preview your web pages online (e.g. +[Dropbox](https://www.dropbox.com/)). + +Setting up a local HTTP server can be done using there various +[one-liners](https://gist.github.com/willurd/5720255): + +* PHP 5.4.0+ by running + [`php -S localhost:8080`](https://php.net/manual/en/features.commandline.webserver.php) + from your local directory +* Python 2.x by running `python -m SimpleHTTPServer` from your local directory +* Python 3.x by running `python -m http.server` from your local directory +* Ruby 1.9.2+ by running `ruby -run -ehttpd . -p8080` from your local directory +* Node.js by installing and running either + [`static -p 8080`](https://www.npmjs.org/package/node-static) + or [`http-server -p 8080`](https://www.npmjs.org/package/http-server) + +A list of more complex HTTP servers can be found +[here](misc.md#servers-and-stacks). + + +### Why don't you automatically load the latest version of jQuery from the Google CDN? + +The [file](https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js) to which +the Google [CDN](https://en.wikipedia.org/wiki/Content_delivery_network) points +to is [no longer updated and will stay locked at version `1.11.1` in order to +prevent inadvertent web +breakage](http://blog.jquery.com/2014/07/03/dont-use-jquery-latest-js/). + +In general, version updating should be an intentional decision! You shouldn't +include a URL that will always point to the latest version, as that version: + + * may not be compatible with the existing plugins/code on the site + * will have a very short cache time compare to the specific version, + which means that users won't get the benefits of long-term caching + +### Why is the Google Analytics code at the bottom? Google recommends it be placed in the ``. + +The main advantage of placing it in the `` is that you will track the +user's `pageview` even if they leave the page before it has been fully loaded. +However, having the code at the bottom of the page [helps improve +performance](http://stevesouders.com/efws/inline-scripts-bottom.php). + + +### How can I integrate [Bootstrap](http://getbootstrap.com/) with HTML5 Boilerplate? + +One simple way is to use [Initializr](http://initializr.com) and create a +custom build that includes both HTML5 Boilerplate and +[Bootstrap](http://getbootstrap.com/). + +Read more about how [HTML5 Boilerplate and Bootstrap complement each +other](https://www.quora.com/Is-Bootstrap-a-complement-or-an-alternative-to-HTML5-Boilerplate-or-viceversa/answer/Nicolas-Gallagher). + + +### Do I need to upgrade my site each time a new version of HTML5 Boilerplate is released? + +No, same as you don't normally replace the foundation of a house once it +was built. However, there is nothing stopping you from trying to work in the +latest changes, but you'll have to assess the costs/benefits of doing so. + + +### Where can I get help with support questions? + +Please ask for help on +[StackOverflow](https://stackoverflow.com/questions/tagged/html5boilerplate). diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/html.md b/public/app/bower_components/html5-boilerplate/dist/doc/html.md new file mode 100644 index 00000000..91d98f88 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/html.md @@ -0,0 +1,223 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The HTML + +By default, HTML5 Boilerplate provides two `html` pages: + +* [`index.html`](#indexhtml) - a default HTML skeleton that should form the + basis of all pages on your website +* [`404.html`](#404html) - a placeholder 404 error page + + +## `index.html` + + +### The `no-js` class + +The `no-js` class is provided in order to allow you to more easily and +explicitly add custom styles based on whether JavaScript is disabled +(`.no-js`) or enabled (`.js`). Using this technique also helps [avoid the +FOUC](http://paulirish.com/2009/avoiding-the-fouc-v3/). + + +## Language attribute + +Please consider specifying the language of your content by adding the `lang` +attribute to `` as in this example: + +```html + +``` + +### The order of the `` and `<meta>` tags + +The order in which the `<title>` and the `<meta>` tags are specified is +important because: + +1) the charset declaration (`<meta charset="utf-8">`): + + * must be included completely within the [first 1024 bytes of the + document](https://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#charset) + + * should be specified as early as possible (before any content that could + be controlled by an attacker, such as a `<title>` element) in order to + avoid a potential [encoding-related security + issue](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7) in + Internet Explorer + +2) the meta tag for compatibility mode + (`<meta http-equiv="X-UA-Compatible" content="IE=edge">`): + + * [needs to be included before all other tags except for the `<title>` and + the other `<meta>` + tags](http://msdn.microsoft.com/en-us/library/cc288325.aspx) + + +### `X-UA-Compatible` + +Internet Explorer 8/9/10 support [document compatibility +modes](http://msdn.microsoft.com/en-us/library/cc288325.aspx) that affect the +way webpages are interpreted and displayed. Because of this, even if your site's +visitor is using, let's say, Internet Explorer 9, it's possible that IE will not +use the latest rendering engine, and instead, decide to render your page using +the Internet Explorer 5.5 rendering engine. + +Specifying the `X-UA-Compatible` meta tag: + +```html +<meta http-equiv="X-UA-Compatible" content="IE=edge"> +``` + +or sending the page with the following HTTP response header + +``` +X-UA-Compatible: IE=edge +``` + +will force Internet Explorer 8/9/10 to render the webpage in the highest +available mode in [the various cases when it may +not](https://hsivonen.fi/doctype/#ie8), and therefore, ensure that anyone +browsing your site is treated to the best possible user experience that +browser can offer. + +If possible, we recommend that you remove the `meta` tag and send only the +HTTP response header as the `meta` tag will not always work if your site is +served on a non-standard port, as Internet Explorer's preference option +`Display intranet sites in Compatibility View` is checked by default. + +If you are using Apache as your webserver, including the +[`.htaccess`](https://github.com/h5bp/server-configs-apache) file takes care of +the HTTP header. If you are using a different server, check out our [other +server config](https://github.com/h5bp/server-configs). + +Starting with Internet Explorer 11, [document modes are +deprecated](http://msdn.microsoft.com/en-us/library/ie/bg182625.aspx#docmode). +If your business still relies on older web apps and services that were +designed for older versions of Internet Explorer, you might want to consider +enabling [Enterprise Mode](http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx) throughout your company. + + +## Mobile viewport + +There are a few different options that you can use with the [`viewport` meta +tag](https://docs.google.com/present/view?id=dkx3qtm_22dxsrgcf4 "Viewport and +Media Queries - The Complete Idiot's Guide"). You can find out more in [the +Apple developer docs](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html). +HTML5 Boilerplate comes with a simple setup that strikes a good balance for general use cases. + +```html +<meta name="viewport" content="width=device-width, initial-scale=1"> +``` + +## Favicons and Touch Icon + +The shortcut icons should be put in the root directory of your site. HTML5 +Boilerplate comes with a default set of icons (include favicon and one Apple +Touch Icon) that you can use as a baseline to create your own. + +Please refer to the more detailed description in the [Extend section](extend.md) +of these docs. + +## Modernizr + +HTML5 Boilerplate uses a custom build of Modernizr. + +[Modernizr](http://modernizr.com) is a JavaScript library which adds classes to +the `html` element based on the results of feature test and which ensures that +all browsers can make use of HTML5 elements (as it includes the HTML5 Shiv). +This allows you to target parts of your CSS and JavaScript based on the +features supported by a browser. + +In general, in order to keep page load times to a minimum, it's best to call +any JavaScript at the end of the page because if a script is slow to load +from an external server it may cause the whole page to hang. That said, the +Modernizr script *needs* to run *before* the browser begins rendering the page, +so that browsers lacking support for some of the new HTML5 elements are able to +handle them properly. Therefore the Modernizr script is the only JavaScript +file synchronously loaded at the top of the document. + +## What about polyfills? + +If you need to include [polyfills](https://remysharp.com/2010/10/08/what-is-a-polyfill) +in your project, you must make sure those load before any other JavaScript. If you're +using some polyfill CDN service, like [cdn.polyfill.io](http://cdn.polyfill.io/), +just put it before the other scripts in the bottom of the page: + +```html + <script src="//cdn.polyfill.io/v1/polyfill.min.js"></script> + <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> + <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.11.2.min.js"><\/script>')</script> + <script src="js/plugins.js"></script> + <script src="js/main.js"></script> +</body> +``` + +If you like to just include the polyfills yourself, you could include them in +`js/plugins.js`. When you have a bunch of polyfills to load in, you could +also create a `polyfills.js` file in the `js/vendor` directory. Also using +this technique, make sure the polyfills are all loaded before any other +Javascript. + +There are some misconceptions about Modernizr and polyfills. It's important +to understand that Modernizr just handles feature checking, not polyfilling +itself. The only thing Modernizr does regarding polyfills is that the team +maintains [a huge list of cross Browser polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills). + +## The content area + +The central part of the boilerplate template is pretty much empty. This is +intentional, in order to make the boilerplate suitable for both web page and +web app development. + +### Browser Upgrade Prompt + +The main content area of the boilerplate includes a prompt to install an up to +date browser for users of IE 6/7. If you intended to support IE 6/7, then you +should remove the snippet of code. + +### Google CDN for jQuery + +The Google CDN version of the jQuery JavaScript library is referenced towards +the bottom of the page using a protocol-independent path (read more about this +in the [FAQ](faq.md)). A local fallback of jQuery is included for rare instances +when the CDN version might not be available, and to facilitate offline +development. + +The Google CDN version is chosen over other [potential candidates (like the +jQuery CDN](https://jquery.com/download/#using-jquery-with-a-cdn)) because +it's fast in absolute terms and it has the best overall +[penetration](http://httparchive.org/trends.php#perGlibs) which increases the +odds of having a copy of the library in your user's browser cache. + +While the Google CDN is a strong default solution your site or application may +require a different configuration. Testing your site with services like +[WebPageTest](http://www.webpagetest.org/) and browser tools like +[PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/) or +[YSlow](https://developer.yahoo.com/yslow/) will help you examine the real +world performance of your site and can show where you can optimize your specific +site or application. + + +### Google Universal Analytics Tracking Code + +Finally, an optimized version of the Google Universal Analytics tracking code is +included. Google recommends that this script be placed at the top of the page. +Factors to consider: if you place this script at the top of the page, you’ll +be able to count users who don’t fully load the page, and you’ll incur the max +number of simultaneous connections of the browser. + +Further information: + +* [Optimizing the Google Universal Analytics + Snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics) +* [Introduction to + Analytics.js](https://developers.google.com/analytics/devguides/collection/analyticsjs/) +* [Google Analytics Demos & Tools](https://ga-dev-tools.appspot.com/) + +**N.B.** The Google Universal Analytics snippet is included by default mainly +because Google Analytics is [currently one of the most popular tracking +solutions](https://trends.builtwith.com/analytics/Google-Analytics) out there. +However, its usage isn't set in stone, and you SHOULD consider exploring the +[alternatives](https://en.wikipedia.org/wiki/List_of_web_analytics_software) +and use whatever suits your needs best! diff --git a/public/app/bower_components/html5-boilerplate/doc/js.md b/public/app/bower_components/html5-boilerplate/dist/doc/js.md similarity index 78% rename from public/app/bower_components/html5-boilerplate/doc/js.md rename to public/app/bower_components/html5-boilerplate/dist/doc/js.md index 2781c984..2088d9fb 100644 --- a/public/app/bower_components/html5-boilerplate/doc/js.md +++ b/public/app/bower_components/html5-boilerplate/dist/doc/js.md @@ -22,6 +22,12 @@ One approach is to put jQuery plugins inside of a `(function($){ ... blanket. Read more about [jQuery plugin authoring](http://docs.jquery.com/Plugins/Authoring#Getting_Started) +By default the `plugins.js` file contains a small script to avoid `console` +errors in browsers that lack a `console`. The script will make sure that, if +a console method isn't available, that method will have the value of empty +function, thus, preventing the browser from throwing an error. + + ## vendor This directory can be used to contain all 3rd party library code. diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/misc.md b/public/app/bower_components/html5-boilerplate/dist/doc/misc.md new file mode 100644 index 00000000..459688b5 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/misc.md @@ -0,0 +1,198 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Miscellaneous + +* [.gitignore](#gitignore) +* [.editorconfig](#editorconfig) +* [Server Configuration](#server-configuration) +* [crossdomain.xml](#crossdomainxml) +* [robots.txt](#robotstxt) +* [browserconfig.xml](#browserconfigxml) + +-- + +## .gitignore + +HTML5 Boilerplate includes a basic project-level `.gitignore`. This should +primarily be used to avoid certain project-level files and directories from +being kept under source control. Different development-environments will +benefit from different collections of ignores. + +OS-specific and editor-specific files should be ignored using a "global +ignore" that applies to all repositories on your system. + +For example, add the following to your `~/.gitconfig`, where the `.gitignore` +in your HOME directory contains the files and directories you'd like to +globally ignore: + +```gitignore +[core] + excludesfile = ~/.gitignore +``` + +* More on global ignores: https://help.github.com/articles/ignoring-files +* Comprehensive set of ignores on GitHub: https://github.com/github/gitignore + + +## .editorconfig + +The `.editorconfig` file is provided in order to encourage and help you and +your team define and maintain consistent coding styles between different +editors and IDEs. + +By default, `.editorconfig` includes some basic +[properties](http://editorconfig.org/#supported-properties) that reflect the +coding styles from the files provided by default, but you can easily change +them to better suit your needs. + +In order for your editor/IDE to apply the +[properties](http://editorconfig.org/#supported-properties) from the +`.editorconfig` file, you will need to [install a +plugin]( http://editorconfig.org/#download). + +__N.B.__ If you aren't using the server configurations provided by HTML5 +Boilerplate, we highly encourage you to configure your server to block +access to `.editorconfig` files, as they can disclose sensitive information! + +For more details, please refer to the [EditorConfig +project](http://editorconfig.org/). + + +## Server Configuration + +H5BP includes a [`.htaccess`](#htaccess) file for the Apache HTTP server. If you are not using +Apache as your web server, then you are encouraged to download a +[server configuration](https://github.com/h5bp/server-configs) that corresponds +to your web server and environment. + + +### Servers and Stacks + +A comprehensive list of web servers and stacks are beyond the scope of this +documentation, but some common ones include: + +* [Apache HTTP Server](https://httpd.apache.org/docs/trunk/getting-started.html) + * [LAMP](https://en.wikipedia.org/wiki/LAMP_%28software_bundle%29) +(Linux, Apache, MySQL, and PHP). +Other variants include [MAMP](https://www.mamp.info/en/index.html), +[WAMP](http://www.wampserver.com/en/), +or [XAMPP](https://www.apachefriends.org/index.html). + * LAPP uses PostgreSQL instead of MySQL +* [Nginx](http://wiki.nginx.org/GettingStarted) + * [LEMP](http://www.chrisjohnston.org/ubuntu-tutorials/setting-up-a-lemp-stack-ubuntu-904) +is similar to the LAMP stack but uses Nginx +* [IIS](https://en.wikipedia.org/wiki/Internet_Information_Services) + * [ASP.NET](http://www.asp.net/get-started) +* [MEAN](http://mean.io/) (MongoDB, Express, AngularJS, Node.js) + + +### .htaccess + +A `.htaccess` (hypertext access) file is a +[Apache HTTP server configuration file](https://github.com/h5bp/server-configs-apache). +The `.htaccess` file is mostly used for: + +* Rewriting URLs +* Controlling cache +* Authentication +* Server-side includes +* Redirects +* Gzipping + +If you have access to the main server configuration file (usually called +`httpd.conf`), you should add the logic from the `.htaccess` file in, for +example, a <Directory> section in the main configuration file. This is usually +the recommended way, as using .htaccess files slows down Apache! + +To enable Apache modules locally, please see: +https://github.com/h5bp/server-configs-apache/wiki/How-to-enable-Apache-modules. + +In the repo the `.htaccess` is used for: + +* Allowing cross-origin access to web fonts +* CORS header for images when browsers request it +* Enable `404.html` as 404 error document +* Making the website experience better for IE users better +* Media UTF-8 as character encoding for `text/html` and `text/plain` +* Enabling the rewrite URLs engine +* Forcing or removing the `www.` at the begin of a URL +* It blocks access to directories without a default document +* It blocks access to files that can expose sensitive information. +* It reduces MIME type security risks +* It forces compressing (gzipping) +* It tells the browser whether they should request a specific file from the + server or whether they should grab it from the browser's cache + +When using `.htaccess` we recommend reading all inline comments (the rules after +a `#`) in the file once. There is a bunch of optional stuff in it. + +If you want to know more about the `.htaccess` file check out +https://httpd.apache.org/docs/current/howto/htaccess.html. + +Notice that the original repo for the `.htaccess` file is [this +one](https://github.com/h5bp/server-configs-apache). + + +## crossdomain.xml + +The _cross-domain policy file_ is an XML document that gives a web client — +such as Adobe Flash Player, Adobe Reader, etc. — permission to handle data +across multiple domains, by: + + * granting read access to data + * permitting the client to include custom headers in cross-domain requests + * granting permissions for socket-based connections + +__e.g.__ If a client hosts content from a particular source domain and that +content makes requests directed towards a domain other than its own, the remote +domain would need to host a cross-domain policy file in order to grant access +to the source domain and allow the client to continue with the transaction. + +For more in-depth information, please see Adobe's [cross-domain policy file +specification](https://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html). + + +## robots.txt + +The `robots.txt` file is used to give instructions to web robots on what can +be crawled from the website. + +By default, the file provided by this project includes the next two lines: + + * `User-agent: *` - the following rules apply to all web robots + * `Disallow:` - everything on the website is allowed to be crawled + +If you want to disallow certain pages you will need to specify the path in a +`Disallow` directive (e.g.: `Disallow: /path`) or, if you want to disallow +crawling of all content, use `Disallow: /`. + +The `/robots.txt` file is not intended for access control, so don't try to +use it as such. Think of it as a "No Entry" sign, rather than a locked door. +URLs disallowed by the `robots.txt` file might still be indexed without being +crawled, and the content from within the `robots.txt` file can be viewed by +anyone, potentially disclosing the location of your private content! So, if +you want to block access to private content, use proper authentication instead. + +For more information about `robots.txt`, please see: + + * [robotstxt.org](http://www.robotstxt.org/) + * [How Google handles the `robots.txt` file](https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt) + + +## browserconfig.xml + +The `browserconfig.xml` file is used to customize the tile displayed when users +pin your site to the Windows 8.1 start screen. In there you can define custom +tile colors, custom images or even [live tiles](http://msdn.microsoft.com/en-us/library/ie/dn455106.aspx#CreatingLiveTiles). + +By default, the file points to 2 placeholder tile images: + +* `tile.png` (558x558px): used for `Small`, `Medium` and `Large` tiles. + This image resizes automatically when necessary. +* `tile-wide.png` (558x270px): user for `Wide` tiles. + +Notice that IE11 uses the same images when adding a site to the `favorites`. + +For more in-depth information about the `browserconfig.xml` file, please +see [MSDN](http://msdn.microsoft.com/en-us/library/ie/dn320426%28v=vs.85%29.aspx). diff --git a/public/app/bower_components/html5-boilerplate/doc/usage.md b/public/app/bower_components/html5-boilerplate/dist/doc/usage.md similarity index 73% rename from public/app/bower_components/html5-boilerplate/doc/usage.md rename to public/app/bower_components/html5-boilerplate/dist/doc/usage.md index df54996b..4c61b1bf 100644 --- a/public/app/bower_components/html5-boilerplate/doc/usage.md +++ b/public/app/bower_components/html5-boilerplate/dist/doc/usage.md @@ -10,8 +10,7 @@ usually involves the following: 2. Add some content, style, and functionality. 3. Run your site locally to see how it looks. 4. (Optionally run a build script to automate the optimization of your site - - e.g. [ant build script](https://github.com/h5bp/ant-build-script) or [node - build script](https://github.com/h5bp/node-build-script)). + e.g. [ant build script](https://github.com/h5bp/ant-build-script)) 5. Deploy your site. @@ -32,14 +31,18 @@ A basic HTML5 Boilerplate site initially looks something like this: │ └── vendor │ ├── jquery.min.js │ └── modernizr.min.js +├── .editorconfig ├── .htaccess ├── 404.html -├── apple-touch-icon-precomposed.png +├── apple-touch-icon.png +├── browserconfig.xml ├── index.html ├── humans.txt ├── robots.txt ├── crossdomain.xml -└── favicon.ico +├── favicon.ico +├── tile-wide.png +└── tile.png ``` What follows is a general overview of each major part and how to use them. @@ -65,7 +68,7 @@ get you started. [About the JavaScript](js.md). The default web server configs are for Apache. For more information, please refer to the [Apache Server Configs -documentation](https://github.com/h5bp/server-configs-apache/tree/master/doc). +repository](https://github.com/h5bp/server-configs-apache). Host your site on a server other than Apache? You're likely to find the corresponding server configs project listed in our [Server Configs @@ -75,6 +78,19 @@ corresponding server configs project listed in our [Server Configs A helpful custom 404 to get you started. +### browserconfig.xml + +This file contains all settings regarding custom tiles for IE11. + +For more info on this topic, please refer to +[MSDN](http://msdn.microsoft.com/en-us/library/ie/dn455106.aspx). + +### .editorconfig + +The `.editorconfig` file is provided in order to encourage and help you and +your team to maintain consistent coding styles between different +editors and IDEs. [Read more about the `.editorconfig` file](misc.md#editorconfig). + ### index.html This is the default HTML skeleton that should form the basis of all pages on @@ -84,8 +100,8 @@ need to integrate this starting HTML with your setup. Make sure that you update the URLs for the referenced CSS and JavaScript if you modify the directory structure at all. -If you are using Google Analytics, make sure that you edit the corresponding -snippet at the bottom to include your analytics ID. +If you are using Google Universal Analytics, make sure that you edit the +corresponding snippet at the bottom to include your analytics ID. ### humans.txt @@ -99,15 +115,16 @@ Edit this file to include any pages you need hidden from search engines. ### crossdomain.xml A template for working with cross-domain requests. [About -crossdomain.xml](crossdomain.md). +crossdomain.xml](misc.md#crossdomainxml). ### Icons -Replace the default `favicon.ico` and Apple Touch Icon with your own. +Replace the default `favicon.ico`, `tile.png`, `tile-wide.png` and Apple +Touch Icon with your own. If you want to use different Apple Touch Icons for different resolutions please refer to the [according documentation](extend.md#apple-touch-icons). You might want to check out Hans' handy [HTML5 Boilerplate Favicon and Apple Touch Icon -PSD-Template](http://drublic.de/blog/html5-boilerplate-favicons-psd-template/). +PSD-Template](https://drublic.de/blog/html5-boilerplate-favicons-psd-template/). diff --git a/public/app/bower_components/html5-boilerplate/favicon.ico b/public/app/bower_components/html5-boilerplate/dist/favicon.ico similarity index 100% rename from public/app/bower_components/html5-boilerplate/favicon.ico rename to public/app/bower_components/html5-boilerplate/dist/favicon.ico diff --git a/public/app/bower_components/html5-boilerplate/humans.txt b/public/app/bower_components/html5-boilerplate/dist/humans.txt similarity index 66% rename from public/app/bower_components/html5-boilerplate/humans.txt rename to public/app/bower_components/html5-boilerplate/dist/humans.txt index d9e1bb98..8d2330fd 100644 --- a/public/app/bower_components/html5-boilerplate/humans.txt +++ b/public/app/bower_components/html5-boilerplate/dist/humans.txt @@ -11,5 +11,5 @@ # TECHNOLOGY COLOPHON - HTML5, CSS3 - Normalize.css, jQuery, Modernizr + CSS3, HTML5 + Apache Server Configs, jQuery, Modernizr, Normalize.css diff --git a/public/app/bower_components/html5-boilerplate/img/.gitignore b/public/app/bower_components/html5-boilerplate/dist/img/.gitignore similarity index 100% rename from public/app/bower_components/html5-boilerplate/img/.gitignore rename to public/app/bower_components/html5-boilerplate/dist/img/.gitignore diff --git a/public/app/bower_components/html5-boilerplate/index.html b/public/app/bower_components/html5-boilerplate/dist/index.html similarity index 59% rename from public/app/bower_components/html5-boilerplate/index.html rename to public/app/bower_components/html5-boilerplate/dist/index.html index dbc6abcc..6cbd28fb 100644 --- a/public/app/bower_components/html5-boilerplate/index.html +++ b/public/app/bower_components/html5-boilerplate/dist/index.html @@ -1,8 +1,5 @@ -<!DOCTYPE html> -<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]--> -<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]--> -<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]--> -<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]--> +<!doctype html> +<html class="no-js" lang=""> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -10,22 +7,23 @@ <meta name="description" content=""> <meta name="viewport" content="width=device-width, initial-scale=1"> - <!-- Place favicon.ico and apple-touch-icon.png in the root directory --> + <link rel="apple-touch-icon" href="apple-touch-icon.png"> + <!-- Place favicon.ico in the root directory --> <link rel="stylesheet" href="css/normalize.css"> <link rel="stylesheet" href="css/main.css"> - <script src="js/vendor/modernizr-2.6.2.min.js"></script> + <script src="js/vendor/modernizr-2.8.3.min.js"></script> </head> <body> - <!--[if lt IE 7]> - <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p> + <!--[if lt IE 8]> + <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p> <![endif]--> <!-- Add your site or application content here --> <p>Hello world! This is HTML5 Boilerplate.</p> - <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> - <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.10.2.min.js"><\/script>')</script> + <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> + <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.11.2.min.js"><\/script>')</script> <script src="js/plugins.js"></script> <script src="js/main.js"></script> @@ -36,7 +34,7 @@ e=o.createElement(i);r=o.getElementsByTagName(i)[0]; e.src='//www.google-analytics.com/analytics.js'; r.parentNode.insertBefore(e,r)}(window,document,'script','ga')); - ga('create','UA-XXXXX-X');ga('send','pageview'); + ga('create','UA-XXXXX-X','auto');ga('send','pageview'); </script> </body> </html> diff --git a/public/app/bower_components/html5-boilerplate/dist/js/main.js b/public/app/bower_components/html5-boilerplate/dist/js/main.js new file mode 100644 index 00000000..e69de29b diff --git a/public/app/bower_components/html5-boilerplate/js/plugins.js b/public/app/bower_components/html5-boilerplate/dist/js/plugins.js similarity index 91% rename from public/app/bower_components/html5-boilerplate/js/plugins.js rename to public/app/bower_components/html5-boilerplate/dist/js/plugins.js index 728680b0..f8874802 100644 --- a/public/app/bower_components/html5-boilerplate/js/plugins.js +++ b/public/app/bower_components/html5-boilerplate/dist/js/plugins.js @@ -6,7 +6,7 @@ 'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error', 'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log', 'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd', - 'timeStamp', 'trace', 'warn' + 'timeline', 'timelineEnd', 'timeStamp', 'trace', 'warn' ]; var length = methods.length; var console = (window.console = window.console || {}); diff --git a/public/app/bower_components/html5-boilerplate/dist/js/vendor/jquery-1.11.2.min.js b/public/app/bower_components/html5-boilerplate/dist/js/vendor/jquery-1.11.2.min.js new file mode 100644 index 00000000..826372a2 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/js/vendor/jquery-1.11.2.min.js @@ -0,0 +1,5 @@ +/*! jQuery v1.11.2 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ +!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l="1.11.2",m=function(a,b){return new m.fn.init(a,b)},n=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,o=/^-ms-/,p=/-([\da-z])/gi,q=function(a,b){return b.toUpperCase()};m.fn=m.prototype={jquery:l,constructor:m,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=m.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return m.each(this,a,b)},map:function(a){return this.pushStack(m.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},m.extend=m.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||m.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(e=arguments[h]))for(d in e)a=g[d],c=e[d],g!==c&&(j&&c&&(m.isPlainObject(c)||(b=m.isArray(c)))?(b?(b=!1,f=a&&m.isArray(a)?a:[]):f=a&&m.isPlainObject(a)?a:{},g[d]=m.extend(j,f,c)):void 0!==c&&(g[d]=c));return g},m.extend({expando:"jQuery"+(l+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===m.type(a)},isArray:Array.isArray||function(a){return"array"===m.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!m.isArray(a)&&a-parseFloat(a)+1>=0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},isPlainObject:function(a){var b;if(!a||"object"!==m.type(a)||a.nodeType||m.isWindow(a))return!1;try{if(a.constructor&&!j.call(a,"constructor")&&!j.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}if(k.ownLast)for(b in a)return j.call(a,b);for(b in a);return void 0===b||j.call(a,b)},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(b){b&&m.trim(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(o,"ms-").replace(p,q)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=r(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(n,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(r(Object(a))?m.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){var d;if(b){if(g)return g.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=+b.length,d=0,e=a.length;while(c>d)a[e++]=b[d++];if(c!==c)while(void 0!==b[d])a[e++]=b[d++];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=r(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(f=a[b],b=a,a=f),m.isFunction(a)?(c=d.call(arguments,2),e=function(){return a.apply(b||this,c.concat(d.call(arguments)))},e.guid=a.guid=a.guid||m.guid++,e):void 0},now:function(){return+new Date},support:k}),m.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function r(a){var b=a.length,c=m.type(a);return"function"===c||m.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var s=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=hb(),z=hb(),A=hb(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N=M.replace("w","w#"),O="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+N+"))|)"+L+"*\\]",P=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+O+")*)|.*)\\)|)",Q=new RegExp(L+"+","g"),R=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),S=new RegExp("^"+L+"*,"+L+"*"),T=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),U=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),V=new RegExp(P),W=new RegExp("^"+N+"$"),X={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+P),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ab=/[+~]/,bb=/'|\\/g,cb=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),db=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},eb=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(fb){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function gb(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],k=b.nodeType,"string"!=typeof a||!a||1!==k&&9!==k&&11!==k)return d;if(!e&&p){if(11!==k&&(f=_.exec(a)))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return H.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName)return H.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=1!==k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(bb,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+rb(o[l]);w=ab.test(a)&&pb(b.parentNode)||b,x=o.join(",")}if(x)try{return H.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function hb(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ib(a){return a[u]=!0,a}function jb(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function kb(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function lb(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function mb(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function nb(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function ob(a){return ib(function(b){return b=+b,ib(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function pb(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=gb.support={},f=gb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=gb.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=g.documentElement,e=g.defaultView,e&&e!==e.top&&(e.addEventListener?e.addEventListener("unload",eb,!1):e.attachEvent&&e.attachEvent("onunload",eb)),p=!f(g),c.attributes=jb(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=jb(function(a){return a.appendChild(g.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(g.getElementsByClassName),c.getById=jb(function(a){return o.appendChild(a).id=u,!g.getElementsByName||!g.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(g.querySelectorAll))&&(jb(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\f]' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),jb(function(a){var b=g.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&jb(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",P)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===g||a.ownerDocument===v&&t(v,a)?-1:b===g||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,h=[a],i=[b];if(!e||!f)return a===g?-1:b===g?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return lb(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?lb(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},g):n},gb.matches=function(a,b){return gb(a,null,null,b)},gb.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return gb(b,n,null,[a]).length>0},gb.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},gb.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},gb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},gb.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=gb.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=gb.selectors={cacheLength:50,createPseudo:ib,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(cb,db),a[3]=(a[3]||a[4]||a[5]||"").replace(cb,db),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||gb.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&gb.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(cb,db).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=gb.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(Q," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||gb.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ib(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ib(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?ib(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ib(function(a){return function(b){return gb(a,b).length>0}}),contains:ib(function(a){return a=a.replace(cb,db),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ib(function(a){return W.test(a||"")||gb.error("unsupported lang: "+a),a=a.replace(cb,db).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:ob(function(){return[0]}),last:ob(function(a,b){return[b-1]}),eq:ob(function(a,b,c){return[0>c?c+b:c]}),even:ob(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:ob(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:ob(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:ob(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=mb(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=nb(b);function qb(){}qb.prototype=d.filters=d.pseudos,d.setFilters=new qb,g=gb.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){(!c||(e=S.exec(h)))&&(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=T.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(R," ")}),h=h.slice(c.length));for(g in d.filter)!(e=X[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?gb.error(a):z(a,i).slice(0)};function rb(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function sb(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function tb(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ub(a,b,c){for(var d=0,e=b.length;e>d;d++)gb(a,b[d],c);return c}function vb(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function wb(a,b,c,d,e,f){return d&&!d[u]&&(d=wb(d)),e&&!e[u]&&(e=wb(e,f)),ib(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ub(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:vb(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=vb(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=vb(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function xb(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=sb(function(a){return a===b},h,!0),l=sb(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[sb(tb(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return wb(i>1&&tb(m),i>1&&rb(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&xb(a.slice(i,e)),f>e&&xb(a=a.slice(e)),f>e&&rb(a))}m.push(c)}return tb(m)}function yb(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=F.call(i));s=vb(s)}H.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&gb.uniqueSort(i)}return k&&(w=v,j=t),r};return c?ib(f):f}return h=gb.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=xb(b[c]),f[u]?d.push(f):e.push(f);f=A(a,yb(e,d)),f.selector=a}return f},i=gb.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(cb,db),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(cb,db),ab.test(j[0].type)&&pb(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&rb(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,ab.test(a)&&pb(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=jb(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),jb(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||kb("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&jb(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||kb("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),jb(function(a){return null==a.getAttribute("disabled")})||kb(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),gb}(a);m.find=s,m.expr=s.selectors,m.expr[":"]=m.expr.pseudos,m.unique=s.uniqueSort,m.text=s.getText,m.isXMLDoc=s.isXML,m.contains=s.contains;var t=m.expr.match.needsContext,u=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,v=/^.[^:#\[\.,]*$/;function w(a,b,c){if(m.isFunction(b))return m.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return m.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(v.test(b))return m.filter(b,a,c);b=m.filter(b,a)}return m.grep(a,function(a){return m.inArray(a,b)>=0!==c})}m.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?m.find.matchesSelector(d,a)?[d]:[]:m.find.matches(a,m.grep(b,function(a){return 1===a.nodeType}))},m.fn.extend({find:function(a){var b,c=[],d=this,e=d.length;if("string"!=typeof a)return this.pushStack(m(a).filter(function(){for(b=0;e>b;b++)if(m.contains(d[b],this))return!0}));for(b=0;e>b;b++)m.find(a,d[b],c);return c=this.pushStack(e>1?m.unique(c):c),c.selector=this.selector?this.selector+" "+a:a,c},filter:function(a){return this.pushStack(w(this,a||[],!1))},not:function(a){return this.pushStack(w(this,a||[],!0))},is:function(a){return!!w(this,"string"==typeof a&&t.test(a)?m(a):a||[],!1).length}});var x,y=a.document,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=m.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||x).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof m?b[0]:b,m.merge(this,m.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:y,!0)),u.test(c[1])&&m.isPlainObject(b))for(c in b)m.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}if(d=y.getElementById(c[2]),d&&d.parentNode){if(d.id!==c[2])return x.find(a);this.length=1,this[0]=d}return this.context=y,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):m.isFunction(a)?"undefined"!=typeof x.ready?x.ready(a):a(m):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),m.makeArray(a,this))};A.prototype=m.fn,x=m(y);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};m.extend({dir:function(a,b,c){var d=[],e=a[b];while(e&&9!==e.nodeType&&(void 0===c||1!==e.nodeType||!m(e).is(c)))1===e.nodeType&&d.push(e),e=e[b];return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),m.fn.extend({has:function(a){var b,c=m(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if(m.contains(this,c[b]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=t.test(a)||"string"!=typeof a?m(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&m.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?m.unique(f):f)},index:function(a){return a?"string"==typeof a?m.inArray(this[0],m(a)):m.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(m.unique(m.merge(this.get(),m(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}m.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return m.dir(a,"parentNode")},parentsUntil:function(a,b,c){return m.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return m.dir(a,"nextSibling")},prevAll:function(a){return m.dir(a,"previousSibling")},nextUntil:function(a,b,c){return m.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return m.dir(a,"previousSibling",c)},siblings:function(a){return m.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return m.sibling(a.firstChild)},contents:function(a){return m.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:m.merge([],a.childNodes)}},function(a,b){m.fn[a]=function(c,d){var e=m.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=m.filter(d,e)),this.length>1&&(C[a]||(e=m.unique(e)),B.test(a)&&(e=e.reverse())),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return m.each(a.match(E)||[],function(a,c){b[c]=!0}),b}m.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):m.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(c=a.memory&&l,d=!0,f=g||0,g=0,e=h.length,b=!0;h&&e>f;f++)if(h[f].apply(l[0],l[1])===!1&&a.stopOnFalse){c=!1;break}b=!1,h&&(i?i.length&&j(i.shift()):c?h=[]:k.disable())},k={add:function(){if(h){var d=h.length;!function f(b){m.each(b,function(b,c){var d=m.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),b?e=h.length:c&&(g=d,j(c))}return this},remove:function(){return h&&m.each(arguments,function(a,c){var d;while((d=m.inArray(c,h,d))>-1)h.splice(d,1),b&&(e>=d&&e--,f>=d&&f--)}),this},has:function(a){return a?m.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],e=0,this},disable:function(){return h=i=c=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,c||k.disable(),this},locked:function(){return!i},fireWith:function(a,c){return!h||d&&!i||(c=c||[],c=[a,c.slice?c.slice():c],b?i.push(c):j(c)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!d}};return k},m.extend({Deferred:function(a){var b=[["resolve","done",m.Callbacks("once memory"),"resolved"],["reject","fail",m.Callbacks("once memory"),"rejected"],["notify","progress",m.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return m.Deferred(function(c){m.each(b,function(b,f){var g=m.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&m.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?m.extend(a,d):d}},e={};return d.pipe=d.then,m.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&m.isFunction(a.promise)?e:0,g=1===f?a:m.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&m.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;m.fn.ready=function(a){return m.ready.promise().done(a),this},m.extend({isReady:!1,readyWait:1,holdReady:function(a){a?m.readyWait++:m.ready(!0)},ready:function(a){if(a===!0?!--m.readyWait:!m.isReady){if(!y.body)return setTimeout(m.ready);m.isReady=!0,a!==!0&&--m.readyWait>0||(H.resolveWith(y,[m]),m.fn.triggerHandler&&(m(y).triggerHandler("ready"),m(y).off("ready")))}}});function I(){y.addEventListener?(y.removeEventListener("DOMContentLoaded",J,!1),a.removeEventListener("load",J,!1)):(y.detachEvent("onreadystatechange",J),a.detachEvent("onload",J))}function J(){(y.addEventListener||"load"===event.type||"complete"===y.readyState)&&(I(),m.ready())}m.ready.promise=function(b){if(!H)if(H=m.Deferred(),"complete"===y.readyState)setTimeout(m.ready);else if(y.addEventListener)y.addEventListener("DOMContentLoaded",J,!1),a.addEventListener("load",J,!1);else{y.attachEvent("onreadystatechange",J),a.attachEvent("onload",J);var c=!1;try{c=null==a.frameElement&&y.documentElement}catch(d){}c&&c.doScroll&&!function e(){if(!m.isReady){try{c.doScroll("left")}catch(a){return setTimeout(e,50)}I(),m.ready()}}()}return H.promise(b)};var K="undefined",L;for(L in m(k))break;k.ownLast="0"!==L,k.inlineBlockNeedsLayout=!1,m(function(){var a,b,c,d;c=y.getElementsByTagName("body")[0],c&&c.style&&(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),typeof b.style.zoom!==K&&(b.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",k.inlineBlockNeedsLayout=a=3===b.offsetWidth,a&&(c.style.zoom=1)),c.removeChild(d))}),function(){var a=y.createElement("div");if(null==k.deleteExpando){k.deleteExpando=!0;try{delete a.test}catch(b){k.deleteExpando=!1}}a=null}(),m.acceptData=function(a){var b=m.noData[(a.nodeName+" ").toLowerCase()],c=+a.nodeType||1;return 1!==c&&9!==c?!1:!b||b!==!0&&a.getAttribute("classid")===b};var M=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,N=/([A-Z])/g;function O(a,b,c){if(void 0===c&&1===a.nodeType){var d="data-"+b.replace(N,"-$1").toLowerCase();if(c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:M.test(c)?m.parseJSON(c):c}catch(e){}m.data(a,b,c)}else c=void 0}return c}function P(a){var b;for(b in a)if(("data"!==b||!m.isEmptyObject(a[b]))&&"toJSON"!==b)return!1; +return!0}function Q(a,b,d,e){if(m.acceptData(a)){var f,g,h=m.expando,i=a.nodeType,j=i?m.cache:a,k=i?a[h]:a[h]&&h;if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||m.guid++:h),j[k]||(j[k]=i?{}:{toJSON:m.noop}),("object"==typeof b||"function"==typeof b)&&(e?j[k]=m.extend(j[k],b):j[k].data=m.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[m.camelCase(b)]=d),"string"==typeof b?(f=g[b],null==f&&(f=g[m.camelCase(b)])):f=g,f}}function R(a,b,c){if(m.acceptData(a)){var d,e,f=a.nodeType,g=f?m.cache:a,h=f?a[m.expando]:m.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){m.isArray(b)?b=b.concat(m.map(b,m.camelCase)):b in d?b=[b]:(b=m.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;while(e--)delete d[b[e]];if(c?!P(d):!m.isEmptyObject(d))return}(c||(delete g[h].data,P(g[h])))&&(f?m.cleanData([a],!0):k.deleteExpando||g!=g.window?delete g[h]:g[h]=null)}}}m.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(a){return a=a.nodeType?m.cache[a[m.expando]]:a[m.expando],!!a&&!P(a)},data:function(a,b,c){return Q(a,b,c)},removeData:function(a,b){return R(a,b)},_data:function(a,b,c){return Q(a,b,c,!0)},_removeData:function(a,b){return R(a,b,!0)}}),m.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=m.data(f),1===f.nodeType&&!m._data(f,"parsedAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=m.camelCase(d.slice(5)),O(f,d,e[d])));m._data(f,"parsedAttrs",!0)}return e}return"object"==typeof a?this.each(function(){m.data(this,a)}):arguments.length>1?this.each(function(){m.data(this,a,b)}):f?O(f,a,m.data(f,a)):void 0},removeData:function(a){return this.each(function(){m.removeData(this,a)})}}),m.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=m._data(a,b),c&&(!d||m.isArray(c)?d=m._data(a,b,m.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=m.queue(a,b),d=c.length,e=c.shift(),f=m._queueHooks(a,b),g=function(){m.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return m._data(a,c)||m._data(a,c,{empty:m.Callbacks("once memory").add(function(){m._removeData(a,b+"queue"),m._removeData(a,c)})})}}),m.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?m.queue(this[0],a):void 0===b?this:this.each(function(){var c=m.queue(this,a,b);m._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&m.dequeue(this,a)})},dequeue:function(a){return this.each(function(){m.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=m.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=m._data(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var S=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=["Top","Right","Bottom","Left"],U=function(a,b){return a=b||a,"none"===m.css(a,"display")||!m.contains(a.ownerDocument,a)},V=m.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===m.type(c)){e=!0;for(h in c)m.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,m.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(m(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},W=/^(?:checkbox|radio)$/i;!function(){var a=y.createElement("input"),b=y.createElement("div"),c=y.createDocumentFragment();if(b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",k.leadingWhitespace=3===b.firstChild.nodeType,k.tbody=!b.getElementsByTagName("tbody").length,k.htmlSerialize=!!b.getElementsByTagName("link").length,k.html5Clone="<:nav></:nav>"!==y.createElement("nav").cloneNode(!0).outerHTML,a.type="checkbox",a.checked=!0,c.appendChild(a),k.appendChecked=a.checked,b.innerHTML="<textarea>x</textarea>",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue,c.appendChild(b),b.innerHTML="<input type='radio' checked='checked' name='t'/>",k.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,k.noCloneEvent=!0,b.attachEvent&&(b.attachEvent("onclick",function(){k.noCloneEvent=!1}),b.cloneNode(!0).click()),null==k.deleteExpando){k.deleteExpando=!0;try{delete b.test}catch(d){k.deleteExpando=!1}}}(),function(){var b,c,d=y.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(k[b+"Bubbles"]=c in a)||(d.setAttribute(c,"t"),k[b+"Bubbles"]=d.attributes[c].expando===!1);d=null}();var X=/^(?:input|select|textarea)$/i,Y=/^key/,Z=/^(?:mouse|pointer|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=/^([^.]*)(?:\.(.+)|)$/;function ab(){return!0}function bb(){return!1}function cb(){try{return y.activeElement}catch(a){}}m.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m._data(a);if(r){c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=m.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return typeof m===K||a&&m.event.triggered===a.type?void 0:m.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(E)||[""],h=b.length;while(h--)f=_.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=m.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=m.event.special[o]||{},l=m.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&m.expr.match.needsContext.test(e),namespace:p.join(".")},i),(n=g[o])||(n=g[o]=[],n.delegateCount=0,j.setup&&j.setup.call(a,d,p,k)!==!1||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?n.splice(n.delegateCount++,0,l):n.push(l),m.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m.hasData(a)&&m._data(a);if(r&&(k=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=_.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=m.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,n=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=n.length;while(f--)g=n[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(n.splice(f,1),g.selector&&n.delegateCount--,l.remove&&l.remove.call(a,g));i&&!n.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||m.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)m.event.remove(a,o+b[j],c,d,!0);m.isEmptyObject(k)&&(delete r.handle,m._removeData(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,l,n,o=[d||y],p=j.call(b,"type")?b.type:b,q=j.call(b,"namespace")?b.namespace.split("."):[];if(h=l=d=d||y,3!==d.nodeType&&8!==d.nodeType&&!$.test(p+m.event.triggered)&&(p.indexOf(".")>=0&&(q=p.split("."),p=q.shift(),q.sort()),g=p.indexOf(":")<0&&"on"+p,b=b[m.expando]?b:new m.Event(p,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=q.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:m.makeArray(c,[b]),k=m.event.special[p]||{},e||!k.trigger||k.trigger.apply(d,c)!==!1)){if(!e&&!k.noBubble&&!m.isWindow(d)){for(i=k.delegateType||p,$.test(i+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),l=h;l===(d.ownerDocument||y)&&o.push(l.defaultView||l.parentWindow||a)}n=0;while((h=o[n++])&&!b.isPropagationStopped())b.type=n>1?i:k.bindType||p,f=(m._data(h,"events")||{})[b.type]&&m._data(h,"handle"),f&&f.apply(h,c),f=g&&h[g],f&&f.apply&&m.acceptData(h)&&(b.result=f.apply(h,c),b.result===!1&&b.preventDefault());if(b.type=p,!e&&!b.isDefaultPrevented()&&(!k._default||k._default.apply(o.pop(),c)===!1)&&m.acceptData(d)&&g&&d[p]&&!m.isWindow(d)){l=d[g],l&&(d[g]=null),m.event.triggered=p;try{d[p]()}catch(r){}m.event.triggered=void 0,l&&(d[g]=l)}return b.result}},dispatch:function(a){a=m.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(m._data(this,"events")||{})[a.type]||[],k=m.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=m.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,g=0;while((e=f.handlers[g++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(e.namespace))&&(a.handleObj=e,a.data=e.data,c=((m.event.special[e.origType]||{}).handle||e.handler).apply(f.elem,i),void 0!==c&&(a.result=c)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(e=[],f=0;h>f;f++)d=b[f],c=d.selector+" ",void 0===e[c]&&(e[c]=d.needsContext?m(c,this).index(i)>=0:m.find(c,this,null,[i]).length),e[c]&&e.push(d);e.length&&g.push({elem:i,handlers:e})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},fix:function(a){if(a[m.expando])return a;var b,c,d,e=a.type,f=a,g=this.fixHooks[e];g||(this.fixHooks[e]=g=Z.test(e)?this.mouseHooks:Y.test(e)?this.keyHooks:{}),d=g.props?this.props.concat(g.props):this.props,a=new m.Event(f),b=d.length;while(b--)c=d[b],a[c]=f[c];return a.target||(a.target=f.srcElement||y),3===a.target.nodeType&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,g.filter?g.filter(a,f):a},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,d,e,f=b.button,g=b.fromElement;return null==a.pageX&&null!=b.clientX&&(d=a.target.ownerDocument||y,e=d.documentElement,c=d.body,a.pageX=b.clientX+(e&&e.scrollLeft||c&&c.scrollLeft||0)-(e&&e.clientLeft||c&&c.clientLeft||0),a.pageY=b.clientY+(e&&e.scrollTop||c&&c.scrollTop||0)-(e&&e.clientTop||c&&c.clientTop||0)),!a.relatedTarget&&g&&(a.relatedTarget=g===a.target?b.toElement:g),a.which||void 0===f||(a.which=1&f?1:2&f?3:4&f?2:0),a}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==cb()&&this.focus)try{return this.focus(),!1}catch(a){}},delegateType:"focusin"},blur:{trigger:function(){return this===cb()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return m.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):void 0},_default:function(a){return m.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,c,d){var e=m.extend(new m.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?m.event.trigger(e,null,b):m.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},m.removeEvent=y.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){var d="on"+b;a.detachEvent&&(typeof a[d]===K&&(a[d]=null),a.detachEvent(d,c))},m.Event=function(a,b){return this instanceof m.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?ab:bb):this.type=a,b&&m.extend(this,b),this.timeStamp=a&&a.timeStamp||m.now(),void(this[m.expando]=!0)):new m.Event(a,b)},m.Event.prototype={isDefaultPrevented:bb,isPropagationStopped:bb,isImmediatePropagationStopped:bb,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ab,a&&(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=ab,a&&(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=ab,a&&a.stopImmediatePropagation&&a.stopImmediatePropagation(),this.stopPropagation()}},m.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){m.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return(!e||e!==d&&!m.contains(d,e))&&(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),k.submitBubbles||(m.event.special.submit={setup:function(){return m.nodeName(this,"form")?!1:void m.event.add(this,"click._submit keypress._submit",function(a){var b=a.target,c=m.nodeName(b,"input")||m.nodeName(b,"button")?b.form:void 0;c&&!m._data(c,"submitBubbles")&&(m.event.add(c,"submit._submit",function(a){a._submit_bubble=!0}),m._data(c,"submitBubbles",!0))})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&m.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){return m.nodeName(this,"form")?!1:void m.event.remove(this,"._submit")}}),k.changeBubbles||(m.event.special.change={setup:function(){return X.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(m.event.add(this,"propertychange._change",function(a){"checked"===a.originalEvent.propertyName&&(this._just_changed=!0)}),m.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1),m.event.simulate("change",this,a,!0)})),!1):void m.event.add(this,"beforeactivate._change",function(a){var b=a.target;X.test(b.nodeName)&&!m._data(b,"changeBubbles")&&(m.event.add(b,"change._change",function(a){!this.parentNode||a.isSimulated||a.isTrigger||m.event.simulate("change",this.parentNode,a,!0)}),m._data(b,"changeBubbles",!0))})},handle:function(a){var b=a.target;return this!==b||a.isSimulated||a.isTrigger||"radio"!==b.type&&"checkbox"!==b.type?a.handleObj.handler.apply(this,arguments):void 0},teardown:function(){return m.event.remove(this,"._change"),!X.test(this.nodeName)}}),k.focusinBubbles||m.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){m.event.simulate(b,a.target,m.event.fix(a),!0)};m.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=m._data(d,b);e||d.addEventListener(a,c,!0),m._data(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=m._data(d,b)-1;e?m._data(d,b,e):(d.removeEventListener(a,c,!0),m._removeData(d,b))}}}),m.fn.extend({on:function(a,b,c,d,e){var f,g;if("object"==typeof a){"string"!=typeof b&&(c=c||b,b=void 0);for(f in a)this.on(f,b,c,a[f],e);return this}if(null==c&&null==d?(d=b,c=b=void 0):null==d&&("string"==typeof b?(d=c,c=void 0):(d=c,c=b,b=void 0)),d===!1)d=bb;else if(!d)return this;return 1===e&&(g=d,d=function(a){return m().off(a),g.apply(this,arguments)},d.guid=g.guid||(g.guid=m.guid++)),this.each(function(){m.event.add(this,a,d,c,b)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,m(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return(b===!1||"function"==typeof b)&&(c=b,b=void 0),c===!1&&(c=bb),this.each(function(){m.event.remove(this,a,c,b)})},trigger:function(a,b){return this.each(function(){m.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?m.event.trigger(a,b,c,!0):void 0}});function db(a){var b=eb.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}var eb="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",fb=/ jQuery\d+="(?:null|\d+)"/g,gb=new RegExp("<(?:"+eb+")[\\s/>]","i"),hb=/^\s+/,ib=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,jb=/<([\w:]+)/,kb=/<tbody/i,lb=/<|&#?\w+;/,mb=/<(?:script|style|link)/i,nb=/checked\s*(?:[^=]|=\s*.checked.)/i,ob=/^$|\/(?:java|ecma)script/i,pb=/^true\/(.*)/,qb=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,rb={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:k.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},sb=db(y),tb=sb.appendChild(y.createElement("div"));rb.optgroup=rb.option,rb.tbody=rb.tfoot=rb.colgroup=rb.caption=rb.thead,rb.th=rb.td;function ub(a,b){var c,d,e=0,f=typeof a.getElementsByTagName!==K?a.getElementsByTagName(b||"*"):typeof a.querySelectorAll!==K?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||m.nodeName(d,b)?f.push(d):m.merge(f,ub(d,b));return void 0===b||b&&m.nodeName(a,b)?m.merge([a],f):f}function vb(a){W.test(a.type)&&(a.defaultChecked=a.checked)}function wb(a,b){return m.nodeName(a,"table")&&m.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function xb(a){return a.type=(null!==m.find.attr(a,"type"))+"/"+a.type,a}function yb(a){var b=pb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function zb(a,b){for(var c,d=0;null!=(c=a[d]);d++)m._data(c,"globalEval",!b||m._data(b[d],"globalEval"))}function Ab(a,b){if(1===b.nodeType&&m.hasData(a)){var c,d,e,f=m._data(a),g=m._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)m.event.add(b,c,h[c][d])}g.data&&(g.data=m.extend({},g.data))}}function Bb(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!k.noCloneEvent&&b[m.expando]){e=m._data(b);for(d in e.events)m.removeEvent(b,d,e.handle);b.removeAttribute(m.expando)}"script"===c&&b.text!==a.text?(xb(b).text=a.text,yb(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),k.html5Clone&&a.innerHTML&&!m.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&W.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}}m.extend({clone:function(a,b,c){var d,e,f,g,h,i=m.contains(a.ownerDocument,a);if(k.html5Clone||m.isXMLDoc(a)||!gb.test("<"+a.nodeName+">")?f=a.cloneNode(!0):(tb.innerHTML=a.outerHTML,tb.removeChild(f=tb.firstChild)),!(k.noCloneEvent&&k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||m.isXMLDoc(a)))for(d=ub(f),h=ub(a),g=0;null!=(e=h[g]);++g)d[g]&&Bb(e,d[g]);if(b)if(c)for(h=h||ub(a),d=d||ub(f),g=0;null!=(e=h[g]);g++)Ab(e,d[g]);else Ab(a,f);return d=ub(f,"script"),d.length>0&&zb(d,!i&&ub(a,"script")),d=h=e=null,f},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,l,n=a.length,o=db(b),p=[],q=0;n>q;q++)if(f=a[q],f||0===f)if("object"===m.type(f))m.merge(p,f.nodeType?[f]:f);else if(lb.test(f)){h=h||o.appendChild(b.createElement("div")),i=(jb.exec(f)||["",""])[1].toLowerCase(),l=rb[i]||rb._default,h.innerHTML=l[1]+f.replace(ib,"<$1></$2>")+l[2],e=l[0];while(e--)h=h.lastChild;if(!k.leadingWhitespace&&hb.test(f)&&p.push(b.createTextNode(hb.exec(f)[0])),!k.tbody){f="table"!==i||kb.test(f)?"<table>"!==l[1]||kb.test(f)?0:h:h.firstChild,e=f&&f.childNodes.length;while(e--)m.nodeName(j=f.childNodes[e],"tbody")&&!j.childNodes.length&&f.removeChild(j)}m.merge(p,h.childNodes),h.textContent="";while(h.firstChild)h.removeChild(h.firstChild);h=o.lastChild}else p.push(b.createTextNode(f));h&&o.removeChild(h),k.appendChecked||m.grep(ub(p,"input"),vb),q=0;while(f=p[q++])if((!d||-1===m.inArray(f,d))&&(g=m.contains(f.ownerDocument,f),h=ub(o.appendChild(f),"script"),g&&zb(h),c)){e=0;while(f=h[e++])ob.test(f.type||"")&&c.push(f)}return h=null,o},cleanData:function(a,b){for(var d,e,f,g,h=0,i=m.expando,j=m.cache,l=k.deleteExpando,n=m.event.special;null!=(d=a[h]);h++)if((b||m.acceptData(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)n[e]?m.event.remove(d,e):m.removeEvent(d,e,g.handle);j[f]&&(delete j[f],l?delete d[i]:typeof d.removeAttribute!==K?d.removeAttribute(i):d[i]=null,c.push(f))}}}),m.fn.extend({text:function(a){return V(this,function(a){return void 0===a?m.text(this):this.empty().append((this[0]&&this[0].ownerDocument||y).createTextNode(a))},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?m.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||m.cleanData(ub(c)),c.parentNode&&(b&&m.contains(c.ownerDocument,c)&&zb(ub(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){1===a.nodeType&&m.cleanData(ub(a,!1));while(a.firstChild)a.removeChild(a.firstChild);a.options&&m.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return m.clone(this,a,b)})},html:function(a){return V(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a)return 1===b.nodeType?b.innerHTML.replace(fb,""):void 0;if(!("string"!=typeof a||mb.test(a)||!k.htmlSerialize&&gb.test(a)||!k.leadingWhitespace&&hb.test(a)||rb[(jb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(ib,"<$1></$2>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(m.cleanData(ub(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,m.cleanData(ub(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,n=this,o=l-1,p=a[0],q=m.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&nb.test(p))return this.each(function(c){var d=n.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(i=m.buildFragment(a,this[0].ownerDocument,!1,this),c=i.firstChild,1===i.childNodes.length&&(i=c),c)){for(g=m.map(ub(i,"script"),xb),f=g.length;l>j;j++)d=i,j!==o&&(d=m.clone(d,!0,!0),f&&m.merge(g,ub(d,"script"))),b.call(this[j],d,j);if(f)for(h=g[g.length-1].ownerDocument,m.map(g,yb),j=0;f>j;j++)d=g[j],ob.test(d.type||"")&&!m._data(d,"globalEval")&&m.contains(h,d)&&(d.src?m._evalUrl&&m._evalUrl(d.src):m.globalEval((d.text||d.textContent||d.innerHTML||"").replace(qb,"")));i=c=null}return this}}),m.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){m.fn[a]=function(a){for(var c,d=0,e=[],g=m(a),h=g.length-1;h>=d;d++)c=d===h?this:this.clone(!0),m(g[d])[b](c),f.apply(e,c.get());return this.pushStack(e)}});var Cb,Db={};function Eb(b,c){var d,e=m(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:m.css(e[0],"display");return e.detach(),f}function Fb(a){var b=y,c=Db[a];return c||(c=Eb(a,b),"none"!==c&&c||(Cb=(Cb||m("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=(Cb[0].contentWindow||Cb[0].contentDocument).document,b.write(),b.close(),c=Eb(a,b),Cb.detach()),Db[a]=c),c}!function(){var a;k.shrinkWrapBlocks=function(){if(null!=a)return a;a=!1;var b,c,d;return c=y.getElementsByTagName("body")[0],c&&c.style?(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),typeof b.style.zoom!==K&&(b.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1",b.appendChild(y.createElement("div")).style.width="5px",a=3!==b.offsetWidth),c.removeChild(d),a):void 0}}();var Gb=/^margin/,Hb=new RegExp("^("+S+")(?!px)[a-z%]+$","i"),Ib,Jb,Kb=/^(top|right|bottom|left)$/;a.getComputedStyle?(Ib=function(b){return b.ownerDocument.defaultView.opener?b.ownerDocument.defaultView.getComputedStyle(b,null):a.getComputedStyle(b,null)},Jb=function(a,b,c){var d,e,f,g,h=a.style;return c=c||Ib(a),g=c?c.getPropertyValue(b)||c[b]:void 0,c&&(""!==g||m.contains(a.ownerDocument,a)||(g=m.style(a,b)),Hb.test(g)&&Gb.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0===g?g:g+""}):y.documentElement.currentStyle&&(Ib=function(a){return a.currentStyle},Jb=function(a,b,c){var d,e,f,g,h=a.style;return c=c||Ib(a),g=c?c[b]:void 0,null==g&&h&&h[b]&&(g=h[b]),Hb.test(g)&&!Kb.test(b)&&(d=h.left,e=a.runtimeStyle,f=e&&e.left,f&&(e.left=a.currentStyle.left),h.left="fontSize"===b?"1em":g,g=h.pixelLeft+"px",h.left=d,f&&(e.left=f)),void 0===g?g:g+""||"auto"});function Lb(a,b){return{get:function(){var c=a();if(null!=c)return c?void delete this.get:(this.get=b).apply(this,arguments)}}}!function(){var b,c,d,e,f,g,h;if(b=y.createElement("div"),b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",d=b.getElementsByTagName("a")[0],c=d&&d.style){c.cssText="float:left;opacity:.5",k.opacity="0.5"===c.opacity,k.cssFloat=!!c.cssFloat,b.style.backgroundClip="content-box",b.cloneNode(!0).style.backgroundClip="",k.clearCloneStyle="content-box"===b.style.backgroundClip,k.boxSizing=""===c.boxSizing||""===c.MozBoxSizing||""===c.WebkitBoxSizing,m.extend(k,{reliableHiddenOffsets:function(){return null==g&&i(),g},boxSizingReliable:function(){return null==f&&i(),f},pixelPosition:function(){return null==e&&i(),e},reliableMarginRight:function(){return null==h&&i(),h}});function i(){var b,c,d,i;c=y.getElementsByTagName("body")[0],c&&c.style&&(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),b.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",e=f=!1,h=!0,a.getComputedStyle&&(e="1%"!==(a.getComputedStyle(b,null)||{}).top,f="4px"===(a.getComputedStyle(b,null)||{width:"4px"}).width,i=b.appendChild(y.createElement("div")),i.style.cssText=b.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",i.style.marginRight=i.style.width="0",b.style.width="1px",h=!parseFloat((a.getComputedStyle(i,null)||{}).marginRight),b.removeChild(i)),b.innerHTML="<table><tr><td></td><td>t</td></tr></table>",i=b.getElementsByTagName("td"),i[0].style.cssText="margin:0;border:0;padding:0;display:none",g=0===i[0].offsetHeight,g&&(i[0].style.display="",i[1].style.display="none",g=0===i[0].offsetHeight),c.removeChild(d))}}}(),m.swap=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};var Mb=/alpha\([^)]*\)/i,Nb=/opacity\s*=\s*([^)]*)/,Ob=/^(none|table(?!-c[ea]).+)/,Pb=new RegExp("^("+S+")(.*)$","i"),Qb=new RegExp("^([+-])=("+S+")","i"),Rb={position:"absolute",visibility:"hidden",display:"block"},Sb={letterSpacing:"0",fontWeight:"400"},Tb=["Webkit","O","Moz","ms"];function Ub(a,b){if(b in a)return b;var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=Tb.length;while(e--)if(b=Tb[e]+c,b in a)return b;return d}function Vb(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=m._data(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&U(d)&&(f[g]=m._data(d,"olddisplay",Fb(d.nodeName)))):(e=U(d),(c&&"none"!==c||!e)&&m._data(d,"olddisplay",e?c:m.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}function Wb(a,b,c){var d=Pb.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function Xb(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=m.css(a,c+T[f],!0,e)),d?("content"===c&&(g-=m.css(a,"padding"+T[f],!0,e)),"margin"!==c&&(g-=m.css(a,"border"+T[f]+"Width",!0,e))):(g+=m.css(a,"padding"+T[f],!0,e),"padding"!==c&&(g+=m.css(a,"border"+T[f]+"Width",!0,e)));return g}function Yb(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=Ib(a),g=k.boxSizing&&"border-box"===m.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=Jb(a,b,f),(0>e||null==e)&&(e=a.style[b]),Hb.test(e))return e;d=g&&(k.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+Xb(a,b,c||(g?"border":"content"),d,f)+"px"}m.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=Jb(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":k.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=m.camelCase(b),i=a.style;if(b=m.cssProps[h]||(m.cssProps[h]=Ub(i,h)),g=m.cssHooks[b]||m.cssHooks[h],void 0===c)return g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b];if(f=typeof c,"string"===f&&(e=Qb.exec(c))&&(c=(e[1]+1)*e[2]+parseFloat(m.css(a,b)),f="number"),null!=c&&c===c&&("number"!==f||m.cssNumber[h]||(c+="px"),k.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),!(g&&"set"in g&&void 0===(c=g.set(a,c,d)))))try{i[b]=c}catch(j){}}},css:function(a,b,c,d){var e,f,g,h=m.camelCase(b);return b=m.cssProps[h]||(m.cssProps[h]=Ub(a.style,h)),g=m.cssHooks[b]||m.cssHooks[h],g&&"get"in g&&(f=g.get(a,!0,c)),void 0===f&&(f=Jb(a,b,d)),"normal"===f&&b in Sb&&(f=Sb[b]),""===c||c?(e=parseFloat(f),c===!0||m.isNumeric(e)?e||0:f):f}}),m.each(["height","width"],function(a,b){m.cssHooks[b]={get:function(a,c,d){return c?Ob.test(m.css(a,"display"))&&0===a.offsetWidth?m.swap(a,Rb,function(){return Yb(a,b,d)}):Yb(a,b,d):void 0},set:function(a,c,d){var e=d&&Ib(a);return Wb(a,c,d?Xb(a,b,d,k.boxSizing&&"border-box"===m.css(a,"boxSizing",!1,e),e):0)}}}),k.opacity||(m.cssHooks.opacity={get:function(a,b){return Nb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=m.isNumeric(b)?"alpha(opacity="+100*b+")":"",f=d&&d.filter||c.filter||"";c.zoom=1,(b>=1||""===b)&&""===m.trim(f.replace(Mb,""))&&c.removeAttribute&&(c.removeAttribute("filter"),""===b||d&&!d.filter)||(c.filter=Mb.test(f)?f.replace(Mb,e):f+" "+e)}}),m.cssHooks.marginRight=Lb(k.reliableMarginRight,function(a,b){return b?m.swap(a,{display:"inline-block"},Jb,[a,"marginRight"]):void 0}),m.each({margin:"",padding:"",border:"Width"},function(a,b){m.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+T[d]+b]=f[d]||f[d-2]||f[0];return e}},Gb.test(a)||(m.cssHooks[a+b].set=Wb)}),m.fn.extend({css:function(a,b){return V(this,function(a,b,c){var d,e,f={},g=0;if(m.isArray(b)){for(d=Ib(a),e=b.length;e>g;g++)f[b[g]]=m.css(a,b[g],!1,d);return f}return void 0!==c?m.style(a,b,c):m.css(a,b)},a,b,arguments.length>1)},show:function(){return Vb(this,!0)},hide:function(){return Vb(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){U(this)?m(this).show():m(this).hide()})}});function Zb(a,b,c,d,e){return new Zb.prototype.init(a,b,c,d,e) +}m.Tween=Zb,Zb.prototype={constructor:Zb,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(m.cssNumber[c]?"":"px")},cur:function(){var a=Zb.propHooks[this.prop];return a&&a.get?a.get(this):Zb.propHooks._default.get(this)},run:function(a){var b,c=Zb.propHooks[this.prop];return this.pos=b=this.options.duration?m.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Zb.propHooks._default.set(this),this}},Zb.prototype.init.prototype=Zb.prototype,Zb.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=m.css(a.elem,a.prop,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){m.fx.step[a.prop]?m.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[m.cssProps[a.prop]]||m.cssHooks[a.prop])?m.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},Zb.propHooks.scrollTop=Zb.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},m.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},m.fx=Zb.prototype.init,m.fx.step={};var $b,_b,ac=/^(?:toggle|show|hide)$/,bc=new RegExp("^(?:([+-])=|)("+S+")([a-z%]*)$","i"),cc=/queueHooks$/,dc=[ic],ec={"*":[function(a,b){var c=this.createTween(a,b),d=c.cur(),e=bc.exec(b),f=e&&e[3]||(m.cssNumber[a]?"":"px"),g=(m.cssNumber[a]||"px"!==f&&+d)&&bc.exec(m.css(c.elem,a)),h=1,i=20;if(g&&g[3]!==f){f=f||g[3],e=e||[],g=+d||1;do h=h||".5",g/=h,m.style(c.elem,a,g+f);while(h!==(h=c.cur()/d)&&1!==h&&--i)}return e&&(g=c.start=+g||+d||0,c.unit=f,c.end=e[1]?g+(e[1]+1)*e[2]:+e[2]),c}]};function fc(){return setTimeout(function(){$b=void 0}),$b=m.now()}function gc(a,b){var c,d={height:a},e=0;for(b=b?1:0;4>e;e+=2-b)c=T[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function hc(a,b,c){for(var d,e=(ec[b]||[]).concat(ec["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function ic(a,b,c){var d,e,f,g,h,i,j,l,n=this,o={},p=a.style,q=a.nodeType&&U(a),r=m._data(a,"fxshow");c.queue||(h=m._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,n.always(function(){n.always(function(){h.unqueued--,m.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[p.overflow,p.overflowX,p.overflowY],j=m.css(a,"display"),l="none"===j?m._data(a,"olddisplay")||Fb(a.nodeName):j,"inline"===l&&"none"===m.css(a,"float")&&(k.inlineBlockNeedsLayout&&"inline"!==Fb(a.nodeName)?p.zoom=1:p.display="inline-block")),c.overflow&&(p.overflow="hidden",k.shrinkWrapBlocks()||n.always(function(){p.overflow=c.overflow[0],p.overflowX=c.overflow[1],p.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],ac.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(q?"hide":"show")){if("show"!==e||!r||void 0===r[d])continue;q=!0}o[d]=r&&r[d]||m.style(a,d)}else j=void 0;if(m.isEmptyObject(o))"inline"===("none"===j?Fb(a.nodeName):j)&&(p.display=j);else{r?"hidden"in r&&(q=r.hidden):r=m._data(a,"fxshow",{}),f&&(r.hidden=!q),q?m(a).show():n.done(function(){m(a).hide()}),n.done(function(){var b;m._removeData(a,"fxshow");for(b in o)m.style(a,b,o[b])});for(d in o)g=hc(q?r[d]:0,d,n),d in r||(r[d]=g.start,q&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function jc(a,b){var c,d,e,f,g;for(c in a)if(d=m.camelCase(c),e=b[d],f=a[c],m.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=m.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function kc(a,b,c){var d,e,f=0,g=dc.length,h=m.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=$b||fc(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:m.extend({},b),opts:m.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:$b||fc(),duration:c.duration,tweens:[],createTween:function(b,c){var d=m.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;for(jc(k,j.opts.specialEasing);g>f;f++)if(d=dc[f].call(j,a,k,j.opts))return d;return m.map(k,hc,j),m.isFunction(j.opts.start)&&j.opts.start.call(a,j),m.fx.timer(m.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}m.Animation=m.extend(kc,{tweener:function(a,b){m.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],ec[c]=ec[c]||[],ec[c].unshift(b)},prefilter:function(a,b){b?dc.unshift(a):dc.push(a)}}),m.speed=function(a,b,c){var d=a&&"object"==typeof a?m.extend({},a):{complete:c||!c&&b||m.isFunction(a)&&a,duration:a,easing:c&&b||b&&!m.isFunction(b)&&b};return d.duration=m.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in m.fx.speeds?m.fx.speeds[d.duration]:m.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){m.isFunction(d.old)&&d.old.call(this),d.queue&&m.dequeue(this,d.queue)},d},m.fn.extend({fadeTo:function(a,b,c,d){return this.filter(U).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=m.isEmptyObject(a),f=m.speed(b,c,d),g=function(){var b=kc(this,m.extend({},a),f);(e||m._data(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=m.timers,g=m._data(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&cc.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));(b||!c)&&m.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=m._data(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=m.timers,g=d?d.length:0;for(c.finish=!0,m.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),m.each(["toggle","show","hide"],function(a,b){var c=m.fn[b];m.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(gc(b,!0),a,d,e)}}),m.each({slideDown:gc("show"),slideUp:gc("hide"),slideToggle:gc("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){m.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),m.timers=[],m.fx.tick=function(){var a,b=m.timers,c=0;for($b=m.now();c<b.length;c++)a=b[c],a()||b[c]!==a||b.splice(c--,1);b.length||m.fx.stop(),$b=void 0},m.fx.timer=function(a){m.timers.push(a),a()?m.fx.start():m.timers.pop()},m.fx.interval=13,m.fx.start=function(){_b||(_b=setInterval(m.fx.tick,m.fx.interval))},m.fx.stop=function(){clearInterval(_b),_b=null},m.fx.speeds={slow:600,fast:200,_default:400},m.fn.delay=function(a,b){return a=m.fx?m.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},function(){var a,b,c,d,e;b=y.createElement("div"),b.setAttribute("className","t"),b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",d=b.getElementsByTagName("a")[0],c=y.createElement("select"),e=c.appendChild(y.createElement("option")),a=b.getElementsByTagName("input")[0],d.style.cssText="top:1px",k.getSetAttribute="t"!==b.className,k.style=/top/.test(d.getAttribute("style")),k.hrefNormalized="/a"===d.getAttribute("href"),k.checkOn=!!a.value,k.optSelected=e.selected,k.enctype=!!y.createElement("form").enctype,c.disabled=!0,k.optDisabled=!e.disabled,a=y.createElement("input"),a.setAttribute("value",""),k.input=""===a.getAttribute("value"),a.value="t",a.setAttribute("type","radio"),k.radioValue="t"===a.value}();var lc=/\r/g;m.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=m.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,m(this).val()):a,null==e?e="":"number"==typeof e?e+="":m.isArray(e)&&(e=m.map(e,function(a){return null==a?"":a+""})),b=m.valHooks[this.type]||m.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=m.valHooks[e.type]||m.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(lc,""):null==c?"":c)}}}),m.extend({valHooks:{option:{get:function(a){var b=m.find.attr(a,"value");return null!=b?b:m.trim(m.text(a))}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],!(!c.selected&&i!==e||(k.optDisabled?c.disabled:null!==c.getAttribute("disabled"))||c.parentNode.disabled&&m.nodeName(c.parentNode,"optgroup"))){if(b=m(c).val(),f)return b;g.push(b)}return g},set:function(a,b){var c,d,e=a.options,f=m.makeArray(b),g=e.length;while(g--)if(d=e[g],m.inArray(m.valHooks.option.get(d),f)>=0)try{d.selected=c=!0}catch(h){d.scrollHeight}else d.selected=!1;return c||(a.selectedIndex=-1),e}}}}),m.each(["radio","checkbox"],function(){m.valHooks[this]={set:function(a,b){return m.isArray(b)?a.checked=m.inArray(m(a).val(),b)>=0:void 0}},k.checkOn||(m.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var mc,nc,oc=m.expr.attrHandle,pc=/^(?:checked|selected)$/i,qc=k.getSetAttribute,rc=k.input;m.fn.extend({attr:function(a,b){return V(this,m.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){m.removeAttr(this,a)})}}),m.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(a&&3!==f&&8!==f&&2!==f)return typeof a.getAttribute===K?m.prop(a,b,c):(1===f&&m.isXMLDoc(a)||(b=b.toLowerCase(),d=m.attrHooks[b]||(m.expr.match.bool.test(b)?nc:mc)),void 0===c?d&&"get"in d&&null!==(e=d.get(a,b))?e:(e=m.find.attr(a,b),null==e?void 0:e):null!==c?d&&"set"in d&&void 0!==(e=d.set(a,c,b))?e:(a.setAttribute(b,c+""),c):void m.removeAttr(a,b))},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(E);if(f&&1===a.nodeType)while(c=f[e++])d=m.propFix[c]||c,m.expr.match.bool.test(c)?rc&&qc||!pc.test(c)?a[d]=!1:a[m.camelCase("default-"+c)]=a[d]=!1:m.attr(a,c,""),a.removeAttribute(qc?c:d)},attrHooks:{type:{set:function(a,b){if(!k.radioValue&&"radio"===b&&m.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}}}),nc={set:function(a,b,c){return b===!1?m.removeAttr(a,c):rc&&qc||!pc.test(c)?a.setAttribute(!qc&&m.propFix[c]||c,c):a[m.camelCase("default-"+c)]=a[c]=!0,c}},m.each(m.expr.match.bool.source.match(/\w+/g),function(a,b){var c=oc[b]||m.find.attr;oc[b]=rc&&qc||!pc.test(b)?function(a,b,d){var e,f;return d||(f=oc[b],oc[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,oc[b]=f),e}:function(a,b,c){return c?void 0:a[m.camelCase("default-"+b)]?b.toLowerCase():null}}),rc&&qc||(m.attrHooks.value={set:function(a,b,c){return m.nodeName(a,"input")?void(a.defaultValue=b):mc&&mc.set(a,b,c)}}),qc||(mc={set:function(a,b,c){var d=a.getAttributeNode(c);return d||a.setAttributeNode(d=a.ownerDocument.createAttribute(c)),d.value=b+="","value"===c||b===a.getAttribute(c)?b:void 0}},oc.id=oc.name=oc.coords=function(a,b,c){var d;return c?void 0:(d=a.getAttributeNode(b))&&""!==d.value?d.value:null},m.valHooks.button={get:function(a,b){var c=a.getAttributeNode(b);return c&&c.specified?c.value:void 0},set:mc.set},m.attrHooks.contenteditable={set:function(a,b,c){mc.set(a,""===b?!1:b,c)}},m.each(["width","height"],function(a,b){m.attrHooks[b]={set:function(a,c){return""===c?(a.setAttribute(b,"auto"),c):void 0}}})),k.style||(m.attrHooks.style={get:function(a){return a.style.cssText||void 0},set:function(a,b){return a.style.cssText=b+""}});var sc=/^(?:input|select|textarea|button|object)$/i,tc=/^(?:a|area)$/i;m.fn.extend({prop:function(a,b){return V(this,m.prop,a,b,arguments.length>1)},removeProp:function(a){return a=m.propFix[a]||a,this.each(function(){try{this[a]=void 0,delete this[a]}catch(b){}})}}),m.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(a,b,c){var d,e,f,g=a.nodeType;if(a&&3!==g&&8!==g&&2!==g)return f=1!==g||!m.isXMLDoc(a),f&&(b=m.propFix[b]||b,e=m.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=m.find.attr(a,"tabindex");return b?parseInt(b,10):sc.test(a.nodeName)||tc.test(a.nodeName)&&a.href?0:-1}}}}),k.hrefNormalized||m.each(["href","src"],function(a,b){m.propHooks[b]={get:function(a){return a.getAttribute(b,4)}}}),k.optSelected||(m.propHooks.selected={get:function(a){var b=a.parentNode;return b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex),null}}),m.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){m.propFix[this.toLowerCase()]=this}),k.enctype||(m.propFix.enctype="encoding");var uc=/[\t\r\n\f]/g;m.fn.extend({addClass:function(a){var b,c,d,e,f,g,h=0,i=this.length,j="string"==typeof a&&a;if(m.isFunction(a))return this.each(function(b){m(this).addClass(a.call(this,b,this.className))});if(j)for(b=(a||"").match(E)||[];i>h;h++)if(c=this[h],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(uc," "):" ")){f=0;while(e=b[f++])d.indexOf(" "+e+" ")<0&&(d+=e+" ");g=m.trim(d),c.className!==g&&(c.className=g)}return this},removeClass:function(a){var b,c,d,e,f,g,h=0,i=this.length,j=0===arguments.length||"string"==typeof a&&a;if(m.isFunction(a))return this.each(function(b){m(this).removeClass(a.call(this,b,this.className))});if(j)for(b=(a||"").match(E)||[];i>h;h++)if(c=this[h],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(uc," "):"")){f=0;while(e=b[f++])while(d.indexOf(" "+e+" ")>=0)d=d.replace(" "+e+" "," ");g=a?m.trim(d):"",c.className!==g&&(c.className=g)}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):this.each(m.isFunction(a)?function(c){m(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c){var b,d=0,e=m(this),f=a.match(E)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else(c===K||"boolean"===c)&&(this.className&&m._data(this,"__className__",this.className),this.className=this.className||a===!1?"":m._data(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(uc," ").indexOf(b)>=0)return!0;return!1}}),m.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){m.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),m.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}});var vc=m.now(),wc=/\?/,xc=/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;m.parseJSON=function(b){if(a.JSON&&a.JSON.parse)return a.JSON.parse(b+"");var c,d=null,e=m.trim(b+"");return e&&!m.trim(e.replace(xc,function(a,b,e,f){return c&&b&&(d=0),0===d?a:(c=e||b,d+=!f-!e,"")}))?Function("return "+e)():m.error("Invalid JSON: "+b)},m.parseXML=function(b){var c,d;if(!b||"string"!=typeof b)return null;try{a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b))}catch(e){c=void 0}return c&&c.documentElement&&!c.getElementsByTagName("parsererror").length||m.error("Invalid XML: "+b),c};var yc,zc,Ac=/#.*$/,Bc=/([?&])_=[^&]*/,Cc=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Dc=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ec=/^(?:GET|HEAD)$/,Fc=/^\/\//,Gc=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,Hc={},Ic={},Jc="*/".concat("*");try{zc=location.href}catch(Kc){zc=y.createElement("a"),zc.href="",zc=zc.href}yc=Gc.exec(zc.toLowerCase())||[];function Lc(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(E)||[];if(m.isFunction(c))while(d=f[e++])"+"===d.charAt(0)?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function Mc(a,b,c,d){var e={},f=a===Ic;function g(h){var i;return e[h]=!0,m.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function Nc(a,b){var c,d,e=m.ajaxSettings.flatOptions||{};for(d in b)void 0!==b[d]&&((e[d]?a:c||(c={}))[d]=b[d]);return c&&m.extend(!0,a,c),a}function Oc(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===e&&(e=a.mimeType||b.getResponseHeader("Content-Type"));if(e)for(g in h)if(h[g]&&h[g].test(e)){i.unshift(g);break}if(i[0]in c)f=i[0];else{for(g in c){if(!i[0]||a.converters[g+" "+i[0]]){f=g;break}d||(d=g)}f=f||d}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function Pc(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}m.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:zc,type:"GET",isLocal:Dc.test(yc[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Jc,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":m.parseJSON,"text xml":m.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?Nc(Nc(a,m.ajaxSettings),b):Nc(m.ajaxSettings,a)},ajaxPrefilter:Lc(Hc),ajaxTransport:Lc(Ic),ajax:function(a,b){"object"==typeof a&&(b=a,a=void 0),b=b||{};var c,d,e,f,g,h,i,j,k=m.ajaxSetup({},b),l=k.context||k,n=k.context&&(l.nodeType||l.jquery)?m(l):m.event,o=m.Deferred(),p=m.Callbacks("once memory"),q=k.statusCode||{},r={},s={},t=0,u="canceled",v={readyState:0,getResponseHeader:function(a){var b;if(2===t){if(!j){j={};while(b=Cc.exec(f))j[b[1].toLowerCase()]=b[2]}b=j[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===t?f:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return t||(a=s[c]=s[c]||a,r[a]=b),this},overrideMimeType:function(a){return t||(k.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>t)for(b in a)q[b]=[q[b],a[b]];else v.always(a[v.status]);return this},abort:function(a){var b=a||u;return i&&i.abort(b),x(0,b),this}};if(o.promise(v).complete=p.add,v.success=v.done,v.error=v.fail,k.url=((a||k.url||zc)+"").replace(Ac,"").replace(Fc,yc[1]+"//"),k.type=b.method||b.type||k.method||k.type,k.dataTypes=m.trim(k.dataType||"*").toLowerCase().match(E)||[""],null==k.crossDomain&&(c=Gc.exec(k.url.toLowerCase()),k.crossDomain=!(!c||c[1]===yc[1]&&c[2]===yc[2]&&(c[3]||("http:"===c[1]?"80":"443"))===(yc[3]||("http:"===yc[1]?"80":"443")))),k.data&&k.processData&&"string"!=typeof k.data&&(k.data=m.param(k.data,k.traditional)),Mc(Hc,k,b,v),2===t)return v;h=m.event&&k.global,h&&0===m.active++&&m.event.trigger("ajaxStart"),k.type=k.type.toUpperCase(),k.hasContent=!Ec.test(k.type),e=k.url,k.hasContent||(k.data&&(e=k.url+=(wc.test(e)?"&":"?")+k.data,delete k.data),k.cache===!1&&(k.url=Bc.test(e)?e.replace(Bc,"$1_="+vc++):e+(wc.test(e)?"&":"?")+"_="+vc++)),k.ifModified&&(m.lastModified[e]&&v.setRequestHeader("If-Modified-Since",m.lastModified[e]),m.etag[e]&&v.setRequestHeader("If-None-Match",m.etag[e])),(k.data&&k.hasContent&&k.contentType!==!1||b.contentType)&&v.setRequestHeader("Content-Type",k.contentType),v.setRequestHeader("Accept",k.dataTypes[0]&&k.accepts[k.dataTypes[0]]?k.accepts[k.dataTypes[0]]+("*"!==k.dataTypes[0]?", "+Jc+"; q=0.01":""):k.accepts["*"]);for(d in k.headers)v.setRequestHeader(d,k.headers[d]);if(k.beforeSend&&(k.beforeSend.call(l,v,k)===!1||2===t))return v.abort();u="abort";for(d in{success:1,error:1,complete:1})v[d](k[d]);if(i=Mc(Ic,k,b,v)){v.readyState=1,h&&n.trigger("ajaxSend",[v,k]),k.async&&k.timeout>0&&(g=setTimeout(function(){v.abort("timeout")},k.timeout));try{t=1,i.send(r,x)}catch(w){if(!(2>t))throw w;x(-1,w)}}else x(-1,"No Transport");function x(a,b,c,d){var j,r,s,u,w,x=b;2!==t&&(t=2,g&&clearTimeout(g),i=void 0,f=d||"",v.readyState=a>0?4:0,j=a>=200&&300>a||304===a,c&&(u=Oc(k,v,c)),u=Pc(k,u,v,j),j?(k.ifModified&&(w=v.getResponseHeader("Last-Modified"),w&&(m.lastModified[e]=w),w=v.getResponseHeader("etag"),w&&(m.etag[e]=w)),204===a||"HEAD"===k.type?x="nocontent":304===a?x="notmodified":(x=u.state,r=u.data,s=u.error,j=!s)):(s=x,(a||!x)&&(x="error",0>a&&(a=0))),v.status=a,v.statusText=(b||x)+"",j?o.resolveWith(l,[r,x,v]):o.rejectWith(l,[v,x,s]),v.statusCode(q),q=void 0,h&&n.trigger(j?"ajaxSuccess":"ajaxError",[v,k,j?r:s]),p.fireWith(l,[v,x]),h&&(n.trigger("ajaxComplete",[v,k]),--m.active||m.event.trigger("ajaxStop")))}return v},getJSON:function(a,b,c){return m.get(a,b,c,"json")},getScript:function(a,b){return m.get(a,void 0,b,"script")}}),m.each(["get","post"],function(a,b){m[b]=function(a,c,d,e){return m.isFunction(c)&&(e=e||d,d=c,c=void 0),m.ajax({url:a,type:b,dataType:e,data:c,success:d})}}),m._evalUrl=function(a){return m.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},m.fn.extend({wrapAll:function(a){if(m.isFunction(a))return this.each(function(b){m(this).wrapAll(a.call(this,b))});if(this[0]){var b=m(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&1===a.firstChild.nodeType)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return this.each(m.isFunction(a)?function(b){m(this).wrapInner(a.call(this,b))}:function(){var b=m(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=m.isFunction(a);return this.each(function(c){m(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){m.nodeName(this,"body")||m(this).replaceWith(this.childNodes)}).end()}}),m.expr.filters.hidden=function(a){return a.offsetWidth<=0&&a.offsetHeight<=0||!k.reliableHiddenOffsets()&&"none"===(a.style&&a.style.display||m.css(a,"display"))},m.expr.filters.visible=function(a){return!m.expr.filters.hidden(a)};var Qc=/%20/g,Rc=/\[\]$/,Sc=/\r?\n/g,Tc=/^(?:submit|button|image|reset|file)$/i,Uc=/^(?:input|select|textarea|keygen)/i;function Vc(a,b,c,d){var e;if(m.isArray(b))m.each(b,function(b,e){c||Rc.test(a)?d(a,e):Vc(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==m.type(b))d(a,b);else for(e in b)Vc(a+"["+e+"]",b[e],c,d)}m.param=function(a,b){var c,d=[],e=function(a,b){b=m.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=m.ajaxSettings&&m.ajaxSettings.traditional),m.isArray(a)||a.jquery&&!m.isPlainObject(a))m.each(a,function(){e(this.name,this.value)});else for(c in a)Vc(c,a[c],b,e);return d.join("&").replace(Qc,"+")},m.fn.extend({serialize:function(){return m.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=m.prop(this,"elements");return a?m.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!m(this).is(":disabled")&&Uc.test(this.nodeName)&&!Tc.test(a)&&(this.checked||!W.test(a))}).map(function(a,b){var c=m(this).val();return null==c?null:m.isArray(c)?m.map(c,function(a){return{name:b.name,value:a.replace(Sc,"\r\n")}}):{name:b.name,value:c.replace(Sc,"\r\n")}}).get()}}),m.ajaxSettings.xhr=void 0!==a.ActiveXObject?function(){return!this.isLocal&&/^(get|post|head|put|delete|options)$/i.test(this.type)&&Zc()||$c()}:Zc;var Wc=0,Xc={},Yc=m.ajaxSettings.xhr();a.attachEvent&&a.attachEvent("onunload",function(){for(var a in Xc)Xc[a](void 0,!0)}),k.cors=!!Yc&&"withCredentials"in Yc,Yc=k.ajax=!!Yc,Yc&&m.ajaxTransport(function(a){if(!a.crossDomain||k.cors){var b;return{send:function(c,d){var e,f=a.xhr(),g=++Wc;if(f.open(a.type,a.url,a.async,a.username,a.password),a.xhrFields)for(e in a.xhrFields)f[e]=a.xhrFields[e];a.mimeType&&f.overrideMimeType&&f.overrideMimeType(a.mimeType),a.crossDomain||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest");for(e in c)void 0!==c[e]&&f.setRequestHeader(e,c[e]+"");f.send(a.hasContent&&a.data||null),b=function(c,e){var h,i,j;if(b&&(e||4===f.readyState))if(delete Xc[g],b=void 0,f.onreadystatechange=m.noop,e)4!==f.readyState&&f.abort();else{j={},h=f.status,"string"==typeof f.responseText&&(j.text=f.responseText);try{i=f.statusText}catch(k){i=""}h||!a.isLocal||a.crossDomain?1223===h&&(h=204):h=j.text?200:404}j&&d(h,i,j,f.getAllResponseHeaders())},a.async?4===f.readyState?setTimeout(b):f.onreadystatechange=Xc[g]=b:b()},abort:function(){b&&b(void 0,!0)}}}});function Zc(){try{return new a.XMLHttpRequest}catch(b){}}function $c(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}m.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return m.globalEval(a),a}}}),m.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),m.ajaxTransport("script",function(a){if(a.crossDomain){var b,c=y.head||m("head")[0]||y.documentElement;return{send:function(d,e){b=y.createElement("script"),b.async=!0,a.scriptCharset&&(b.charset=a.scriptCharset),b.src=a.url,b.onload=b.onreadystatechange=function(a,c){(c||!b.readyState||/loaded|complete/.test(b.readyState))&&(b.onload=b.onreadystatechange=null,b.parentNode&&b.parentNode.removeChild(b),b=null,c||e(200,"success"))},c.insertBefore(b,c.firstChild)},abort:function(){b&&b.onload(void 0,!0)}}}});var _c=[],ad=/(=)\?(?=&|$)|\?\?/;m.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=_c.pop()||m.expando+"_"+vc++;return this[a]=!0,a}}),m.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(ad.test(b.url)?"url":"string"==typeof b.data&&!(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&ad.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=m.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(ad,"$1"+e):b.jsonp!==!1&&(b.url+=(wc.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||m.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,_c.push(e)),g&&m.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),m.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||y;var d=u.exec(a),e=!c&&[];return d?[b.createElement(d[1])]:(d=m.buildFragment([a],b,e),e&&e.length&&m(e).remove(),m.merge([],d.childNodes))};var bd=m.fn.load;m.fn.load=function(a,b,c){if("string"!=typeof a&&bd)return bd.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>=0&&(d=m.trim(a.slice(h,a.length)),a=a.slice(0,h)),m.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(f="POST"),g.length>0&&m.ajax({url:a,type:f,dataType:"html",data:b}).done(function(a){e=arguments,g.html(d?m("<div>").append(m.parseHTML(a)).find(d):a)}).complete(c&&function(a,b){g.each(c,e||[a.responseText,b,a])}),this},m.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){m.fn[b]=function(a){return this.on(b,a)}}),m.expr.filters.animated=function(a){return m.grep(m.timers,function(b){return a===b.elem}).length};var cd=a.document.documentElement;function dd(a){return m.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}m.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=m.css(a,"position"),l=m(a),n={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=m.css(a,"top"),i=m.css(a,"left"),j=("absolute"===k||"fixed"===k)&&m.inArray("auto",[f,i])>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),m.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(n.top=b.top-h.top+g),null!=b.left&&(n.left=b.left-h.left+e),"using"in b?b.using.call(a,n):l.css(n)}},m.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){m.offset.setOffset(this,a,b)});var b,c,d={top:0,left:0},e=this[0],f=e&&e.ownerDocument;if(f)return b=f.documentElement,m.contains(b,e)?(typeof e.getBoundingClientRect!==K&&(d=e.getBoundingClientRect()),c=dd(f),{top:d.top+(c.pageYOffset||b.scrollTop)-(b.clientTop||0),left:d.left+(c.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}):d},position:function(){if(this[0]){var a,b,c={top:0,left:0},d=this[0];return"fixed"===m.css(d,"position")?b=d.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),m.nodeName(a[0],"html")||(c=a.offset()),c.top+=m.css(a[0],"borderTopWidth",!0),c.left+=m.css(a[0],"borderLeftWidth",!0)),{top:b.top-c.top-m.css(d,"marginTop",!0),left:b.left-c.left-m.css(d,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||cd;while(a&&!m.nodeName(a,"html")&&"static"===m.css(a,"position"))a=a.offsetParent;return a||cd})}}),m.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c=/Y/.test(b);m.fn[a]=function(d){return V(this,function(a,d,e){var f=dd(a);return void 0===e?f?b in f?f[b]:f.document.documentElement[d]:a[d]:void(f?f.scrollTo(c?m(f).scrollLeft():e,c?e:m(f).scrollTop()):a[d]=e)},a,d,arguments.length,null)}}),m.each(["top","left"],function(a,b){m.cssHooks[b]=Lb(k.pixelPosition,function(a,c){return c?(c=Jb(a,b),Hb.test(c)?m(a).position()[b]+"px":c):void 0})}),m.each({Height:"height",Width:"width"},function(a,b){m.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){m.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return V(this,function(b,c,d){var e;return m.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?m.css(b,c,g):m.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),m.fn.size=function(){return this.length},m.fn.andSelf=m.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return m});var ed=a.jQuery,fd=a.$;return m.noConflict=function(b){return a.$===m&&(a.$=fd),b&&a.jQuery===m&&(a.jQuery=ed),m},typeof b===K&&(a.jQuery=a.$=m),m}); +//# sourceMappingURL=jquery.min.map \ No newline at end of file diff --git a/public/app/bower_components/html5-boilerplate/dist/js/vendor/modernizr-2.8.3.min.js b/public/app/bower_components/html5-boilerplate/dist/js/vendor/modernizr-2.8.3.min.js new file mode 100644 index 00000000..81aafb7f --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/js/vendor/modernizr-2.8.3.min.js @@ -0,0 +1,4 @@ +/* Modernizr 2.8.3 (Custom Build) | MIT & BSD + * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load + */ +;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.8.3",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["­",'<style id="s',h,'">',a,"</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b)&&c(b).matches||!1;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function q(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return s.shivMethods?o(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/[\w\-]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(s,b.frag)}function r(a){a||(a=b);var c=n(a);return s.shivCSS&&!g&&!c.hasCSS&&(c.hasCSS=!!l(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),k||q(a,c),a}var c="3.7.0",d=a.html5||{},e=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,f=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,g,h="_html5shiv",i=0,j={},k;(function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(y[i.url]?i.noexec=!0:y[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),y[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(w(a))for(i=0;i<a.length;i++)j=a[i],e(j)?g(j,0,l,0):w(j)?B(j):Object(j)===j&&h(j,l);else Object(a)===a&&h(a,l)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,null==b.readyState&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))}; diff --git a/public/app/bower_components/html5-boilerplate/dist/robots.txt b/public/app/bower_components/html5-boilerplate/dist/robots.txt new file mode 100644 index 00000000..d0e5f1be --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/robots.txt @@ -0,0 +1,5 @@ +# www.robotstxt.org/ + +# Allow crawling of all content +User-agent: * +Disallow: diff --git a/public/app/bower_components/html5-boilerplate/dist/tile-wide.png b/public/app/bower_components/html5-boilerplate/dist/tile-wide.png new file mode 100644 index 00000000..ccd739c7 Binary files /dev/null and b/public/app/bower_components/html5-boilerplate/dist/tile-wide.png differ diff --git a/public/app/bower_components/html5-boilerplate/dist/tile.png b/public/app/bower_components/html5-boilerplate/dist/tile.png new file mode 100644 index 00000000..f820f61a Binary files /dev/null and b/public/app/bower_components/html5-boilerplate/dist/tile.png differ diff --git a/public/app/bower_components/html5-boilerplate/doc/TOC.md b/public/app/bower_components/html5-boilerplate/doc/TOC.md deleted file mode 100644 index d0f7d0d5..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/TOC.md +++ /dev/null @@ -1,37 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) - -# HTML5 Boilerplate documentation: - -## Getting started - -* [Usage](usage.md) — Overview of the project contents. -* [FAQ](faq.md) — Frequently asked questions, along with their answers. - -## The core of HTML5 Boilerplate - -* [HTML](html.md) — A guide to the default HTML. -* [CSS](css.md) — A guide to the default CSS. -* [JavaScript](js.md) — A guide to the default JavaScript. -* [.htaccess](https://github.com/h5bp/server-configs-apache/tree/master/doc) - — All about the Apache web server configs (also see our [alternative server - configs](https://github.com/h5bp/server-configs/blob/master/README.md)). -* [crossdomain.xml](crossdomain.md) — An introduction to making use of - crossdomain requests. -* [Everything else](misc.md). - -## Development - -* [Extending and customizing HTML5 Boilerplate](extend.md) — Going further with - the boilerplate. - -## Related projects - -HTML5 Boilerplate has several related projects to help improve the performance -of your site/app in various production environments. - -* [Server configs](https://github.com/h5bp/server-configs) — Configs for - different servers. -* [Node build script](https://github.com/h5bp/node-build-script) — A - feature-rich [grunt](https://github.com/gruntjs/grunt) plugin. -* [Ant build script](https://github.com/h5bp/ant-build-script) — The original - HTML5 Boilerplate build script. diff --git a/public/app/bower_components/html5-boilerplate/doc/crossdomain.md b/public/app/bower_components/html5-boilerplate/doc/crossdomain.md deleted file mode 100644 index 860629e2..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/crossdomain.md +++ /dev/null @@ -1,17 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# crossdomain.xml - -A cross-domain policy file is an XML document that grants a web client—such as -Adobe Flash Player, Adobe Reader, etc., permission to handle data across -multiple domains. When a client hosts content from a particular source domain -and that content makes requests directed towards a domain other than its own, -the remote domain would need to host a cross-domain policy file that grants -access to the source domain, allowing the client to continue with the -transaction. Policy files grant read access to data, permit a client to include -custom headers in cross-domain requests, and are also used with sockets to -grant permissions for socket-based connections. - -For full details, check out Adobe's article about the [cross-domain policy file -specification](http://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html). diff --git a/public/app/bower_components/html5-boilerplate/doc/css.md b/public/app/bower_components/html5-boilerplate/doc/css.md deleted file mode 100644 index a9b99eae..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/css.md +++ /dev/null @@ -1,136 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# The CSS - -The HTML5 Boilerplate starting CSS includes: - -* [Normalize.css](https://github.com/necolas/normalize.css). -* Useful HTML5 Boilerplate defaults. -* Common helpers. -* Placeholder media queries. -* Print styles. - -This starting CSS does not rely on the presence of conditional classnames, -conditional style sheets, or Modernizr. It is ready to use whatever your -development preferences happen to be. - - -## Normalize.css - -Normalize.css is a modern, HTML5-ready alternative to CSS resets. It contains -extensive inline documentation. Please refer to the [Normalize.css -project](http://necolas.github.com/normalize.css/) for more information. - - -## HTML5 Boilerplate defaults - -This project includes a handful of base styles that build upon Normalize.css. -These include: - -* Basic typography settings to provide improved text readability by default. -* Protection against unwanted `text-shadow` during text highlighting. -* Tweaks to default image alignment, fieldsets, and textareas. -* A pretty Chrome Frame prompt. - -You are free to modify or add to these base styles as your project requires. - - -## Common helpers - -#### `.ir` - -Add the `.ir` class to any element you are applying image-replacement to. When -replacing an element's content with an image, make sure to also set a specific -`background-image: url(pathtoimage.png);`, `width`, and `height` so that your -replacement image appears. - -#### `.hidden` - -Add the `.hidden` class to any elements that you want to hide from all -presentations, including screen readers. It could be an element that will be -populated later with JavaScript or an element you will hide with JavaScript. Do -not use this for SEO keyword stuffing. That is just not cool. - -#### `.visuallyhidden` - -Add the `.visuallyhidden` class to hide text from browsers but make it -available for screen readers. You can use this to hide text that is specific to -screen readers but that other users should not see. [About invisible -content](http://www.webaim.org/techniques/css/invisiblecontent/), [Hiding -content for -accessibility](http://snook.ca/archives/html_and_css/hiding-content-for-accessibility), -[HTML5 Boilerplate -issue/research](https://github.com/h5bp/html5-boilerplate/issues/194/). - -#### `.invisible` - -Add the `.invisible` class to any element you want to hide without affecting -layout. When you use `display: none` an element is effectively removed from the -layout. But in some cases you want the element to simply be invisible while -remaining in the flow and not affecting the positioning of surrounding -content. - -#### `.clearfix` - -Adding `.clearfix` to an element will ensure that it always fully contains its -floated children. There have been many variants of the clearfix hack over the -years, and there are other hacks that can also help you to contain floated -children, but the HTML5 Boilerplate currently uses the [micro -clearfix](http://nicolasgallagher.com/micro-clearfix-hack/). - - -## Media Queries - -The boilerplate makes it easy to get started with a "Mobile First" and -[Responsive Web -Design](http://www.alistapart.com/articles/responsive-web-design/) approach to -development. But it's worth remembering that there are [no silver -bullets](http://www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/). - -We include a placeholder Media Queries to build up your mobile styles for wider -viewports and high-resolution displays. It's recommended that you adapt these -Media Queries based on the content of your site rather than mirroring the fixed -dimensions of specific devices. - -If you do not want to take a "Mobile First" approach, you can simply edit or -remove these placeholder Media Queries. One possibility would be to work from -wide viewports down and use `max-width` MQs instead, e.g., `@media only screen -and (max-width: 480px)`. - -Take a look into the [Mobile -Boilerplate](https://github.com/h5bp/mobile-boilerplate) for features that are -useful when developing mobile wep apps. - - -## Print styles - -* Print styles are inlined to [reduce the number of page - requests](http://www.phpied.com/delay-loading-your-print-css/). -* We strip all background colors, change the font color to black and remove - text-shadow. This is meant to [help save printer ink and make the printing - process much faster](http://www.sanbeiji.com/archives/953). -* Anchors do not need colors to indicate they are linked. They are underlined - to indicate so. -* Anchors and Abbreviations are expanded to indicate where users reading the - printed page can refer to. -* But we do not want to show link text for image replaced elements (given that - they are primarily images). - -### Paged media styles - -* Paged media is supported only in a [few - browsers](http://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28Cascading_Style_Sheets%29#Grammar_and_rules). -* Paged media support means browsers would know how to interpret instructions - on breaking content into pages and on orphans/widows. -* We use `page-break-inside: avoid;` to prevent an image and table row from - being split into two different pages, so use the same `page-break-inside: - avoid;` for that as well. -* Headings should always appear with the text they are titles for. So, we - ensure headings never appear in a different page than the text they describe - by using `page-break-after: avoid;`. -* We also apply a default margin for the page specified in `cm`. -* We do not want [orphans and - widows](http://en.wikipedia.org/wiki/Widows_and_orphans) to appear on pages - you print. So, by defining `orphans: 3` and `widows: 3` you define the minimal - number of words that every line should contain. diff --git a/public/app/bower_components/html5-boilerplate/doc/faq.md b/public/app/bower_components/html5-boilerplate/doc/faq.md deleted file mode 100644 index d37019ae..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/faq.md +++ /dev/null @@ -1,76 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# Frequently asked questions - -### Why is the URL for jQuery without "http"? - -This is an intentional use of [protocol-relative -URLs](http://paulirish.com/2010/the-protocol-relative-url/) - -**N.B.** Using a protocol-relative URL for files that exist on a CDN is -problematic when you try to view your local files directly in the browser. The -browser will attempt to fetch the file from your local file system. We -recommend that you use a local server to test your pages (or Dropbox). This can -be done using Python 2.x by running `python -m SimpleHTTPServer` or Python 3.x -with `python -m http.server` from your local directory, using Ruby by installing -and running [asdf](https://rubygems.org/gems/asdf), and by installing any one of -XAMPP, MAMP, or WAMP. - -### Why don't you automatically load the latest version of jQuery from the Google CDN? - -1. The latest version of jQuery may not be compatible with the existing - plugins/code on the site. Version updating should be an intentional - decision. -2. The latest version has a very short `max-age=3600` compares to the specific - version of `max-age=31536000`, which means you won't get the benefits of - long-term caching. - - -### Why is the Google Analytics code at the bottom? Google recommends it be placed the `head`. - -The advantage to placing it in the `head` is that you will track a user's -pageview even if they leave the page before it has been fully loaded. However, -putting the code at the bottom keeps all the scripts together and reinforces -that scripts at the bottom are the right move. - - -### How can I integrate [Twitter Bootstrap](http://twitter.github.com/bootstrap/) with HTML5 Boilerplate? - -You can use [Initializr](http://initializr.com) to create a custom build that -includes HTML5 Boilerplate with Twitter Bootstrap. - -Read more about how [HTML5 Boilerplate and Twitter Bootstrap complement each -other](http://www.quora.com/Is-Bootstrap-a-complement-OR-an-alternative-to-HTML5-Boilerplate-or-viceversa/answer/Nicolas-Gallagher). - - -### How do I prevent phone numbers looking twice as large and having a Skype highlight? - -If this is occurring, it is because a user has the Skype browser extension -installed. - -Use the following CSS to prevent Skype from formatting the numbers on your -page: - -```css -span.skype_pnh_container { - display: none !important; -} - -span.skype_pnh_print_container { - display: inline !important; -} -``` - - -### Do I need to upgrade my sites each time a new version of HTML5 Boilerplate is released? - -No. You don't normally replace the foundations of a house once it has been -built. There is nothing stopping you from trying to work in the latest changes -but you'll have to assess the costs/benefits of doing so. - - -### Where can I get help for support questions? - -Please ask for help on -[StackOverflow](http://stackoverflow.com/questions/tagged/html5boilerplate). diff --git a/public/app/bower_components/html5-boilerplate/doc/html.md b/public/app/bower_components/html5-boilerplate/doc/html.md deleted file mode 100644 index b7fbbd60..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/html.md +++ /dev/null @@ -1,161 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# The HTML - -## Conditional `html` classes - -A series of IE conditional comments apply the relevant IE-specific classes to -the `html` tag. This provides one method of specifying CSS fixes for specific -legacy versions of IE. While you may or may not choose to use this technique in -your project code, HTML5 Boilerplate's default CSS does not rely on it. - -When using the conditional classes technique, applying classes to the `html` -element has several benefits: - -* It avoids a [file blocking - issue](http://webforscher.wordpress.com/2010/05/20/ie-6-slowing-down-ie-8/) - discovered by Stoyan Stefanov and Markus Leptien. -* It avoids the need for an empty comment that also fixes the above issue. -* CMSes like WordPress and Drupal use the body class more heavily. This makes - integrating there a touch simpler. -* It still validates as HTML5. -* It uses the same element as Modernizr (and Dojo). That feels nice. -* It can improve the clarity of code in multi-developer teams. - - -## The `no-js` class - -Allows you to more easily explicitly add custom styles when JavaScript is -disabled (`no-js`) or enabled (`js`). More here: [Avoiding the -FOUC](http://paulirish.com/2009/avoiding-the-fouc-v3/). - - -## The order of meta tags, and `<title>` - -As recommended by [the HTML5 -spec](http://www.whatwg.org/specs/web-apps/current-work/complete/semantics.html#charset) -(4.2.5.5 Specifying the document's character encoding), add your charset -declaration early (before any ASCII art ;) to avoid a potential -[encoding-related security -issue](http://code.google.com/p/doctype-mirror/wiki/ArticleUtf7) in IE. It -should come in the first [1024 -bytes](http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#charset). - -The charset should also come before the `<title>` tag, due to [potential XSS -vectors](http://code.google.com/p/doctype-mirror/wiki/ArticleUtf7). - -The meta tag for compatibility mode [needs to be before all elements except -title and meta](http://h5bp.com/f "Defining Document Compatibility - MSDN"). -And that same meta tag can only be invoked for Google Chrome Frame if it is -within the [first 1024 -bytes](http://code.google.com/p/chromium/issues/detail?id=23003). - - -## X-UA-Compatible - -This makes sure the latest version of IE is used in versions of IE that contain -multiple rendering engines. Even if a site visitor is using IE8 or IE9, it's -possible that they're not using the latest rendering engine their browser -contains. To fix this, use: - -```html -<meta http-equiv="X-UA-Compatible" content="IE=edge"> -``` - -The `meta` tag tells the IE rendering engine it should use the latest, or edge, -version of the IE rendering environment. - -This `meta` tag ensures that anyone browsing your site in IE is treated to the -best possible user experience that their browser can offer. - -This line breaks validation. To avoid this edge case issue it is recommended -that you **remove this line and use the `.htaccess`** (or other server config) -to send these headers instead. You also might want to read [Validating: -X-UA-Compatible](http://groups.google.com/group/html5boilerplate/browse_thread/thread/6d1b6b152aca8ed2). - -If you are serving your site on a non-standard port, you will need to set this -header on the server-side. This is because the IE preference option 'Display -intranet sites in Compatibility View' is checked by default. - - -## Mobile viewport - -There are a few different options that you can use with the [`viewport` meta -tag](https://docs.google.com/present/view?id=dkx3qtm_22dxsrgcf4 "Viewport and -Media Queries - The Complete Idiot's Guide"). You can find out more in [the -Apple developer docs](http://j.mp/mobileviewport). HTML5 Boilerplate comes with -a simple setup that strikes a good balance for general use cases. - -```html -<meta name="viewport" content="width=device-width, initial-scale=1"> -``` - -## Favicons and Touch Icon - -The shortcut icons should be put in the root directory of your site. HTML5 -Boilerplate comes with a default set of icons (include favicon and one Apple -Touch Icon) that you can use as a baseline to create your own. - -Please refer to the more detailed description in the [Extend section](extend.md) -of these docs. - -## Modernizr - -HTML5 Boilerplate uses a custom build of Modernizr. - -[Modernizr](http://modernizr.com) is a JavaScript library which adds classes to -the `html` element based on the results of feature test and which ensures that -all browsers can make use of HTML5 elements (as it includes the HTML5 Shiv). -This allows you to target parts of your CSS and JavaScript based on the -features supported by a browser. - -In general, in order to keep page load times to a minimum, it's best to call -any JavaScript at the end of the page because if a script is slow to load -from an external server it may cause the whole page to hang. That said, the -Modernizr script *needs* to run *before* the browser begins rendering the page, -so that browsers lacking support for some of the new HTML5 elements are able to -handle them properly. Therefore the Modernizr script is the only JavaScript -file synchronously loaded at the top of the document. - - -## The content area - -The central part of the boilerplate template is pretty much empty. This is -intentional, in order to make the boilerplate suitable for both web page and -web app development. - -### Google Chrome Frame - -The main content area of the boilerplate includes a prompt to install Chrome -Frame (which no longer requires administrative rights) for users of IE 6. If -you intended to support IE 6, then you should remove the snippet of code. - -### Google CDN for jQuery - -The Google CDN version of the jQuery JavaScript library is referenced towards -the bottom of the page using a protocol-independent path (read more about this -in the [FAQ](faq.md)). A local fallback of jQuery is included for rare instances -when the CDN version might not be available, and to facilitate offline -development. - -Regardless of which JavaScript library you choose to use, it is well worth the -time and effort to look up and reference the Google CDN (Content Delivery -Network) version. Your users may already have this version cached in their -browsers, and Google's CDN is likely to deliver the asset faster than your -server. - -### Google Analytics Tracking Code - -Finally, an optimized version of the latest Google Analytics tracking code is -included. Google recommends that this script be placed at the top of the page. -Factors to consider: if you place this script at the top of the page, you’ll be -able to count users who don’t fully load the page, and you’ll incur the max -number of simultaneous connections of the browser. - -Further information: - -* [Optimizing the asynchronous Google Analytics - snippet](http://mathiasbynens.be/notes/async-analytics-snippet). -* [Tracking Site Activity - Google - Analytics](http://code.google.com/apis/analytics/docs/tracking/asyncTracking.html). diff --git a/public/app/bower_components/html5-boilerplate/doc/misc.md b/public/app/bower_components/html5-boilerplate/doc/misc.md deleted file mode 100644 index 865e3f05..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/misc.md +++ /dev/null @@ -1,26 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# Miscellaneous - -## .gitignore - -HTML5 Boilerplate includes a basic project-level `.gitignore`. This should -primarily be used to avoid certain project-level files and directories from -being kept under source control. Different development-environments will -benefit from different collections of ignores. - -OS-specific and editor-specific files should be ignored using a "global -ignore" that applies to all repositories on your system. - -For example, add the following to your `~/.gitconfig`, where the `.gitignore` -in your HOME directory contains the files and directories you'd like to -globally ignore: - -```gitignore -[core] - excludesfile = ~/.gitignore -``` - -* More on global ignores: http://help.github.com/ignore-files/ -* Comprehensive set of ignores on GitHub: https://github.com/github/gitignore diff --git a/public/app/bower_components/html5-boilerplate/gulpfile.js b/public/app/bower_components/html5-boilerplate/gulpfile.js new file mode 100644 index 00000000..941eeaa6 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/gulpfile.js @@ -0,0 +1,159 @@ +var fs = require('fs'); +var path = require('path'); + +var gulp = require('gulp'); +var plugins = require('gulp-load-plugins')(); // Load all gulp plugins + // automatically and attach + // them to the `plugins` object + +var runSequence = require('run-sequence'); // Temporary solution until gulp 4 + // https://github.com/gulpjs/gulp/issues/355 + +var pkg = require('./package.json'); +var dirs = pkg['h5bp-configs'].directories; + +// --------------------------------------------------------------------- +// | Helper tasks | +// --------------------------------------------------------------------- + +gulp.task('archive:create_archive_dir', function () { + fs.mkdirSync(path.resolve(dirs.archive), '0755'); +}); + +gulp.task('archive:zip', function (done) { + + var archiveName = path.resolve(dirs.archive, pkg.name + '_v' + pkg.version + '.zip'); + var archiver = require('archiver')('zip'); + var files = require('glob').sync('**/*.*', { + 'cwd': dirs.dist, + 'dot': true // include hidden files + }); + var output = fs.createWriteStream(archiveName); + + archiver.on('error', function (error) { + done(); + throw error; + }); + + output.on('close', done); + + files.forEach(function (file) { + + var filePath = path.resolve(dirs.dist, file); + + // `archiver.bulk` does not maintain the file + // permissions, so we need to add files individually + archiver.append(fs.createReadStream(filePath), { + 'name': file, + 'mode': fs.statSync(filePath) + }); + + }); + + archiver.pipe(output); + archiver.finalize(); + +}); + +gulp.task('clean', function (done) { + require('del')([ + dirs.archive, + dirs.dist + ], done); +}); + +gulp.task('copy', [ + 'copy:.htaccess', + 'copy:index.html', + 'copy:jquery', + 'copy:main.css', + 'copy:misc', + 'copy:normalize' +]); + +gulp.task('copy:.htaccess', function () { + return gulp.src('node_modules/apache-server-configs/dist/.htaccess') + .pipe(plugins.replace(/# ErrorDocument/g, 'ErrorDocument')) + .pipe(gulp.dest(dirs.dist)); +}); + +gulp.task('copy:index.html', function () { + return gulp.src(dirs.src + '/index.html') + .pipe(plugins.replace(/{{JQUERY_VERSION}}/g, pkg.devDependencies.jquery)) + .pipe(gulp.dest(dirs.dist)); +}); + +gulp.task('copy:jquery', function () { + return gulp.src(['node_modules/jquery/dist/jquery.min.js']) + .pipe(plugins.rename('jquery-' + pkg.devDependencies.jquery + '.min.js')) + .pipe(gulp.dest(dirs.dist + '/js/vendor')); +}); + +gulp.task('copy:main.css', function () { + + var banner = '/*! HTML5 Boilerplate v' + pkg.version + + ' | ' + pkg.license.type + ' License' + + ' | ' + pkg.homepage + ' */\n\n'; + + return gulp.src(dirs.src + '/css/main.css') + .pipe(plugins.header(banner)) + .pipe(gulp.dest(dirs.dist + '/css')); + +}); + +gulp.task('copy:misc', function () { + return gulp.src([ + + // Copy all files + dirs.src + '/**/*', + + // Exclude the following files + // (other tasks will handle the copying of these files) + '!' + dirs.src + '/css/main.css', + '!' + dirs.src + '/index.html' + + ], { + + // Include hidden files by default + dot: true + + }).pipe(gulp.dest(dirs.dist)); +}); + +gulp.task('copy:normalize', function () { + return gulp.src('node_modules/normalize.css/normalize.css') + .pipe(gulp.dest(dirs.dist + '/css')); +}); + +gulp.task('lint:js', function () { + return gulp.src([ + 'gulpfile.js', + dirs.src + '/js/*.js', + dirs.test + '/*.js' + ]).pipe(plugins.jscs()) + .pipe(plugins.jshint()) + .pipe(plugins.jshint.reporter('jshint-stylish')) + .pipe(plugins.jshint.reporter('fail')); +}); + + +// --------------------------------------------------------------------- +// | Main tasks | +// --------------------------------------------------------------------- + +gulp.task('archive', function (done) { + runSequence( + 'build', + 'archive:create_archive_dir', + 'archive:zip', + done); +}); + +gulp.task('build', function (done) { + runSequence( + ['clean', 'lint:js'], + 'copy', + done); +}); + +gulp.task('default', ['build']); diff --git a/public/app/bower_components/html5-boilerplate/js/main.js b/public/app/bower_components/html5-boilerplate/js/main.js deleted file mode 100644 index 8b137891..00000000 --- a/public/app/bower_components/html5-boilerplate/js/main.js +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/app/bower_components/html5-boilerplate/js/vendor/jquery-1.10.2.min.js b/public/app/bower_components/html5-boilerplate/js/vendor/jquery-1.10.2.min.js deleted file mode 100644 index da417064..00000000 --- a/public/app/bower_components/html5-boilerplate/js/vendor/jquery-1.10.2.min.js +++ /dev/null @@ -1,6 +0,0 @@ -/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license -//@ sourceMappingURL=jquery-1.10.2.min.map -*/ -(function(e,t){var n,r,i=typeof t,o=e.location,a=e.document,s=a.documentElement,l=e.jQuery,u=e.$,c={},p=[],f="1.10.2",d=p.concat,h=p.push,g=p.slice,m=p.indexOf,y=c.toString,v=c.hasOwnProperty,b=f.trim,x=function(e,t){return new x.fn.init(e,t,r)},w=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=/\S+/g,C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.ready())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded",q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.each(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:function(){return this.pushStack(g.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splice:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.call(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);return n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).remove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.replace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(D,"ms-").replace(L,H)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,a=M(e);if(n){if(a){for(;o>i;i++)if(r=t.apply(e[i],n),r===!1)break}else for(i in e)if(r=t.apply(e[i],n),r===!1)break}else if(a){for(;o>i;i++)if(r=t.call(e[i],i,e[i]),r===!1)break}else for(i in e)if(r=t.call(e[i],i,e[i]),r===!1)break;return e},trim:b&&!b.call("\ufeff\u00a0")?function(e){return null==e?"":b.call(e)}:function(e){return null==e?"":(e+"").replace(C,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(M(Object(e))?x.merge(n,"string"==typeof e?[e]:e):h.call(n,e)),n},inArray:function(e,t,n){var r;if(t){if(m)return m.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else while(n[o]!==t)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,n){var r,i=0,o=e.length,a=M(e),s=[];if(a)for(;o>i;i++)r=t(e[i],i,n),null!=r&&(s[s.length]=r);else for(i in e)r=t(e[i],i,n),null!=r&&(s[s.length]=r);return d.apply([],s)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(o=e[n],n=e,e=o),x.isFunction(e)?(r=g.call(arguments,2),i=function(){return e.apply(n||this,r.concat(g.call(arguments)))},i.guid=e.guid=e.guid||x.guid++,i):t},access:function(e,n,r,i,o,a,s){var l=0,u=e.length,c=null==r;if("object"===x.type(r)){o=!0;for(l in r)x.access(e,n,l,r[l],!0,a,s)}else if(i!==t&&(o=!0,x.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(x(e),n)})),n))for(;u>l;l++)n(e[l],r,s?i:i.call(e[l],l,n(e[l],r)));return o?e:c?n.call(e):u?n(e[0],r):a},now:function(){return(new Date).getTime()},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),x.ready.promise=function(t){if(!n)if(n=x.Deferred(),"complete"===a.readyState)setTimeout(x.ready);else if(a.addEventListener)a.addEventListener("DOMContentLoaded",q,!1),e.addEventListener("load",q,!1);else{a.attachEvent("onreadystatechange",q),e.attachEvent("onload",q);var r=!1;try{r=null==e.frameElement&&a.documentElement}catch(i){}r&&r.doScroll&&function o(){if(!x.isReady){try{r.doScroll("left")}catch(e){return setTimeout(o,50)}_(),x.ready()}}()}return n.promise(t)},x.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){c["[object "+t+"]"]=t.toLowerCase()});function M(e){var t=e.length,n=x.type(e);return x.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}r=x(a),function(e,t){var n,r,i,o,a,s,l,u,c,p,f,d,h,g,m,y,v,b="sizzle"+-new Date,w=e.document,T=0,C=0,N=st(),k=st(),E=st(),S=!1,A=function(e,t){return e===t?(S=!0,0):0},j=typeof t,D=1<<31,L={}.hasOwnProperty,H=[],q=H.pop,_=H.push,M=H.push,O=H.slice,F=H.indexOf||function(e){var t=0,n=this.length;for(;n>t;t++)if(this[t]===e)return t;return-1},B="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",P="[\\x20\\t\\r\\n\\f]",R="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",W=R.replace("w","w#"),$="\\["+P+"*("+R+")"+P+"*(?:([*^$|!~]?=)"+P+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+W+")|)|)"+P+"*\\]",I=":("+R+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+$.replace(3,8)+")*)|.*)\\)|)",z=RegExp("^"+P+"+|((?:^|[^\\\\])(?:\\\\.)*)"+P+"+$","g"),X=RegExp("^"+P+"*,"+P+"*"),U=RegExp("^"+P+"*([>+~]|"+P+")"+P+"*"),V=RegExp(P+"*[+~]"),Y=RegExp("="+P+"*([^\\]'\"]*)"+P+"*\\]","g"),J=RegExp(I),G=RegExp("^"+W+"$"),Q={ID:RegExp("^#("+R+")"),CLASS:RegExp("^\\.("+R+")"),TAG:RegExp("^("+R.replace("w","w*")+")"),ATTR:RegExp("^"+$),PSEUDO:RegExp("^"+I),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|))"+P+"*\\)|)","i"),bool:RegExp("^(?:"+B+")$","i"),needsContext:RegExp("^"+P+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?=[^-]|$)","i")},K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,et=/^(?:input|select|textarea|button)$/i,tt=/^h\d$/i,nt=/'|\\/g,rt=RegExp("\\\\([\\da-f]{1,6}"+P+"?|("+P+")|.)","ig"),it=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(55296|r>>10,56320|1023&r)};try{M.apply(H=O.call(w.childNodes),w.childNodes),H[w.childNodes.length].nodeType}catch(ot){M={apply:H.length?function(e,t){_.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function at(e,t,n,i){var o,a,s,l,u,c,d,m,y,x;if((t?t.ownerDocument||t:w)!==f&&p(t),t=t||f,n=n||[],!e||"string"!=typeof e)return n;if(1!==(l=t.nodeType)&&9!==l)return[];if(h&&!i){if(o=Z.exec(e))if(s=o[1]){if(9===l){if(a=t.getElementById(s),!a||!a.parentNode)return n;if(a.id===s)return n.push(a),n}else if(t.ownerDocument&&(a=t.ownerDocument.getElementById(s))&&v(t,a)&&a.id===s)return n.push(a),n}else{if(o[2])return M.apply(n,t.getElementsByTagName(e)),n;if((s=o[3])&&r.getElementsByClassName&&t.getElementsByClassName)return M.apply(n,t.getElementsByClassName(s)),n}if(r.qsa&&(!g||!g.test(e))){if(m=d=b,y=t,x=9===l&&e,1===l&&"object"!==t.nodeName.toLowerCase()){c=mt(e),(d=t.getAttribute("id"))?m=d.replace(nt,"\\$&"):t.setAttribute("id",m),m="[id='"+m+"'] ",u=c.length;while(u--)c[u]=m+yt(c[u]);y=V.test(e)&&t.parentNode||t,x=c.join(",")}if(x)try{return M.apply(n,y.querySelectorAll(x)),n}catch(T){}finally{d||t.removeAttribute("id")}}}return kt(e.replace(z,"$1"),t,n,i)}function st(){var e=[];function t(n,r){return e.push(n+=" ")>o.cacheLength&&delete t[e.shift()],t[n]=r}return t}function lt(e){return e[b]=!0,e}function ut(e){var t=f.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ct(e,t){var n=e.split("|"),r=e.length;while(r--)o.attrHandle[n[r]]=t}function pt(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||D)-(~e.sourceIndex||D);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function ft(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function dt(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ht(e){return lt(function(t){return t=+t,lt(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}s=at.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},r=at.support={},p=at.setDocument=function(e){var n=e?e.ownerDocument||e:w,i=n.defaultView;return n!==f&&9===n.nodeType&&n.documentElement?(f=n,d=n.documentElement,h=!s(n),i&&i.attachEvent&&i!==i.top&&i.attachEvent("onbeforeunload",function(){p()}),r.attributes=ut(function(e){return e.className="i",!e.getAttribute("className")}),r.getElementsByTagName=ut(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),r.getElementsByClassName=ut(function(e){return e.innerHTML="<div class='a'></div><div class='a i'></div>",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),r.getById=ut(function(e){return d.appendChild(e).id=b,!n.getElementsByName||!n.getElementsByName(b).length}),r.getById?(o.find.ID=function(e,t){if(typeof t.getElementById!==j&&h){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){return e.getAttribute("id")===t}}):(delete o.find.ID,o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){var n=typeof e.getAttributeNode!==j&&e.getAttributeNode("id");return n&&n.value===t}}),o.find.TAG=r.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==j?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},o.find.CLASS=r.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==j&&h?n.getElementsByClassName(e):t},m=[],g=[],(r.qsa=K.test(n.querySelectorAll))&&(ut(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+B+")"),e.querySelectorAll(":checked").length||g.push(":checked")}),ut(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(r.matchesSelector=K.test(y=d.webkitMatchesSelector||d.mozMatchesSelector||d.oMatchesSelector||d.msMatchesSelector))&&ut(function(e){r.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),m.push("!=",I)}),g=g.length&&RegExp(g.join("|")),m=m.length&&RegExp(m.join("|")),v=K.test(d.contains)||d.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=d.compareDocumentPosition?function(e,t){if(e===t)return S=!0,0;var i=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return i?1&i||!r.sortDetached&&t.compareDocumentPosition(e)===i?e===n||v(w,e)?-1:t===n||v(w,t)?1:c?F.call(c,e)-F.call(c,t):0:4&i?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,o=e.parentNode,a=t.parentNode,s=[e],l=[t];if(e===t)return S=!0,0;if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:c?F.call(c,e)-F.call(c,t):0;if(o===a)return pt(e,t);r=e;while(r=r.parentNode)s.unshift(r);r=t;while(r=r.parentNode)l.unshift(r);while(s[i]===l[i])i++;return i?pt(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},n):f},at.matches=function(e,t){return at(e,null,null,t)},at.matchesSelector=function(e,t){if((e.ownerDocument||e)!==f&&p(e),t=t.replace(Y,"='$1']"),!(!r.matchesSelector||!h||m&&m.test(t)||g&&g.test(t)))try{var n=y.call(e,t);if(n||r.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(i){}return at(t,f,null,[e]).length>0},at.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),v(e,t)},at.attr=function(e,n){(e.ownerDocument||e)!==f&&p(e);var i=o.attrHandle[n.toLowerCase()],a=i&&L.call(o.attrHandle,n.toLowerCase())?i(e,n,!h):t;return a===t?r.attributes||!h?e.getAttribute(n):(a=e.getAttributeNode(n))&&a.specified?a.value:null:a},at.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},at.uniqueSort=function(e){var t,n=[],i=0,o=0;if(S=!r.detectDuplicates,c=!r.sortStable&&e.slice(0),e.sort(A),S){while(t=e[o++])t===e[o]&&(i=n.push(o));while(i--)e.splice(n[i],1)}return e},a=at.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=a(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=a(t);return n},o=at.selectors={cacheLength:50,createPseudo:lt,match:Q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(rt,it),e[3]=(e[4]||e[5]||"").replace(rt,it),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||at.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&at.error(e[0]),e},PSEUDO:function(e){var n,r=!e[5]&&e[2];return Q.CHILD.test(e[0])?null:(e[3]&&e[4]!==t?e[2]=e[4]:r&&J.test(r)&&(n=mt(r,!0))&&(n=r.indexOf(")",r.length-n)-r.length)&&(e[0]=e[0].slice(0,n),e[2]=r.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(rt,it).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=N[e+" "];return t||(t=RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&N(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==j&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=at.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!l&&!s;if(m){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){c=m[b]||(m[b]={}),u=c[e]||[],d=u[0]===T&&u[1],f=u[0]===T&&u[2],p=d&&m.childNodes[d];while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if(1===p.nodeType&&++f&&p===t){c[e]=[T,d,f];break}}else if(v&&(u=(t[b]||(t[b]={}))[e])&&u[0]===T)f=u[1];else while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===y:1===p.nodeType)&&++f&&(v&&((p[b]||(p[b]={}))[e]=[T,f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var n,r=o.pseudos[e]||o.setFilters[e.toLowerCase()]||at.error("unsupported pseudo: "+e);return r[b]?r(t):r.length>1?(n=[e,e,"",t],o.setFilters.hasOwnProperty(e.toLowerCase())?lt(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=F.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:lt(function(e){var t=[],n=[],r=l(e.replace(z,"$1"));return r[b]?lt(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:lt(function(e){return function(t){return at(e,t).length>0}}),contains:lt(function(e){return function(t){return(t.textContent||t.innerText||a(t)).indexOf(e)>-1}}),lang:lt(function(e){return G.test(e||"")||at.error("unsupported lang: "+e),e=e.replace(rt,it).toLowerCase(),function(t){var n;do if(n=h?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===d},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!o.pseudos.empty(e)},header:function(e){return tt.test(e.nodeName)},input:function(e){return et.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:ht(function(){return[0]}),last:ht(function(e,t){return[t-1]}),eq:ht(function(e,t,n){return[0>n?n+t:n]}),even:ht(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:ht(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:ht(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:ht(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}},o.pseudos.nth=o.pseudos.eq;for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})o.pseudos[n]=ft(n);for(n in{submit:!0,reset:!0})o.pseudos[n]=dt(n);function gt(){}gt.prototype=o.filters=o.pseudos,o.setFilters=new gt;function mt(e,t){var n,r,i,a,s,l,u,c=k[e+" "];if(c)return t?0:c.slice(0);s=e,l=[],u=o.preFilter;while(s){(!n||(r=X.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),l.push(i=[])),n=!1,(r=U.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length));for(a in o.filter)!(r=Q[a].exec(s))||u[a]&&!(r=u[a](r))||(n=r.shift(),i.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?at.error(e):k(e,l).slice(0)}function yt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function vt(e,t,n){var r=t.dir,o=n&&"parentNode"===r,a=C++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||o)return e(t,n,i)}:function(t,n,s){var l,u,c,p=T+" "+a;if(s){while(t=t[r])if((1===t.nodeType||o)&&e(t,n,s))return!0}else while(t=t[r])if(1===t.nodeType||o)if(c=t[b]||(t[b]={}),(u=c[r])&&u[0]===p){if((l=u[1])===!0||l===i)return l===!0}else if(u=c[r]=[p],u[1]=e(t,n,s)||i,u[1]===!0)return!0}}function bt(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xt(e,t,n,r,i){var o,a=[],s=0,l=e.length,u=null!=t;for(;l>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),u&&t.push(s));return a}function wt(e,t,n,r,i,o){return r&&!r[b]&&(r=wt(r)),i&&!i[b]&&(i=wt(i,o)),lt(function(o,a,s,l){var u,c,p,f=[],d=[],h=a.length,g=o||Nt(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:xt(g,f,e,s,l),y=n?i||(o?e:h||r)?[]:a:m;if(n&&n(m,y,s,l),r){u=xt(y,d),r(u,[],s,l),c=u.length;while(c--)(p=u[c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){u=[],c=y.length;while(c--)(p=y[c])&&u.push(m[c]=p);i(null,y=[],u,l)}c=y.length;while(c--)(p=y[c])&&(u=i?F.call(o,p):f[c])>-1&&(o[u]=!(a[u]=p))}}else y=xt(y===a?y.splice(h,y.length):y),i?i(null,a,y,l):M.apply(a,y)})}function Tt(e){var t,n,r,i=e.length,a=o.relative[e[0].type],s=a||o.relative[" "],l=a?1:0,c=vt(function(e){return e===t},s,!0),p=vt(function(e){return F.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==u)||((t=n).nodeType?c(e,n,r):p(e,n,r))}];for(;i>l;l++)if(n=o.relative[e[l].type])f=[vt(bt(f),n)];else{if(n=o.filter[e[l].type].apply(null,e[l].matches),n[b]){for(r=++l;i>r;r++)if(o.relative[e[r].type])break;return wt(l>1&&bt(f),l>1&&yt(e.slice(0,l-1).concat({value:" "===e[l-2].type?"*":""})).replace(z,"$1"),n,r>l&&Tt(e.slice(l,r)),i>r&&Tt(e=e.slice(r)),i>r&&yt(e))}f.push(n)}return bt(f)}function Ct(e,t){var n=0,r=t.length>0,a=e.length>0,s=function(s,l,c,p,d){var h,g,m,y=[],v=0,b="0",x=s&&[],w=null!=d,C=u,N=s||a&&o.find.TAG("*",d&&l.parentNode||l),k=T+=null==C?1:Math.random()||.1;for(w&&(u=l!==f&&l,i=n);null!=(h=N[b]);b++){if(a&&h){g=0;while(m=e[g++])if(m(h,l,c)){p.push(h);break}w&&(T=k,i=++n)}r&&((h=!m&&h)&&v--,s&&x.push(h))}if(v+=b,r&&b!==v){g=0;while(m=t[g++])m(x,y,l,c);if(s){if(v>0)while(b--)x[b]||y[b]||(y[b]=q.call(p));y=xt(y)}M.apply(p,y),w&&!s&&y.length>0&&v+t.length>1&&at.uniqueSort(p)}return w&&(T=k,u=C),x};return r?lt(s):s}l=at.compile=function(e,t){var n,r=[],i=[],o=E[e+" "];if(!o){t||(t=mt(e)),n=t.length;while(n--)o=Tt(t[n]),o[b]?r.push(o):i.push(o);o=E(e,Ct(i,r))}return o};function Nt(e,t,n){var r=0,i=t.length;for(;i>r;r++)at(e,t[r],n);return n}function kt(e,t,n,i){var a,s,u,c,p,f=mt(e);if(!i&&1===f.length){if(s=f[0]=f[0].slice(0),s.length>2&&"ID"===(u=s[0]).type&&r.getById&&9===t.nodeType&&h&&o.relative[s[1].type]){if(t=(o.find.ID(u.matches[0].replace(rt,it),t)||[])[0],!t)return n;e=e.slice(s.shift().value.length)}a=Q.needsContext.test(e)?0:s.length;while(a--){if(u=s[a],o.relative[c=u.type])break;if((p=o.find[c])&&(i=p(u.matches[0].replace(rt,it),V.test(s[0].type)&&t.parentNode||t))){if(s.splice(a,1),e=i.length&&yt(s),!e)return M.apply(n,i),n;break}}}return l(e,f)(i,t,!h,n,V.test(e)),n}r.sortStable=b.split("").sort(A).join("")===b,r.detectDuplicates=S,p(),r.sortDetached=ut(function(e){return 1&e.compareDocumentPosition(f.createElement("div"))}),ut(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||ct("type|href|height|width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)}),r.attributes&&ut(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||ct("value",function(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),ut(function(e){return null==e.getAttribute("disabled")})||ct(B,function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}),x.find=at,x.expr=at.selectors,x.expr[":"]=x.expr.pseudos,x.unique=at.uniqueSort,x.text=at.getText,x.isXMLDoc=at.isXML,x.contains=at.contains}(e);var O={};function F(e){var t=O[e]={};return x.each(e.match(T)||[],function(e,n){t[n]=!0}),t}x.Callbacks=function(e){e="string"==typeof e?O[e]||F(e):x.extend({},e);var n,r,i,o,a,s,l=[],u=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0,o=l.length,n=!0;l&&o>a;a++)if(l[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;break}n=!1,l&&(u?u.length&&c(u.shift()):r?l=[]:p.disable())},p={add:function(){if(l){var t=l.length;(function i(t){x.each(t,function(t,n){var r=x.type(n);"function"===r?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==r&&i(n)})})(arguments),n?o=l.length:r&&(s=t,c(r))}return this},remove:function(){return l&&x.each(arguments,function(e,t){var r;while((r=x.inArray(t,l,r))>-1)l.splice(r,1),n&&(o>=r&&o--,a>=r&&a--)}),this},has:function(e){return e?x.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],o=0,this},disable:function(){return l=u=r=t,this},disabled:function(){return!l},lock:function(){return u=t,r||p.disable(),this},locked:function(){return!u},fireWith:function(e,t){return!l||i&&!u||(t=t||[],t=[e,t.slice?t.slice():t],n?u.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},x.extend({Deferred:function(e){var t=[["resolve","done",x.Callbacks("once memory"),"resolved"],["reject","fail",x.Callbacks("once memory"),"rejected"],["notify","progress",x.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return x.Deferred(function(n){x.each(t,function(t,o){var a=o[0],s=x.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&x.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?x.extend(e,r):r}},i={};return r.pipe=r.then,x.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=g.call(arguments),r=n.length,i=1!==r||e&&x.isFunction(e.promise)?r:0,o=1===i?e:x.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?g.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,l,u;if(r>1)for(s=Array(r),l=Array(r),u=Array(r);r>t;t++)n[t]&&x.isFunction(n[t].promise)?n[t].promise().done(a(t,u,n)).fail(o.reject).progress(a(t,l,s)):--i;return i||o.resolveWith(u,n),o.promise()}}),x.support=function(t){var n,r,o,s,l,u,c,p,f,d=a.createElement("div");if(d.setAttribute("className","t"),d.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",n=d.getElementsByTagName("*")||[],r=d.getElementsByTagName("a")[0],!r||!r.style||!n.length)return t;s=a.createElement("select"),u=s.appendChild(a.createElement("option")),o=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t.getSetAttribute="t"!==d.className,t.leadingWhitespace=3===d.firstChild.nodeType,t.tbody=!d.getElementsByTagName("tbody").length,t.htmlSerialize=!!d.getElementsByTagName("link").length,t.style=/top/.test(r.getAttribute("style")),t.hrefNormalized="/a"===r.getAttribute("href"),t.opacity=/^0.5/.test(r.style.opacity),t.cssFloat=!!r.style.cssFloat,t.checkOn=!!o.value,t.optSelected=u.selected,t.enctype=!!a.createElement("form").enctype,t.html5Clone="<:nav></:nav>"!==a.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,t.reliableMarginRight=!0,t.boxSizingReliable=!0,o.checked=!0,t.noCloneChecked=o.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!u.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}o=a.createElement("input"),o.setAttribute("value",""),t.input=""===o.getAttribute("value"),o.value="t",o.setAttribute("type","radio"),t.radioValue="t"===o.value,o.setAttribute("checked","t"),o.setAttribute("name","t"),l=a.createDocumentFragment(),l.appendChild(o),t.appendChecked=o.checked,t.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.attachEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=c in e||d.attributes[c].expando===!1;d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip;for(f in x(t))break;return t.ownLast="0"!==f,x(function(){var n,r,o,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",l=a.getElementsByTagName("body")[0];l&&(n=a.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",l.appendChild(n).appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",o=d.getElementsByTagName("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===o[0].offsetHeight,o[0].style.display="",o[1].style.display="none",t.reliableHiddenOffsets=p&&0===o[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",x.swap(l,null!=l.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===d.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.appendChild(a.createElement("div")),r.style.cssText=d.style.cssText=s,r.style.marginRight=r.style.width="0",d.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),typeof d.style.zoom!==i&&(d.innerHTML="",d.style.cssText=s+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.innerHTML="<div></div>",d.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==d.offsetWidth,t.inlineBlockNeedsLayout&&(l.style.zoom=1)),l.removeChild(n),n=d=o=r=null)}),n=s=l=u=r=o=null,t -}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop()||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i||(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:function(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:function(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.nodeType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].name,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"parsedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbacks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.dequeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.extend({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:function(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.length||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "+i+" "," ");n.className=e?x.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):x.isFunction(e)?this.each(function(n){x(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var t,r=0,o=x(this),a=e.match(T)||[];while(t=a[r++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else(n===i||"boolean"===n)&&(this.className&&x._data(this,"__className__",this.className),this.className=this.className||e===!1?"":x._data(this,"__className__")||"")})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(U," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=x.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=i?e.call(this,n,x(this).val()):e,null==o?o="":"number"==typeof o?o+="":x.isArray(o)&&(o=x.map(o,function(e){return null==e?"":e+""})),r=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.value=o))});if(o)return r=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replace(V,""):null==n?"":n)}}}),x.extend({valHooks:{option:{get:function(e){var t=x.find.attr(e,"value");return null!=t?t:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,l=0>i?s:o?i:0;for(;s>l;l++)if(n=r[l],!(!n.selected&&l!==i||(x.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&x.nodeName(n.parentNode,"optgroup"))){if(t=x(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n,r,i=e.options,o=x.makeArray(t),a=i.length;while(a--)r=i[a],(r.selected=x.inArray(x(r).val(),o)>=0)&&(n=!0);return n||(e.selectedIndex=-1),o}}},attr:function(e,n,r){var o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===i?x.prop(e,n,r):(1===s&&x.isXMLDoc(e)||(n=n.toLowerCase(),o=x.attrHooks[n]||(x.expr.match.bool.test(n)?X:z)),r===t?o&&"get"in o&&null!==(a=o.get(e,n))?a:(a=x.find.attr(e,n),null==a?t:a):null!==r?o&&"set"in o&&(a=o.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(x.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(T);if(o&&1===e.nodeType)while(n=o[i++])r=x.propFix[n]||n,x.expr.match.bool.test(n)?K&&Q||!G.test(n)?e[r]=!1:e[x.camelCase("default-"+n)]=e[r]=!1:x.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{type:{set:function(e,t){if(!x.support.radioValue&&"radio"===t&&x.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{"for":"htmlFor","class":"className"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!x.isXMLDoc(e),a&&(n=x.propFix[n]||n,o=x.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var t=x.find.attr(e,"tabindex");return t?parseInt(t,10):Y.test(e.nodeName)||J.test(e.nodeName)&&e.href?0:-1}}}}),X={set:function(e,t,n){return t===!1?x.removeAttr(e,n):K&&Q||!G.test(n)?e.setAttribute(!Q&&x.propFix[n]||n,n):e[x.camelCase("default-"+n)]=e[n]=!0,n}},x.each(x.expr.match.bool.source.match(/\w+/g),function(e,n){var r=x.expr.attrHandle[n]||x.find.attr;x.expr.attrHandle[n]=K&&Q||!G.test(n)?function(e,n,i){var o=x.expr.attrHandle[n],a=i?t:(x.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return x.expr.attrHandle[n]=o,a}:function(e,n,r){return r?t:e[x.camelCase("default-"+n)]?n.toLowerCase():null}}),K&&Q||(x.attrHooks.value={set:function(e,n,r){return x.nodeName(e,"input")?(e.defaultValue=n,t):z&&z.set(e,n,r)}}),Q||(z={set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},x.expr.attrHandle.id=x.expr.attrHandle.name=x.expr.attrHandle.coords=function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&""!==i.value?i.value:null},x.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&r.specified?r.value:t},set:z.set},x.attrHooks.contenteditable={set:function(e,t,n){z.set(e,""===t?!1:t,n)}},x.each(["width","height"],function(e,n){x.attrHooks[n]={set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}}})),x.support.hrefNormalized||x.each(["href","src"],function(e,t){x.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),x.support.style||(x.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),x.support.optSelected||(x.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){x.propFix[this.toLowerCase()]=this}),x.support.enctype||(x.propFix.enctype="encoding"),x.each(["radio","checkbox"],function(){x.valHooks[this]={set:function(e,n){return x.isArray(n)?e.checked=x.inArray(x(e).val(),n)>=0:t}},x.support.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmenu)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;function it(){return!0}function ot(){return!1}function at(){try{return a.activeElement}catch(e){}}x.event={global:{},add:function(e,n,r,o,a){var s,l,u,c,p,f,d,h,g,m,y,v=x._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=x.guid++),(l=v.events)||(l=v.events={}),(f=v.handle)||(f=v.handle=function(e){return typeof x===i||e&&x.event.triggered===e.type?t:x.event.dispatch.apply(f.elem,arguments)},f.elem=e),n=(n||"").match(T)||[""],u=n.length;while(u--)s=rt.exec(n[u])||[],g=y=s[1],m=(s[2]||"").split(".").sort(),g&&(p=x.event.special[g]||{},g=(a?p.delegateType:p.bindType)||g,p=x.event.special[g]||{},d=x.extend({type:g,origType:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&x.expr.match.needsContext.test(a),namespace:m.join(".")},c),(h=l[g])||(h=l[g]=[],h.delegateCount=0,p.setup&&p.setup.call(e,o,m,f)!==!1||(e.addEventListener?e.addEventListener(g,f,!1):e.attachEvent&&e.attachEvent("on"+g,f))),p.add&&(p.add.call(e,d),d.handler.guid||(d.handler.guid=r.guid)),a?h.splice(h.delegateCount++,0,d):h.push(d),x.event.global[g]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,l,u,c,p,f,d,h,g,m=x.hasData(e)&&x._data(e);if(m&&(c=m.events)){t=(t||"").match(T)||[""],u=t.length;while(u--)if(s=rt.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=x.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),l=o=f.length;while(o--)a=f[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,p.remove&&p.remove.call(e,a));l&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!==!1||x.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)x.event.remove(e,d+t[u],n,r,!0);x.isEmptyObject(c)&&(delete m.handle,x._removeData(e,"events"))}},trigger:function(n,r,i,o){var s,l,u,c,p,f,d,h=[i||a],g=v.call(n,"type")?n.type:n,m=v.call(n,"namespace")?n.namespace.split("."):[];if(u=f=i=i||a,3!==i.nodeType&&8!==i.nodeType&&!nt.test(g+x.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("."),g=m.shift(),m.sort()),l=0>g.indexOf(":")&&"on"+g,n=n[x.expando]?n:new x.Event(g,"object"==typeof n&&n),n.isTrigger=o?2:3,n.namespace=m.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:x.makeArray(r,[n]),p=x.event.special[g]||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!x.isWindow(i)){for(c=p.delegateType||g,nt.test(c+g)||(u=u.parentNode);u;u=u.parentNode)h.push(u),f=u;f===(i.ownerDocument||a)&&h.push(f.defaultView||f.parentWindow||e)}d=0;while((u=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(x._data(u,"events")||{})[n.type]&&x._data(u,"handle"),s&&s.apply(u,r),s=l&&u[l],s&&x.acceptData(u)&&s.apply&&s.apply(u,r)===!1&&n.preventDefault();if(n.type=g,!o&&!n.isDefaultPrevented()&&(!p._default||p._default.apply(h.pop(),r)===!1)&&x.acceptData(i)&&l&&i[g]&&!x.isWindow(i)){f=i[l],f&&(i[l]=null),x.event.triggered=g;try{i[g]()}catch(y){}x.event.triggered=t,f&&(i[l]=f)}return n.result}},dispatch:function(e){e=x.event.fix(e);var n,r,i,o,a,s=[],l=g.call(arguments),u=(x._data(this,"events")||{})[e.type]||[],c=x.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=x.event.handlers.call(this,e,u),n=0;while((o=s[n++])&&!e.isPropagationStopped()){e.currentTarget=o.elem,a=0;while((i=o.handlers[a++])&&!e.isImmediatePropagationStopped())(!e.namespace_re||e.namespace_re.test(i.namespace))&&(e.handleObj=i,e.data=i.data,r=((x.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,l),r!==t&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],l=n.delegateCount,u=e.target;if(l&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(o=[],a=0;l>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?x(r,this).index(u)>=0:x.find(r,this,null,[u]).length),o[r]&&o.push(i);o.length&&s.push({elem:u,handlers:o})}return n.length>l&&s.push({elem:this,handlers:n.slice(l)}),s},fix:function(e){if(e[x.expando])return e;var t,n,r,i=e.type,o=e,s=this.fixHooks[i];s||(this.fixHooks[i]=s=tt.test(i)?this.mouseHooks:et.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new x.Event(o),t=r.length;while(t--)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||a),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,s=n.button,l=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerDocument||a,o=i.documentElement,r=i.body,e.pageX=n.clientX+(o&&o.scrollLeft||r&&r.scrollLeft||0)-(o&&o.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(o&&o.scrollTop||r&&r.scrollTop||0)-(o&&o.clientTop||r&&r.clientTop||0)),!e.relatedTarget&&l&&(e.relatedTarget=l===e.target?n.toElement:l),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==at()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===at()&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},click:{trigger:function(){return x.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t},_default:function(e){return x.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=x.extend(new x.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?x.event.trigger(i,null,t):x.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},x.removeEvent=a.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(typeof e[r]===i&&(e[r]=null),e.detachEvent(r,n))},x.Event=function(e,n){return this instanceof x.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?it:ot):this.type=e,n&&x.extend(this,n),this.timeStamp=e&&e.timeStamp||x.now(),this[x.expando]=!0,t):new x.Event(e,n)},x.Event.prototype={isDefaultPrevented:ot,isPropagationStopped:ot,isImmediatePropagationStopped:ot,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=it,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=it,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=it,this.stopPropagation()}},x.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){x.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(!i||i!==r&&!x.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),x.support.submitBubbles||(x.event.special.submit={setup:function(){return x.nodeName(this,"form")?!1:(x.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=x.nodeName(n,"input")||x.nodeName(n,"button")?n.form:t;r&&!x._data(r,"submitBubbles")&&(x.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),x._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&x.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return x.nodeName(this,"form")?!1:(x.event.remove(this,"._submit"),t)}}),x.support.changeBubbles||(x.event.special.change={setup:function(){return Z.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(x.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),x.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),x.event.simulate("change",this,e,!0)})),!1):(x.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.test(t.nodeName)&&!x._data(t,"changeBubbles")&&(x.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||x.event.simulate("change",this.parentNode,e,!0)}),x._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return x.event.remove(this,"._change"),!Z.test(this.nodeName)}}),x.support.focusinBubbles||x.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){x.event.simulate(t,e.target,x.event.fix(e),!0)};x.event.special[t]={setup:function(){0===n++&&a.addEventListener(e,r,!0)},teardown:function(){0===--n&&a.removeEventListener(e,r,!0)}}}),x.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(a in e)this.on(a,n,r,e[a],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=ot;else if(!i)return this;return 1===o&&(s=i,i=function(e){return x().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=x.guid++)),this.each(function(){x.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,x(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=ot),this.each(function(){x.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){x.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?x.event.trigger(e,n,r,!0):t}});var st=/^.[^:#\[\.,]*$/,lt=/^(?:parents|prev(?:Until|All))/,ut=x.expr.match.needsContext,ct={children:!0,contents:!0,next:!0,prev:!0};x.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(x(e).filter(function(){for(t=0;i>t;t++)if(x.contains(r[t],this))return!0}));for(t=0;i>t;t++)x.find(e,r[t],n);return n=this.pushStack(i>1?x.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t,n=x(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(x.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e||[],!0))},filter:function(e){return this.pushStack(ft(this,e||[],!1))},is:function(e){return!!ft(this,"string"==typeof e&&ut.test(e)?x(e):e||[],!1).length},closest:function(e,t){var n,r=0,i=this.length,o=[],a=ut.test(e)||"string"!=typeof e?x(e,t||this.context):0;for(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(a?a.index(n)>-1:1===n.nodeType&&x.find.matchesSelector(n,e))){n=o.push(n);break}return this.pushStack(o.length>1?x.unique(o):o)},index:function(e){return e?"string"==typeof e?x.inArray(this[0],x(e)):x.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?x(e,t):x.makeArray(e&&e.nodeType?[e]:e),r=x.merge(this.get(),n);return this.pushStack(x.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function pt(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return x.dir(e,"parentNode")},parentsUntil:function(e,t,n){return x.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextSibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){return x.dir(e,"nextSibling")},prevAll:function(e){return x.dir(e,"previousSibling")},nextUntil:function(e,t,n){return x.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return x.dir(e,"previousSibling",n)},siblings:function(e){return x.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return x.sibling(e.firstChild)},contents:function(e){return x.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:x.merge([],e.childNodes)}},function(e,t){x.fn[e]=function(n,r){var i=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=x.filter(r,i)),this.length>1&&(ct[e]||(i=x.unique(i)),lt.test(e)&&(i=i.reverse())),this.pushStack(i)}}),x.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector(r,e)?[r]:[]:x.find.matches(e,x.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!x(o).is(r)))1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});function ft(e,t,n){if(x.isFunction(t))return x.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return x.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(st.test(t))return x.filter(t,e,n);t=x.filter(t,e)}return x.grep(e,function(e){return x.inArray(e,t)>=0!==n})}function dt(e){var t=ht.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}var ht="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",gt=/ jQuery\d+="(?:null|\d+)"/g,mt=RegExp("<(?:"+ht+")[\\s/>]","i"),yt=/^\s+/,vt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bt=/<([\w:]+)/,xt=/<tbody/i,wt=/<|&#?\w+;/,Tt=/<(?:script|style|link)/i,Ct=/^(?:checkbox|radio)$/i,Nt=/checked\s*(?:[^=]|=\s*.checked.)/i,kt=/^$|\/(?:java|ecma)script/i,Et=/^true\/(.*)/,St=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,At={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:x.support.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},jt=dt(a),Dt=jt.appendChild(a.createElement("div"));At.optgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,x.fn.extend({text:function(e){return x.access(this,function(e){return e===t?x.text(this):this.empty().append((this[0]&&this[0].ownerDocument||a).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r=e?x.filter(e,this):this,i=0;for(;null!=(n=r[i]);i++)t||1!==n.nodeType||x.cleanData(Ft(n)),n.parentNode&&(t&&x.contains(n.ownerDocument,n)&&_t(Ft(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){var e,t=0;for(;null!=(e=this[t]);t++){1===e.nodeType&&x.cleanData(Ft(e,!1));while(e.firstChild)e.removeChild(e.firstChild);e.options&&x.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return x.clone(this,e,t)})},html:function(e){return x.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(gt,""):t;if(!("string"!=typeof e||Tt.test(e)||!x.support.htmlSerialize&&mt.test(e)||!x.support.leadingWhitespace&&yt.test(e)||At[(bt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(vt,"<$1></$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(x.cleanData(Ft(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=x.map(this,function(e){return[e.nextSibling,e.parentNode]}),t=0;return this.domManip(arguments,function(n){var r=e[t++],i=e[t++];i&&(r&&r.parentNode!==i&&(r=this.nextSibling),x(this).remove(),i.insertBefore(n,r))},!0),t?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t,n){e=d.apply([],e);var r,i,o,a,s,l,u=0,c=this.length,p=this,f=c-1,h=e[0],g=x.isFunction(h);if(g||!(1>=c||"string"!=typeof h||x.support.checkClone)&&Nt.test(h))return this.each(function(r){var i=p.eq(r);g&&(e[0]=h.call(this,r,i.html())),i.domManip(e,t,n)});if(c&&(l=x.buildFragment(e,this[0].ownerDocument,!1,!n&&this),r=l.firstChild,1===l.childNodes.length&&(l=r),r)){for(a=x.map(Ft(l,"script"),Ht),o=a.length;c>u;u++)i=l,u!==f&&(i=x.clone(i,!0,!0),o&&x.merge(a,Ft(i,"script"))),t.call(this[u],i,u);if(o)for(s=a[a.length-1].ownerDocument,x.map(a,qt),u=0;o>u;u++)i=a[u],kt.test(i.type||"")&&!x._data(i,"globalEval")&&x.contains(s,i)&&(i.src?x._evalUrl(i.src):x.globalEval((i.text||i.textContent||i.innerHTML||"").replace(St,"")));l=r=null}return this}});function Lt(e,t){return x.nodeName(e,"table")&&x.nodeName(1===t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ht(e){return e.type=(null!==x.find.attr(e,"type"))+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function _t(e,t){var n,r=0;for(;null!=(n=e[r]);r++)x._data(n,"globalEval",!t||x._data(t[r],"globalEval"))}function Mt(e,t){if(1===t.nodeType&&x.hasData(e)){var n,r,i,o=x._data(e),a=x._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)x.event.add(t,n,s[n][r])}a.data&&(a.data=x.extend({},a.data))}}function Ot(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!x.support.noCloneEvent&&t[x.expando]){i=x._data(t);for(r in i.events)x.removeEvent(t,r,i.handle);t.removeAttribute(x.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),x.support.html5Clone&&e.innerHTML&&!x.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Ct.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){x.fn[e]=function(e){var n,r=0,i=[],o=x(e),a=o.length-1;for(;a>=r;r++)n=r===a?this:this.clone(!0),x(o[r])[t](n),h.apply(i,n.get());return this.pushStack(i)}});function Ft(e,n){var r,o,a=0,s=typeof e.getElementsByTagName!==i?e.getElementsByTagName(n||"*"):typeof e.querySelectorAll!==i?e.querySelectorAll(n||"*"):t;if(!s)for(s=[],r=e.childNodes||e;null!=(o=r[a]);a++)!n||x.nodeName(o,n)?s.push(o):x.merge(s,Ft(o,n));return n===t||n&&x.nodeName(e,n)?x.merge([e],s):s}function Bt(e){Ct.test(e.type)&&(e.defaultChecked=e.checked)}x.extend({clone:function(e,t,n){var r,i,o,a,s,l=x.contains(e.ownerDocument,e);if(x.support.html5Clone||x.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.outerHTML,Dt.removeChild(o=Dt.firstChild)),!(x.support.noCloneEvent&&x.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||x.isXMLDoc(e)))for(r=Ft(o),s=Ft(e),a=0;null!=(i=s[a]);++a)r[a]&&Ot(i,r[a]);if(t)if(n)for(s=s||Ft(e),r=r||Ft(o),a=0;null!=(i=s[a]);a++)Mt(i,r[a]);else Mt(e,o);return r=Ft(o,"script"),r.length>0&&_t(r,!l&&Ft(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o,a,s,l,u,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("object"===x.type(o))x.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChild(t.createElement("div")),l=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[l]||At._default,s.innerHTML=c[1]+o.replace(vt,"<$1></$2>")+c[2],i=c[0];while(i--)s=s.lastChild;if(!x.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.exec(o)[0])),!x.support.tbody){o="table"!==l||xt.test(o)?"<table>"!==c[1]||xt.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)x.nodeName(u=o.childNodes[i],"tbody")&&!u.childNodes.length&&o.removeChild(u)}x.merge(d,s.childNodes),s.textContent="";while(s.firstChild)s.removeChild(s.firstChild);s=f.lastChild}else d.push(t.createTextNode(o));s&&f.removeChild(s),x.support.appendChecked||x.grep(Ft(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===x.inArray(o,r))&&(a=x.contains(o.ownerDocument,o),s=Ft(f.appendChild(o),"script"),a&&_t(s),n)){i=0;while(o=s[i++])kt.test(o.type||"")&&n.push(o)}return s=null,f},cleanData:function(e,t){var n,r,o,a,s=0,l=x.expando,u=x.cache,c=x.support.deleteExpando,f=x.event.special;for(;null!=(n=e[s]);s++)if((t||x.acceptData(n))&&(o=n[l],a=o&&u[o])){if(a.events)for(r in a.events)f[r]?x.event.remove(n,r):x.removeEvent(n,r,a.handle); -u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(l):n[l]=null,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:function(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInner(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.each(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._data(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r){var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){nn(this)?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssProps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.minWidth,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidth=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;return null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.pixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Yt.test(i))return i;r=a&&(x.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||(a?"border":"content"),r,o)+"px"}function ln(e){var t=a,n=Gt[e];return n||(n=un(e,t),"none"!==n&&n||(Pt=(Pt||x("<iframe frameborder='0' width='0' height='0'/>").css("cssText","display:block !important")).appendTo(t.documentElement),t=(Pt[0].contentWindow||Pt[0].contentDocument).document,t.write("<!doctype html><html><body>"),t.close(),n=un(e,t),Pt.detach()),Gt[e]=n),n}function un(e,t){var n=x(t.createElement(e)).appendTo(t.body),r=x.css(n[0],"display");return n.remove(),r}x.each(["height","width"],function(e,n){x.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&Xt.test(x.css(e,"display"))?x.swap(e,Qt,function(){return sn(e,n,i)}):sn(e,n,i):t},set:function(e,t,r){var i=r&&Rt(e);return on(e,t,r?an(e,n,r,x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,i),i):0)}}}),x.support.opacity||(x.cssHooks.opacity={get:function(e,t){return It.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=x.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===x.trim(o.replace($t,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=$t.test(o)?o.replace($t,i):o+" "+i)}}),x(function(){x.support.reliableMarginRight||(x.cssHooks.marginRight={get:function(e,n){return n?x.swap(e,{display:"inline-block"},Wt,[e,"marginRight"]):t}}),!x.support.pixelPosition&&x.fn.position&&x.each(["top","left"],function(e,n){x.cssHooks[n]={get:function(e,r){return r?(r=Wt(e,n),Yt.test(r)?x(e).position()[n]+"px":r):t}}})}),x.expr&&x.expr.filters&&(x.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight||!x.support.reliableHiddenOffsets&&"none"===(e.style&&e.style.display||x.css(e,"display"))},x.expr.filters.visible=function(e){return!x.expr.filters.hidden(e)}),x.each({margin:"",padding:"",border:"Width"},function(e,t){x.cssHooks[e+t]={expand:function(n){var r=0,i={},o="string"==typeof n?n.split(" "):[n];for(;4>r;r++)i[e+Zt[r]+t]=o[r]||o[r-2]||o[0];return i}},Ut.test(e)||(x.cssHooks[e+t].set=on)});var cn=/%20/g,pn=/\[\]$/,fn=/\r?\n/g,dn=/^(?:submit|button|image|reset|file)$/i,hn=/^(?:input|select|textarea|keygen)/i;x.fn.extend({serialize:function(){return x.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=x.prop(this,"elements");return e?x.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!x(this).is(":disabled")&&hn.test(this.nodeName)&&!dn.test(e)&&(this.checked||!Ct.test(e))}).map(function(e,t){var n=x(this).val();return null==n?null:x.isArray(n)?x.map(n,function(e){return{name:t.name,value:e.replace(fn,"\r\n")}}):{name:t.name,value:n.replace(fn,"\r\n")}}).get()}}),x.param=function(e,n){var r,i=[],o=function(e,t){t=x.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=x.ajaxSettings&&x.ajaxSettings.traditional),x.isArray(e)||e.jquery&&!x.isPlainObject(e))x.each(e,function(){o(this.name,this.value)});else for(r in e)gn(r,e[r],n,o);return i.join("&").replace(cn,"+")};function gn(e,t,n,r){var i;if(x.isArray(t))x.each(t,function(t,i){n||pn.test(e)?r(e,i):gn(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==x.type(t))r(e,t);else for(i in t)gn(e+"["+i+"]",t[i],n,r)}x.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){x.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),x.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}});var mn,yn,vn=x.now(),bn=/\?/,xn=/#.*$/,wn=/([?&])_=[^&]*/,Tn=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Cn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Nn=/^(?:GET|HEAD)$/,kn=/^\/\//,En=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Sn=x.fn.load,An={},jn={},Dn="*/".concat("*");try{yn=o.href}catch(Ln){yn=a.createElement("a"),yn.href="",yn=yn.href}mn=En.exec(yn.toLowerCase())||[];function Hn(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(T)||[];if(x.isFunction(n))while(r=o[i++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function qn(e,n,r,i){var o={},a=e===jn;function s(l){var u;return o[l]=!0,x.each(e[l]||[],function(e,l){var c=l(n,r,i);return"string"!=typeof c||a||o[c]?a?!(u=c):t:(n.dataTypes.unshift(c),s(c),!1)}),u}return s(n.dataTypes[0])||!o["*"]&&s("*")}function _n(e,n){var r,i,o=x.ajaxSettings.flatOptions||{};for(i in n)n[i]!==t&&((o[i]?e:r||(r={}))[i]=n[i]);return r&&x.extend(!0,e,r),e}x.fn.load=function(e,n,r){if("string"!=typeof e&&Sn)return Sn.apply(this,arguments);var i,o,a,s=this,l=e.indexOf(" ");return l>=0&&(i=e.slice(l,e.length),e=e.slice(0,l)),x.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(a="POST"),s.length>0&&x.ajax({url:e,type:a,dataType:"html",data:n}).done(function(e){o=arguments,s.html(i?x("<div>").append(x.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.each(r,o||[e.responseText,t,e])}),this},x.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){x.fn[t]=function(e){return this.on(t,e)}}),x.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yn,type:"GET",isLocal:Cn.test(mn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Dn,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":x.parseJSON,"text xml":x.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?_n(_n(e,x.ajaxSettings),t):_n(x.ajaxSettings,e)},ajaxPrefilter:Hn(An),ajaxTransport:Hn(jn),ajax:function(e,n){"object"==typeof e&&(n=e,e=t),n=n||{};var r,i,o,a,s,l,u,c,p=x.ajaxSetup({},n),f=p.context||p,d=p.context&&(f.nodeType||f.jquery)?x(f):x.event,h=x.Deferred(),g=x.Callbacks("once memory"),m=p.statusCode||{},y={},v={},b=0,w="canceled",C={readyState:0,getResponseHeader:function(e){var t;if(2===b){if(!c){c={};while(t=Tn.exec(a))c[t[1].toLowerCase()]=t[2]}t=c[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===b?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return b||(e=v[n]=v[n]||e,y[e]=t),this},overrideMimeType:function(e){return b||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>b)for(t in e)m[t]=[m[t],e[t]];else C.always(e[C.status]);return this},abort:function(e){var t=e||w;return u&&u.abort(t),k(0,t),this}};if(h.promise(C).complete=g.add,C.success=C.done,C.error=C.fail,p.url=((e||p.url||yn)+"").replace(xn,"").replace(kn,mn[1]+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTypes=x.trim(p.dataType||"*").toLowerCase().match(T)||[""],null==p.crossDomain&&(r=En.exec(p.url.toLowerCase()),p.crossDomain=!(!r||r[1]===mn[1]&&r[2]===mn[2]&&(r[3]||("http:"===r[1]?"80":"443"))===(mn[3]||("http:"===mn[1]?"80":"443")))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=x.param(p.data,p.traditional)),qn(An,p,n,C),2===b)return C;l=p.global,l&&0===x.active++&&x.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Nn.test(p.type),o=p.url,p.hasContent||(p.data&&(o=p.url+=(bn.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=wn.test(o)?o.replace(wn,"$1_="+vn++):o+(bn.test(o)?"&":"?")+"_="+vn++)),p.ifModified&&(x.lastModified[o]&&C.setRequestHeader("If-Modified-Since",x.lastModified[o]),x.etag[o]&&C.setRequestHeader("If-None-Match",x.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&C.setRequestHeader("Content-Type",p.contentType),C.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Dn+"; q=0.01":""):p.accepts["*"]);for(i in p.headers)C.setRequestHeader(i,p.headers[i]);if(p.beforeSend&&(p.beforeSend.call(f,C,p)===!1||2===b))return C.abort();w="abort";for(i in{success:1,error:1,complete:1})C[i](p[i]);if(u=qn(jn,p,n,C)){C.readyState=1,l&&d.trigger("ajaxSend",[C,p]),p.async&&p.timeout>0&&(s=setTimeout(function(){C.abort("timeout")},p.timeout));try{b=1,u.send(y,k)}catch(N){if(!(2>b))throw N;k(-1,N)}}else k(-1,"No Transport");function k(e,n,r,i){var c,y,v,w,T,N=n;2!==b&&(b=2,s&&clearTimeout(s),u=t,a=i||"",C.readyState=e>0?4:0,c=e>=200&&300>e||304===e,r&&(w=Mn(p,C,r)),w=On(p,w,C,c),c?(p.ifModified&&(T=C.getResponseHeader("Last-Modified"),T&&(x.lastModified[o]=T),T=C.getResponseHeader("etag"),T&&(x.etag[o]=T)),204===e||"HEAD"===p.type?N="nocontent":304===e?N="notmodified":(N=w.state,y=w.data,v=w.error,c=!v)):(v=N,(e||!N)&&(N="error",0>e&&(e=0))),C.status=e,C.statusText=(n||N)+"",c?h.resolveWith(f,[y,N,C]):h.rejectWith(f,[C,N,v]),C.statusCode(m),m=t,l&&d.trigger(c?"ajaxSuccess":"ajaxError",[C,p,c?y:v]),g.fireWith(f,[C,N]),l&&(d.trigger("ajaxComplete",[C,p]),--x.active||x.event.trigger("ajaxStop")))}return C},getJSON:function(e,t,n){return x.get(e,t,n,"json")},getScript:function(e,n){return x.get(e,t,n,"script")}}),x.each(["get","post"],function(e,n){x[n]=function(e,r,i,o){return x.isFunction(r)&&(o=o||i,i=r,r=t),x.ajax({url:e,type:n,dataType:o,data:r,success:i})}});function Mn(e,n,r){var i,o,a,s,l=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),o===t&&(o=e.mimeType||n.getResponseHeader("Content-Type"));if(o)for(s in l)if(l[s]&&l[s].test(o)){u.unshift(s);break}if(u[0]in r)a=u[0];else{for(s in r){if(!u[0]||e.converters[s+" "+u[0]]){a=s;break}i||(i=s)}a=a||i}return a?(a!==u[0]&&u.unshift(a),r[a]):t}function On(e,t,n,r){var i,o,a,s,l,u={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=c.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(a=u[l+" "+o]||u["* "+o],!a)for(i in u)if(s=i.split(" "),s[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){a===!0?a=u[i]:u[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+l+" to "+o}}}return{state:"success",data:t}}x.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return x.globalEval(e),e}}}),x.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),x.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=a.head||x("head")[0]||a.documentElement;return{send:function(t,i){n=a.createElement("script"),n.async=!0,e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,t){(t||!n.readyState||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=null,n.parentNode&&n.parentNode.removeChild(n),n=null,t||i(200,"success"))},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(t,!0)}}}});var Fn=[],Bn=/(=)\?(?=&|$)|\?\?/;x.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Fn.pop()||x.expando+"_"+vn++;return this[e]=!0,e}}),x.ajaxPrefilter("json jsonp",function(n,r,i){var o,a,s,l=n.jsonp!==!1&&(Bn.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Bn.test(n.data)&&"data");return l||"jsonp"===n.dataTypes[0]?(o=n.jsonpCallback=x.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,l?n[l]=n[l].replace(Bn,"$1"+o):n.jsonp!==!1&&(n.url+=(bn.test(n.url)?"&":"?")+n.jsonp+"="+o),n.converters["script json"]=function(){return s||x.error(o+" was not called"),s[0]},n.dataTypes[0]="json",a=e[o],e[o]=function(){s=arguments},i.always(function(){e[o]=a,n[o]&&(n.jsonpCallback=r.jsonpCallback,Fn.push(o)),s&&x.isFunction(a)&&a(s[0]),s=a=t}),"script"):t});var Pn,Rn,Wn=0,$n=e.ActiveXObject&&function(){var e;for(e in Pn)Pn[e](t,!0)};function In(){try{return new e.XMLHttpRequest}catch(t){}}function zn(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}x.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&In()||zn()}:In,Rn=x.ajaxSettings.xhr(),x.support.cors=!!Rn&&"withCredentials"in Rn,Rn=x.support.ajax=!!Rn,Rn&&x.ajaxTransport(function(n){if(!n.crossDomain||x.support.cors){var r;return{send:function(i,o){var a,s,l=n.xhr();if(n.username?l.open(n.type,n.url,n.async,n.username,n.password):l.open(n.type,n.url,n.async),n.xhrFields)for(s in n.xhrFields)l[s]=n.xhrFields[s];n.mimeType&&l.overrideMimeType&&l.overrideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");try{for(s in i)l.setRequestHeader(s,i[s])}catch(u){}l.send(n.hasContent&&n.data||null),r=function(e,i){var s,u,c,p;try{if(r&&(i||4===l.readyState))if(r=t,a&&(l.onreadystatechange=x.noop,$n&&delete Pn[a]),i)4!==l.readyState&&l.abort();else{p={},s=l.status,u=l.getAllResponseHeaders(),"string"==typeof l.responseText&&(p.text=l.responseText);try{c=l.statusText}catch(f){c=""}s||!n.isLocal||n.crossDomain?1223===s&&(s=204):s=p.text?200:404}}catch(d){i||o(-1,d)}p&&o(s,c,p,u)},n.async?4===l.readyState?setTimeout(r):(a=++Wn,$n&&(Pn||(Pn={},x(e).unload($n)),Pn[a]=r),l.onreadystatechange=r):r()},abort:function(){r&&r(t,!0)}}}});var Xn,Un,Vn=/^(?:toggle|show|hide)$/,Yn=RegExp("^(?:([+-])=|)("+w+")([a-z%]*)$","i"),Jn=/queueHooks$/,Gn=[nr],Qn={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),i=Yn.exec(t),o=i&&i[3]||(x.cssNumber[e]?"":"px"),a=(x.cssNumber[e]||"px"!==o&&+r)&&Yn.exec(x.css(n.elem,e)),s=1,l=20;if(a&&a[3]!==o){o=o||a[3],i=i||[],a=+r||1;do s=s||".5",a/=s,x.style(n.elem,e,a+o);while(s!==(s=n.cur()/r)&&1!==s&&--l)}return i&&(a=n.start=+a||+r||0,n.unit=o,n.end=i[1]?a+(i[1]+1)*i[2]:+i[2]),n}]};function Kn(){return setTimeout(function(){Xn=t}),Xn=x.now()}function Zn(e,t,n){var r,i=(Qn[t]||[]).concat(Qn["*"]),o=0,a=i.length;for(;a>o;o++)if(r=i[o].call(n,t,e))return r}function er(e,t,n){var r,i,o=0,a=Gn.length,s=x.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;var t=Xn||Kn(),n=Math.max(0,u.startTime+u.duration-t),r=n/u.duration||0,o=1-r,a=0,l=u.tweens.length;for(;l>a;a++)u.tweens[a].run(o);return s.notifyWith(e,[u,o,n]),1>o&&l?n:(s.resolveWith(e,[u]),!1)},u=s.promise({elem:e,props:x.extend({},t),opts:x.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Xn||Kn(),duration:n.duration,tweens:[],createTween:function(t,n){var r=x.Tween(e,u.opts,t,n,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(r),r},stop:function(t){var n=0,r=t?u.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)u.tweens[n].run(1);return t?s.resolveWith(e,[u,t]):s.rejectWith(e,[u,t]),this}}),c=u.props;for(tr(c,u.opts.specialEasing);a>o;o++)if(r=Gn[o].call(u,e,c,u.opts))return r;return x.map(c,Zn,u),x.isFunction(u.opts.start)&&u.opts.start.call(e,u),x.fx.timer(x.extend(l,{elem:e,anim:u,queue:u.opts.queue})),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always)}function tr(e,t){var n,r,i,o,a;for(n in e)if(r=x.camelCase(n),i=t[r],o=e[n],x.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=x.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}x.Animation=x.extend(er,{tweener:function(e,t){x.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;i>r;r++)n=e[r],Qn[n]=Qn[n]||[],Qn[n].unshift(t)},prefilter:function(e,t){t?Gn.unshift(e):Gn.push(e)}});function nr(e,t,n){var r,i,o,a,s,l,u=this,c={},p=e.style,f=e.nodeType&&nn(e),d=x._data(e,"fxshow");n.queue||(s=x._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,l=s.empty.fire,s.empty.fire=function(){s.unqueued||l()}),s.unqueued++,u.always(function(){u.always(function(){s.unqueued--,x.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],"inline"===x.css(e,"display")&&"none"===x.css(e,"float")&&(x.support.inlineBlockNeedsLayout&&"inline"!==ln(e.nodeName)?p.zoom=1:p.display="inline-block")),n.overflow&&(p.overflow="hidden",x.support.shrinkWrapBlocks||u.always(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]}));for(r in t)if(i=t[r],Vn.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(f?"hide":"show"))continue;c[r]=d&&d[r]||x.style(e,r)}if(!x.isEmptyObject(c)){d?"hidden"in d&&(f=d.hidden):d=x._data(e,"fxshow",{}),o&&(d.hidden=!f),f?x(e).show():u.done(function(){x(e).hide()}),u.done(function(){var t;x._removeData(e,"fxshow");for(t in c)x.style(e,t,c[t])});for(r in c)a=Zn(f?d[r]:0,r,u),r in d||(d[r]=a.start,f&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}}function rr(e,t,n,r,i){return new rr.prototype.init(e,t,n,r,i)}x.Tween=rr,rr.prototype={constructor:rr,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(x.cssNumber[n]?"":"px")},cur:function(){var e=rr.propHooks[this.prop];return e&&e.get?e.get(this):rr.propHooks._default.get(this)},run:function(e){var t,n=rr.propHooks[this.prop];return this.pos=t=this.options.duration?x.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):rr.propHooks._default.set(this),this}},rr.prototype.init.prototype=rr.prototype,rr.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=x.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){x.fx.step[e.prop]?x.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[x.cssProps[e.prop]]||x.cssHooks[e.prop])?x.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},rr.propHooks.scrollTop=rr.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},x.each(["toggle","show","hide"],function(e,t){var n=x.fn[t];x.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ir(t,!0),e,r,i)}}),x.fn.extend({fadeTo:function(e,t,n,r){return this.filter(nn).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=x.isEmptyObject(e),o=x.speed(t,n,r),a=function(){var t=er(this,x.extend({},e),o);(i||x._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=null!=e&&e+"queueHooks",o=x.timers,a=x._data(this);if(n)a[n]&&a[n].stop&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&Jn.test(n)&&i(a[n]);for(n=o.length;n--;)o[n].elem!==this||null!=e&&o[n].queue!==e||(o[n].anim.stop(r),t=!1,o.splice(n,1));(t||!r)&&x.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=x._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=x.timers,a=r?r.length:0;for(n.finish=!0,x.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}});function ir(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=Zt[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}x.each({slideDown:ir("show"),slideUp:ir("hide"),slideToggle:ir("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){x.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),x.speed=function(e,t,n){var r=e&&"object"==typeof e?x.extend({},e):{complete:n||!n&&t||x.isFunction(e)&&e,duration:e,easing:n&&t||t&&!x.isFunction(t)&&t};return r.duration=x.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in x.fx.speeds?x.fx.speeds[r.duration]:x.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){x.isFunction(r.old)&&r.old.call(this),r.queue&&x.dequeue(this,r.queue)},r},x.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},x.timers=[],x.fx=rr.prototype.init,x.fx.tick=function(){var e,n=x.timers,r=0;for(Xn=x.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||x.fx.stop(),Xn=t},x.fx.timer=function(e){e()&&x.timers.push(e)&&x.fx.start()},x.fx.interval=13,x.fx.start=function(){Un||(Un=setInterval(x.fx.tick,x.fx.interval))},x.fx.stop=function(){clearInterval(Un),Un=null},x.fx.speeds={slow:600,fast:200,_default:400},x.fx.step={},x.expr&&x.expr.filters&&(x.expr.filters.animated=function(e){return x.grep(x.timers,function(t){return e===t.elem}).length}),x.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){x.offset.setOffset(this,e,t)});var n,r,o={top:0,left:0},a=this[0],s=a&&a.ownerDocument;if(s)return n=s.documentElement,x.contains(n,a)?(typeof a.getBoundingClientRect!==i&&(o=a.getBoundingClientRect()),r=or(s),{top:o.top+(r.pageYOffset||n.scrollTop)-(n.clientTop||0),left:o.left+(r.pageXOffset||n.scrollLeft)-(n.clientLeft||0)}):o},x.offset={setOffset:function(e,t,n){var r=x.css(e,"position");"static"===r&&(e.style.position="relative");var i=x(e),o=i.offset(),a=x.css(e,"top"),s=x.css(e,"left"),l=("absolute"===r||"fixed"===r)&&x.inArray("auto",[a,s])>-1,u={},c={},p,f;l?(c=i.position(),p=c.top,f=c.left):(p=parseFloat(a)||0,f=parseFloat(s)||0),x.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(u.top=t.top-o.top+p),null!=t.left&&(u.left=t.left-o.left+f),"using"in t?t.using.call(e,u):i.css(u)}},x.fn.extend({position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===x.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),x.nodeName(e[0],"html")||(n=e.offset()),n.top+=x.css(e[0],"borderTopWidth",!0),n.left+=x.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-x.css(r,"marginTop",!0),left:t.left-n.left-x.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||s;while(e&&!x.nodeName(e,"html")&&"static"===x.css(e,"position"))e=e.offsetParent;return e||s})}}),x.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);x.fn[e]=function(i){return x.access(this,function(e,i,o){var a=or(e);return o===t?a?n in a?a[n]:a.document.documentElement[i]:e[i]:(a?a.scrollTo(r?x(a).scrollLeft():o,r?o:x(a).scrollTop()):e[i]=o,t)},e,i,arguments.length,null)}});function or(e){return x.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}x.each({Height:"height",Width:"width"},function(e,n){x.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){x.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i===!0||o===!0?"margin":"border");return x.access(this,function(n,r,i){var o;return x.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(o=n.documentElement,Math.max(n.body["scroll"+e],o["scroll"+e],n.body["offset"+e],o["offset"+e],o["client"+e])):i===t?x.css(n,r,s):x.style(n,r,i,s)},n,a?i:t,a,null)}})}),x.fn.size=function(){return this.length},x.fn.andSelf=x.fn.addBack,"object"==typeof module&&module&&"object"==typeof module.exports?module.exports=x:(e.jQuery=e.$=x,"function"==typeof define&&define.amd&&define("jquery",[],function(){return x}))})(window); diff --git a/public/app/bower_components/html5-boilerplate/js/vendor/modernizr-2.6.2.min.js b/public/app/bower_components/html5-boilerplate/js/vendor/modernizr-2.6.2.min.js deleted file mode 100644 index f65d4797..00000000 --- a/public/app/bower_components/html5-boilerplate/js/vendor/modernizr-2.6.2.min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* Modernizr 2.6.2 (Custom Build) | MIT & BSD - * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load - */ -;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.6.2",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["­",'<style id="s',h,'">',a,"</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b).matches;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function k(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function l(){var a=r.elements;return typeof a=="string"?a.split(" "):a}function m(a){var b=i[a[g]];return b||(b={},h++,a[g]=h,i[h]=b),b}function n(a,c,f){c||(c=b);if(j)return c.createElement(a);f||(f=m(c));var g;return f.cache[a]?g=f.cache[a].cloneNode():e.test(a)?g=(f.cache[a]=f.createElem(a)).cloneNode():g=f.createElem(a),g.canHaveChildren&&!d.test(a)?f.frag.appendChild(g):g}function o(a,c){a||(a=b);if(j)return a.createDocumentFragment();c=c||m(a);var d=c.frag.cloneNode(),e=0,f=l(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function p(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return r.shivMethods?n(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+l().join().replace(/\w+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(r,b.frag)}function q(a){a||(a=b);var c=m(a);return r.shivCSS&&!f&&!c.hasCSS&&(c.hasCSS=!!k(a,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),j||p(a,c),a}var c=a.html5||{},d=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,e=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,f,g="_html5shiv",h=0,i={},j;(function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",f="hidden"in a,j=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){f=!0,j=!0}})();var r={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,supportsUnknownElements:j,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:q,createElement:n,createDocumentFragment:o};a.html5=r,q(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(y[i.url]?i.noexec=!0:y[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),y[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(w(a))for(i=0;i<a.length;i++)j=a[i],e(j)?g(j,0,l,0):w(j)?B(j):Object(j)===j&&h(j,l);else Object(a)===a&&h(a,l)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,null==b.readyState&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))}; diff --git a/public/app/bower_components/html5-boilerplate/package.json b/public/app/bower_components/html5-boilerplate/package.json new file mode 100644 index 00000000..2d9ddb9b --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/package.json @@ -0,0 +1,43 @@ +{ + "devDependencies": { + "apache-server-configs": "2.11.0", + "archiver": "^0.13.0", + "del": "^1.1.0", + "glob": "^4.2.1", + "gulp": "^3.8.10", + "gulp-header": "^1.2.2", + "gulp-jscs": "^1.3.1", + "gulp-jshint": "^1.9.0", + "gulp-load-plugins": "^0.8.0", + "gulp-rename": "^1.2.0", + "gulp-replace": "^0.5.0", + "jquery": "1.11.2", + "jshint-stylish": "^1.0.0", + "mocha": "^2.0.1", + "normalize.css": "3.0.2", + "run-sequence": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + }, + "h5bp-configs": { + "directories": { + "archive": "archive", + "dist": "dist", + "src": "src", + "test": "test" + } + }, + "homepage": "http://h5bp.com/", + "license": { + "type": "MIT", + "url": "https://github.com/h5bp/html5-boilerplate/blob/master/LICENSE.md" + }, + "name": "html5-boilerplate", + "private": true, + "scripts": { + "build": "gulp build", + "test": "gulp archive && mocha --reporter spec --timeout 5000" + }, + "version": "5.0.0" +} diff --git a/public/app/bower_components/html5-boilerplate/robots.txt b/public/app/bower_components/html5-boilerplate/robots.txt deleted file mode 100644 index ee2cc216..00000000 --- a/public/app/bower_components/html5-boilerplate/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# robotstxt.org/ - -User-agent: * diff --git a/public/app/bower_components/html5-boilerplate/src/.editorconfig b/public/app/bower_components/html5-boilerplate/src/.editorconfig new file mode 100644 index 00000000..1b44e422 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/.editorconfig @@ -0,0 +1,13 @@ +# editorconfig.org + +root = true + +[*] +charset = utf-8 +indent_size = 4 +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false diff --git a/public/app/bower_components/html5-boilerplate/src/.gitattributes b/public/app/bower_components/html5-boilerplate/src/.gitattributes new file mode 100644 index 00000000..176a458f --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/.gitattributes @@ -0,0 +1 @@ +* text=auto diff --git a/public/app/bower_components/html5-boilerplate/src/.gitignore b/public/app/bower_components/html5-boilerplate/src/.gitignore new file mode 100644 index 00000000..16b2d7d0 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/.gitignore @@ -0,0 +1,2 @@ +# Include your project-specific ignores in this file +# Read about how to use .gitignore: https://help.github.com/articles/ignoring-files diff --git a/public/app/bower_components/html5-boilerplate/src/404.html b/public/app/bower_components/html5-boilerplate/src/404.html new file mode 100644 index 00000000..8d7925a8 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/404.html @@ -0,0 +1,60 @@ +<!doctype html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>Page Not Found + + + + +

Page Not Found

+

Sorry, but the page you were trying to view does not exist.

+ + + diff --git a/public/app/bower_components/html5-boilerplate/src/apple-touch-icon.png b/public/app/bower_components/html5-boilerplate/src/apple-touch-icon.png new file mode 100644 index 00000000..600738f2 Binary files /dev/null and b/public/app/bower_components/html5-boilerplate/src/apple-touch-icon.png differ diff --git a/public/app/bower_components/html5-boilerplate/src/browserconfig.xml b/public/app/bower_components/html5-boilerplate/src/browserconfig.xml new file mode 100644 index 00000000..46de5d3c --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/browserconfig.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/public/app/bower_components/html5-boilerplate/src/crossdomain.xml b/public/app/bower_components/html5-boilerplate/src/crossdomain.xml new file mode 100644 index 00000000..818b8225 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/crossdomain.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + diff --git a/public/app/bower_components/html5-boilerplate/css/main.css b/public/app/bower_components/html5-boilerplate/src/css/main.css similarity index 76% rename from public/app/bower_components/html5-boilerplate/css/main.css rename to public/app/bower_components/html5-boilerplate/src/css/main.css index 294e0199..d4d48d54 100644 --- a/public/app/bower_components/html5-boilerplate/css/main.css +++ b/public/app/bower_components/html5-boilerplate/src/css/main.css @@ -1,5 +1,3 @@ -/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */ - /* * What follows is the result of much research on cross-browser styling. * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal, @@ -10,21 +8,16 @@ Base styles: opinionated defaults ========================================================================== */ -html, -button, -input, -select, -textarea { - color: #222; -} - html { + color: #222; font-size: 1em; line-height: 1.4; } /* - * Remove text-shadow in selection highlight: h5bp.com/i + * Remove text-shadow in selection highlight: + * https://twitter.com/miketaylr/status/12228805301 + * * These selection rule sets have to be separate. * Customize the background color to match your design. */ @@ -53,13 +46,16 @@ hr { } /* - * Remove the gap between images, videos, audio and canvas and the bottom of - * their containers: h5bp.com/i/440 + * Remove the gap between audio, canvas, iframes, + * images, videos and the bottom of their containers: + * https://github.com/h5bp/html5-boilerplate/issues/440 */ audio, canvas, +iframe, img, +svg, video { vertical-align: middle; } @@ -83,10 +79,10 @@ textarea { } /* ========================================================================== - Browse Happy prompt + Browser Upgrade Prompt ========================================================================== */ -.browsehappy { +.browserupgrade { margin: 0.2em 0; background: #ccc; color: #000; @@ -118,26 +114,8 @@ textarea { ========================================================================== */ /* - * Image replacement - */ - -.ir { - background-color: transparent; - border: 0; - overflow: hidden; - /* IE 6/7 fallback */ - *text-indent: -9999px; -} - -.ir:before { - content: ""; - display: block; - width: 0; - height: 150%; -} - -/* - * Hide from both screenreaders and browsers: h5bp.com/u + * Hide visually and from screen readers: + * http://juicystudio.com/article/screen-readers-display-none.php */ .hidden { @@ -146,7 +124,8 @@ textarea { } /* - * Hide only visually, but have it available for screenreaders: h5bp.com/v + * Hide only visually, but have it available for screen readers: + * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility */ .visuallyhidden { @@ -161,8 +140,9 @@ textarea { } /* - * Extends the .visuallyhidden class to allow the element to be focusable - * when navigated to via the keyboard: h5bp.com/p + * Extends the .visuallyhidden class to allow the element + * to be focusable when navigated to via the keyboard: + * https://www.drupal.org/node/897638 */ .visuallyhidden.focusable:active, @@ -176,7 +156,7 @@ textarea { } /* - * Hide visually and from screenreaders, but maintain layout + * Hide visually and from screen readers, but maintain layout */ .invisible { @@ -205,15 +185,6 @@ textarea { clear: both; } -/* - * For IE 6/7 only - * Include this rule to trigger hasLayout and contain floats. - */ - -.clearfix { - *zoom: 1; -} - /* ========================================================================== EXAMPLE Media Queries for Responsive Design. These examples override the primary ('mobile first') styles. @@ -233,13 +204,17 @@ textarea { /* ========================================================================== Print styles. - Inlined to avoid required HTTP connection: h5bp.com/r + Inlined to avoid the additional HTTP request: + http://www.phpied.com/delay-loading-your-print-css/ ========================================================================== */ @media print { - * { + *, + *:before, + *:after { background: transparent !important; - color: #000 !important; /* Black prints faster: h5bp.com/s */ + color: #000 !important; /* Black prints faster: + http://www.sanbeiji.com/archives/953 */ box-shadow: none !important; text-shadow: none !important; } @@ -258,12 +233,12 @@ textarea { } /* - * Don't show links for images, or javascript/internal links + * Don't show links that are fragment identifiers, + * or use the `javascript:` pseudo protocol */ - .ir a:after, - a[href^="javascript:"]:after, - a[href^="#"]:after { + a[href^="#"]:after, + a[href^="javascript:"]:after { content: ""; } @@ -273,8 +248,13 @@ textarea { page-break-inside: avoid; } + /* + * Printing Tables: + * http://css-discuss.incutio.com/wiki/Printing_Tables + */ + thead { - display: table-header-group; /* h5bp.com/t */ + display: table-header-group; } tr, @@ -286,10 +266,6 @@ textarea { max-width: 100% !important; } - @page { - margin: 0.5cm; - } - p, h2, h3 { diff --git a/public/app/bower_components/html5-boilerplate/src/doc/TOC.md b/public/app/bower_components/html5-boilerplate/src/doc/TOC.md new file mode 100644 index 00000000..199c6b07 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/TOC.md @@ -0,0 +1,29 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) + +## Getting started + +* [Usage](usage.md) — Overview of the project contents. +* [FAQ](faq.md) — Frequently asked questions along with their answers. + +## HTML5 Boilerplate core + +* [HTML](html.md) — Guide to the default HTML. +* [CSS](css.md) — Guide to the default CSS. +* [JavaScript](js.md) — Guide to the default JavaScript. +* [Everything else](misc.md). + +## Development + +* [Extending and customizing HTML5 Boilerplate](extend.md) — Going further + with the boilerplate. + +## Related projects + +The [H5BP organization](https://github.com/h5bp) maintains several projects +that complement HTML5 Boilerplate, projects that can help you improve different +aspects of your website/web app (e.g.: the performance, security, etc.). + +* [Server Configs](https://github.com/h5bp/server-configs) — Fast & smart + configurations for web servers, like Apache and Nginx +* [Ant Build Script](https://github.com/h5bp/ant-build-script) — Apache Ant + based build script. diff --git a/public/app/bower_components/html5-boilerplate/src/doc/css.md b/public/app/bower_components/html5-boilerplate/src/doc/css.md new file mode 100644 index 00000000..59f9cabb --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/css.md @@ -0,0 +1,162 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The CSS + +HTML5 Boilerplate's CSS includes: + +* [Normalize.css](#normalizecss) +* [Useful defaults](#useful-defaults) +* [Common helpers](#common-helpers) +* [Placeholder media queries](#media-queries) +* [Print styles](#print-styles) + +This starting CSS does not rely on the presence of +[conditional class names](http://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/), +[conditional style sheets](http://css-tricks.com/how-to-create-an-ie-only-stylesheet/), +or [Modernizr](http://modernizr.com/), and it is ready to use no matter what +your development preferences happen to be. + + +## Normalize.css + +In order to make browsers render all elements more consistently and in line +with modern standards, we include +[Normalize.css](https://necolas.github.io/normalize.css/) — a modern, HTML5-ready +alternative to CSS resets. + +As opposed to CSS resets, Normalize.css: + +* targets only the styles that need normalizing +* preserves useful browser defaults rather than erasing them +* corrects bugs and common browser inconsistencies +* improves usability with subtle improvements +* doesn't clutter the debugging tools +* has better documentation + +For more information about Normalize.css, please refer to its [project +page](https://necolas.github.com/normalize.css/), as well as this +[blog post](http://nicolasgallagher.com/about-normalize-css/). + + +## Useful defaults + +Several base styles are included that build upon `Normalize.css`. These +styles: + +* provide basic typography settings that improve text readability +* protect against unwanted `text-shadow` during text highlighting +* tweak the default alignment of some elements (e.g.: `img`, `video`, + `fieldset`, `textarea`) +* style the prompt that is displayed to users using an outdated browser + +You are free and even encouraged to modify or add to these base styles as your +project requires. + + +## Common helpers + +Along with the base styles, we also provide some commonly used helper classes. + +#### `.hidden` + +The `hidden` class can be added to any element that you want to hide visually +and from screen readers. It could be an element that will be populated and +displayed later, or an element you will hide with JavaScript. + +#### `.visuallyhidden` + +The `visuallyhidden` class can be added to any element that you want to hide +visually, while still have its content accessible to screen readers. + +See also: + +* [CSS in Action: Invisible Content Just for Screen Reader + Users](http://www.webaim.org/techniques/css/invisiblecontent/) +* [Hiding content for + accessibility](http://snook.ca/archives/html_and_css/hiding-content-for-accessibility) +* [HTML5 Boilerplate - Issue #194](https://github.com/h5bp/html5-boilerplate/issues/194/). + +#### `.invisible` + +The `invisible` class can be added to any element that you want to hide +visually and from screen readers, but without affecting the layout. + +As opposed to the `hidden` class that effectively removes the element from the +layout, the `invisible` class will simply make the element invisible while +keeping it in the flow and not affecting the positioning of the surrounding +content. + +__N.B.__ Try to stay away from, and don't use the classes specified above for +[keyword stuffing](https://en.wikipedia.org/wiki/Keyword_stuffing) as you will +harm your site's ranking! + +#### `.clearfix` + +The `clearfix` class can be added to any element to ensure that it always fully +contains its floated children. + +Over the years there have been many variants of the clearfix hack, but currently, +we use the [micro clearfix](http://nicolasgallagher.com/micro-clearfix-hack/). + + +## Media Queries + +HTML5 Boilerplate makes it easy for you to get started with a +[_mobile first_](http://www.lukew.com/presos/preso.asp?26) and [_responsive web +design_](http://www.alistapart.com/articles/responsive-web-design/) approach to +development. But it's worth remembering that there are [no silver +bullets](http://www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/). + +We include placeholder media queries to help you build up your mobile styles for +wider viewports and high-resolution displays. It's recommended that you adapt +these media queries based on the content of your site rather than mirroring the +fixed dimensions of specific devices. + +If you do not want to take the _mobile first_ approach, you can simply edit or +remove these placeholder media queries. One possibility would be to work from +wide viewports down, and use `max-width` media queries instead (e.g.: +`@media only screen and (max-width: 480px)`). + +For more features that can help you in your mobile web development, take a look +into our [Mobile Boilerplate](https://github.com/h5bp/mobile-boilerplate). + + +## Print styles + +Lastly, we provide some useful print styles that will optimize the printing +process, as well as make the printed pages easier to read. + +At printing time, these styles will: + +* strip all background colors, change the font color to black, and remove the + `text-shadow` — done in order to [help save printer ink and speed up the + printing process](http://www.sanbeiji.com/archives/953) +* underline and expand links to include the URL — done in order to allow users + to know where to refer to
+ (exceptions to this are: the links that are + [fragment identifiers](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href), + or use the + [`javascript:` pseudo protocol](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void#JavaScript_URIs)) +* expand abbreviations to include the full description — done in order to allow + users to know what the abbreviations stands for +* provide instructions on how browsers should break the content into pages and + on [orphans/widows](https://en.wikipedia.org/wiki/Widows_and_orphans), namely, + we instruct + [supporting browsers](https://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28Cascading_Style_Sheets%29#Grammar_and_rules) + that they should: + + * ensure the table header (``) is [printed on each page spanned by the + table](http://css-discuss.incutio.com/wiki/Printing_Tables) + * prevent block quotations, preformatted text, images and table rows from + being split onto two different pages + * ensure that headings never appear on a different page than the text they + are associated with + * ensure that + [orphans and widows](https://en.wikipedia.org/wiki/Widows_and_orphans) do + [not appear on printed pages](http://css-tricks.com/almanac/properties/o/orphans/) + +The print styles are included along with the other `css` to [avoid the +additional HTTP request](http://www.phpied.com/delay-loading-your-print-css/). +Also, they should always be included last, so that the other styles can be +overwritten. diff --git a/public/app/bower_components/html5-boilerplate/src/doc/extend.md b/public/app/bower_components/html5-boilerplate/src/doc/extend.md new file mode 100644 index 00000000..1eeb55b3 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/extend.md @@ -0,0 +1,645 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Extend and customise HTML5 Boilerplate + +Here is some useful advice for how you can make your project with HTML5 +Boilerplate even better. We don't want to include it all by default, as +not everything fits with everyone's needs. + + +* [App Stores](#app-stores) +* [DNS prefetching](#dns-prefetching) +* [Google Universal Analytics](#google-universal-analytics) +* [Internet Explorer](#internet-explorer) +* [Miscellaneous](#miscellaneous) +* [News Feeds](#news-feeds) +* [Search](#search) +* [Social Networks](#social-networks) +* [URLs](#urls) +* [Web Apps](#web-apps) + + +## App Stores + +### Install a Chrome Web Store app + +Users can install a Chrome app directly from your website, as long as +the app and site have been associated via Google's Webmaster Tools. +Read more on [Chrome Web Store's Inline Installation +docs](https://developer.chrome.com/webstore/inline_installation). + +```html + +``` + +### Smart App Banners in iOS 6+ Safari + +Stop bothering everyone with gross modals advertising your entry in the +App Store. Include the following [meta tag](https://developer.apple.com/library/IOS/documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html#//apple_ref/doc/uid/TP40002051-CH6-SW2) +will unintrusively allow the user the option to download your iOS app, +or open it with some data about the user's current state on the website. + +```html + +``` + +## DNS prefetching + +In short, DNS Prefetching is a method of informing the browser of domain names +referenced on a site so that the client can resolve the DNS for those hosts, +cache them, and when it comes time to use them, have a faster turn around on +the request. + +### Implicit prefetches + +There is a lot of prefetching done for you automatically by the browser. When +the browser encounters an anchor in your html that does not share the same +domain name as the current location the browser requests, from the client OS, +the IP address for this new domain. The client first checks its cache and +then, lacking a cached copy, makes a request from a DNS server. These requests +happen in the background and are not meant to block the rendering of the +page. + +The goal of this is that when the foreign IP address is finally needed it will +already be in the client cache and will not block the loading of the foreign +content. Fewer requests result in faster page load times. The perception of this +is increased on a mobile platform where DNS latency can be greater. + +#### Disable implicit prefetching + +```html + +``` + +Even with X-DNS-Prefetch-Control meta tag (or http header) browsers will still +prefetch any explicit dns-prefetch links. + +**_WARNING:_** THIS MAY MAKE YOUR SITE SLOWER IF YOU RELY ON RESOURCES FROM +FOREIGN DOMAINS. + +### Explicit prefetches + +Typically the browser only scans the HTML for foreign domains. If you have +resources that are outside of your HTML (a javascript request to a remote +server or a CDN that hosts content that may not be present on every page of +your site, for example) then you can queue up a domain name to be prefetched. + +```html + + +``` + +You can use as many of these as you need, but it's best if they are all +immediately after the [Meta +Charset](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) +element (which should go right at the top of the `head`), so the browser can +act on them ASAP. + +#### Common Prefetch Links + +Amazon S3: + +```html + +``` + +Google APIs: + +```html + +``` + +Microsoft Ajax Content Delivery Network: + +```html + + +``` + +### Further reading about DNS prefetching + +* https://developer.mozilla.org/en-US/docs/Controlling_DNS_prefetching +* https://dev.chromium.org/developers/design-documents/dns-prefetching +* http://blogs.msdn.com/b/ie/archive/2011/03/17/internet-explorer-9-network-performance-improvements.aspx +* http://dayofjs.com/videos/22158462/web-browsers_alex-russel + + +## Google Universal Analytics + +### More tracking settings + +The [optimized Google Universal Analytics +snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics) +included with HTML5 Boilerplate includes something like this: + +```js +ga('create', 'UA-XXXXX-X', 'auto'); ga('send', 'pageview'); +``` + +To customize further, see Google's [Advanced +Setup](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced), +[Pageview](https://developers.google.com/analytics/devguides/collection/analyticsjs/pages), +and [Event](https://developers.google.com/analytics/devguides/collection/analyticsjs/events) Docs. + +### Anonymize IP addresses + +In some countries, no personal data may be transferred outside jurisdictions +that do not have similarly strict laws (i.e. from Germany to outside the EU). +Thus a webmaster using the Google Universal Analytics may have to ensure that +no personal (trackable) data is transferred to the US. You can do that with +[the `ga('set', 'anonymizeIp', true);` +parameter](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#anonymizeip) +before sending any events/pageviews. In use it looks like this: + +```js +ga('create', 'UA-XXXXX-X', 'auto'); +ga('set', 'anonymizeIp', true); +ga('send', 'pageview'); +``` + +### Track jQuery AJAX requests in Google Analytics + +An article by @JangoSteve explains how to [track jQuery AJAX requests in Google +Analytics](http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/). + +Add this to `plugins.js`: + +```js +/* + * Log all jQuery AJAX requests to Google Analytics + * See: http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/ + */ +if (typeof ga !== "undefined" && ga !== null) { + $(document).ajaxSend(function(event, xhr, settings){ + ga('send', 'pageview', settings.url); + }); +} +``` + +### Track JavaScript errors in Google Analytics + +Add this function after `ga` is defined: + +```js +(function(window){ + var undefined, + link = function (href) { + var a = window.document.createElement('a'); + a.href = href; + return a; + }; + window.onerror = function (message, file, line, column) { + var host = link(file).hostname; + ga('send', { + 'hitType': 'event', + 'eventCategory': (host == window.location.hostname || host == undefined || host == '' ? '' : 'external ') + 'error', + 'eventAction': message, + 'eventLabel': (file + ' LINE: ' + line + (column ? ' COLUMN: ' + column : '')).trim(), + 'nonInteraction': 1 + }); + }; +}(window)); +``` + +### Track page scroll + +Add this function after `ga` is defined: + +```js +$(function(){ + var isDuplicateScrollEvent, + scrollTimeStart = new Date, + $window = $(window), + $document = $(document), + scrollPercent; + + $window.scroll(function() { + scrollPercent = Math.round(100 * ($window.height() + $window.scrollTop())/$document.height()); + if (scrollPercent > 90 && !isDuplicateScrollEvent) { //page scrolled to 90% + isDuplicateScrollEvent = 1; + ga('send', 'event', 'scroll', + 'Window: ' + $window.height() + 'px; Document: ' + $document.height() + 'px; Time: ' + Math.round((new Date - scrollTimeStart )/1000,1) + 's' + ); + } + }); +}); +``` + +## Internet Explorer + +### Prompt users to switch to "Desktop Mode" in IE10 Metro + +IE10 does not support plugins, such as Flash, in Metro mode. If your site +requires plugins, you can let users know that via the X-UA-Compatible meta +element, which will prompt them to switch to Desktop Mode. + +```html + +``` + +Here's what it looks like alongside H5BP's default X-UA-Compatible values: + +```html + +``` + +You can find more information in [Microsoft's IEBlog post about prompting for +plugin use in IE10 Metro +Mode](http://blogs.msdn.com/b/ie/archive/2012/01/31/web-sites-and-a-plug-in-free-web.aspx). + +### IE Pinned Sites (IE9+) + +Enabling your application for pinning will allow IE9 users to add it to their +Windows Taskbar and Start Menu. This comes with a range of new tools that you +can easily configure with the elements below. See more [documentation on IE9 +Pinned Sites](http://msdn.microsoft.com/en-us/library/gg131029.aspx). + +### Name the Pinned Site for Windows + +Without this rule, Windows will use the page title as the name for your +application. + +```html + +``` + +### Give your Pinned Site a tooltip + +You know — a tooltip. A little textbox that appears when the user holds their +mouse over your Pinned Site's icon. + +```html + +``` + +### Set a default page for your Pinned Site + +If the site should go to a specific URL when it is pinned (such as the +homepage), enter it here. One idea is to send it to a special URL so you can +track the number of pinned users, like so: +`http://www.example.com/index.html?pinned=true` + +```html + +``` + +### Recolor IE's controls manually for a Pinned Site + +IE9+ will automatically use the overall color of your Pinned Site's favicon to +shade its browser buttons. UNLESS you give it another color here. Only use +named colors (`red`) or hex colors (`#ff0000`). + +```html + +``` + +### Manually set the window size of a Pinned Site + +If the site should open at a certain window size once pinned, you can specify +the dimensions here. It only supports static pixel dimensions. 800x600 +minimum. + +```html + +``` + +### Jump List "Tasks" for Pinned Sites + +Add Jump List Tasks that will appear when the Pinned Site's icon gets a +right-click. Each Task goes to the specified URL, and gets its own mini icon +(essentially a favicon, a 16x16 .ICO). You can add as many of these as you +need. + +```html + + +``` + +### (Windows 8) High quality visuals for Pinned Sites + +Windows 8 adds the ability for you to provide a PNG tile image and specify the +tile's background color. [Full details on the IE +blog](http://blogs.msdn.com/b/ie/archive/2012/06/08/high-quality-visuals-for-pinned-sites-in-windows-8.aspx). + +* Create a 144x144 image of your site icon, filling all of the canvas, and + using a transparent background. +* Save this image as a 32-bit PNG and optimize it without reducing + colour-depth. It can be named whatever you want (e.g. `metro-tile.png`). +* To reference the tile and its color, add the HTML `meta` elements described + in the IE Blog post. + +### (Windows 8) Badges for Pinned Sites + +IE10 will poll an XML document for badge information to display on your app's +tile in the Start screen. The user will be able to receive these badge updates +even when your app isn't actively running. The badge's value can be a number, +or one of a predefined list of glyphs. + +* [Tutorial on IEBlog with link to badge XML schema](http://blogs.msdn.com/b/ie/archive/2012/04/03/pinned-sites-in-windows-8.aspx) +* [Available badge values](http://msdn.microsoft.com/en-us/library/ie/br212849.aspx) + +```html + +``` + +### Disable link highlighting upon tap in IE10 + +Similar to [-webkit-tap-highlight-color](http://davidwalsh.name/mobile-highlight-color) +in iOS Safari. Unlike that CSS property, this is an HTML meta element, and its +value is boolean rather than a color. It's all or nothing. + +```html + +``` + +You can read about this useful element and more techniques in +[Microsoft's documentation on adapting WebKit-oriented apps for IE10](http://blogs.windows.com/windows_phone/b/wpdev/archive/2012/11/15/adapting-your-webkit-optimized-site-for-internet-explorer-10.aspx). + + +## Search + +### Direct search spiders to your sitemap + +[Learn how to make a sitemap](http://www.sitemaps.org/protocol.html) + +```html + +``` + +### Hide pages from search engines + +According to Heather Champ, former community manager at Flickr, you should not +allow search engines to index your "Contact Us" or "Complaints" page if you +value your sanity. This is an HTML-centric way of achieving that. + +```html + +``` + +**_WARNING:_** DO NOT INCLUDE ON PAGES THAT SHOULD APPEAR IN SEARCH ENGINES. + +### Firefox and IE Search Plugins + +Sites with in-site search functionality should be strongly considered for a +browser search plugin. A "search plugin" is an XML file which defines how your +plugin behaves in the browser. [How to make a browser search +plugin](https://www.google.com/search?ie=UTF-8&q=how+to+make+browser+search+plugin). + +```html + +``` + + +## Miscellaneous + +* Use [polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills). + +* Use [Microformats](http://microformats.org/wiki/Main_Page) (via + [microdata](http://microformats.org/wiki/microdata)) for optimum search + results + [visibility](http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html). + +* If you're building a web app you may want [native style momentum scrolling in + iOS 5+](http://www.johanbrook.com/articles/native-style-momentum-scrolling-to-arrive-in-ios-5/) + using `-webkit-overflow-scrolling: touch`. + +* If you want to disable the translation prompt in Chrome or block Google + Translate from translating your web page, use [``](https://support.google.com/translate/?hl=en#2641276). + To disable translation for a particular section of the web page, add + [`class="notranslate"`](https://support.google.com/translate/?hl=en#2641276). + +* If you want to disable the automatic detection and formatting of possible + phone numbers in Safari on iOS, use [``](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html/#//apple_ref/doc/uid/TP40008193-SW5). + +* Avoid development/stage websites "leaking" into SERPs (search engine results + page) by [implementing X-Robots-tag + headers](https://github.com/h5bp/html5-boilerplate/issues/804). + +* Screen readers currently have less-than-stellar support for HTML5 but the JS + script [accessifyhtml5.js](https://github.com/yatil/accessifyhtml5.js) can + help increase accessibility by adding ARIA roles to HTML5 elements. + + +## News Feeds + +### RSS + +Have an RSS feed? Link to it here. Want to [learn how to write an RSS feed from +scratch](http://www.rssboard.org/rss-specification)? + +```html + +``` + +### Atom + +Atom is similar to RSS, and you might prefer to use it instead of or in +addition to it. [See what Atom's all +about](http://www.atomenabled.org/developers/syndication/). + +```html + +``` + +### Pingbacks + +Your server may be notified when another site links to yours. The href +attribute should contain the location of your pingback service. + +```html + +``` + +* High-level explanation: https://codex.wordpress.org/Introduction_to_Blogging#Pingbacks +* Step-by-step example case: http://www.hixie.ch/specs/pingback/pingback-1.0#TOC5 +* PHP pingback service: https://web.archive.org/web/20131211032834/http://blog.perplexedlabs.com/2009/07/15/xmlrpc-pingbacks-using-php/ + + + +## Social Networks + +### Facebook Open Graph data + +You can control the information that Facebook and others display when users +share your site. Below are just the most basic data points you might need. For +specific content types (including "website"), see [Facebook's built-in Open +Graph content +templates](https://developers.facebook.com/docs/opengraph/objects/builtin/). +Take full advantage of Facebook's support for complex data and activity by +following the [Open Graph +tutorial](https://developers.facebook.com/docs/opengraph/tutorial/). + +```html + + + +``` + +### Twitter Cards + +Twitter provides a snippet specification that serves a similar purpose to Open +Graph. In fact, Twitter will use Open Graph when Cards is not available. Note +that, as of this writing, Twitter requires that app developers activate Cards +on a per-domain basis. You can read more about the various snippet formats +and application process in the [official Twitter Cards +documentation](https://dev.twitter.com/docs/cards). + +```html + + + + + + + +``` + + +## URLs + +### Canonical URL + +Signal to search engines and others "Use this URL for this page!" Useful when +parameters after a `#` or `?` is used to control the display state of a page. +`http://www.example.com/cart.html?shopping-cart-open=true` can be indexed as +the cleaner, more accurate `http://www.example.com/cart.html`. + +```html + +``` + +### Official shortlink + +Signal to the world "This is the shortened URL to use this page!" Poorly +supported at this time. Learn more by reading the [article about shortlinks on +the Microformats wiki](http://microformats.org/wiki/rel-shortlink). + +```html + +``` + +### Separate mobile URLs + +If you use separate URLs for desktop and mobile users, you should consider +helping search engine algorithms better understand the configuration on your +web site. + +This can be done by adding the following annotations in your HTML pages: + +* on the desktop page, add the `link rel="alternate"` tag pointing to the + corresponding mobile URL, e.g.: + + `` + +* on the mobile page, add the `link rel="canonical"` tag pointing to the + corresponding desktop URL, e.g.: + + `` + +For more information please see: + +* https://developers.google.com/webmasters/smartphone-sites/details#separateurls +* https://developers.google.com/webmasters/smartphone-sites/feature-phones + + +## Web Apps + +There are a couple of meta tags that provide information about a web app when +added to the Home Screen on iOS: + +* Adding `apple-mobile-web-app-capable` will make your web app chrome-less and +provide the default iOS app view. You can control the color scheme of the +default view by adding `apple-mobile-web-app-status-bar-style`. + + ```html + + +``` + +* You can use `apple-mobile-web-app-title` to add a specific sites name for the +Home Screen icon. This works since iOS 6. + + ```html + +``` + +For further information please read the [official +documentation](https://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html) +on Apple's site. + + +### Apple Touch Icons + +The Apple touch icons can be seen as the favicons of iOS devices. + +The main sizes of the Apple touch icons are: + +* `57×57px` – iPhone with @1x display and iPod Touch +* `72×72px` – iPad and iPad mini with @1x display running iOS ≤ 6 +* `76×76px` – iPad and iPad mini with @1x display running iOS ≥ 7 +* `114×114px` – iPhone with @2x display running iOS ≤ 6 +* `120×120px` – iPhone with @2x and @3x display running iOS ≥ 7 +* `144×144px` – iPad and iPad mini with @2x display running iOS ≤ 6 +* `152×152px` – iPad and iPad mini with @2x display running iOS 7 +* `180×180px` – iPad and iPad mini with @2x display running iOS 8 + +Displays meaning: + +* @1x - non-Retina +* @2x - Retina +* @3x - Retina HD + +More information about the displays of iOS devices can be found +[here](https://en.wikipedia.org/wiki/List_of_iOS_devices#Display). + +In most cases, one `180×180px` touch icon named `apple-touch-icon.png` +and including: + +```html + +``` + +in the `` of the page is enough. If you use art-direction and/or +want to have different content for each device, you can add more touch +icons as written above. + +For a more comprehensive overview, please refer to Mathias' [article on Touch +Icons](https://mathiasbynens.be/notes/touch-icons). + + +### Apple Touch Startup Image + +Apart from that it is possible to add start-up screens for web apps on iOS. This +basically works by defining `apple-touch-startup-image` with an according link +to the image. Since iOS devices have different screen resolutions it is +necessary to add media queries to detect which image to load. Here is an +example for a retina iPhone: + +```html + +``` + +However, it is possible to detect which start-up image to use with JavaScript. +The Mobile Boilerplate provides a useful function for this. Please see +[helpers.js](https://github.com/h5bp/mobile-boilerplate/blob/v4.1.0/js/helper.js#L336-L383) +for the implementation. + + +### Chrome Mobile web apps + +Chrome Mobile has a specific meta tag for making apps [installable to the +homescreen](https://developer.chrome.com/multidevice/android/installtohomescreen) +which tries to be a more generic replacement to Apple's proprietary meta tag: + +```html + +``` + +Same applies to the touch icons: + +```html + +``` diff --git a/public/app/bower_components/html5-boilerplate/src/doc/faq.md b/public/app/bower_components/html5-boilerplate/src/doc/faq.md new file mode 100644 index 00000000..e3e2a9c5 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/faq.md @@ -0,0 +1,93 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Frequently asked questions + +* [Why is the URL for jQuery without + `http`?](#why-is-the-url-for-jquery-without-http) +* [Why don't you automatically load the latest version of jQuery from the Google + CDN?](#why-dont-you-automatically-load-the-latest-version-of-jquery-from-the-google-cdn) +* [Why is the Google Analytics code at the bottom? Google recommends it be + placed in the ``.](#why-is-the-google-analytics-code-at-the-bottom-google-recommends-it-be-placed-in-the-head) +* [How can I integrate Bootstrap with HTML5 + Boilerplate?](#how-can-i-integrate-bootstrap-with-html5-boilerplate) +* [Do I need to upgrade my site each time a new version of HTML5 Boilerplate is + released?](#do-i-need-to-upgrade-my-site-each-time-a-new-version-of-html5-boilerplate-is-released) +* [Where can I get help with support + questions?](#where-can-i-get-help-with-support-questions) + +-- + +### Why is the URL for jQuery without `http`? + +It is because of the use of [protocol-relative +URLs](http://paulirish.com/2010/the-protocol-relative-url/). + +**N.B.** If you try to view the local web page directly in the browser, the +browser will fail to load the assets specified using protocol-relative URLs +as it will attempt to fetch them from the local file system. We recommend you +use a local HTTP server to test your web pages, or a file hosting service that +allows you to preview your web pages online (e.g. +[Dropbox](https://www.dropbox.com/)). + +Setting up a local HTTP server can be done using there various +[one-liners](https://gist.github.com/willurd/5720255): + +* PHP 5.4.0+ by running + [`php -S localhost:8080`](https://php.net/manual/en/features.commandline.webserver.php) + from your local directory +* Python 2.x by running `python -m SimpleHTTPServer` from your local directory +* Python 3.x by running `python -m http.server` from your local directory +* Ruby 1.9.2+ by running `ruby -run -ehttpd . -p8080` from your local directory +* Node.js by installing and running either + [`static -p 8080`](https://www.npmjs.org/package/node-static) + or [`http-server -p 8080`](https://www.npmjs.org/package/http-server) + +A list of more complex HTTP servers can be found +[here](misc.md#servers-and-stacks). + + +### Why don't you automatically load the latest version of jQuery from the Google CDN? + +The [file](https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js) to which +the Google [CDN](https://en.wikipedia.org/wiki/Content_delivery_network) points +to is [no longer updated and will stay locked at version `1.11.1` in order to +prevent inadvertent web +breakage](http://blog.jquery.com/2014/07/03/dont-use-jquery-latest-js/). + +In general, version updating should be an intentional decision! You shouldn't +include a URL that will always point to the latest version, as that version: + + * may not be compatible with the existing plugins/code on the site + * will have a very short cache time compare to the specific version, + which means that users won't get the benefits of long-term caching + +### Why is the Google Analytics code at the bottom? Google recommends it be placed in the ``. + +The main advantage of placing it in the `` is that you will track the +user's `pageview` even if they leave the page before it has been fully loaded. +However, having the code at the bottom of the page [helps improve +performance](http://stevesouders.com/efws/inline-scripts-bottom.php). + + +### How can I integrate [Bootstrap](http://getbootstrap.com/) with HTML5 Boilerplate? + +One simple way is to use [Initializr](http://initializr.com) and create a +custom build that includes both HTML5 Boilerplate and +[Bootstrap](http://getbootstrap.com/). + +Read more about how [HTML5 Boilerplate and Bootstrap complement each +other](https://www.quora.com/Is-Bootstrap-a-complement-or-an-alternative-to-HTML5-Boilerplate-or-viceversa/answer/Nicolas-Gallagher). + + +### Do I need to upgrade my site each time a new version of HTML5 Boilerplate is released? + +No, same as you don't normally replace the foundation of a house once it +was built. However, there is nothing stopping you from trying to work in the +latest changes, but you'll have to assess the costs/benefits of doing so. + + +### Where can I get help with support questions? + +Please ask for help on +[StackOverflow](https://stackoverflow.com/questions/tagged/html5boilerplate). diff --git a/public/app/bower_components/html5-boilerplate/src/doc/html.md b/public/app/bower_components/html5-boilerplate/src/doc/html.md new file mode 100644 index 00000000..91d98f88 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/html.md @@ -0,0 +1,223 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The HTML + +By default, HTML5 Boilerplate provides two `html` pages: + +* [`index.html`](#indexhtml) - a default HTML skeleton that should form the + basis of all pages on your website +* [`404.html`](#404html) - a placeholder 404 error page + + +## `index.html` + + +### The `no-js` class + +The `no-js` class is provided in order to allow you to more easily and +explicitly add custom styles based on whether JavaScript is disabled +(`.no-js`) or enabled (`.js`). Using this technique also helps [avoid the +FOUC](http://paulirish.com/2009/avoiding-the-fouc-v3/). + + +## Language attribute + +Please consider specifying the language of your content by adding the `lang` +attribute to `` as in this example: + +```html + +``` + +### The order of the `` and `<meta>` tags + +The order in which the `<title>` and the `<meta>` tags are specified is +important because: + +1) the charset declaration (`<meta charset="utf-8">`): + + * must be included completely within the [first 1024 bytes of the + document](https://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#charset) + + * should be specified as early as possible (before any content that could + be controlled by an attacker, such as a `<title>` element) in order to + avoid a potential [encoding-related security + issue](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7) in + Internet Explorer + +2) the meta tag for compatibility mode + (`<meta http-equiv="X-UA-Compatible" content="IE=edge">`): + + * [needs to be included before all other tags except for the `<title>` and + the other `<meta>` + tags](http://msdn.microsoft.com/en-us/library/cc288325.aspx) + + +### `X-UA-Compatible` + +Internet Explorer 8/9/10 support [document compatibility +modes](http://msdn.microsoft.com/en-us/library/cc288325.aspx) that affect the +way webpages are interpreted and displayed. Because of this, even if your site's +visitor is using, let's say, Internet Explorer 9, it's possible that IE will not +use the latest rendering engine, and instead, decide to render your page using +the Internet Explorer 5.5 rendering engine. + +Specifying the `X-UA-Compatible` meta tag: + +```html +<meta http-equiv="X-UA-Compatible" content="IE=edge"> +``` + +or sending the page with the following HTTP response header + +``` +X-UA-Compatible: IE=edge +``` + +will force Internet Explorer 8/9/10 to render the webpage in the highest +available mode in [the various cases when it may +not](https://hsivonen.fi/doctype/#ie8), and therefore, ensure that anyone +browsing your site is treated to the best possible user experience that +browser can offer. + +If possible, we recommend that you remove the `meta` tag and send only the +HTTP response header as the `meta` tag will not always work if your site is +served on a non-standard port, as Internet Explorer's preference option +`Display intranet sites in Compatibility View` is checked by default. + +If you are using Apache as your webserver, including the +[`.htaccess`](https://github.com/h5bp/server-configs-apache) file takes care of +the HTTP header. If you are using a different server, check out our [other +server config](https://github.com/h5bp/server-configs). + +Starting with Internet Explorer 11, [document modes are +deprecated](http://msdn.microsoft.com/en-us/library/ie/bg182625.aspx#docmode). +If your business still relies on older web apps and services that were +designed for older versions of Internet Explorer, you might want to consider +enabling [Enterprise Mode](http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx) throughout your company. + + +## Mobile viewport + +There are a few different options that you can use with the [`viewport` meta +tag](https://docs.google.com/present/view?id=dkx3qtm_22dxsrgcf4 "Viewport and +Media Queries - The Complete Idiot's Guide"). You can find out more in [the +Apple developer docs](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html). +HTML5 Boilerplate comes with a simple setup that strikes a good balance for general use cases. + +```html +<meta name="viewport" content="width=device-width, initial-scale=1"> +``` + +## Favicons and Touch Icon + +The shortcut icons should be put in the root directory of your site. HTML5 +Boilerplate comes with a default set of icons (include favicon and one Apple +Touch Icon) that you can use as a baseline to create your own. + +Please refer to the more detailed description in the [Extend section](extend.md) +of these docs. + +## Modernizr + +HTML5 Boilerplate uses a custom build of Modernizr. + +[Modernizr](http://modernizr.com) is a JavaScript library which adds classes to +the `html` element based on the results of feature test and which ensures that +all browsers can make use of HTML5 elements (as it includes the HTML5 Shiv). +This allows you to target parts of your CSS and JavaScript based on the +features supported by a browser. + +In general, in order to keep page load times to a minimum, it's best to call +any JavaScript at the end of the page because if a script is slow to load +from an external server it may cause the whole page to hang. That said, the +Modernizr script *needs* to run *before* the browser begins rendering the page, +so that browsers lacking support for some of the new HTML5 elements are able to +handle them properly. Therefore the Modernizr script is the only JavaScript +file synchronously loaded at the top of the document. + +## What about polyfills? + +If you need to include [polyfills](https://remysharp.com/2010/10/08/what-is-a-polyfill) +in your project, you must make sure those load before any other JavaScript. If you're +using some polyfill CDN service, like [cdn.polyfill.io](http://cdn.polyfill.io/), +just put it before the other scripts in the bottom of the page: + +```html + <script src="//cdn.polyfill.io/v1/polyfill.min.js"></script> + <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> + <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.11.2.min.js"><\/script>')</script> + <script src="js/plugins.js"></script> + <script src="js/main.js"></script> +</body> +``` + +If you like to just include the polyfills yourself, you could include them in +`js/plugins.js`. When you have a bunch of polyfills to load in, you could +also create a `polyfills.js` file in the `js/vendor` directory. Also using +this technique, make sure the polyfills are all loaded before any other +Javascript. + +There are some misconceptions about Modernizr and polyfills. It's important +to understand that Modernizr just handles feature checking, not polyfilling +itself. The only thing Modernizr does regarding polyfills is that the team +maintains [a huge list of cross Browser polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills). + +## The content area + +The central part of the boilerplate template is pretty much empty. This is +intentional, in order to make the boilerplate suitable for both web page and +web app development. + +### Browser Upgrade Prompt + +The main content area of the boilerplate includes a prompt to install an up to +date browser for users of IE 6/7. If you intended to support IE 6/7, then you +should remove the snippet of code. + +### Google CDN for jQuery + +The Google CDN version of the jQuery JavaScript library is referenced towards +the bottom of the page using a protocol-independent path (read more about this +in the [FAQ](faq.md)). A local fallback of jQuery is included for rare instances +when the CDN version might not be available, and to facilitate offline +development. + +The Google CDN version is chosen over other [potential candidates (like the +jQuery CDN](https://jquery.com/download/#using-jquery-with-a-cdn)) because +it's fast in absolute terms and it has the best overall +[penetration](http://httparchive.org/trends.php#perGlibs) which increases the +odds of having a copy of the library in your user's browser cache. + +While the Google CDN is a strong default solution your site or application may +require a different configuration. Testing your site with services like +[WebPageTest](http://www.webpagetest.org/) and browser tools like +[PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/) or +[YSlow](https://developer.yahoo.com/yslow/) will help you examine the real +world performance of your site and can show where you can optimize your specific +site or application. + + +### Google Universal Analytics Tracking Code + +Finally, an optimized version of the Google Universal Analytics tracking code is +included. Google recommends that this script be placed at the top of the page. +Factors to consider: if you place this script at the top of the page, you’ll +be able to count users who don’t fully load the page, and you’ll incur the max +number of simultaneous connections of the browser. + +Further information: + +* [Optimizing the Google Universal Analytics + Snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics) +* [Introduction to + Analytics.js](https://developers.google.com/analytics/devguides/collection/analyticsjs/) +* [Google Analytics Demos & Tools](https://ga-dev-tools.appspot.com/) + +**N.B.** The Google Universal Analytics snippet is included by default mainly +because Google Analytics is [currently one of the most popular tracking +solutions](https://trends.builtwith.com/analytics/Google-Analytics) out there. +However, its usage isn't set in stone, and you SHOULD consider exploring the +[alternatives](https://en.wikipedia.org/wiki/List_of_web_analytics_software) +and use whatever suits your needs best! diff --git a/public/app/bower_components/html5-boilerplate/src/doc/js.md b/public/app/bower_components/html5-boilerplate/src/doc/js.md new file mode 100644 index 00000000..2088d9fb --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/js.md @@ -0,0 +1,37 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The JavaScript + +Information about the default JavaScript included in the project. + +## main.js + +This file can be used to contain or reference your site/app JavaScript code. +For larger projects, you can make use of a JavaScript module loader, like +[Require.js](http://requirejs.org/), to load any other scripts you need to +run. + +## plugins.js + +This file can be used to contain all your plugins, such as jQuery plugins and +other 3rd party scripts. + +One approach is to put jQuery plugins inside of a `(function($){ ... +})(jQuery);` closure to make sure they're in the jQuery namespace safety +blanket. Read more about [jQuery plugin +authoring](http://docs.jquery.com/Plugins/Authoring#Getting_Started) + +By default the `plugins.js` file contains a small script to avoid `console` +errors in browsers that lack a `console`. The script will make sure that, if +a console method isn't available, that method will have the value of empty +function, thus, preventing the browser from throwing an error. + + +## vendor + +This directory can be used to contain all 3rd party library code. + +Minified versions of the latest jQuery and Modernizr libraries are included by +default. You may wish to create your own [custom Modernizr +build](http://www.modernizr.com/download/). diff --git a/public/app/bower_components/html5-boilerplate/src/doc/misc.md b/public/app/bower_components/html5-boilerplate/src/doc/misc.md new file mode 100644 index 00000000..459688b5 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/misc.md @@ -0,0 +1,198 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Miscellaneous + +* [.gitignore](#gitignore) +* [.editorconfig](#editorconfig) +* [Server Configuration](#server-configuration) +* [crossdomain.xml](#crossdomainxml) +* [robots.txt](#robotstxt) +* [browserconfig.xml](#browserconfigxml) + +-- + +## .gitignore + +HTML5 Boilerplate includes a basic project-level `.gitignore`. This should +primarily be used to avoid certain project-level files and directories from +being kept under source control. Different development-environments will +benefit from different collections of ignores. + +OS-specific and editor-specific files should be ignored using a "global +ignore" that applies to all repositories on your system. + +For example, add the following to your `~/.gitconfig`, where the `.gitignore` +in your HOME directory contains the files and directories you'd like to +globally ignore: + +```gitignore +[core] + excludesfile = ~/.gitignore +``` + +* More on global ignores: https://help.github.com/articles/ignoring-files +* Comprehensive set of ignores on GitHub: https://github.com/github/gitignore + + +## .editorconfig + +The `.editorconfig` file is provided in order to encourage and help you and +your team define and maintain consistent coding styles between different +editors and IDEs. + +By default, `.editorconfig` includes some basic +[properties](http://editorconfig.org/#supported-properties) that reflect the +coding styles from the files provided by default, but you can easily change +them to better suit your needs. + +In order for your editor/IDE to apply the +[properties](http://editorconfig.org/#supported-properties) from the +`.editorconfig` file, you will need to [install a +plugin]( http://editorconfig.org/#download). + +__N.B.__ If you aren't using the server configurations provided by HTML5 +Boilerplate, we highly encourage you to configure your server to block +access to `.editorconfig` files, as they can disclose sensitive information! + +For more details, please refer to the [EditorConfig +project](http://editorconfig.org/). + + +## Server Configuration + +H5BP includes a [`.htaccess`](#htaccess) file for the Apache HTTP server. If you are not using +Apache as your web server, then you are encouraged to download a +[server configuration](https://github.com/h5bp/server-configs) that corresponds +to your web server and environment. + + +### Servers and Stacks + +A comprehensive list of web servers and stacks are beyond the scope of this +documentation, but some common ones include: + +* [Apache HTTP Server](https://httpd.apache.org/docs/trunk/getting-started.html) + * [LAMP](https://en.wikipedia.org/wiki/LAMP_%28software_bundle%29) +(Linux, Apache, MySQL, and PHP). +Other variants include [MAMP](https://www.mamp.info/en/index.html), +[WAMP](http://www.wampserver.com/en/), +or [XAMPP](https://www.apachefriends.org/index.html). + * LAPP uses PostgreSQL instead of MySQL +* [Nginx](http://wiki.nginx.org/GettingStarted) + * [LEMP](http://www.chrisjohnston.org/ubuntu-tutorials/setting-up-a-lemp-stack-ubuntu-904) +is similar to the LAMP stack but uses Nginx +* [IIS](https://en.wikipedia.org/wiki/Internet_Information_Services) + * [ASP.NET](http://www.asp.net/get-started) +* [MEAN](http://mean.io/) (MongoDB, Express, AngularJS, Node.js) + + +### .htaccess + +A `.htaccess` (hypertext access) file is a +[Apache HTTP server configuration file](https://github.com/h5bp/server-configs-apache). +The `.htaccess` file is mostly used for: + +* Rewriting URLs +* Controlling cache +* Authentication +* Server-side includes +* Redirects +* Gzipping + +If you have access to the main server configuration file (usually called +`httpd.conf`), you should add the logic from the `.htaccess` file in, for +example, a <Directory> section in the main configuration file. This is usually +the recommended way, as using .htaccess files slows down Apache! + +To enable Apache modules locally, please see: +https://github.com/h5bp/server-configs-apache/wiki/How-to-enable-Apache-modules. + +In the repo the `.htaccess` is used for: + +* Allowing cross-origin access to web fonts +* CORS header for images when browsers request it +* Enable `404.html` as 404 error document +* Making the website experience better for IE users better +* Media UTF-8 as character encoding for `text/html` and `text/plain` +* Enabling the rewrite URLs engine +* Forcing or removing the `www.` at the begin of a URL +* It blocks access to directories without a default document +* It blocks access to files that can expose sensitive information. +* It reduces MIME type security risks +* It forces compressing (gzipping) +* It tells the browser whether they should request a specific file from the + server or whether they should grab it from the browser's cache + +When using `.htaccess` we recommend reading all inline comments (the rules after +a `#`) in the file once. There is a bunch of optional stuff in it. + +If you want to know more about the `.htaccess` file check out +https://httpd.apache.org/docs/current/howto/htaccess.html. + +Notice that the original repo for the `.htaccess` file is [this +one](https://github.com/h5bp/server-configs-apache). + + +## crossdomain.xml + +The _cross-domain policy file_ is an XML document that gives a web client — +such as Adobe Flash Player, Adobe Reader, etc. — permission to handle data +across multiple domains, by: + + * granting read access to data + * permitting the client to include custom headers in cross-domain requests + * granting permissions for socket-based connections + +__e.g.__ If a client hosts content from a particular source domain and that +content makes requests directed towards a domain other than its own, the remote +domain would need to host a cross-domain policy file in order to grant access +to the source domain and allow the client to continue with the transaction. + +For more in-depth information, please see Adobe's [cross-domain policy file +specification](https://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html). + + +## robots.txt + +The `robots.txt` file is used to give instructions to web robots on what can +be crawled from the website. + +By default, the file provided by this project includes the next two lines: + + * `User-agent: *` - the following rules apply to all web robots + * `Disallow:` - everything on the website is allowed to be crawled + +If you want to disallow certain pages you will need to specify the path in a +`Disallow` directive (e.g.: `Disallow: /path`) or, if you want to disallow +crawling of all content, use `Disallow: /`. + +The `/robots.txt` file is not intended for access control, so don't try to +use it as such. Think of it as a "No Entry" sign, rather than a locked door. +URLs disallowed by the `robots.txt` file might still be indexed without being +crawled, and the content from within the `robots.txt` file can be viewed by +anyone, potentially disclosing the location of your private content! So, if +you want to block access to private content, use proper authentication instead. + +For more information about `robots.txt`, please see: + + * [robotstxt.org](http://www.robotstxt.org/) + * [How Google handles the `robots.txt` file](https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt) + + +## browserconfig.xml + +The `browserconfig.xml` file is used to customize the tile displayed when users +pin your site to the Windows 8.1 start screen. In there you can define custom +tile colors, custom images or even [live tiles](http://msdn.microsoft.com/en-us/library/ie/dn455106.aspx#CreatingLiveTiles). + +By default, the file points to 2 placeholder tile images: + +* `tile.png` (558x558px): used for `Small`, `Medium` and `Large` tiles. + This image resizes automatically when necessary. +* `tile-wide.png` (558x270px): user for `Wide` tiles. + +Notice that IE11 uses the same images when adding a site to the `favorites`. + +For more in-depth information about the `browserconfig.xml` file, please +see [MSDN](http://msdn.microsoft.com/en-us/library/ie/dn320426%28v=vs.85%29.aspx). diff --git a/public/app/bower_components/html5-boilerplate/src/doc/usage.md b/public/app/bower_components/html5-boilerplate/src/doc/usage.md new file mode 100644 index 00000000..4c61b1bf --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/usage.md @@ -0,0 +1,130 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Usage + +Once you have cloned or downloaded HTML5 Boilerplate, creating a site or app +usually involves the following: + +1. Set up the basic structure of the site. +2. Add some content, style, and functionality. +3. Run your site locally to see how it looks. +4. (Optionally run a build script to automate the optimization of your site - + e.g. [ant build script](https://github.com/h5bp/ant-build-script)) +5. Deploy your site. + + +## Basic structure + +A basic HTML5 Boilerplate site initially looks something like this: + +``` +. +├── css +│ ├── main.css +│ └── normalize.css +├── doc +├── img +├── js +│ ├── main.js +│ ├── plugins.js +│ └── vendor +│ ├── jquery.min.js +│ └── modernizr.min.js +├── .editorconfig +├── .htaccess +├── 404.html +├── apple-touch-icon.png +├── browserconfig.xml +├── index.html +├── humans.txt +├── robots.txt +├── crossdomain.xml +├── favicon.ico +├── tile-wide.png +└── tile.png +``` + +What follows is a general overview of each major part and how to use them. + +### css + +This directory should contain all your project's CSS files. It includes some +initial CSS to help get you started from a solid foundation. [About the +CSS](css.md). + +### doc + +This directory contains all the HTML5 Boilerplate documentation. You can use it +as the location and basis for your own project's documentation. + +### js + +This directory should contain all your project's JS files. Libraries, plugins, +and custom code can all be included here. It includes some initial JS to help +get you started. [About the JavaScript](js.md). + +### .htaccess + +The default web server configs are for Apache. For more information, please +refer to the [Apache Server Configs +repository](https://github.com/h5bp/server-configs-apache). + +Host your site on a server other than Apache? You're likely to find the +corresponding server configs project listed in our [Server Configs +](https://github.com/h5bp/server-configs/blob/master/README.md) repository. + +### 404.html + +A helpful custom 404 to get you started. + +### browserconfig.xml + +This file contains all settings regarding custom tiles for IE11. + +For more info on this topic, please refer to +[MSDN](http://msdn.microsoft.com/en-us/library/ie/dn455106.aspx). + +### .editorconfig + +The `.editorconfig` file is provided in order to encourage and help you and +your team to maintain consistent coding styles between different +editors and IDEs. [Read more about the `.editorconfig` file](misc.md#editorconfig). + +### index.html + +This is the default HTML skeleton that should form the basis of all pages on +your site. If you are using a server-side templating framework, then you will +need to integrate this starting HTML with your setup. + +Make sure that you update the URLs for the referenced CSS and JavaScript if you +modify the directory structure at all. + +If you are using Google Universal Analytics, make sure that you edit the +corresponding snippet at the bottom to include your analytics ID. + +### humans.txt + +Edit this file to include the team that worked on your site/app, and the +technology powering it. + +### robots.txt + +Edit this file to include any pages you need hidden from search engines. + +### crossdomain.xml + +A template for working with cross-domain requests. [About +crossdomain.xml](misc.md#crossdomainxml). + +### Icons + +Replace the default `favicon.ico`, `tile.png`, `tile-wide.png` and Apple +Touch Icon with your own. + +If you want to use different Apple Touch Icons for different resolutions please +refer to the [according documentation](extend.md#apple-touch-icons). + +You might want to check out Hans' handy [HTML5 Boilerplate Favicon and Apple +Touch Icon +PSD-Template](https://drublic.de/blog/html5-boilerplate-favicons-psd-template/). diff --git a/public/app/bower_components/html5-boilerplate/src/favicon.ico b/public/app/bower_components/html5-boilerplate/src/favicon.ico new file mode 100644 index 00000000..be74abd6 Binary files /dev/null and b/public/app/bower_components/html5-boilerplate/src/favicon.ico differ diff --git a/public/app/bower_components/html5-boilerplate/src/humans.txt b/public/app/bower_components/html5-boilerplate/src/humans.txt new file mode 100644 index 00000000..8d2330fd --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/humans.txt @@ -0,0 +1,15 @@ +# humanstxt.org/ +# The humans responsible & technology colophon + +# TEAM + + <name> -- <role> -- <twitter> + +# THANKS + + <name> + +# TECHNOLOGY COLOPHON + + CSS3, HTML5 + Apache Server Configs, jQuery, Modernizr, Normalize.css diff --git a/public/app/bower_components/html5-boilerplate/src/img/.gitignore b/public/app/bower_components/html5-boilerplate/src/img/.gitignore new file mode 100644 index 00000000..e69de29b diff --git a/public/app/bower_components/html5-boilerplate/src/index.html b/public/app/bower_components/html5-boilerplate/src/index.html new file mode 100644 index 00000000..2fe50880 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/index.html @@ -0,0 +1,40 @@ +<!doctype html> +<html class="no-js" lang=""> + <head> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <title> + + + + + + + + + + + + + + +

Hello world! This is HTML5 Boilerplate.

+ + + + + + + + + + diff --git a/public/app/bower_components/html5-boilerplate/src/js/main.js b/public/app/bower_components/html5-boilerplate/src/js/main.js new file mode 100644 index 00000000..e69de29b diff --git a/public/app/bower_components/html5-boilerplate/src/js/plugins.js b/public/app/bower_components/html5-boilerplate/src/js/plugins.js new file mode 100644 index 00000000..f8874802 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/js/plugins.js @@ -0,0 +1,24 @@ +// Avoid `console` errors in browsers that lack a console. +(function() { + var method; + var noop = function () {}; + var methods = [ + 'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error', + 'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log', + 'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd', + 'timeline', 'timelineEnd', 'timeStamp', 'trace', 'warn' + ]; + var length = methods.length; + var console = (window.console = window.console || {}); + + while (length--) { + method = methods[length]; + + // Only stub undefined methods. + if (!console[method]) { + console[method] = noop; + } + } +}()); + +// Place any jQuery/helper plugins in here. diff --git a/public/app/bower_components/html5-boilerplate/src/js/vendor/modernizr-2.8.3.min.js b/public/app/bower_components/html5-boilerplate/src/js/vendor/modernizr-2.8.3.min.js new file mode 100644 index 00000000..81aafb7f --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/js/vendor/modernizr-2.8.3.min.js @@ -0,0 +1,4 @@ +/* Modernizr 2.8.3 (Custom Build) | MIT & BSD + * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load + */ +;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d',a,""].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b)&&c(b).matches||!1;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f