diff options
Diffstat (limited to 'ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete')
7 files changed, 0 insertions, 1065 deletions
diff --git a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete-default-theme.css b/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete-default-theme.css deleted file mode 100644 index d5374598..00000000 --- a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete-default-theme.css +++ /dev/null @@ -1,24 +0,0 @@ -/*! - * Angular Material Design - * https://github.com/angular/material - * @license MIT - * v0.9.8 - */ -/* mixin definition ; sets LTR and RTL within the same style call */ -md-autocomplete.md-THEME_NAME-theme { - background: '{{background-50}}'; } - md-autocomplete.md-THEME_NAME-theme[disabled] { - background: '{{background-100}}'; } - 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-suggestions.md-THEME_NAME-theme { - background: '{{background-50}}'; } - .md-autocomplete-suggestions.md-THEME_NAME-theme li { - color: '{{background-900}}'; } - .md-autocomplete-suggestions.md-THEME_NAME-theme li .highlight { - color: '{{background-600}}'; } - .md-autocomplete-suggestions.md-THEME_NAME-theme li:hover, .md-autocomplete-suggestions.md-THEME_NAME-theme li.selected { - background: '{{background-200}}'; } diff --git a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete-default-theme.min.css b/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete-default-theme.min.css deleted file mode 100644 index 94f5aff9..00000000 --- a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete-default-theme.min.css +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * Angular Material Design - * https://github.com/angular/material - * @license MIT - * v0.9.8 - */md-autocomplete.md-THEME_NAME-theme,md-autocomplete.md-THEME_NAME-theme[disabled]{background:0 0}md-autocomplete.md-THEME_NAME-theme button md-icon path{fill:'{{background-600}}'}.md-autocomplete-suggestions.md-THEME_NAME-theme,md-autocomplete.md-THEME_NAME-theme button:after{background:0 0}.md-autocomplete-suggestions.md-THEME_NAME-theme li{color:'{{background-900}}'}.md-autocomplete-suggestions.md-THEME_NAME-theme li .highlight{color:'{{background-600}}'}.md-autocomplete-suggestions.md-THEME_NAME-theme li.selected,.md-autocomplete-suggestions.md-THEME_NAME-theme li:hover{background:0 0}
\ No newline at end of file diff --git a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.css b/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.css deleted file mode 100644 index 51c3f857..00000000 --- a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.css +++ /dev/null @@ -1,220 +0,0 @@ -/*! - * Angular Material Design - * https://github.com/angular/material - * @license MIT - * v0.9.8 - */ -/* mixin definition ; sets LTR and RTL within the same style call */ -@-webkit-keyframes md-autocomplete-list-out { - 0% { - -webkit-animation-timing-function: linear; - animation-timing-function: linear; } - - 50% { - opacity: 0; - height: 40px; - -webkit-animation-timing-function: ease-in; - animation-timing-function: ease-in; } - - 100% { - height: 0; - opacity: 0; } } -@keyframes md-autocomplete-list-out { - 0% { - -webkit-animation-timing-function: linear; - animation-timing-function: linear; } - - 50% { - opacity: 0; - height: 40px; - -webkit-animation-timing-function: ease-in; - animation-timing-function: ease-in; } - - 100% { - height: 0; - opacity: 0; } } - -@-webkit-keyframes md-autocomplete-list-in { - 0% { - opacity: 0; - height: 0; - -webkit-animation-timing-function: ease-out; - animation-timing-function: ease-out; } - - 50% { - opacity: 0; - height: 40px; } - - 100% { - opacity: 1; - height: 40px; } } - -@keyframes md-autocomplete-list-in { - 0% { - opacity: 0; - height: 0; - -webkit-animation-timing-function: ease-out; - animation-timing-function: ease-out; } - - 50% { - opacity: 0; - height: 40px; } - - 100% { - opacity: 1; - height: 40px; } } - -md-autocomplete { - border-radius: 2px; - display: block; - height: 40px; - position: relative; - overflow: visible; - min-width: 190px; } - md-autocomplete[disabled] input { - cursor: not-allowed; } - md-autocomplete[md-floating-label] { - padding-bottom: 26px; - border-radius: 0; - background: transparent; - height: auto; } - md-autocomplete[md-floating-label] md-input-container { - padding-bottom: 0; } - md-autocomplete[md-floating-label] md-autocomplete-wrap { - height: auto; } - md-autocomplete[md-floating-label] button { - position: absolute; - top: auto; - bottom: 0; - right: 0; - width: 30px; - height: 30px; } - md-autocomplete md-autocomplete-wrap { - display: block; - position: relative; - overflow: visible; - height: 40px; } - md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate] { - position: absolute; - bottom: 0; - left: 0; - width: 100%; - height: 3px; - transition: none; } - md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate] .md-container { - transition: none; - top: auto; - height: 3px; } - md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate].ng-enter { - transition: opacity 0.15s linear; } - md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate].ng-enter.ng-enter-active { - opacity: 1; } - md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate].ng-leave { - transition: opacity 0.15s linear; } - md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate].ng-leave.ng-leave-active { - opacity: 0; } - md-autocomplete input:not(.md-input) { - width: 100%; - box-sizing: border-box; - border: none; - box-shadow: none; - padding: 0 15px; - font-size: 14px; - line-height: 40px; - height: 40px; - outline: none; - background: transparent; } - md-autocomplete input:not(.md-input)::-ms-clear { - display: none; } - md-autocomplete button { - position: relative; - line-height: 20px; - text-align: center; - width: 30px; - height: 30px; - cursor: pointer; - border: none; - border-radius: 50%; - padding: 0; - font-size: 12px; - background: transparent; - margin: auto 5px; } - md-autocomplete button:after { - content: ''; - position: absolute; - top: -6px; - right: -6px; - bottom: -6px; - left: -6px; - border-radius: 50%; - -webkit-transform: scale(0); - transform: scale(0); - opacity: 0; - transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); } - md-autocomplete button:focus { - outline: none; } - md-autocomplete button:focus:after { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 1; } - md-autocomplete button md-icon { - position: absolute; - top: 50%; - left: 50%; - -webkit-transform: translate3d(-50%, -50%, 0) scale(0.9); - transform: translate3d(-50%, -50%, 0) scale(0.9); } - md-autocomplete button md-icon path { - stroke-width: 0; } - md-autocomplete button.ng-enter { - -webkit-transform: scale(0); - transform: scale(0); - transition: -webkit-transform 0.15s ease-out; - transition: transform 0.15s ease-out; } - md-autocomplete button.ng-enter.ng-enter-active { - -webkit-transform: scale(1); - transform: scale(1); } - md-autocomplete button.ng-leave { - transition: -webkit-transform 0.15s ease-out; - transition: transform 0.15s ease-out; } - md-autocomplete button.ng-leave.ng-leave-active { - -webkit-transform: scale(0); - transform: scale(0); } - @media screen and (-ms-high-contrast: active) { - md-autocomplete input { - border: 1px solid #fff; } - md-autocomplete li:focus { - color: #fff; } } - -.md-autocomplete-suggestions { - position: absolute; - margin: 0; - list-style: none; - padding: 0; - overflow: auto; - max-height: 225.5px; - z-index: 100; } - .md-autocomplete-suggestions li { - cursor: pointer; - font-size: 14px; - overflow: hidden; - padding: 0 15px; - line-height: 48px; - height: 48px; - transition: background 0.15s linear; - margin: 0; - white-space: nowrap; - text-overflow: ellipsis; } - .md-autocomplete-suggestions li.ng-enter, .md-autocomplete-suggestions li.ng-hide-remove { - transition: none; - -webkit-animation: md-autocomplete-list-in 0.2s; - animation: md-autocomplete-list-in 0.2s; } - .md-autocomplete-suggestions li.ng-leave, .md-autocomplete-suggestions li.ng-hide-add { - transition: none; - -webkit-animation: md-autocomplete-list-out 0.2s; - animation: md-autocomplete-list-out 0.2s; } - .md-autocomplete-suggestions li:focus { - outline: none; } - -@media screen and (-ms-high-contrast: active) { - md-autocomplete, .md-autocomplete-suggestions { - border: 1px solid #fff; } } diff --git a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.js b/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.js deleted file mode 100644 index 061cf329..00000000 --- a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.js +++ /dev/null @@ -1,794 +0,0 @@ -/*! - * Angular Material Design - * https://github.com/angular/material - * @license MIT - * v0.9.8 - */ -(function( window, angular, undefined ){ -"use strict"; - -/** - * @ngdoc module - * @name material.components.autocomplete - */ -/* - * @see js folder for autocomplete implementation - */ -angular.module('material.components.autocomplete', [ - 'material.core', - 'material.components.icon' -]); - -angular - .module('material.components.autocomplete') - .controller('MdAutocompleteCtrl', MdAutocompleteCtrl); - -var ITEM_HEIGHT = 41, - MAX_HEIGHT = 5.5 * ITEM_HEIGHT, - MENU_PADDING = 8; - -function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $timeout, $mdTheming, $window, $animate, $rootElement) { - - //-- private variables - - var self = this, - itemParts = $scope.itemsExpr.split(/ in /i), - itemExpr = itemParts[1], - elements = null, - promise = null, - cache = {}, - noBlur = false, - selectedItemWatchers = [], - hasFocus = false, - lastCount = 0; - - //-- public variables - - self.scope = $scope; - self.parent = $scope.$parent; - self.itemName = itemParts[0]; - self.matches = []; - self.loading = false; - self.hidden = true; - self.index = null; - self.messages = []; - self.id = $mdUtil.nextUid(); - - //-- public methods - - self.keydown = keydown; - self.blur = blur; - self.focus = focus; - self.clear = clearValue; - self.select = select; - self.getCurrentDisplayValue = getCurrentDisplayValue; - self.registerSelectedItemWatcher = registerSelectedItemWatcher; - self.unregisterSelectedItemWatcher = unregisterSelectedItemWatcher; - - self.listEnter = function () { noBlur = true; }; - self.listLeave = function () { - noBlur = false; - if (!hasFocus) self.hidden = true; - }; - self.mouseUp = function () { elements.input.focus(); }; - - return init(); - - //-- initialization methods - - function init () { - configureWatchers(); - $timeout(function () { - gatherElements(); - focusElement(); - moveDropdown(); - }); - } - - function positionDropdown () { - if (!elements) return $timeout(positionDropdown, 0, false); - var hrect = elements.wrap.getBoundingClientRect(), - vrect = elements.snap.getBoundingClientRect(), - root = elements.root.getBoundingClientRect(), - top = vrect.bottom - root.top, - bot = root.bottom - vrect.top, - left = hrect.left - root.left, - width = hrect.width, - styles = { - left: left + 'px', - minWidth: width + 'px', - maxWidth: Math.max(hrect.right - root.left, root.right - hrect.left) - MENU_PADDING + 'px' - }; - if (top > bot && root.height - hrect.bottom - MENU_PADDING < MAX_HEIGHT) { - styles.top = 'auto'; - styles.bottom = bot + 'px'; - styles.maxHeight = Math.min(MAX_HEIGHT, hrect.top - root.top - MENU_PADDING) + 'px'; - } else { - styles.top = top + 'px'; - styles.bottom = 'auto'; - styles.maxHeight = Math.min(MAX_HEIGHT, root.bottom - hrect.bottom - MENU_PADDING) + 'px'; - } - elements.$.ul.css(styles); - $timeout(correctHorizontalAlignment, 0, false); - - function correctHorizontalAlignment () { - var dropdown = elements.ul.getBoundingClientRect(), - styles = {}; - if (dropdown.right > root.right - MENU_PADDING) { - styles.left = (hrect.right - dropdown.width) + 'px'; - } - elements.$.ul.css(styles); - } - } - - function moveDropdown () { - if (!elements.$.root.length) return; - $mdTheming(elements.$.ul); - elements.$.ul.detach(); - elements.$.root.append(elements.$.ul); - if ($animate.pin) $animate.pin(elements.$.ul, $rootElement); - } - - function focusElement () { - if ($scope.autofocus) elements.input.focus(); - } - - function configureWatchers () { - var wait = parseInt($scope.delay, 10) || 0; - $scope.$watch('searchText', wait - ? $mdUtil.debounce(handleSearchText, wait) - : handleSearchText); - registerSelectedItemWatcher(selectedItemChange); - $scope.$watch('selectedItem', handleSelectedItemChange); - $scope.$watch('$mdAutocompleteCtrl.hidden', function (hidden, oldHidden) { - if (!hidden && oldHidden) positionDropdown(); - }); - angular.element($window).on('resize', positionDropdown); - $scope.$on('$destroy', cleanup); - } - - function cleanup () { - elements.$.ul.remove(); - } - - function gatherElements () { - elements = { - main: $element[0], - ul: $element.find('ul')[0], - input: $element.find('input')[0], - wrap: $element.find('md-autocomplete-wrap')[0], - root: document.body - }; - elements.li = elements.ul.getElementsByTagName('li'); - elements.snap = getSnapTarget(); - elements.$ = getAngularElements(elements); - } - - function getSnapTarget () { - for (var element = $element; element.length; element = element.parent()) { - if (angular.isDefined(element.attr('md-autocomplete-snap'))) return element[0]; - } - return elements.wrap; - } - - function getAngularElements (elements) { - var obj = {}; - for (var key in elements) { - obj[key] = angular.element(elements[key]); - } - return obj; - } - - //-- event/change handlers - - function selectedItemChange (selectedItem, previousSelectedItem) { - if (selectedItem) { - $scope.searchText = getDisplayValue(selectedItem); - } - if ($scope.itemChange && selectedItem !== previousSelectedItem) - $scope.itemChange(getItemScope(selectedItem)); - } - - function handleSelectedItemChange(selectedItem, previousSelectedItem) { - for (var i = 0; i < selectedItemWatchers.length; ++i) { - selectedItemWatchers[i](selectedItem, previousSelectedItem); - } - } - - /** - * Register a function to be called when the selected item changes. - * @param cb - */ - function registerSelectedItemWatcher(cb) { - if (selectedItemWatchers.indexOf(cb) == -1) { - selectedItemWatchers.push(cb); - } - } - - /** - * Unregister a function previously registered for selected item changes. - * @param cb - */ - function unregisterSelectedItemWatcher(cb) { - var i = selectedItemWatchers.indexOf(cb); - if (i != -1) { - selectedItemWatchers.splice(i, 1); - } - } - - function handleSearchText (searchText, previousSearchText) { - self.index = getDefaultIndex(); - //-- do nothing on init - if (searchText === previousSearchText) return; - //-- clear selected item if search text no longer matches it - if (searchText !== getDisplayValue($scope.selectedItem)) $scope.selectedItem = null; - else return; - //-- trigger change event if available - if ($scope.textChange && searchText !== previousSearchText) - $scope.textChange(getItemScope($scope.selectedItem)); - //-- cancel results if search text is not long enough - if (!isMinLengthMet()) { - self.loading = false; - self.matches = []; - self.hidden = shouldHide(); - updateMessages(); - } else { - handleQuery(); - } - } - - function blur () { - hasFocus = false; - if (!noBlur) self.hidden = true; - } - - function focus () { - hasFocus = true; - //-- if searchText is null, let's force it to be a string - if (!angular.isString($scope.searchText)) $scope.searchText = ''; - if ($scope.minLength > 0) return; - self.hidden = shouldHide(); - if (!self.hidden) handleQuery(); - } - - function keydown (event) { - switch (event.keyCode) { - case $mdConstant.KEY_CODE.DOWN_ARROW: - if (self.loading) return; - event.preventDefault(); - self.index = Math.min(self.index + 1, self.matches.length - 1); - updateScroll(); - updateMessages(); - break; - case $mdConstant.KEY_CODE.UP_ARROW: - if (self.loading) return; - event.preventDefault(); - self.index = self.index < 0 ? self.matches.length - 1 : Math.max(0, self.index - 1); - updateScroll(); - updateMessages(); - break; - case $mdConstant.KEY_CODE.TAB: - case $mdConstant.KEY_CODE.ENTER: - if (self.hidden || self.loading || self.index < 0 || self.matches.length < 1) return; - event.preventDefault(); - select(self.index); - break; - case $mdConstant.KEY_CODE.ESCAPE: - self.matches = []; - self.hidden = true; - self.index = getDefaultIndex(); - break; - default: - } - } - - //-- getters - - function getMinLength () { - return angular.isNumber($scope.minLength) ? $scope.minLength : 1; - } - - function getDisplayValue (item) { - return (item && $scope.itemText) ? $scope.itemText(getItemScope(item)) : item; - } - - function getItemScope (item) { - if (!item) return; - var locals = {}; - if (self.itemName) locals[self.itemName] = item; - return locals; - } - - function getDefaultIndex () { - return $scope.autoselect ? 0 : -1; - } - - function shouldHide () { - if (!isMinLengthMet()) return true; - } - - function getCurrentDisplayValue () { - return getDisplayValue(self.matches[self.index]); - } - - function isMinLengthMet () { - return $scope.searchText && $scope.searchText.length >= getMinLength(); - } - - //-- actions - - function select (index) { - $scope.selectedItem = self.matches[index]; - self.hidden = true; - self.index = 0; - self.matches = []; - //-- force form to update state for validation - $timeout(function () { - elements.$.input.controller('ngModel').$setViewValue(getDisplayValue($scope.selectedItem) || $scope.searchText); - self.hidden = true; - }); - } - - function clearValue () { - $scope.searchText = ''; - select(-1); - - // Per http://www.w3schools.com/jsref/event_oninput.asp - var eventObj = document.createEvent('CustomEvent'); - eventObj.initCustomEvent('input', true, true, {value: $scope.searchText}); - elements.input.dispatchEvent(eventObj); - - elements.input.focus(); - } - - function fetchResults (searchText) { - var items = $scope.$parent.$eval(itemExpr), - term = searchText.toLowerCase(); - if (angular.isArray(items)) { - handleResults(items); - } else { - self.loading = true; - if (items.success) items.success(handleResults); - if (items.then) items.then(handleResults); - if (items.error) items.error(function () { self.loading = false; }); - } - function handleResults (matches) { - cache[term] = matches; - if (searchText !== $scope.searchText) return; //-- just cache the results if old request - self.loading = false; - promise = null; - self.matches = matches; - self.hidden = shouldHide(); - updateMessages(); - positionDropdown(); - } - } - - function updateMessages () { - self.messages = [ getCountMessage(), getCurrentDisplayValue() ]; - } - - function getCountMessage () { - if (lastCount === self.matches.length) return ''; - lastCount = self.matches.length; - switch (self.matches.length) { - case 0: return 'There are no matches available.'; - case 1: return 'There is 1 match available.'; - default: return 'There are ' + self.matches.length + ' matches available.'; - } - } - - function updateScroll () { - if (!elements.li[self.index]) return; - var li = elements.li[self.index], - top = li.offsetTop, - bot = top + li.offsetHeight, - hgt = elements.ul.clientHeight; - if (top < elements.ul.scrollTop) { - elements.ul.scrollTop = top; - } else if (bot > elements.ul.scrollTop + hgt) { - elements.ul.scrollTop = bot - hgt; - } - } - - function handleQuery () { - var searchText = $scope.searchText, - term = searchText.toLowerCase(); - //-- cancel promise if a promise is in progress - if (promise && promise.cancel) { - promise.cancel(); - promise = null; - } - //-- if results are cached, pull in cached results - if (!$scope.noCache && cache[term]) { - self.matches = cache[term]; - updateMessages(); - } else { - fetchResults(searchText); - } - if (hasFocus) self.hidden = shouldHide(); - } - -} -MdAutocompleteCtrl.$inject = ["$scope", "$element", "$mdUtil", "$mdConstant", "$timeout", "$mdTheming", "$window", "$animate", "$rootElement"]; - -angular - .module('material.components.autocomplete') - .directive('mdAutocomplete', MdAutocomplete); - -/** - * @ngdoc directive - * @name mdAutocomplete - * @module material.components.autocomplete - * - * @description - * `<md-autocomplete>` is a special input component with a drop-down of all possible matches to a custom query. - * This component allows you to provide real-time suggestions as the user types in the input area. - * - * To start, you will need to specify the required parameters and provide a template for your results. - * The content inside `md-autocomplete` will be treated as a template. - * - * In more complex cases, you may want to include other content such as a message to display when - * no matches were found. You can do this by wrapping your template in `md-item-template` and adding - * a tag for `md-not-found`. An example of this is shown below. - * ### Validation - * - * You can use `ng-messages` to include validation the same way that you would normally validate; - * however, if you want to replicate a standard input with a floating label, you will have to do the - * following: - * - * - Make sure that your template is wrapped in `md-item-template` - * - Add your `ng-messages` code inside of `md-autocomplete` - * - Add your validation properties to `md-autocomplete` (ie. `required`) - * - Add a `name` to `md-autocomplete` (to be used on the generated `input`) - * - * There is an example below of how this should look. - * - * - * @param {expression} md-items An expression in the format of `item in items` to iterate over matches for your search. - * @param {expression=} md-selected-item-change An expression to be run each time a new item is selected - * @param {expression=} md-search-text-change An expression to be run each time the search text updates - * @param {string=} md-search-text A model to bind the search query text to - * @param {object=} md-selected-item A model to bind the selected item to - * @param {string=} md-item-text An expression that will convert your object to a single string. - * @param {string=} placeholder Placeholder text that will be forwarded to the input. - * @param {boolean=} md-no-cache Disables the internal caching that happens in autocomplete - * @param {boolean=} ng-disabled Determines whether or not to disable the input field - * @param {number=} md-min-length Specifies the minimum length of text before autocomplete will make suggestions - * @param {number=} md-delay Specifies the amount of time (in milliseconds) to wait before looking for results - * @param {boolean=} md-autofocus If true, will immediately focus the input element - * @param {boolean=} md-autoselect If true, the first item will be selected by default - * @param {string=} md-menu-class This will be applied to the dropdown menu for styling - * @param {string=} md-floating-label This will add a floating label to autocomplete and wrap it in `md-input-container` - * - * @usage - * ###Basic Example - * <hljs lang="html"> - * <md-autocomplete - * md-selected-item="selectedItem" - * md-search-text="searchText" - * md-items="item in getMatches(searchText)" - * md-item-text="item.display"> - * <span md-highlight-text="searchText">{{item.display}}</span> - * </md-autocomplete> - * </hljs> - * - * ###Example with "not found" message - * <hljs lang="html"> - * <md-autocomplete - * md-selected-item="selectedItem" - * md-search-text="searchText" - * md-items="item in getMatches(searchText)" - * md-item-text="item.display"> - * <md-item-template> - * <span md-highlight-text="searchText">{{item.display}}</span> - * </md-item-template> - * <md-not-found> - * No matches found. - * </md-not-found> - * </md-autocomplete> - * </hljs> - * - * In this example, our code utilizes `md-item-template` and `md-not-found` to specify the different - * parts that make up our component. - * - * ### Example with validation - * <hljs lang="html"> - * <form name="autocompleteForm"> - * <md-autocomplete - * required - * input-name="autocomplete" - * md-selected-item="selectedItem" - * md-search-text="searchText" - * md-items="item in getMatches(searchText)" - * md-item-text="item.display"> - * <md-item-template> - * <span md-highlight-text="searchText">{{item.display}}</span> - * </md-item-template> - * <div ng-messages="autocompleteForm.autocomplete.$error"> - * <div ng-message="required">This field is required</div> - * </div> - * </md-autocomplete> - * </form> - * </hljs> - * - * In this example, our code utilizes `md-item-template` and `md-not-found` to specify the different - * parts that make up our component. - */ - -function MdAutocomplete ($mdTheming, $mdUtil) { - return { - controller: 'MdAutocompleteCtrl', - controllerAs: '$mdAutocompleteCtrl', - link: link, - scope: { - inputName: '@mdInputName', - inputMinlength: '@mdInputMinlength', - inputMaxlength: '@mdInputMaxlength', - searchText: '=?mdSearchText', - selectedItem: '=?mdSelectedItem', - itemsExpr: '@mdItems', - itemText: '&mdItemText', - placeholder: '@placeholder', - noCache: '=?mdNoCache', - itemChange: '&?mdSelectedItemChange', - textChange: '&?mdSearchTextChange', - minLength: '=?mdMinLength', - delay: '=?mdDelay', - autofocus: '=?mdAutofocus', - floatingLabel: '@?mdFloatingLabel', - autoselect: '=?mdAutoselect', - menuClass: '@?mdMenuClass' - }, - template: function (element, attr) { - var noItemsTemplate = getNoItemsTemplate(), - itemTemplate = getItemTemplate(), - leftover = element.html(); - return '\ - <md-autocomplete-wrap\ - layout="row"\ - ng-class="{ \'md-whiteframe-z1\': !floatingLabel }"\ - role="listbox">\ - ' + getInputElement() + '\ - <md-progress-linear\ - ng-if="$mdAutocompleteCtrl.loading"\ - md-mode="indeterminate"></md-progress-linear>\ - <ul role="presentation"\ - class="md-autocomplete-suggestions md-whiteframe-z1 {{menuClass || \'\'}}"\ - id="ul-{{$mdAutocompleteCtrl.id}}"\ - ng-mouseenter="$mdAutocompleteCtrl.listEnter()"\ - ng-mouseleave="$mdAutocompleteCtrl.listLeave()"\ - ng-mouseup="$mdAutocompleteCtrl.mouseUp()">\ - <li ng-repeat="(index, item) in $mdAutocompleteCtrl.matches"\ - ng-class="{ selected: index === $mdAutocompleteCtrl.index }"\ - ng-hide="$mdAutocompleteCtrl.hidden"\ - ng-click="$mdAutocompleteCtrl.select(index)"\ - md-autocomplete-list-item="$mdAutocompleteCtrl.itemName">\ - ' + itemTemplate + '\ - </li>\ - ' + noItemsTemplate + '\ - </ul>\ - </md-autocomplete-wrap>\ - <aria-status\ - class="md-visually-hidden"\ - role="status"\ - aria-live="assertive">\ - <p ng-repeat="message in $mdAutocompleteCtrl.messages" ng-if="message">{{message}}</p>\ - </aria-status>'; - - function getItemTemplate() { - var templateTag = element.find('md-item-template').remove(), - html = templateTag.length ? templateTag.html() : element.html(); - if (!templateTag.length) element.empty(); - return html; - } - - function getNoItemsTemplate() { - var templateTag = element.find('md-not-found').remove(), - template = templateTag.length ? templateTag.html() : ''; - return template - ? '<li ng-if="!$mdAutocompleteCtrl.matches.length && !$mdAutocompleteCtrl.loading\ - && !$mdAutocompleteCtrl.hidden"\ - ng-hide="$mdAutocompleteCtrl.hidden"\ - md-autocomplete-parent-scope>' + template + '</li>' - : ''; - - } - - function getInputElement() { - if (attr.mdFloatingLabel) { - return '\ - <md-input-container flex ng-if="floatingLabel">\ - <label>{{floatingLabel}}</label>\ - <input type="search"\ - id="fl-input-{{$mdAutocompleteCtrl.id}}"\ - name="{{inputName}}"\ - autocomplete="off"\ - ng-required="isRequired"\ - ng-minlength="inputMinlength"\ - ng-maxlength="inputMaxlength"\ - ng-disabled="isDisabled"\ - ng-model="$mdAutocompleteCtrl.scope.searchText"\ - ng-keydown="$mdAutocompleteCtrl.keydown($event)"\ - ng-blur="$mdAutocompleteCtrl.blur()"\ - ng-focus="$mdAutocompleteCtrl.focus()"\ - aria-owns="ul-{{$mdAutocompleteCtrl.id}}"\ - aria-label="{{floatingLabel}}"\ - aria-autocomplete="list"\ - aria-haspopup="true"\ - aria-activedescendant=""\ - aria-expanded="{{!$mdAutocompleteCtrl.hidden}}"/>\ - <div md-autocomplete-parent-scope md-autocomplete-replace>' + leftover + '</div>\ - </md-input-container>'; - } else { - return '\ - <input flex type="search"\ - id="input-{{$mdAutocompleteCtrl.id}}"\ - name="{{inputName}}"\ - ng-if="!floatingLabel"\ - autocomplete="off"\ - ng-required="isRequired"\ - ng-disabled="isDisabled"\ - ng-model="$mdAutocompleteCtrl.scope.searchText"\ - ng-keydown="$mdAutocompleteCtrl.keydown($event)"\ - ng-blur="$mdAutocompleteCtrl.blur()"\ - ng-focus="$mdAutocompleteCtrl.focus()"\ - placeholder="{{placeholder}}"\ - aria-owns="ul-{{$mdAutocompleteCtrl.id}}"\ - aria-label="{{placeholder}}"\ - aria-autocomplete="list"\ - aria-haspopup="true"\ - aria-activedescendant=""\ - aria-expanded="{{!$mdAutocompleteCtrl.hidden}}"/>\ - <button\ - type="button"\ - tabindex="-1"\ - ng-if="$mdAutocompleteCtrl.scope.searchText && !isDisabled"\ - ng-click="$mdAutocompleteCtrl.clear()">\ - <md-icon md-svg-icon="md-close"></md-icon>\ - <span class="md-visually-hidden">Clear</span>\ - </button>\ - '; - } - } - } - }; - - function link (scope, element, attr) { - attr.$observe('disabled', function (value) { scope.isDisabled = value; }); - attr.$observe('required', function (value) { scope.isRequired = value !== null; }); - - $mdUtil.initOptionalProperties(scope, attr, {searchText:null, selectedItem:null} ); - - $mdTheming(element); - } -} -MdAutocomplete.$inject = ["$mdTheming", "$mdUtil"]; - -angular - .module('material.components.autocomplete') - .controller('MdHighlightCtrl', MdHighlightCtrl); - -function MdHighlightCtrl ($scope, $element, $interpolate) { - this.init = init; - - return init(); - - function init (term) { - var unsafeText = $interpolate($element.html())($scope), - text = angular.element('<div>').text(unsafeText).html(), - flags = $element.attr('md-highlight-flags') || '', - watcher = $scope.$watch(term, function (term) { - var regex = getRegExp(term, flags), - html = text.replace(regex, '<span class="highlight">$&</span>'); - $element.html(html); - }); - $element.on('$destroy', function () { watcher(); }); - } - - function sanitize (term) { - if (!term) return term; - return term.replace(/[\\\^\$\*\+\?\.\(\)\|\{\}\[\]]/g, '\\$&'); - } - - function getRegExp (text, flags) { - var str = ''; - if (flags.indexOf('^') >= 1) str += '^'; - str += text; - if (flags.indexOf('$') >= 1) str += '$'; - return new RegExp(sanitize(str), flags.replace(/[\$\^]/g, '')); - } -} -MdHighlightCtrl.$inject = ["$scope", "$element", "$interpolate"]; - -angular - .module('material.components.autocomplete') - .directive('mdHighlightText', MdHighlight); - -/** - * @ngdoc directive - * @name mdHighlightText - * @module material.components.autocomplete - * - * @description - * The `md-highlight-text` directive allows you to specify text that should be highlighted within - * an element. Highlighted text will be wrapped in `<span class="highlight"></span>` which can - * be styled through CSS. Please note that child elements may not be used with this directive. - * - * @param {string} md-highlight-text A model to be searched for - * @param {string=} md-highlight-flags A list of flags (loosely based on JavaScript RexExp flags). - * #### **Supported flags**: - * - `g`: Find all matches within the provided text - * - `i`: Ignore case when searching for matches - * - `$`: Only match if the text ends with the search term - * - `^`: Only match if the text begins with the search term - * - * @usage - * <hljs lang="html"> - * <input placeholder="Enter a search term..." ng-model="searchTerm" type="text" /> - * <ul> - * <li ng-repeat="result in results" md-highlight-text="searchTerm"> - * {{result.text}} - * </li> - * </ul> - * </hljs> - */ - -function MdHighlight () { - return { - terminal: true, - scope: false, - controller: 'MdHighlightCtrl', - link: function (scope, element, attr, ctrl) { - ctrl.init(attr.mdHighlightText); - } - }; -} - -angular - .module('material.components.autocomplete') - .directive('mdAutocompleteListItem', MdAutocompleteListItem); - -function MdAutocompleteListItem ($compile, $mdUtil) { - return { - terminal: true, - link: postLink, - scope: false - }; - function postLink (scope, element, attr) { - var ctrl = scope.$parent.$mdAutocompleteCtrl, - newScope = ctrl.parent.$new(false, ctrl.parent), - itemName = ctrl.scope.$eval(attr.mdAutocompleteListItem); - newScope[itemName] = scope.item; - $compile(element.contents())(newScope); - element.attr({ - role: 'option', - id: 'item_' + $mdUtil.nextUid() - }); - } -} -MdAutocompleteListItem.$inject = ["$compile", "$mdUtil"]; - -angular - .module('material.components.autocomplete') - .directive('mdAutocompleteParentScope', MdAutocompleteParentScope); - -function MdAutocompleteParentScope ($compile, $mdUtil) { - return { - restrict: 'A', - terminal: true, - link: postLink, - scope: false - }; - function postLink (scope, element, attr) { - var ctrl = scope.$parent.$mdAutocompleteCtrl; - $compile(element.contents())(ctrl.parent); - if (attr.hasOwnProperty('mdAutocompleteReplace')) { - element.after(element.contents()); - element.remove(); - } - } -} -MdAutocompleteParentScope.$inject = ["$compile", "$mdUtil"]; - -})(window, window.angular);
\ No newline at end of file diff --git a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.min.css b/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.min.css deleted file mode 100644 index a22d6407..00000000 --- a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.min.css +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * Angular Material Design - * https://github.com/angular/material - * @license MIT - * v0.9.8 - */@-webkit-keyframes md-autocomplete-list-out{0%{-webkit-animation-timing-function:linear;animation-timing-function:linear}50%{opacity:0;height:40px;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{height:0;opacity:0}}@keyframes md-autocomplete-list-out{0%{-webkit-animation-timing-function:linear;animation-timing-function:linear}50%{opacity:0;height:40px;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{height:0;opacity:0}}@-webkit-keyframes md-autocomplete-list-in{0%{opacity:0;height:0;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{opacity:0;height:40px}100%{opacity:1;height:40px}}@keyframes md-autocomplete-list-in{0%{opacity:0;height:0;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{opacity:0;height:40px}100%{opacity:1;height:40px}}md-autocomplete{border-radius:2px;display:block;height:40px;position:relative;overflow:visible;min-width:190px}md-autocomplete[disabled] input{cursor:not-allowed}md-autocomplete[md-floating-label]{padding-bottom:26px;border-radius:0;background:0 0;height:auto}md-autocomplete[md-floating-label] md-input-container{padding-bottom:0}md-autocomplete[md-floating-label] md-autocomplete-wrap{height:auto}md-autocomplete[md-floating-label] button{position:absolute;top:auto;bottom:0;right:0;width:30px;height:30px}md-autocomplete md-autocomplete-wrap{display:block;position:relative;overflow:visible;height:40px}md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate]{position:absolute;bottom:0;left:0;width:100%;height:3px;transition:none}md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate] .md-container{transition:none;top:auto;height:3px}md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate].ng-enter{transition:opacity .15s linear}md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate].ng-enter.ng-enter-active{opacity:1}md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate].ng-leave{transition:opacity .15s linear}md-autocomplete md-autocomplete-wrap md-progress-linear[md-mode=indeterminate].ng-leave.ng-leave-active{opacity:0}md-autocomplete input:not(.md-input){width:100%;box-sizing:border-box;border:none;box-shadow:none;padding:0 15px;font-size:14px;line-height:40px;height:40px;outline:0;background:0 0}md-autocomplete input:not(.md-input)::-ms-clear{display:none}md-autocomplete button{position:relative;line-height:20px;text-align:center;width:30px;height:30px;cursor:pointer;border:none;border-radius:50%;padding:0;font-size:12px;background:0 0;margin:auto 5px}md-autocomplete button:after{content:'';position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%;-webkit-transform:scale(0);transform:scale(0);opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}md-autocomplete button:focus{outline:0}md-autocomplete button:focus:after{-webkit-transform:scale(1);transform:scale(1);opacity:1}md-autocomplete button md-icon{position:absolute;top:50%;left:50%;-webkit-transform:translate3d(-50%,-50%,0) scale(.9);transform:translate3d(-50%,-50%,0) scale(.9)}md-autocomplete button md-icon path{stroke-width:0}md-autocomplete button.ng-enter{-webkit-transform:scale(0);transform:scale(0);transition:-webkit-transform .15s ease-out;transition:transform .15s ease-out}md-autocomplete button.ng-enter.ng-enter-active{-webkit-transform:scale(1);transform:scale(1)}md-autocomplete button.ng-leave{transition:-webkit-transform .15s ease-out;transition:transform .15s ease-out}md-autocomplete button.ng-leave.ng-leave-active{-webkit-transform:scale(0);transform:scale(0)}@media screen and (-ms-high-contrast:active){md-autocomplete input{border:1px solid #fff}md-autocomplete li:focus{color:#fff}}.md-autocomplete-suggestions{position:absolute;margin:0;list-style:none;padding:0;overflow:auto;max-height:225.5px;z-index:100}.md-autocomplete-suggestions li{cursor:pointer;font-size:14px;overflow:hidden;padding:0 15px;line-height:48px;height:48px;transition:background .15s linear;margin:0;white-space:nowrap;text-overflow:ellipsis}.md-autocomplete-suggestions li.ng-enter,.md-autocomplete-suggestions li.ng-hide-remove{transition:none;-webkit-animation:md-autocomplete-list-in .2s;animation:md-autocomplete-list-in .2s}.md-autocomplete-suggestions li.ng-hide-add,.md-autocomplete-suggestions li.ng-leave{transition:none;-webkit-animation:md-autocomplete-list-out .2s;animation:md-autocomplete-list-out .2s}.md-autocomplete-suggestions li:focus{outline:0}@media screen and (-ms-high-contrast:active){.md-autocomplete-suggestions,md-autocomplete{border:1px solid #fff}}
\ No newline at end of file diff --git a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.min.js b/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.min.js deleted file mode 100644 index 93112977..00000000 --- a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/autocomplete.min.js +++ /dev/null @@ -1,7 +0,0 @@ -/*! - * Angular Material Design - * https://github.com/angular/material - * @license MIT - * v0.9.8 - */ -!function(e,t,n){"use strict";function o(e,n,o,i,l,a,r,m,c){function s(){f(),l(function(){x(),g(),h()})}function p(){function e(){var e=z.ul.getBoundingClientRect(),n={};e.right>o.right-d&&(n.left=t.right-e.width+"px"),z.$.ul.css(n)}if(!z)return l(p,0,!1);var t=z.wrap.getBoundingClientRect(),n=z.snap.getBoundingClientRect(),o=z.root.getBoundingClientRect(),i=n.bottom-o.top,a=o.bottom-n.top,r=t.left-o.left,m=t.width,c={left:r+"px",minWidth:m+"px",maxWidth:Math.max(t.right-o.left,o.right-t.left)-d+"px"};i>a&&o.height-t.bottom-d<u?(c.top="auto",c.bottom=a+"px",c.maxHeight=Math.min(u,t.top-o.top-d)+"px"):(c.top=i+"px",c.bottom="auto",c.maxHeight=Math.min(u,o.bottom-t.bottom-d)+"px"),z.$.ul.css(c),l(e,0,!1)}function h(){z.$.root.length&&(a(z.$.ul),z.$.ul.detach(),z.$.root.append(z.$.ul),m.pin&&m.pin(z.$.ul,c))}function g(){e.autofocus&&z.input.focus()}function f(){var n=parseInt(e.delay,10)||0;e.$watch("searchText",n?o.debounce(E,n):E),T(A),e.$watch("selectedItem",b),e.$watch("$mdAutocompleteCtrl.hidden",function(e,t){!e&&t&&p()}),t.element(r).on("resize",p),e.$on("$destroy",$)}function $(){z.$.ul.remove()}function x(){z={main:n[0],ul:n.find("ul")[0],input:n.find("input")[0],wrap:n.find("md-autocomplete-wrap")[0],root:document.body},z.li=z.ul.getElementsByTagName("li"),z.snap=C(),z.$=v(z)}function C(){for(var e=n;e.length;e=e.parent())if(t.isDefined(e.attr("md-autocomplete-snap")))return e[0];return z.wrap}function v(e){var n={};for(var o in e)n[o]=t.element(e[o]);return n}function A(t,n){t&&(e.searchText=D(t)),e.itemChange&&t!==n&&e.itemChange(k(t))}function b(e,t){for(var n=0;n<J.length;++n)J[n](e,t)}function T(e){-1==J.indexOf(e)&&J.push(e)}function w(e){var t=J.indexOf(e);-1!=t&&J.splice(t,1)}function E(t,n){K.index=O(),t!==n&&t!==D(e.selectedItem)&&(e.selectedItem=null,e.textChange&&t!==n&&e.textChange(k(e.selectedItem)),S()?j():(K.loading=!1,K.matches=[],K.hidden=R(),W()))}function y(){Q=!1,G||(K.hidden=!0)}function I(){Q=!0,t.isString(e.searchText)||(e.searchText=""),e.minLength>0||(K.hidden=R(),K.hidden||j())}function L(e){switch(e.keyCode){case i.KEY_CODE.DOWN_ARROW:if(K.loading)return;e.preventDefault(),K.index=Math.min(K.index+1,K.matches.length-1),B(),W();break;case i.KEY_CODE.UP_ARROW:if(K.loading)return;e.preventDefault(),K.index=K.index<0?K.matches.length-1:Math.max(0,K.index-1),B(),W();break;case i.KEY_CODE.TAB:case i.KEY_CODE.ENTER:if(K.hidden||K.loading||K.index<0||K.matches.length<1)return;e.preventDefault(),U(K.index);break;case i.KEY_CODE.ESCAPE:K.matches=[],K.hidden=!0,K.index=O()}}function M(){return t.isNumber(e.minLength)?e.minLength:1}function D(t){return t&&e.itemText?e.itemText(k(t)):t}function k(e){if(e){var t={};return K.itemName&&(t[K.itemName]=e),t}}function O(){return e.autoselect?0:-1}function R(){return S()?void 0:!0}function N(){return D(K.matches[K.index])}function S(){return e.searchText&&e.searchText.length>=M()}function U(t){e.selectedItem=K.matches[t],K.hidden=!0,K.index=0,K.matches=[],l(function(){z.$.input.controller("ngModel").$setViewValue(D(e.selectedItem)||e.searchText),K.hidden=!0})}function H(){e.searchText="",U(-1);var t=document.createEvent("CustomEvent");t.initCustomEvent("input",!0,!0,{value:e.searchText}),z.input.dispatchEvent(t),z.input.focus()}function _(n){function o(t){F[l]=t,n===e.searchText&&(K.loading=!1,V=null,K.matches=t,K.hidden=R(),W(),p())}var i=e.$parent.$eval(Y),l=n.toLowerCase();t.isArray(i)?o(i):(K.loading=!0,i.success&&i.success(o),i.then&&i.then(o),i.error&&i.error(function(){K.loading=!1}))}function W(){K.messages=[q(),N()]}function q(){if(X===K.matches.length)return"";switch(X=K.matches.length,K.matches.length){case 0:return"There are no matches available.";case 1:return"There is 1 match available.";default:return"There are "+K.matches.length+" matches available."}}function B(){if(z.li[K.index]){var e=z.li[K.index],t=e.offsetTop,n=t+e.offsetHeight,o=z.ul.clientHeight;t<z.ul.scrollTop?z.ul.scrollTop=t:n>z.ul.scrollTop+o&&(z.ul.scrollTop=n-o)}}function j(){var t=e.searchText,n=t.toLowerCase();V&&V.cancel&&(V.cancel(),V=null),!e.noCache&&F[n]?(K.matches=F[n],W()):_(t),Q&&(K.hidden=R())}var K=this,P=e.itemsExpr.split(/ in /i),Y=P[1],z=null,V=null,F={},G=!1,J=[],Q=!1,X=0;return K.scope=e,K.parent=e.$parent,K.itemName=P[0],K.matches=[],K.loading=!1,K.hidden=!0,K.index=null,K.messages=[],K.id=o.nextUid(),K.keydown=L,K.blur=y,K.focus=I,K.clear=H,K.select=U,K.getCurrentDisplayValue=N,K.registerSelectedItemWatcher=T,K.unregisterSelectedItemWatcher=w,K.listEnter=function(){G=!0},K.listLeave=function(){G=!1,Q||(K.hidden=!0)},K.mouseUp=function(){z.input.focus()},s()}function i(e,t){function n(n,o,i){i.$observe("disabled",function(e){n.isDisabled=e}),i.$observe("required",function(e){n.isRequired=null!==e}),t.initOptionalProperties(n,i,{searchText:null,selectedItem:null}),e(o)}return{controller:"MdAutocompleteCtrl",controllerAs:"$mdAutocompleteCtrl",link:n,scope:{inputName:"@mdInputName",inputMinlength:"@mdInputMinlength",inputMaxlength:"@mdInputMaxlength",searchText:"=?mdSearchText",selectedItem:"=?mdSelectedItem",itemsExpr:"@mdItems",itemText:"&mdItemText",placeholder:"@placeholder",noCache:"=?mdNoCache",itemChange:"&?mdSelectedItemChange",textChange:"&?mdSearchTextChange",minLength:"=?mdMinLength",delay:"=?mdDelay",autofocus:"=?mdAutofocus",floatingLabel:"@?mdFloatingLabel",autoselect:"=?mdAutoselect",menuClass:"@?mdMenuClass"},template:function(e,t){function n(){var t=e.find("md-item-template").remove(),n=t.length?t.html():e.html();return t.length||e.empty(),n}function o(){var t=e.find("md-not-found").remove(),n=t.length?t.html():"";return n?'<li ng-if="!$mdAutocompleteCtrl.matches.length && !$mdAutocompleteCtrl.loading && !$mdAutocompleteCtrl.hidden" ng-hide="$mdAutocompleteCtrl.hidden" md-autocomplete-parent-scope>'+n+"</li>":""}function i(){return t.mdFloatingLabel?' <md-input-container flex ng-if="floatingLabel"> <label>{{floatingLabel}}</label> <input type="search" id="fl-input-{{$mdAutocompleteCtrl.id}}" name="{{inputName}}" autocomplete="off" ng-required="isRequired" ng-minlength="inputMinlength" ng-maxlength="inputMaxlength" ng-disabled="isDisabled" ng-model="$mdAutocompleteCtrl.scope.searchText" ng-keydown="$mdAutocompleteCtrl.keydown($event)" ng-blur="$mdAutocompleteCtrl.blur()" ng-focus="$mdAutocompleteCtrl.focus()" aria-owns="ul-{{$mdAutocompleteCtrl.id}}" aria-label="{{floatingLabel}}" aria-autocomplete="list" aria-haspopup="true" aria-activedescendant="" aria-expanded="{{!$mdAutocompleteCtrl.hidden}}"/> <div md-autocomplete-parent-scope md-autocomplete-replace>'+r+"</div> </md-input-container>":' <input flex type="search" id="input-{{$mdAutocompleteCtrl.id}}" name="{{inputName}}" ng-if="!floatingLabel" autocomplete="off" ng-required="isRequired" ng-disabled="isDisabled" ng-model="$mdAutocompleteCtrl.scope.searchText" ng-keydown="$mdAutocompleteCtrl.keydown($event)" ng-blur="$mdAutocompleteCtrl.blur()" ng-focus="$mdAutocompleteCtrl.focus()" placeholder="{{placeholder}}" aria-owns="ul-{{$mdAutocompleteCtrl.id}}" aria-label="{{placeholder}}" aria-autocomplete="list" aria-haspopup="true" aria-activedescendant="" aria-expanded="{{!$mdAutocompleteCtrl.hidden}}"/> <button type="button" tabindex="-1" ng-if="$mdAutocompleteCtrl.scope.searchText && !isDisabled" ng-click="$mdAutocompleteCtrl.clear()"> <md-icon md-svg-icon="md-close"></md-icon> <span class="md-visually-hidden">Clear</span> </button> '}var l=o(),a=n(),r=e.html();return' <md-autocomplete-wrap layout="row" ng-class="{ \'md-whiteframe-z1\': !floatingLabel }" role="listbox"> '+i()+' <md-progress-linear ng-if="$mdAutocompleteCtrl.loading" md-mode="indeterminate"></md-progress-linear> <ul role="presentation" class="md-autocomplete-suggestions md-whiteframe-z1 {{menuClass || \'\'}}" id="ul-{{$mdAutocompleteCtrl.id}}" ng-mouseenter="$mdAutocompleteCtrl.listEnter()" ng-mouseleave="$mdAutocompleteCtrl.listLeave()" ng-mouseup="$mdAutocompleteCtrl.mouseUp()"> <li ng-repeat="(index, item) in $mdAutocompleteCtrl.matches" ng-class="{ selected: index === $mdAutocompleteCtrl.index }" ng-hide="$mdAutocompleteCtrl.hidden" ng-click="$mdAutocompleteCtrl.select(index)" md-autocomplete-list-item="$mdAutocompleteCtrl.itemName"> '+a+" </li> "+l+' </ul> </md-autocomplete-wrap> <aria-status class="md-visually-hidden" role="status" aria-live="assertive"> <p ng-repeat="message in $mdAutocompleteCtrl.messages" ng-if="message">{{message}}</p> </aria-status>'}}}function l(e,n,o){function i(i){var l=o(n.html())(e),r=t.element("<div>").text(l).html(),m=n.attr("md-highlight-flags")||"",c=e.$watch(i,function(e){var t=a(e,m),o=r.replace(t,'<span class="highlight">$&</span>');n.html(o)});n.on("$destroy",function(){c()})}function l(e){return e?e.replace(/[\\\^\$\*\+\?\.\(\)\|\{\}\[\]]/g,"\\$&"):e}function a(e,t){var n="";return t.indexOf("^")>=1&&(n+="^"),n+=e,t.indexOf("$")>=1&&(n+="$"),new RegExp(l(n),t.replace(/[\$\^]/g,""))}return this.init=i,i()}function a(){return{terminal:!0,scope:!1,controller:"MdHighlightCtrl",link:function(e,t,n,o){o.init(n.mdHighlightText)}}}function r(e,t){function n(n,o,i){var l=n.$parent.$mdAutocompleteCtrl,a=l.parent.$new(!1,l.parent),r=l.scope.$eval(i.mdAutocompleteListItem);a[r]=n.item,e(o.contents())(a),o.attr({role:"option",id:"item_"+t.nextUid()})}return{terminal:!0,link:n,scope:!1}}function m(e,t){function n(t,n,o){var i=t.$parent.$mdAutocompleteCtrl;e(n.contents())(i.parent),o.hasOwnProperty("mdAutocompleteReplace")&&(n.after(n.contents()),n.remove())}return{restrict:"A",terminal:!0,link:n,scope:!1}}t.module("material.components.autocomplete",["material.core","material.components.icon"]),t.module("material.components.autocomplete").controller("MdAutocompleteCtrl",o);var c=41,u=5.5*c,d=8;o.$inject=["$scope","$element","$mdUtil","$mdConstant","$timeout","$mdTheming","$window","$animate","$rootElement"],t.module("material.components.autocomplete").directive("mdAutocomplete",i),i.$inject=["$mdTheming","$mdUtil"],t.module("material.components.autocomplete").controller("MdHighlightCtrl",l),l.$inject=["$scope","$element","$interpolate"],t.module("material.components.autocomplete").directive("mdHighlightText",a),t.module("material.components.autocomplete").directive("mdAutocompleteListItem",r),r.$inject=["$compile","$mdUtil"],t.module("material.components.autocomplete").directive("mdAutocompleteParentScope",m),m.$inject=["$compile","$mdUtil"]}(window,window.angular);
\ No newline at end of file diff --git a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/bower.json b/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/bower.json deleted file mode 100644 index 59be5c4b..00000000 --- a/ecomp-portal-FE/client/bower_components/angular-material/modules/js/autocomplete/bower.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "name": "angular-material-autocomplete", - "version": "0.9.8", - "dependencies": { - "angular-material-core": "0.9.8", - "angular-material-icon": "0.9.8" - } -}
\ No newline at end of file |