mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-11-01 15:15:34 +00:00
chore(js/css): update generated files
This commit is contained in:
1 parent
c69382cb5d
commit
d92cd9c3f3
8 files changed
+221
-155
No files matched your search
+213
-147
@@ -2,7 +2,7 @@
|
||||
* AngularJS Material Design
|
||||
* https://github.com/angular/material
|
||||
* @license MIT
|
||||
* v1.1.20
|
||||
* v1.1.21
|
||||
*/
|
||||
(function( window, angular, undefined ){
|
||||
"use strict";
|
||||
@@ -1036,7 +1036,14 @@ function MdPrefixer(initialAttributes, buildSelector) {
|
||||
* will not be unique.
|
||||
*/
|
||||
UtilFactory.$inject = ["$document", "$timeout", "$compile", "$rootScope", "$$mdAnimate", "$interpolate", "$log", "$rootElement", "$window", "$$rAF"];
|
||||
var nextUniqueId = 0;
|
||||
var nextUniqueId = 0, isIos, isAndroid;
|
||||
|
||||
// Support material-tools builds.
|
||||
if (window.navigator) {
|
||||
var userAgent = window.navigator.userAgent || window.navigator.vendor || window.opera;
|
||||
isIos = userAgent.match(/ipad|iphone|ipod/i);
|
||||
isAndroid = userAgent.match(/android/i);
|
||||
}
|
||||
|
||||
/**
|
||||
* @ngdoc module
|
||||
@@ -1097,6 +1104,8 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
|
||||
var $mdUtil = {
|
||||
dom: {},
|
||||
isIos: isIos,
|
||||
isAndroid: isAndroid,
|
||||
now: window.performance && window.performance.now ?
|
||||
angular.bind(window.performance, window.performance.now) : Date.now || function() {
|
||||
return new Date().getTime();
|
||||
@@ -1330,16 +1339,17 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
wrappedElementToDisable.append(scrollMask);
|
||||
}
|
||||
|
||||
function preventDefault(e) {
|
||||
e.preventDefault();
|
||||
/**
|
||||
* @param {Event} $event
|
||||
*/
|
||||
function preventDefault($event) {
|
||||
$event.preventDefault();
|
||||
}
|
||||
|
||||
scrollMask.on('wheel', preventDefault);
|
||||
scrollMask.on('touchmove', preventDefault);
|
||||
scrollMask.on('wheel touchmove', preventDefault);
|
||||
|
||||
return function restoreElementScroll() {
|
||||
scrollMask.off('wheel');
|
||||
scrollMask.off('touchmove');
|
||||
scrollMask.off('wheel touchmove', preventDefault);
|
||||
|
||||
if (!scrollMaskOptions.disableScrollMask && scrollMask[0].parentNode) {
|
||||
scrollMask[0].parentNode.removeChild(scrollMask[0]);
|
||||
@@ -1411,7 +1421,10 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
return this.floatingScrollbars.cached;
|
||||
},
|
||||
|
||||
// Mobile safari only allows you to set focus in click event listeners...
|
||||
/**
|
||||
* Mobile safari only allows you to set focus in click event listeners.
|
||||
* @param {Element|angular.JQLite} element to focus
|
||||
*/
|
||||
forceFocus: function(element) {
|
||||
var node = element[0] || element;
|
||||
|
||||
@@ -1485,17 +1498,21 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
};
|
||||
},
|
||||
|
||||
// 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.
|
||||
// @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
|
||||
/**
|
||||
* @param {Function} func original function to be debounced
|
||||
* @param {number} wait number of milliseconds to delay (since last debounce reset).
|
||||
* Default value 10 msecs.
|
||||
* @param {Object} scope in which to apply the function after debouncing ends
|
||||
* @param {boolean} invokeApply should the $timeout trigger $digest() dirty checking
|
||||
* @return {Function} 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.
|
||||
*/
|
||||
debounce: function(func, wait, scope, invokeApply) {
|
||||
var timer;
|
||||
|
||||
return function debounced() {
|
||||
var context = scope,
|
||||
args = Array.prototype.slice.call(arguments);
|
||||
args = Array.prototype.slice.call(arguments);
|
||||
|
||||
$timeout.cancel(timer);
|
||||
timer = $timeout(function() {
|
||||
@@ -1507,9 +1524,13 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
};
|
||||
},
|
||||
|
||||
// Returns a function that can only be triggered every `delay` milliseconds.
|
||||
// In other words, the function will not be called unless it has been more
|
||||
// than `delay` milliseconds since the last call.
|
||||
/**
|
||||
* The function will not be called unless it has been more than `delay` milliseconds since the
|
||||
* last call.
|
||||
* @param {Function} func original function to throttle
|
||||
* @param {number} delay number of milliseconds to delay
|
||||
* @return {Function} a function that can only be triggered every `delay` milliseconds.
|
||||
*/
|
||||
throttle: function throttle(func, delay) {
|
||||
var recent;
|
||||
return function throttled() {
|
||||
@@ -1559,8 +1580,11 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
return '' + nextUniqueId++;
|
||||
},
|
||||
|
||||
// Stop watchers and events from firing on a scope without destroying it,
|
||||
// by disconnecting it from its parent and its siblings' linked lists.
|
||||
/**
|
||||
* Stop watchers and events from firing on a scope without destroying it,
|
||||
* by disconnecting it from its parent and its siblings' linked lists.
|
||||
* @param {Object} scope to disconnect
|
||||
*/
|
||||
disconnectScope: function disconnectScope(scope) {
|
||||
if (!scope) return;
|
||||
|
||||
@@ -1581,7 +1605,10 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
|
||||
},
|
||||
|
||||
// Undo the effects of disconnectScope above.
|
||||
/**
|
||||
* Undo the effects of disconnectScope().
|
||||
* @param {Object} scope to reconnect
|
||||
*/
|
||||
reconnectScope: function reconnectScope(scope) {
|
||||
if (!scope) return;
|
||||
|
||||
@@ -1728,8 +1755,8 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
* to minimize $digest thrashing
|
||||
*
|
||||
* @param {Function} callback function to be called after the tick
|
||||
* @param {boolean} digest true to call $rootScope.$digest() after callback
|
||||
* @param scope scope associated with callback. If the scope is destroyed, the callback will
|
||||
* @param {boolean=} digest true to call $rootScope.$digest() after callback
|
||||
* @param {Object=} scope associated with callback. If the scope is destroyed, the callback will
|
||||
* be skipped.
|
||||
* @returns {*}
|
||||
*/
|
||||
@@ -1861,9 +1888,7 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
|
||||
/**
|
||||
* Returns true if the parent form of the element has been submitted.
|
||||
*
|
||||
* @param element An AngularJS or HTML5 element.
|
||||
*
|
||||
* @returns {boolean}
|
||||
*/
|
||||
isParentFormSubmitted: function(element) {
|
||||
@@ -1875,7 +1900,6 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
|
||||
/**
|
||||
* Animate the requested element's scrollTop to the requested scrollPosition with basic easing.
|
||||
*
|
||||
* @param {!Element} element The element to scroll.
|
||||
* @param {number} scrollEnd The new/final scroll position.
|
||||
* @param {number=} duration Duration of the scroll. Default is 1000ms.
|
||||
@@ -1927,7 +1951,6 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
* $mdUtil.uniq(myArray) => [1, 2, 3, 4]
|
||||
*
|
||||
* @param {array} array The array whose unique values should be returned.
|
||||
*
|
||||
* @returns {array} A copy of the array containing only unique values.
|
||||
*/
|
||||
uniq: function(array) {
|
||||
@@ -1988,7 +2011,7 @@ function UtilFactory($document, $timeout, $compile, $rootScope, $$mdAnimate, $in
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* 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`.
|
||||
*/
|
||||
@@ -3594,8 +3617,8 @@ function MdCompilerProvider($compileProvider) {
|
||||
"use strict";
|
||||
|
||||
|
||||
MdGesture.$inject = ["$$MdGestureHandler", "$$rAF", "$timeout"];
|
||||
attachToDocument.$inject = ["$mdGesture", "$$MdGestureHandler"];var HANDLERS = {};
|
||||
MdGesture.$inject = ["$$MdGestureHandler", "$$rAF", "$timeout", "$mdUtil"];
|
||||
attachToDocument.$inject = ["$mdGesture", "$$MdGestureHandler", "$mdUtil"];var HANDLERS = {};
|
||||
|
||||
/**
|
||||
* The state of the current 'pointer'. The pointer represents the state of the current touch.
|
||||
@@ -3611,21 +3634,18 @@ var forceSkipClickHijack = false, disableAllGestures = false;
|
||||
*/
|
||||
var lastLabelClickPos = null;
|
||||
|
||||
// Used to attach event listeners once when multiple ng-apps are running.
|
||||
/**
|
||||
* Used to attach event listeners once when multiple ng-apps are running.
|
||||
* @type {boolean}
|
||||
*/
|
||||
var isInitialized = false;
|
||||
|
||||
// Support material-tools builds.
|
||||
if (window.navigator) {
|
||||
var userAgent = window.navigator.userAgent || window.navigator.vendor || window.opera;
|
||||
var isIos = userAgent.match(/ipad|iphone|ipod/i);
|
||||
var isAndroid = userAgent.match(/android/i);
|
||||
}
|
||||
|
||||
/**
|
||||
* @ngdoc module
|
||||
* @name material.core.gestures
|
||||
* @description
|
||||
* AngularJS Material Gesture handling for touch devices. This module replaced the usage of the hammerjs library.
|
||||
* AngularJS Material Gesture handling for touch devices.
|
||||
* This module replaced the usage of the HammerJS library.
|
||||
*/
|
||||
angular
|
||||
.module('material.core.gestures', [])
|
||||
@@ -3640,10 +3660,11 @@ angular
|
||||
*
|
||||
* @description
|
||||
* In some scenarios on mobile devices (without jQuery), the click events should NOT be hijacked.
|
||||
* `$mdGestureProvider` is used to configure the Gesture module to ignore or skip click hijacking on mobile
|
||||
* devices.
|
||||
* `$mdGestureProvider` is used to configure the Gesture module to ignore or skip click hijacking
|
||||
* on mobile devices.
|
||||
*
|
||||
* You can also change the max click distance, `6px` by default, if you have issues on some touch screens.
|
||||
* You can also change the max click distance, `6px` by default, if you have issues on some touch
|
||||
* screens.
|
||||
*
|
||||
* <hljs lang="js">
|
||||
* app.config(function($mdGestureProvider) {
|
||||
@@ -3702,8 +3723,8 @@ MdGestureProvider.prototype = {
|
||||
* $get is used to build an instance of $mdGesture
|
||||
* @ngInject
|
||||
*/
|
||||
$get : ["$$MdGestureHandler", "$$rAF", "$timeout", function($$MdGestureHandler, $$rAF, $timeout) {
|
||||
return new MdGesture($$MdGestureHandler, $$rAF, $timeout);
|
||||
$get : ["$$MdGestureHandler", "$$rAF", "$timeout", "$mdUtil", function($$MdGestureHandler, $$rAF, $timeout, $mdUtil) {
|
||||
return new MdGesture($$MdGestureHandler, $$rAF, $timeout, $mdUtil);
|
||||
}]
|
||||
};
|
||||
|
||||
@@ -3713,17 +3734,17 @@ MdGestureProvider.prototype = {
|
||||
* MdGesture factory construction function
|
||||
* @ngInject
|
||||
*/
|
||||
function MdGesture($$MdGestureHandler, $$rAF, $timeout) {
|
||||
function MdGesture($$MdGestureHandler, $$rAF, $timeout, $mdUtil) {
|
||||
var touchActionProperty = getTouchAction();
|
||||
var hasJQuery = (typeof window.jQuery !== 'undefined') && (angular.element === window.jQuery);
|
||||
var hasJQuery = (typeof window.jQuery !== 'undefined') && (angular.element === window.jQuery);
|
||||
|
||||
var self = {
|
||||
handler: addHandler,
|
||||
register: register,
|
||||
isAndroid: isAndroid,
|
||||
isIos: isIos,
|
||||
isAndroid: $mdUtil.isAndroid,
|
||||
isIos: $mdUtil.isIos,
|
||||
// On mobile w/out jQuery, we normally intercept clicks. Should we skip that?
|
||||
isHijackingClicks: (isIos || isAndroid) && !hasJQuery && !forceSkipClickHijack
|
||||
isHijackingClicks: ($mdUtil.isIos || $mdUtil.isAndroid) && !hasJQuery && !forceSkipClickHijack
|
||||
};
|
||||
|
||||
if (self.isHijackingClicks) {
|
||||
@@ -4172,7 +4193,7 @@ function MdGestureHandler() {
|
||||
* Attach Gestures: hook document and check shouldHijack clicks
|
||||
* @ngInject
|
||||
*/
|
||||
function attachToDocument($mdGesture, $$MdGestureHandler) {
|
||||
function attachToDocument($mdGesture, $$MdGestureHandler, $mdUtil) {
|
||||
if (disableAllGestures) {
|
||||
return;
|
||||
}
|
||||
@@ -4220,7 +4241,7 @@ function attachToDocument($mdGesture, $$MdGestureHandler) {
|
||||
*/
|
||||
function clickHijacker(ev) {
|
||||
var isKeyClick;
|
||||
if (isIos) {
|
||||
if ($mdUtil.isIos) {
|
||||
isKeyClick = angular.isDefined(ev.webkitForce) && ev.webkitForce === 0;
|
||||
} else {
|
||||
isKeyClick = ev.clientX === 0 && ev.clientY === 0;
|
||||
@@ -8565,14 +8586,15 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
defineProperty('hidden', handleHiddenChange, true);
|
||||
|
||||
// Public Exported Variables
|
||||
ctrl.scope = $scope;
|
||||
ctrl.parent = $scope.$parent;
|
||||
ctrl.itemName = itemParts[ 0 ];
|
||||
ctrl.matches = [];
|
||||
ctrl.loading = false;
|
||||
ctrl.hidden = true;
|
||||
ctrl.index = null;
|
||||
ctrl.id = $mdUtil.nextUid();
|
||||
ctrl.scope = $scope;
|
||||
ctrl.parent = $scope.$parent;
|
||||
ctrl.itemName = itemParts[0];
|
||||
ctrl.matches = [];
|
||||
ctrl.loading = false;
|
||||
ctrl.hidden = true;
|
||||
ctrl.index = -1;
|
||||
ctrl.activeOption = null;
|
||||
ctrl.id = $mdUtil.nextUid();
|
||||
ctrl.isDisabled = null;
|
||||
ctrl.isRequired = null;
|
||||
ctrl.isReadonly = null;
|
||||
@@ -8580,20 +8602,20 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
ctrl.selectedMessage = $scope.selectedMessage || 'selected';
|
||||
|
||||
// Public Exported Methods
|
||||
ctrl.keydown = keydown;
|
||||
ctrl.blur = blur;
|
||||
ctrl.focus = focus;
|
||||
ctrl.clear = clearValue;
|
||||
ctrl.select = select;
|
||||
ctrl.listEnter = onListEnter;
|
||||
ctrl.listLeave = onListLeave;
|
||||
ctrl.mouseUp = onMouseup;
|
||||
ctrl.getCurrentDisplayValue = getCurrentDisplayValue;
|
||||
ctrl.registerSelectedItemWatcher = registerSelectedItemWatcher;
|
||||
ctrl.keydown = keydown;
|
||||
ctrl.blur = blur;
|
||||
ctrl.focus = focus;
|
||||
ctrl.clear = clearValue;
|
||||
ctrl.select = select;
|
||||
ctrl.listEnter = onListEnter;
|
||||
ctrl.listLeave = onListLeave;
|
||||
ctrl.focusInput = focusInputElement;
|
||||
ctrl.getCurrentDisplayValue = getCurrentDisplayValue;
|
||||
ctrl.registerSelectedItemWatcher = registerSelectedItemWatcher;
|
||||
ctrl.unregisterSelectedItemWatcher = unregisterSelectedItemWatcher;
|
||||
ctrl.notFoundVisible = notFoundVisible;
|
||||
ctrl.loadingIsVisible = loadingIsVisible;
|
||||
ctrl.positionDropdown = positionDropdown;
|
||||
ctrl.notFoundVisible = notFoundVisible;
|
||||
ctrl.loadingIsVisible = loadingIsVisible;
|
||||
ctrl.positionDropdown = positionDropdown;
|
||||
|
||||
/**
|
||||
* Report types to be used for the $mdLiveAnnouncer
|
||||
@@ -8627,6 +8649,10 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
gatherElements();
|
||||
moveDropdown();
|
||||
|
||||
// Touch devices often do not send a click event on tap. We still want to focus the input
|
||||
// and open the options pop-up in these cases.
|
||||
$element.on('touchstart', focusInputElement);
|
||||
|
||||
// Forward all focus events to the input element when autofocus is enabled
|
||||
if ($scope.autofocus) {
|
||||
$element.on('focus', focusInputElement);
|
||||
@@ -8764,6 +8790,22 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
elements.input.focus();
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the activeOption based on the selected item in the listbox.
|
||||
* The activeOption is used in the template to set the aria-activedescendant attribute, which
|
||||
* enables screen readers to properly handle visual focus within the listbox and announce the
|
||||
* item's place in the list. I.e. "List item 3 of 50". Anytime that `ctrl.index` changes, this
|
||||
* function needs to be called to update the activeOption.
|
||||
*/
|
||||
function updateActiveOption() {
|
||||
var selectedOption = elements.scroller.querySelector('.selected');
|
||||
if (selectedOption) {
|
||||
ctrl.activeOption = selectedOption.id;
|
||||
} else {
|
||||
ctrl.activeOption = null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets up any watchers used by autocomplete
|
||||
*/
|
||||
@@ -8874,12 +8916,31 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
|
||||
// event/change handlers
|
||||
|
||||
/**
|
||||
* @param {Event} $event
|
||||
*/
|
||||
function preventDefault($event) {
|
||||
$event.preventDefault();
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {Event} $event
|
||||
*/
|
||||
function stopPropagation($event) {
|
||||
$event.stopPropagation();
|
||||
}
|
||||
|
||||
/**
|
||||
* Handles changes to the `hidden` property.
|
||||
* @param {boolean} hidden
|
||||
* @param {boolean} oldHidden
|
||||
* @param {boolean} hidden true to hide the options pop-up, false to show it.
|
||||
* @param {boolean} oldHidden the previous value of hidden
|
||||
*/
|
||||
function handleHiddenChange (hidden, oldHidden) {
|
||||
var scrollContainerElement;
|
||||
|
||||
if (elements) {
|
||||
scrollContainerElement = angular.element(elements.scrollContainer);
|
||||
}
|
||||
if (!hidden && oldHidden) {
|
||||
positionDropdown();
|
||||
|
||||
@@ -8888,12 +8949,23 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
reportMessages(true, ReportType.Count | ReportType.Selected);
|
||||
|
||||
if (elements) {
|
||||
$mdUtil.disableScrollAround(elements.ul);
|
||||
enableWrapScroll = disableElementScrollEvents(angular.element(elements.wrap));
|
||||
ctrl.documentElement.on('click', handleClickOutside);
|
||||
$mdUtil.disableScrollAround(elements.scrollContainer);
|
||||
enableWrapScroll = disableElementScrollEvents(elements.wrap);
|
||||
if ($mdUtil.isIos) {
|
||||
ctrl.documentElement.on('touchend', handleTouchOutsidePanel);
|
||||
if (scrollContainerElement) {
|
||||
scrollContainerElement.on('touchstart touchmove touchend', stopPropagation);
|
||||
}
|
||||
}
|
||||
$mdUtil.nextTick(updateActiveOption);
|
||||
}
|
||||
} else if (hidden && !oldHidden) {
|
||||
ctrl.documentElement.off('click', handleClickOutside);
|
||||
if ($mdUtil.isIos) {
|
||||
ctrl.documentElement.off('touchend', handleTouchOutsidePanel);
|
||||
if (scrollContainerElement) {
|
||||
scrollContainerElement.off('touchstart touchmove touchend', stopPropagation);
|
||||
}
|
||||
}
|
||||
$mdUtil.enableScrolling();
|
||||
|
||||
if (enableWrapScroll) {
|
||||
@@ -8904,29 +8976,27 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
}
|
||||
|
||||
/**
|
||||
* Handling click events that bubble up to the document is required for closing the dropdown
|
||||
* panel on click outside of the panel on iOS.
|
||||
* Handling touch events that bubble up to the document is required for closing the dropdown
|
||||
* panel on touch outside of the options pop-up panel on iOS.
|
||||
* @param {Event} $event
|
||||
*/
|
||||
function handleClickOutside($event) {
|
||||
function handleTouchOutsidePanel($event) {
|
||||
ctrl.hidden = true;
|
||||
// iOS does not blur the pop-up for touches on the scroll mask, so we have to do it.
|
||||
doBlur(true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Disables scrolling for a specific element
|
||||
* Disables scrolling for a specific element.
|
||||
* @param {!string|!DOMElement} element to disable scrolling
|
||||
* @return {Function} function to call to re-enable scrolling for the element
|
||||
*/
|
||||
function disableElementScrollEvents(element) {
|
||||
|
||||
function preventDefault(e) {
|
||||
e.preventDefault();
|
||||
}
|
||||
|
||||
element.on('wheel', preventDefault);
|
||||
element.on('touchmove', preventDefault);
|
||||
var elementToDisable = angular.element(element);
|
||||
elementToDisable.on('wheel touchmove', preventDefault);
|
||||
|
||||
return function() {
|
||||
element.off('wheel', preventDefault);
|
||||
element.off('touchmove', preventDefault);
|
||||
elementToDisable.off('wheel touchmove', preventDefault);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8946,13 +9016,6 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
ctrl.hidden = shouldHide();
|
||||
}
|
||||
|
||||
/**
|
||||
* When the mouse button is released, send focus back to the input field.
|
||||
*/
|
||||
function onMouseup () {
|
||||
elements.input.focus();
|
||||
}
|
||||
|
||||
/**
|
||||
* Handles changes to the selected item.
|
||||
* @param selectedItem
|
||||
@@ -9034,8 +9097,8 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
|
||||
/**
|
||||
* Handles changes to the searchText property.
|
||||
* @param searchText
|
||||
* @param previousSearchText
|
||||
* @param {string} searchText
|
||||
* @param {string} previousSearchText
|
||||
*/
|
||||
function handleSearchText (searchText, previousSearchText) {
|
||||
ctrl.index = getDefaultIndex();
|
||||
@@ -9119,17 +9182,17 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
if (ctrl.loading || hasSelection()) return;
|
||||
event.stopPropagation();
|
||||
event.preventDefault();
|
||||
ctrl.index = Math.min(ctrl.index + 1, ctrl.matches.length - 1);
|
||||
ctrl.index = Math.min(ctrl.index + 1, ctrl.matches.length - 1);
|
||||
$mdUtil.nextTick(updateActiveOption);
|
||||
updateScroll();
|
||||
reportMessages(false, ReportType.Selected);
|
||||
break;
|
||||
case $mdConstant.KEY_CODE.UP_ARROW:
|
||||
if (ctrl.loading || hasSelection()) return;
|
||||
event.stopPropagation();
|
||||
event.preventDefault();
|
||||
ctrl.index = ctrl.index < 0 ? ctrl.matches.length - 1 : Math.max(0, ctrl.index - 1);
|
||||
ctrl.index = ctrl.index < 0 ? ctrl.matches.length - 1 : Math.max(0, ctrl.index - 1);
|
||||
$mdUtil.nextTick(updateActiveOption);
|
||||
updateScroll();
|
||||
reportMessages(false, ReportType.Selected);
|
||||
break;
|
||||
case $mdConstant.KEY_CODE.TAB:
|
||||
// If we hit tab, assume that we've left the list so it will close
|
||||
@@ -9180,7 +9243,7 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
|
||||
/**
|
||||
* Returns the display value for an item.
|
||||
* @param item
|
||||
* @param {*} item
|
||||
* @returns {*}
|
||||
*/
|
||||
function getDisplayValue (item) {
|
||||
@@ -9196,7 +9259,7 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
/**
|
||||
* Getter function to invoke user-defined expression (in the directive)
|
||||
* to convert your object to a single string.
|
||||
* @param item
|
||||
* @param {*} item
|
||||
* @returns {string|null}
|
||||
*/
|
||||
function getItemText (item) {
|
||||
@@ -9206,7 +9269,7 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
|
||||
/**
|
||||
* Returns the locals object for compiling item templates.
|
||||
* @param item
|
||||
* @param {*} item
|
||||
* @returns {Object|undefined}
|
||||
*/
|
||||
function getItemAsNameVal (item) {
|
||||
@@ -9344,14 +9407,14 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
* Defines a public property with a handler and a default value.
|
||||
* @param {string} key
|
||||
* @param {Function} handler function
|
||||
* @param {*} value default value
|
||||
* @param {*} defaultValue default value
|
||||
*/
|
||||
function defineProperty (key, handler, value) {
|
||||
function defineProperty (key, handler, defaultValue) {
|
||||
Object.defineProperty(ctrl, key, {
|
||||
get: function () { return value; },
|
||||
get: function () { return defaultValue; },
|
||||
set: function (newValue) {
|
||||
var oldValue = value;
|
||||
value = newValue;
|
||||
var oldValue = defaultValue;
|
||||
defaultValue = newValue;
|
||||
handler(newValue, oldValue);
|
||||
}
|
||||
});
|
||||
@@ -9393,7 +9456,8 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
*/
|
||||
function clearSelectedItem () {
|
||||
// Reset our variables
|
||||
ctrl.index = 0;
|
||||
ctrl.index = -1;
|
||||
$mdUtil.nextTick(updateActiveOption);
|
||||
ctrl.matches = [];
|
||||
}
|
||||
|
||||
@@ -9520,7 +9584,7 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
function updateVirtualScroll() {
|
||||
// elements in virtual scroll have consistent heights
|
||||
var optionHeight = elements.li[0].offsetHeight,
|
||||
top = optionHeight * ctrl.index,
|
||||
top = optionHeight * Math.max(0, ctrl.index),
|
||||
bottom = top + optionHeight,
|
||||
containerHeight = elements.scroller.clientHeight,
|
||||
scrollTop = elements.scroller.scrollTop;
|
||||
@@ -9534,7 +9598,7 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $mdTheming,
|
||||
|
||||
function updateStandardScroll() {
|
||||
// elements in standard scroll have variable heights
|
||||
var selected = elements.li[ctrl.index] || elements.li[0];
|
||||
var selected = elements.li[Math.max(0, ctrl.index)];
|
||||
var containerHeight = elements.scrollContainer.offsetHeight,
|
||||
top = selected && selected.offsetTop || 0,
|
||||
bottom = top + selected.clientHeight,
|
||||
@@ -9741,7 +9805,7 @@ MdAutocomplete.$inject = ["$$mdSvgRegistry"];angular
|
||||
* @param {number=} md-delay Specifies the amount of time (in milliseconds) to wait before looking
|
||||
* for results.
|
||||
* @param {boolean=} md-clear-button Whether the clear button for the autocomplete input should show
|
||||
* up or not.
|
||||
* up or not. When `md-floating-label` is set, defaults to false, defaults to true otherwise.
|
||||
* @param {boolean=} md-autofocus If true, the autocomplete will be automatically focused when a
|
||||
* `$mdDialog`, `$mdBottomsheet` or `$mdSidenav`, which contains the autocomplete, is opening.
|
||||
* <br/><br/>
|
||||
@@ -10008,7 +10072,7 @@ function MdAutocomplete ($$mdSvgRegistry) {
|
||||
|
||||
// Stop click events from bubbling up to the document and triggering a flicker of the
|
||||
// options panel while still supporting ng-click to be placed on md-autocomplete.
|
||||
element.on('click', function(event) {
|
||||
element.on('click touchstart touchend', function(event) {
|
||||
event.stopPropagation();
|
||||
});
|
||||
};
|
||||
@@ -10045,11 +10109,11 @@ function MdAutocomplete ($$mdSvgRegistry) {
|
||||
id="ul-{{$mdAutocompleteCtrl.id}}"\
|
||||
ng-mouseenter="$mdAutocompleteCtrl.listEnter()"\
|
||||
ng-mouseleave="$mdAutocompleteCtrl.listLeave()"\
|
||||
ng-mouseup="$mdAutocompleteCtrl.mouseUp()"\
|
||||
ng-mouseup="$mdAutocompleteCtrl.focusInput()"\
|
||||
role="listbox">\
|
||||
<li ' + getRepeatType(attr.mdMode) + ' ="item in $mdAutocompleteCtrl.matches"\
|
||||
<li class="md-autocomplete-suggestion" ' + getRepeatType(attr.mdMode) + ' ="item in $mdAutocompleteCtrl.matches"\
|
||||
ng-class="{ selected: $index === $mdAutocompleteCtrl.index }"\
|
||||
ng-attr-id="{{$index === $mdAutocompleteCtrl.index ? \'selected_option\' : undefined}}"\
|
||||
ng-attr-id="{{\'md-option-\' + $mdAutocompleteCtrl.id + \'-\' + $index}}"\
|
||||
ng-click="$mdAutocompleteCtrl.select($index)"\
|
||||
role="option"\
|
||||
aria-setsize="{{$mdAutocompleteCtrl.matches.length}}"\
|
||||
@@ -10126,10 +10190,10 @@ function MdAutocomplete ($$mdSvgRegistry) {
|
||||
return '\
|
||||
<md-input-container ng-if="floatingLabel">\
|
||||
<label>{{floatingLabel}}</label>\
|
||||
<input type="search"\
|
||||
<input type="text"\
|
||||
' + (tabindex != null ? 'tabindex="' + tabindex + '"' : '') + '\
|
||||
id="{{ inputId || \'fl-input-\' + $mdAutocompleteCtrl.id }}"\
|
||||
name="{{inputName}}"\
|
||||
id="{{inputId || \'fl-input-\' + $mdAutocompleteCtrl.id}}"\
|
||||
name="{{inputName || \'fl-input-\' + $mdAutocompleteCtrl.id }}"\
|
||||
ng-class="::inputClass"\
|
||||
autocomplete="off"\
|
||||
ng-required="$mdAutocompleteCtrl.isRequired"\
|
||||
@@ -10139,24 +10203,25 @@ function MdAutocomplete ($$mdSvgRegistry) {
|
||||
ng-disabled="$mdAutocompleteCtrl.isDisabled"\
|
||||
ng-model="$mdAutocompleteCtrl.scope.searchText"\
|
||||
ng-model-options="{ allowInvalid: true }"\
|
||||
ng-mousedown="$mdAutocompleteCtrl.focusInput()"\
|
||||
ng-keydown="$mdAutocompleteCtrl.keydown($event)"\
|
||||
ng-blur="$mdAutocompleteCtrl.blur($event)"\
|
||||
ng-focus="$mdAutocompleteCtrl.focus($event)"\
|
||||
aria-label="{{floatingLabel}}"\
|
||||
aria-autocomplete="list"\
|
||||
role="combobox"\
|
||||
aria-haspopup="true"\
|
||||
ng-attr-aria-autocomplete="{{$mdAutocompleteCtrl.isDisabled ? undefined : \'list\'}}"\
|
||||
ng-attr-role="{{$mdAutocompleteCtrl.isDisabled ? undefined : \'combobox\'}}"\
|
||||
aria-haspopup="{{!$mdAutocompleteCtrl.isDisabled}}"\
|
||||
aria-expanded="{{!$mdAutocompleteCtrl.hidden}}"\
|
||||
aria-owns="ul-{{$mdAutocompleteCtrl.id}}"\
|
||||
ng-attr-aria-activedescendant="{{$mdAutocompleteCtrl.index >= 0 ? \'selected_option\' : undefined}}">\
|
||||
ng-attr-aria-owns="{{$mdAutocompleteCtrl.hidden || $mdAutocompleteCtrl.isDisabled ? undefined : \'ul-\' + $mdAutocompleteCtrl.id}}"\
|
||||
ng-attr-aria-activedescendant="{{!$mdAutocompleteCtrl.hidden && $mdAutocompleteCtrl.activeOption ? $mdAutocompleteCtrl.activeOption : undefined}}">\
|
||||
<div md-autocomplete-parent-scope md-autocomplete-replace>' + leftover + '</div>\
|
||||
</md-input-container>';
|
||||
} else {
|
||||
return '\
|
||||
<input type="search"\
|
||||
<input type="text"\
|
||||
' + (tabindex != null ? 'tabindex="' + tabindex + '"' : '') + '\
|
||||
id="{{ inputId || \'input-\' + $mdAutocompleteCtrl.id }}"\
|
||||
name="{{inputName}}"\
|
||||
id="{{inputId || \'input-\' + $mdAutocompleteCtrl.id}}"\
|
||||
name="{{inputName || \'input-\' + $mdAutocompleteCtrl.id }}"\
|
||||
ng-class="::inputClass"\
|
||||
ng-if="!floatingLabel"\
|
||||
autocomplete="off"\
|
||||
@@ -10166,17 +10231,18 @@ function MdAutocomplete ($$mdSvgRegistry) {
|
||||
ng-minlength="inputMinlength"\
|
||||
ng-maxlength="inputMaxlength"\
|
||||
ng-model="$mdAutocompleteCtrl.scope.searchText"\
|
||||
ng-mousedown="$mdAutocompleteCtrl.focusInput()"\
|
||||
ng-keydown="$mdAutocompleteCtrl.keydown($event)"\
|
||||
ng-blur="$mdAutocompleteCtrl.blur($event)"\
|
||||
ng-focus="$mdAutocompleteCtrl.focus($event)"\
|
||||
placeholder="{{placeholder}}"\
|
||||
aria-label="{{placeholder}}"\
|
||||
aria-autocomplete="list"\
|
||||
role="combobox"\
|
||||
aria-haspopup="true"\
|
||||
ng-attr-aria-autocomplete="{{$mdAutocompleteCtrl.isDisabled ? undefined : \'list\'}}"\
|
||||
ng-attr-role="{{$mdAutocompleteCtrl.isDisabled ? undefined : \'combobox\'}}"\
|
||||
aria-haspopup="{{!$mdAutocompleteCtrl.isDisabled}}"\
|
||||
aria-expanded="{{!$mdAutocompleteCtrl.hidden}}"\
|
||||
aria-owns="ul-{{$mdAutocompleteCtrl.id}}"\
|
||||
ng-attr-aria-activedescendant="{{$mdAutocompleteCtrl.index >= 0 ? \'selected_option\' : undefined}}">';
|
||||
ng-attr-aria-owns="{{$mdAutocompleteCtrl.hidden || $mdAutocompleteCtrl.isDisabled ? undefined : \'ul-\' + $mdAutocompleteCtrl.id}}"\
|
||||
ng-attr-aria-activedescendant="{{!$mdAutocompleteCtrl.hidden && $mdAutocompleteCtrl.activeOption ? $mdAutocompleteCtrl.activeOption : undefined}}">';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10185,7 +10251,7 @@ function MdAutocomplete ($$mdSvgRegistry) {
|
||||
'<button ' +
|
||||
'type="button" ' +
|
||||
'aria-label="Clear Input" ' +
|
||||
'tabindex="-1" ' +
|
||||
'tabindex="0" ' +
|
||||
'ng-if="clearButton && $mdAutocompleteCtrl.scope.searchText" ' +
|
||||
'ng-click="$mdAutocompleteCtrl.clear($event)">' +
|
||||
'<md-icon md-svg-src="' + $$mdSvgRegistry.mdClose + '"></md-icon>' +
|
||||
@@ -30387,8 +30453,8 @@ angular.module('material.components.select', [
|
||||
* @module material.components.select
|
||||
*
|
||||
* @description Displays a select box, bound to an `ng-model`. Selectable options are defined using
|
||||
* the <a ng-href="/api/directive/mdOption">md-option</a> element directive. Options can be grouped
|
||||
* using the <a ng-href="/api/directive/mdOptgroup">md-optgroup</a> element directive.
|
||||
* the <a ng-href="api/directive/mdOption">md-option</a> element directive. Options can be grouped
|
||||
* using the <a ng-href="api/directive/mdOptgroup">md-optgroup</a> element directive.
|
||||
*
|
||||
* When the select is required and uses a floating label, then the label will automatically contain
|
||||
* an asterisk (`*`). This behavior can be disabled by using the `md-no-asterisk` attribute.
|
||||
@@ -31265,9 +31331,9 @@ function SelectMenuDirective($parse, $mdUtil, $mdConstant, $mdTheming) {
|
||||
* @restrict E
|
||||
* @module material.components.select
|
||||
*
|
||||
* @description Displays an option in a <a ng-href="/api/directive/mdSelect">md-select</a> box's
|
||||
* @description Displays an option in a <a ng-href="api/directive/mdSelect">md-select</a> box's
|
||||
* dropdown menu. Options can be grouped using
|
||||
* <a ng-href="/api/directive/mdOptgroup">md-optgroup</a> element directives.
|
||||
* <a ng-href="api/directive/mdOptgroup">md-optgroup</a> element directives.
|
||||
*
|
||||
* ### Option Params
|
||||
*
|
||||
@@ -31305,7 +31371,7 @@ function SelectMenuDirective($parse, $mdUtil, $mdConstant, $mdTheming) {
|
||||
* `ng-model` like `$scope.selectedValue = 1`. Use `ng-value="1"` in this case and other cases where
|
||||
* you have values that are not strings.
|
||||
*
|
||||
* **Note:** Please see our <a ng-href="/api/directive/mdSelect#selects-and-object-equality">docs on
|
||||
* **Note:** Please see our <a ng-href="api/directive/mdSelect#selects-and-object-equality">docs on
|
||||
* using objects with `md-select`</a> for additional guidance on using the `trackBy` option with
|
||||
* `ng-model-options`.
|
||||
*
|
||||
@@ -31474,11 +31540,11 @@ function OptionDirective($mdButtonInkRipple, $mdUtil, $mdTheming) {
|
||||
* @module material.components.select
|
||||
*
|
||||
* @description Displays a label separating groups of
|
||||
* <a ng-href="/api/directive/mdOption">md-option</a> element directives in a
|
||||
* <a ng-href="/api/directive/mdSelect">md-select</a> box's dropdown menu.
|
||||
* <a ng-href="api/directive/mdOption">md-option</a> element directives in a
|
||||
* <a ng-href="api/directive/mdSelect">md-select</a> box's dropdown menu.
|
||||
*
|
||||
* **Note:** When using `md-select-header` element directives within a `md-select`, the labels that
|
||||
* would normally be added to the <a ng-href="/api/directive/mdOptgroup">md-optgroup</a> directives
|
||||
* would normally be added to the <a ng-href="api/directive/mdOptgroup">md-optgroup</a> directives
|
||||
* are omitted, allowing the `md-select-header` to represent the option group label
|
||||
* (and possibly more).
|
||||
*
|
||||
@@ -38502,8 +38568,8 @@ function MdWhiteframeDirective($log) {
|
||||
|
||||
})();
|
||||
(function(){
|
||||
angular.module("material.core").constant("$MD_THEME_CSS", "md-autocomplete.md-THEME_NAME-theme{background:\"{{background-hue-1}}\"}md-autocomplete.md-THEME_NAME-theme[disabled]:not([md-floating-label]){background:\"{{background-hue-2}}\"}md-autocomplete.md-THEME_NAME-theme button md-icon path{fill:\"{{background-600}}\"}md-autocomplete.md-THEME_NAME-theme button:after{background:\"{{background-600-0.3}}\"}md-autocomplete.md-THEME_NAME-theme input{color:\"{{foreground-1}}\"}md-autocomplete.md-THEME_NAME-theme.md-accent md-input-container.md-input-focused .md-input{border-color:\"{{accent-color}}\"}md-autocomplete.md-THEME_NAME-theme.md-accent md-input-container.md-input-focused label,md-autocomplete.md-THEME_NAME-theme.md-accent md-input-container.md-input-focused md-icon{color:\"{{accent-color}}\"}md-autocomplete.md-THEME_NAME-theme.md-accent md-progress-linear .md-container{background-color:\"{{accent-100}}\"}md-autocomplete.md-THEME_NAME-theme.md-accent md-progress-linear .md-bar{background-color:\"{{accent-color}}\"}md-autocomplete.md-THEME_NAME-theme.md-warn md-input-container.md-input-focused .md-input{border-color:\"{{warn-A700}}\"}md-autocomplete.md-THEME_NAME-theme.md-warn md-input-container.md-input-focused label,md-autocomplete.md-THEME_NAME-theme.md-warn md-input-container.md-input-focused md-icon{color:\"{{warn-A700}}\"}md-autocomplete.md-THEME_NAME-theme.md-warn md-progress-linear .md-container{background-color:\"{{warn-100}}\"}md-autocomplete.md-THEME_NAME-theme.md-warn md-progress-linear .md-bar{background-color:\"{{warn-color}}\"}.md-autocomplete-standard-list-container.md-THEME_NAME-theme,.md-autocomplete-suggestions-container.md-THEME_NAME-theme{background:\"{{background-hue-1}}\"}.md-autocomplete-standard-list-container.md-THEME_NAME-theme li,.md-autocomplete-suggestions-container.md-THEME_NAME-theme li{color:\"{{foreground-1}}\"}.md-autocomplete-standard-list-container.md-THEME_NAME-theme li#selected_option,.md-autocomplete-standard-list-container.md-THEME_NAME-theme li:hover,.md-autocomplete-suggestions-container.md-THEME_NAME-theme li#selected_option,.md-autocomplete-suggestions-container.md-THEME_NAME-theme li:hover{background:\"{{background-500-0.18}}\"}md-backdrop{background-color:\"{{background-900-0.0}}\"}md-backdrop.md-opaque.md-THEME_NAME-theme{background-color:\"{{background-900-1.0}}\"}md-bottom-sheet.md-THEME_NAME-theme{background-color:\"{{background-color}}\";border-top-color:\"{{background-hue-3}}\"}md-bottom-sheet.md-THEME_NAME-theme.md-list md-list-item{color:\"{{foreground-1}}\"}md-bottom-sheet.md-THEME_NAME-theme .md-subheader{background-color:\"{{background-color}}\";color:\"{{foreground-1}}\"}.md-button.md-THEME_NAME-theme:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme:not([disabled]):hover{background-color:\"{{background-500-0.2}}\"}.md-button.md-THEME_NAME-theme:not([disabled]).md-icon-button:hover{background-color:transparent}.md-button.md-THEME_NAME-theme.md-fab md-icon{color:\"{{accent-contrast}}\"}.md-button.md-THEME_NAME-theme.md-primary{color:\"{{primary-color}}\"}.md-button.md-THEME_NAME-theme.md-primary.md-fab,.md-button.md-THEME_NAME-theme.md-primary.md-raised{color:\"{{primary-contrast}}\";background-color:\"{{primary-color}}\"}.md-button.md-THEME_NAME-theme.md-primary.md-fab:not([disabled]) md-icon,.md-button.md-THEME_NAME-theme.md-primary.md-raised:not([disabled]) md-icon{color:\"{{primary-contrast}}\"}.md-button.md-THEME_NAME-theme.md-primary.md-fab:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-primary.md-fab:not([disabled]):hover,.md-button.md-THEME_NAME-theme.md-primary.md-raised:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-primary.md-raised:not([disabled]):hover{background-color:\"{{primary-600}}\"}.md-button.md-THEME_NAME-theme.md-primary:not([disabled]) md-icon{color:\"{{primary-color}}\"}.md-button.md-THEME_NAME-theme.md-fab{background-color:\"{{accent-color}}\";color:\"{{accent-contrast}}\"}.md-button.md-THEME_NAME-theme.md-fab:not([disabled]) .md-icon{color:\"{{accent-contrast}}\"}.md-button.md-THEME_NAME-theme.md-fab:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-fab:not([disabled]):hover{background-color:\"{{accent-A700}}\"}.md-button.md-THEME_NAME-theme.md-raised{color:\"{{background-900}}\";background-color:\"{{background-50}}\"}.md-button.md-THEME_NAME-theme.md-raised:not([disabled]) md-icon{color:\"{{background-900}}\"}.md-button.md-THEME_NAME-theme.md-raised:not([disabled]):hover{background-color:\"{{background-50}}\"}.md-button.md-THEME_NAME-theme.md-raised:not([disabled]).md-focused{background-color:\"{{background-200}}\"}.md-button.md-THEME_NAME-theme.md-warn{color:\"{{warn-color}}\"}.md-button.md-THEME_NAME-theme.md-warn.md-fab,.md-button.md-THEME_NAME-theme.md-warn.md-raised{color:\"{{warn-contrast}}\";background-color:\"{{warn-color}}\"}.md-button.md-THEME_NAME-theme.md-warn.md-fab:not([disabled]) md-icon,.md-button.md-THEME_NAME-theme.md-warn.md-raised:not([disabled]) md-icoLine truncated
|
||||
angular.module("material.core").constant("$MD_THEME_CSS", "md-autocomplete.md-THEME_NAME-theme{background:\"{{background-hue-1}}\"}md-autocomplete.md-THEME_NAME-theme[disabled]:not([md-floating-label]){background:\"{{background-hue-2}}\"}md-autocomplete.md-THEME_NAME-theme button md-icon path{fill:\"{{background-600}}\"}md-autocomplete.md-THEME_NAME-theme button:after{background:\"{{background-600-0.3}}\"}md-autocomplete.md-THEME_NAME-theme input{color:\"{{foreground-1}}\"}md-autocomplete.md-THEME_NAME-theme.md-accent md-input-container.md-input-focused .md-input{border-color:\"{{accent-color}}\"}md-autocomplete.md-THEME_NAME-theme.md-accent md-input-container.md-input-focused label,md-autocomplete.md-THEME_NAME-theme.md-accent md-input-container.md-input-focused md-icon{color:\"{{accent-color}}\"}md-autocomplete.md-THEME_NAME-theme.md-accent md-progress-linear .md-container{background-color:\"{{accent-100}}\"}md-autocomplete.md-THEME_NAME-theme.md-accent md-progress-linear .md-bar{background-color:\"{{accent-color}}\"}md-autocomplete.md-THEME_NAME-theme.md-warn md-input-container.md-input-focused .md-input{border-color:\"{{warn-A700}}\"}md-autocomplete.md-THEME_NAME-theme.md-warn md-input-container.md-input-focused label,md-autocomplete.md-THEME_NAME-theme.md-warn md-input-container.md-input-focused md-icon{color:\"{{warn-A700}}\"}md-autocomplete.md-THEME_NAME-theme.md-warn md-progress-linear .md-container{background-color:\"{{warn-100}}\"}md-autocomplete.md-THEME_NAME-theme.md-warn md-progress-linear .md-bar{background-color:\"{{warn-color}}\"}.md-autocomplete-standard-list-container.md-THEME_NAME-theme,.md-autocomplete-suggestions-container.md-THEME_NAME-theme{background:\"{{background-hue-1}}\"}.md-autocomplete-standard-list-container.md-THEME_NAME-theme .md-autocomplete-suggestion,.md-autocomplete-suggestions-container.md-THEME_NAME-theme .md-autocomplete-suggestion{color:\"{{foreground-1}}\"}.md-autocomplete-standard-list-container.md-THEME_NAME-theme .md-autocomplete-suggestion.selected,.md-autocomplete-standard-list-container.md-THEME_NAME-theme .md-autocomplete-suggestion:hover,.md-autocomplete-suggestions-container.md-THEME_NAME-theme .md-autocomplete-suggestion.selected,.md-autocomplete-suggestions-container.md-THEME_NAME-theme .md-autocomplete-suggestion:hover{background:\"{{background-500-0.18}}\"}md-backdrop{background-color:\"{{background-900-0.0}}\"}md-backdrop.md-opaque.md-THEME_NAME-theme{background-color:\"{{background-900-1.0}}\"}md-bottom-sheet.md-THEME_NAME-theme{background-color:\"{{background-color}}\";border-top-color:\"{{background-hue-3}}\"}md-bottom-sheet.md-THEME_NAME-theme.md-list md-list-item{color:\"{{foreground-1}}\"}md-bottom-sheet.md-THEME_NAME-theme .md-subheader{background-color:\"{{background-color}}\";color:\"{{foreground-1}}\"}.md-button.md-THEME_NAME-theme:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme:not([disabled]):hover{background-color:\"{{background-500-0.2}}\"}.md-button.md-THEME_NAME-theme:not([disabled]).md-icon-button:hover{background-color:transparent}.md-button.md-THEME_NAME-theme.md-fab md-icon{color:\"{{accent-contrast}}\"}.md-button.md-THEME_NAME-theme.md-primary{color:\"{{primary-color}}\"}.md-button.md-THEME_NAME-theme.md-primary.md-fab,.md-button.md-THEME_NAME-theme.md-primary.md-raised{color:\"{{primary-contrast}}\";background-color:\"{{primary-color}}\"}.md-button.md-THEME_NAME-theme.md-primary.md-fab:not([disabled]) md-icon,.md-button.md-THEME_NAME-theme.md-primary.md-raised:not([disabled]) md-icon{color:\"{{primary-contrast}}\"}.md-button.md-THEME_NAME-theme.md-primary.md-fab:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-primary.md-fab:not([disabled]):hover,.md-button.md-THEME_NAME-theme.md-primary.md-raised:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-primary.md-raised:not([disabled]):hover{background-color:\"{{primary-600}}\"}.md-button.md-THEME_NAME-theme.md-primary:not([disabled]) md-icon{color:\"{{primary-color}}\"}.md-button.md-THEME_NAME-theme.md-fab{background-color:\"{{accent-color}}\";color:\"{{accent-contrast}}\"}.md-button.md-THEME_NAME-theme.md-fab:not([disabled]) .md-icon{color:\"{{accent-contrast}}\"}.md-button.md-THEME_NAME-theme.md-fab:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-fab:not([disabled]):hover{background-color:\"{{accent-A700}}\"}.md-button.md-THEME_NAME-theme.md-raised{color:\"{{background-900}}\";background-color:\"{{background-50}}\"}.md-button.md-THEME_NAME-theme.md-raised:not([disabled]) md-icon{color:\"{{background-900}}\"}.md-button.md-THEME_NAME-theme.md-raised:not([disabled]):hover{background-color:\"{{background-50}}\"}.md-button.md-THEME_NAME-theme.md-raised:not([disabled]).md-focused{background-color:\"{{background-200}}\"}.md-button.md-THEME_NAME-theme.md-warn{color:\"{{warn-color}}\"}.md-button.md-THEME_NAME-theme.md-warn.md-fab,.md-button.md-THEME_NAME-theme.md-warn.md-raised{color:\"{{warn-contrast}}\";background-color:\"{{warn-color}}\"}.md-bLine truncated
|
||||
})();
|
||||
|
||||
|
||||
})(window, window.angular);;window.ngMaterial={version:{full: "1.1.20"}};
|
||||
})(window, window.angular);;window.ngMaterial={version:{full: "1.1.21"}};
|
||||
+2
-2
@@ -2,6 +2,6 @@
|
||||
* AngularJS Material Design
|
||||
* https://github.com/angular/material
|
||||
* @license MIT
|
||||
* v1.1.20
|
||||
* v1.1.21
|
||||
*/
|
||||
!function(R,me,ue){"use strict";function e(e,t){if(t.has("$swipe")){e.warn("You are using the ngTouch module. \nAngularJS Material already has mobile click, tap, and swipe support... \nngTouch is not supported with AngularJS Material!")}}function t(e,t){e.decorator("$$rAF",["$delegate",n]),e.decorator("$q",["$delegate",o]),t.theme("default").primaryPalette("indigo").accentPalette("pink").warnPalette("deep-orange").backgroundPalette("grey")}function n(r){return r.throttle=function(e){var t,n,o,i;return function(){t=arguments,i=this,o=e,n||(n=!0,r(function(){o.apply(i,Array.prototype.slice.call(t)),n=!1}))}},r}function o(e){return e.resolve||(e.resolve=e.when),e}function i(r){return{restrict:"A",link:{pre:function(e,t,n){var o=n.mdAutoFocus||n.mdAutofocus||n.mdSidenavFocus;i(r(o)(e)),o&&e.$watch(o,i);function i(e){me.isUndefined(e)&&(e=!0),t.toggleClass("md-autofocus",!!e)}}}}}function r(e,d){function s(){return!0}e&&!me.isArray(e)&&(e=Array.prototype.slice.call(e)),d=!!d;var l=e||[];return{items:function(){return[].concat(l)},count:function(){return l.length},inRange:c,contains:t,indexOf:m,itemAt:function(e){return c(e)?l[e]:null},findBy:function(t,n){return l.filter(function(e){return e[t]===n})},add:function(e,t){if(!e)return-1;me.isNumber(t)||(t=l.length);return l.splice(t,0,e),m(e)},remove:function(e){t(e)&&l.splice(m(e),1)},first:u,last:p,next:me.bind(null,n,!1),previous:me.bind(null,n,!0),hasPrevious:function(e){return!!e&&c(m(e)-1)},hasNext:function(e){return!!e&&c(m(e)+1)}};function c(e){return l.length&&-1<e&&e<l.length}function m(e){return l.indexOf(e)}function t(e){return e&&-1<m(e)}function u(){return l.length?l[0]:null}function p(){return l.length?l[l.length-1]:null}function n(e,t,n,o){n=n||s;for(var i=m(t);;){if(!c(i))return null;var r=i+(e?-1:1),a=null;if(c(r)?a=l[r]:d&&(r=m(a=e?p():u())),null===a||r===o)return null;if(n(a))return a;me.isUndefined(o)&&(o=r),i=r}}}function a(a,t,o){var r={},d={},i={},n={};return e.getResponsiveAttribute=function(e,t){for(var n=0;n<a.MEDIA_PRIORITY.length;n++){var o=a.MEDIA_PRIORITY[n];if(d[r[o]].matches){var i=l(e,t+"-"+o);if(e[i])return e[i]}}return e[l(e,t)]},e.getQuery=function(e){return d[e]},e.watchResponsiveAttributes=function(e,o,i){var r=[];return e.forEach(function(e){var t=l(o,e);for(var n in me.isDefined(o[t])&&r.push(o.$observe(t,me.bind(void 0,i,null))),a.MEDIA)t=l(o,e+"-"+n),me.isDefined(o[t])&&r.push(o.$observe(t,me.bind(void 0,i,n)))}),function(){r.forEach(function(e){e()})}},e;function e(e){var t=r[e];me.isUndefined(t)&&(t=r[e]=function(e){return a.MEDIA[e]||("("!==e.charAt(0)?"("+e+")":e)}(e));var n=i[t];return me.isUndefined(n)&&(n=function(e){var t=d[e];t=t||(d[e]=o.matchMedia(e));return t.addListener(s),i[t.media]=!!t.matches}(t)),n}function s(e){t.$evalAsync(function(){i[e.media]=!!e.matches})}function l(e,t){return n[t]||(n[t]=e.$normalize(t))}}function d(e,t){var o=["data","x"];return e?t?n(e):i(e):{buildList:i,buildSelector:n,hasAttribute:function(e,t){if(!(e=r(e)))return!1;for(var n=i(t),o=0;o<n.length;o++)if(e.hasAttribute(n[o]))return!0;return!1},removeAttribute:function(t,e){if(!(t=r(t)))return;i(e).forEach(function(e){t.removeAttribute(e)})}};function i(n){return(n=me.isArray(n)?n:[n]).forEach(function(t){o.forEach(function(e){n.push(e+"-"+t)})}),n}function n(e){return i(e=me.isArray(e)?e:[e]).map(function(e){return"["+e+"]"}).join(",")}function r(e){if((e=e[0]||e).nodeType)return e}}function A(e){return e.replace(/-[a-z]/g,function(e){return e.charAt(1).toUpperCase()})}var w,_,k,x,N,s,l,c,m,u,p,h,f,g,b,v,E,$,y,M,C,T;function S(o,i,s,r){var a=this.showWarnings;return{expect:d,expectAsync:l,expectWithText:function(e,t){var n=c(e)||"";-1<n.indexOf(r.startSymbol())?l(e,t,function(){return c(e)}):d(e,t,n)},expectWithoutText:function(e,t){var n=c(e);-1<n.indexOf(r.startSymbol())||n||d(e,t,n)},getText:c,hasAriaLabel:m,parentHasAriaLabel:function e(t,n){n=n||1;var o=me.element(t)[0]||t;if(!o.parentNode)return!1;if(i(o.parentNode))return!0;n--;if(n)return e(o.parentNode,n);return!1;function i(e){if(!m(e))return!1;if(e.hasAttribute("role"))switch(e.getAttribute("role").toLowerCase()){case"command":case"definition":case"directory":case"grid":case"list":case"listitem":case"log":case"marquee":case"menu":case"menubar":case"note":case"presentation":case"separator":case"scrollbar":case"status":case"tablist":return!1}switch(e.tagName.toLowerCase()){case"abbr":case"acronym":case"address":case"applet":case"audio":case"b":case"bdi":case"bdo":case"big":case"blockquote":case"br":case"canvas":case"caption":case"center":case"cite":case"code":case"col":case"data":case"dd":case"del":case"dfn":case"dir":case"div":case"dl":case"em":case"embed":case"fieldset":case"figcaption":case"font":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":case"hgroup":case"html":case"i":case"ins":case"isindex":case"kbd":case"keygen":case"label":case"legend":case"li":case"map":case"mark":case"menu":case"object":case"ol":case"output":case"pre":case"presentation":case"q":case"Line truncated
|
||||
!function(R,fe,ge){"use strict";function e(e,t){if(t.has("$swipe")){e.warn("You are using the ngTouch module. \nAngularJS Material already has mobile click, tap, and swipe support... \nngTouch is not supported with AngularJS Material!")}}function t(e,t){e.decorator("$$rAF",["$delegate",n]),e.decorator("$q",["$delegate",o]),t.theme("default").primaryPalette("indigo").accentPalette("pink").warnPalette("deep-orange").backgroundPalette("grey")}function n(r){return r.throttle=function(e){var t,n,o,i;return function(){t=arguments,i=this,o=e,n||(n=!0,r(function(){o.apply(i,Array.prototype.slice.call(t)),n=!1}))}},r}function o(e){return e.resolve||(e.resolve=e.when),e}function i(r){return{restrict:"A",link:{pre:function(e,t,n){var o=n.mdAutoFocus||n.mdAutofocus||n.mdSidenavFocus;i(r(o)(e)),o&&e.$watch(o,i);function i(e){fe.isUndefined(e)&&(e=!0),t.toggleClass("md-autofocus",!!e)}}}}}function r(e,d){function s(){return!0}e&&!fe.isArray(e)&&(e=Array.prototype.slice.call(e)),d=!!d;var l=e||[];return{items:function(){return[].concat(l)},count:function(){return l.length},inRange:c,contains:t,indexOf:m,itemAt:function(e){return c(e)?l[e]:null},findBy:function(t,n){return l.filter(function(e){return e[t]===n})},add:function(e,t){if(!e)return-1;fe.isNumber(t)||(t=l.length);return l.splice(t,0,e),m(e)},remove:function(e){t(e)&&l.splice(m(e),1)},first:u,last:p,next:fe.bind(null,n,!1),previous:fe.bind(null,n,!0),hasPrevious:function(e){return!!e&&c(m(e)-1)},hasNext:function(e){return!!e&&c(m(e)+1)}};function c(e){return l.length&&-1<e&&e<l.length}function m(e){return l.indexOf(e)}function t(e){return e&&-1<m(e)}function u(){return l.length?l[0]:null}function p(){return l.length?l[l.length-1]:null}function n(e,t,n,o){n=n||s;for(var i=m(t);;){if(!c(i))return null;var r=i+(e?-1:1),a=null;if(c(r)?a=l[r]:d&&(r=m(a=e?p():u())),null===a||r===o)return null;if(n(a))return a;fe.isUndefined(o)&&(o=r),i=r}}}function a(a,t,o){var r={},d={},i={},n={};return e.getResponsiveAttribute=function(e,t){for(var n=0;n<a.MEDIA_PRIORITY.length;n++){var o=a.MEDIA_PRIORITY[n];if(d[r[o]].matches){var i=l(e,t+"-"+o);if(e[i])return e[i]}}return e[l(e,t)]},e.getQuery=function(e){return d[e]},e.watchResponsiveAttributes=function(e,o,i){var r=[];return e.forEach(function(e){var t=l(o,e);for(var n in fe.isDefined(o[t])&&r.push(o.$observe(t,fe.bind(void 0,i,null))),a.MEDIA)t=l(o,e+"-"+n),fe.isDefined(o[t])&&r.push(o.$observe(t,fe.bind(void 0,i,n)))}),function(){r.forEach(function(e){e()})}},e;function e(e){var t=r[e];fe.isUndefined(t)&&(t=r[e]=function(e){return a.MEDIA[e]||("("!==e.charAt(0)?"("+e+")":e)}(e));var n=i[t];return fe.isUndefined(n)&&(n=function(e){var t=d[e];t=t||(d[e]=o.matchMedia(e));return t.addListener(s),i[t.media]=!!t.matches}(t)),n}function s(e){t.$evalAsync(function(){i[e.media]=!!e.matches})}function l(e,t){return n[t]||(n[t]=e.$normalize(t))}}function d(e,t){var o=["data","x"];return e?t?n(e):i(e):{buildList:i,buildSelector:n,hasAttribute:function(e,t){if(!(e=r(e)))return!1;for(var n=i(t),o=0;o<n.length;o++)if(e.hasAttribute(n[o]))return!0;return!1},removeAttribute:function(t,e){if(!(t=r(t)))return;i(e).forEach(function(e){t.removeAttribute(e)})}};function i(n){return(n=fe.isArray(n)?n:[n]).forEach(function(t){o.forEach(function(e){n.push(e+"-"+t)})}),n}function n(e){return i(e=fe.isArray(e)?e:[e]).map(function(e){return"["+e+"]"}).join(",")}function r(e){if((e=e[0]||e).nodeType)return e}}function A(e){return e.replace(/-[a-z]/g,function(e){return e.charAt(1).toUpperCase()})}var w,_,k,x,N,s,l,c,m,u,p,h,f,g,b,v,E,$,y,C,M,T;function S(o,i,s,r){var a=this.showWarnings;return{expect:d,expectAsync:l,expectWithText:function(e,t){var n=c(e)||"";-1<n.indexOf(r.startSymbol())?l(e,t,function(){return c(e)}):d(e,t,n)},expectWithoutText:function(e,t){var n=c(e);-1<n.indexOf(r.startSymbol())||n||d(e,t,n)},getText:c,hasAriaLabel:m,parentHasAriaLabel:function e(t,n){n=n||1;var o=fe.element(t)[0]||t;if(!o.parentNode)return!1;if(i(o.parentNode))return!0;n--;if(n)return e(o.parentNode,n);return!1;function i(e){if(!m(e))return!1;if(e.hasAttribute("role"))switch(e.getAttribute("role").toLowerCase()){case"command":case"definition":case"directory":case"grid":case"list":case"listitem":case"log":case"marquee":case"menu":case"menubar":case"note":case"presentation":case"separator":case"scrollbar":case"status":case"tablist":return!1}switch(e.tagName.toLowerCase()){case"abbr":case"acronym":case"address":case"applet":case"audio":case"b":case"bdi":case"bdo":case"big":case"blockquote":case"br":case"canvas":case"caption":case"center":case"cite":case"code":case"col":case"data":case"dd":case"del":case"dfn":case"dir":case"div":case"dl":case"em":case"embed":case"fieldset":case"figcaption":case"font":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":case"hgroup":case"html":case"i":case"ins":case"isindex":case"kbd":case"keygen":case"label":case"legend":case"li":case"map":case"mark":case"menu":case"object":case"ol":case"output":case"pre":case"presentation":case"q":case"Line truncated
|
||||
Reference in new issue
Block a user