| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 | 
							- /**
 
-  * --------------------------------------------
 
-  * AdminLTE NavbarSearch.js
 
-  * License MIT
 
-  * --------------------------------------------
 
-  */
 
- import $ from 'jquery'
 
- /**
 
-  * Constants
 
-  * ====================================================
 
-  */
 
- const NAME = 'NavbarSearch'
 
- const DATA_KEY = 'lte.navbar-search'
 
- const JQUERY_NO_CONFLICT = $.fn[NAME]
 
- const SELECTOR_TOGGLE_BUTTON = '[data-widget="navbar-search"]'
 
- const SELECTOR_SEARCH_BLOCK = '.navbar-search-block'
 
- const SELECTOR_SEARCH_INPUT = '.form-control'
 
- const CLASS_NAME_OPEN = 'navbar-search-open'
 
- const Default = {
 
-   resetOnClose: true,
 
-   target: SELECTOR_SEARCH_BLOCK
 
- }
 
- /**
 
-  * Class Definition
 
-  * ====================================================
 
-  */
 
- class NavbarSearch {
 
-   constructor(_element, _options) {
 
-     this._element = _element
 
-     this._config = $.extend({}, Default, _options)
 
-   }
 
-   // Public
 
-   open() {
 
-     $(this._config.target).css('display', 'flex').hide().fadeIn().addClass(CLASS_NAME_OPEN)
 
-     $(`${this._config.target} ${SELECTOR_SEARCH_INPUT}`).focus()
 
-   }
 
-   close() {
 
-     $(this._config.target).fadeOut().removeClass(CLASS_NAME_OPEN)
 
-     if (this._config.resetOnClose) {
 
-       $(`${this._config.target} ${SELECTOR_SEARCH_INPUT}`).val('')
 
-     }
 
-   }
 
-   toggle() {
 
-     if ($(this._config.target).hasClass(CLASS_NAME_OPEN)) {
 
-       this.close()
 
-     } else {
 
-       this.open()
 
-     }
 
-   }
 
-   // Static
 
-   static _jQueryInterface(options) {
 
-     return this.each(function () {
 
-       let data = $(this).data(DATA_KEY)
 
-       const _options = $.extend({}, Default, $(this).data())
 
-       if (!data) {
 
-         data = new NavbarSearch(this, _options)
 
-         $(this).data(DATA_KEY, data)
 
-       }
 
-       if (!/toggle|close|open/.test(options)) {
 
-         throw new Error(`Undefined method ${options}`)
 
-       }
 
-       data[options]()
 
-     })
 
-   }
 
- }
 
- /**
 
-  * Data API
 
-  * ====================================================
 
-  */
 
- $(document).on('click', SELECTOR_TOGGLE_BUTTON, event => {
 
-   event.preventDefault()
 
-   let button = $(event.currentTarget)
 
-   if (button.data('widget') !== 'navbar-search') {
 
-     button = button.closest(SELECTOR_TOGGLE_BUTTON)
 
-   }
 
-   NavbarSearch._jQueryInterface.call(button, 'toggle')
 
- })
 
- /**
 
-  * jQuery API
 
-  * ====================================================
 
-  */
 
- $.fn[NAME] = NavbarSearch._jQueryInterface
 
- $.fn[NAME].Constructor = NavbarSearch
 
- $.fn[NAME].noConflict = function () {
 
-   $.fn[NAME] = JQUERY_NO_CONFLICT
 
-   return NavbarSearch._jQueryInterface
 
- }
 
- export default NavbarSearch
 
 
  |