mdb-ui-kit/js/dist/autofill.js.map
Kevin Ross e9f523476d dist
2015-12-02 15:03:02 -06:00

1 line
5.6 KiB
Plaintext

{"version":3,"sources":["../src/autofill.js"],"names":[],"mappings":"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","file":"autofill.js","sourcesContent":["//import Util from './util'\n\nconst Autofill = (($) => {\n\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n const NAME = 'autofill'\n const DATA_KEY = `mdb.${NAME}`\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n const Default = {}\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n class Autofill {\n\n constructor(element, config) {\n this.element = element\n this.config = $.extend({}, Default, config)\n\n this._watchLoading()\n this._attachEventHandlers()\n }\n\n dispose() {\n $.removeData(this.element, DATA_KEY)\n this.element = null\n this.config = null\n }\n\n // ------------------------------------------------------------------------\n // private\n\n _watchLoading() {\n // After 10 seconds we are quite sure all the needed inputs are autofilled then we can stop checking them\n setTimeout(() => {\n clearInterval(this._onLoading)\n }, 10000)\n }\n\n // This part of code will detect autofill when the page is loading (username and password inputs for example)\n _onLoading() {\n setInterval(() => {\n $('input[type!=checkbox]').each((index, element) => {\n let $element = $(element)\n if ($element.val() && $element.val() !== $element.attr('value')) {\n $element.triggerStart('change')\n }\n })\n }, 100)\n }\n\n _attachEventHandlers() {\n // Listen on inputs of the focused form\n // (because user can select from the autofill dropdown only when the input has focus)\n let focused = null\n $(document)\n .on('focus', 'input', (event) => {\n let $inputs = $(event.currentTarget).closest('form').find('input').not('[type=file]')\n focused = setInterval(() => {\n $inputs.each((index, element) => {\n let $element = $(element)\n if ($element.val() !== $element.attr('value')) {\n $element.triggerStart('change')\n }\n })\n }, 100)\n })\n .on('blur', '.form-group input', () => {\n clearInterval(focused)\n })\n }\n\n // ------------------------------------------------------------------------\n // static\n static _jQueryInterface(config) {\n return this.each(() => {\n let $element = $(this)\n let data = $element.data(DATA_KEY)\n\n if (!data) {\n data = new Autofill(this, config)\n $element.data(DATA_KEY, data)\n }\n })\n }\n }\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n $.fn[NAME] = Autofill._jQueryInterface\n $.fn[NAME].Constructor = Autofill\n $.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Autofill._jQueryInterface\n }\n\n return Autofill\n\n})(jQuery)\n\nexport default Autofill\n"]}