From 109277978739609110543af7c70cab9ee7d22129 Mon Sep 17 00:00:00 2001 From: Casey Holzer Date: Thu, 16 Apr 2020 17:45:06 -0600 Subject: [PATCH] release v1.13.13 --- CHANGELOG.md | 16 + README.md | 8 +- dist/css/bootstrap-select.css | 4 +- dist/css/bootstrap-select.min.css | 4 +- dist/js/bootstrap-select.js | 294 ++++++++++-------- dist/js/bootstrap-select.js.map | 2 +- dist/js/bootstrap-select.min.js | 6 +- dist/js/bootstrap-select.min.js.map | 2 +- dist/js/i18n/defaults-am_ET.js | 4 +- dist/js/i18n/defaults-am_ET.min.js | 4 +- dist/js/i18n/defaults-ar_AR.js | 4 +- dist/js/i18n/defaults-ar_AR.min.js | 4 +- dist/js/i18n/defaults-bg_BG.js | 4 +- dist/js/i18n/defaults-bg_BG.min.js | 4 +- dist/js/i18n/defaults-cs_CZ.js | 4 +- dist/js/i18n/defaults-cs_CZ.min.js | 4 +- dist/js/i18n/defaults-da_DK.js | 4 +- dist/js/i18n/defaults-da_DK.min.js | 4 +- dist/js/i18n/defaults-de_DE.js | 4 +- dist/js/i18n/defaults-de_DE.min.js | 4 +- dist/js/i18n/defaults-en_US.js | 4 +- dist/js/i18n/defaults-en_US.min.js | 4 +- dist/js/i18n/defaults-es_CL.js | 4 +- dist/js/i18n/defaults-es_CL.min.js | 4 +- dist/js/i18n/defaults-es_ES.js | 4 +- dist/js/i18n/defaults-es_ES.min.js | 4 +- dist/js/i18n/defaults-et_EE.js | 4 +- dist/js/i18n/defaults-et_EE.min.js | 4 +- dist/js/i18n/defaults-eu.js | 4 +- dist/js/i18n/defaults-eu.min.js | 4 +- dist/js/i18n/defaults-fa_IR.js | 4 +- dist/js/i18n/defaults-fa_IR.min.js | 4 +- dist/js/i18n/defaults-fi_FI.js | 4 +- dist/js/i18n/defaults-fi_FI.min.js | 4 +- dist/js/i18n/defaults-fr_FR.js | 4 +- dist/js/i18n/defaults-fr_FR.min.js | 4 +- dist/js/i18n/defaults-hr_HR.js | 4 +- dist/js/i18n/defaults-hr_HR.min.js | 4 +- dist/js/i18n/defaults-hu_HU.js | 4 +- dist/js/i18n/defaults-hu_HU.min.js | 4 +- dist/js/i18n/defaults-id_ID.js | 4 +- dist/js/i18n/defaults-id_ID.min.js | 4 +- dist/js/i18n/defaults-it_IT.js | 4 +- dist/js/i18n/defaults-it_IT.min.js | 4 +- dist/js/i18n/defaults-ja_JP.js | 4 +- dist/js/i18n/defaults-ja_JP.min.js | 4 +- dist/js/i18n/defaults-kh_KM.js | 4 +- dist/js/i18n/defaults-kh_KM.min.js | 4 +- dist/js/i18n/defaults-ko_KR.js | 4 +- dist/js/i18n/defaults-ko_KR.min.js | 4 +- dist/js/i18n/defaults-lt_LT.js | 4 +- dist/js/i18n/defaults-lt_LT.min.js | 4 +- dist/js/i18n/defaults-lv_LV.js | 4 +- dist/js/i18n/defaults-lv_LV.min.js | 4 +- dist/js/i18n/defaults-nb_NO.js | 4 +- dist/js/i18n/defaults-nb_NO.min.js | 4 +- dist/js/i18n/defaults-nl_NL.js | 4 +- dist/js/i18n/defaults-nl_NL.min.js | 4 +- dist/js/i18n/defaults-pl_PL.js | 4 +- dist/js/i18n/defaults-pl_PL.min.js | 4 +- dist/js/i18n/defaults-pt_BR.js | 4 +- dist/js/i18n/defaults-pt_BR.min.js | 4 +- dist/js/i18n/defaults-pt_PT.js | 4 +- dist/js/i18n/defaults-pt_PT.min.js | 4 +- dist/js/i18n/defaults-ro_RO.js | 4 +- dist/js/i18n/defaults-ro_RO.min.js | 4 +- dist/js/i18n/defaults-ru_RU.js | 4 +- dist/js/i18n/defaults-ru_RU.min.js | 4 +- dist/js/i18n/defaults-sk_SK.js | 4 +- dist/js/i18n/defaults-sk_SK.min.js | 4 +- dist/js/i18n/defaults-sl_SI.js | 4 +- dist/js/i18n/defaults-sl_SI.min.js | 4 +- dist/js/i18n/defaults-sv_SE.js | 4 +- dist/js/i18n/defaults-sv_SE.min.js | 4 +- dist/js/i18n/defaults-tr_TR.js | 4 +- dist/js/i18n/defaults-tr_TR.min.js | 4 +- dist/js/i18n/defaults-ua_UA.js | 4 +- dist/js/i18n/defaults-ua_UA.min.js | 4 +- dist/js/i18n/defaults-vi_VN.js | 4 +- dist/js/i18n/defaults-vi_VN.min.js | 4 +- dist/js/i18n/defaults-zh_CN.js | 4 +- dist/js/i18n/defaults-zh_CN.min.js | 4 +- dist/js/i18n/defaults-zh_TW.js | 4 +- dist/js/i18n/defaults-zh_TW.min.js | 4 +- docs/docs/dist/css/bootstrap-select.css | 4 +- docs/docs/dist/css/bootstrap-select.min.css | 4 +- docs/docs/dist/js/bootstrap-select.js | 294 ++++++++++-------- docs/docs/dist/js/bootstrap-select.js.map | 2 +- docs/docs/dist/js/bootstrap-select.min.js | 6 +- docs/docs/dist/js/bootstrap-select.min.js.map | 2 +- docs/docs/dist/js/i18n/defaults-am_ET.js | 4 +- docs/docs/dist/js/i18n/defaults-am_ET.min.js | 4 +- docs/docs/dist/js/i18n/defaults-ar_AR.js | 4 +- docs/docs/dist/js/i18n/defaults-ar_AR.min.js | 4 +- docs/docs/dist/js/i18n/defaults-bg_BG.js | 4 +- docs/docs/dist/js/i18n/defaults-bg_BG.min.js | 4 +- docs/docs/dist/js/i18n/defaults-cs_CZ.js | 4 +- docs/docs/dist/js/i18n/defaults-cs_CZ.min.js | 4 +- docs/docs/dist/js/i18n/defaults-da_DK.js | 4 +- docs/docs/dist/js/i18n/defaults-da_DK.min.js | 4 +- docs/docs/dist/js/i18n/defaults-de_DE.js | 4 +- docs/docs/dist/js/i18n/defaults-de_DE.min.js | 4 +- docs/docs/dist/js/i18n/defaults-en_US.js | 4 +- docs/docs/dist/js/i18n/defaults-en_US.min.js | 4 +- docs/docs/dist/js/i18n/defaults-es_CL.js | 4 +- docs/docs/dist/js/i18n/defaults-es_CL.min.js | 4 +- docs/docs/dist/js/i18n/defaults-es_ES.js | 4 +- docs/docs/dist/js/i18n/defaults-es_ES.min.js | 4 +- docs/docs/dist/js/i18n/defaults-et_EE.js | 4 +- docs/docs/dist/js/i18n/defaults-et_EE.min.js | 4 +- docs/docs/dist/js/i18n/defaults-eu.js | 4 +- docs/docs/dist/js/i18n/defaults-eu.min.js | 4 +- docs/docs/dist/js/i18n/defaults-fa_IR.js | 4 +- docs/docs/dist/js/i18n/defaults-fa_IR.min.js | 4 +- docs/docs/dist/js/i18n/defaults-fi_FI.js | 4 +- docs/docs/dist/js/i18n/defaults-fi_FI.min.js | 4 +- docs/docs/dist/js/i18n/defaults-fr_FR.js | 4 +- docs/docs/dist/js/i18n/defaults-fr_FR.min.js | 4 +- docs/docs/dist/js/i18n/defaults-hr_HR.js | 4 +- docs/docs/dist/js/i18n/defaults-hr_HR.min.js | 4 +- docs/docs/dist/js/i18n/defaults-hu_HU.js | 4 +- docs/docs/dist/js/i18n/defaults-hu_HU.min.js | 4 +- docs/docs/dist/js/i18n/defaults-id_ID.js | 4 +- docs/docs/dist/js/i18n/defaults-id_ID.min.js | 4 +- docs/docs/dist/js/i18n/defaults-it_IT.js | 4 +- docs/docs/dist/js/i18n/defaults-it_IT.min.js | 4 +- docs/docs/dist/js/i18n/defaults-ja_JP.js | 4 +- docs/docs/dist/js/i18n/defaults-ja_JP.min.js | 4 +- docs/docs/dist/js/i18n/defaults-kh_KM.js | 4 +- docs/docs/dist/js/i18n/defaults-kh_KM.min.js | 4 +- docs/docs/dist/js/i18n/defaults-ko_KR.js | 4 +- docs/docs/dist/js/i18n/defaults-ko_KR.min.js | 4 +- docs/docs/dist/js/i18n/defaults-lt_LT.js | 4 +- docs/docs/dist/js/i18n/defaults-lt_LT.min.js | 4 +- docs/docs/dist/js/i18n/defaults-lv_LV.js | 4 +- docs/docs/dist/js/i18n/defaults-lv_LV.min.js | 4 +- docs/docs/dist/js/i18n/defaults-nb_NO.js | 4 +- docs/docs/dist/js/i18n/defaults-nb_NO.min.js | 4 +- docs/docs/dist/js/i18n/defaults-nl_NL.js | 4 +- docs/docs/dist/js/i18n/defaults-nl_NL.min.js | 4 +- docs/docs/dist/js/i18n/defaults-pl_PL.js | 4 +- docs/docs/dist/js/i18n/defaults-pl_PL.min.js | 4 +- docs/docs/dist/js/i18n/defaults-pt_BR.js | 4 +- docs/docs/dist/js/i18n/defaults-pt_BR.min.js | 4 +- docs/docs/dist/js/i18n/defaults-pt_PT.js | 4 +- docs/docs/dist/js/i18n/defaults-pt_PT.min.js | 4 +- docs/docs/dist/js/i18n/defaults-ro_RO.js | 4 +- docs/docs/dist/js/i18n/defaults-ro_RO.min.js | 4 +- docs/docs/dist/js/i18n/defaults-ru_RU.js | 4 +- docs/docs/dist/js/i18n/defaults-ru_RU.min.js | 4 +- docs/docs/dist/js/i18n/defaults-sk_SK.js | 4 +- docs/docs/dist/js/i18n/defaults-sk_SK.min.js | 4 +- docs/docs/dist/js/i18n/defaults-sl_SI.js | 4 +- docs/docs/dist/js/i18n/defaults-sl_SI.min.js | 4 +- docs/docs/dist/js/i18n/defaults-sv_SE.js | 4 +- docs/docs/dist/js/i18n/defaults-sv_SE.min.js | 4 +- docs/docs/dist/js/i18n/defaults-tr_TR.js | 4 +- docs/docs/dist/js/i18n/defaults-tr_TR.min.js | 4 +- docs/docs/dist/js/i18n/defaults-ua_UA.js | 4 +- docs/docs/dist/js/i18n/defaults-ua_UA.min.js | 4 +- docs/docs/dist/js/i18n/defaults-vi_VN.js | 4 +- docs/docs/dist/js/i18n/defaults-vi_VN.min.js | 4 +- docs/docs/dist/js/i18n/defaults-zh_CN.js | 4 +- docs/docs/dist/js/i18n/defaults-zh_CN.min.js | 4 +- docs/docs/dist/js/i18n/defaults-zh_TW.js | 4 +- docs/docs/dist/js/i18n/defaults-zh_TW.min.js | 4 +- docs/docs/index.md | 8 +- docs/mkdocs.yml | 2 +- js/bootstrap-select.js | 2 +- nuget/bootstrap-select.nuspec | 2 +- package.json | 2 +- 171 files changed, 676 insertions(+), 596 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f2ca75b37..9711445ce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ +# v1.13.13 (2020-04-16) +### Bug Fixes +- [#2339]: data-size="false" not working +- [#2337]: calling deselectAll/selectAll immediately after page load throws error +- [#2320]: Dropup becomes a dropdown upon search +- [#2308]: Keyboard control over Bootstrap Dropdown components stops working +- [#2272]: Class bs-placeholder is no longer set on "default" values in 1.13.10 + +[#2339]: https://github.com/snapappointments/bootstrap-select/issues/2339 +[#2337]: https://github.com/snapappointments/bootstrap-select/issues/2337 +[#2320]: https://github.com/snapappointments/bootstrap-select/issues/2320 +[#2308]: https://github.com/snapappointments/bootstrap-select/issues/2308 +[#2272]: https://github.com/snapappointments/bootstrap-select/issues/2272 + +------------------- + # v1.13.12 (2019-10-10) ### Bug Fixes - [#2176]: allow was-validated class to work on select elements without selectpicker class diff --git a/README.md b/README.md index 840796b78..f50dd855f 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ Bootstrap-select requires jQuery v1.9.1+, Bootstrap’s dropdown.js component, a Several quick start options are available: -- [Download the latest release.](https://github.com/snapappointments/bootstrap-select/archive/v1.13.12.zip) +- [Download the latest release.](https://github.com/snapappointments/bootstrap-select/archive/v1.13.13.zip) - Clone the repo: `git clone https://github.com/snapappointments/bootstrap-select.git` - Install with [npm](https://www.npmjs.com/package/bootstrap-select): `npm install bootstrap-select` - Install with [yarn](https://yarn.pm/bootstrap-select): `yarn add bootstrap-select` @@ -57,13 +57,13 @@ Several quick start options are available: ```html - + - + - + ``` > The CDN is updated after the release is made public, which means that there is a delay between the publishing of a release and its availability on the CDN. diff --git a/dist/css/bootstrap-select.css b/dist/css/bootstrap-select.css index e62998e10..9a2538045 100644 --- a/dist/css/bootstrap-select.css +++ b/dist/css/bootstrap-select.css @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/css/bootstrap-select.min.css b/dist/css/bootstrap-select.min.css index f71b7fe9e..8c33ba97c 100644 --- a/dist/css/bootstrap-select.min.css +++ b/dist/css/bootstrap-select.min.css @@ -1,6 +1,6 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */@-webkit-keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}@-o-keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}@keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}.bootstrap-select>select.bs-select-hidden,select.bs-select-hidden,select.selectpicker{display:none!important}.bootstrap-select{width:220px\0;vertical-align:middle}.bootstrap-select>.dropdown-toggle{position:relative;width:100%;text-align:right;white-space:nowrap;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.bootstrap-select>.dropdown-toggle:after{margin-top:-1px}.bootstrap-select>.dropdown-toggle.bs-placeholder,.bootstrap-select>.dropdown-toggle.bs-placeholder:active,.bootstrap-select>.dropdown-toggle.bs-placeholder:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder:hover{color:#999}.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:hover{color:rgba(255,255,255,.5)}.bootstrap-select>select{position:absolute!important;bottom:0;left:50%;display:block!important;width:.5px!important;height:100%!important;padding:0!important;opacity:0!important;border:none;z-index:0!important}.bootstrap-select>select.mobile-device{top:0;left:0;display:block!important;width:100%!important;z-index:2!important}.bootstrap-select.is-invalid .dropdown-toggle,.error .bootstrap-select .dropdown-toggle,.has-error .bootstrap-select .dropdown-toggle,.was-validated .bootstrap-select select:invalid+.dropdown-toggle{border-color:#b94a48}.bootstrap-select.is-valid .dropdown-toggle,.was-validated .bootstrap-select select:valid+.dropdown-toggle{border-color:#28a745}.bootstrap-select.fit-width{width:auto!important}.bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn){width:220px}.bootstrap-select .dropdown-toggle:focus,.bootstrap-select>select.mobile-device:focus+.dropdown-toggle{outline:thin dotted #333!important;outline:5px auto -webkit-focus-ring-color!important;outline-offset:-2px}.bootstrap-select.form-control{margin-bottom:0;padding:0;border:none;height:auto}:not(.input-group)>.bootstrap-select.form-control:not([class*=col-]){width:100%}.bootstrap-select.form-control.input-group-btn{float:none;z-index:auto}.form-inline .bootstrap-select,.form-inline .bootstrap-select.form-control:not([class*=col-]){width:auto}.bootstrap-select:not(.input-group-btn),.bootstrap-select[class*=col-]{float:none;display:inline-block;margin-left:0}.bootstrap-select.dropdown-menu-right,.bootstrap-select[class*=col-].dropdown-menu-right,.row .bootstrap-select[class*=col-].dropdown-menu-right{float:right}.form-group .bootstrap-select,.form-horizontal .bootstrap-select,.form-inline .bootstrap-select{margin-bottom:0}.form-group-lg .bootstrap-select.form-control,.form-group-sm .bootstrap-select.form-control{padding:0}.form-group-lg .bootstrap-select.form-control .dropdown-toggle,.form-group-sm .bootstrap-select.form-control .dropdown-toggle{height:100%;font-size:inherit;line-height:inherit;border-radius:inherit}.bootstrap-select.form-control-lg .dropdown-toggle,.bootstrap-select.form-control-sm .dropdown-toggle{font-size:inherit;line-height:inherit;border-radius:inherit}.bootstrap-select.form-control-sm .dropdown-toggle{padding:.25rem .5rem}.bootstrap-select.form-control-lg .dropdown-toggle{padding:.5rem 1rem}.form-inline .bootstrap-select .form-control{width:100%}.bootstrap-select.disabled,.bootstrap-select>.disabled{cursor:not-allowed}.bootstrap-select.disabled:focus,.bootstrap-select>.disabled:focus{outline:0!important}.bootstrap-select.bs-container{position:absolute;top:0;left:0;height:0!important;padding:0!important}.bootstrap-select.bs-container .dropdown-menu{z-index:1060}.bootstrap-select .dropdown-toggle .filter-option{position:static;top:0;left:0;float:left;height:100%;width:100%;text-align:left;overflow:hidden;-webkit-box-flex:0;-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto}.bs3.bootstrap-select .dropdown-toggle .filter-option{padding-right:inherit}.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option{position:absolute;padding-top:inherit;padding-bottom:inherit;padding-left:inherit;float:none}.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option .filter-option-inner{padding-right:inherit}.bootstrap-select .dropdown-toggle .filter-option-inner-inner{overflow:hidden}.bootstrap-select .dropdown-toggle .filter-expand{width:0!important;float:left;opacity:0!important;overflow:hidden}.bootstrap-select .dropdown-toggle .caret{position:absolute;top:50%;right:12px;margin-top:-2px;vertical-align:middle}.input-group .bootstrap-select.form-control .dropdown-toggle{border-radius:inherit}.bootstrap-select[class*=col-] .dropdown-toggle{width:100%}.bootstrap-select .dropdown-menu{min-width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select .dropdown-menu>.inner:focus{outline:0!important}.bootstrap-select .dropdown-menu.inner{position:static;float:none;border:0;padding:0;margin:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.bootstrap-select .dropdown-menu li{position:relative}.bootstrap-select .dropdown-menu li.active small{color:rgba(255,255,255,.5)!important}.bootstrap-select .dropdown-menu li.disabled a{cursor:not-allowed}.bootstrap-select .dropdown-menu li a{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bootstrap-select .dropdown-menu li a.opt{position:relative;padding-left:2.25em}.bootstrap-select .dropdown-menu li a span.check-mark{display:none}.bootstrap-select .dropdown-menu li a span.text{display:inline-block}.bootstrap-select .dropdown-menu li small{padding-left:.5em}.bootstrap-select .dropdown-menu .notify{position:absolute;bottom:5px;width:96%;margin:0 2%;min-height:26px;padding:3px 5px;background:#f5f5f5;border:1px solid #e3e3e3;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05);pointer-events:none;opacity:.9;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select .dropdown-menu .notify.fadeOut{-webkit-animation:.3s linear 750ms forwards bs-notify-fadeOut;-o-animation:.3s linear 750ms forwards bs-notify-fadeOut;animation:.3s linear 750ms forwards bs-notify-fadeOut}.bootstrap-select .no-results{padding:3px;background:#f5f5f5;margin:0 5px;white-space:nowrap}.bootstrap-select.fit-width .dropdown-toggle .filter-option{position:static;display:inline;padding:0}.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner,.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner-inner{display:inline}.bootstrap-select.fit-width .dropdown-toggle .bs-caret:before{content:'\00a0'}.bootstrap-select.fit-width .dropdown-toggle .caret{position:static;top:auto;margin-top:-1px}.bootstrap-select.show-tick .dropdown-menu .selected span.check-mark{position:absolute;display:inline-block;right:15px;top:5px}.bootstrap-select.show-tick .dropdown-menu li a span.text{margin-right:34px}.bootstrap-select .bs-ok-default:after{content:'';display:block;width:.5em;height:1em;border-style:solid;border-width:0 .26em .26em 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle{z-index:1061}.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:before{content:'';border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid rgba(204,204,204,.2);position:absolute;bottom:-4px;left:9px;display:none}.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:after{content:'';border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;bottom:-4px;left:10px;display:none}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:before{bottom:auto;top:-4px;border-top:7px solid rgba(204,204,204,.2);border-bottom:0}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:after{bottom:auto;top:-4px;border-top:6px solid #fff;border-bottom:0}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:before{right:12px;left:auto}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:after{right:13px;left:auto}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:after,.bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:before,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:after,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:before{display:block}.bs-actionsbox,.bs-donebutton,.bs-searchbox{padding:4px 8px}.bs-actionsbox{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-actionsbox .btn-group button{width:50%}.bs-donebutton{float:left;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-donebutton .btn-group button{width:100%}.bs-searchbox+.bs-actionsbox{padding:0 8px 4px}.bs-searchbox .form-control{margin-bottom:0;width:100%;float:none} \ No newline at end of file diff --git a/dist/js/bootstrap-select.js b/dist/js/bootstrap-select.js index e88c05475..111f28d72 100644 --- a/dist/js/bootstrap-select.js +++ b/dist/js/bootstrap-select.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ @@ -355,7 +355,7 @@ opt = options[i]; if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) { - value.push(opt.value || opt.text); + value.push(opt.value); } } @@ -687,6 +687,8 @@ } elementTemplates.a.setAttribute('role', 'option'); + if (version.major === '4') elementTemplates.a.className = 'dropdown-item'; + elementTemplates.subtext.className = 'text-muted'; elementTemplates.text = elementTemplates.span.cloneNode(false); @@ -726,8 +728,7 @@ } } - if (typeof classes !== 'undefined' && classes !== '') a.className = classes; - if (version.major === '4') a.classList.add('dropdown-item'); + if (typeof classes !== 'undefined' && classes !== '') a.classList.add.apply(a.classList, classes.split(' ')); if (inline) a.setAttribute('style', inline); return a; @@ -749,7 +750,7 @@ // need to use for icons in the button to prevent a breaking change // note: switch to span in next major release iconElement = (useFragment === true ? elementTemplates.i : elementTemplates.span).cloneNode(false); - iconElement.className = options.iconBase + ' ' + options.icon; + iconElement.className = this.options.iconBase + ' ' + options.icon; elementTemplates.fragment.appendChild(iconElement); elementTemplates.fragment.appendChild(whitespace); @@ -778,13 +779,13 @@ subtextElement, iconElement; - textElement.innerHTML = options.label; + textElement.innerHTML = options.display; if (options.icon) { var whitespace = elementTemplates.whitespace.cloneNode(false); iconElement = elementTemplates.span.cloneNode(false); - iconElement.className = options.iconBase + ' ' + options.icon; + iconElement.className = this.options.iconBase + ' ' + options.icon; elementTemplates.fragment.appendChild(iconElement); elementTemplates.fragment.appendChild(whitespace); @@ -821,6 +822,7 @@ search: {}, current: {}, // current changes if a search is in progress view: {}, + isSearching: false, keydown: { keyHistory: '', resetKeyHistory: { @@ -832,6 +834,9 @@ } } }; + + this.sizeInfo = {}; + // If we have no title yet, try to pull it from the html title attribute (jQuery doesnt' pick it up as it's not a // data-attribute) if (this.options.title === null) { @@ -859,7 +864,7 @@ this.init(); }; - Selectpicker.VERSION = '1.13.12'; + Selectpicker.VERSION = '1.13.13'; // part of this is duplicated in i18n/defaults-en_US.js. Make sure to update both. Selectpicker.DEFAULTS = { @@ -936,6 +941,7 @@ } this.$newElement = this.createDropdown(); + this.buildData(); this.$element .after(this.$newElement) .prependTo(this.$newElement); @@ -1024,7 +1030,7 @@ } setTimeout(function () { - that.createLi(); + that.buildList(); that.$element.trigger('loaded' + EVENT_KEY); }); }, @@ -1167,6 +1173,7 @@ selected, prevActive; + this.selectpicker.isSearching = isSearching; this.selectpicker.current = isSearching ? this.selectpicker.search : this.selectpicker.main; this.setPositionData(); @@ -1455,23 +1462,14 @@ return updateIndex; }, - createLi: function () { - var that = this, - iconBase = this.options.iconBase, - optionSelector = ':not([hidden]):not([data-hidden="true"])', - mainElements = [], + buildData: function () { + var optionSelector = ':not([hidden]):not([data-hidden="true"])', mainData = [], - widestOptionLength = 0, optID = 0, startIndex = this.setPlaceholder() ? 1 : 0; // append the titleOption if necessary and skip the first option in the loop if (this.options.hideDisabled) optionSelector += ':not(:disabled)'; - if ((that.options.showTick || that.multiple) && !elementTemplates.checkMark.parentNode) { - elementTemplates.checkMark.className = iconBase + ' ' + that.options.tickIcon + ' check-mark'; - elementTemplates.a.appendChild(elementTemplates.checkMark); - } - var selectOptions = this.$element[0].querySelectorAll('select > *' + optionSelector); function addDivider (config) { @@ -1489,14 +1487,6 @@ config = config || {}; config.type = 'divider'; - mainElements.push( - generateOption.li( - false, - classNames.DIVIDER, - (config.optID ? config.optID + 'div' : undefined) - ) - ); - mainData.push(config); } @@ -1517,30 +1507,14 @@ if (config.optID) optionClass = 'opt ' + optionClass; + config.optionClass = optionClass.trim(); + config.inlineStyle = inlineStyle; config.text = option.textContent; config.content = option.getAttribute('data-content'); config.tokens = option.getAttribute('data-tokens'); config.subtext = option.getAttribute('data-subtext'); config.icon = option.getAttribute('data-icon'); - config.iconBase = iconBase; - - var textElement = generateOption.text(config); - var liElement = generateOption.li( - generateOption.a( - textElement, - optionClass, - inlineStyle - ), - '', - config.optID - ); - - if (liElement.firstChild) { - liElement.firstChild.id = that.selectId + '-' + liIndex; - } - - mainElements.push(liElement); option.liIndex = liIndex; @@ -1548,26 +1522,10 @@ config.type = 'option'; config.index = liIndex; config.option = option; - config.disabled = config.disabled || option.disabled; + config.selected = !!option.selected; + config.disabled = config.disabled || !!option.disabled; mainData.push(config); - - var combinedLength = 0; - - // count the number of characters in the option - not perfect, but should work in most cases - if (config.display) combinedLength += config.display.length; - if (config.subtext) combinedLength += config.subtext.length; - // if there is an icon, ensure this option's width is checked - if (config.icon) combinedLength += 1; - - if (combinedLength > widestOptionLength) { - widestOptionLength = combinedLength; - - // guess which option is the widest - // use this when calculating menu width - // not perfect, but it's fast, and the width will be updating accordingly when scrolling - that.selectpicker.view.widestOption = mainElements[mainElements.length - 1]; - } } } @@ -1580,12 +1538,12 @@ if (!options.length) return; var config = { - label: htmlEscape(optgroup.label), + display: htmlEscape(optgroup.label), subtext: optgroup.getAttribute('data-subtext'), icon: optgroup.getAttribute('data-icon'), - iconBase: iconBase + type: 'optgroup-label', + optgroupClass: ' ' + (optgroup.className || '') }, - optgroupClass = ' ' + (optgroup.className || ''), headerIndex, lastIndex; @@ -1595,18 +1553,9 @@ addDivider({ optID: optID }); } - var labelElement = generateOption.label(config); - - mainElements.push( - generateOption.li(labelElement, 'dropdown-header' + optgroupClass, optID) - ); + config.optID = optID; - mainData.push({ - display: config.label, - subtext: config.subtext, - type: 'optgroup-label', - optID: optID - }); + mainData.push(config); for (var j = 0, len = options.length; j < len; j++) { var option = options[j]; @@ -1619,8 +1568,8 @@ addOption(option, { headerIndex: headerIndex, lastIndex: lastIndex, - optID: optID, - optgroupClass: optgroupClass, + optID: config.optID, + optgroupClass: config.optgroupClass, disabled: optgroup.disabled }); } @@ -1640,10 +1589,86 @@ } } - this.selectpicker.main.elements = mainElements; - this.selectpicker.main.data = mainData; + this.selectpicker.main.data = this.selectpicker.current.data = mainData; + }, + + buildList: function () { + var that = this, + selectData = this.selectpicker.main.data, + mainElements = [], + widestOptionLength = 0; + + if ((that.options.showTick || that.multiple) && !elementTemplates.checkMark.parentNode) { + elementTemplates.checkMark.className = this.options.iconBase + ' ' + that.options.tickIcon + ' check-mark'; + elementTemplates.a.appendChild(elementTemplates.checkMark); + } + + function buildElement (item) { + var liElement, + combinedLength = 0; + + switch (item.type) { + case 'divider': + liElement = generateOption.li( + false, + classNames.DIVIDER, + (item.optID ? item.optID + 'div' : undefined) + ); + + break; + + case 'option': + liElement = generateOption.li( + generateOption.a( + generateOption.text.call(that, item), + item.optionClass, + item.inlineStyle + ), + '', + item.optID + ); + + if (liElement.firstChild) { + liElement.firstChild.id = that.selectId + '-' + item.index; + } + + break; + + case 'optgroup-label': + liElement = generateOption.li( + generateOption.label.call(that, item), + 'dropdown-header' + item.optgroupClass, + item.optID + ); + + break; + } + + mainElements.push(liElement); + + // count the number of characters in the option - not perfect, but should work in most cases + if (item.display) combinedLength += item.display.length; + if (item.subtext) combinedLength += item.subtext.length; + // if there is an icon, ensure this option's width is checked + if (item.icon) combinedLength += 1; + + if (combinedLength > widestOptionLength) { + widestOptionLength = combinedLength; + + // guess which option is the widest + // use this when calculating menu width + // not perfect, but it's fast, and the width will be updating accordingly when scrolling + that.selectpicker.view.widestOption = mainElements[mainElements.length - 1]; + } + } + + for (var len = selectData.length, i = 0; i < len; i++) { + var item = selectData[i]; - this.selectpicker.current = this.selectpicker.main; + buildElement(item); + } + + this.selectpicker.main.elements = this.selectpicker.current.elements = mainElements; }, findLis: function () { @@ -1651,10 +1676,9 @@ }, render: function () { - // ensure titleOption is appended and selected (if necessary) before getting selectedOptions - this.setPlaceholder(); - var that = this, + // ensure titleOption is appended and selected (if necessary) before getting selectedOptions + startIndex = this.setPlaceholder() ? 1 : 0, element = this.$element[0], selectedOptions = getSelectedOptions(element, this.options.hideDisabled), selectedCount = selectedOptions.length, @@ -1671,7 +1695,7 @@ this.tabIndex(); if (this.options.selectedTextFormat === 'static') { - titleFragment = generateOption.text({ text: this.options.title }, true); + titleFragment = generateOption.text.call(this, { text: this.options.title }, true); } else { showCount = this.multiple && this.options.selectedTextFormat.indexOf('count') !== -1 && selectedCount > 1; @@ -1683,15 +1707,11 @@ // only loop through all selected options if the count won't be shown if (showCount === false) { - for (var selectedIndex = 0; selectedIndex < selectedCount; selectedIndex++) { + for (var selectedIndex = startIndex; selectedIndex < selectedCount; selectedIndex++) { if (selectedIndex < 50) { var option = selectedOptions[selectedIndex], - titleOptions = {}, - thisData = { - content: option.getAttribute('data-content'), - subtext: option.getAttribute('data-subtext'), - icon: option.getAttribute('data-icon') - }; + thisData = this.selectpicker.main.data[option.liIndex], + titleOptions = {}; if (this.multiple && selectedIndex > 0) { titleFragment.appendChild(multipleSeparator.cloneNode(false)); @@ -1705,13 +1725,12 @@ } else { if (that.options.showIcon) { titleOptions.icon = thisData.icon; - titleOptions.iconBase = this.options.iconBase; } if (that.options.showSubtext && !that.multiple && thisData.subtext) titleOptions.subtext = ' ' + thisData.subtext; titleOptions.text = option.textContent.trim(); } - titleFragment.appendChild(generateOption.text(titleOptions, true)); + titleFragment.appendChild(generateOption.text.call(this, titleOptions, true)); } else { break; } @@ -1729,7 +1748,7 @@ var totalCount = this.$element[0].querySelectorAll('select > option' + optionSelector + ', optgroup' + optionSelector + ' option' + optionSelector).length, tr8nText = (typeof this.options.countSelectedText === 'function') ? this.options.countSelectedText(selectedCount, totalCount) : this.options.countSelectedText; - titleFragment = generateOption.text({ + titleFragment = generateOption.text.call(this, { text: tr8nText.replace('{0}', selectedCount.toString()).replace('{1}', totalCount.toString()) }, true); } @@ -1742,7 +1761,7 @@ // If the select doesn't have a title, then use the default, or if nothing is set at all, use noneSelectedText if (!titleFragment.childNodes.length) { - titleFragment = generateOption.text({ + titleFragment = generateOption.text.call(this, { text: typeof this.options.title !== 'undefined' ? this.options.title : this.options.noneSelectedText }, true); } @@ -1815,9 +1834,7 @@ }, liHeight: function (refresh) { - if (!refresh && (this.options.size === false || this.sizeInfo)) return; - - if (!this.sizeInfo) this.sizeInfo = {}; + if (!refresh && (this.options.size === false || Object.keys(this.sizeInfo).length)) return; var newElement = document.createElement('div'), menu = document.createElement('div'), @@ -1973,7 +1990,8 @@ _minHeight, maxHeight, menuInnerMinHeight, - estimate; + estimate, + isDropup; if (this.options.dropupAuto) { // Get the estimated height of the menu without scrollbars. @@ -1981,7 +1999,16 @@ // below the button without setting dropup, but we can't know // the exact height of the menu until createView is called later estimate = liHeight * this.selectpicker.current.elements.length + menuPadding.vert; - this.$newElement.toggleClass(classNames.DROPUP, this.sizeInfo.selectOffsetTop - this.sizeInfo.selectOffsetBot > this.sizeInfo.menuExtras.vert && estimate + this.sizeInfo.menuExtras.vert + 50 > this.sizeInfo.selectOffsetBot); + + isDropup = this.sizeInfo.selectOffsetTop - this.sizeInfo.selectOffsetBot > this.sizeInfo.menuExtras.vert && estimate + this.sizeInfo.menuExtras.vert + 50 > this.sizeInfo.selectOffsetBot; + + // ensure dropup doesn't change while searching (so menu doesn't bounce back and forth) + if (this.selectpicker.isSearching === true) { + isDropup = this.selectpicker.dropup; + } + + this.$newElement.toggleClass(classNames.DROPUP, isDropup); + this.selectpicker.dropup = isDropup; } if (this.options.size === 'auto') { @@ -2038,32 +2065,33 @@ this.liHeight(refresh); if (this.options.header) this.$menu.css('padding-top', 0); - if (this.options.size === false) return; - var that = this, - $window = $(window); + if (this.options.size !== false) { + var that = this, + $window = $(window); - this.setMenuSize(); + this.setMenuSize(); - if (this.options.liveSearch) { - this.$searchbox - .off('input.setMenuSize propertychange.setMenuSize') - .on('input.setMenuSize propertychange.setMenuSize', function () { - return that.setMenuSize(); - }); - } + if (this.options.liveSearch) { + this.$searchbox + .off('input.setMenuSize propertychange.setMenuSize') + .on('input.setMenuSize propertychange.setMenuSize', function () { + return that.setMenuSize(); + }); + } - if (this.options.size === 'auto') { - $window - .off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize') - .on('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize', function () { - return that.setMenuSize(); - }); - } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) { - $window.off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize'); + if (this.options.size === 'auto') { + $window + .off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize') + .on('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize', function () { + return that.setMenuSize(); + }); + } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) { + $window.off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize'); + } } - that.createView(false, true, refresh); + this.createView(false, true, refresh); }, setWidth: function () { @@ -2595,8 +2623,6 @@ if (normalizeSearch) q = normalizeToBase(q); - that._$lisSelected = that.$menuInner.find('.selected'); - for (var i = 0; i < that.selectpicker.main.data.length; i++) { var li = that.selectpicker.main.data[i]; @@ -2699,14 +2725,14 @@ element.classList.add('bs-select-hidden'); - for (var i = 0, len = this.selectpicker.current.elements.length; i < len; i++) { - var liData = this.selectpicker.current.data[i], + for (var i = 0, data = this.selectpicker.current.data, len = data.length; i < len; i++) { + var liData = data[i], option = liData.option; if (option && !liData.disabled && liData.type !== 'divider') { if (liData.selected) previousSelected++; option.selected = status; - if (status) currentSelected++; + if (status === true) currentSelected++; } } @@ -2969,7 +2995,8 @@ this.checkDisabled(); this.setStyle(); this.render(); - this.createLi(); + this.buildData(); + this.buildList(); this.setWidth(); this.setSize(true); @@ -3122,8 +3149,13 @@ return this; }; + // get Bootstrap's keydown event handler for either Bootstrap 4 or Bootstrap 3 + var bootstrapKeydown = $.fn.dropdown.Constructor._dataApiKeydownHandler || $.fn.dropdown.Constructor.prototype.keydown; + $(document) - .off('keydown.bs.dropdown.data-api', '.bootstrap-select [data-toggle="dropdown"], .bootstrap-select .dropdown-menu') + .off('keydown.bs.dropdown.data-api') + .on('keydown.bs.dropdown.data-api', ':not(.bootstrap-select) > [data-toggle="dropdown"]', bootstrapKeydown) + .on('keydown.bs.dropdown.data-api', ':not(.bootstrap-select) > .dropdown-menu', bootstrapKeydown) .on('keydown' + EVENT_KEY, '.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input', Selectpicker.prototype.keydown) .on('focusin.modal', '.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input', function (e) { e.stopPropagation(); diff --git a/dist/js/bootstrap-select.js.map b/dist/js/bootstrap-select.js.map index 9dd747d80..19ebced12 100644 --- a/dist/js/bootstrap-select.js.map +++ b/dist/js/bootstrap-select.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../js/bootstrap-select.js"],"names":[],"mappings":"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AC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAChC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAChC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAClB,IAAI,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC/B,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/F,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAA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CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,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","file":"bootstrap-select.js","sourcesContent":["(function ($) {\r\n 'use strict';\r\n\r\n var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];\r\n\r\n var uriAttrs = [\r\n 'background',\r\n 'cite',\r\n 'href',\r\n 'itemtype',\r\n 'longdesc',\r\n 'poster',\r\n 'src',\r\n 'xlink:href'\r\n ];\r\n\r\n var ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i;\r\n\r\n var DefaultWhitelist = {\r\n // Global attributes allowed on any supplied element below.\r\n '*': ['class', 'dir', 'id', 'lang', 'role', 'tabindex', 'style', ARIA_ATTRIBUTE_PATTERN],\r\n a: ['target', 'href', 'title', 'rel'],\r\n area: [],\r\n b: [],\r\n br: [],\r\n col: [],\r\n code: [],\r\n div: [],\r\n em: [],\r\n hr: [],\r\n h1: [],\r\n h2: [],\r\n h3: [],\r\n h4: [],\r\n h5: [],\r\n h6: [],\r\n i: [],\r\n img: ['src', 'alt', 'title', 'width', 'height'],\r\n li: [],\r\n ol: [],\r\n p: [],\r\n pre: [],\r\n s: [],\r\n small: [],\r\n span: [],\r\n sub: [],\r\n sup: [],\r\n strong: [],\r\n u: [],\r\n ul: []\r\n }\r\n\r\n /**\r\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\r\n *\r\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\r\n */\r\n var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;\r\n\r\n /**\r\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\r\n *\r\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\r\n */\r\n var DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;\r\n\r\n function allowedAttribute (attr, allowedAttributeList) {\r\n var attrName = attr.nodeName.toLowerCase()\r\n\r\n if ($.inArray(attrName, allowedAttributeList) !== -1) {\r\n if ($.inArray(attrName, uriAttrs) !== -1) {\r\n return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN))\r\n }\r\n\r\n return true\r\n }\r\n\r\n var regExp = $(allowedAttributeList).filter(function (index, value) {\r\n return value instanceof RegExp\r\n })\r\n\r\n // Check if a regular expression validates the attribute.\r\n for (var i = 0, l = regExp.length; i < l; i++) {\r\n if (attrName.match(regExp[i])) {\r\n return true\r\n }\r\n }\r\n\r\n return false\r\n }\r\n\r\n function sanitizeHtml (unsafeElements, whiteList, sanitizeFn) {\r\n if (sanitizeFn && typeof sanitizeFn === 'function') {\r\n return sanitizeFn(unsafeElements);\r\n }\r\n\r\n var whitelistKeys = Object.keys(whiteList);\r\n\r\n for (var i = 0, len = unsafeElements.length; i < len; i++) {\r\n var elements = unsafeElements[i].querySelectorAll('*');\r\n\r\n for (var j = 0, len2 = elements.length; j < len2; j++) {\r\n var el = elements[j];\r\n var elName = el.nodeName.toLowerCase();\r\n\r\n if (whitelistKeys.indexOf(elName) === -1) {\r\n el.parentNode.removeChild(el);\r\n\r\n continue;\r\n }\r\n\r\n var attributeList = [].slice.call(el.attributes);\r\n var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);\r\n\r\n for (var k = 0, len3 = attributeList.length; k < len3; k++) {\r\n var attr = attributeList[k];\r\n\r\n if (!allowedAttribute(attr, whitelistedAttributes)) {\r\n el.removeAttribute(attr.nodeName);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n // Polyfill for browsers with no classList support\r\n // Remove in v2\r\n if (!('classList' in document.createElement('_'))) {\r\n (function (view) {\r\n if (!('Element' in view)) return;\r\n\r\n var classListProp = 'classList',\r\n protoProp = 'prototype',\r\n elemCtrProto = view.Element[protoProp],\r\n objCtr = Object,\r\n classListGetter = function () {\r\n var $elem = $(this);\r\n\r\n return {\r\n add: function (classes) {\r\n classes = Array.prototype.slice.call(arguments).join(' ');\r\n return $elem.addClass(classes);\r\n },\r\n remove: function (classes) {\r\n classes = Array.prototype.slice.call(arguments).join(' ');\r\n return $elem.removeClass(classes);\r\n },\r\n toggle: function (classes, force) {\r\n return $elem.toggleClass(classes, force);\r\n },\r\n contains: function (classes) {\r\n return $elem.hasClass(classes);\r\n }\r\n }\r\n };\r\n\r\n if (objCtr.defineProperty) {\r\n var classListPropDesc = {\r\n get: classListGetter,\r\n enumerable: true,\r\n configurable: true\r\n };\r\n try {\r\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\r\n } catch (ex) { // IE 8 doesn't support enumerable:true\r\n // adding undefined to fight this issue https://github.com/eligrey/classList.js/issues/36\r\n // modernie IE8-MSW7 machine has IE8 8.0.6001.18702 and is affected\r\n if (ex.number === undefined || ex.number === -0x7FF5EC54) {\r\n classListPropDesc.enumerable = false;\r\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\r\n }\r\n }\r\n } else if (objCtr[protoProp].__defineGetter__) {\r\n elemCtrProto.__defineGetter__(classListProp, classListGetter);\r\n }\r\n }(window));\r\n }\r\n\r\n var testElement = document.createElement('_');\r\n\r\n testElement.classList.add('c1', 'c2');\r\n\r\n if (!testElement.classList.contains('c2')) {\r\n var _add = DOMTokenList.prototype.add,\r\n _remove = DOMTokenList.prototype.remove;\r\n\r\n DOMTokenList.prototype.add = function () {\r\n Array.prototype.forEach.call(arguments, _add.bind(this));\r\n }\r\n\r\n DOMTokenList.prototype.remove = function () {\r\n Array.prototype.forEach.call(arguments, _remove.bind(this));\r\n }\r\n }\r\n\r\n testElement.classList.toggle('c3', false);\r\n\r\n // Polyfill for IE 10 and Firefox <24, where classList.toggle does not\r\n // support the second argument.\r\n if (testElement.classList.contains('c3')) {\r\n var _toggle = DOMTokenList.prototype.toggle;\r\n\r\n DOMTokenList.prototype.toggle = function (token, force) {\r\n if (1 in arguments && !this.contains(token) === !force) {\r\n return force;\r\n } else {\r\n return _toggle.call(this, token);\r\n }\r\n };\r\n }\r\n\r\n testElement = null;\r\n\r\n // shallow array comparison\r\n function isEqual (array1, array2) {\r\n return array1.length === array2.length && array1.every(function (element, index) {\r\n return element === array2[index];\r\n });\r\n };\r\n\r\n // \r\n if (!String.prototype.startsWith) {\r\n (function () {\r\n 'use strict'; // needed to support `apply`/`call` with `undefined`/`null`\r\n var defineProperty = (function () {\r\n // IE 8 only supports `Object.defineProperty` on DOM elements\r\n try {\r\n var object = {};\r\n var $defineProperty = Object.defineProperty;\r\n var result = $defineProperty(object, object, object) && $defineProperty;\r\n } catch (error) {\r\n }\r\n return result;\r\n }());\r\n var toString = {}.toString;\r\n var startsWith = function (search) {\r\n if (this == null) {\r\n throw new TypeError();\r\n }\r\n var string = String(this);\r\n if (search && toString.call(search) == '[object RegExp]') {\r\n throw new TypeError();\r\n }\r\n var stringLength = string.length;\r\n var searchString = String(search);\r\n var searchLength = searchString.length;\r\n var position = arguments.length > 1 ? arguments[1] : undefined;\r\n // `ToInteger`\r\n var pos = position ? Number(position) : 0;\r\n if (pos != pos) { // better `isNaN`\r\n pos = 0;\r\n }\r\n var start = Math.min(Math.max(pos, 0), stringLength);\r\n // Avoid the `indexOf` call if no match is possible\r\n if (searchLength + start > stringLength) {\r\n return false;\r\n }\r\n var index = -1;\r\n while (++index < searchLength) {\r\n if (string.charCodeAt(start + index) != searchString.charCodeAt(index)) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n };\r\n if (defineProperty) {\r\n defineProperty(String.prototype, 'startsWith', {\r\n 'value': startsWith,\r\n 'configurable': true,\r\n 'writable': true\r\n });\r\n } else {\r\n String.prototype.startsWith = startsWith;\r\n }\r\n }());\r\n }\r\n\r\n if (!Object.keys) {\r\n Object.keys = function (\r\n o, // object\r\n k, // key\r\n r // result array\r\n ) {\r\n // initialize object and result\r\n r = [];\r\n // iterate over object keys\r\n for (k in o) {\r\n // fill result array with non-prototypical keys\r\n r.hasOwnProperty.call(o, k) && r.push(k);\r\n }\r\n // return result\r\n return r;\r\n };\r\n }\r\n\r\n if (HTMLSelectElement && !HTMLSelectElement.prototype.hasOwnProperty('selectedOptions')) {\r\n Object.defineProperty(HTMLSelectElement.prototype, 'selectedOptions', {\r\n get: function () {\r\n return this.querySelectorAll(':checked');\r\n }\r\n });\r\n }\r\n\r\n function getSelectedOptions (select, ignoreDisabled) {\r\n var selectedOptions = select.selectedOptions,\r\n options = [],\r\n opt;\r\n\r\n if (ignoreDisabled) {\r\n for (var i = 0, len = selectedOptions.length; i < len; i++) {\r\n opt = selectedOptions[i];\r\n\r\n if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) {\r\n options.push(opt);\r\n }\r\n }\r\n\r\n return options;\r\n }\r\n\r\n return selectedOptions;\r\n }\r\n\r\n // much faster than $.val()\r\n function getSelectValues (select, selectedOptions) {\r\n var value = [],\r\n options = selectedOptions || select.selectedOptions,\r\n opt;\r\n\r\n for (var i = 0, len = options.length; i < len; i++) {\r\n opt = options[i];\r\n\r\n if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) {\r\n value.push(opt.value || opt.text);\r\n }\r\n }\r\n\r\n if (!select.multiple) {\r\n return !value.length ? null : value[0];\r\n }\r\n\r\n return value;\r\n }\r\n\r\n // set data-selected on select element if the value has been programmatically selected\r\n // prior to initialization of bootstrap-select\r\n // * consider removing or replacing an alternative method *\r\n var valHooks = {\r\n useDefault: false,\r\n _set: $.valHooks.select.set\r\n };\r\n\r\n $.valHooks.select.set = function (elem, value) {\r\n if (value && !valHooks.useDefault) $(elem).data('selected', true);\r\n\r\n return valHooks._set.apply(this, arguments);\r\n };\r\n\r\n var changedArguments = null;\r\n\r\n var EventIsSupported = (function () {\r\n try {\r\n new Event('change');\r\n return true;\r\n } catch (e) {\r\n return false;\r\n }\r\n })();\r\n\r\n $.fn.triggerNative = function (eventName) {\r\n var el = this[0],\r\n event;\r\n\r\n if (el.dispatchEvent) { // for modern browsers & IE9+\r\n if (EventIsSupported) {\r\n // For modern browsers\r\n event = new Event(eventName, {\r\n bubbles: true\r\n });\r\n } else {\r\n // For IE since it doesn't support Event constructor\r\n event = document.createEvent('Event');\r\n event.initEvent(eventName, true, false);\r\n }\r\n\r\n el.dispatchEvent(event);\r\n } else if (el.fireEvent) { // for IE8\r\n event = document.createEventObject();\r\n event.eventType = eventName;\r\n el.fireEvent('on' + eventName, event);\r\n } else {\r\n // fall back to jQuery.trigger\r\n this.trigger(eventName);\r\n }\r\n };\r\n // \r\n\r\n function stringSearch (li, searchString, method, normalize) {\r\n var stringTypes = [\r\n 'display',\r\n 'subtext',\r\n 'tokens'\r\n ],\r\n searchSuccess = false;\r\n\r\n for (var i = 0; i < stringTypes.length; i++) {\r\n var stringType = stringTypes[i],\r\n string = li[stringType];\r\n\r\n if (string) {\r\n string = string.toString();\r\n\r\n // Strip HTML tags. This isn't perfect, but it's much faster than any other method\r\n if (stringType === 'display') {\r\n string = string.replace(/<[^>]+>/g, '');\r\n }\r\n\r\n if (normalize) string = normalizeToBase(string);\r\n string = string.toUpperCase();\r\n\r\n if (method === 'contains') {\r\n searchSuccess = string.indexOf(searchString) >= 0;\r\n } else {\r\n searchSuccess = string.startsWith(searchString);\r\n }\r\n\r\n if (searchSuccess) break;\r\n }\r\n }\r\n\r\n return searchSuccess;\r\n }\r\n\r\n function toInteger (value) {\r\n return parseInt(value, 10) || 0;\r\n }\r\n\r\n // Borrowed from Lodash (_.deburr)\r\n /** Used to map Latin Unicode letters to basic Latin letters. */\r\n var deburredLetters = {\r\n // Latin-1 Supplement block.\r\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\r\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\r\n '\\xc7': 'C', '\\xe7': 'c',\r\n '\\xd0': 'D', '\\xf0': 'd',\r\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\r\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\r\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\r\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\r\n '\\xd1': 'N', '\\xf1': 'n',\r\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\r\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\r\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\r\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\r\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\r\n '\\xc6': 'Ae', '\\xe6': 'ae',\r\n '\\xde': 'Th', '\\xfe': 'th',\r\n '\\xdf': 'ss',\r\n // Latin Extended-A block.\r\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\r\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\r\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\r\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\r\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\r\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\r\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\r\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\r\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\r\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\r\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\r\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\r\n '\\u0134': 'J', '\\u0135': 'j',\r\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\r\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\r\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\r\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\r\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\r\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\r\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\r\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\r\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\r\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\r\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\r\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\r\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\r\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\r\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\r\n '\\u0174': 'W', '\\u0175': 'w',\r\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\r\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\r\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\r\n '\\u0132': 'IJ', '\\u0133': 'ij',\r\n '\\u0152': 'Oe', '\\u0153': 'oe',\r\n '\\u0149': \"'n\", '\\u017f': 's'\r\n };\r\n\r\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\r\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\r\n\r\n /** Used to compose unicode character classes. */\r\n var rsComboMarksRange = '\\\\u0300-\\\\u036f',\r\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\r\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\r\n rsComboMarksExtendedRange = '\\\\u1ab0-\\\\u1aff',\r\n rsComboMarksSupplementRange = '\\\\u1dc0-\\\\u1dff',\r\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange + rsComboMarksExtendedRange + rsComboMarksSupplementRange;\r\n\r\n /** Used to compose unicode capture groups. */\r\n var rsCombo = '[' + rsComboRange + ']';\r\n\r\n /**\r\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\r\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\r\n */\r\n var reComboMark = RegExp(rsCombo, 'g');\r\n\r\n function deburrLetter (key) {\r\n return deburredLetters[key];\r\n };\r\n\r\n function normalizeToBase (string) {\r\n string = string.toString();\r\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\r\n }\r\n\r\n // List of HTML entities for escaping.\r\n var escapeMap = {\r\n '&': '&',\r\n '<': '<',\r\n '>': '>',\r\n '\"': '"',\r\n \"'\": ''',\r\n '`': '`'\r\n };\r\n\r\n // Functions for escaping and unescaping strings to/from HTML interpolation.\r\n var createEscaper = function (map) {\r\n var escaper = function (match) {\r\n return map[match];\r\n };\r\n // Regexes for identifying a key that needs to be escaped.\r\n var source = '(?:' + Object.keys(map).join('|') + ')';\r\n var testRegexp = RegExp(source);\r\n var replaceRegexp = RegExp(source, 'g');\r\n return function (string) {\r\n string = string == null ? '' : '' + string;\r\n return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;\r\n };\r\n };\r\n\r\n var htmlEscape = createEscaper(escapeMap);\r\n\r\n /**\r\n * ------------------------------------------------------------------------\r\n * Constants\r\n * ------------------------------------------------------------------------\r\n */\r\n\r\n var keyCodeMap = {\r\n 32: ' ',\r\n 48: '0',\r\n 49: '1',\r\n 50: '2',\r\n 51: '3',\r\n 52: '4',\r\n 53: '5',\r\n 54: '6',\r\n 55: '7',\r\n 56: '8',\r\n 57: '9',\r\n 59: ';',\r\n 65: 'A',\r\n 66: 'B',\r\n 67: 'C',\r\n 68: 'D',\r\n 69: 'E',\r\n 70: 'F',\r\n 71: 'G',\r\n 72: 'H',\r\n 73: 'I',\r\n 74: 'J',\r\n 75: 'K',\r\n 76: 'L',\r\n 77: 'M',\r\n 78: 'N',\r\n 79: 'O',\r\n 80: 'P',\r\n 81: 'Q',\r\n 82: 'R',\r\n 83: 'S',\r\n 84: 'T',\r\n 85: 'U',\r\n 86: 'V',\r\n 87: 'W',\r\n 88: 'X',\r\n 89: 'Y',\r\n 90: 'Z',\r\n 96: '0',\r\n 97: '1',\r\n 98: '2',\r\n 99: '3',\r\n 100: '4',\r\n 101: '5',\r\n 102: '6',\r\n 103: '7',\r\n 104: '8',\r\n 105: '9'\r\n };\r\n\r\n var keyCodes = {\r\n ESCAPE: 27, // KeyboardEvent.which value for Escape (Esc) key\r\n ENTER: 13, // KeyboardEvent.which value for Enter key\r\n SPACE: 32, // KeyboardEvent.which value for space key\r\n TAB: 9, // KeyboardEvent.which value for tab key\r\n ARROW_UP: 38, // KeyboardEvent.which value for up arrow key\r\n ARROW_DOWN: 40 // KeyboardEvent.which value for down arrow key\r\n }\r\n\r\n var version = {\r\n success: false,\r\n major: '3'\r\n };\r\n\r\n try {\r\n version.full = ($.fn.dropdown.Constructor.VERSION || '').split(' ')[0].split('.');\r\n version.major = version.full[0];\r\n version.success = true;\r\n } catch (err) {\r\n // do nothing\r\n }\r\n\r\n var selectId = 0;\r\n\r\n var EVENT_KEY = '.bs.select';\r\n\r\n var classNames = {\r\n DISABLED: 'disabled',\r\n DIVIDER: 'divider',\r\n SHOW: 'open',\r\n DROPUP: 'dropup',\r\n MENU: 'dropdown-menu',\r\n MENURIGHT: 'dropdown-menu-right',\r\n MENULEFT: 'dropdown-menu-left',\r\n // to-do: replace with more advanced template/customization options\r\n BUTTONCLASS: 'btn-default',\r\n POPOVERHEADER: 'popover-title',\r\n ICONBASE: 'glyphicon',\r\n TICKICON: 'glyphicon-ok'\r\n }\r\n\r\n var Selector = {\r\n MENU: '.' + classNames.MENU\r\n }\r\n\r\n var elementTemplates = {\r\n span: document.createElement('span'),\r\n i: document.createElement('i'),\r\n subtext: document.createElement('small'),\r\n a: document.createElement('a'),\r\n li: document.createElement('li'),\r\n whitespace: document.createTextNode('\\u00A0'),\r\n fragment: document.createDocumentFragment()\r\n }\r\n\r\n elementTemplates.a.setAttribute('role', 'option');\r\n elementTemplates.subtext.className = 'text-muted';\r\n\r\n elementTemplates.text = elementTemplates.span.cloneNode(false);\r\n elementTemplates.text.className = 'text';\r\n\r\n elementTemplates.checkMark = elementTemplates.span.cloneNode(false);\r\n\r\n var REGEXP_ARROW = new RegExp(keyCodes.ARROW_UP + '|' + keyCodes.ARROW_DOWN);\r\n var REGEXP_TAB_OR_ESCAPE = new RegExp('^' + keyCodes.TAB + '$|' + keyCodes.ESCAPE);\r\n\r\n var generateOption = {\r\n li: function (content, classes, optgroup) {\r\n var li = elementTemplates.li.cloneNode(false);\r\n\r\n if (content) {\r\n if (content.nodeType === 1 || content.nodeType === 11) {\r\n li.appendChild(content);\r\n } else {\r\n li.innerHTML = content;\r\n }\r\n }\r\n\r\n if (typeof classes !== 'undefined' && classes !== '') li.className = classes;\r\n if (typeof optgroup !== 'undefined' && optgroup !== null) li.classList.add('optgroup-' + optgroup);\r\n\r\n return li;\r\n },\r\n\r\n a: function (text, classes, inline) {\r\n var a = elementTemplates.a.cloneNode(true);\r\n\r\n if (text) {\r\n if (text.nodeType === 11) {\r\n a.appendChild(text);\r\n } else {\r\n a.insertAdjacentHTML('beforeend', text);\r\n }\r\n }\r\n\r\n if (typeof classes !== 'undefined' && classes !== '') a.className = classes;\r\n if (version.major === '4') a.classList.add('dropdown-item');\r\n if (inline) a.setAttribute('style', inline);\r\n\r\n return a;\r\n },\r\n\r\n text: function (options, useFragment) {\r\n var textElement = elementTemplates.text.cloneNode(false),\r\n subtextElement,\r\n iconElement;\r\n\r\n if (options.content) {\r\n textElement.innerHTML = options.content;\r\n } else {\r\n textElement.textContent = options.text;\r\n\r\n if (options.icon) {\r\n var whitespace = elementTemplates.whitespace.cloneNode(false);\r\n\r\n // need to use for icons in the button to prevent a breaking change\r\n // note: switch to span in next major release\r\n iconElement = (useFragment === true ? elementTemplates.i : elementTemplates.span).cloneNode(false);\r\n iconElement.className = options.iconBase + ' ' + options.icon;\r\n\r\n elementTemplates.fragment.appendChild(iconElement);\r\n elementTemplates.fragment.appendChild(whitespace);\r\n }\r\n\r\n if (options.subtext) {\r\n subtextElement = elementTemplates.subtext.cloneNode(false);\r\n subtextElement.textContent = options.subtext;\r\n textElement.appendChild(subtextElement);\r\n }\r\n }\r\n\r\n if (useFragment === true) {\r\n while (textElement.childNodes.length > 0) {\r\n elementTemplates.fragment.appendChild(textElement.childNodes[0]);\r\n }\r\n } else {\r\n elementTemplates.fragment.appendChild(textElement);\r\n }\r\n\r\n return elementTemplates.fragment;\r\n },\r\n\r\n label: function (options) {\r\n var textElement = elementTemplates.text.cloneNode(false),\r\n subtextElement,\r\n iconElement;\r\n\r\n textElement.innerHTML = options.label;\r\n\r\n if (options.icon) {\r\n var whitespace = elementTemplates.whitespace.cloneNode(false);\r\n\r\n iconElement = elementTemplates.span.cloneNode(false);\r\n iconElement.className = options.iconBase + ' ' + options.icon;\r\n\r\n elementTemplates.fragment.appendChild(iconElement);\r\n elementTemplates.fragment.appendChild(whitespace);\r\n }\r\n\r\n if (options.subtext) {\r\n subtextElement = elementTemplates.subtext.cloneNode(false);\r\n subtextElement.textContent = options.subtext;\r\n textElement.appendChild(subtextElement);\r\n }\r\n\r\n elementTemplates.fragment.appendChild(textElement);\r\n\r\n return elementTemplates.fragment;\r\n }\r\n }\r\n\r\n var Selectpicker = function (element, options) {\r\n var that = this;\r\n\r\n // bootstrap-select has been initialized - revert valHooks.select.set back to its original function\r\n if (!valHooks.useDefault) {\r\n $.valHooks.select.set = valHooks._set;\r\n valHooks.useDefault = true;\r\n }\r\n\r\n this.$element = $(element);\r\n this.$newElement = null;\r\n this.$button = null;\r\n this.$menu = null;\r\n this.options = options;\r\n this.selectpicker = {\r\n main: {},\r\n search: {},\r\n current: {}, // current changes if a search is in progress\r\n view: {},\r\n keydown: {\r\n keyHistory: '',\r\n resetKeyHistory: {\r\n start: function () {\r\n return setTimeout(function () {\r\n that.selectpicker.keydown.keyHistory = '';\r\n }, 800);\r\n }\r\n }\r\n }\r\n };\r\n // If we have no title yet, try to pull it from the html title attribute (jQuery doesnt' pick it up as it's not a\r\n // data-attribute)\r\n if (this.options.title === null) {\r\n this.options.title = this.$element.attr('title');\r\n }\r\n\r\n // Format window padding\r\n var winPad = this.options.windowPadding;\r\n if (typeof winPad === 'number') {\r\n this.options.windowPadding = [winPad, winPad, winPad, winPad];\r\n }\r\n\r\n // Expose public methods\r\n this.val = Selectpicker.prototype.val;\r\n this.render = Selectpicker.prototype.render;\r\n this.refresh = Selectpicker.prototype.refresh;\r\n this.setStyle = Selectpicker.prototype.setStyle;\r\n this.selectAll = Selectpicker.prototype.selectAll;\r\n this.deselectAll = Selectpicker.prototype.deselectAll;\r\n this.destroy = Selectpicker.prototype.destroy;\r\n this.remove = Selectpicker.prototype.remove;\r\n this.show = Selectpicker.prototype.show;\r\n this.hide = Selectpicker.prototype.hide;\r\n\r\n this.init();\r\n };\r\n\r\n Selectpicker.VERSION = '1.13.12';\r\n\r\n // part of this is duplicated in i18n/defaults-en_US.js. Make sure to update both.\r\n Selectpicker.DEFAULTS = {\r\n noneSelectedText: 'Nothing selected',\r\n noneResultsText: 'No results matched {0}',\r\n countSelectedText: function (numSelected, numTotal) {\r\n return (numSelected == 1) ? '{0} item selected' : '{0} items selected';\r\n },\r\n maxOptionsText: function (numAll, numGroup) {\r\n return [\r\n (numAll == 1) ? 'Limit reached ({n} item max)' : 'Limit reached ({n} items max)',\r\n (numGroup == 1) ? 'Group limit reached ({n} item max)' : 'Group limit reached ({n} items max)'\r\n ];\r\n },\r\n selectAllText: 'Select All',\r\n deselectAllText: 'Deselect All',\r\n doneButton: false,\r\n doneButtonText: 'Close',\r\n multipleSeparator: ', ',\r\n styleBase: 'btn',\r\n style: classNames.BUTTONCLASS,\r\n size: 'auto',\r\n title: null,\r\n selectedTextFormat: 'values',\r\n width: false,\r\n container: false,\r\n hideDisabled: false,\r\n showSubtext: false,\r\n showIcon: true,\r\n showContent: true,\r\n dropupAuto: true,\r\n header: false,\r\n liveSearch: false,\r\n liveSearchPlaceholder: null,\r\n liveSearchNormalize: false,\r\n liveSearchStyle: 'contains',\r\n actionsBox: false,\r\n iconBase: classNames.ICONBASE,\r\n tickIcon: classNames.TICKICON,\r\n showTick: false,\r\n template: {\r\n caret: ''\r\n },\r\n maxOptions: false,\r\n mobile: false,\r\n selectOnTab: false,\r\n dropdownAlignRight: false,\r\n windowPadding: 0,\r\n virtualScroll: 600,\r\n display: false,\r\n sanitize: true,\r\n sanitizeFn: null,\r\n whiteList: DefaultWhitelist\r\n };\r\n\r\n Selectpicker.prototype = {\r\n\r\n constructor: Selectpicker,\r\n\r\n init: function () {\r\n var that = this,\r\n id = this.$element.attr('id');\r\n\r\n selectId++;\r\n this.selectId = 'bs-select-' + selectId;\r\n\r\n this.$element[0].classList.add('bs-select-hidden');\r\n\r\n this.multiple = this.$element.prop('multiple');\r\n this.autofocus = this.$element.prop('autofocus');\r\n\r\n if (this.$element[0].classList.contains('show-tick')) {\r\n this.options.showTick = true;\r\n }\r\n\r\n this.$newElement = this.createDropdown();\r\n this.$element\r\n .after(this.$newElement)\r\n .prependTo(this.$newElement);\r\n\r\n this.$button = this.$newElement.children('button');\r\n this.$menu = this.$newElement.children(Selector.MENU);\r\n this.$menuInner = this.$menu.children('.inner');\r\n this.$searchbox = this.$menu.find('input');\r\n\r\n this.$element[0].classList.remove('bs-select-hidden');\r\n\r\n if (this.options.dropdownAlignRight === true) this.$menu[0].classList.add(classNames.MENURIGHT);\r\n\r\n if (typeof id !== 'undefined') {\r\n this.$button.attr('data-id', id);\r\n }\r\n\r\n this.checkDisabled();\r\n this.clickListener();\r\n\r\n if (this.options.liveSearch) {\r\n this.liveSearchListener();\r\n this.focusedParent = this.$searchbox[0];\r\n } else {\r\n this.focusedParent = this.$menuInner[0];\r\n }\r\n\r\n this.setStyle();\r\n this.render();\r\n this.setWidth();\r\n if (this.options.container) {\r\n this.selectPosition();\r\n } else {\r\n this.$element.on('hide' + EVENT_KEY, function () {\r\n if (that.isVirtual()) {\r\n // empty menu on close\r\n var menuInner = that.$menuInner[0],\r\n emptyMenu = menuInner.firstChild.cloneNode(false);\r\n\r\n // replace the existing UL with an empty one - this is faster than $.empty() or innerHTML = ''\r\n menuInner.replaceChild(emptyMenu, menuInner.firstChild);\r\n menuInner.scrollTop = 0;\r\n }\r\n });\r\n }\r\n this.$menu.data('this', this);\r\n this.$newElement.data('this', this);\r\n if (this.options.mobile) this.mobile();\r\n\r\n this.$newElement.on({\r\n 'hide.bs.dropdown': function (e) {\r\n that.$element.trigger('hide' + EVENT_KEY, e);\r\n },\r\n 'hidden.bs.dropdown': function (e) {\r\n that.$element.trigger('hidden' + EVENT_KEY, e);\r\n },\r\n 'show.bs.dropdown': function (e) {\r\n that.$element.trigger('show' + EVENT_KEY, e);\r\n },\r\n 'shown.bs.dropdown': function (e) {\r\n that.$element.trigger('shown' + EVENT_KEY, e);\r\n }\r\n });\r\n\r\n if (that.$element[0].hasAttribute('required')) {\r\n this.$element.on('invalid' + EVENT_KEY, function () {\r\n that.$button[0].classList.add('bs-invalid');\r\n\r\n that.$element\r\n .on('shown' + EVENT_KEY + '.invalid', function () {\r\n that.$element\r\n .val(that.$element.val()) // set the value to hide the validation message in Chrome when menu is opened\r\n .off('shown' + EVENT_KEY + '.invalid');\r\n })\r\n .on('rendered' + EVENT_KEY, function () {\r\n // if select is no longer invalid, remove the bs-invalid class\r\n if (this.validity.valid) that.$button[0].classList.remove('bs-invalid');\r\n that.$element.off('rendered' + EVENT_KEY);\r\n });\r\n\r\n that.$button.on('blur' + EVENT_KEY, function () {\r\n that.$element.trigger('focus').trigger('blur');\r\n that.$button.off('blur' + EVENT_KEY);\r\n });\r\n });\r\n }\r\n\r\n setTimeout(function () {\r\n that.createLi();\r\n that.$element.trigger('loaded' + EVENT_KEY);\r\n });\r\n },\r\n\r\n createDropdown: function () {\r\n // Options\r\n // If we are multiple or showTick option is set, then add the show-tick class\r\n var showTick = (this.multiple || this.options.showTick) ? ' show-tick' : '',\r\n multiselectable = this.multiple ? ' aria-multiselectable=\"true\"' : '',\r\n inputGroup = '',\r\n autofocus = this.autofocus ? ' autofocus' : '';\r\n\r\n if (version.major < 4 && this.$element.parent().hasClass('input-group')) {\r\n inputGroup = ' input-group-btn';\r\n }\r\n\r\n // Elements\r\n var drop,\r\n header = '',\r\n searchbox = '',\r\n actionsbox = '',\r\n donebutton = '';\r\n\r\n if (this.options.header) {\r\n header =\r\n '
' +\r\n '' +\r\n this.options.header +\r\n '
';\r\n }\r\n\r\n if (this.options.liveSearch) {\r\n searchbox =\r\n '
' +\r\n '' +\r\n '
';\r\n }\r\n\r\n if (this.multiple && this.options.actionsBox) {\r\n actionsbox =\r\n '
' +\r\n '
' +\r\n '' +\r\n '' +\r\n '
' +\r\n '
';\r\n }\r\n\r\n if (this.multiple && this.options.doneButton) {\r\n donebutton =\r\n '
' +\r\n '
' +\r\n '' +\r\n '
' +\r\n '
';\r\n }\r\n\r\n drop =\r\n '
' +\r\n '' +\r\n '
' +\r\n header +\r\n searchbox +\r\n actionsbox +\r\n '
' +\r\n '
    ' +\r\n '
' +\r\n '
' +\r\n donebutton +\r\n '
' +\r\n '
';\r\n\r\n return $(drop);\r\n },\r\n\r\n setPositionData: function () {\r\n this.selectpicker.view.canHighlight = [];\r\n this.selectpicker.view.size = 0;\r\n\r\n for (var i = 0; i < this.selectpicker.current.data.length; i++) {\r\n var li = this.selectpicker.current.data[i],\r\n canHighlight = true;\r\n\r\n if (li.type === 'divider') {\r\n canHighlight = false;\r\n li.height = this.sizeInfo.dividerHeight;\r\n } else if (li.type === 'optgroup-label') {\r\n canHighlight = false;\r\n li.height = this.sizeInfo.dropdownHeaderHeight;\r\n } else {\r\n li.height = this.sizeInfo.liHeight;\r\n }\r\n\r\n if (li.disabled) canHighlight = false;\r\n\r\n this.selectpicker.view.canHighlight.push(canHighlight);\r\n\r\n if (canHighlight) {\r\n this.selectpicker.view.size++;\r\n li.posinset = this.selectpicker.view.size;\r\n }\r\n\r\n li.position = (i === 0 ? 0 : this.selectpicker.current.data[i - 1].position) + li.height;\r\n }\r\n },\r\n\r\n isVirtual: function () {\r\n return (this.options.virtualScroll !== false) && (this.selectpicker.main.elements.length >= this.options.virtualScroll) || this.options.virtualScroll === true;\r\n },\r\n\r\n createView: function (isSearching, setSize, refresh) {\r\n var that = this,\r\n scrollTop = 0,\r\n active = [],\r\n selected,\r\n prevActive;\r\n\r\n this.selectpicker.current = isSearching ? this.selectpicker.search : this.selectpicker.main;\r\n\r\n this.setPositionData();\r\n\r\n if (setSize) {\r\n if (refresh) {\r\n scrollTop = this.$menuInner[0].scrollTop;\r\n } else if (!that.multiple) {\r\n var element = that.$element[0],\r\n selectedIndex = (element.options[element.selectedIndex] || {}).liIndex;\r\n\r\n if (typeof selectedIndex === 'number' && that.options.size !== false) {\r\n var selectedData = that.selectpicker.main.data[selectedIndex],\r\n position = selectedData && selectedData.position;\r\n\r\n if (position) {\r\n scrollTop = position - ((that.sizeInfo.menuInnerHeight + that.sizeInfo.liHeight) / 2);\r\n }\r\n }\r\n }\r\n }\r\n\r\n scroll(scrollTop, true);\r\n\r\n this.$menuInner.off('scroll.createView').on('scroll.createView', function (e, updateValue) {\r\n if (!that.noScroll) scroll(this.scrollTop, updateValue);\r\n that.noScroll = false;\r\n });\r\n\r\n function scroll (scrollTop, init) {\r\n var size = that.selectpicker.current.elements.length,\r\n chunks = [],\r\n chunkSize,\r\n chunkCount,\r\n firstChunk,\r\n lastChunk,\r\n currentChunk,\r\n prevPositions,\r\n positionIsDifferent,\r\n previousElements,\r\n menuIsDifferent = true,\r\n isVirtual = that.isVirtual();\r\n\r\n that.selectpicker.view.scrollTop = scrollTop;\r\n\r\n chunkSize = Math.ceil(that.sizeInfo.menuInnerHeight / that.sizeInfo.liHeight * 1.5); // number of options in a chunk\r\n chunkCount = Math.round(size / chunkSize) || 1; // number of chunks\r\n\r\n for (var i = 0; i < chunkCount; i++) {\r\n var endOfChunk = (i + 1) * chunkSize;\r\n\r\n if (i === chunkCount - 1) {\r\n endOfChunk = size;\r\n }\r\n\r\n chunks[i] = [\r\n (i) * chunkSize + (!i ? 0 : 1),\r\n endOfChunk\r\n ];\r\n\r\n if (!size) break;\r\n\r\n if (currentChunk === undefined && scrollTop - 1 <= that.selectpicker.current.data[endOfChunk - 1].position - that.sizeInfo.menuInnerHeight) {\r\n currentChunk = i;\r\n }\r\n }\r\n\r\n if (currentChunk === undefined) currentChunk = 0;\r\n\r\n prevPositions = [that.selectpicker.view.position0, that.selectpicker.view.position1];\r\n\r\n // always display previous, current, and next chunks\r\n firstChunk = Math.max(0, currentChunk - 1);\r\n lastChunk = Math.min(chunkCount - 1, currentChunk + 1);\r\n\r\n that.selectpicker.view.position0 = isVirtual === false ? 0 : (Math.max(0, chunks[firstChunk][0]) || 0);\r\n that.selectpicker.view.position1 = isVirtual === false ? size : (Math.min(size, chunks[lastChunk][1]) || 0);\r\n\r\n positionIsDifferent = prevPositions[0] !== that.selectpicker.view.position0 || prevPositions[1] !== that.selectpicker.view.position1;\r\n\r\n if (that.activeIndex !== undefined) {\r\n prevActive = that.selectpicker.main.elements[that.prevActiveIndex];\r\n active = that.selectpicker.main.elements[that.activeIndex];\r\n selected = that.selectpicker.main.elements[that.selectedIndex];\r\n\r\n if (init) {\r\n if (that.activeIndex !== that.selectedIndex) {\r\n that.defocusItem(active);\r\n }\r\n that.activeIndex = undefined;\r\n }\r\n\r\n if (that.activeIndex && that.activeIndex !== that.selectedIndex) {\r\n that.defocusItem(selected);\r\n }\r\n }\r\n\r\n if (that.prevActiveIndex !== undefined && that.prevActiveIndex !== that.activeIndex && that.prevActiveIndex !== that.selectedIndex) {\r\n that.defocusItem(prevActive);\r\n }\r\n\r\n if (init || positionIsDifferent) {\r\n previousElements = that.selectpicker.view.visibleElements ? that.selectpicker.view.visibleElements.slice() : [];\r\n\r\n if (isVirtual === false) {\r\n that.selectpicker.view.visibleElements = that.selectpicker.current.elements;\r\n } else {\r\n that.selectpicker.view.visibleElements = that.selectpicker.current.elements.slice(that.selectpicker.view.position0, that.selectpicker.view.position1);\r\n }\r\n\r\n that.setOptionStatus();\r\n\r\n // if searching, check to make sure the list has actually been updated before updating DOM\r\n // this prevents unnecessary repaints\r\n if (isSearching || (isVirtual === false && init)) menuIsDifferent = !isEqual(previousElements, that.selectpicker.view.visibleElements);\r\n\r\n // if virtual scroll is disabled and not searching,\r\n // menu should never need to be updated more than once\r\n if ((init || isVirtual === true) && menuIsDifferent) {\r\n var menuInner = that.$menuInner[0],\r\n menuFragment = document.createDocumentFragment(),\r\n emptyMenu = menuInner.firstChild.cloneNode(false),\r\n marginTop,\r\n marginBottom,\r\n elements = that.selectpicker.view.visibleElements,\r\n toSanitize = [];\r\n\r\n // replace the existing UL with an empty one - this is faster than $.empty()\r\n menuInner.replaceChild(emptyMenu, menuInner.firstChild);\r\n\r\n for (var i = 0, visibleElementsLen = elements.length; i < visibleElementsLen; i++) {\r\n var element = elements[i],\r\n elText,\r\n elementData;\r\n\r\n if (that.options.sanitize) {\r\n elText = element.lastChild;\r\n\r\n if (elText) {\r\n elementData = that.selectpicker.current.data[i + that.selectpicker.view.position0];\r\n\r\n if (elementData && elementData.content && !elementData.sanitized) {\r\n toSanitize.push(elText);\r\n elementData.sanitized = true;\r\n }\r\n }\r\n }\r\n\r\n menuFragment.appendChild(element);\r\n }\r\n\r\n if (that.options.sanitize && toSanitize.length) {\r\n sanitizeHtml(toSanitize, that.options.whiteList, that.options.sanitizeFn);\r\n }\r\n\r\n if (isVirtual === true) {\r\n marginTop = (that.selectpicker.view.position0 === 0 ? 0 : that.selectpicker.current.data[that.selectpicker.view.position0 - 1].position);\r\n marginBottom = (that.selectpicker.view.position1 > size - 1 ? 0 : that.selectpicker.current.data[size - 1].position - that.selectpicker.current.data[that.selectpicker.view.position1 - 1].position);\r\n\r\n menuInner.firstChild.style.marginTop = marginTop + 'px';\r\n menuInner.firstChild.style.marginBottom = marginBottom + 'px';\r\n } else {\r\n menuInner.firstChild.style.marginTop = 0;\r\n menuInner.firstChild.style.marginBottom = 0;\r\n }\r\n\r\n menuInner.firstChild.appendChild(menuFragment);\r\n\r\n // if an option is encountered that is wider than the current menu width, update the menu width accordingly\r\n // switch to ResizeObserver with increased browser support\r\n if (isVirtual === true && that.sizeInfo.hasScrollBar) {\r\n var menuInnerInnerWidth = menuInner.firstChild.offsetWidth;\r\n\r\n if (init && menuInnerInnerWidth < that.sizeInfo.menuInnerInnerWidth && that.sizeInfo.totalMenuWidth > that.sizeInfo.selectWidth) {\r\n menuInner.firstChild.style.minWidth = that.sizeInfo.menuInnerInnerWidth + 'px';\r\n } else if (menuInnerInnerWidth > that.sizeInfo.menuInnerInnerWidth) {\r\n // set to 0 to get actual width of menu\r\n that.$menu[0].style.minWidth = 0;\r\n\r\n var actualMenuWidth = menuInner.firstChild.offsetWidth;\r\n\r\n if (actualMenuWidth > that.sizeInfo.menuInnerInnerWidth) {\r\n that.sizeInfo.menuInnerInnerWidth = actualMenuWidth;\r\n menuInner.firstChild.style.minWidth = that.sizeInfo.menuInnerInnerWidth + 'px';\r\n }\r\n\r\n // reset to default CSS styling\r\n that.$menu[0].style.minWidth = '';\r\n }\r\n }\r\n }\r\n }\r\n\r\n that.prevActiveIndex = that.activeIndex;\r\n\r\n if (!that.options.liveSearch) {\r\n that.$menuInner.trigger('focus');\r\n } else if (isSearching && init) {\r\n var index = 0,\r\n newActive;\r\n\r\n if (!that.selectpicker.view.canHighlight[index]) {\r\n index = 1 + that.selectpicker.view.canHighlight.slice(1).indexOf(true);\r\n }\r\n\r\n newActive = that.selectpicker.view.visibleElements[index];\r\n\r\n that.defocusItem(that.selectpicker.view.currentActive);\r\n\r\n that.activeIndex = (that.selectpicker.current.data[index] || {}).index;\r\n\r\n that.focusItem(newActive);\r\n }\r\n }\r\n\r\n $(window)\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + '.createView')\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + '.createView', function () {\r\n var isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (isActive) scroll(that.$menuInner[0].scrollTop);\r\n });\r\n },\r\n\r\n focusItem: function (li, liData, noStyle) {\r\n if (li) {\r\n liData = liData || this.selectpicker.main.data[this.activeIndex];\r\n var a = li.firstChild;\r\n\r\n if (a) {\r\n a.setAttribute('aria-setsize', this.selectpicker.view.size);\r\n a.setAttribute('aria-posinset', liData.posinset);\r\n\r\n if (noStyle !== true) {\r\n this.focusedParent.setAttribute('aria-activedescendant', a.id);\r\n li.classList.add('active');\r\n a.classList.add('active');\r\n }\r\n }\r\n }\r\n },\r\n\r\n defocusItem: function (li) {\r\n if (li) {\r\n li.classList.remove('active');\r\n if (li.firstChild) li.firstChild.classList.remove('active');\r\n }\r\n },\r\n\r\n setPlaceholder: function () {\r\n var updateIndex = false;\r\n\r\n if (this.options.title && !this.multiple) {\r\n if (!this.selectpicker.view.titleOption) this.selectpicker.view.titleOption = document.createElement('option');\r\n\r\n // this option doesn't create a new
  • element, but does add a new option at the start,\r\n // so startIndex should increase to prevent having to check every option for the bs-title-option class\r\n updateIndex = true;\r\n\r\n var element = this.$element[0],\r\n isSelected = false,\r\n titleNotAppended = !this.selectpicker.view.titleOption.parentNode;\r\n\r\n if (titleNotAppended) {\r\n // Use native JS to prepend option (faster)\r\n this.selectpicker.view.titleOption.className = 'bs-title-option';\r\n this.selectpicker.view.titleOption.value = '';\r\n\r\n // Check if selected or data-selected attribute is already set on an option. If not, select the titleOption option.\r\n // the selected item may have been changed by user or programmatically before the bootstrap select plugin runs,\r\n // if so, the select will have the data-selected attribute\r\n var $opt = $(element.options[element.selectedIndex]);\r\n isSelected = $opt.attr('selected') === undefined && this.$element.data('selected') === undefined;\r\n }\r\n\r\n if (titleNotAppended || this.selectpicker.view.titleOption.index !== 0) {\r\n element.insertBefore(this.selectpicker.view.titleOption, element.firstChild);\r\n }\r\n\r\n // Set selected *after* appending to select,\r\n // otherwise the option doesn't get selected in IE\r\n // set using selectedIndex, as setting the selected attr to true here doesn't work in IE11\r\n if (isSelected) element.selectedIndex = 0;\r\n }\r\n\r\n return updateIndex;\r\n },\r\n\r\n createLi: function () {\r\n var that = this,\r\n iconBase = this.options.iconBase,\r\n optionSelector = ':not([hidden]):not([data-hidden=\"true\"])',\r\n mainElements = [],\r\n mainData = [],\r\n widestOptionLength = 0,\r\n optID = 0,\r\n startIndex = this.setPlaceholder() ? 1 : 0; // append the titleOption if necessary and skip the first option in the loop\r\n\r\n if (this.options.hideDisabled) optionSelector += ':not(:disabled)';\r\n\r\n if ((that.options.showTick || that.multiple) && !elementTemplates.checkMark.parentNode) {\r\n elementTemplates.checkMark.className = iconBase + ' ' + that.options.tickIcon + ' check-mark';\r\n elementTemplates.a.appendChild(elementTemplates.checkMark);\r\n }\r\n\r\n var selectOptions = this.$element[0].querySelectorAll('select > *' + optionSelector);\r\n\r\n function addDivider (config) {\r\n var previousData = mainData[mainData.length - 1];\r\n\r\n // ensure optgroup doesn't create back-to-back dividers\r\n if (\r\n previousData &&\r\n previousData.type === 'divider' &&\r\n (previousData.optID || config.optID)\r\n ) {\r\n return;\r\n }\r\n\r\n config = config || {};\r\n config.type = 'divider';\r\n\r\n mainElements.push(\r\n generateOption.li(\r\n false,\r\n classNames.DIVIDER,\r\n (config.optID ? config.optID + 'div' : undefined)\r\n )\r\n );\r\n\r\n mainData.push(config);\r\n }\r\n\r\n function addOption (option, config) {\r\n config = config || {};\r\n\r\n config.divider = option.getAttribute('data-divider') === 'true';\r\n\r\n if (config.divider) {\r\n addDivider({\r\n optID: config.optID\r\n });\r\n } else {\r\n var liIndex = mainData.length,\r\n cssText = option.style.cssText,\r\n inlineStyle = cssText ? htmlEscape(cssText) : '',\r\n optionClass = (option.className || '') + (config.optgroupClass || '');\r\n\r\n if (config.optID) optionClass = 'opt ' + optionClass;\r\n\r\n config.text = option.textContent;\r\n\r\n config.content = option.getAttribute('data-content');\r\n config.tokens = option.getAttribute('data-tokens');\r\n config.subtext = option.getAttribute('data-subtext');\r\n config.icon = option.getAttribute('data-icon');\r\n config.iconBase = iconBase;\r\n\r\n var textElement = generateOption.text(config);\r\n var liElement = generateOption.li(\r\n generateOption.a(\r\n textElement,\r\n optionClass,\r\n inlineStyle\r\n ),\r\n '',\r\n config.optID\r\n );\r\n\r\n if (liElement.firstChild) {\r\n liElement.firstChild.id = that.selectId + '-' + liIndex;\r\n }\r\n\r\n mainElements.push(liElement);\r\n\r\n option.liIndex = liIndex;\r\n\r\n config.display = config.content || config.text;\r\n config.type = 'option';\r\n config.index = liIndex;\r\n config.option = option;\r\n config.disabled = config.disabled || option.disabled;\r\n\r\n mainData.push(config);\r\n\r\n var combinedLength = 0;\r\n\r\n // count the number of characters in the option - not perfect, but should work in most cases\r\n if (config.display) combinedLength += config.display.length;\r\n if (config.subtext) combinedLength += config.subtext.length;\r\n // if there is an icon, ensure this option's width is checked\r\n if (config.icon) combinedLength += 1;\r\n\r\n if (combinedLength > widestOptionLength) {\r\n widestOptionLength = combinedLength;\r\n\r\n // guess which option is the widest\r\n // use this when calculating menu width\r\n // not perfect, but it's fast, and the width will be updating accordingly when scrolling\r\n that.selectpicker.view.widestOption = mainElements[mainElements.length - 1];\r\n }\r\n }\r\n }\r\n\r\n function addOptgroup (index, selectOptions) {\r\n var optgroup = selectOptions[index],\r\n previous = selectOptions[index - 1],\r\n next = selectOptions[index + 1],\r\n options = optgroup.querySelectorAll('option' + optionSelector);\r\n\r\n if (!options.length) return;\r\n\r\n var config = {\r\n label: htmlEscape(optgroup.label),\r\n subtext: optgroup.getAttribute('data-subtext'),\r\n icon: optgroup.getAttribute('data-icon'),\r\n iconBase: iconBase\r\n },\r\n optgroupClass = ' ' + (optgroup.className || ''),\r\n headerIndex,\r\n lastIndex;\r\n\r\n optID++;\r\n\r\n if (previous) {\r\n addDivider({ optID: optID });\r\n }\r\n\r\n var labelElement = generateOption.label(config);\r\n\r\n mainElements.push(\r\n generateOption.li(labelElement, 'dropdown-header' + optgroupClass, optID)\r\n );\r\n\r\n mainData.push({\r\n display: config.label,\r\n subtext: config.subtext,\r\n type: 'optgroup-label',\r\n optID: optID\r\n });\r\n\r\n for (var j = 0, len = options.length; j < len; j++) {\r\n var option = options[j];\r\n\r\n if (j === 0) {\r\n headerIndex = mainData.length - 1;\r\n lastIndex = headerIndex + len;\r\n }\r\n\r\n addOption(option, {\r\n headerIndex: headerIndex,\r\n lastIndex: lastIndex,\r\n optID: optID,\r\n optgroupClass: optgroupClass,\r\n disabled: optgroup.disabled\r\n });\r\n }\r\n\r\n if (next) {\r\n addDivider({ optID: optID });\r\n }\r\n }\r\n\r\n for (var len = selectOptions.length; startIndex < len; startIndex++) {\r\n var item = selectOptions[startIndex];\r\n\r\n if (item.tagName !== 'OPTGROUP') {\r\n addOption(item, {});\r\n } else {\r\n addOptgroup(startIndex, selectOptions);\r\n }\r\n }\r\n\r\n this.selectpicker.main.elements = mainElements;\r\n this.selectpicker.main.data = mainData;\r\n\r\n this.selectpicker.current = this.selectpicker.main;\r\n },\r\n\r\n findLis: function () {\r\n return this.$menuInner.find('.inner > li');\r\n },\r\n\r\n render: function () {\r\n // ensure titleOption is appended and selected (if necessary) before getting selectedOptions\r\n this.setPlaceholder();\r\n\r\n var that = this,\r\n element = this.$element[0],\r\n selectedOptions = getSelectedOptions(element, this.options.hideDisabled),\r\n selectedCount = selectedOptions.length,\r\n button = this.$button[0],\r\n buttonInner = button.querySelector('.filter-option-inner-inner'),\r\n multipleSeparator = document.createTextNode(this.options.multipleSeparator),\r\n titleFragment = elementTemplates.fragment.cloneNode(false),\r\n showCount,\r\n countMax,\r\n hasContent = false;\r\n\r\n button.classList.toggle('bs-placeholder', that.multiple ? !selectedCount : !getSelectValues(element, selectedOptions));\r\n\r\n this.tabIndex();\r\n\r\n if (this.options.selectedTextFormat === 'static') {\r\n titleFragment = generateOption.text({ text: this.options.title }, true);\r\n } else {\r\n showCount = this.multiple && this.options.selectedTextFormat.indexOf('count') !== -1 && selectedCount > 1;\r\n\r\n // determine if the number of selected options will be shown (showCount === true)\r\n if (showCount) {\r\n countMax = this.options.selectedTextFormat.split('>');\r\n showCount = (countMax.length > 1 && selectedCount > countMax[1]) || (countMax.length === 1 && selectedCount >= 2);\r\n }\r\n\r\n // only loop through all selected options if the count won't be shown\r\n if (showCount === false) {\r\n for (var selectedIndex = 0; selectedIndex < selectedCount; selectedIndex++) {\r\n if (selectedIndex < 50) {\r\n var option = selectedOptions[selectedIndex],\r\n titleOptions = {},\r\n thisData = {\r\n content: option.getAttribute('data-content'),\r\n subtext: option.getAttribute('data-subtext'),\r\n icon: option.getAttribute('data-icon')\r\n };\r\n\r\n if (this.multiple && selectedIndex > 0) {\r\n titleFragment.appendChild(multipleSeparator.cloneNode(false));\r\n }\r\n\r\n if (option.title) {\r\n titleOptions.text = option.title;\r\n } else if (thisData.content && that.options.showContent) {\r\n titleOptions.content = thisData.content.toString();\r\n hasContent = true;\r\n } else {\r\n if (that.options.showIcon) {\r\n titleOptions.icon = thisData.icon;\r\n titleOptions.iconBase = this.options.iconBase;\r\n }\r\n if (that.options.showSubtext && !that.multiple && thisData.subtext) titleOptions.subtext = ' ' + thisData.subtext;\r\n titleOptions.text = option.textContent.trim();\r\n }\r\n\r\n titleFragment.appendChild(generateOption.text(titleOptions, true));\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n // add ellipsis\r\n if (selectedCount > 49) {\r\n titleFragment.appendChild(document.createTextNode('...'));\r\n }\r\n } else {\r\n var optionSelector = ':not([hidden]):not([data-hidden=\"true\"]):not([data-divider=\"true\"])';\r\n if (this.options.hideDisabled) optionSelector += ':not(:disabled)';\r\n\r\n // If this is a multiselect, and selectedTextFormat is count, then show 1 of 2 selected, etc.\r\n var totalCount = this.$element[0].querySelectorAll('select > option' + optionSelector + ', optgroup' + optionSelector + ' option' + optionSelector).length,\r\n tr8nText = (typeof this.options.countSelectedText === 'function') ? this.options.countSelectedText(selectedCount, totalCount) : this.options.countSelectedText;\r\n\r\n titleFragment = generateOption.text({\r\n text: tr8nText.replace('{0}', selectedCount.toString()).replace('{1}', totalCount.toString())\r\n }, true);\r\n }\r\n }\r\n\r\n if (this.options.title == undefined) {\r\n // use .attr to ensure undefined is returned if title attribute is not set\r\n this.options.title = this.$element.attr('title');\r\n }\r\n\r\n // If the select doesn't have a title, then use the default, or if nothing is set at all, use noneSelectedText\r\n if (!titleFragment.childNodes.length) {\r\n titleFragment = generateOption.text({\r\n text: typeof this.options.title !== 'undefined' ? this.options.title : this.options.noneSelectedText\r\n }, true);\r\n }\r\n\r\n // strip all HTML tags and trim the result, then unescape any escaped tags\r\n button.title = titleFragment.textContent.replace(/<[^>]*>?/g, '').trim();\r\n\r\n if (this.options.sanitize && hasContent) {\r\n sanitizeHtml([titleFragment], that.options.whiteList, that.options.sanitizeFn);\r\n }\r\n\r\n buttonInner.innerHTML = '';\r\n buttonInner.appendChild(titleFragment);\r\n\r\n if (version.major < 4 && this.$newElement[0].classList.contains('bs3-has-addon')) {\r\n var filterExpand = button.querySelector('.filter-expand'),\r\n clone = buttonInner.cloneNode(true);\r\n\r\n clone.className = 'filter-expand';\r\n\r\n if (filterExpand) {\r\n button.replaceChild(clone, filterExpand);\r\n } else {\r\n button.appendChild(clone);\r\n }\r\n }\r\n\r\n this.$element.trigger('rendered' + EVENT_KEY);\r\n },\r\n\r\n /**\r\n * @param [style]\r\n * @param [status]\r\n */\r\n setStyle: function (newStyle, status) {\r\n var button = this.$button[0],\r\n newElement = this.$newElement[0],\r\n style = this.options.style.trim(),\r\n buttonClass;\r\n\r\n if (this.$element.attr('class')) {\r\n this.$newElement.addClass(this.$element.attr('class').replace(/selectpicker|mobile-device|bs-select-hidden|validate\\[.*\\]/gi, ''));\r\n }\r\n\r\n if (version.major < 4) {\r\n newElement.classList.add('bs3');\r\n\r\n if (newElement.parentNode.classList.contains('input-group') &&\r\n (newElement.previousElementSibling || newElement.nextElementSibling) &&\r\n (newElement.previousElementSibling || newElement.nextElementSibling).classList.contains('input-group-addon')\r\n ) {\r\n newElement.classList.add('bs3-has-addon');\r\n }\r\n }\r\n\r\n if (newStyle) {\r\n buttonClass = newStyle.trim();\r\n } else {\r\n buttonClass = style;\r\n }\r\n\r\n if (status == 'add') {\r\n if (buttonClass) button.classList.add.apply(button.classList, buttonClass.split(' '));\r\n } else if (status == 'remove') {\r\n if (buttonClass) button.classList.remove.apply(button.classList, buttonClass.split(' '));\r\n } else {\r\n if (style) button.classList.remove.apply(button.classList, style.split(' '));\r\n if (buttonClass) button.classList.add.apply(button.classList, buttonClass.split(' '));\r\n }\r\n },\r\n\r\n liHeight: function (refresh) {\r\n if (!refresh && (this.options.size === false || this.sizeInfo)) return;\r\n\r\n if (!this.sizeInfo) this.sizeInfo = {};\r\n\r\n var newElement = document.createElement('div'),\r\n menu = document.createElement('div'),\r\n menuInner = document.createElement('div'),\r\n menuInnerInner = document.createElement('ul'),\r\n divider = document.createElement('li'),\r\n dropdownHeader = document.createElement('li'),\r\n li = document.createElement('li'),\r\n a = document.createElement('a'),\r\n text = document.createElement('span'),\r\n header = this.options.header && this.$menu.find('.' + classNames.POPOVERHEADER).length > 0 ? this.$menu.find('.' + classNames.POPOVERHEADER)[0].cloneNode(true) : null,\r\n search = this.options.liveSearch ? document.createElement('div') : null,\r\n actions = this.options.actionsBox && this.multiple && this.$menu.find('.bs-actionsbox').length > 0 ? this.$menu.find('.bs-actionsbox')[0].cloneNode(true) : null,\r\n doneButton = this.options.doneButton && this.multiple && this.$menu.find('.bs-donebutton').length > 0 ? this.$menu.find('.bs-donebutton')[0].cloneNode(true) : null,\r\n firstOption = this.$element.find('option')[0];\r\n\r\n this.sizeInfo.selectWidth = this.$newElement[0].offsetWidth;\r\n\r\n text.className = 'text';\r\n a.className = 'dropdown-item ' + (firstOption ? firstOption.className : '');\r\n newElement.className = this.$menu[0].parentNode.className + ' ' + classNames.SHOW;\r\n newElement.style.width = 0; // ensure button width doesn't affect natural width of menu when calculating\r\n if (this.options.width === 'auto') menu.style.minWidth = 0;\r\n menu.className = classNames.MENU + ' ' + classNames.SHOW;\r\n menuInner.className = 'inner ' + classNames.SHOW;\r\n menuInnerInner.className = classNames.MENU + ' inner ' + (version.major === '4' ? classNames.SHOW : '');\r\n divider.className = classNames.DIVIDER;\r\n dropdownHeader.className = 'dropdown-header';\r\n\r\n text.appendChild(document.createTextNode('\\u200b'));\r\n a.appendChild(text);\r\n li.appendChild(a);\r\n dropdownHeader.appendChild(text.cloneNode(true));\r\n\r\n if (this.selectpicker.view.widestOption) {\r\n menuInnerInner.appendChild(this.selectpicker.view.widestOption.cloneNode(true));\r\n }\r\n\r\n menuInnerInner.appendChild(li);\r\n menuInnerInner.appendChild(divider);\r\n menuInnerInner.appendChild(dropdownHeader);\r\n if (header) menu.appendChild(header);\r\n if (search) {\r\n var input = document.createElement('input');\r\n search.className = 'bs-searchbox';\r\n input.className = 'form-control';\r\n search.appendChild(input);\r\n menu.appendChild(search);\r\n }\r\n if (actions) menu.appendChild(actions);\r\n menuInner.appendChild(menuInnerInner);\r\n menu.appendChild(menuInner);\r\n if (doneButton) menu.appendChild(doneButton);\r\n newElement.appendChild(menu);\r\n\r\n document.body.appendChild(newElement);\r\n\r\n var liHeight = li.offsetHeight,\r\n dropdownHeaderHeight = dropdownHeader ? dropdownHeader.offsetHeight : 0,\r\n headerHeight = header ? header.offsetHeight : 0,\r\n searchHeight = search ? search.offsetHeight : 0,\r\n actionsHeight = actions ? actions.offsetHeight : 0,\r\n doneButtonHeight = doneButton ? doneButton.offsetHeight : 0,\r\n dividerHeight = $(divider).outerHeight(true),\r\n // fall back to jQuery if getComputedStyle is not supported\r\n menuStyle = window.getComputedStyle ? window.getComputedStyle(menu) : false,\r\n menuWidth = menu.offsetWidth,\r\n $menu = menuStyle ? null : $(menu),\r\n menuPadding = {\r\n vert: toInteger(menuStyle ? menuStyle.paddingTop : $menu.css('paddingTop')) +\r\n toInteger(menuStyle ? menuStyle.paddingBottom : $menu.css('paddingBottom')) +\r\n toInteger(menuStyle ? menuStyle.borderTopWidth : $menu.css('borderTopWidth')) +\r\n toInteger(menuStyle ? menuStyle.borderBottomWidth : $menu.css('borderBottomWidth')),\r\n horiz: toInteger(menuStyle ? menuStyle.paddingLeft : $menu.css('paddingLeft')) +\r\n toInteger(menuStyle ? menuStyle.paddingRight : $menu.css('paddingRight')) +\r\n toInteger(menuStyle ? menuStyle.borderLeftWidth : $menu.css('borderLeftWidth')) +\r\n toInteger(menuStyle ? menuStyle.borderRightWidth : $menu.css('borderRightWidth'))\r\n },\r\n menuExtras = {\r\n vert: menuPadding.vert +\r\n toInteger(menuStyle ? menuStyle.marginTop : $menu.css('marginTop')) +\r\n toInteger(menuStyle ? menuStyle.marginBottom : $menu.css('marginBottom')) + 2,\r\n horiz: menuPadding.horiz +\r\n toInteger(menuStyle ? menuStyle.marginLeft : $menu.css('marginLeft')) +\r\n toInteger(menuStyle ? menuStyle.marginRight : $menu.css('marginRight')) + 2\r\n },\r\n scrollBarWidth;\r\n\r\n menuInner.style.overflowY = 'scroll';\r\n\r\n scrollBarWidth = menu.offsetWidth - menuWidth;\r\n\r\n document.body.removeChild(newElement);\r\n\r\n this.sizeInfo.liHeight = liHeight;\r\n this.sizeInfo.dropdownHeaderHeight = dropdownHeaderHeight;\r\n this.sizeInfo.headerHeight = headerHeight;\r\n this.sizeInfo.searchHeight = searchHeight;\r\n this.sizeInfo.actionsHeight = actionsHeight;\r\n this.sizeInfo.doneButtonHeight = doneButtonHeight;\r\n this.sizeInfo.dividerHeight = dividerHeight;\r\n this.sizeInfo.menuPadding = menuPadding;\r\n this.sizeInfo.menuExtras = menuExtras;\r\n this.sizeInfo.menuWidth = menuWidth;\r\n this.sizeInfo.menuInnerInnerWidth = menuWidth - menuPadding.horiz;\r\n this.sizeInfo.totalMenuWidth = this.sizeInfo.menuWidth;\r\n this.sizeInfo.scrollBarWidth = scrollBarWidth;\r\n this.sizeInfo.selectHeight = this.$newElement[0].offsetHeight;\r\n\r\n this.setPositionData();\r\n },\r\n\r\n getSelectPosition: function () {\r\n var that = this,\r\n $window = $(window),\r\n pos = that.$newElement.offset(),\r\n $container = $(that.options.container),\r\n containerPos;\r\n\r\n if (that.options.container && $container.length && !$container.is('body')) {\r\n containerPos = $container.offset();\r\n containerPos.top += parseInt($container.css('borderTopWidth'));\r\n containerPos.left += parseInt($container.css('borderLeftWidth'));\r\n } else {\r\n containerPos = { top: 0, left: 0 };\r\n }\r\n\r\n var winPad = that.options.windowPadding;\r\n\r\n this.sizeInfo.selectOffsetTop = pos.top - containerPos.top - $window.scrollTop();\r\n this.sizeInfo.selectOffsetBot = $window.height() - this.sizeInfo.selectOffsetTop - this.sizeInfo.selectHeight - containerPos.top - winPad[2];\r\n this.sizeInfo.selectOffsetLeft = pos.left - containerPos.left - $window.scrollLeft();\r\n this.sizeInfo.selectOffsetRight = $window.width() - this.sizeInfo.selectOffsetLeft - this.sizeInfo.selectWidth - containerPos.left - winPad[1];\r\n this.sizeInfo.selectOffsetTop -= winPad[0];\r\n this.sizeInfo.selectOffsetLeft -= winPad[3];\r\n },\r\n\r\n setMenuSize: function (isAuto) {\r\n this.getSelectPosition();\r\n\r\n var selectWidth = this.sizeInfo.selectWidth,\r\n liHeight = this.sizeInfo.liHeight,\r\n headerHeight = this.sizeInfo.headerHeight,\r\n searchHeight = this.sizeInfo.searchHeight,\r\n actionsHeight = this.sizeInfo.actionsHeight,\r\n doneButtonHeight = this.sizeInfo.doneButtonHeight,\r\n divHeight = this.sizeInfo.dividerHeight,\r\n menuPadding = this.sizeInfo.menuPadding,\r\n menuInnerHeight,\r\n menuHeight,\r\n divLength = 0,\r\n minHeight,\r\n _minHeight,\r\n maxHeight,\r\n menuInnerMinHeight,\r\n estimate;\r\n\r\n if (this.options.dropupAuto) {\r\n // Get the estimated height of the menu without scrollbars.\r\n // This is useful for smaller menus, where there might be plenty of room\r\n // below the button without setting dropup, but we can't know\r\n // the exact height of the menu until createView is called later\r\n estimate = liHeight * this.selectpicker.current.elements.length + menuPadding.vert;\r\n this.$newElement.toggleClass(classNames.DROPUP, this.sizeInfo.selectOffsetTop - this.sizeInfo.selectOffsetBot > this.sizeInfo.menuExtras.vert && estimate + this.sizeInfo.menuExtras.vert + 50 > this.sizeInfo.selectOffsetBot);\r\n }\r\n\r\n if (this.options.size === 'auto') {\r\n _minHeight = this.selectpicker.current.elements.length > 3 ? this.sizeInfo.liHeight * 3 + this.sizeInfo.menuExtras.vert - 2 : 0;\r\n menuHeight = this.sizeInfo.selectOffsetBot - this.sizeInfo.menuExtras.vert;\r\n minHeight = _minHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight;\r\n menuInnerMinHeight = Math.max(_minHeight - menuPadding.vert, 0);\r\n\r\n if (this.$newElement.hasClass(classNames.DROPUP)) {\r\n menuHeight = this.sizeInfo.selectOffsetTop - this.sizeInfo.menuExtras.vert;\r\n }\r\n\r\n maxHeight = menuHeight;\r\n menuInnerHeight = menuHeight - headerHeight - searchHeight - actionsHeight - doneButtonHeight - menuPadding.vert;\r\n } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) {\r\n for (var i = 0; i < this.options.size; i++) {\r\n if (this.selectpicker.current.data[i].type === 'divider') divLength++;\r\n }\r\n\r\n menuHeight = liHeight * this.options.size + divLength * divHeight + menuPadding.vert;\r\n menuInnerHeight = menuHeight - menuPadding.vert;\r\n maxHeight = menuHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight;\r\n minHeight = menuInnerMinHeight = '';\r\n }\r\n\r\n this.$menu.css({\r\n 'max-height': maxHeight + 'px',\r\n 'overflow': 'hidden',\r\n 'min-height': minHeight + 'px'\r\n });\r\n\r\n this.$menuInner.css({\r\n 'max-height': menuInnerHeight + 'px',\r\n 'overflow-y': 'auto',\r\n 'min-height': menuInnerMinHeight + 'px'\r\n });\r\n\r\n // ensure menuInnerHeight is always a positive number to prevent issues calculating chunkSize in createView\r\n this.sizeInfo.menuInnerHeight = Math.max(menuInnerHeight, 1);\r\n\r\n if (this.selectpicker.current.data.length && this.selectpicker.current.data[this.selectpicker.current.data.length - 1].position > this.sizeInfo.menuInnerHeight) {\r\n this.sizeInfo.hasScrollBar = true;\r\n this.sizeInfo.totalMenuWidth = this.sizeInfo.menuWidth + this.sizeInfo.scrollBarWidth;\r\n }\r\n\r\n if (this.options.dropdownAlignRight === 'auto') {\r\n this.$menu.toggleClass(classNames.MENURIGHT, this.sizeInfo.selectOffsetLeft > this.sizeInfo.selectOffsetRight && this.sizeInfo.selectOffsetRight < (this.sizeInfo.totalMenuWidth - selectWidth));\r\n }\r\n\r\n if (this.dropdown && this.dropdown._popper) this.dropdown._popper.update();\r\n },\r\n\r\n setSize: function (refresh) {\r\n this.liHeight(refresh);\r\n\r\n if (this.options.header) this.$menu.css('padding-top', 0);\r\n if (this.options.size === false) return;\r\n\r\n var that = this,\r\n $window = $(window);\r\n\r\n this.setMenuSize();\r\n\r\n if (this.options.liveSearch) {\r\n this.$searchbox\r\n .off('input.setMenuSize propertychange.setMenuSize')\r\n .on('input.setMenuSize propertychange.setMenuSize', function () {\r\n return that.setMenuSize();\r\n });\r\n }\r\n\r\n if (this.options.size === 'auto') {\r\n $window\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize')\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize', function () {\r\n return that.setMenuSize();\r\n });\r\n } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) {\r\n $window.off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize');\r\n }\r\n\r\n that.createView(false, true, refresh);\r\n },\r\n\r\n setWidth: function () {\r\n var that = this;\r\n\r\n if (this.options.width === 'auto') {\r\n requestAnimationFrame(function () {\r\n that.$menu.css('min-width', '0');\r\n\r\n that.$element.on('loaded' + EVENT_KEY, function () {\r\n that.liHeight();\r\n that.setMenuSize();\r\n\r\n // Get correct width if element is hidden\r\n var $selectClone = that.$newElement.clone().appendTo('body'),\r\n btnWidth = $selectClone.css('width', 'auto').children('button').outerWidth();\r\n\r\n $selectClone.remove();\r\n\r\n // Set width to whatever's larger, button title or longest option\r\n that.sizeInfo.selectWidth = Math.max(that.sizeInfo.totalMenuWidth, btnWidth);\r\n that.$newElement.css('width', that.sizeInfo.selectWidth + 'px');\r\n });\r\n });\r\n } else if (this.options.width === 'fit') {\r\n // Remove inline min-width so width can be changed from 'auto'\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', '').addClass('fit-width');\r\n } else if (this.options.width) {\r\n // Remove inline min-width so width can be changed from 'auto'\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', this.options.width);\r\n } else {\r\n // Remove inline min-width/width so width can be changed\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', '');\r\n }\r\n // Remove fit-width class if width is changed programmatically\r\n if (this.$newElement.hasClass('fit-width') && this.options.width !== 'fit') {\r\n this.$newElement[0].classList.remove('fit-width');\r\n }\r\n },\r\n\r\n selectPosition: function () {\r\n this.$bsContainer = $('
    ');\r\n\r\n var that = this,\r\n $container = $(this.options.container),\r\n pos,\r\n containerPos,\r\n actualHeight,\r\n getPlacement = function ($element) {\r\n var containerPosition = {},\r\n // fall back to dropdown's default display setting if display is not manually set\r\n display = that.options.display || (\r\n // Bootstrap 3 doesn't have $.fn.dropdown.Constructor.Default\r\n $.fn.dropdown.Constructor.Default ? $.fn.dropdown.Constructor.Default.display\r\n : false\r\n );\r\n\r\n that.$bsContainer.addClass($element.attr('class').replace(/form-control|fit-width/gi, '')).toggleClass(classNames.DROPUP, $element.hasClass(classNames.DROPUP));\r\n pos = $element.offset();\r\n\r\n if (!$container.is('body')) {\r\n containerPos = $container.offset();\r\n containerPos.top += parseInt($container.css('borderTopWidth')) - $container.scrollTop();\r\n containerPos.left += parseInt($container.css('borderLeftWidth')) - $container.scrollLeft();\r\n } else {\r\n containerPos = { top: 0, left: 0 };\r\n }\r\n\r\n actualHeight = $element.hasClass(classNames.DROPUP) ? 0 : $element[0].offsetHeight;\r\n\r\n // Bootstrap 4+ uses Popper for menu positioning\r\n if (version.major < 4 || display === 'static') {\r\n containerPosition.top = pos.top - containerPos.top + actualHeight;\r\n containerPosition.left = pos.left - containerPos.left;\r\n }\r\n\r\n containerPosition.width = $element[0].offsetWidth;\r\n\r\n that.$bsContainer.css(containerPosition);\r\n };\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (that.isDisabled()) {\r\n return;\r\n }\r\n\r\n getPlacement(that.$newElement);\r\n\r\n that.$bsContainer\r\n .appendTo(that.options.container)\r\n .toggleClass(classNames.SHOW, !that.$button.hasClass(classNames.SHOW))\r\n .append(that.$menu);\r\n });\r\n\r\n $(window)\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + ' scroll' + EVENT_KEY + '.' + this.selectId)\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + ' scroll' + EVENT_KEY + '.' + this.selectId, function () {\r\n var isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (isActive) getPlacement(that.$newElement);\r\n });\r\n\r\n this.$element.on('hide' + EVENT_KEY, function () {\r\n that.$menu.data('height', that.$menu.height());\r\n that.$bsContainer.detach();\r\n });\r\n },\r\n\r\n setOptionStatus: function (selectedOnly) {\r\n var that = this;\r\n\r\n that.noScroll = false;\r\n\r\n if (that.selectpicker.view.visibleElements && that.selectpicker.view.visibleElements.length) {\r\n for (var i = 0; i < that.selectpicker.view.visibleElements.length; i++) {\r\n var liData = that.selectpicker.current.data[i + that.selectpicker.view.position0],\r\n option = liData.option;\r\n\r\n if (option) {\r\n if (selectedOnly !== true) {\r\n that.setDisabled(\r\n liData.index,\r\n liData.disabled\r\n );\r\n }\r\n\r\n that.setSelected(\r\n liData.index,\r\n option.selected\r\n );\r\n }\r\n }\r\n }\r\n },\r\n\r\n /**\r\n * @param {number} index - the index of the option that is being changed\r\n * @param {boolean} selected - true if the option is being selected, false if being deselected\r\n */\r\n setSelected: function (index, selected) {\r\n var li = this.selectpicker.main.elements[index],\r\n liData = this.selectpicker.main.data[index],\r\n activeIndexIsSet = this.activeIndex !== undefined,\r\n thisIsActive = this.activeIndex === index,\r\n prevActive,\r\n a,\r\n // if current option is already active\r\n // OR\r\n // if the current option is being selected, it's NOT multiple, and\r\n // activeIndex is undefined:\r\n // - when the menu is first being opened, OR\r\n // - after a search has been performed, OR\r\n // - when retainActive is false when selecting a new option (i.e. index of the newly selected option is not the same as the current activeIndex)\r\n keepActive = thisIsActive || (selected && !this.multiple && !activeIndexIsSet);\r\n\r\n liData.selected = selected;\r\n\r\n a = li.firstChild;\r\n\r\n if (selected) {\r\n this.selectedIndex = index;\r\n }\r\n\r\n li.classList.toggle('selected', selected);\r\n\r\n if (keepActive) {\r\n this.focusItem(li, liData);\r\n this.selectpicker.view.currentActive = li;\r\n this.activeIndex = index;\r\n } else {\r\n this.defocusItem(li);\r\n }\r\n\r\n if (a) {\r\n a.classList.toggle('selected', selected);\r\n\r\n if (selected) {\r\n a.setAttribute('aria-selected', true);\r\n } else {\r\n if (this.multiple) {\r\n a.setAttribute('aria-selected', false);\r\n } else {\r\n a.removeAttribute('aria-selected');\r\n }\r\n }\r\n }\r\n\r\n if (!keepActive && !activeIndexIsSet && selected && this.prevActiveIndex !== undefined) {\r\n prevActive = this.selectpicker.main.elements[this.prevActiveIndex];\r\n\r\n this.defocusItem(prevActive);\r\n }\r\n },\r\n\r\n /**\r\n * @param {number} index - the index of the option that is being disabled\r\n * @param {boolean} disabled - true if the option is being disabled, false if being enabled\r\n */\r\n setDisabled: function (index, disabled) {\r\n var li = this.selectpicker.main.elements[index],\r\n a;\r\n\r\n this.selectpicker.main.data[index].disabled = disabled;\r\n\r\n a = li.firstChild;\r\n\r\n li.classList.toggle(classNames.DISABLED, disabled);\r\n\r\n if (a) {\r\n if (version.major === '4') a.classList.toggle(classNames.DISABLED, disabled);\r\n\r\n if (disabled) {\r\n a.setAttribute('aria-disabled', disabled);\r\n a.setAttribute('tabindex', -1);\r\n } else {\r\n a.removeAttribute('aria-disabled');\r\n a.setAttribute('tabindex', 0);\r\n }\r\n }\r\n },\r\n\r\n isDisabled: function () {\r\n return this.$element[0].disabled;\r\n },\r\n\r\n checkDisabled: function () {\r\n if (this.isDisabled()) {\r\n this.$newElement[0].classList.add(classNames.DISABLED);\r\n this.$button.addClass(classNames.DISABLED).attr('tabindex', -1).attr('aria-disabled', true);\r\n } else {\r\n if (this.$button[0].classList.contains(classNames.DISABLED)) {\r\n this.$newElement[0].classList.remove(classNames.DISABLED);\r\n this.$button.removeClass(classNames.DISABLED).attr('aria-disabled', false);\r\n }\r\n\r\n if (this.$button.attr('tabindex') == -1 && !this.$element.data('tabindex')) {\r\n this.$button.removeAttr('tabindex');\r\n }\r\n }\r\n },\r\n\r\n tabIndex: function () {\r\n if (this.$element.data('tabindex') !== this.$element.attr('tabindex') &&\r\n (this.$element.attr('tabindex') !== -98 && this.$element.attr('tabindex') !== '-98')) {\r\n this.$element.data('tabindex', this.$element.attr('tabindex'));\r\n this.$button.attr('tabindex', this.$element.data('tabindex'));\r\n }\r\n\r\n this.$element.attr('tabindex', -98);\r\n },\r\n\r\n clickListener: function () {\r\n var that = this,\r\n $document = $(document);\r\n\r\n $document.data('spaceSelect', false);\r\n\r\n this.$button.on('keyup', function (e) {\r\n if (/(32)/.test(e.keyCode.toString(10)) && $document.data('spaceSelect')) {\r\n e.preventDefault();\r\n $document.data('spaceSelect', false);\r\n }\r\n });\r\n\r\n this.$newElement.on('show.bs.dropdown', function () {\r\n if (version.major > 3 && !that.dropdown) {\r\n that.dropdown = that.$button.data('bs.dropdown');\r\n that.dropdown._menu = that.$menu[0];\r\n }\r\n });\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (!that.$newElement.hasClass(classNames.SHOW)) {\r\n that.setSize();\r\n }\r\n });\r\n\r\n function setFocus () {\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$menuInner.trigger('focus');\r\n }\r\n }\r\n\r\n function checkPopperExists () {\r\n if (that.dropdown && that.dropdown._popper && that.dropdown._popper.state.isCreated) {\r\n setFocus();\r\n } else {\r\n requestAnimationFrame(checkPopperExists);\r\n }\r\n }\r\n\r\n this.$element.on('shown' + EVENT_KEY, function () {\r\n if (that.$menuInner[0].scrollTop !== that.selectpicker.view.scrollTop) {\r\n that.$menuInner[0].scrollTop = that.selectpicker.view.scrollTop;\r\n }\r\n\r\n if (version.major > 3) {\r\n requestAnimationFrame(checkPopperExists);\r\n } else {\r\n setFocus();\r\n }\r\n });\r\n\r\n // ensure posinset and setsize are correct before selecting an option via a click\r\n this.$menuInner.on('mouseenter', 'li a', function (e) {\r\n var hoverLi = this.parentElement,\r\n position0 = that.isVirtual() ? that.selectpicker.view.position0 : 0,\r\n index = Array.prototype.indexOf.call(hoverLi.parentElement.children, hoverLi),\r\n hoverData = that.selectpicker.current.data[index + position0];\r\n\r\n that.focusItem(hoverLi, hoverData, true);\r\n });\r\n\r\n this.$menuInner.on('click', 'li a', function (e, retainActive) {\r\n var $this = $(this),\r\n element = that.$element[0],\r\n position0 = that.isVirtual() ? that.selectpicker.view.position0 : 0,\r\n clickedData = that.selectpicker.current.data[$this.parent().index() + position0],\r\n clickedIndex = clickedData.index,\r\n prevValue = getSelectValues(element),\r\n prevIndex = element.selectedIndex,\r\n prevOption = element.options[prevIndex],\r\n triggerChange = true;\r\n\r\n // Don't close on multi choice menu\r\n if (that.multiple && that.options.maxOptions !== 1) {\r\n e.stopPropagation();\r\n }\r\n\r\n e.preventDefault();\r\n\r\n // Don't run if the select is disabled\r\n if (!that.isDisabled() && !$this.parent().hasClass(classNames.DISABLED)) {\r\n var option = clickedData.option,\r\n $option = $(option),\r\n state = option.selected,\r\n $optgroup = $option.parent('optgroup'),\r\n $optgroupOptions = $optgroup.find('option'),\r\n maxOptions = that.options.maxOptions,\r\n maxOptionsGrp = $optgroup.data('maxOptions') || false;\r\n\r\n if (clickedIndex === that.activeIndex) retainActive = true;\r\n\r\n if (!retainActive) {\r\n that.prevActiveIndex = that.activeIndex;\r\n that.activeIndex = undefined;\r\n }\r\n\r\n if (!that.multiple) { // Deselect all others if not multi select box\r\n if (prevOption) prevOption.selected = false;\r\n option.selected = true;\r\n that.setSelected(clickedIndex, true);\r\n } else { // Toggle the one we have chosen if we are multi select.\r\n option.selected = !state;\r\n\r\n that.setSelected(clickedIndex, !state);\r\n $this.trigger('blur');\r\n\r\n if (maxOptions !== false || maxOptionsGrp !== false) {\r\n var maxReached = maxOptions < getSelectedOptions(element).length,\r\n maxReachedGrp = maxOptionsGrp < $optgroup.find('option:selected').length;\r\n\r\n if ((maxOptions && maxReached) || (maxOptionsGrp && maxReachedGrp)) {\r\n if (maxOptions && maxOptions == 1) {\r\n element.selectedIndex = -1;\r\n option.selected = true;\r\n that.setOptionStatus(true);\r\n } else if (maxOptionsGrp && maxOptionsGrp == 1) {\r\n for (var i = 0; i < $optgroupOptions.length; i++) {\r\n var _option = $optgroupOptions[i];\r\n _option.selected = false;\r\n that.setSelected(_option.liIndex, false);\r\n }\r\n\r\n option.selected = true;\r\n that.setSelected(clickedIndex, true);\r\n } else {\r\n var maxOptionsText = typeof that.options.maxOptionsText === 'string' ? [that.options.maxOptionsText, that.options.maxOptionsText] : that.options.maxOptionsText,\r\n maxOptionsArr = typeof maxOptionsText === 'function' ? maxOptionsText(maxOptions, maxOptionsGrp) : maxOptionsText,\r\n maxTxt = maxOptionsArr[0].replace('{n}', maxOptions),\r\n maxTxtGrp = maxOptionsArr[1].replace('{n}', maxOptionsGrp),\r\n $notify = $('
    ');\r\n // If {var} is set in array, replace it\r\n /** @deprecated */\r\n if (maxOptionsArr[2]) {\r\n maxTxt = maxTxt.replace('{var}', maxOptionsArr[2][maxOptions > 1 ? 0 : 1]);\r\n maxTxtGrp = maxTxtGrp.replace('{var}', maxOptionsArr[2][maxOptionsGrp > 1 ? 0 : 1]);\r\n }\r\n\r\n option.selected = false;\r\n\r\n that.$menu.append($notify);\r\n\r\n if (maxOptions && maxReached) {\r\n $notify.append($('
    ' + maxTxt + '
    '));\r\n triggerChange = false;\r\n that.$element.trigger('maxReached' + EVENT_KEY);\r\n }\r\n\r\n if (maxOptionsGrp && maxReachedGrp) {\r\n $notify.append($('
    ' + maxTxtGrp + '
    '));\r\n triggerChange = false;\r\n that.$element.trigger('maxReachedGrp' + EVENT_KEY);\r\n }\r\n\r\n setTimeout(function () {\r\n that.setSelected(clickedIndex, false);\r\n }, 10);\r\n\r\n $notify[0].classList.add('fadeOut');\r\n\r\n setTimeout(function () {\r\n $notify.remove();\r\n }, 1050);\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (!that.multiple || (that.multiple && that.options.maxOptions === 1)) {\r\n that.$button.trigger('focus');\r\n } else if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n }\r\n\r\n // Trigger select 'change'\r\n if (triggerChange) {\r\n if (that.multiple || prevIndex !== element.selectedIndex) {\r\n // $option.prop('selected') is current option state (selected/unselected). prevValue is the value of the select prior to being changed.\r\n changedArguments = [option.index, $option.prop('selected'), prevValue];\r\n that.$element\r\n .triggerNative('change');\r\n }\r\n }\r\n }\r\n });\r\n\r\n this.$menu.on('click', 'li.' + classNames.DISABLED + ' a, .' + classNames.POPOVERHEADER + ', .' + classNames.POPOVERHEADER + ' :not(.close)', function (e) {\r\n if (e.currentTarget == this) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n if (that.options.liveSearch && !$(e.target).hasClass('close')) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n }\r\n });\r\n\r\n this.$menuInner.on('click', '.divider, .dropdown-header', function (e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n });\r\n\r\n this.$menu.on('click', '.' + classNames.POPOVERHEADER + ' .close', function () {\r\n that.$button.trigger('click');\r\n });\r\n\r\n this.$searchbox.on('click', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n this.$menu.on('click', '.actions-btn', function (e) {\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n\r\n e.preventDefault();\r\n e.stopPropagation();\r\n\r\n if ($(this).hasClass('bs-select-all')) {\r\n that.selectAll();\r\n } else {\r\n that.deselectAll();\r\n }\r\n });\r\n\r\n this.$element\r\n .on('change' + EVENT_KEY, function () {\r\n that.render();\r\n that.$element.trigger('changed' + EVENT_KEY, changedArguments);\r\n changedArguments = null;\r\n })\r\n .on('focus' + EVENT_KEY, function () {\r\n if (!that.options.mobile) that.$button.trigger('focus');\r\n });\r\n },\r\n\r\n liveSearchListener: function () {\r\n var that = this,\r\n noResults = document.createElement('li');\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (!!that.$searchbox.val()) {\r\n that.$searchbox.val('');\r\n }\r\n });\r\n\r\n this.$searchbox.on('click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n this.$searchbox.on('input propertychange', function () {\r\n var searchValue = that.$searchbox.val();\r\n\r\n that.selectpicker.search.elements = [];\r\n that.selectpicker.search.data = [];\r\n\r\n if (searchValue) {\r\n var i,\r\n searchMatch = [],\r\n q = searchValue.toUpperCase(),\r\n cache = {},\r\n cacheArr = [],\r\n searchStyle = that._searchStyle(),\r\n normalizeSearch = that.options.liveSearchNormalize;\r\n\r\n if (normalizeSearch) q = normalizeToBase(q);\r\n\r\n that._$lisSelected = that.$menuInner.find('.selected');\r\n\r\n for (var i = 0; i < that.selectpicker.main.data.length; i++) {\r\n var li = that.selectpicker.main.data[i];\r\n\r\n if (!cache[i]) {\r\n cache[i] = stringSearch(li, q, searchStyle, normalizeSearch);\r\n }\r\n\r\n if (cache[i] && li.headerIndex !== undefined && cacheArr.indexOf(li.headerIndex) === -1) {\r\n if (li.headerIndex > 0) {\r\n cache[li.headerIndex - 1] = true;\r\n cacheArr.push(li.headerIndex - 1);\r\n }\r\n\r\n cache[li.headerIndex] = true;\r\n cacheArr.push(li.headerIndex);\r\n\r\n cache[li.lastIndex + 1] = true;\r\n }\r\n\r\n if (cache[i] && li.type !== 'optgroup-label') cacheArr.push(i);\r\n }\r\n\r\n for (var i = 0, cacheLen = cacheArr.length; i < cacheLen; i++) {\r\n var index = cacheArr[i],\r\n prevIndex = cacheArr[i - 1],\r\n li = that.selectpicker.main.data[index],\r\n liPrev = that.selectpicker.main.data[prevIndex];\r\n\r\n if (li.type !== 'divider' || (li.type === 'divider' && liPrev && liPrev.type !== 'divider' && cacheLen - 1 !== i)) {\r\n that.selectpicker.search.data.push(li);\r\n searchMatch.push(that.selectpicker.main.elements[index]);\r\n }\r\n }\r\n\r\n that.activeIndex = undefined;\r\n that.noScroll = true;\r\n that.$menuInner.scrollTop(0);\r\n that.selectpicker.search.elements = searchMatch;\r\n that.createView(true);\r\n\r\n if (!searchMatch.length) {\r\n noResults.className = 'no-results';\r\n noResults.innerHTML = that.options.noneResultsText.replace('{0}', '\"' + htmlEscape(searchValue) + '\"');\r\n that.$menuInner[0].firstChild.appendChild(noResults);\r\n }\r\n } else {\r\n that.$menuInner.scrollTop(0);\r\n that.createView(false);\r\n }\r\n });\r\n },\r\n\r\n _searchStyle: function () {\r\n return this.options.liveSearchStyle || 'contains';\r\n },\r\n\r\n val: function (value) {\r\n var element = this.$element[0];\r\n\r\n if (typeof value !== 'undefined') {\r\n var prevValue = getSelectValues(element);\r\n\r\n changedArguments = [null, null, prevValue];\r\n\r\n this.$element\r\n .val(value)\r\n .trigger('changed' + EVENT_KEY, changedArguments);\r\n\r\n if (this.$newElement.hasClass(classNames.SHOW)) {\r\n if (this.multiple) {\r\n this.setOptionStatus(true);\r\n } else {\r\n var liSelectedIndex = (element.options[element.selectedIndex] || {}).liIndex;\r\n\r\n if (typeof liSelectedIndex === 'number') {\r\n this.setSelected(this.selectedIndex, false);\r\n this.setSelected(liSelectedIndex, true);\r\n }\r\n }\r\n }\r\n\r\n this.render();\r\n\r\n changedArguments = null;\r\n\r\n return this.$element;\r\n } else {\r\n return this.$element.val();\r\n }\r\n },\r\n\r\n changeAll: function (status) {\r\n if (!this.multiple) return;\r\n if (typeof status === 'undefined') status = true;\r\n\r\n var element = this.$element[0],\r\n previousSelected = 0,\r\n currentSelected = 0,\r\n prevValue = getSelectValues(element);\r\n\r\n element.classList.add('bs-select-hidden');\r\n\r\n for (var i = 0, len = this.selectpicker.current.elements.length; i < len; i++) {\r\n var liData = this.selectpicker.current.data[i],\r\n option = liData.option;\r\n\r\n if (option && !liData.disabled && liData.type !== 'divider') {\r\n if (liData.selected) previousSelected++;\r\n option.selected = status;\r\n if (status) currentSelected++;\r\n }\r\n }\r\n\r\n element.classList.remove('bs-select-hidden');\r\n\r\n if (previousSelected === currentSelected) return;\r\n\r\n this.setOptionStatus();\r\n\r\n changedArguments = [null, null, prevValue];\r\n\r\n this.$element\r\n .triggerNative('change');\r\n },\r\n\r\n selectAll: function () {\r\n return this.changeAll(true);\r\n },\r\n\r\n deselectAll: function () {\r\n return this.changeAll(false);\r\n },\r\n\r\n toggle: function (e) {\r\n e = e || window.event;\r\n\r\n if (e) e.stopPropagation();\r\n\r\n this.$button.trigger('click.bs.dropdown.data-api');\r\n },\r\n\r\n keydown: function (e) {\r\n var $this = $(this),\r\n isToggle = $this.hasClass('dropdown-toggle'),\r\n $parent = isToggle ? $this.closest('.dropdown') : $this.closest(Selector.MENU),\r\n that = $parent.data('this'),\r\n $items = that.findLis(),\r\n index,\r\n isActive,\r\n liActive,\r\n activeLi,\r\n offset,\r\n updateScroll = false,\r\n downOnTab = e.which === keyCodes.TAB && !isToggle && !that.options.selectOnTab,\r\n isArrowKey = REGEXP_ARROW.test(e.which) || downOnTab,\r\n scrollTop = that.$menuInner[0].scrollTop,\r\n isVirtual = that.isVirtual(),\r\n position0 = isVirtual === true ? that.selectpicker.view.position0 : 0;\r\n\r\n // do nothing if a function key is pressed\r\n if (e.which >= 112 && e.which <= 123) return;\r\n\r\n isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (\r\n !isActive &&\r\n (\r\n isArrowKey ||\r\n (e.which >= 48 && e.which <= 57) ||\r\n (e.which >= 96 && e.which <= 105) ||\r\n (e.which >= 65 && e.which <= 90)\r\n )\r\n ) {\r\n that.$button.trigger('click.bs.dropdown.data-api');\r\n\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n return;\r\n }\r\n }\r\n\r\n if (e.which === keyCodes.ESCAPE && isActive) {\r\n e.preventDefault();\r\n that.$button.trigger('click.bs.dropdown.data-api').trigger('focus');\r\n }\r\n\r\n if (isArrowKey) { // if up or down\r\n if (!$items.length) return;\r\n\r\n liActive = that.selectpicker.main.elements[that.activeIndex];\r\n index = liActive ? Array.prototype.indexOf.call(liActive.parentElement.children, liActive) : -1;\r\n\r\n if (index !== -1) {\r\n that.defocusItem(liActive);\r\n }\r\n\r\n if (e.which === keyCodes.ARROW_UP) { // up\r\n if (index !== -1) index--;\r\n if (index + position0 < 0) index += $items.length;\r\n\r\n if (!that.selectpicker.view.canHighlight[index + position0]) {\r\n index = that.selectpicker.view.canHighlight.slice(0, index + position0).lastIndexOf(true) - position0;\r\n if (index === -1) index = $items.length - 1;\r\n }\r\n } else if (e.which === keyCodes.ARROW_DOWN || downOnTab) { // down\r\n index++;\r\n if (index + position0 >= that.selectpicker.view.canHighlight.length) index = 0;\r\n\r\n if (!that.selectpicker.view.canHighlight[index + position0]) {\r\n index = index + 1 + that.selectpicker.view.canHighlight.slice(index + position0 + 1).indexOf(true);\r\n }\r\n }\r\n\r\n e.preventDefault();\r\n\r\n var liActiveIndex = position0 + index;\r\n\r\n if (e.which === keyCodes.ARROW_UP) { // up\r\n // scroll to bottom and highlight last option\r\n if (position0 === 0 && index === $items.length - 1) {\r\n that.$menuInner[0].scrollTop = that.$menuInner[0].scrollHeight;\r\n\r\n liActiveIndex = that.selectpicker.current.elements.length - 1;\r\n } else {\r\n activeLi = that.selectpicker.current.data[liActiveIndex];\r\n offset = activeLi.position - activeLi.height;\r\n\r\n updateScroll = offset < scrollTop;\r\n }\r\n } else if (e.which === keyCodes.ARROW_DOWN || downOnTab) { // down\r\n // scroll to top and highlight first option\r\n if (index === 0) {\r\n that.$menuInner[0].scrollTop = 0;\r\n\r\n liActiveIndex = 0;\r\n } else {\r\n activeLi = that.selectpicker.current.data[liActiveIndex];\r\n offset = activeLi.position - that.sizeInfo.menuInnerHeight;\r\n\r\n updateScroll = offset > scrollTop;\r\n }\r\n }\r\n\r\n liActive = that.selectpicker.current.elements[liActiveIndex];\r\n\r\n that.activeIndex = that.selectpicker.current.data[liActiveIndex].index;\r\n\r\n that.focusItem(liActive);\r\n\r\n that.selectpicker.view.currentActive = liActive;\r\n\r\n if (updateScroll) that.$menuInner[0].scrollTop = offset;\r\n\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n $this.trigger('focus');\r\n }\r\n } else if (\r\n (!$this.is('input') && !REGEXP_TAB_OR_ESCAPE.test(e.which)) ||\r\n (e.which === keyCodes.SPACE && that.selectpicker.keydown.keyHistory)\r\n ) {\r\n var searchMatch,\r\n matches = [],\r\n keyHistory;\r\n\r\n e.preventDefault();\r\n\r\n that.selectpicker.keydown.keyHistory += keyCodeMap[e.which];\r\n\r\n if (that.selectpicker.keydown.resetKeyHistory.cancel) clearTimeout(that.selectpicker.keydown.resetKeyHistory.cancel);\r\n that.selectpicker.keydown.resetKeyHistory.cancel = that.selectpicker.keydown.resetKeyHistory.start();\r\n\r\n keyHistory = that.selectpicker.keydown.keyHistory;\r\n\r\n // if all letters are the same, set keyHistory to just the first character when searching\r\n if (/^(.)\\1+$/.test(keyHistory)) {\r\n keyHistory = keyHistory.charAt(0);\r\n }\r\n\r\n // find matches\r\n for (var i = 0; i < that.selectpicker.current.data.length; i++) {\r\n var li = that.selectpicker.current.data[i],\r\n hasMatch;\r\n\r\n hasMatch = stringSearch(li, keyHistory, 'startsWith', true);\r\n\r\n if (hasMatch && that.selectpicker.view.canHighlight[i]) {\r\n matches.push(li.index);\r\n }\r\n }\r\n\r\n if (matches.length) {\r\n var matchIndex = 0;\r\n\r\n $items.removeClass('active').find('a').removeClass('active');\r\n\r\n // either only one key has been pressed or they are all the same key\r\n if (keyHistory.length === 1) {\r\n matchIndex = matches.indexOf(that.activeIndex);\r\n\r\n if (matchIndex === -1 || matchIndex === matches.length - 1) {\r\n matchIndex = 0;\r\n } else {\r\n matchIndex++;\r\n }\r\n }\r\n\r\n searchMatch = matches[matchIndex];\r\n\r\n activeLi = that.selectpicker.main.data[searchMatch];\r\n\r\n if (scrollTop - activeLi.position > 0) {\r\n offset = activeLi.position - activeLi.height;\r\n updateScroll = true;\r\n } else {\r\n offset = activeLi.position - that.sizeInfo.menuInnerHeight;\r\n // if the option is already visible at the current scroll position, just keep it the same\r\n updateScroll = activeLi.position > scrollTop + that.sizeInfo.menuInnerHeight;\r\n }\r\n\r\n liActive = that.selectpicker.main.elements[searchMatch];\r\n\r\n that.activeIndex = matches[matchIndex];\r\n\r\n that.focusItem(liActive);\r\n\r\n if (liActive) liActive.firstChild.focus();\r\n\r\n if (updateScroll) that.$menuInner[0].scrollTop = offset;\r\n\r\n $this.trigger('focus');\r\n }\r\n }\r\n\r\n // Select focused option if \"Enter\", \"Spacebar\" or \"Tab\" (when selectOnTab is true) are pressed inside the menu.\r\n if (\r\n isActive &&\r\n (\r\n (e.which === keyCodes.SPACE && !that.selectpicker.keydown.keyHistory) ||\r\n e.which === keyCodes.ENTER ||\r\n (e.which === keyCodes.TAB && that.options.selectOnTab)\r\n )\r\n ) {\r\n if (e.which !== keyCodes.SPACE) e.preventDefault();\r\n\r\n if (!that.options.liveSearch || e.which !== keyCodes.SPACE) {\r\n that.$menuInner.find('.active a').trigger('click', true); // retain active class\r\n $this.trigger('focus');\r\n\r\n if (!that.options.liveSearch) {\r\n // Prevent screen from scrolling if the user hits the spacebar\r\n e.preventDefault();\r\n // Fixes spacebar selection of dropdown items in FF & IE\r\n $(document).data('spaceSelect', true);\r\n }\r\n }\r\n }\r\n },\r\n\r\n mobile: function () {\r\n this.$element[0].classList.add('mobile-device');\r\n },\r\n\r\n refresh: function () {\r\n // update options if data attributes have been changed\r\n var config = $.extend({}, this.options, this.$element.data());\r\n this.options = config;\r\n\r\n this.checkDisabled();\r\n this.setStyle();\r\n this.render();\r\n this.createLi();\r\n this.setWidth();\r\n\r\n this.setSize(true);\r\n\r\n this.$element.trigger('refreshed' + EVENT_KEY);\r\n },\r\n\r\n hide: function () {\r\n this.$newElement.hide();\r\n },\r\n\r\n show: function () {\r\n this.$newElement.show();\r\n },\r\n\r\n remove: function () {\r\n this.$newElement.remove();\r\n this.$element.remove();\r\n },\r\n\r\n destroy: function () {\r\n this.$newElement.before(this.$element).remove();\r\n\r\n if (this.$bsContainer) {\r\n this.$bsContainer.remove();\r\n } else {\r\n this.$menu.remove();\r\n }\r\n\r\n this.$element\r\n .off(EVENT_KEY)\r\n .removeData('selectpicker')\r\n .removeClass('bs-select-hidden selectpicker');\r\n\r\n $(window).off(EVENT_KEY + '.' + this.selectId);\r\n }\r\n };\r\n\r\n // SELECTPICKER PLUGIN DEFINITION\r\n // ==============================\r\n function Plugin (option) {\r\n // get the args of the outer function..\r\n var args = arguments;\r\n // The arguments of the function are explicitly re-defined from the argument list, because the shift causes them\r\n // to get lost/corrupted in android 2.3 and IE9 #715 #775\r\n var _option = option;\r\n\r\n [].shift.apply(args);\r\n\r\n // if the version was not set successfully\r\n if (!version.success) {\r\n // try to retreive it again\r\n try {\r\n version.full = ($.fn.dropdown.Constructor.VERSION || '').split(' ')[0].split('.');\r\n } catch (err) {\r\n // fall back to use BootstrapVersion if set\r\n if (Selectpicker.BootstrapVersion) {\r\n version.full = Selectpicker.BootstrapVersion.split(' ')[0].split('.');\r\n } else {\r\n version.full = [version.major, '0', '0'];\r\n\r\n console.warn(\r\n 'There was an issue retrieving Bootstrap\\'s version. ' +\r\n 'Ensure Bootstrap is being loaded before bootstrap-select and there is no namespace collision. ' +\r\n 'If loading Bootstrap asynchronously, the version may need to be manually specified via $.fn.selectpicker.Constructor.BootstrapVersion.',\r\n err\r\n );\r\n }\r\n }\r\n\r\n version.major = version.full[0];\r\n version.success = true;\r\n }\r\n\r\n if (version.major === '4') {\r\n // some defaults need to be changed if using Bootstrap 4\r\n // check to see if they have already been manually changed before forcing them to update\r\n var toUpdate = [];\r\n\r\n if (Selectpicker.DEFAULTS.style === classNames.BUTTONCLASS) toUpdate.push({ name: 'style', className: 'BUTTONCLASS' });\r\n if (Selectpicker.DEFAULTS.iconBase === classNames.ICONBASE) toUpdate.push({ name: 'iconBase', className: 'ICONBASE' });\r\n if (Selectpicker.DEFAULTS.tickIcon === classNames.TICKICON) toUpdate.push({ name: 'tickIcon', className: 'TICKICON' });\r\n\r\n classNames.DIVIDER = 'dropdown-divider';\r\n classNames.SHOW = 'show';\r\n classNames.BUTTONCLASS = 'btn-light';\r\n classNames.POPOVERHEADER = 'popover-header';\r\n classNames.ICONBASE = '';\r\n classNames.TICKICON = 'bs-ok-default';\r\n\r\n for (var i = 0; i < toUpdate.length; i++) {\r\n var option = toUpdate[i];\r\n Selectpicker.DEFAULTS[option.name] = classNames[option.className];\r\n }\r\n }\r\n\r\n var value;\r\n var chain = this.each(function () {\r\n var $this = $(this);\r\n if ($this.is('select')) {\r\n var data = $this.data('selectpicker'),\r\n options = typeof _option == 'object' && _option;\r\n\r\n if (!data) {\r\n var dataAttributes = $this.data();\r\n\r\n for (var dataAttr in dataAttributes) {\r\n if (dataAttributes.hasOwnProperty(dataAttr) && $.inArray(dataAttr, DISALLOWED_ATTRIBUTES) !== -1) {\r\n delete dataAttributes[dataAttr];\r\n }\r\n }\r\n\r\n var config = $.extend({}, Selectpicker.DEFAULTS, $.fn.selectpicker.defaults || {}, dataAttributes, options);\r\n config.template = $.extend({}, Selectpicker.DEFAULTS.template, ($.fn.selectpicker.defaults ? $.fn.selectpicker.defaults.template : {}), dataAttributes.template, options.template);\r\n $this.data('selectpicker', (data = new Selectpicker(this, config)));\r\n } else if (options) {\r\n for (var i in options) {\r\n if (options.hasOwnProperty(i)) {\r\n data.options[i] = options[i];\r\n }\r\n }\r\n }\r\n\r\n if (typeof _option == 'string') {\r\n if (data[_option] instanceof Function) {\r\n value = data[_option].apply(data, args);\r\n } else {\r\n value = data.options[_option];\r\n }\r\n }\r\n }\r\n });\r\n\r\n if (typeof value !== 'undefined') {\r\n // noinspection JSUnusedAssignment\r\n return value;\r\n } else {\r\n return chain;\r\n }\r\n }\r\n\r\n var old = $.fn.selectpicker;\r\n $.fn.selectpicker = Plugin;\r\n $.fn.selectpicker.Constructor = Selectpicker;\r\n\r\n // SELECTPICKER NO CONFLICT\r\n // ========================\r\n $.fn.selectpicker.noConflict = function () {\r\n $.fn.selectpicker = old;\r\n return this;\r\n };\r\n\r\n $(document)\r\n .off('keydown.bs.dropdown.data-api', '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select .dropdown-menu')\r\n .on('keydown' + EVENT_KEY, '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select [role=\"listbox\"], .bootstrap-select .bs-searchbox input', Selectpicker.prototype.keydown)\r\n .on('focusin.modal', '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select [role=\"listbox\"], .bootstrap-select .bs-searchbox input', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n // SELECTPICKER DATA-API\r\n // =====================\r\n $(window).on('load' + EVENT_KEY + '.data-api', function () {\r\n $('.selectpicker').each(function () {\r\n var $selectpicker = $(this);\r\n Plugin.call($selectpicker, $selectpicker.data());\r\n })\r\n });\r\n})(jQuery);\r\n"]} \ No newline at end of file +{"version":3,"sources":["../../js/bootstrap-select.js"],"names":[],"mappings":"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AG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAChC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAChC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAClB,IAAI,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC/B,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/F,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/F,IAAI,EAAE,KAAK,EAAE,CA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EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,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","file":"bootstrap-select.js","sourcesContent":["(function ($) {\r\n 'use strict';\r\n\r\n var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];\r\n\r\n var uriAttrs = [\r\n 'background',\r\n 'cite',\r\n 'href',\r\n 'itemtype',\r\n 'longdesc',\r\n 'poster',\r\n 'src',\r\n 'xlink:href'\r\n ];\r\n\r\n var ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i;\r\n\r\n var DefaultWhitelist = {\r\n // Global attributes allowed on any supplied element below.\r\n '*': ['class', 'dir', 'id', 'lang', 'role', 'tabindex', 'style', ARIA_ATTRIBUTE_PATTERN],\r\n a: ['target', 'href', 'title', 'rel'],\r\n area: [],\r\n b: [],\r\n br: [],\r\n col: [],\r\n code: [],\r\n div: [],\r\n em: [],\r\n hr: [],\r\n h1: [],\r\n h2: [],\r\n h3: [],\r\n h4: [],\r\n h5: [],\r\n h6: [],\r\n i: [],\r\n img: ['src', 'alt', 'title', 'width', 'height'],\r\n li: [],\r\n ol: [],\r\n p: [],\r\n pre: [],\r\n s: [],\r\n small: [],\r\n span: [],\r\n sub: [],\r\n sup: [],\r\n strong: [],\r\n u: [],\r\n ul: []\r\n }\r\n\r\n /**\r\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\r\n *\r\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\r\n */\r\n var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;\r\n\r\n /**\r\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\r\n *\r\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\r\n */\r\n var DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;\r\n\r\n function allowedAttribute (attr, allowedAttributeList) {\r\n var attrName = attr.nodeName.toLowerCase()\r\n\r\n if ($.inArray(attrName, allowedAttributeList) !== -1) {\r\n if ($.inArray(attrName, uriAttrs) !== -1) {\r\n return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN))\r\n }\r\n\r\n return true\r\n }\r\n\r\n var regExp = $(allowedAttributeList).filter(function (index, value) {\r\n return value instanceof RegExp\r\n })\r\n\r\n // Check if a regular expression validates the attribute.\r\n for (var i = 0, l = regExp.length; i < l; i++) {\r\n if (attrName.match(regExp[i])) {\r\n return true\r\n }\r\n }\r\n\r\n return false\r\n }\r\n\r\n function sanitizeHtml (unsafeElements, whiteList, sanitizeFn) {\r\n if (sanitizeFn && typeof sanitizeFn === 'function') {\r\n return sanitizeFn(unsafeElements);\r\n }\r\n\r\n var whitelistKeys = Object.keys(whiteList);\r\n\r\n for (var i = 0, len = unsafeElements.length; i < len; i++) {\r\n var elements = unsafeElements[i].querySelectorAll('*');\r\n\r\n for (var j = 0, len2 = elements.length; j < len2; j++) {\r\n var el = elements[j];\r\n var elName = el.nodeName.toLowerCase();\r\n\r\n if (whitelistKeys.indexOf(elName) === -1) {\r\n el.parentNode.removeChild(el);\r\n\r\n continue;\r\n }\r\n\r\n var attributeList = [].slice.call(el.attributes);\r\n var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);\r\n\r\n for (var k = 0, len3 = attributeList.length; k < len3; k++) {\r\n var attr = attributeList[k];\r\n\r\n if (!allowedAttribute(attr, whitelistedAttributes)) {\r\n el.removeAttribute(attr.nodeName);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n // Polyfill for browsers with no classList support\r\n // Remove in v2\r\n if (!('classList' in document.createElement('_'))) {\r\n (function (view) {\r\n if (!('Element' in view)) return;\r\n\r\n var classListProp = 'classList',\r\n protoProp = 'prototype',\r\n elemCtrProto = view.Element[protoProp],\r\n objCtr = Object,\r\n classListGetter = function () {\r\n var $elem = $(this);\r\n\r\n return {\r\n add: function (classes) {\r\n classes = Array.prototype.slice.call(arguments).join(' ');\r\n return $elem.addClass(classes);\r\n },\r\n remove: function (classes) {\r\n classes = Array.prototype.slice.call(arguments).join(' ');\r\n return $elem.removeClass(classes);\r\n },\r\n toggle: function (classes, force) {\r\n return $elem.toggleClass(classes, force);\r\n },\r\n contains: function (classes) {\r\n return $elem.hasClass(classes);\r\n }\r\n }\r\n };\r\n\r\n if (objCtr.defineProperty) {\r\n var classListPropDesc = {\r\n get: classListGetter,\r\n enumerable: true,\r\n configurable: true\r\n };\r\n try {\r\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\r\n } catch (ex) { // IE 8 doesn't support enumerable:true\r\n // adding undefined to fight this issue https://github.com/eligrey/classList.js/issues/36\r\n // modernie IE8-MSW7 machine has IE8 8.0.6001.18702 and is affected\r\n if (ex.number === undefined || ex.number === -0x7FF5EC54) {\r\n classListPropDesc.enumerable = false;\r\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\r\n }\r\n }\r\n } else if (objCtr[protoProp].__defineGetter__) {\r\n elemCtrProto.__defineGetter__(classListProp, classListGetter);\r\n }\r\n }(window));\r\n }\r\n\r\n var testElement = document.createElement('_');\r\n\r\n testElement.classList.add('c1', 'c2');\r\n\r\n if (!testElement.classList.contains('c2')) {\r\n var _add = DOMTokenList.prototype.add,\r\n _remove = DOMTokenList.prototype.remove;\r\n\r\n DOMTokenList.prototype.add = function () {\r\n Array.prototype.forEach.call(arguments, _add.bind(this));\r\n }\r\n\r\n DOMTokenList.prototype.remove = function () {\r\n Array.prototype.forEach.call(arguments, _remove.bind(this));\r\n }\r\n }\r\n\r\n testElement.classList.toggle('c3', false);\r\n\r\n // Polyfill for IE 10 and Firefox <24, where classList.toggle does not\r\n // support the second argument.\r\n if (testElement.classList.contains('c3')) {\r\n var _toggle = DOMTokenList.prototype.toggle;\r\n\r\n DOMTokenList.prototype.toggle = function (token, force) {\r\n if (1 in arguments && !this.contains(token) === !force) {\r\n return force;\r\n } else {\r\n return _toggle.call(this, token);\r\n }\r\n };\r\n }\r\n\r\n testElement = null;\r\n\r\n // shallow array comparison\r\n function isEqual (array1, array2) {\r\n return array1.length === array2.length && array1.every(function (element, index) {\r\n return element === array2[index];\r\n });\r\n };\r\n\r\n // \r\n if (!String.prototype.startsWith) {\r\n (function () {\r\n 'use strict'; // needed to support `apply`/`call` with `undefined`/`null`\r\n var defineProperty = (function () {\r\n // IE 8 only supports `Object.defineProperty` on DOM elements\r\n try {\r\n var object = {};\r\n var $defineProperty = Object.defineProperty;\r\n var result = $defineProperty(object, object, object) && $defineProperty;\r\n } catch (error) {\r\n }\r\n return result;\r\n }());\r\n var toString = {}.toString;\r\n var startsWith = function (search) {\r\n if (this == null) {\r\n throw new TypeError();\r\n }\r\n var string = String(this);\r\n if (search && toString.call(search) == '[object RegExp]') {\r\n throw new TypeError();\r\n }\r\n var stringLength = string.length;\r\n var searchString = String(search);\r\n var searchLength = searchString.length;\r\n var position = arguments.length > 1 ? arguments[1] : undefined;\r\n // `ToInteger`\r\n var pos = position ? Number(position) : 0;\r\n if (pos != pos) { // better `isNaN`\r\n pos = 0;\r\n }\r\n var start = Math.min(Math.max(pos, 0), stringLength);\r\n // Avoid the `indexOf` call if no match is possible\r\n if (searchLength + start > stringLength) {\r\n return false;\r\n }\r\n var index = -1;\r\n while (++index < searchLength) {\r\n if (string.charCodeAt(start + index) != searchString.charCodeAt(index)) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n };\r\n if (defineProperty) {\r\n defineProperty(String.prototype, 'startsWith', {\r\n 'value': startsWith,\r\n 'configurable': true,\r\n 'writable': true\r\n });\r\n } else {\r\n String.prototype.startsWith = startsWith;\r\n }\r\n }());\r\n }\r\n\r\n if (!Object.keys) {\r\n Object.keys = function (\r\n o, // object\r\n k, // key\r\n r // result array\r\n ) {\r\n // initialize object and result\r\n r = [];\r\n // iterate over object keys\r\n for (k in o) {\r\n // fill result array with non-prototypical keys\r\n r.hasOwnProperty.call(o, k) && r.push(k);\r\n }\r\n // return result\r\n return r;\r\n };\r\n }\r\n\r\n if (HTMLSelectElement && !HTMLSelectElement.prototype.hasOwnProperty('selectedOptions')) {\r\n Object.defineProperty(HTMLSelectElement.prototype, 'selectedOptions', {\r\n get: function () {\r\n return this.querySelectorAll(':checked');\r\n }\r\n });\r\n }\r\n\r\n function getSelectedOptions (select, ignoreDisabled) {\r\n var selectedOptions = select.selectedOptions,\r\n options = [],\r\n opt;\r\n\r\n if (ignoreDisabled) {\r\n for (var i = 0, len = selectedOptions.length; i < len; i++) {\r\n opt = selectedOptions[i];\r\n\r\n if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) {\r\n options.push(opt);\r\n }\r\n }\r\n\r\n return options;\r\n }\r\n\r\n return selectedOptions;\r\n }\r\n\r\n // much faster than $.val()\r\n function getSelectValues (select, selectedOptions) {\r\n var value = [],\r\n options = selectedOptions || select.selectedOptions,\r\n opt;\r\n\r\n for (var i = 0, len = options.length; i < len; i++) {\r\n opt = options[i];\r\n\r\n if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) {\r\n value.push(opt.value);\r\n }\r\n }\r\n\r\n if (!select.multiple) {\r\n return !value.length ? null : value[0];\r\n }\r\n\r\n return value;\r\n }\r\n\r\n // set data-selected on select element if the value has been programmatically selected\r\n // prior to initialization of bootstrap-select\r\n // * consider removing or replacing an alternative method *\r\n var valHooks = {\r\n useDefault: false,\r\n _set: $.valHooks.select.set\r\n };\r\n\r\n $.valHooks.select.set = function (elem, value) {\r\n if (value && !valHooks.useDefault) $(elem).data('selected', true);\r\n\r\n return valHooks._set.apply(this, arguments);\r\n };\r\n\r\n var changedArguments = null;\r\n\r\n var EventIsSupported = (function () {\r\n try {\r\n new Event('change');\r\n return true;\r\n } catch (e) {\r\n return false;\r\n }\r\n })();\r\n\r\n $.fn.triggerNative = function (eventName) {\r\n var el = this[0],\r\n event;\r\n\r\n if (el.dispatchEvent) { // for modern browsers & IE9+\r\n if (EventIsSupported) {\r\n // For modern browsers\r\n event = new Event(eventName, {\r\n bubbles: true\r\n });\r\n } else {\r\n // For IE since it doesn't support Event constructor\r\n event = document.createEvent('Event');\r\n event.initEvent(eventName, true, false);\r\n }\r\n\r\n el.dispatchEvent(event);\r\n } else if (el.fireEvent) { // for IE8\r\n event = document.createEventObject();\r\n event.eventType = eventName;\r\n el.fireEvent('on' + eventName, event);\r\n } else {\r\n // fall back to jQuery.trigger\r\n this.trigger(eventName);\r\n }\r\n };\r\n // \r\n\r\n function stringSearch (li, searchString, method, normalize) {\r\n var stringTypes = [\r\n 'display',\r\n 'subtext',\r\n 'tokens'\r\n ],\r\n searchSuccess = false;\r\n\r\n for (var i = 0; i < stringTypes.length; i++) {\r\n var stringType = stringTypes[i],\r\n string = li[stringType];\r\n\r\n if (string) {\r\n string = string.toString();\r\n\r\n // Strip HTML tags. This isn't perfect, but it's much faster than any other method\r\n if (stringType === 'display') {\r\n string = string.replace(/<[^>]+>/g, '');\r\n }\r\n\r\n if (normalize) string = normalizeToBase(string);\r\n string = string.toUpperCase();\r\n\r\n if (method === 'contains') {\r\n searchSuccess = string.indexOf(searchString) >= 0;\r\n } else {\r\n searchSuccess = string.startsWith(searchString);\r\n }\r\n\r\n if (searchSuccess) break;\r\n }\r\n }\r\n\r\n return searchSuccess;\r\n }\r\n\r\n function toInteger (value) {\r\n return parseInt(value, 10) || 0;\r\n }\r\n\r\n // Borrowed from Lodash (_.deburr)\r\n /** Used to map Latin Unicode letters to basic Latin letters. */\r\n var deburredLetters = {\r\n // Latin-1 Supplement block.\r\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\r\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\r\n '\\xc7': 'C', '\\xe7': 'c',\r\n '\\xd0': 'D', '\\xf0': 'd',\r\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\r\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\r\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\r\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\r\n '\\xd1': 'N', '\\xf1': 'n',\r\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\r\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\r\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\r\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\r\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\r\n '\\xc6': 'Ae', '\\xe6': 'ae',\r\n '\\xde': 'Th', '\\xfe': 'th',\r\n '\\xdf': 'ss',\r\n // Latin Extended-A block.\r\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\r\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\r\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\r\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\r\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\r\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\r\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\r\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\r\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\r\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\r\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\r\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\r\n '\\u0134': 'J', '\\u0135': 'j',\r\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\r\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\r\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\r\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\r\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\r\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\r\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\r\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\r\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\r\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\r\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\r\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\r\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\r\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\r\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\r\n '\\u0174': 'W', '\\u0175': 'w',\r\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\r\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\r\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\r\n '\\u0132': 'IJ', '\\u0133': 'ij',\r\n '\\u0152': 'Oe', '\\u0153': 'oe',\r\n '\\u0149': \"'n\", '\\u017f': 's'\r\n };\r\n\r\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\r\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\r\n\r\n /** Used to compose unicode character classes. */\r\n var rsComboMarksRange = '\\\\u0300-\\\\u036f',\r\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\r\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\r\n rsComboMarksExtendedRange = '\\\\u1ab0-\\\\u1aff',\r\n rsComboMarksSupplementRange = '\\\\u1dc0-\\\\u1dff',\r\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange + rsComboMarksExtendedRange + rsComboMarksSupplementRange;\r\n\r\n /** Used to compose unicode capture groups. */\r\n var rsCombo = '[' + rsComboRange + ']';\r\n\r\n /**\r\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\r\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\r\n */\r\n var reComboMark = RegExp(rsCombo, 'g');\r\n\r\n function deburrLetter (key) {\r\n return deburredLetters[key];\r\n };\r\n\r\n function normalizeToBase (string) {\r\n string = string.toString();\r\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\r\n }\r\n\r\n // List of HTML entities for escaping.\r\n var escapeMap = {\r\n '&': '&',\r\n '<': '<',\r\n '>': '>',\r\n '\"': '"',\r\n \"'\": ''',\r\n '`': '`'\r\n };\r\n\r\n // Functions for escaping and unescaping strings to/from HTML interpolation.\r\n var createEscaper = function (map) {\r\n var escaper = function (match) {\r\n return map[match];\r\n };\r\n // Regexes for identifying a key that needs to be escaped.\r\n var source = '(?:' + Object.keys(map).join('|') + ')';\r\n var testRegexp = RegExp(source);\r\n var replaceRegexp = RegExp(source, 'g');\r\n return function (string) {\r\n string = string == null ? '' : '' + string;\r\n return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;\r\n };\r\n };\r\n\r\n var htmlEscape = createEscaper(escapeMap);\r\n\r\n /**\r\n * ------------------------------------------------------------------------\r\n * Constants\r\n * ------------------------------------------------------------------------\r\n */\r\n\r\n var keyCodeMap = {\r\n 32: ' ',\r\n 48: '0',\r\n 49: '1',\r\n 50: '2',\r\n 51: '3',\r\n 52: '4',\r\n 53: '5',\r\n 54: '6',\r\n 55: '7',\r\n 56: '8',\r\n 57: '9',\r\n 59: ';',\r\n 65: 'A',\r\n 66: 'B',\r\n 67: 'C',\r\n 68: 'D',\r\n 69: 'E',\r\n 70: 'F',\r\n 71: 'G',\r\n 72: 'H',\r\n 73: 'I',\r\n 74: 'J',\r\n 75: 'K',\r\n 76: 'L',\r\n 77: 'M',\r\n 78: 'N',\r\n 79: 'O',\r\n 80: 'P',\r\n 81: 'Q',\r\n 82: 'R',\r\n 83: 'S',\r\n 84: 'T',\r\n 85: 'U',\r\n 86: 'V',\r\n 87: 'W',\r\n 88: 'X',\r\n 89: 'Y',\r\n 90: 'Z',\r\n 96: '0',\r\n 97: '1',\r\n 98: '2',\r\n 99: '3',\r\n 100: '4',\r\n 101: '5',\r\n 102: '6',\r\n 103: '7',\r\n 104: '8',\r\n 105: '9'\r\n };\r\n\r\n var keyCodes = {\r\n ESCAPE: 27, // KeyboardEvent.which value for Escape (Esc) key\r\n ENTER: 13, // KeyboardEvent.which value for Enter key\r\n SPACE: 32, // KeyboardEvent.which value for space key\r\n TAB: 9, // KeyboardEvent.which value for tab key\r\n ARROW_UP: 38, // KeyboardEvent.which value for up arrow key\r\n ARROW_DOWN: 40 // KeyboardEvent.which value for down arrow key\r\n }\r\n\r\n var version = {\r\n success: false,\r\n major: '3'\r\n };\r\n\r\n try {\r\n version.full = ($.fn.dropdown.Constructor.VERSION || '').split(' ')[0].split('.');\r\n version.major = version.full[0];\r\n version.success = true;\r\n } catch (err) {\r\n // do nothing\r\n }\r\n\r\n var selectId = 0;\r\n\r\n var EVENT_KEY = '.bs.select';\r\n\r\n var classNames = {\r\n DISABLED: 'disabled',\r\n DIVIDER: 'divider',\r\n SHOW: 'open',\r\n DROPUP: 'dropup',\r\n MENU: 'dropdown-menu',\r\n MENURIGHT: 'dropdown-menu-right',\r\n MENULEFT: 'dropdown-menu-left',\r\n // to-do: replace with more advanced template/customization options\r\n BUTTONCLASS: 'btn-default',\r\n POPOVERHEADER: 'popover-title',\r\n ICONBASE: 'glyphicon',\r\n TICKICON: 'glyphicon-ok'\r\n }\r\n\r\n var Selector = {\r\n MENU: '.' + classNames.MENU\r\n }\r\n\r\n var elementTemplates = {\r\n span: document.createElement('span'),\r\n i: document.createElement('i'),\r\n subtext: document.createElement('small'),\r\n a: document.createElement('a'),\r\n li: document.createElement('li'),\r\n whitespace: document.createTextNode('\\u00A0'),\r\n fragment: document.createDocumentFragment()\r\n }\r\n\r\n elementTemplates.a.setAttribute('role', 'option');\r\n if (version.major === '4') elementTemplates.a.className = 'dropdown-item';\r\n\r\n elementTemplates.subtext.className = 'text-muted';\r\n\r\n elementTemplates.text = elementTemplates.span.cloneNode(false);\r\n elementTemplates.text.className = 'text';\r\n\r\n elementTemplates.checkMark = elementTemplates.span.cloneNode(false);\r\n\r\n var REGEXP_ARROW = new RegExp(keyCodes.ARROW_UP + '|' + keyCodes.ARROW_DOWN);\r\n var REGEXP_TAB_OR_ESCAPE = new RegExp('^' + keyCodes.TAB + '$|' + keyCodes.ESCAPE);\r\n\r\n var generateOption = {\r\n li: function (content, classes, optgroup) {\r\n var li = elementTemplates.li.cloneNode(false);\r\n\r\n if (content) {\r\n if (content.nodeType === 1 || content.nodeType === 11) {\r\n li.appendChild(content);\r\n } else {\r\n li.innerHTML = content;\r\n }\r\n }\r\n\r\n if (typeof classes !== 'undefined' && classes !== '') li.className = classes;\r\n if (typeof optgroup !== 'undefined' && optgroup !== null) li.classList.add('optgroup-' + optgroup);\r\n\r\n return li;\r\n },\r\n\r\n a: function (text, classes, inline) {\r\n var a = elementTemplates.a.cloneNode(true);\r\n\r\n if (text) {\r\n if (text.nodeType === 11) {\r\n a.appendChild(text);\r\n } else {\r\n a.insertAdjacentHTML('beforeend', text);\r\n }\r\n }\r\n\r\n if (typeof classes !== 'undefined' && classes !== '') a.classList.add.apply(a.classList, classes.split(' '));\r\n if (inline) a.setAttribute('style', inline);\r\n\r\n return a;\r\n },\r\n\r\n text: function (options, useFragment) {\r\n var textElement = elementTemplates.text.cloneNode(false),\r\n subtextElement,\r\n iconElement;\r\n\r\n if (options.content) {\r\n textElement.innerHTML = options.content;\r\n } else {\r\n textElement.textContent = options.text;\r\n\r\n if (options.icon) {\r\n var whitespace = elementTemplates.whitespace.cloneNode(false);\r\n\r\n // need to use for icons in the button to prevent a breaking change\r\n // note: switch to span in next major release\r\n iconElement = (useFragment === true ? elementTemplates.i : elementTemplates.span).cloneNode(false);\r\n iconElement.className = this.options.iconBase + ' ' + options.icon;\r\n\r\n elementTemplates.fragment.appendChild(iconElement);\r\n elementTemplates.fragment.appendChild(whitespace);\r\n }\r\n\r\n if (options.subtext) {\r\n subtextElement = elementTemplates.subtext.cloneNode(false);\r\n subtextElement.textContent = options.subtext;\r\n textElement.appendChild(subtextElement);\r\n }\r\n }\r\n\r\n if (useFragment === true) {\r\n while (textElement.childNodes.length > 0) {\r\n elementTemplates.fragment.appendChild(textElement.childNodes[0]);\r\n }\r\n } else {\r\n elementTemplates.fragment.appendChild(textElement);\r\n }\r\n\r\n return elementTemplates.fragment;\r\n },\r\n\r\n label: function (options) {\r\n var textElement = elementTemplates.text.cloneNode(false),\r\n subtextElement,\r\n iconElement;\r\n\r\n textElement.innerHTML = options.display;\r\n\r\n if (options.icon) {\r\n var whitespace = elementTemplates.whitespace.cloneNode(false);\r\n\r\n iconElement = elementTemplates.span.cloneNode(false);\r\n iconElement.className = this.options.iconBase + ' ' + options.icon;\r\n\r\n elementTemplates.fragment.appendChild(iconElement);\r\n elementTemplates.fragment.appendChild(whitespace);\r\n }\r\n\r\n if (options.subtext) {\r\n subtextElement = elementTemplates.subtext.cloneNode(false);\r\n subtextElement.textContent = options.subtext;\r\n textElement.appendChild(subtextElement);\r\n }\r\n\r\n elementTemplates.fragment.appendChild(textElement);\r\n\r\n return elementTemplates.fragment;\r\n }\r\n }\r\n\r\n var Selectpicker = function (element, options) {\r\n var that = this;\r\n\r\n // bootstrap-select has been initialized - revert valHooks.select.set back to its original function\r\n if (!valHooks.useDefault) {\r\n $.valHooks.select.set = valHooks._set;\r\n valHooks.useDefault = true;\r\n }\r\n\r\n this.$element = $(element);\r\n this.$newElement = null;\r\n this.$button = null;\r\n this.$menu = null;\r\n this.options = options;\r\n this.selectpicker = {\r\n main: {},\r\n search: {},\r\n current: {}, // current changes if a search is in progress\r\n view: {},\r\n isSearching: false,\r\n keydown: {\r\n keyHistory: '',\r\n resetKeyHistory: {\r\n start: function () {\r\n return setTimeout(function () {\r\n that.selectpicker.keydown.keyHistory = '';\r\n }, 800);\r\n }\r\n }\r\n }\r\n };\r\n\r\n this.sizeInfo = {};\r\n\r\n // If we have no title yet, try to pull it from the html title attribute (jQuery doesnt' pick it up as it's not a\r\n // data-attribute)\r\n if (this.options.title === null) {\r\n this.options.title = this.$element.attr('title');\r\n }\r\n\r\n // Format window padding\r\n var winPad = this.options.windowPadding;\r\n if (typeof winPad === 'number') {\r\n this.options.windowPadding = [winPad, winPad, winPad, winPad];\r\n }\r\n\r\n // Expose public methods\r\n this.val = Selectpicker.prototype.val;\r\n this.render = Selectpicker.prototype.render;\r\n this.refresh = Selectpicker.prototype.refresh;\r\n this.setStyle = Selectpicker.prototype.setStyle;\r\n this.selectAll = Selectpicker.prototype.selectAll;\r\n this.deselectAll = Selectpicker.prototype.deselectAll;\r\n this.destroy = Selectpicker.prototype.destroy;\r\n this.remove = Selectpicker.prototype.remove;\r\n this.show = Selectpicker.prototype.show;\r\n this.hide = Selectpicker.prototype.hide;\r\n\r\n this.init();\r\n };\r\n\r\n Selectpicker.VERSION = '1.13.13';\r\n\r\n // part of this is duplicated in i18n/defaults-en_US.js. Make sure to update both.\r\n Selectpicker.DEFAULTS = {\r\n noneSelectedText: 'Nothing selected',\r\n noneResultsText: 'No results matched {0}',\r\n countSelectedText: function (numSelected, numTotal) {\r\n return (numSelected == 1) ? '{0} item selected' : '{0} items selected';\r\n },\r\n maxOptionsText: function (numAll, numGroup) {\r\n return [\r\n (numAll == 1) ? 'Limit reached ({n} item max)' : 'Limit reached ({n} items max)',\r\n (numGroup == 1) ? 'Group limit reached ({n} item max)' : 'Group limit reached ({n} items max)'\r\n ];\r\n },\r\n selectAllText: 'Select All',\r\n deselectAllText: 'Deselect All',\r\n doneButton: false,\r\n doneButtonText: 'Close',\r\n multipleSeparator: ', ',\r\n styleBase: 'btn',\r\n style: classNames.BUTTONCLASS,\r\n size: 'auto',\r\n title: null,\r\n selectedTextFormat: 'values',\r\n width: false,\r\n container: false,\r\n hideDisabled: false,\r\n showSubtext: false,\r\n showIcon: true,\r\n showContent: true,\r\n dropupAuto: true,\r\n header: false,\r\n liveSearch: false,\r\n liveSearchPlaceholder: null,\r\n liveSearchNormalize: false,\r\n liveSearchStyle: 'contains',\r\n actionsBox: false,\r\n iconBase: classNames.ICONBASE,\r\n tickIcon: classNames.TICKICON,\r\n showTick: false,\r\n template: {\r\n caret: ''\r\n },\r\n maxOptions: false,\r\n mobile: false,\r\n selectOnTab: false,\r\n dropdownAlignRight: false,\r\n windowPadding: 0,\r\n virtualScroll: 600,\r\n display: false,\r\n sanitize: true,\r\n sanitizeFn: null,\r\n whiteList: DefaultWhitelist\r\n };\r\n\r\n Selectpicker.prototype = {\r\n\r\n constructor: Selectpicker,\r\n\r\n init: function () {\r\n var that = this,\r\n id = this.$element.attr('id');\r\n\r\n selectId++;\r\n this.selectId = 'bs-select-' + selectId;\r\n\r\n this.$element[0].classList.add('bs-select-hidden');\r\n\r\n this.multiple = this.$element.prop('multiple');\r\n this.autofocus = this.$element.prop('autofocus');\r\n\r\n if (this.$element[0].classList.contains('show-tick')) {\r\n this.options.showTick = true;\r\n }\r\n\r\n this.$newElement = this.createDropdown();\r\n this.buildData();\r\n this.$element\r\n .after(this.$newElement)\r\n .prependTo(this.$newElement);\r\n\r\n this.$button = this.$newElement.children('button');\r\n this.$menu = this.$newElement.children(Selector.MENU);\r\n this.$menuInner = this.$menu.children('.inner');\r\n this.$searchbox = this.$menu.find('input');\r\n\r\n this.$element[0].classList.remove('bs-select-hidden');\r\n\r\n if (this.options.dropdownAlignRight === true) this.$menu[0].classList.add(classNames.MENURIGHT);\r\n\r\n if (typeof id !== 'undefined') {\r\n this.$button.attr('data-id', id);\r\n }\r\n\r\n this.checkDisabled();\r\n this.clickListener();\r\n\r\n if (this.options.liveSearch) {\r\n this.liveSearchListener();\r\n this.focusedParent = this.$searchbox[0];\r\n } else {\r\n this.focusedParent = this.$menuInner[0];\r\n }\r\n\r\n this.setStyle();\r\n this.render();\r\n this.setWidth();\r\n if (this.options.container) {\r\n this.selectPosition();\r\n } else {\r\n this.$element.on('hide' + EVENT_KEY, function () {\r\n if (that.isVirtual()) {\r\n // empty menu on close\r\n var menuInner = that.$menuInner[0],\r\n emptyMenu = menuInner.firstChild.cloneNode(false);\r\n\r\n // replace the existing UL with an empty one - this is faster than $.empty() or innerHTML = ''\r\n menuInner.replaceChild(emptyMenu, menuInner.firstChild);\r\n menuInner.scrollTop = 0;\r\n }\r\n });\r\n }\r\n this.$menu.data('this', this);\r\n this.$newElement.data('this', this);\r\n if (this.options.mobile) this.mobile();\r\n\r\n this.$newElement.on({\r\n 'hide.bs.dropdown': function (e) {\r\n that.$element.trigger('hide' + EVENT_KEY, e);\r\n },\r\n 'hidden.bs.dropdown': function (e) {\r\n that.$element.trigger('hidden' + EVENT_KEY, e);\r\n },\r\n 'show.bs.dropdown': function (e) {\r\n that.$element.trigger('show' + EVENT_KEY, e);\r\n },\r\n 'shown.bs.dropdown': function (e) {\r\n that.$element.trigger('shown' + EVENT_KEY, e);\r\n }\r\n });\r\n\r\n if (that.$element[0].hasAttribute('required')) {\r\n this.$element.on('invalid' + EVENT_KEY, function () {\r\n that.$button[0].classList.add('bs-invalid');\r\n\r\n that.$element\r\n .on('shown' + EVENT_KEY + '.invalid', function () {\r\n that.$element\r\n .val(that.$element.val()) // set the value to hide the validation message in Chrome when menu is opened\r\n .off('shown' + EVENT_KEY + '.invalid');\r\n })\r\n .on('rendered' + EVENT_KEY, function () {\r\n // if select is no longer invalid, remove the bs-invalid class\r\n if (this.validity.valid) that.$button[0].classList.remove('bs-invalid');\r\n that.$element.off('rendered' + EVENT_KEY);\r\n });\r\n\r\n that.$button.on('blur' + EVENT_KEY, function () {\r\n that.$element.trigger('focus').trigger('blur');\r\n that.$button.off('blur' + EVENT_KEY);\r\n });\r\n });\r\n }\r\n\r\n setTimeout(function () {\r\n that.buildList();\r\n that.$element.trigger('loaded' + EVENT_KEY);\r\n });\r\n },\r\n\r\n createDropdown: function () {\r\n // Options\r\n // If we are multiple or showTick option is set, then add the show-tick class\r\n var showTick = (this.multiple || this.options.showTick) ? ' show-tick' : '',\r\n multiselectable = this.multiple ? ' aria-multiselectable=\"true\"' : '',\r\n inputGroup = '',\r\n autofocus = this.autofocus ? ' autofocus' : '';\r\n\r\n if (version.major < 4 && this.$element.parent().hasClass('input-group')) {\r\n inputGroup = ' input-group-btn';\r\n }\r\n\r\n // Elements\r\n var drop,\r\n header = '',\r\n searchbox = '',\r\n actionsbox = '',\r\n donebutton = '';\r\n\r\n if (this.options.header) {\r\n header =\r\n '
    ' +\r\n '' +\r\n this.options.header +\r\n '
    ';\r\n }\r\n\r\n if (this.options.liveSearch) {\r\n searchbox =\r\n '
    ' +\r\n '' +\r\n '
    ';\r\n }\r\n\r\n if (this.multiple && this.options.actionsBox) {\r\n actionsbox =\r\n '
    ' +\r\n '
    ' +\r\n '' +\r\n '' +\r\n '
    ' +\r\n '
    ';\r\n }\r\n\r\n if (this.multiple && this.options.doneButton) {\r\n donebutton =\r\n '
    ' +\r\n '
    ' +\r\n '' +\r\n '
    ' +\r\n '
    ';\r\n }\r\n\r\n drop =\r\n '
    ' +\r\n '' +\r\n '
    ' +\r\n header +\r\n searchbox +\r\n actionsbox +\r\n '
    ' +\r\n '
      ' +\r\n '
    ' +\r\n '
    ' +\r\n donebutton +\r\n '
    ' +\r\n '
    ';\r\n\r\n return $(drop);\r\n },\r\n\r\n setPositionData: function () {\r\n this.selectpicker.view.canHighlight = [];\r\n this.selectpicker.view.size = 0;\r\n\r\n for (var i = 0; i < this.selectpicker.current.data.length; i++) {\r\n var li = this.selectpicker.current.data[i],\r\n canHighlight = true;\r\n\r\n if (li.type === 'divider') {\r\n canHighlight = false;\r\n li.height = this.sizeInfo.dividerHeight;\r\n } else if (li.type === 'optgroup-label') {\r\n canHighlight = false;\r\n li.height = this.sizeInfo.dropdownHeaderHeight;\r\n } else {\r\n li.height = this.sizeInfo.liHeight;\r\n }\r\n\r\n if (li.disabled) canHighlight = false;\r\n\r\n this.selectpicker.view.canHighlight.push(canHighlight);\r\n\r\n if (canHighlight) {\r\n this.selectpicker.view.size++;\r\n li.posinset = this.selectpicker.view.size;\r\n }\r\n\r\n li.position = (i === 0 ? 0 : this.selectpicker.current.data[i - 1].position) + li.height;\r\n }\r\n },\r\n\r\n isVirtual: function () {\r\n return (this.options.virtualScroll !== false) && (this.selectpicker.main.elements.length >= this.options.virtualScroll) || this.options.virtualScroll === true;\r\n },\r\n\r\n createView: function (isSearching, setSize, refresh) {\r\n var that = this,\r\n scrollTop = 0,\r\n active = [],\r\n selected,\r\n prevActive;\r\n\r\n this.selectpicker.isSearching = isSearching;\r\n this.selectpicker.current = isSearching ? this.selectpicker.search : this.selectpicker.main;\r\n\r\n this.setPositionData();\r\n\r\n if (setSize) {\r\n if (refresh) {\r\n scrollTop = this.$menuInner[0].scrollTop;\r\n } else if (!that.multiple) {\r\n var element = that.$element[0],\r\n selectedIndex = (element.options[element.selectedIndex] || {}).liIndex;\r\n\r\n if (typeof selectedIndex === 'number' && that.options.size !== false) {\r\n var selectedData = that.selectpicker.main.data[selectedIndex],\r\n position = selectedData && selectedData.position;\r\n\r\n if (position) {\r\n scrollTop = position - ((that.sizeInfo.menuInnerHeight + that.sizeInfo.liHeight) / 2);\r\n }\r\n }\r\n }\r\n }\r\n\r\n scroll(scrollTop, true);\r\n\r\n this.$menuInner.off('scroll.createView').on('scroll.createView', function (e, updateValue) {\r\n if (!that.noScroll) scroll(this.scrollTop, updateValue);\r\n that.noScroll = false;\r\n });\r\n\r\n function scroll (scrollTop, init) {\r\n var size = that.selectpicker.current.elements.length,\r\n chunks = [],\r\n chunkSize,\r\n chunkCount,\r\n firstChunk,\r\n lastChunk,\r\n currentChunk,\r\n prevPositions,\r\n positionIsDifferent,\r\n previousElements,\r\n menuIsDifferent = true,\r\n isVirtual = that.isVirtual();\r\n\r\n that.selectpicker.view.scrollTop = scrollTop;\r\n\r\n chunkSize = Math.ceil(that.sizeInfo.menuInnerHeight / that.sizeInfo.liHeight * 1.5); // number of options in a chunk\r\n chunkCount = Math.round(size / chunkSize) || 1; // number of chunks\r\n\r\n for (var i = 0; i < chunkCount; i++) {\r\n var endOfChunk = (i + 1) * chunkSize;\r\n\r\n if (i === chunkCount - 1) {\r\n endOfChunk = size;\r\n }\r\n\r\n chunks[i] = [\r\n (i) * chunkSize + (!i ? 0 : 1),\r\n endOfChunk\r\n ];\r\n\r\n if (!size) break;\r\n\r\n if (currentChunk === undefined && scrollTop - 1 <= that.selectpicker.current.data[endOfChunk - 1].position - that.sizeInfo.menuInnerHeight) {\r\n currentChunk = i;\r\n }\r\n }\r\n\r\n if (currentChunk === undefined) currentChunk = 0;\r\n\r\n prevPositions = [that.selectpicker.view.position0, that.selectpicker.view.position1];\r\n\r\n // always display previous, current, and next chunks\r\n firstChunk = Math.max(0, currentChunk - 1);\r\n lastChunk = Math.min(chunkCount - 1, currentChunk + 1);\r\n\r\n that.selectpicker.view.position0 = isVirtual === false ? 0 : (Math.max(0, chunks[firstChunk][0]) || 0);\r\n that.selectpicker.view.position1 = isVirtual === false ? size : (Math.min(size, chunks[lastChunk][1]) || 0);\r\n\r\n positionIsDifferent = prevPositions[0] !== that.selectpicker.view.position0 || prevPositions[1] !== that.selectpicker.view.position1;\r\n\r\n if (that.activeIndex !== undefined) {\r\n prevActive = that.selectpicker.main.elements[that.prevActiveIndex];\r\n active = that.selectpicker.main.elements[that.activeIndex];\r\n selected = that.selectpicker.main.elements[that.selectedIndex];\r\n\r\n if (init) {\r\n if (that.activeIndex !== that.selectedIndex) {\r\n that.defocusItem(active);\r\n }\r\n that.activeIndex = undefined;\r\n }\r\n\r\n if (that.activeIndex && that.activeIndex !== that.selectedIndex) {\r\n that.defocusItem(selected);\r\n }\r\n }\r\n\r\n if (that.prevActiveIndex !== undefined && that.prevActiveIndex !== that.activeIndex && that.prevActiveIndex !== that.selectedIndex) {\r\n that.defocusItem(prevActive);\r\n }\r\n\r\n if (init || positionIsDifferent) {\r\n previousElements = that.selectpicker.view.visibleElements ? that.selectpicker.view.visibleElements.slice() : [];\r\n\r\n if (isVirtual === false) {\r\n that.selectpicker.view.visibleElements = that.selectpicker.current.elements;\r\n } else {\r\n that.selectpicker.view.visibleElements = that.selectpicker.current.elements.slice(that.selectpicker.view.position0, that.selectpicker.view.position1);\r\n }\r\n\r\n that.setOptionStatus();\r\n\r\n // if searching, check to make sure the list has actually been updated before updating DOM\r\n // this prevents unnecessary repaints\r\n if (isSearching || (isVirtual === false && init)) menuIsDifferent = !isEqual(previousElements, that.selectpicker.view.visibleElements);\r\n\r\n // if virtual scroll is disabled and not searching,\r\n // menu should never need to be updated more than once\r\n if ((init || isVirtual === true) && menuIsDifferent) {\r\n var menuInner = that.$menuInner[0],\r\n menuFragment = document.createDocumentFragment(),\r\n emptyMenu = menuInner.firstChild.cloneNode(false),\r\n marginTop,\r\n marginBottom,\r\n elements = that.selectpicker.view.visibleElements,\r\n toSanitize = [];\r\n\r\n // replace the existing UL with an empty one - this is faster than $.empty()\r\n menuInner.replaceChild(emptyMenu, menuInner.firstChild);\r\n\r\n for (var i = 0, visibleElementsLen = elements.length; i < visibleElementsLen; i++) {\r\n var element = elements[i],\r\n elText,\r\n elementData;\r\n\r\n if (that.options.sanitize) {\r\n elText = element.lastChild;\r\n\r\n if (elText) {\r\n elementData = that.selectpicker.current.data[i + that.selectpicker.view.position0];\r\n\r\n if (elementData && elementData.content && !elementData.sanitized) {\r\n toSanitize.push(elText);\r\n elementData.sanitized = true;\r\n }\r\n }\r\n }\r\n\r\n menuFragment.appendChild(element);\r\n }\r\n\r\n if (that.options.sanitize && toSanitize.length) {\r\n sanitizeHtml(toSanitize, that.options.whiteList, that.options.sanitizeFn);\r\n }\r\n\r\n if (isVirtual === true) {\r\n marginTop = (that.selectpicker.view.position0 === 0 ? 0 : that.selectpicker.current.data[that.selectpicker.view.position0 - 1].position);\r\n marginBottom = (that.selectpicker.view.position1 > size - 1 ? 0 : that.selectpicker.current.data[size - 1].position - that.selectpicker.current.data[that.selectpicker.view.position1 - 1].position);\r\n\r\n menuInner.firstChild.style.marginTop = marginTop + 'px';\r\n menuInner.firstChild.style.marginBottom = marginBottom + 'px';\r\n } else {\r\n menuInner.firstChild.style.marginTop = 0;\r\n menuInner.firstChild.style.marginBottom = 0;\r\n }\r\n\r\n menuInner.firstChild.appendChild(menuFragment);\r\n\r\n // if an option is encountered that is wider than the current menu width, update the menu width accordingly\r\n // switch to ResizeObserver with increased browser support\r\n if (isVirtual === true && that.sizeInfo.hasScrollBar) {\r\n var menuInnerInnerWidth = menuInner.firstChild.offsetWidth;\r\n\r\n if (init && menuInnerInnerWidth < that.sizeInfo.menuInnerInnerWidth && that.sizeInfo.totalMenuWidth > that.sizeInfo.selectWidth) {\r\n menuInner.firstChild.style.minWidth = that.sizeInfo.menuInnerInnerWidth + 'px';\r\n } else if (menuInnerInnerWidth > that.sizeInfo.menuInnerInnerWidth) {\r\n // set to 0 to get actual width of menu\r\n that.$menu[0].style.minWidth = 0;\r\n\r\n var actualMenuWidth = menuInner.firstChild.offsetWidth;\r\n\r\n if (actualMenuWidth > that.sizeInfo.menuInnerInnerWidth) {\r\n that.sizeInfo.menuInnerInnerWidth = actualMenuWidth;\r\n menuInner.firstChild.style.minWidth = that.sizeInfo.menuInnerInnerWidth + 'px';\r\n }\r\n\r\n // reset to default CSS styling\r\n that.$menu[0].style.minWidth = '';\r\n }\r\n }\r\n }\r\n }\r\n\r\n that.prevActiveIndex = that.activeIndex;\r\n\r\n if (!that.options.liveSearch) {\r\n that.$menuInner.trigger('focus');\r\n } else if (isSearching && init) {\r\n var index = 0,\r\n newActive;\r\n\r\n if (!that.selectpicker.view.canHighlight[index]) {\r\n index = 1 + that.selectpicker.view.canHighlight.slice(1).indexOf(true);\r\n }\r\n\r\n newActive = that.selectpicker.view.visibleElements[index];\r\n\r\n that.defocusItem(that.selectpicker.view.currentActive);\r\n\r\n that.activeIndex = (that.selectpicker.current.data[index] || {}).index;\r\n\r\n that.focusItem(newActive);\r\n }\r\n }\r\n\r\n $(window)\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + '.createView')\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + '.createView', function () {\r\n var isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (isActive) scroll(that.$menuInner[0].scrollTop);\r\n });\r\n },\r\n\r\n focusItem: function (li, liData, noStyle) {\r\n if (li) {\r\n liData = liData || this.selectpicker.main.data[this.activeIndex];\r\n var a = li.firstChild;\r\n\r\n if (a) {\r\n a.setAttribute('aria-setsize', this.selectpicker.view.size);\r\n a.setAttribute('aria-posinset', liData.posinset);\r\n\r\n if (noStyle !== true) {\r\n this.focusedParent.setAttribute('aria-activedescendant', a.id);\r\n li.classList.add('active');\r\n a.classList.add('active');\r\n }\r\n }\r\n }\r\n },\r\n\r\n defocusItem: function (li) {\r\n if (li) {\r\n li.classList.remove('active');\r\n if (li.firstChild) li.firstChild.classList.remove('active');\r\n }\r\n },\r\n\r\n setPlaceholder: function () {\r\n var updateIndex = false;\r\n\r\n if (this.options.title && !this.multiple) {\r\n if (!this.selectpicker.view.titleOption) this.selectpicker.view.titleOption = document.createElement('option');\r\n\r\n // this option doesn't create a new
  • element, but does add a new option at the start,\r\n // so startIndex should increase to prevent having to check every option for the bs-title-option class\r\n updateIndex = true;\r\n\r\n var element = this.$element[0],\r\n isSelected = false,\r\n titleNotAppended = !this.selectpicker.view.titleOption.parentNode;\r\n\r\n if (titleNotAppended) {\r\n // Use native JS to prepend option (faster)\r\n this.selectpicker.view.titleOption.className = 'bs-title-option';\r\n this.selectpicker.view.titleOption.value = '';\r\n\r\n // Check if selected or data-selected attribute is already set on an option. If not, select the titleOption option.\r\n // the selected item may have been changed by user or programmatically before the bootstrap select plugin runs,\r\n // if so, the select will have the data-selected attribute\r\n var $opt = $(element.options[element.selectedIndex]);\r\n isSelected = $opt.attr('selected') === undefined && this.$element.data('selected') === undefined;\r\n }\r\n\r\n if (titleNotAppended || this.selectpicker.view.titleOption.index !== 0) {\r\n element.insertBefore(this.selectpicker.view.titleOption, element.firstChild);\r\n }\r\n\r\n // Set selected *after* appending to select,\r\n // otherwise the option doesn't get selected in IE\r\n // set using selectedIndex, as setting the selected attr to true here doesn't work in IE11\r\n if (isSelected) element.selectedIndex = 0;\r\n }\r\n\r\n return updateIndex;\r\n },\r\n\r\n buildData: function () {\r\n var optionSelector = ':not([hidden]):not([data-hidden=\"true\"])',\r\n mainData = [],\r\n optID = 0,\r\n startIndex = this.setPlaceholder() ? 1 : 0; // append the titleOption if necessary and skip the first option in the loop\r\n\r\n if (this.options.hideDisabled) optionSelector += ':not(:disabled)';\r\n\r\n var selectOptions = this.$element[0].querySelectorAll('select > *' + optionSelector);\r\n\r\n function addDivider (config) {\r\n var previousData = mainData[mainData.length - 1];\r\n\r\n // ensure optgroup doesn't create back-to-back dividers\r\n if (\r\n previousData &&\r\n previousData.type === 'divider' &&\r\n (previousData.optID || config.optID)\r\n ) {\r\n return;\r\n }\r\n\r\n config = config || {};\r\n config.type = 'divider';\r\n\r\n mainData.push(config);\r\n }\r\n\r\n function addOption (option, config) {\r\n config = config || {};\r\n\r\n config.divider = option.getAttribute('data-divider') === 'true';\r\n\r\n if (config.divider) {\r\n addDivider({\r\n optID: config.optID\r\n });\r\n } else {\r\n var liIndex = mainData.length,\r\n cssText = option.style.cssText,\r\n inlineStyle = cssText ? htmlEscape(cssText) : '',\r\n optionClass = (option.className || '') + (config.optgroupClass || '');\r\n\r\n if (config.optID) optionClass = 'opt ' + optionClass;\r\n\r\n config.optionClass = optionClass.trim();\r\n config.inlineStyle = inlineStyle;\r\n config.text = option.textContent;\r\n\r\n config.content = option.getAttribute('data-content');\r\n config.tokens = option.getAttribute('data-tokens');\r\n config.subtext = option.getAttribute('data-subtext');\r\n config.icon = option.getAttribute('data-icon');\r\n\r\n option.liIndex = liIndex;\r\n\r\n config.display = config.content || config.text;\r\n config.type = 'option';\r\n config.index = liIndex;\r\n config.option = option;\r\n config.selected = !!option.selected;\r\n config.disabled = config.disabled || !!option.disabled;\r\n\r\n mainData.push(config);\r\n }\r\n }\r\n\r\n function addOptgroup (index, selectOptions) {\r\n var optgroup = selectOptions[index],\r\n previous = selectOptions[index - 1],\r\n next = selectOptions[index + 1],\r\n options = optgroup.querySelectorAll('option' + optionSelector);\r\n\r\n if (!options.length) return;\r\n\r\n var config = {\r\n display: htmlEscape(optgroup.label),\r\n subtext: optgroup.getAttribute('data-subtext'),\r\n icon: optgroup.getAttribute('data-icon'),\r\n type: 'optgroup-label',\r\n optgroupClass: ' ' + (optgroup.className || '')\r\n },\r\n headerIndex,\r\n lastIndex;\r\n\r\n optID++;\r\n\r\n if (previous) {\r\n addDivider({ optID: optID });\r\n }\r\n\r\n config.optID = optID;\r\n\r\n mainData.push(config);\r\n\r\n for (var j = 0, len = options.length; j < len; j++) {\r\n var option = options[j];\r\n\r\n if (j === 0) {\r\n headerIndex = mainData.length - 1;\r\n lastIndex = headerIndex + len;\r\n }\r\n\r\n addOption(option, {\r\n headerIndex: headerIndex,\r\n lastIndex: lastIndex,\r\n optID: config.optID,\r\n optgroupClass: config.optgroupClass,\r\n disabled: optgroup.disabled\r\n });\r\n }\r\n\r\n if (next) {\r\n addDivider({ optID: optID });\r\n }\r\n }\r\n\r\n for (var len = selectOptions.length; startIndex < len; startIndex++) {\r\n var item = selectOptions[startIndex];\r\n\r\n if (item.tagName !== 'OPTGROUP') {\r\n addOption(item, {});\r\n } else {\r\n addOptgroup(startIndex, selectOptions);\r\n }\r\n }\r\n\r\n this.selectpicker.main.data = this.selectpicker.current.data = mainData;\r\n },\r\n\r\n buildList: function () {\r\n var that = this,\r\n selectData = this.selectpicker.main.data,\r\n mainElements = [],\r\n widestOptionLength = 0;\r\n\r\n if ((that.options.showTick || that.multiple) && !elementTemplates.checkMark.parentNode) {\r\n elementTemplates.checkMark.className = this.options.iconBase + ' ' + that.options.tickIcon + ' check-mark';\r\n elementTemplates.a.appendChild(elementTemplates.checkMark);\r\n }\r\n\r\n function buildElement (item) {\r\n var liElement,\r\n combinedLength = 0;\r\n\r\n switch (item.type) {\r\n case 'divider':\r\n liElement = generateOption.li(\r\n false,\r\n classNames.DIVIDER,\r\n (item.optID ? item.optID + 'div' : undefined)\r\n );\r\n\r\n break;\r\n\r\n case 'option':\r\n liElement = generateOption.li(\r\n generateOption.a(\r\n generateOption.text.call(that, item),\r\n item.optionClass,\r\n item.inlineStyle\r\n ),\r\n '',\r\n item.optID\r\n );\r\n\r\n if (liElement.firstChild) {\r\n liElement.firstChild.id = that.selectId + '-' + item.index;\r\n }\r\n\r\n break;\r\n\r\n case 'optgroup-label':\r\n liElement = generateOption.li(\r\n generateOption.label.call(that, item),\r\n 'dropdown-header' + item.optgroupClass,\r\n item.optID\r\n );\r\n\r\n break;\r\n }\r\n\r\n mainElements.push(liElement);\r\n\r\n // count the number of characters in the option - not perfect, but should work in most cases\r\n if (item.display) combinedLength += item.display.length;\r\n if (item.subtext) combinedLength += item.subtext.length;\r\n // if there is an icon, ensure this option's width is checked\r\n if (item.icon) combinedLength += 1;\r\n\r\n if (combinedLength > widestOptionLength) {\r\n widestOptionLength = combinedLength;\r\n\r\n // guess which option is the widest\r\n // use this when calculating menu width\r\n // not perfect, but it's fast, and the width will be updating accordingly when scrolling\r\n that.selectpicker.view.widestOption = mainElements[mainElements.length - 1];\r\n }\r\n }\r\n\r\n for (var len = selectData.length, i = 0; i < len; i++) {\r\n var item = selectData[i];\r\n\r\n buildElement(item);\r\n }\r\n\r\n this.selectpicker.main.elements = this.selectpicker.current.elements = mainElements;\r\n },\r\n\r\n findLis: function () {\r\n return this.$menuInner.find('.inner > li');\r\n },\r\n\r\n render: function () {\r\n var that = this,\r\n // ensure titleOption is appended and selected (if necessary) before getting selectedOptions\r\n startIndex = this.setPlaceholder() ? 1 : 0,\r\n element = this.$element[0],\r\n selectedOptions = getSelectedOptions(element, this.options.hideDisabled),\r\n selectedCount = selectedOptions.length,\r\n button = this.$button[0],\r\n buttonInner = button.querySelector('.filter-option-inner-inner'),\r\n multipleSeparator = document.createTextNode(this.options.multipleSeparator),\r\n titleFragment = elementTemplates.fragment.cloneNode(false),\r\n showCount,\r\n countMax,\r\n hasContent = false;\r\n\r\n button.classList.toggle('bs-placeholder', that.multiple ? !selectedCount : !getSelectValues(element, selectedOptions));\r\n\r\n this.tabIndex();\r\n\r\n if (this.options.selectedTextFormat === 'static') {\r\n titleFragment = generateOption.text.call(this, { text: this.options.title }, true);\r\n } else {\r\n showCount = this.multiple && this.options.selectedTextFormat.indexOf('count') !== -1 && selectedCount > 1;\r\n\r\n // determine if the number of selected options will be shown (showCount === true)\r\n if (showCount) {\r\n countMax = this.options.selectedTextFormat.split('>');\r\n showCount = (countMax.length > 1 && selectedCount > countMax[1]) || (countMax.length === 1 && selectedCount >= 2);\r\n }\r\n\r\n // only loop through all selected options if the count won't be shown\r\n if (showCount === false) {\r\n for (var selectedIndex = startIndex; selectedIndex < selectedCount; selectedIndex++) {\r\n if (selectedIndex < 50) {\r\n var option = selectedOptions[selectedIndex],\r\n thisData = this.selectpicker.main.data[option.liIndex],\r\n titleOptions = {};\r\n\r\n if (this.multiple && selectedIndex > 0) {\r\n titleFragment.appendChild(multipleSeparator.cloneNode(false));\r\n }\r\n\r\n if (option.title) {\r\n titleOptions.text = option.title;\r\n } else if (thisData.content && that.options.showContent) {\r\n titleOptions.content = thisData.content.toString();\r\n hasContent = true;\r\n } else {\r\n if (that.options.showIcon) {\r\n titleOptions.icon = thisData.icon;\r\n }\r\n if (that.options.showSubtext && !that.multiple && thisData.subtext) titleOptions.subtext = ' ' + thisData.subtext;\r\n titleOptions.text = option.textContent.trim();\r\n }\r\n\r\n titleFragment.appendChild(generateOption.text.call(this, titleOptions, true));\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n // add ellipsis\r\n if (selectedCount > 49) {\r\n titleFragment.appendChild(document.createTextNode('...'));\r\n }\r\n } else {\r\n var optionSelector = ':not([hidden]):not([data-hidden=\"true\"]):not([data-divider=\"true\"])';\r\n if (this.options.hideDisabled) optionSelector += ':not(:disabled)';\r\n\r\n // If this is a multiselect, and selectedTextFormat is count, then show 1 of 2 selected, etc.\r\n var totalCount = this.$element[0].querySelectorAll('select > option' + optionSelector + ', optgroup' + optionSelector + ' option' + optionSelector).length,\r\n tr8nText = (typeof this.options.countSelectedText === 'function') ? this.options.countSelectedText(selectedCount, totalCount) : this.options.countSelectedText;\r\n\r\n titleFragment = generateOption.text.call(this, {\r\n text: tr8nText.replace('{0}', selectedCount.toString()).replace('{1}', totalCount.toString())\r\n }, true);\r\n }\r\n }\r\n\r\n if (this.options.title == undefined) {\r\n // use .attr to ensure undefined is returned if title attribute is not set\r\n this.options.title = this.$element.attr('title');\r\n }\r\n\r\n // If the select doesn't have a title, then use the default, or if nothing is set at all, use noneSelectedText\r\n if (!titleFragment.childNodes.length) {\r\n titleFragment = generateOption.text.call(this, {\r\n text: typeof this.options.title !== 'undefined' ? this.options.title : this.options.noneSelectedText\r\n }, true);\r\n }\r\n\r\n // strip all HTML tags and trim the result, then unescape any escaped tags\r\n button.title = titleFragment.textContent.replace(/<[^>]*>?/g, '').trim();\r\n\r\n if (this.options.sanitize && hasContent) {\r\n sanitizeHtml([titleFragment], that.options.whiteList, that.options.sanitizeFn);\r\n }\r\n\r\n buttonInner.innerHTML = '';\r\n buttonInner.appendChild(titleFragment);\r\n\r\n if (version.major < 4 && this.$newElement[0].classList.contains('bs3-has-addon')) {\r\n var filterExpand = button.querySelector('.filter-expand'),\r\n clone = buttonInner.cloneNode(true);\r\n\r\n clone.className = 'filter-expand';\r\n\r\n if (filterExpand) {\r\n button.replaceChild(clone, filterExpand);\r\n } else {\r\n button.appendChild(clone);\r\n }\r\n }\r\n\r\n this.$element.trigger('rendered' + EVENT_KEY);\r\n },\r\n\r\n /**\r\n * @param [style]\r\n * @param [status]\r\n */\r\n setStyle: function (newStyle, status) {\r\n var button = this.$button[0],\r\n newElement = this.$newElement[0],\r\n style = this.options.style.trim(),\r\n buttonClass;\r\n\r\n if (this.$element.attr('class')) {\r\n this.$newElement.addClass(this.$element.attr('class').replace(/selectpicker|mobile-device|bs-select-hidden|validate\\[.*\\]/gi, ''));\r\n }\r\n\r\n if (version.major < 4) {\r\n newElement.classList.add('bs3');\r\n\r\n if (newElement.parentNode.classList.contains('input-group') &&\r\n (newElement.previousElementSibling || newElement.nextElementSibling) &&\r\n (newElement.previousElementSibling || newElement.nextElementSibling).classList.contains('input-group-addon')\r\n ) {\r\n newElement.classList.add('bs3-has-addon');\r\n }\r\n }\r\n\r\n if (newStyle) {\r\n buttonClass = newStyle.trim();\r\n } else {\r\n buttonClass = style;\r\n }\r\n\r\n if (status == 'add') {\r\n if (buttonClass) button.classList.add.apply(button.classList, buttonClass.split(' '));\r\n } else if (status == 'remove') {\r\n if (buttonClass) button.classList.remove.apply(button.classList, buttonClass.split(' '));\r\n } else {\r\n if (style) button.classList.remove.apply(button.classList, style.split(' '));\r\n if (buttonClass) button.classList.add.apply(button.classList, buttonClass.split(' '));\r\n }\r\n },\r\n\r\n liHeight: function (refresh) {\r\n if (!refresh && (this.options.size === false || Object.keys(this.sizeInfo).length)) return;\r\n\r\n var newElement = document.createElement('div'),\r\n menu = document.createElement('div'),\r\n menuInner = document.createElement('div'),\r\n menuInnerInner = document.createElement('ul'),\r\n divider = document.createElement('li'),\r\n dropdownHeader = document.createElement('li'),\r\n li = document.createElement('li'),\r\n a = document.createElement('a'),\r\n text = document.createElement('span'),\r\n header = this.options.header && this.$menu.find('.' + classNames.POPOVERHEADER).length > 0 ? this.$menu.find('.' + classNames.POPOVERHEADER)[0].cloneNode(true) : null,\r\n search = this.options.liveSearch ? document.createElement('div') : null,\r\n actions = this.options.actionsBox && this.multiple && this.$menu.find('.bs-actionsbox').length > 0 ? this.$menu.find('.bs-actionsbox')[0].cloneNode(true) : null,\r\n doneButton = this.options.doneButton && this.multiple && this.$menu.find('.bs-donebutton').length > 0 ? this.$menu.find('.bs-donebutton')[0].cloneNode(true) : null,\r\n firstOption = this.$element.find('option')[0];\r\n\r\n this.sizeInfo.selectWidth = this.$newElement[0].offsetWidth;\r\n\r\n text.className = 'text';\r\n a.className = 'dropdown-item ' + (firstOption ? firstOption.className : '');\r\n newElement.className = this.$menu[0].parentNode.className + ' ' + classNames.SHOW;\r\n newElement.style.width = 0; // ensure button width doesn't affect natural width of menu when calculating\r\n if (this.options.width === 'auto') menu.style.minWidth = 0;\r\n menu.className = classNames.MENU + ' ' + classNames.SHOW;\r\n menuInner.className = 'inner ' + classNames.SHOW;\r\n menuInnerInner.className = classNames.MENU + ' inner ' + (version.major === '4' ? classNames.SHOW : '');\r\n divider.className = classNames.DIVIDER;\r\n dropdownHeader.className = 'dropdown-header';\r\n\r\n text.appendChild(document.createTextNode('\\u200b'));\r\n a.appendChild(text);\r\n li.appendChild(a);\r\n dropdownHeader.appendChild(text.cloneNode(true));\r\n\r\n if (this.selectpicker.view.widestOption) {\r\n menuInnerInner.appendChild(this.selectpicker.view.widestOption.cloneNode(true));\r\n }\r\n\r\n menuInnerInner.appendChild(li);\r\n menuInnerInner.appendChild(divider);\r\n menuInnerInner.appendChild(dropdownHeader);\r\n if (header) menu.appendChild(header);\r\n if (search) {\r\n var input = document.createElement('input');\r\n search.className = 'bs-searchbox';\r\n input.className = 'form-control';\r\n search.appendChild(input);\r\n menu.appendChild(search);\r\n }\r\n if (actions) menu.appendChild(actions);\r\n menuInner.appendChild(menuInnerInner);\r\n menu.appendChild(menuInner);\r\n if (doneButton) menu.appendChild(doneButton);\r\n newElement.appendChild(menu);\r\n\r\n document.body.appendChild(newElement);\r\n\r\n var liHeight = li.offsetHeight,\r\n dropdownHeaderHeight = dropdownHeader ? dropdownHeader.offsetHeight : 0,\r\n headerHeight = header ? header.offsetHeight : 0,\r\n searchHeight = search ? search.offsetHeight : 0,\r\n actionsHeight = actions ? actions.offsetHeight : 0,\r\n doneButtonHeight = doneButton ? doneButton.offsetHeight : 0,\r\n dividerHeight = $(divider).outerHeight(true),\r\n // fall back to jQuery if getComputedStyle is not supported\r\n menuStyle = window.getComputedStyle ? window.getComputedStyle(menu) : false,\r\n menuWidth = menu.offsetWidth,\r\n $menu = menuStyle ? null : $(menu),\r\n menuPadding = {\r\n vert: toInteger(menuStyle ? menuStyle.paddingTop : $menu.css('paddingTop')) +\r\n toInteger(menuStyle ? menuStyle.paddingBottom : $menu.css('paddingBottom')) +\r\n toInteger(menuStyle ? menuStyle.borderTopWidth : $menu.css('borderTopWidth')) +\r\n toInteger(menuStyle ? menuStyle.borderBottomWidth : $menu.css('borderBottomWidth')),\r\n horiz: toInteger(menuStyle ? menuStyle.paddingLeft : $menu.css('paddingLeft')) +\r\n toInteger(menuStyle ? menuStyle.paddingRight : $menu.css('paddingRight')) +\r\n toInteger(menuStyle ? menuStyle.borderLeftWidth : $menu.css('borderLeftWidth')) +\r\n toInteger(menuStyle ? menuStyle.borderRightWidth : $menu.css('borderRightWidth'))\r\n },\r\n menuExtras = {\r\n vert: menuPadding.vert +\r\n toInteger(menuStyle ? menuStyle.marginTop : $menu.css('marginTop')) +\r\n toInteger(menuStyle ? menuStyle.marginBottom : $menu.css('marginBottom')) + 2,\r\n horiz: menuPadding.horiz +\r\n toInteger(menuStyle ? menuStyle.marginLeft : $menu.css('marginLeft')) +\r\n toInteger(menuStyle ? menuStyle.marginRight : $menu.css('marginRight')) + 2\r\n },\r\n scrollBarWidth;\r\n\r\n menuInner.style.overflowY = 'scroll';\r\n\r\n scrollBarWidth = menu.offsetWidth - menuWidth;\r\n\r\n document.body.removeChild(newElement);\r\n\r\n this.sizeInfo.liHeight = liHeight;\r\n this.sizeInfo.dropdownHeaderHeight = dropdownHeaderHeight;\r\n this.sizeInfo.headerHeight = headerHeight;\r\n this.sizeInfo.searchHeight = searchHeight;\r\n this.sizeInfo.actionsHeight = actionsHeight;\r\n this.sizeInfo.doneButtonHeight = doneButtonHeight;\r\n this.sizeInfo.dividerHeight = dividerHeight;\r\n this.sizeInfo.menuPadding = menuPadding;\r\n this.sizeInfo.menuExtras = menuExtras;\r\n this.sizeInfo.menuWidth = menuWidth;\r\n this.sizeInfo.menuInnerInnerWidth = menuWidth - menuPadding.horiz;\r\n this.sizeInfo.totalMenuWidth = this.sizeInfo.menuWidth;\r\n this.sizeInfo.scrollBarWidth = scrollBarWidth;\r\n this.sizeInfo.selectHeight = this.$newElement[0].offsetHeight;\r\n\r\n this.setPositionData();\r\n },\r\n\r\n getSelectPosition: function () {\r\n var that = this,\r\n $window = $(window),\r\n pos = that.$newElement.offset(),\r\n $container = $(that.options.container),\r\n containerPos;\r\n\r\n if (that.options.container && $container.length && !$container.is('body')) {\r\n containerPos = $container.offset();\r\n containerPos.top += parseInt($container.css('borderTopWidth'));\r\n containerPos.left += parseInt($container.css('borderLeftWidth'));\r\n } else {\r\n containerPos = { top: 0, left: 0 };\r\n }\r\n\r\n var winPad = that.options.windowPadding;\r\n\r\n this.sizeInfo.selectOffsetTop = pos.top - containerPos.top - $window.scrollTop();\r\n this.sizeInfo.selectOffsetBot = $window.height() - this.sizeInfo.selectOffsetTop - this.sizeInfo.selectHeight - containerPos.top - winPad[2];\r\n this.sizeInfo.selectOffsetLeft = pos.left - containerPos.left - $window.scrollLeft();\r\n this.sizeInfo.selectOffsetRight = $window.width() - this.sizeInfo.selectOffsetLeft - this.sizeInfo.selectWidth - containerPos.left - winPad[1];\r\n this.sizeInfo.selectOffsetTop -= winPad[0];\r\n this.sizeInfo.selectOffsetLeft -= winPad[3];\r\n },\r\n\r\n setMenuSize: function (isAuto) {\r\n this.getSelectPosition();\r\n\r\n var selectWidth = this.sizeInfo.selectWidth,\r\n liHeight = this.sizeInfo.liHeight,\r\n headerHeight = this.sizeInfo.headerHeight,\r\n searchHeight = this.sizeInfo.searchHeight,\r\n actionsHeight = this.sizeInfo.actionsHeight,\r\n doneButtonHeight = this.sizeInfo.doneButtonHeight,\r\n divHeight = this.sizeInfo.dividerHeight,\r\n menuPadding = this.sizeInfo.menuPadding,\r\n menuInnerHeight,\r\n menuHeight,\r\n divLength = 0,\r\n minHeight,\r\n _minHeight,\r\n maxHeight,\r\n menuInnerMinHeight,\r\n estimate,\r\n isDropup;\r\n\r\n if (this.options.dropupAuto) {\r\n // Get the estimated height of the menu without scrollbars.\r\n // This is useful for smaller menus, where there might be plenty of room\r\n // below the button without setting dropup, but we can't know\r\n // the exact height of the menu until createView is called later\r\n estimate = liHeight * this.selectpicker.current.elements.length + menuPadding.vert;\r\n\r\n isDropup = this.sizeInfo.selectOffsetTop - this.sizeInfo.selectOffsetBot > this.sizeInfo.menuExtras.vert && estimate + this.sizeInfo.menuExtras.vert + 50 > this.sizeInfo.selectOffsetBot;\r\n\r\n // ensure dropup doesn't change while searching (so menu doesn't bounce back and forth)\r\n if (this.selectpicker.isSearching === true) {\r\n isDropup = this.selectpicker.dropup;\r\n }\r\n\r\n this.$newElement.toggleClass(classNames.DROPUP, isDropup);\r\n this.selectpicker.dropup = isDropup;\r\n }\r\n\r\n if (this.options.size === 'auto') {\r\n _minHeight = this.selectpicker.current.elements.length > 3 ? this.sizeInfo.liHeight * 3 + this.sizeInfo.menuExtras.vert - 2 : 0;\r\n menuHeight = this.sizeInfo.selectOffsetBot - this.sizeInfo.menuExtras.vert;\r\n minHeight = _minHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight;\r\n menuInnerMinHeight = Math.max(_minHeight - menuPadding.vert, 0);\r\n\r\n if (this.$newElement.hasClass(classNames.DROPUP)) {\r\n menuHeight = this.sizeInfo.selectOffsetTop - this.sizeInfo.menuExtras.vert;\r\n }\r\n\r\n maxHeight = menuHeight;\r\n menuInnerHeight = menuHeight - headerHeight - searchHeight - actionsHeight - doneButtonHeight - menuPadding.vert;\r\n } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) {\r\n for (var i = 0; i < this.options.size; i++) {\r\n if (this.selectpicker.current.data[i].type === 'divider') divLength++;\r\n }\r\n\r\n menuHeight = liHeight * this.options.size + divLength * divHeight + menuPadding.vert;\r\n menuInnerHeight = menuHeight - menuPadding.vert;\r\n maxHeight = menuHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight;\r\n minHeight = menuInnerMinHeight = '';\r\n }\r\n\r\n this.$menu.css({\r\n 'max-height': maxHeight + 'px',\r\n 'overflow': 'hidden',\r\n 'min-height': minHeight + 'px'\r\n });\r\n\r\n this.$menuInner.css({\r\n 'max-height': menuInnerHeight + 'px',\r\n 'overflow-y': 'auto',\r\n 'min-height': menuInnerMinHeight + 'px'\r\n });\r\n\r\n // ensure menuInnerHeight is always a positive number to prevent issues calculating chunkSize in createView\r\n this.sizeInfo.menuInnerHeight = Math.max(menuInnerHeight, 1);\r\n\r\n if (this.selectpicker.current.data.length && this.selectpicker.current.data[this.selectpicker.current.data.length - 1].position > this.sizeInfo.menuInnerHeight) {\r\n this.sizeInfo.hasScrollBar = true;\r\n this.sizeInfo.totalMenuWidth = this.sizeInfo.menuWidth + this.sizeInfo.scrollBarWidth;\r\n }\r\n\r\n if (this.options.dropdownAlignRight === 'auto') {\r\n this.$menu.toggleClass(classNames.MENURIGHT, this.sizeInfo.selectOffsetLeft > this.sizeInfo.selectOffsetRight && this.sizeInfo.selectOffsetRight < (this.sizeInfo.totalMenuWidth - selectWidth));\r\n }\r\n\r\n if (this.dropdown && this.dropdown._popper) this.dropdown._popper.update();\r\n },\r\n\r\n setSize: function (refresh) {\r\n this.liHeight(refresh);\r\n\r\n if (this.options.header) this.$menu.css('padding-top', 0);\r\n\r\n if (this.options.size !== false) {\r\n var that = this,\r\n $window = $(window);\r\n\r\n this.setMenuSize();\r\n\r\n if (this.options.liveSearch) {\r\n this.$searchbox\r\n .off('input.setMenuSize propertychange.setMenuSize')\r\n .on('input.setMenuSize propertychange.setMenuSize', function () {\r\n return that.setMenuSize();\r\n });\r\n }\r\n\r\n if (this.options.size === 'auto') {\r\n $window\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize')\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize', function () {\r\n return that.setMenuSize();\r\n });\r\n } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) {\r\n $window.off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize');\r\n }\r\n }\r\n\r\n this.createView(false, true, refresh);\r\n },\r\n\r\n setWidth: function () {\r\n var that = this;\r\n\r\n if (this.options.width === 'auto') {\r\n requestAnimationFrame(function () {\r\n that.$menu.css('min-width', '0');\r\n\r\n that.$element.on('loaded' + EVENT_KEY, function () {\r\n that.liHeight();\r\n that.setMenuSize();\r\n\r\n // Get correct width if element is hidden\r\n var $selectClone = that.$newElement.clone().appendTo('body'),\r\n btnWidth = $selectClone.css('width', 'auto').children('button').outerWidth();\r\n\r\n $selectClone.remove();\r\n\r\n // Set width to whatever's larger, button title or longest option\r\n that.sizeInfo.selectWidth = Math.max(that.sizeInfo.totalMenuWidth, btnWidth);\r\n that.$newElement.css('width', that.sizeInfo.selectWidth + 'px');\r\n });\r\n });\r\n } else if (this.options.width === 'fit') {\r\n // Remove inline min-width so width can be changed from 'auto'\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', '').addClass('fit-width');\r\n } else if (this.options.width) {\r\n // Remove inline min-width so width can be changed from 'auto'\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', this.options.width);\r\n } else {\r\n // Remove inline min-width/width so width can be changed\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', '');\r\n }\r\n // Remove fit-width class if width is changed programmatically\r\n if (this.$newElement.hasClass('fit-width') && this.options.width !== 'fit') {\r\n this.$newElement[0].classList.remove('fit-width');\r\n }\r\n },\r\n\r\n selectPosition: function () {\r\n this.$bsContainer = $('
    ');\r\n\r\n var that = this,\r\n $container = $(this.options.container),\r\n pos,\r\n containerPos,\r\n actualHeight,\r\n getPlacement = function ($element) {\r\n var containerPosition = {},\r\n // fall back to dropdown's default display setting if display is not manually set\r\n display = that.options.display || (\r\n // Bootstrap 3 doesn't have $.fn.dropdown.Constructor.Default\r\n $.fn.dropdown.Constructor.Default ? $.fn.dropdown.Constructor.Default.display\r\n : false\r\n );\r\n\r\n that.$bsContainer.addClass($element.attr('class').replace(/form-control|fit-width/gi, '')).toggleClass(classNames.DROPUP, $element.hasClass(classNames.DROPUP));\r\n pos = $element.offset();\r\n\r\n if (!$container.is('body')) {\r\n containerPos = $container.offset();\r\n containerPos.top += parseInt($container.css('borderTopWidth')) - $container.scrollTop();\r\n containerPos.left += parseInt($container.css('borderLeftWidth')) - $container.scrollLeft();\r\n } else {\r\n containerPos = { top: 0, left: 0 };\r\n }\r\n\r\n actualHeight = $element.hasClass(classNames.DROPUP) ? 0 : $element[0].offsetHeight;\r\n\r\n // Bootstrap 4+ uses Popper for menu positioning\r\n if (version.major < 4 || display === 'static') {\r\n containerPosition.top = pos.top - containerPos.top + actualHeight;\r\n containerPosition.left = pos.left - containerPos.left;\r\n }\r\n\r\n containerPosition.width = $element[0].offsetWidth;\r\n\r\n that.$bsContainer.css(containerPosition);\r\n };\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (that.isDisabled()) {\r\n return;\r\n }\r\n\r\n getPlacement(that.$newElement);\r\n\r\n that.$bsContainer\r\n .appendTo(that.options.container)\r\n .toggleClass(classNames.SHOW, !that.$button.hasClass(classNames.SHOW))\r\n .append(that.$menu);\r\n });\r\n\r\n $(window)\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + ' scroll' + EVENT_KEY + '.' + this.selectId)\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + ' scroll' + EVENT_KEY + '.' + this.selectId, function () {\r\n var isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (isActive) getPlacement(that.$newElement);\r\n });\r\n\r\n this.$element.on('hide' + EVENT_KEY, function () {\r\n that.$menu.data('height', that.$menu.height());\r\n that.$bsContainer.detach();\r\n });\r\n },\r\n\r\n setOptionStatus: function (selectedOnly) {\r\n var that = this;\r\n\r\n that.noScroll = false;\r\n\r\n if (that.selectpicker.view.visibleElements && that.selectpicker.view.visibleElements.length) {\r\n for (var i = 0; i < that.selectpicker.view.visibleElements.length; i++) {\r\n var liData = that.selectpicker.current.data[i + that.selectpicker.view.position0],\r\n option = liData.option;\r\n\r\n if (option) {\r\n if (selectedOnly !== true) {\r\n that.setDisabled(\r\n liData.index,\r\n liData.disabled\r\n );\r\n }\r\n\r\n that.setSelected(\r\n liData.index,\r\n option.selected\r\n );\r\n }\r\n }\r\n }\r\n },\r\n\r\n /**\r\n * @param {number} index - the index of the option that is being changed\r\n * @param {boolean} selected - true if the option is being selected, false if being deselected\r\n */\r\n setSelected: function (index, selected) {\r\n var li = this.selectpicker.main.elements[index],\r\n liData = this.selectpicker.main.data[index],\r\n activeIndexIsSet = this.activeIndex !== undefined,\r\n thisIsActive = this.activeIndex === index,\r\n prevActive,\r\n a,\r\n // if current option is already active\r\n // OR\r\n // if the current option is being selected, it's NOT multiple, and\r\n // activeIndex is undefined:\r\n // - when the menu is first being opened, OR\r\n // - after a search has been performed, OR\r\n // - when retainActive is false when selecting a new option (i.e. index of the newly selected option is not the same as the current activeIndex)\r\n keepActive = thisIsActive || (selected && !this.multiple && !activeIndexIsSet);\r\n\r\n liData.selected = selected;\r\n\r\n a = li.firstChild;\r\n\r\n if (selected) {\r\n this.selectedIndex = index;\r\n }\r\n\r\n li.classList.toggle('selected', selected);\r\n\r\n if (keepActive) {\r\n this.focusItem(li, liData);\r\n this.selectpicker.view.currentActive = li;\r\n this.activeIndex = index;\r\n } else {\r\n this.defocusItem(li);\r\n }\r\n\r\n if (a) {\r\n a.classList.toggle('selected', selected);\r\n\r\n if (selected) {\r\n a.setAttribute('aria-selected', true);\r\n } else {\r\n if (this.multiple) {\r\n a.setAttribute('aria-selected', false);\r\n } else {\r\n a.removeAttribute('aria-selected');\r\n }\r\n }\r\n }\r\n\r\n if (!keepActive && !activeIndexIsSet && selected && this.prevActiveIndex !== undefined) {\r\n prevActive = this.selectpicker.main.elements[this.prevActiveIndex];\r\n\r\n this.defocusItem(prevActive);\r\n }\r\n },\r\n\r\n /**\r\n * @param {number} index - the index of the option that is being disabled\r\n * @param {boolean} disabled - true if the option is being disabled, false if being enabled\r\n */\r\n setDisabled: function (index, disabled) {\r\n var li = this.selectpicker.main.elements[index],\r\n a;\r\n\r\n this.selectpicker.main.data[index].disabled = disabled;\r\n\r\n a = li.firstChild;\r\n\r\n li.classList.toggle(classNames.DISABLED, disabled);\r\n\r\n if (a) {\r\n if (version.major === '4') a.classList.toggle(classNames.DISABLED, disabled);\r\n\r\n if (disabled) {\r\n a.setAttribute('aria-disabled', disabled);\r\n a.setAttribute('tabindex', -1);\r\n } else {\r\n a.removeAttribute('aria-disabled');\r\n a.setAttribute('tabindex', 0);\r\n }\r\n }\r\n },\r\n\r\n isDisabled: function () {\r\n return this.$element[0].disabled;\r\n },\r\n\r\n checkDisabled: function () {\r\n if (this.isDisabled()) {\r\n this.$newElement[0].classList.add(classNames.DISABLED);\r\n this.$button.addClass(classNames.DISABLED).attr('tabindex', -1).attr('aria-disabled', true);\r\n } else {\r\n if (this.$button[0].classList.contains(classNames.DISABLED)) {\r\n this.$newElement[0].classList.remove(classNames.DISABLED);\r\n this.$button.removeClass(classNames.DISABLED).attr('aria-disabled', false);\r\n }\r\n\r\n if (this.$button.attr('tabindex') == -1 && !this.$element.data('tabindex')) {\r\n this.$button.removeAttr('tabindex');\r\n }\r\n }\r\n },\r\n\r\n tabIndex: function () {\r\n if (this.$element.data('tabindex') !== this.$element.attr('tabindex') &&\r\n (this.$element.attr('tabindex') !== -98 && this.$element.attr('tabindex') !== '-98')) {\r\n this.$element.data('tabindex', this.$element.attr('tabindex'));\r\n this.$button.attr('tabindex', this.$element.data('tabindex'));\r\n }\r\n\r\n this.$element.attr('tabindex', -98);\r\n },\r\n\r\n clickListener: function () {\r\n var that = this,\r\n $document = $(document);\r\n\r\n $document.data('spaceSelect', false);\r\n\r\n this.$button.on('keyup', function (e) {\r\n if (/(32)/.test(e.keyCode.toString(10)) && $document.data('spaceSelect')) {\r\n e.preventDefault();\r\n $document.data('spaceSelect', false);\r\n }\r\n });\r\n\r\n this.$newElement.on('show.bs.dropdown', function () {\r\n if (version.major > 3 && !that.dropdown) {\r\n that.dropdown = that.$button.data('bs.dropdown');\r\n that.dropdown._menu = that.$menu[0];\r\n }\r\n });\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (!that.$newElement.hasClass(classNames.SHOW)) {\r\n that.setSize();\r\n }\r\n });\r\n\r\n function setFocus () {\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$menuInner.trigger('focus');\r\n }\r\n }\r\n\r\n function checkPopperExists () {\r\n if (that.dropdown && that.dropdown._popper && that.dropdown._popper.state.isCreated) {\r\n setFocus();\r\n } else {\r\n requestAnimationFrame(checkPopperExists);\r\n }\r\n }\r\n\r\n this.$element.on('shown' + EVENT_KEY, function () {\r\n if (that.$menuInner[0].scrollTop !== that.selectpicker.view.scrollTop) {\r\n that.$menuInner[0].scrollTop = that.selectpicker.view.scrollTop;\r\n }\r\n\r\n if (version.major > 3) {\r\n requestAnimationFrame(checkPopperExists);\r\n } else {\r\n setFocus();\r\n }\r\n });\r\n\r\n // ensure posinset and setsize are correct before selecting an option via a click\r\n this.$menuInner.on('mouseenter', 'li a', function (e) {\r\n var hoverLi = this.parentElement,\r\n position0 = that.isVirtual() ? that.selectpicker.view.position0 : 0,\r\n index = Array.prototype.indexOf.call(hoverLi.parentElement.children, hoverLi),\r\n hoverData = that.selectpicker.current.data[index + position0];\r\n\r\n that.focusItem(hoverLi, hoverData, true);\r\n });\r\n\r\n this.$menuInner.on('click', 'li a', function (e, retainActive) {\r\n var $this = $(this),\r\n element = that.$element[0],\r\n position0 = that.isVirtual() ? that.selectpicker.view.position0 : 0,\r\n clickedData = that.selectpicker.current.data[$this.parent().index() + position0],\r\n clickedIndex = clickedData.index,\r\n prevValue = getSelectValues(element),\r\n prevIndex = element.selectedIndex,\r\n prevOption = element.options[prevIndex],\r\n triggerChange = true;\r\n\r\n // Don't close on multi choice menu\r\n if (that.multiple && that.options.maxOptions !== 1) {\r\n e.stopPropagation();\r\n }\r\n\r\n e.preventDefault();\r\n\r\n // Don't run if the select is disabled\r\n if (!that.isDisabled() && !$this.parent().hasClass(classNames.DISABLED)) {\r\n var option = clickedData.option,\r\n $option = $(option),\r\n state = option.selected,\r\n $optgroup = $option.parent('optgroup'),\r\n $optgroupOptions = $optgroup.find('option'),\r\n maxOptions = that.options.maxOptions,\r\n maxOptionsGrp = $optgroup.data('maxOptions') || false;\r\n\r\n if (clickedIndex === that.activeIndex) retainActive = true;\r\n\r\n if (!retainActive) {\r\n that.prevActiveIndex = that.activeIndex;\r\n that.activeIndex = undefined;\r\n }\r\n\r\n if (!that.multiple) { // Deselect all others if not multi select box\r\n if (prevOption) prevOption.selected = false;\r\n option.selected = true;\r\n that.setSelected(clickedIndex, true);\r\n } else { // Toggle the one we have chosen if we are multi select.\r\n option.selected = !state;\r\n\r\n that.setSelected(clickedIndex, !state);\r\n $this.trigger('blur');\r\n\r\n if (maxOptions !== false || maxOptionsGrp !== false) {\r\n var maxReached = maxOptions < getSelectedOptions(element).length,\r\n maxReachedGrp = maxOptionsGrp < $optgroup.find('option:selected').length;\r\n\r\n if ((maxOptions && maxReached) || (maxOptionsGrp && maxReachedGrp)) {\r\n if (maxOptions && maxOptions == 1) {\r\n element.selectedIndex = -1;\r\n option.selected = true;\r\n that.setOptionStatus(true);\r\n } else if (maxOptionsGrp && maxOptionsGrp == 1) {\r\n for (var i = 0; i < $optgroupOptions.length; i++) {\r\n var _option = $optgroupOptions[i];\r\n _option.selected = false;\r\n that.setSelected(_option.liIndex, false);\r\n }\r\n\r\n option.selected = true;\r\n that.setSelected(clickedIndex, true);\r\n } else {\r\n var maxOptionsText = typeof that.options.maxOptionsText === 'string' ? [that.options.maxOptionsText, that.options.maxOptionsText] : that.options.maxOptionsText,\r\n maxOptionsArr = typeof maxOptionsText === 'function' ? maxOptionsText(maxOptions, maxOptionsGrp) : maxOptionsText,\r\n maxTxt = maxOptionsArr[0].replace('{n}', maxOptions),\r\n maxTxtGrp = maxOptionsArr[1].replace('{n}', maxOptionsGrp),\r\n $notify = $('
    ');\r\n // If {var} is set in array, replace it\r\n /** @deprecated */\r\n if (maxOptionsArr[2]) {\r\n maxTxt = maxTxt.replace('{var}', maxOptionsArr[2][maxOptions > 1 ? 0 : 1]);\r\n maxTxtGrp = maxTxtGrp.replace('{var}', maxOptionsArr[2][maxOptionsGrp > 1 ? 0 : 1]);\r\n }\r\n\r\n option.selected = false;\r\n\r\n that.$menu.append($notify);\r\n\r\n if (maxOptions && maxReached) {\r\n $notify.append($('
    ' + maxTxt + '
    '));\r\n triggerChange = false;\r\n that.$element.trigger('maxReached' + EVENT_KEY);\r\n }\r\n\r\n if (maxOptionsGrp && maxReachedGrp) {\r\n $notify.append($('
    ' + maxTxtGrp + '
    '));\r\n triggerChange = false;\r\n that.$element.trigger('maxReachedGrp' + EVENT_KEY);\r\n }\r\n\r\n setTimeout(function () {\r\n that.setSelected(clickedIndex, false);\r\n }, 10);\r\n\r\n $notify[0].classList.add('fadeOut');\r\n\r\n setTimeout(function () {\r\n $notify.remove();\r\n }, 1050);\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (!that.multiple || (that.multiple && that.options.maxOptions === 1)) {\r\n that.$button.trigger('focus');\r\n } else if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n }\r\n\r\n // Trigger select 'change'\r\n if (triggerChange) {\r\n if (that.multiple || prevIndex !== element.selectedIndex) {\r\n // $option.prop('selected') is current option state (selected/unselected). prevValue is the value of the select prior to being changed.\r\n changedArguments = [option.index, $option.prop('selected'), prevValue];\r\n that.$element\r\n .triggerNative('change');\r\n }\r\n }\r\n }\r\n });\r\n\r\n this.$menu.on('click', 'li.' + classNames.DISABLED + ' a, .' + classNames.POPOVERHEADER + ', .' + classNames.POPOVERHEADER + ' :not(.close)', function (e) {\r\n if (e.currentTarget == this) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n if (that.options.liveSearch && !$(e.target).hasClass('close')) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n }\r\n });\r\n\r\n this.$menuInner.on('click', '.divider, .dropdown-header', function (e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n });\r\n\r\n this.$menu.on('click', '.' + classNames.POPOVERHEADER + ' .close', function () {\r\n that.$button.trigger('click');\r\n });\r\n\r\n this.$searchbox.on('click', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n this.$menu.on('click', '.actions-btn', function (e) {\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n\r\n e.preventDefault();\r\n e.stopPropagation();\r\n\r\n if ($(this).hasClass('bs-select-all')) {\r\n that.selectAll();\r\n } else {\r\n that.deselectAll();\r\n }\r\n });\r\n\r\n this.$element\r\n .on('change' + EVENT_KEY, function () {\r\n that.render();\r\n that.$element.trigger('changed' + EVENT_KEY, changedArguments);\r\n changedArguments = null;\r\n })\r\n .on('focus' + EVENT_KEY, function () {\r\n if (!that.options.mobile) that.$button.trigger('focus');\r\n });\r\n },\r\n\r\n liveSearchListener: function () {\r\n var that = this,\r\n noResults = document.createElement('li');\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (!!that.$searchbox.val()) {\r\n that.$searchbox.val('');\r\n }\r\n });\r\n\r\n this.$searchbox.on('click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n this.$searchbox.on('input propertychange', function () {\r\n var searchValue = that.$searchbox.val();\r\n\r\n that.selectpicker.search.elements = [];\r\n that.selectpicker.search.data = [];\r\n\r\n if (searchValue) {\r\n var i,\r\n searchMatch = [],\r\n q = searchValue.toUpperCase(),\r\n cache = {},\r\n cacheArr = [],\r\n searchStyle = that._searchStyle(),\r\n normalizeSearch = that.options.liveSearchNormalize;\r\n\r\n if (normalizeSearch) q = normalizeToBase(q);\r\n\r\n for (var i = 0; i < that.selectpicker.main.data.length; i++) {\r\n var li = that.selectpicker.main.data[i];\r\n\r\n if (!cache[i]) {\r\n cache[i] = stringSearch(li, q, searchStyle, normalizeSearch);\r\n }\r\n\r\n if (cache[i] && li.headerIndex !== undefined && cacheArr.indexOf(li.headerIndex) === -1) {\r\n if (li.headerIndex > 0) {\r\n cache[li.headerIndex - 1] = true;\r\n cacheArr.push(li.headerIndex - 1);\r\n }\r\n\r\n cache[li.headerIndex] = true;\r\n cacheArr.push(li.headerIndex);\r\n\r\n cache[li.lastIndex + 1] = true;\r\n }\r\n\r\n if (cache[i] && li.type !== 'optgroup-label') cacheArr.push(i);\r\n }\r\n\r\n for (var i = 0, cacheLen = cacheArr.length; i < cacheLen; i++) {\r\n var index = cacheArr[i],\r\n prevIndex = cacheArr[i - 1],\r\n li = that.selectpicker.main.data[index],\r\n liPrev = that.selectpicker.main.data[prevIndex];\r\n\r\n if (li.type !== 'divider' || (li.type === 'divider' && liPrev && liPrev.type !== 'divider' && cacheLen - 1 !== i)) {\r\n that.selectpicker.search.data.push(li);\r\n searchMatch.push(that.selectpicker.main.elements[index]);\r\n }\r\n }\r\n\r\n that.activeIndex = undefined;\r\n that.noScroll = true;\r\n that.$menuInner.scrollTop(0);\r\n that.selectpicker.search.elements = searchMatch;\r\n that.createView(true);\r\n\r\n if (!searchMatch.length) {\r\n noResults.className = 'no-results';\r\n noResults.innerHTML = that.options.noneResultsText.replace('{0}', '\"' + htmlEscape(searchValue) + '\"');\r\n that.$menuInner[0].firstChild.appendChild(noResults);\r\n }\r\n } else {\r\n that.$menuInner.scrollTop(0);\r\n that.createView(false);\r\n }\r\n });\r\n },\r\n\r\n _searchStyle: function () {\r\n return this.options.liveSearchStyle || 'contains';\r\n },\r\n\r\n val: function (value) {\r\n var element = this.$element[0];\r\n\r\n if (typeof value !== 'undefined') {\r\n var prevValue = getSelectValues(element);\r\n\r\n changedArguments = [null, null, prevValue];\r\n\r\n this.$element\r\n .val(value)\r\n .trigger('changed' + EVENT_KEY, changedArguments);\r\n\r\n if (this.$newElement.hasClass(classNames.SHOW)) {\r\n if (this.multiple) {\r\n this.setOptionStatus(true);\r\n } else {\r\n var liSelectedIndex = (element.options[element.selectedIndex] || {}).liIndex;\r\n\r\n if (typeof liSelectedIndex === 'number') {\r\n this.setSelected(this.selectedIndex, false);\r\n this.setSelected(liSelectedIndex, true);\r\n }\r\n }\r\n }\r\n\r\n this.render();\r\n\r\n changedArguments = null;\r\n\r\n return this.$element;\r\n } else {\r\n return this.$element.val();\r\n }\r\n },\r\n\r\n changeAll: function (status) {\r\n if (!this.multiple) return;\r\n if (typeof status === 'undefined') status = true;\r\n\r\n var element = this.$element[0],\r\n previousSelected = 0,\r\n currentSelected = 0,\r\n prevValue = getSelectValues(element);\r\n\r\n element.classList.add('bs-select-hidden');\r\n\r\n for (var i = 0, data = this.selectpicker.current.data, len = data.length; i < len; i++) {\r\n var liData = data[i],\r\n option = liData.option;\r\n\r\n if (option && !liData.disabled && liData.type !== 'divider') {\r\n if (liData.selected) previousSelected++;\r\n option.selected = status;\r\n if (status === true) currentSelected++;\r\n }\r\n }\r\n\r\n element.classList.remove('bs-select-hidden');\r\n\r\n if (previousSelected === currentSelected) return;\r\n\r\n this.setOptionStatus();\r\n\r\n changedArguments = [null, null, prevValue];\r\n\r\n this.$element\r\n .triggerNative('change');\r\n },\r\n\r\n selectAll: function () {\r\n return this.changeAll(true);\r\n },\r\n\r\n deselectAll: function () {\r\n return this.changeAll(false);\r\n },\r\n\r\n toggle: function (e) {\r\n e = e || window.event;\r\n\r\n if (e) e.stopPropagation();\r\n\r\n this.$button.trigger('click.bs.dropdown.data-api');\r\n },\r\n\r\n keydown: function (e) {\r\n var $this = $(this),\r\n isToggle = $this.hasClass('dropdown-toggle'),\r\n $parent = isToggle ? $this.closest('.dropdown') : $this.closest(Selector.MENU),\r\n that = $parent.data('this'),\r\n $items = that.findLis(),\r\n index,\r\n isActive,\r\n liActive,\r\n activeLi,\r\n offset,\r\n updateScroll = false,\r\n downOnTab = e.which === keyCodes.TAB && !isToggle && !that.options.selectOnTab,\r\n isArrowKey = REGEXP_ARROW.test(e.which) || downOnTab,\r\n scrollTop = that.$menuInner[0].scrollTop,\r\n isVirtual = that.isVirtual(),\r\n position0 = isVirtual === true ? that.selectpicker.view.position0 : 0;\r\n\r\n // do nothing if a function key is pressed\r\n if (e.which >= 112 && e.which <= 123) return;\r\n\r\n isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (\r\n !isActive &&\r\n (\r\n isArrowKey ||\r\n (e.which >= 48 && e.which <= 57) ||\r\n (e.which >= 96 && e.which <= 105) ||\r\n (e.which >= 65 && e.which <= 90)\r\n )\r\n ) {\r\n that.$button.trigger('click.bs.dropdown.data-api');\r\n\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n return;\r\n }\r\n }\r\n\r\n if (e.which === keyCodes.ESCAPE && isActive) {\r\n e.preventDefault();\r\n that.$button.trigger('click.bs.dropdown.data-api').trigger('focus');\r\n }\r\n\r\n if (isArrowKey) { // if up or down\r\n if (!$items.length) return;\r\n\r\n liActive = that.selectpicker.main.elements[that.activeIndex];\r\n index = liActive ? Array.prototype.indexOf.call(liActive.parentElement.children, liActive) : -1;\r\n\r\n if (index !== -1) {\r\n that.defocusItem(liActive);\r\n }\r\n\r\n if (e.which === keyCodes.ARROW_UP) { // up\r\n if (index !== -1) index--;\r\n if (index + position0 < 0) index += $items.length;\r\n\r\n if (!that.selectpicker.view.canHighlight[index + position0]) {\r\n index = that.selectpicker.view.canHighlight.slice(0, index + position0).lastIndexOf(true) - position0;\r\n if (index === -1) index = $items.length - 1;\r\n }\r\n } else if (e.which === keyCodes.ARROW_DOWN || downOnTab) { // down\r\n index++;\r\n if (index + position0 >= that.selectpicker.view.canHighlight.length) index = 0;\r\n\r\n if (!that.selectpicker.view.canHighlight[index + position0]) {\r\n index = index + 1 + that.selectpicker.view.canHighlight.slice(index + position0 + 1).indexOf(true);\r\n }\r\n }\r\n\r\n e.preventDefault();\r\n\r\n var liActiveIndex = position0 + index;\r\n\r\n if (e.which === keyCodes.ARROW_UP) { // up\r\n // scroll to bottom and highlight last option\r\n if (position0 === 0 && index === $items.length - 1) {\r\n that.$menuInner[0].scrollTop = that.$menuInner[0].scrollHeight;\r\n\r\n liActiveIndex = that.selectpicker.current.elements.length - 1;\r\n } else {\r\n activeLi = that.selectpicker.current.data[liActiveIndex];\r\n offset = activeLi.position - activeLi.height;\r\n\r\n updateScroll = offset < scrollTop;\r\n }\r\n } else if (e.which === keyCodes.ARROW_DOWN || downOnTab) { // down\r\n // scroll to top and highlight first option\r\n if (index === 0) {\r\n that.$menuInner[0].scrollTop = 0;\r\n\r\n liActiveIndex = 0;\r\n } else {\r\n activeLi = that.selectpicker.current.data[liActiveIndex];\r\n offset = activeLi.position - that.sizeInfo.menuInnerHeight;\r\n\r\n updateScroll = offset > scrollTop;\r\n }\r\n }\r\n\r\n liActive = that.selectpicker.current.elements[liActiveIndex];\r\n\r\n that.activeIndex = that.selectpicker.current.data[liActiveIndex].index;\r\n\r\n that.focusItem(liActive);\r\n\r\n that.selectpicker.view.currentActive = liActive;\r\n\r\n if (updateScroll) that.$menuInner[0].scrollTop = offset;\r\n\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n $this.trigger('focus');\r\n }\r\n } else if (\r\n (!$this.is('input') && !REGEXP_TAB_OR_ESCAPE.test(e.which)) ||\r\n (e.which === keyCodes.SPACE && that.selectpicker.keydown.keyHistory)\r\n ) {\r\n var searchMatch,\r\n matches = [],\r\n keyHistory;\r\n\r\n e.preventDefault();\r\n\r\n that.selectpicker.keydown.keyHistory += keyCodeMap[e.which];\r\n\r\n if (that.selectpicker.keydown.resetKeyHistory.cancel) clearTimeout(that.selectpicker.keydown.resetKeyHistory.cancel);\r\n that.selectpicker.keydown.resetKeyHistory.cancel = that.selectpicker.keydown.resetKeyHistory.start();\r\n\r\n keyHistory = that.selectpicker.keydown.keyHistory;\r\n\r\n // if all letters are the same, set keyHistory to just the first character when searching\r\n if (/^(.)\\1+$/.test(keyHistory)) {\r\n keyHistory = keyHistory.charAt(0);\r\n }\r\n\r\n // find matches\r\n for (var i = 0; i < that.selectpicker.current.data.length; i++) {\r\n var li = that.selectpicker.current.data[i],\r\n hasMatch;\r\n\r\n hasMatch = stringSearch(li, keyHistory, 'startsWith', true);\r\n\r\n if (hasMatch && that.selectpicker.view.canHighlight[i]) {\r\n matches.push(li.index);\r\n }\r\n }\r\n\r\n if (matches.length) {\r\n var matchIndex = 0;\r\n\r\n $items.removeClass('active').find('a').removeClass('active');\r\n\r\n // either only one key has been pressed or they are all the same key\r\n if (keyHistory.length === 1) {\r\n matchIndex = matches.indexOf(that.activeIndex);\r\n\r\n if (matchIndex === -1 || matchIndex === matches.length - 1) {\r\n matchIndex = 0;\r\n } else {\r\n matchIndex++;\r\n }\r\n }\r\n\r\n searchMatch = matches[matchIndex];\r\n\r\n activeLi = that.selectpicker.main.data[searchMatch];\r\n\r\n if (scrollTop - activeLi.position > 0) {\r\n offset = activeLi.position - activeLi.height;\r\n updateScroll = true;\r\n } else {\r\n offset = activeLi.position - that.sizeInfo.menuInnerHeight;\r\n // if the option is already visible at the current scroll position, just keep it the same\r\n updateScroll = activeLi.position > scrollTop + that.sizeInfo.menuInnerHeight;\r\n }\r\n\r\n liActive = that.selectpicker.main.elements[searchMatch];\r\n\r\n that.activeIndex = matches[matchIndex];\r\n\r\n that.focusItem(liActive);\r\n\r\n if (liActive) liActive.firstChild.focus();\r\n\r\n if (updateScroll) that.$menuInner[0].scrollTop = offset;\r\n\r\n $this.trigger('focus');\r\n }\r\n }\r\n\r\n // Select focused option if \"Enter\", \"Spacebar\" or \"Tab\" (when selectOnTab is true) are pressed inside the menu.\r\n if (\r\n isActive &&\r\n (\r\n (e.which === keyCodes.SPACE && !that.selectpicker.keydown.keyHistory) ||\r\n e.which === keyCodes.ENTER ||\r\n (e.which === keyCodes.TAB && that.options.selectOnTab)\r\n )\r\n ) {\r\n if (e.which !== keyCodes.SPACE) e.preventDefault();\r\n\r\n if (!that.options.liveSearch || e.which !== keyCodes.SPACE) {\r\n that.$menuInner.find('.active a').trigger('click', true); // retain active class\r\n $this.trigger('focus');\r\n\r\n if (!that.options.liveSearch) {\r\n // Prevent screen from scrolling if the user hits the spacebar\r\n e.preventDefault();\r\n // Fixes spacebar selection of dropdown items in FF & IE\r\n $(document).data('spaceSelect', true);\r\n }\r\n }\r\n }\r\n },\r\n\r\n mobile: function () {\r\n this.$element[0].classList.add('mobile-device');\r\n },\r\n\r\n refresh: function () {\r\n // update options if data attributes have been changed\r\n var config = $.extend({}, this.options, this.$element.data());\r\n this.options = config;\r\n\r\n this.checkDisabled();\r\n this.setStyle();\r\n this.render();\r\n this.buildData();\r\n this.buildList();\r\n this.setWidth();\r\n\r\n this.setSize(true);\r\n\r\n this.$element.trigger('refreshed' + EVENT_KEY);\r\n },\r\n\r\n hide: function () {\r\n this.$newElement.hide();\r\n },\r\n\r\n show: function () {\r\n this.$newElement.show();\r\n },\r\n\r\n remove: function () {\r\n this.$newElement.remove();\r\n this.$element.remove();\r\n },\r\n\r\n destroy: function () {\r\n this.$newElement.before(this.$element).remove();\r\n\r\n if (this.$bsContainer) {\r\n this.$bsContainer.remove();\r\n } else {\r\n this.$menu.remove();\r\n }\r\n\r\n this.$element\r\n .off(EVENT_KEY)\r\n .removeData('selectpicker')\r\n .removeClass('bs-select-hidden selectpicker');\r\n\r\n $(window).off(EVENT_KEY + '.' + this.selectId);\r\n }\r\n };\r\n\r\n // SELECTPICKER PLUGIN DEFINITION\r\n // ==============================\r\n function Plugin (option) {\r\n // get the args of the outer function..\r\n var args = arguments;\r\n // The arguments of the function are explicitly re-defined from the argument list, because the shift causes them\r\n // to get lost/corrupted in android 2.3 and IE9 #715 #775\r\n var _option = option;\r\n\r\n [].shift.apply(args);\r\n\r\n // if the version was not set successfully\r\n if (!version.success) {\r\n // try to retreive it again\r\n try {\r\n version.full = ($.fn.dropdown.Constructor.VERSION || '').split(' ')[0].split('.');\r\n } catch (err) {\r\n // fall back to use BootstrapVersion if set\r\n if (Selectpicker.BootstrapVersion) {\r\n version.full = Selectpicker.BootstrapVersion.split(' ')[0].split('.');\r\n } else {\r\n version.full = [version.major, '0', '0'];\r\n\r\n console.warn(\r\n 'There was an issue retrieving Bootstrap\\'s version. ' +\r\n 'Ensure Bootstrap is being loaded before bootstrap-select and there is no namespace collision. ' +\r\n 'If loading Bootstrap asynchronously, the version may need to be manually specified via $.fn.selectpicker.Constructor.BootstrapVersion.',\r\n err\r\n );\r\n }\r\n }\r\n\r\n version.major = version.full[0];\r\n version.success = true;\r\n }\r\n\r\n if (version.major === '4') {\r\n // some defaults need to be changed if using Bootstrap 4\r\n // check to see if they have already been manually changed before forcing them to update\r\n var toUpdate = [];\r\n\r\n if (Selectpicker.DEFAULTS.style === classNames.BUTTONCLASS) toUpdate.push({ name: 'style', className: 'BUTTONCLASS' });\r\n if (Selectpicker.DEFAULTS.iconBase === classNames.ICONBASE) toUpdate.push({ name: 'iconBase', className: 'ICONBASE' });\r\n if (Selectpicker.DEFAULTS.tickIcon === classNames.TICKICON) toUpdate.push({ name: 'tickIcon', className: 'TICKICON' });\r\n\r\n classNames.DIVIDER = 'dropdown-divider';\r\n classNames.SHOW = 'show';\r\n classNames.BUTTONCLASS = 'btn-light';\r\n classNames.POPOVERHEADER = 'popover-header';\r\n classNames.ICONBASE = '';\r\n classNames.TICKICON = 'bs-ok-default';\r\n\r\n for (var i = 0; i < toUpdate.length; i++) {\r\n var option = toUpdate[i];\r\n Selectpicker.DEFAULTS[option.name] = classNames[option.className];\r\n }\r\n }\r\n\r\n var value;\r\n var chain = this.each(function () {\r\n var $this = $(this);\r\n if ($this.is('select')) {\r\n var data = $this.data('selectpicker'),\r\n options = typeof _option == 'object' && _option;\r\n\r\n if (!data) {\r\n var dataAttributes = $this.data();\r\n\r\n for (var dataAttr in dataAttributes) {\r\n if (dataAttributes.hasOwnProperty(dataAttr) && $.inArray(dataAttr, DISALLOWED_ATTRIBUTES) !== -1) {\r\n delete dataAttributes[dataAttr];\r\n }\r\n }\r\n\r\n var config = $.extend({}, Selectpicker.DEFAULTS, $.fn.selectpicker.defaults || {}, dataAttributes, options);\r\n config.template = $.extend({}, Selectpicker.DEFAULTS.template, ($.fn.selectpicker.defaults ? $.fn.selectpicker.defaults.template : {}), dataAttributes.template, options.template);\r\n $this.data('selectpicker', (data = new Selectpicker(this, config)));\r\n } else if (options) {\r\n for (var i in options) {\r\n if (options.hasOwnProperty(i)) {\r\n data.options[i] = options[i];\r\n }\r\n }\r\n }\r\n\r\n if (typeof _option == 'string') {\r\n if (data[_option] instanceof Function) {\r\n value = data[_option].apply(data, args);\r\n } else {\r\n value = data.options[_option];\r\n }\r\n }\r\n }\r\n });\r\n\r\n if (typeof value !== 'undefined') {\r\n // noinspection JSUnusedAssignment\r\n return value;\r\n } else {\r\n return chain;\r\n }\r\n }\r\n\r\n var old = $.fn.selectpicker;\r\n $.fn.selectpicker = Plugin;\r\n $.fn.selectpicker.Constructor = Selectpicker;\r\n\r\n // SELECTPICKER NO CONFLICT\r\n // ========================\r\n $.fn.selectpicker.noConflict = function () {\r\n $.fn.selectpicker = old;\r\n return this;\r\n };\r\n\r\n // get Bootstrap's keydown event handler for either Bootstrap 4 or Bootstrap 3\r\n var bootstrapKeydown = $.fn.dropdown.Constructor._dataApiKeydownHandler || $.fn.dropdown.Constructor.prototype.keydown;\r\n\r\n $(document)\r\n .off('keydown.bs.dropdown.data-api')\r\n .on('keydown.bs.dropdown.data-api', ':not(.bootstrap-select) > [data-toggle=\"dropdown\"]', bootstrapKeydown)\r\n .on('keydown.bs.dropdown.data-api', ':not(.bootstrap-select) > .dropdown-menu', bootstrapKeydown)\r\n .on('keydown' + EVENT_KEY, '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select [role=\"listbox\"], .bootstrap-select .bs-searchbox input', Selectpicker.prototype.keydown)\r\n .on('focusin.modal', '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select [role=\"listbox\"], .bootstrap-select .bs-searchbox input', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n // SELECTPICKER DATA-API\r\n // =====================\r\n $(window).on('load' + EVENT_KEY + '.data-api', function () {\r\n $('.selectpicker').each(function () {\r\n var $selectpicker = $(this);\r\n Plugin.call($selectpicker, $selectpicker.data());\r\n })\r\n });\r\n})(jQuery);\r\n"]} \ No newline at end of file diff --git a/dist/js/bootstrap-select.min.js b/dist/js/bootstrap-select.min.js index 6a4529019..21b949ef4 100644 --- a/dist/js/bootstrap-select.min.js +++ b/dist/js/bootstrap-select.min.js @@ -1,9 +1,9 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ -!function(e,t){void 0===e&&void 0!==window&&(e=window),"function"==typeof define&&define.amd?define(["jquery"],function(e){return t(e)}):"object"==typeof module&&module.exports?module.exports=t(require("jquery")):t(e.jQuery)}(this,function(e){!function(z){"use strict";var d=["sanitize","whiteList","sanitizeFn"],r=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],e={"*":["class","dir","id","lang","role","tabindex","style",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},l=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,a=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;function v(e,t){var i=e.nodeName.toLowerCase();if(-1!==z.inArray(i,t))return-1===z.inArray(i,r)||Boolean(e.nodeValue.match(l)||e.nodeValue.match(a));for(var s=z(t).filter(function(e,t){return t instanceof RegExp}),n=0,o=s.length;n]+>/g,"")),s&&(a=w(a)),a=a.toUpperCase(),o="contains"===i?0<=a.indexOf(t):a.startsWith(t)))break}return o}function L(e){return parseInt(e,10)||0}z.fn.triggerNative=function(e){var t,i=this[0];i.dispatchEvent?(u?t=new Event(e,{bubbles:!0}):(t=document.createEvent("Event")).initEvent(e,!0,!1),i.dispatchEvent(t)):i.fireEvent?((t=document.createEventObject()).eventType=e,i.fireEvent("on"+e,t)):this.trigger(e)};var f={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"},m=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,g=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]","g");function b(e){return f[e]}function w(e){return(e=e.toString())&&e.replace(m,b).replace(g,"")}var I,x,$,y,S=(I={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},x="(?:"+Object.keys(I).join("|")+")",$=RegExp(x),y=RegExp(x,"g"),function(e){return e=null==e?"":""+e,$.test(e)?e.replace(y,E):e});function E(e){return I[e]}var C={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"},N=27,D=13,H=32,W=9,B=38,M=40,R={success:!1,major:"3"};try{R.full=(z.fn.dropdown.Constructor.VERSION||"").split(" ")[0].split("."),R.major=R.full[0],R.success=!0}catch(e){}var U=0,j=".bs.select",V={DISABLED:"disabled",DIVIDER:"divider",SHOW:"open",DROPUP:"dropup",MENU:"dropdown-menu",MENURIGHT:"dropdown-menu-right",MENULEFT:"dropdown-menu-left",BUTTONCLASS:"btn-default",POPOVERHEADER:"popover-title",ICONBASE:"glyphicon",TICKICON:"glyphicon-ok"},F={MENU:"."+V.MENU},_={span:document.createElement("span"),i:document.createElement("i"),subtext:document.createElement("small"),a:document.createElement("a"),li:document.createElement("li"),whitespace:document.createTextNode("\xa0"),fragment:document.createDocumentFragment()};_.a.setAttribute("role","option"),_.subtext.className="text-muted",_.text=_.span.cloneNode(!1),_.text.className="text",_.checkMark=_.span.cloneNode(!1);var G=new RegExp(B+"|"+M),q=new RegExp("^"+W+"$|"+N),K=function(e,t,i){var s=_.li.cloneNode(!1);return e&&(1===e.nodeType||11===e.nodeType?s.appendChild(e):s.innerHTML=e),void 0!==t&&""!==t&&(s.className=t),null!=i&&s.classList.add("optgroup-"+i),s},Y=function(e,t,i){var s=_.a.cloneNode(!0);return e&&(11===e.nodeType?s.appendChild(e):s.insertAdjacentHTML("beforeend",e)),void 0!==t&&""!==t&&(s.className=t),"4"===R.major&&s.classList.add("dropdown-item"),i&&s.setAttribute("style",i),s},Z=function(e,t){var i,s,n=_.text.cloneNode(!1);if(e.content)n.innerHTML=e.content;else{if(n.textContent=e.text,e.icon){var o=_.whitespace.cloneNode(!1);(s=(!0===t?_.i:_.span).cloneNode(!1)).className=e.iconBase+" "+e.icon,_.fragment.appendChild(s),_.fragment.appendChild(o)}e.subtext&&((i=_.subtext.cloneNode(!1)).textContent=e.subtext,n.appendChild(i))}if(!0===t)for(;0'},maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,windowPadding:0,virtualScroll:600,display:!1,sanitize:!0,sanitizeFn:null,whiteList:e},Q.prototype={constructor:Q,init:function(){var i=this,e=this.$element.attr("id");U++,this.selectId="bs-select-"+U,this.$element[0].classList.add("bs-select-hidden"),this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$element[0].classList.contains("show-tick")&&(this.options.showTick=!0),this.$newElement=this.createDropdown(),this.$element.after(this.$newElement).prependTo(this.$newElement),this.$button=this.$newElement.children("button"),this.$menu=this.$newElement.children(F.MENU),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),this.$element[0].classList.remove("bs-select-hidden"),!0===this.options.dropdownAlignRight&&this.$menu[0].classList.add(V.MENURIGHT),void 0!==e&&this.$button.attr("data-id",e),this.checkDisabled(),this.clickListener(),this.options.liveSearch?(this.liveSearchListener(),this.focusedParent=this.$searchbox[0]):this.focusedParent=this.$menuInner[0],this.setStyle(),this.render(),this.setWidth(),this.options.container?this.selectPosition():this.$element.on("hide"+j,function(){if(i.isVirtual()){var e=i.$menuInner[0],t=e.firstChild.cloneNode(!1);e.replaceChild(t,e.firstChild),e.scrollTop=0}}),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile(),this.$newElement.on({"hide.bs.dropdown":function(e){i.$element.trigger("hide"+j,e)},"hidden.bs.dropdown":function(e){i.$element.trigger("hidden"+j,e)},"show.bs.dropdown":function(e){i.$element.trigger("show"+j,e)},"shown.bs.dropdown":function(e){i.$element.trigger("shown"+j,e)}}),i.$element[0].hasAttribute("required")&&this.$element.on("invalid"+j,function(){i.$button[0].classList.add("bs-invalid"),i.$element.on("shown"+j+".invalid",function(){i.$element.val(i.$element.val()).off("shown"+j+".invalid")}).on("rendered"+j,function(){this.validity.valid&&i.$button[0].classList.remove("bs-invalid"),i.$element.off("rendered"+j)}),i.$button.on("blur"+j,function(){i.$element.trigger("focus").trigger("blur"),i.$button.off("blur"+j)})}),setTimeout(function(){i.createLi(),i.$element.trigger("loaded"+j)})},createDropdown:function(){var e=this.multiple||this.options.showTick?" show-tick":"",t=this.multiple?' aria-multiselectable="true"':"",i="",s=this.autofocus?" autofocus":"";R.major<4&&this.$element.parent().hasClass("input-group")&&(i=" input-group-btn");var n,o="",r="",l="",a="";return this.options.header&&(o='
    '+this.options.header+"
    "),this.options.liveSearch&&(r=''),this.multiple&&this.options.actionsBox&&(l='
    "),this.multiple&&this.options.doneButton&&(a='
    "),n='",z(n)},setPositionData:function(){this.selectpicker.view.canHighlight=[];for(var e=this.selectpicker.view.size=0;e=this.options.virtualScroll||!0===this.options.virtualScroll},createView:function(A,e,t){var L,N,D=this,i=0,H=[];if(this.selectpicker.current=A?this.selectpicker.search:this.selectpicker.main,this.setPositionData(),e)if(t)i=this.$menuInner[0].scrollTop;else if(!D.multiple){var s=D.$element[0],n=(s.options[s.selectedIndex]||{}).liIndex;if("number"==typeof n&&!1!==D.options.size){var o=D.selectpicker.main.data[n],r=o&&o.position;r&&(i=r-(D.sizeInfo.menuInnerHeight+D.sizeInfo.liHeight)/2)}}function l(e,t){var i,s,n,o,r,l,a,c,d=D.selectpicker.current.elements.length,h=[],p=!0,u=D.isVirtual();D.selectpicker.view.scrollTop=e,i=Math.ceil(D.sizeInfo.menuInnerHeight/D.sizeInfo.liHeight*1.5),s=Math.round(d/i)||1;for(var f=0;fd-1?0:D.selectpicker.current.data[d-1].position-D.selectpicker.current.data[D.selectpicker.view.position1-1].position,b.firstChild.style.marginTop=v+"px",b.firstChild.style.marginBottom=g+"px"):(b.firstChild.style.marginTop=0,b.firstChild.style.marginBottom=0),b.firstChild.appendChild(w),!0===u&&D.sizeInfo.hasScrollBar){var C=b.firstChild.offsetWidth;if(t&&CD.sizeInfo.selectWidth)b.firstChild.style.minWidth=D.sizeInfo.menuInnerInnerWidth+"px";else if(C>D.sizeInfo.menuInnerInnerWidth){D.$menu[0].style.minWidth=0;var O=b.firstChild.offsetWidth;O>D.sizeInfo.menuInnerInnerWidth&&(D.sizeInfo.menuInnerInnerWidth=O,b.firstChild.style.minWidth=D.sizeInfo.menuInnerInnerWidth+"px"),D.$menu[0].style.minWidth=""}}}if(D.prevActiveIndex=D.activeIndex,D.options.liveSearch){if(A&&t){var z,T=0;D.selectpicker.view.canHighlight[T]||(T=1+D.selectpicker.view.canHighlight.slice(1).indexOf(!0)),z=D.selectpicker.view.visibleElements[T],D.defocusItem(D.selectpicker.view.currentActive),D.activeIndex=(D.selectpicker.current.data[T]||{}).index,D.focusItem(z)}}else D.$menuInner.trigger("focus")}l(i,!0),this.$menuInner.off("scroll.createView").on("scroll.createView",function(e,t){D.noScroll||l(this.scrollTop,t),D.noScroll=!1}),z(window).off("resize"+j+"."+this.selectId+".createView").on("resize"+j+"."+this.selectId+".createView",function(){D.$newElement.hasClass(V.SHOW)&&l(D.$menuInner[0].scrollTop)})},focusItem:function(e,t,i){if(e){t=t||this.selectpicker.main.data[this.activeIndex];var s=e.firstChild;s&&(s.setAttribute("aria-setsize",this.selectpicker.view.size),s.setAttribute("aria-posinset",t.posinset),!0!==i&&(this.focusedParent.setAttribute("aria-activedescendant",s.id),e.classList.add("active"),s.classList.add("active")))}},defocusItem:function(e){e&&(e.classList.remove("active"),e.firstChild&&e.firstChild.classList.remove("active"))},setPlaceholder:function(){var e=!1;if(this.options.title&&!this.multiple){this.selectpicker.view.titleOption||(this.selectpicker.view.titleOption=document.createElement("option")),e=!0;var t=this.$element[0],i=!1,s=!this.selectpicker.view.titleOption.parentNode;if(s)this.selectpicker.view.titleOption.className="bs-title-option",this.selectpicker.view.titleOption.value="",i=void 0===z(t.options[t.selectedIndex]).attr("selected")&&void 0===this.$element.data("selected");!s&&0===this.selectpicker.view.titleOption.index||t.insertBefore(this.selectpicker.view.titleOption,t.firstChild),i&&(t.selectedIndex=0)}return e},createLi:function(){var c=this,f=this.options.iconBase,m=':not([hidden]):not([data-hidden="true"])',v=[],g=[],d=0,b=0,e=this.setPlaceholder()?1:0;this.options.hideDisabled&&(m+=":not(:disabled)"),!c.options.showTick&&!c.multiple||_.checkMark.parentNode||(_.checkMark.className=f+" "+c.options.tickIcon+" check-mark",_.a.appendChild(_.checkMark));var t=this.$element[0].querySelectorAll("select > *"+m);function w(e){var t=g[g.length-1];t&&"divider"===t.type&&(t.optID||e.optID)||((e=e||{}).type="divider",v.push(K(!1,V.DIVIDER,e.optID?e.optID+"div":void 0)),g.push(e))}function I(e,t){if((t=t||{}).divider="true"===e.getAttribute("data-divider"),t.divider)w({optID:t.optID});else{var i=g.length,s=e.style.cssText,n=s?S(s):"",o=(e.className||"")+(t.optgroupClass||"");t.optID&&(o="opt "+o),t.text=e.textContent,t.content=e.getAttribute("data-content"),t.tokens=e.getAttribute("data-tokens"),t.subtext=e.getAttribute("data-subtext"),t.icon=e.getAttribute("data-icon"),t.iconBase=f;var r=Z(t),l=K(Y(r,o,n),"",t.optID);l.firstChild&&(l.firstChild.id=c.selectId+"-"+i),v.push(l),e.liIndex=i,t.display=t.content||t.text,t.type="option",t.index=i,t.option=e,t.disabled=t.disabled||e.disabled,g.push(t);var a=0;t.display&&(a+=t.display.length),t.subtext&&(a+=t.subtext.length),t.icon&&(a+=1),d li")},render:function(){this.setPlaceholder();var e,t=this,i=this.$element[0],s=O(i,this.options.hideDisabled),n=s.length,o=this.$button[0],r=o.querySelector(".filter-option-inner-inner"),l=document.createTextNode(this.options.multipleSeparator),a=_.fragment.cloneNode(!1),c=!1;if(o.classList.toggle("bs-placeholder",t.multiple?!n:!T(i,s)),this.tabIndex(),"static"===this.options.selectedTextFormat)a=Z({text:this.options.title},!0);else if(!1===(this.multiple&&-1!==this.options.selectedTextFormat.indexOf("count")&&1")).length&&n>e[1]||1===e.length&&2<=n))){for(var d=0;d option"+f+", optgroup"+f+" option"+f).length,v="function"==typeof this.options.countSelectedText?this.options.countSelectedText(n,m):this.options.countSelectedText;a=Z({text:v.replace("{0}",n.toString()).replace("{1}",m.toString())},!0)}if(null==this.options.title&&(this.options.title=this.$element.attr("title")),a.childNodes.length||(a=Z({text:void 0!==this.options.title?this.options.title:this.options.noneSelectedText},!0)),o.title=a.textContent.replace(/<[^>]*>?/g,"").trim(),this.options.sanitize&&c&&P([a],t.options.whiteList,t.options.sanitizeFn),r.innerHTML="",r.appendChild(a),R.major<4&&this.$newElement[0].classList.contains("bs3-has-addon")){var g=o.querySelector(".filter-expand"),b=r.cloneNode(!0);b.className="filter-expand",g?o.replaceChild(b,g):o.appendChild(b)}this.$element.trigger("rendered"+j)},setStyle:function(e,t){var i,s=this.$button[0],n=this.$newElement[0],o=this.options.style.trim();this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,"")),R.major<4&&(n.classList.add("bs3"),n.parentNode.classList.contains("input-group")&&(n.previousElementSibling||n.nextElementSibling)&&(n.previousElementSibling||n.nextElementSibling).classList.contains("input-group-addon")&&n.classList.add("bs3-has-addon")),i=e?e.trim():o,"add"==t?i&&s.classList.add.apply(s.classList,i.split(" ")):"remove"==t?i&&s.classList.remove.apply(s.classList,i.split(" ")):(o&&s.classList.remove.apply(s.classList,o.split(" ")),i&&s.classList.add.apply(s.classList,i.split(" ")))},liHeight:function(e){if(e||!1!==this.options.size&&!this.sizeInfo){this.sizeInfo||(this.sizeInfo={});var t=document.createElement("div"),i=document.createElement("div"),s=document.createElement("div"),n=document.createElement("ul"),o=document.createElement("li"),r=document.createElement("li"),l=document.createElement("li"),a=document.createElement("a"),c=document.createElement("span"),d=this.options.header&&0this.sizeInfo.menuExtras.vert&&l+this.sizeInfo.menuExtras.vert+50>this.sizeInfo.selectOffsetBot)),"auto"===this.options.size)n=3this.options.size){for(var g=0;gthis.sizeInfo.menuInnerHeight&&(this.sizeInfo.hasScrollBar=!0,this.sizeInfo.totalMenuWidth=this.sizeInfo.menuWidth+this.sizeInfo.scrollBarWidth),"auto"===this.options.dropdownAlignRight&&this.$menu.toggleClass(V.MENURIGHT,this.sizeInfo.selectOffsetLeft>this.sizeInfo.selectOffsetRight&&this.sizeInfo.selectOffsetRightthis.options.size&&i.off("resize"+j+"."+this.selectId+".setMenuSize scroll"+j+"."+this.selectId+".setMenuSize"),t.createView(!1,!0,e)}},setWidth:function(){var i=this;"auto"===this.options.width?requestAnimationFrame(function(){i.$menu.css("min-width","0"),i.$element.on("loaded"+j,function(){i.liHeight(),i.setMenuSize();var e=i.$newElement.clone().appendTo("body"),t=e.css("width","auto").children("button").outerWidth();e.remove(),i.sizeInfo.selectWidth=Math.max(i.sizeInfo.totalMenuWidth,t),i.$newElement.css("width",i.sizeInfo.selectWidth+"px")})}):"fit"===this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width","")),this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement[0].classList.remove("fit-width")},selectPosition:function(){this.$bsContainer=z('
    ');function e(e){var t={},i=r.options.display||!!z.fn.dropdown.Constructor.Default&&z.fn.dropdown.Constructor.Default.display;r.$bsContainer.addClass(e.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass(V.DROPUP,e.hasClass(V.DROPUP)),s=e.offset(),l.is("body")?n={top:0,left:0}:((n=l.offset()).top+=parseInt(l.css("borderTopWidth"))-l.scrollTop(),n.left+=parseInt(l.css("borderLeftWidth"))-l.scrollLeft()),o=e.hasClass(V.DROPUP)?0:e[0].offsetHeight,(R.major<4||"static"===i)&&(t.top=s.top-n.top+o,t.left=s.left-n.left),t.width=e[0].offsetWidth,r.$bsContainer.css(t)}var s,n,o,r=this,l=z(this.options.container);this.$button.on("click.bs.dropdown.data-api",function(){r.isDisabled()||(e(r.$newElement),r.$bsContainer.appendTo(r.options.container).toggleClass(V.SHOW,!r.$button.hasClass(V.SHOW)).append(r.$menu))}),z(window).off("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId).on("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId,function(){r.$newElement.hasClass(V.SHOW)&&e(r.$newElement)}),this.$element.on("hide"+j,function(){r.$menu.data("height",r.$menu.height()),r.$bsContainer.detach()})},setOptionStatus:function(e){var t=this;if(t.noScroll=!1,t.selectpicker.view.visibleElements&&t.selectpicker.view.visibleElements.length)for(var i=0;i
    ');$[2]&&(y=y.replace("{var}",$[2][1"+y+"
    ")),d=!1,C.$element.trigger("maxReached"+j)),g&&w&&(E.append(z("
    "+S+"
    ")),d=!1,C.$element.trigger("maxReachedGrp"+j)),setTimeout(function(){C.setSelected(r,!1)},10),E[0].classList.add("fadeOut"),setTimeout(function(){E.remove()},1050)}}}else c&&(c.selected=!1),h.selected=!0,C.setSelected(r,!0);!C.multiple||C.multiple&&1===C.options.maxOptions?C.$button.trigger("focus"):C.options.liveSearch&&C.$searchbox.trigger("focus"),d&&(!C.multiple&&a===s.selectedIndex||(A=[h.index,p.prop("selected"),l],C.$element.triggerNative("change")))}}),this.$menu.on("click","li."+V.DISABLED+" a, ."+V.POPOVERHEADER+", ."+V.POPOVERHEADER+" :not(.close)",function(e){e.currentTarget==this&&(e.preventDefault(),e.stopPropagation(),C.options.liveSearch&&!z(e.target).hasClass("close")?C.$searchbox.trigger("focus"):C.$button.trigger("focus"))}),this.$menuInner.on("click",".divider, .dropdown-header",function(e){e.preventDefault(),e.stopPropagation(),C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus")}),this.$menu.on("click","."+V.POPOVERHEADER+" .close",function(){C.$button.trigger("click")}),this.$searchbox.on("click",function(e){e.stopPropagation()}),this.$menu.on("click",".actions-btn",function(e){C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus"),e.preventDefault(),e.stopPropagation(),z(this).hasClass("bs-select-all")?C.selectAll():C.deselectAll()}),this.$element.on("change"+j,function(){C.render(),C.$element.trigger("changed"+j,A),A=null}).on("focus"+j,function(){C.options.mobile||C.$button.trigger("focus")})},liveSearchListener:function(){var u=this,f=document.createElement("li");this.$button.on("click.bs.dropdown.data-api",function(){u.$searchbox.val()&&u.$searchbox.val("")}),this.$searchbox.on("click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api",function(e){e.stopPropagation()}),this.$searchbox.on("input propertychange",function(){var e=u.$searchbox.val();if(u.selectpicker.search.elements=[],u.selectpicker.search.data=[],e){var t=[],i=e.toUpperCase(),s={},n=[],o=u._searchStyle(),r=u.options.liveSearchNormalize;r&&(i=w(i)),u._$lisSelected=u.$menuInner.find(".selected");for(var l=0;l=a.selectpicker.view.canHighlight.length&&(t=0),a.selectpicker.view.canHighlight[t+f]||(t=t+1+a.selectpicker.view.canHighlight.slice(t+f+1).indexOf(!0))),e.preventDefault();var m=f+t;e.which===B?0===f&&t===c.length-1?(a.$menuInner[0].scrollTop=a.$menuInner[0].scrollHeight,m=a.selectpicker.current.elements.length-1):d=(o=(n=a.selectpicker.current.data[m]).position-n.height)u+a.sizeInfo.menuInnerHeight),s=a.selectpicker.main.elements[v],a.activeIndex=b[x],a.focusItem(s),s&&s.firstChild.focus(),d&&(a.$menuInner[0].scrollTop=o),r.trigger("focus")}}i&&(e.which===H&&!a.selectpicker.keydown.keyHistory||e.which===D||e.which===W&&a.options.selectOnTab)&&(e.which!==H&&e.preventDefault(),a.options.liveSearch&&e.which===H||(a.$menuInner.find(".active a").trigger("click",!0),r.trigger("focus"),a.options.liveSearch||(e.preventDefault(),z(document).data("spaceSelect",!0))))}},mobile:function(){this.$element[0].classList.add("mobile-device")},refresh:function(){var e=z.extend({},this.options,this.$element.data());this.options=e,this.checkDisabled(),this.setStyle(),this.render(),this.createLi(),this.setWidth(),this.setSize(!0),this.$element.trigger("refreshed"+j)},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()},destroy:function(){this.$newElement.before(this.$element).remove(),this.$bsContainer?this.$bsContainer.remove():this.$menu.remove(),this.$element.off(j).removeData("selectpicker").removeClass("bs-select-hidden selectpicker"),z(window).off(j+"."+this.selectId)}};var ee=z.fn.selectpicker;z.fn.selectpicker=X,z.fn.selectpicker.Constructor=Q,z.fn.selectpicker.noConflict=function(){return z.fn.selectpicker=ee,this},z(document).off("keydown.bs.dropdown.data-api",'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select .dropdown-menu').on("keydown"+j,'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',Q.prototype.keydown).on("focusin.modal",'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',function(e){e.stopPropagation()}),z(window).on("load"+j+".data-api",function(){z(".selectpicker").each(function(){var e=z(this);X.call(e,e.data())})})}(e)}); +!function(e,t){void 0===e&&void 0!==window&&(e=window),"function"==typeof define&&define.amd?define(["jquery"],function(e){return t(e)}):"object"==typeof module&&module.exports?module.exports=t(require("jquery")):t(e.jQuery)}(this,function(e){!function(z){"use strict";var d=["sanitize","whiteList","sanitizeFn"],r=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],e={"*":["class","dir","id","lang","role","tabindex","style",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},l=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,a=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;function v(e,t){var i=e.nodeName.toLowerCase();if(-1!==z.inArray(i,t))return-1===z.inArray(i,r)||Boolean(e.nodeValue.match(l)||e.nodeValue.match(a));for(var s=z(t).filter(function(e,t){return t instanceof RegExp}),n=0,o=s.length;n]+>/g,"")),s&&(a=w(a)),a=a.toUpperCase(),o="contains"===i?0<=a.indexOf(t):a.startsWith(t)))break}return o}function L(e){return parseInt(e,10)||0}z.fn.triggerNative=function(e){var t,i=this[0];i.dispatchEvent?(u?t=new Event(e,{bubbles:!0}):(t=document.createEvent("Event")).initEvent(e,!0,!1),i.dispatchEvent(t)):i.fireEvent?((t=document.createEventObject()).eventType=e,i.fireEvent("on"+e,t)):this.trigger(e)};var f={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"},m=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,g=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]","g");function b(e){return f[e]}function w(e){return(e=e.toString())&&e.replace(m,b).replace(g,"")}var I,x,y,$,S,E=(I={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},x=function(e){return I[e]},y="(?:"+Object.keys(I).join("|")+")",$=RegExp(y),S=RegExp(y,"g"),function(e){return e=null==e?"":""+e,$.test(e)?e.replace(S,x):e}),C={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"},N=27,D=13,H=32,P=9,W=38,M=40,R={success:!1,major:"3"};try{R.full=(z.fn.dropdown.Constructor.VERSION||"").split(" ")[0].split("."),R.major=R.full[0],R.success=!0}catch(e){}var U=0,j=".bs.select",V={DISABLED:"disabled",DIVIDER:"divider",SHOW:"open",DROPUP:"dropup",MENU:"dropdown-menu",MENURIGHT:"dropdown-menu-right",MENULEFT:"dropdown-menu-left",BUTTONCLASS:"btn-default",POPOVERHEADER:"popover-title",ICONBASE:"glyphicon",TICKICON:"glyphicon-ok"},F={MENU:"."+V.MENU},_={span:document.createElement("span"),i:document.createElement("i"),subtext:document.createElement("small"),a:document.createElement("a"),li:document.createElement("li"),whitespace:document.createTextNode("\xa0"),fragment:document.createDocumentFragment()};_.a.setAttribute("role","option"),"4"===R.major&&(_.a.className="dropdown-item"),_.subtext.className="text-muted",_.text=_.span.cloneNode(!1),_.text.className="text",_.checkMark=_.span.cloneNode(!1);var G=new RegExp(W+"|"+M),q=new RegExp("^"+P+"$|"+N),K={li:function(e,t,i){var s=_.li.cloneNode(!1);return e&&(1===e.nodeType||11===e.nodeType?s.appendChild(e):s.innerHTML=e),void 0!==t&&""!==t&&(s.className=t),null!=i&&s.classList.add("optgroup-"+i),s},a:function(e,t,i){var s=_.a.cloneNode(!0);return e&&(11===e.nodeType?s.appendChild(e):s.insertAdjacentHTML("beforeend",e)),void 0!==t&&""!==t&&s.classList.add.apply(s.classList,t.split(" ")),i&&s.setAttribute("style",i),s},text:function(e,t){var i,s,n=_.text.cloneNode(!1);if(e.content)n.innerHTML=e.content;else{if(n.textContent=e.text,e.icon){var o=_.whitespace.cloneNode(!1);(s=(!0===t?_.i:_.span).cloneNode(!1)).className=this.options.iconBase+" "+e.icon,_.fragment.appendChild(s),_.fragment.appendChild(o)}e.subtext&&((i=_.subtext.cloneNode(!1)).textContent=e.subtext,n.appendChild(i))}if(!0===t)for(;0'},maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,windowPadding:0,virtualScroll:600,display:!1,sanitize:!0,sanitizeFn:null,whiteList:e},Y.prototype={constructor:Y,init:function(){var i=this,e=this.$element.attr("id");U++,this.selectId="bs-select-"+U,this.$element[0].classList.add("bs-select-hidden"),this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$element[0].classList.contains("show-tick")&&(this.options.showTick=!0),this.$newElement=this.createDropdown(),this.buildData(),this.$element.after(this.$newElement).prependTo(this.$newElement),this.$button=this.$newElement.children("button"),this.$menu=this.$newElement.children(F.MENU),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),this.$element[0].classList.remove("bs-select-hidden"),!0===this.options.dropdownAlignRight&&this.$menu[0].classList.add(V.MENURIGHT),void 0!==e&&this.$button.attr("data-id",e),this.checkDisabled(),this.clickListener(),this.options.liveSearch?(this.liveSearchListener(),this.focusedParent=this.$searchbox[0]):this.focusedParent=this.$menuInner[0],this.setStyle(),this.render(),this.setWidth(),this.options.container?this.selectPosition():this.$element.on("hide"+j,function(){if(i.isVirtual()){var e=i.$menuInner[0],t=e.firstChild.cloneNode(!1);e.replaceChild(t,e.firstChild),e.scrollTop=0}}),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile(),this.$newElement.on({"hide.bs.dropdown":function(e){i.$element.trigger("hide"+j,e)},"hidden.bs.dropdown":function(e){i.$element.trigger("hidden"+j,e)},"show.bs.dropdown":function(e){i.$element.trigger("show"+j,e)},"shown.bs.dropdown":function(e){i.$element.trigger("shown"+j,e)}}),i.$element[0].hasAttribute("required")&&this.$element.on("invalid"+j,function(){i.$button[0].classList.add("bs-invalid"),i.$element.on("shown"+j+".invalid",function(){i.$element.val(i.$element.val()).off("shown"+j+".invalid")}).on("rendered"+j,function(){this.validity.valid&&i.$button[0].classList.remove("bs-invalid"),i.$element.off("rendered"+j)}),i.$button.on("blur"+j,function(){i.$element.trigger("focus").trigger("blur"),i.$button.off("blur"+j)})}),setTimeout(function(){i.buildList(),i.$element.trigger("loaded"+j)})},createDropdown:function(){var e=this.multiple||this.options.showTick?" show-tick":"",t=this.multiple?' aria-multiselectable="true"':"",i="",s=this.autofocus?" autofocus":"";R.major<4&&this.$element.parent().hasClass("input-group")&&(i=" input-group-btn");var n,o="",r="",l="",a="";return this.options.header&&(o='
    '+this.options.header+"
    "),this.options.liveSearch&&(r=''),this.multiple&&this.options.actionsBox&&(l='
    "),this.multiple&&this.options.doneButton&&(a='
    "),n='",z(n)},setPositionData:function(){this.selectpicker.view.canHighlight=[];for(var e=this.selectpicker.view.size=0;e=this.options.virtualScroll||!0===this.options.virtualScroll},createView:function(N,e,t){var D,H,P=this,i=0,W=[];if(this.selectpicker.isSearching=N,this.selectpicker.current=N?this.selectpicker.search:this.selectpicker.main,this.setPositionData(),e)if(t)i=this.$menuInner[0].scrollTop;else if(!P.multiple){var s=P.$element[0],n=(s.options[s.selectedIndex]||{}).liIndex;if("number"==typeof n&&!1!==P.options.size){var o=P.selectpicker.main.data[n],r=o&&o.position;r&&(i=r-(P.sizeInfo.menuInnerHeight+P.sizeInfo.liHeight)/2)}}function l(e,t){var i,s,n,o,r,l,a,c,d,h,p=P.selectpicker.current.elements.length,u=[],f=!0,m=P.isVirtual();P.selectpicker.view.scrollTop=e,i=Math.ceil(P.sizeInfo.menuInnerHeight/P.sizeInfo.liHeight*1.5),s=Math.round(p/i)||1;for(var v=0;vp-1?0:P.selectpicker.current.data[p-1].position-P.selectpicker.current.data[P.selectpicker.view.position1-1].position,I.firstChild.style.marginTop=b+"px",w+"px"):I.firstChild.style.marginTop=0,I.firstChild.appendChild(x),!0===m&&P.sizeInfo.hasScrollBar){var z=I.firstChild.offsetWidth;if(t&&zP.sizeInfo.selectWidth)I.firstChild.style.minWidth=P.sizeInfo.menuInnerInnerWidth+"px";else if(z>P.sizeInfo.menuInnerInnerWidth){P.$menu[0].style.minWidth=0;var T=I.firstChild.offsetWidth;T>P.sizeInfo.menuInnerInnerWidth&&(P.sizeInfo.menuInnerInnerWidth=T,I.firstChild.style.minWidth=P.sizeInfo.menuInnerInnerWidth+"px"),P.$menu[0].style.minWidth=""}}}if(P.prevActiveIndex=P.activeIndex,P.options.liveSearch){if(N&&t){var A,L=0;P.selectpicker.view.canHighlight[L]||(L=1+P.selectpicker.view.canHighlight.slice(1).indexOf(!0)),A=P.selectpicker.view.visibleElements[L],P.defocusItem(P.selectpicker.view.currentActive),P.activeIndex=(P.selectpicker.current.data[L]||{}).index,P.focusItem(A)}}else P.$menuInner.trigger("focus")}l(i,!0),this.$menuInner.off("scroll.createView").on("scroll.createView",function(e,t){P.noScroll||l(this.scrollTop,t),P.noScroll=!1}),z(window).off("resize"+j+"."+this.selectId+".createView").on("resize"+j+"."+this.selectId+".createView",function(){P.$newElement.hasClass(V.SHOW)&&l(P.$menuInner[0].scrollTop)})},focusItem:function(e,t,i){if(e){t=t||this.selectpicker.main.data[this.activeIndex];var s=e.firstChild;s&&(s.setAttribute("aria-setsize",this.selectpicker.view.size),s.setAttribute("aria-posinset",t.posinset),!0!==i&&(this.focusedParent.setAttribute("aria-activedescendant",s.id),e.classList.add("active"),s.classList.add("active")))}},defocusItem:function(e){e&&(e.classList.remove("active"),e.firstChild&&e.firstChild.classList.remove("active"))},setPlaceholder:function(){var e=!1;if(this.options.title&&!this.multiple){this.selectpicker.view.titleOption||(this.selectpicker.view.titleOption=document.createElement("option")),e=!0;var t=this.$element[0],i=!1,s=!this.selectpicker.view.titleOption.parentNode;if(s)this.selectpicker.view.titleOption.className="bs-title-option",this.selectpicker.view.titleOption.value="",i=void 0===z(t.options[t.selectedIndex]).attr("selected")&&void 0===this.$element.data("selected");(s||0!==this.selectpicker.view.titleOption.index)&&t.insertBefore(this.selectpicker.view.titleOption,t.firstChild),i&&(t.selectedIndex=0)}return e},buildData:function(){var p=':not([hidden]):not([data-hidden="true"])',u=[],f=0,e=this.setPlaceholder()?1:0;this.options.hideDisabled&&(p+=":not(:disabled)");var t=this.$element[0].querySelectorAll("select > *"+p);function m(e){var t=u[u.length-1];t&&"divider"===t.type&&(t.optID||e.optID)||((e=e||{}).type="divider",u.push(e))}function v(e,t){if((t=t||{}).divider="true"===e.getAttribute("data-divider"),t.divider)m({optID:t.optID});else{var i=u.length,s=e.style.cssText,n=s?E(s):"",o=(e.className||"")+(t.optgroupClass||"");t.optID&&(o="opt "+o),t.optionClass=o.trim(),t.inlineStyle=n,t.text=e.textContent,t.content=e.getAttribute("data-content"),t.tokens=e.getAttribute("data-tokens"),t.subtext=e.getAttribute("data-subtext"),t.icon=e.getAttribute("data-icon"),e.liIndex=i,t.display=t.content||t.text,t.type="option",t.index=i,t.option=e,t.selected=!!e.selected,t.disabled=t.disabled||!!e.disabled,u.push(t)}}function i(e,t){var i=t[e],s=t[e-1],n=t[e+1],o=i.querySelectorAll("option"+p);if(o.length){var r,l,a={display:E(i.label),subtext:i.getAttribute("data-subtext"),icon:i.getAttribute("data-icon"),type:"optgroup-label",optgroupClass:" "+(i.className||"")};f++,s&&m({optID:f}),a.optID=f,u.push(a);for(var c=0,d=o.length;c li")},render:function(){var e,t,i=this,s=this.setPlaceholder()?1:0,n=this.$element[0],o=O(n,this.options.hideDisabled),r=o.length,l=this.$button[0],a=l.querySelector(".filter-option-inner-inner"),c=document.createTextNode(this.options.multipleSeparator),d=_.fragment.cloneNode(!1),h=!1;if(l.classList.toggle("bs-placeholder",i.multiple?!r:!T(n,o)),this.tabIndex(),"static"===this.options.selectedTextFormat)d=K.text.call(this,{text:this.options.title},!0);else if((e=this.multiple&&-1!==this.options.selectedTextFormat.indexOf("count")&&1")).length&&r>t[1]||1===t.length&&2<=r),!1===e){for(var p=s;p option"+v+", optgroup"+v+" option"+v).length,b="function"==typeof this.options.countSelectedText?this.options.countSelectedText(r,g):this.options.countSelectedText;d=K.text.call(this,{text:b.replace("{0}",r.toString()).replace("{1}",g.toString())},!0)}if(null==this.options.title&&(this.options.title=this.$element.attr("title")),d.childNodes.length||(d=K.text.call(this,{text:void 0!==this.options.title?this.options.title:this.options.noneSelectedText},!0)),l.title=d.textContent.replace(/<[^>]*>?/g,"").trim(),this.options.sanitize&&h&&B([d],i.options.whiteList,i.options.sanitizeFn),a.innerHTML="",a.appendChild(d),R.major<4&&this.$newElement[0].classList.contains("bs3-has-addon")){var w=l.querySelector(".filter-expand"),I=a.cloneNode(!0);I.className="filter-expand",w?l.replaceChild(I,w):l.appendChild(I)}this.$element.trigger("rendered"+j)},setStyle:function(e,t){var i,s=this.$button[0],n=this.$newElement[0],o=this.options.style.trim();this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,"")),R.major<4&&(n.classList.add("bs3"),n.parentNode.classList.contains("input-group")&&(n.previousElementSibling||n.nextElementSibling)&&(n.previousElementSibling||n.nextElementSibling).classList.contains("input-group-addon")&&n.classList.add("bs3-has-addon")),i=e?e.trim():o,"add"==t?i&&s.classList.add.apply(s.classList,i.split(" ")):"remove"==t?i&&s.classList.remove.apply(s.classList,i.split(" ")):(o&&s.classList.remove.apply(s.classList,o.split(" ")),i&&s.classList.add.apply(s.classList,i.split(" ")))},liHeight:function(e){if(e||!1!==this.options.size&&!Object.keys(this.sizeInfo).length){var t=document.createElement("div"),i=document.createElement("div"),s=document.createElement("div"),n=document.createElement("ul"),o=document.createElement("li"),r=document.createElement("li"),l=document.createElement("li"),a=document.createElement("a"),c=document.createElement("span"),d=this.options.header&&0this.sizeInfo.menuExtras.vert&&l+this.sizeInfo.menuExtras.vert+50>this.sizeInfo.selectOffsetBot,!0===this.selectpicker.isSearching&&(a=this.selectpicker.dropup),this.$newElement.toggleClass(V.DROPUP,a),this.selectpicker.dropup=a),"auto"===this.options.size)n=3this.options.size){for(var b=0;bthis.sizeInfo.menuInnerHeight&&(this.sizeInfo.hasScrollBar=!0,this.sizeInfo.totalMenuWidth=this.sizeInfo.menuWidth+this.sizeInfo.scrollBarWidth),"auto"===this.options.dropdownAlignRight&&this.$menu.toggleClass(V.MENURIGHT,this.sizeInfo.selectOffsetLeft>this.sizeInfo.selectOffsetRight&&this.sizeInfo.selectOffsetRightthis.options.size&&i.off("resize"+j+"."+this.selectId+".setMenuSize scroll"+j+"."+this.selectId+".setMenuSize")}this.createView(!1,!0,e)},setWidth:function(){var i=this;"auto"===this.options.width?requestAnimationFrame(function(){i.$menu.css("min-width","0"),i.$element.on("loaded"+j,function(){i.liHeight(),i.setMenuSize();var e=i.$newElement.clone().appendTo("body"),t=e.css("width","auto").children("button").outerWidth();e.remove(),i.sizeInfo.selectWidth=Math.max(i.sizeInfo.totalMenuWidth,t),i.$newElement.css("width",i.sizeInfo.selectWidth+"px")})}):"fit"===this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width","")),this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement[0].classList.remove("fit-width")},selectPosition:function(){this.$bsContainer=z('
    ');var s,n,o,r=this,l=z(this.options.container),e=function(e){var t={},i=r.options.display||!!z.fn.dropdown.Constructor.Default&&z.fn.dropdown.Constructor.Default.display;r.$bsContainer.addClass(e.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass(V.DROPUP,e.hasClass(V.DROPUP)),s=e.offset(),l.is("body")?n={top:0,left:0}:((n=l.offset()).top+=parseInt(l.css("borderTopWidth"))-l.scrollTop(),n.left+=parseInt(l.css("borderLeftWidth"))-l.scrollLeft()),o=e.hasClass(V.DROPUP)?0:e[0].offsetHeight,(R.major<4||"static"===i)&&(t.top=s.top-n.top+o,t.left=s.left-n.left),t.width=e[0].offsetWidth,r.$bsContainer.css(t)};this.$button.on("click.bs.dropdown.data-api",function(){r.isDisabled()||(e(r.$newElement),r.$bsContainer.appendTo(r.options.container).toggleClass(V.SHOW,!r.$button.hasClass(V.SHOW)).append(r.$menu))}),z(window).off("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId).on("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId,function(){r.$newElement.hasClass(V.SHOW)&&e(r.$newElement)}),this.$element.on("hide"+j,function(){r.$menu.data("height",r.$menu.height()),r.$bsContainer.detach()})},setOptionStatus:function(e){var t=this;if(t.noScroll=!1,t.selectpicker.view.visibleElements&&t.selectpicker.view.visibleElements.length)for(var i=0;i
    ');y[2]&&($=$.replace("{var}",y[2][1"+$+"")),d=!1,C.$element.trigger("maxReached"+j)),g&&w&&(E.append(z("
    "+S+"
    ")),d=!1,C.$element.trigger("maxReachedGrp"+j)),setTimeout(function(){C.setSelected(r,!1)},10),E[0].classList.add("fadeOut"),setTimeout(function(){E.remove()},1050)}}}else c&&(c.selected=!1),h.selected=!0,C.setSelected(r,!0);!C.multiple||C.multiple&&1===C.options.maxOptions?C.$button.trigger("focus"):C.options.liveSearch&&C.$searchbox.trigger("focus"),d&&(C.multiple||a!==s.selectedIndex)&&(A=[h.index,p.prop("selected"),l],C.$element.triggerNative("change"))}}),this.$menu.on("click","li."+V.DISABLED+" a, ."+V.POPOVERHEADER+", ."+V.POPOVERHEADER+" :not(.close)",function(e){e.currentTarget==this&&(e.preventDefault(),e.stopPropagation(),C.options.liveSearch&&!z(e.target).hasClass("close")?C.$searchbox.trigger("focus"):C.$button.trigger("focus"))}),this.$menuInner.on("click",".divider, .dropdown-header",function(e){e.preventDefault(),e.stopPropagation(),C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus")}),this.$menu.on("click","."+V.POPOVERHEADER+" .close",function(){C.$button.trigger("click")}),this.$searchbox.on("click",function(e){e.stopPropagation()}),this.$menu.on("click",".actions-btn",function(e){C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus"),e.preventDefault(),e.stopPropagation(),z(this).hasClass("bs-select-all")?C.selectAll():C.deselectAll()}),this.$element.on("change"+j,function(){C.render(),C.$element.trigger("changed"+j,A),A=null}).on("focus"+j,function(){C.options.mobile||C.$button.trigger("focus")})},liveSearchListener:function(){var u=this,f=document.createElement("li");this.$button.on("click.bs.dropdown.data-api",function(){u.$searchbox.val()&&u.$searchbox.val("")}),this.$searchbox.on("click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api",function(e){e.stopPropagation()}),this.$searchbox.on("input propertychange",function(){var e=u.$searchbox.val();if(u.selectpicker.search.elements=[],u.selectpicker.search.data=[],e){var t=[],i=e.toUpperCase(),s={},n=[],o=u._searchStyle(),r=u.options.liveSearchNormalize;r&&(i=w(i));for(var l=0;l=a.selectpicker.view.canHighlight.length&&(t=0),a.selectpicker.view.canHighlight[t+f]||(t=t+1+a.selectpicker.view.canHighlight.slice(t+f+1).indexOf(!0))),e.preventDefault();var m=f+t;e.which===W?0===f&&t===c.length-1?(a.$menuInner[0].scrollTop=a.$menuInner[0].scrollHeight,m=a.selectpicker.current.elements.length-1):d=(o=(n=a.selectpicker.current.data[m]).position-n.height)u+a.sizeInfo.menuInnerHeight),s=a.selectpicker.main.elements[v],a.activeIndex=b[x],a.focusItem(s),s&&s.firstChild.focus(),d&&(a.$menuInner[0].scrollTop=o),r.trigger("focus")}}i&&(e.which===H&&!a.selectpicker.keydown.keyHistory||e.which===D||e.which===P&&a.options.selectOnTab)&&(e.which!==H&&e.preventDefault(),a.options.liveSearch&&e.which===H||(a.$menuInner.find(".active a").trigger("click",!0),r.trigger("focus"),a.options.liveSearch||(e.preventDefault(),z(document).data("spaceSelect",!0))))}},mobile:function(){this.$element[0].classList.add("mobile-device")},refresh:function(){var e=z.extend({},this.options,this.$element.data());this.options=e,this.checkDisabled(),this.setStyle(),this.render(),this.buildData(),this.buildList(),this.setWidth(),this.setSize(!0),this.$element.trigger("refreshed"+j)},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()},destroy:function(){this.$newElement.before(this.$element).remove(),this.$bsContainer?this.$bsContainer.remove():this.$menu.remove(),this.$element.off(j).removeData("selectpicker").removeClass("bs-select-hidden selectpicker"),z(window).off(j+"."+this.selectId)}};var J=z.fn.selectpicker;z.fn.selectpicker=Z,z.fn.selectpicker.Constructor=Y,z.fn.selectpicker.noConflict=function(){return z.fn.selectpicker=J,this};var Q=z.fn.dropdown.Constructor._dataApiKeydownHandler||z.fn.dropdown.Constructor.prototype.keydown;z(document).off("keydown.bs.dropdown.data-api").on("keydown.bs.dropdown.data-api",':not(.bootstrap-select) > [data-toggle="dropdown"]',Q).on("keydown.bs.dropdown.data-api",":not(.bootstrap-select) > .dropdown-menu",Q).on("keydown"+j,'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',Y.prototype.keydown).on("focusin.modal",'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',function(e){e.stopPropagation()}),z(window).on("load"+j+".data-api",function(){z(".selectpicker").each(function(){var e=z(this);Z.call(e,e.data())})})}(e)}); //# sourceMappingURL=bootstrap-select.min.js.map \ No newline at end of file diff --git a/dist/js/bootstrap-select.min.js.map b/dist/js/bootstrap-select.min.js.map index e81e756dc..ed99753ec 100644 --- a/dist/js/bootstrap-select.min.js.map +++ b/dist/js/bootstrap-select.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../js/bootstrap-select.js"],"names":["$","DISALLOWED_ATTRIBUTES","uriAttrs","DefaultWhitelist","*","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","i","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","toLowerCase","inArray","Boolean","nodeValue","match","regExp","filter","index","value","RegExp","l","length","sanitizeHtml","unsafeElements","whiteList","sanitizeFn","whitelistKeys","Object","keys","len","elements","querySelectorAll","j","len2","el","elName","indexOf","attributeList","slice","call","attributes","whitelistedAttributes","concat","k","len3","removeAttribute","parentNode","removeChild","document","createElement","view","classListProp","protoProp","elemCtrProto","Element","objCtr","classListGetter","$elem","this","add","classes","Array","prototype","arguments","join","addClass","remove","removeClass","toggle","force","toggleClass","contains","hasClass","defineProperty","classListPropDesc","get","enumerable","configurable","ex","undefined","number","__defineGetter__","window","toString","testElement","classList","_add","DOMTokenList","_remove","forEach","bind","_toggle","token","startsWith","search","TypeError","string","String","stringLength","searchString","searchLength","position","pos","Number","start","Math","min","max","charCodeAt","getSelectedOptions","select","ignoreDisabled","opt","selectedOptions","options","disabled","tagName","push","getSelectValues","text","multiple","object","$defineProperty","result","error","writable","o","r","hasOwnProperty","HTMLSelectElement","valHooks","useDefault","_set","set","elem","data","apply","changedArguments","EventIsSupported","Event","e","stringSearch","method","normalize","stringTypes","searchSuccess","stringType","replace","normalizeToBase","toUpperCase","toInteger","parseInt","fn","triggerNative","eventName","event","dispatchEvent","bubbles","createEvent","initEvent","fireEvent","createEventObject","eventType","trigger","deburredLetters","À","Á","Â","Ã","Ä","Å","à","á","â","ã","ä","å","Ç","ç","Ð","ð","È","É","Ê","Ë","è","é","ê","ë","Ì","Í","Î","Ï","ì","í","î","ï","Ñ","ñ","Ò","Ó","Ô","Õ","Ö","Ø","ò","ó","ô","õ","ö","ø","Ù","Ú","Û","Ü","ù","ú","û","ü","Ý","ý","ÿ","Æ","æ","Þ","þ","ß","Ā","Ă","Ą","ā","ă","ą","Ć","Ĉ","Ċ","Č","ć","ĉ","ċ","č","Ď","Đ","ď","đ","Ē","Ĕ","Ė","Ę","Ě","ē","ĕ","ė","ę","ě","Ĝ","Ğ","Ġ","Ģ","ĝ","ğ","ġ","ģ","Ĥ","Ħ","ĥ","ħ","Ĩ","Ī","Ĭ","Į","İ","ĩ","ī","ĭ","į","ı","Ĵ","ĵ","Ķ","ķ","ĸ","Ĺ","Ļ","Ľ","Ŀ","Ł","ĺ","ļ","ľ","ŀ","ł","Ń","Ņ","Ň","Ŋ","ń","ņ","ň","ŋ","Ō","Ŏ","Ő","ō","ŏ","ő","Ŕ","Ŗ","Ř","ŕ","ŗ","ř","Ś","Ŝ","Ş","Š","ś","ŝ","ş","š","Ţ","Ť","Ŧ","ţ","ť","ŧ","Ũ","Ū","Ŭ","Ů","Ű","Ų","ũ","ū","ŭ","ů","ű","ų","Ŵ","ŵ","Ŷ","ŷ","Ÿ","Ź","Ż","Ž","ź","ż","ž","IJ","ij","Œ","œ","ʼn","ſ","reLatin","reComboMark","deburrLetter","key","map","source","testRegexp","replaceRegexp","htmlEscape","&","<",">","\"","'","`","test","escaper","keyCodeMap","32","48","49","50","51","52","53","54","55","56","57","59","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","96","97","98","99","100","101","102","103","104","105","keyCodes","version","success","major","full","dropdown","Constructor","VERSION","split","err","selectId","EVENT_KEY","classNames","DISABLED","DIVIDER","SHOW","DROPUP","MENU","MENURIGHT","MENULEFT","BUTTONCLASS","POPOVERHEADER","ICONBASE","TICKICON","Selector","elementTemplates","subtext","whitespace","createTextNode","fragment","createDocumentFragment","setAttribute","className","cloneNode","checkMark","REGEXP_ARROW","REGEXP_TAB_OR_ESCAPE","generateOption","content","optgroup","nodeType","appendChild","innerHTML","inline","insertAdjacentHTML","useFragment","subtextElement","iconElement","textElement","textContent","icon","iconBase","childNodes","label","Selectpicker","element","that","$element","$newElement","$button","$menu","selectpicker","main","current","keydown","keyHistory","resetKeyHistory","setTimeout","title","winPad","windowPadding","val","render","refresh","setStyle","selectAll","deselectAll","destroy","show","hide","init","Plugin","option","args","_option","shift","BootstrapVersion","console","warn","toUpdate","DEFAULTS","style","name","tickIcon","chain","each","$this","is","dataAttributes","dataAttr","config","extend","defaults","template","Function","noneSelectedText","noneResultsText","countSelectedText","numSelected","numTotal","maxOptionsText","numAll","numGroup","selectAllText","deselectAllText","doneButton","doneButtonText","multipleSeparator","styleBase","size","selectedTextFormat","width","container","hideDisabled","showSubtext","showIcon","showContent","dropupAuto","header","liveSearch","liveSearchPlaceholder","liveSearchNormalize","liveSearchStyle","actionsBox","showTick","caret","maxOptions","mobile","selectOnTab","dropdownAlignRight","virtualScroll","display","sanitize","constructor","id","prop","autofocus","createDropdown","after","prependTo","children","$menuInner","$searchbox","find","checkDisabled","clickListener","liveSearchListener","focusedParent","setWidth","selectPosition","on","isVirtual","menuInner","emptyMenu","firstChild","replaceChild","scrollTop","hide.bs.dropdown","hidden.bs.dropdown","show.bs.dropdown","shown.bs.dropdown","hasAttribute","off","validity","valid","createLi","multiselectable","inputGroup","parent","drop","searchbox","actionsbox","donebutton","setPositionData","canHighlight","type","height","sizeInfo","dividerHeight","dropdownHeaderHeight","liHeight","posinset","createView","isSearching","setSize","selected","prevActive","active","selectedIndex","liIndex","selectedData","menuInnerHeight","scroll","chunkSize","chunkCount","firstChunk","lastChunk","currentChunk","prevPositions","positionIsDifferent","previousElements","chunks","menuIsDifferent","ceil","round","endOfChunk","position0","position1","activeIndex","prevActiveIndex","defocusItem","visibleElements","setOptionStatus","array1","array2","every","isEqual","marginTop","marginBottom","menuFragment","toSanitize","visibleElementsLen","elText","elementData","lastChild","sanitized","hasScrollBar","menuInnerInnerWidth","offsetWidth","totalMenuWidth","selectWidth","minWidth","actualMenuWidth","newActive","currentActive","focusItem","updateValue","noScroll","liData","noStyle","setPlaceholder","updateIndex","titleOption","isSelected","titleNotAppended","insertBefore","optionSelector","mainElements","mainData","widestOptionLength","optID","startIndex","selectOptions","addDivider","previousData","addOption","divider","getAttribute","cssText","inlineStyle","optionClass","optgroupClass","tokens","liElement","combinedLength","widestOption","addOptgroup","previous","next","headerIndex","lastIndex","labelElement","item","findLis","countMax","selectedCount","button","buttonInner","querySelector","titleFragment","hasContent","tabIndex","titleOptions","thisData","trim","totalCount","tr8nText","filterExpand","clone","newStyle","status","buttonClass","newElement","previousElementSibling","nextElementSibling","menu","menuInnerInner","dropdownHeader","actions","firstOption","input","body","scrollBarWidth","offsetHeight","headerHeight","searchHeight","actionsHeight","doneButtonHeight","outerHeight","menuStyle","getComputedStyle","menuWidth","menuPadding","vert","paddingTop","css","paddingBottom","borderTopWidth","borderBottomWidth","horiz","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","menuExtras","marginLeft","marginRight","overflowY","selectHeight","getSelectPosition","containerPos","$window","offset","$container","top","left","selectOffsetTop","selectOffsetBot","selectOffsetLeft","scrollLeft","selectOffsetRight","setMenuSize","isAuto","menuHeight","minHeight","_minHeight","maxHeight","menuInnerMinHeight","estimate","divHeight","divLength","max-height","overflow","min-height","overflow-y","_popper","update","requestAnimationFrame","$selectClone","appendTo","btnWidth","outerWidth","$bsContainer","getPlacement","containerPosition","Default","actualHeight","isDisabled","append","detach","selectedOnly","setDisabled","setSelected","activeIndexIsSet","keepActive","removeAttr","$document","setFocus","checkPopperExists","state","isCreated","keyCode","preventDefault","_menu","hoverLi","parentElement","hoverData","retainActive","clickedData","clickedIndex","prevValue","prevIndex","prevOption","triggerChange","stopPropagation","$option","$optgroup","$optgroupOptions","maxOptionsGrp","maxReached","maxReachedGrp","maxOptionsArr","maxTxt","maxTxtGrp","$notify","currentTarget","target","noResults","searchValue","searchMatch","q","cache","cacheArr","searchStyle","_searchStyle","normalizeSearch","_$lisSelected","cacheLen","liPrev","liSelectedIndex","changeAll","previousSelected","currentSelected","isActive","liActive","activeLi","isToggle","closest","$items","updateScroll","downOnTab","which","isArrowKey","lastIndexOf","liActiveIndex","scrollHeight","matches","cancel","clearTimeout","charAt","matchIndex","focus","before","removeData","old","noConflict","$selectpicker","jQuery"],"mappings":"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","file":"bootstrap-select.min.js"} \ No newline at end of file +{"version":3,"sources":["../../js/bootstrap-select.js"],"names":["$","DISALLOWED_ATTRIBUTES","uriAttrs","DefaultWhitelist","*","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","i","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","toLowerCase","inArray","Boolean","nodeValue","match","regExp","filter","index","value","RegExp","l","length","sanitizeHtml","unsafeElements","whiteList","sanitizeFn","whitelistKeys","Object","keys","len","elements","querySelectorAll","j","len2","el","elName","indexOf","attributeList","slice","call","attributes","whitelistedAttributes","concat","k","len3","removeAttribute","parentNode","removeChild","document","createElement","view","classListProp","protoProp","elemCtrProto","Element","objCtr","classListGetter","$elem","this","add","classes","Array","prototype","arguments","join","addClass","remove","removeClass","toggle","force","toggleClass","contains","hasClass","defineProperty","classListPropDesc","get","enumerable","configurable","ex","undefined","number","__defineGetter__","window","toString","startsWith","testElement","classList","_add","DOMTokenList","_remove","forEach","bind","_toggle","token","getSelectedOptions","select","ignoreDisabled","opt","selectedOptions","options","disabled","tagName","push","getSelectValues","multiple","String","object","$defineProperty","result","error","search","TypeError","string","stringLength","searchString","searchLength","position","pos","Number","start","Math","min","max","charCodeAt","writable","o","r","hasOwnProperty","HTMLSelectElement","valHooks","useDefault","_set","set","elem","data","apply","changedArguments","EventIsSupported","Event","e","stringSearch","method","normalize","stringTypes","searchSuccess","stringType","replace","normalizeToBase","toUpperCase","toInteger","parseInt","fn","triggerNative","eventName","event","dispatchEvent","bubbles","createEvent","initEvent","fireEvent","createEventObject","eventType","trigger","deburredLetters","À","Á","Â","Ã","Ä","Å","à","á","â","ã","ä","å","Ç","ç","Ð","ð","È","É","Ê","Ë","è","é","ê","ë","Ì","Í","Î","Ï","ì","í","î","ï","Ñ","ñ","Ò","Ó","Ô","Õ","Ö","Ø","ò","ó","ô","õ","ö","ø","Ù","Ú","Û","Ü","ù","ú","û","ü","Ý","ý","ÿ","Æ","æ","Þ","þ","ß","Ā","Ă","Ą","ā","ă","ą","Ć","Ĉ","Ċ","Č","ć","ĉ","ċ","č","Ď","Đ","ď","đ","Ē","Ĕ","Ė","Ę","Ě","ē","ĕ","ė","ę","ě","Ĝ","Ğ","Ġ","Ģ","ĝ","ğ","ġ","ģ","Ĥ","Ħ","ĥ","ħ","Ĩ","Ī","Ĭ","Į","İ","ĩ","ī","ĭ","į","ı","Ĵ","ĵ","Ķ","ķ","ĸ","Ĺ","Ļ","Ľ","Ŀ","Ł","ĺ","ļ","ľ","ŀ","ł","Ń","Ņ","Ň","Ŋ","ń","ņ","ň","ŋ","Ō","Ŏ","Ő","ō","ŏ","ő","Ŕ","Ŗ","Ř","ŕ","ŗ","ř","Ś","Ŝ","Ş","Š","ś","ŝ","ş","š","Ţ","Ť","Ŧ","ţ","ť","ŧ","Ũ","Ū","Ŭ","Ů","Ű","Ų","ũ","ū","ŭ","ů","ű","ų","Ŵ","ŵ","Ŷ","ŷ","Ÿ","Ź","Ż","Ž","ź","ż","ž","IJ","ij","Œ","œ","ʼn","ſ","reLatin","reComboMark","deburrLetter","key","map","escaper","source","testRegexp","replaceRegexp","htmlEscape","&","<",">","\"","'","`","test","keyCodeMap","32","48","49","50","51","52","53","54","55","56","57","59","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","96","97","98","99","100","101","102","103","104","105","keyCodes","version","success","major","full","dropdown","Constructor","VERSION","split","err","selectId","EVENT_KEY","classNames","DISABLED","DIVIDER","SHOW","DROPUP","MENU","MENURIGHT","MENULEFT","BUTTONCLASS","POPOVERHEADER","ICONBASE","TICKICON","Selector","elementTemplates","subtext","whitespace","createTextNode","fragment","createDocumentFragment","setAttribute","className","text","cloneNode","checkMark","REGEXP_ARROW","REGEXP_TAB_OR_ESCAPE","generateOption","content","optgroup","nodeType","appendChild","innerHTML","inline","insertAdjacentHTML","useFragment","subtextElement","iconElement","textElement","textContent","icon","iconBase","childNodes","label","display","Selectpicker","element","that","$element","$newElement","$button","$menu","selectpicker","main","current","isSearching","keydown","keyHistory","resetKeyHistory","setTimeout","sizeInfo","title","winPad","windowPadding","val","render","refresh","setStyle","selectAll","deselectAll","destroy","show","hide","init","Plugin","option","args","_option","shift","BootstrapVersion","console","warn","toUpdate","DEFAULTS","style","name","tickIcon","chain","each","$this","is","dataAttributes","dataAttr","config","extend","defaults","template","Function","noneSelectedText","noneResultsText","countSelectedText","numSelected","numTotal","maxOptionsText","numAll","numGroup","selectAllText","deselectAllText","doneButton","doneButtonText","multipleSeparator","styleBase","size","selectedTextFormat","width","container","hideDisabled","showSubtext","showIcon","showContent","dropupAuto","header","liveSearch","liveSearchPlaceholder","liveSearchNormalize","liveSearchStyle","actionsBox","showTick","caret","maxOptions","mobile","selectOnTab","dropdownAlignRight","virtualScroll","sanitize","constructor","id","prop","autofocus","createDropdown","buildData","after","prependTo","children","$menuInner","$searchbox","find","checkDisabled","clickListener","liveSearchListener","focusedParent","setWidth","selectPosition","on","isVirtual","menuInner","emptyMenu","firstChild","replaceChild","scrollTop","hide.bs.dropdown","hidden.bs.dropdown","show.bs.dropdown","shown.bs.dropdown","hasAttribute","off","validity","valid","buildList","multiselectable","inputGroup","parent","drop","searchbox","actionsbox","donebutton","setPositionData","canHighlight","type","height","dividerHeight","dropdownHeaderHeight","liHeight","posinset","createView","setSize","selected","prevActive","active","selectedIndex","liIndex","selectedData","menuInnerHeight","scroll","chunkSize","chunkCount","firstChunk","lastChunk","currentChunk","prevPositions","positionIsDifferent","previousElements","array1","array2","chunks","menuIsDifferent","ceil","round","endOfChunk","position0","position1","activeIndex","prevActiveIndex","defocusItem","visibleElements","setOptionStatus","every","marginTop","marginBottom","menuFragment","toSanitize","visibleElementsLen","elText","elementData","lastChild","sanitized","hasScrollBar","menuInnerInnerWidth","offsetWidth","totalMenuWidth","selectWidth","minWidth","actualMenuWidth","newActive","currentActive","focusItem","updateValue","noScroll","liData","noStyle","setPlaceholder","updateIndex","titleOption","isSelected","titleNotAppended","insertBefore","optionSelector","mainData","optID","startIndex","selectOptions","addDivider","previousData","addOption","divider","getAttribute","cssText","inlineStyle","optionClass","optgroupClass","trim","tokens","addOptgroup","previous","next","headerIndex","lastIndex","item","selectData","mainElements","widestOptionLength","buildElement","liElement","combinedLength","widestOption","findLis","showCount","countMax","selectedCount","button","buttonInner","querySelector","titleFragment","hasContent","tabIndex","thisData","titleOptions","totalCount","tr8nText","filterExpand","clone","newStyle","status","buttonClass","newElement","previousElementSibling","nextElementSibling","menu","menuInnerInner","dropdownHeader","actions","firstOption","input","body","scrollBarWidth","offsetHeight","headerHeight","searchHeight","actionsHeight","doneButtonHeight","outerHeight","menuStyle","getComputedStyle","menuWidth","menuPadding","vert","paddingTop","css","paddingBottom","borderTopWidth","borderBottomWidth","horiz","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","menuExtras","marginLeft","marginRight","overflowY","selectHeight","getSelectPosition","containerPos","$window","offset","$container","top","left","selectOffsetTop","selectOffsetBot","selectOffsetLeft","scrollLeft","selectOffsetRight","setMenuSize","isAuto","menuHeight","minHeight","_minHeight","maxHeight","menuInnerMinHeight","estimate","isDropup","divHeight","divLength","dropup","max-height","overflow","min-height","overflow-y","_popper","update","requestAnimationFrame","$selectClone","appendTo","btnWidth","outerWidth","$bsContainer","actualHeight","getPlacement","containerPosition","Default","isDisabled","append","detach","selectedOnly","setDisabled","setSelected","activeIndexIsSet","keepActive","removeAttr","$document","setFocus","checkPopperExists","state","isCreated","keyCode","preventDefault","_menu","hoverLi","parentElement","hoverData","retainActive","clickedData","clickedIndex","prevValue","prevIndex","prevOption","triggerChange","stopPropagation","$option","$optgroup","$optgroupOptions","maxOptionsGrp","maxReached","maxReachedGrp","maxOptionsArr","maxTxt","maxTxtGrp","$notify","currentTarget","target","noResults","searchValue","searchMatch","q","cache","cacheArr","searchStyle","_searchStyle","normalizeSearch","cacheLen","liPrev","liSelectedIndex","changeAll","previousSelected","currentSelected","isActive","liActive","activeLi","isToggle","closest","$items","updateScroll","downOnTab","which","isArrowKey","lastIndexOf","liActiveIndex","scrollHeight","matches","cancel","clearTimeout","charAt","matchIndex","focus","before","removeData","old","noConflict","bootstrapKeydown","_dataApiKeydownHandler","$selectpicker","jQuery"],"mappings":"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","file":"bootstrap-select.min.js"} \ No newline at end of file diff --git a/dist/js/i18n/defaults-am_ET.js b/dist/js/i18n/defaults-am_ET.js index 6d43d6001..701f5b762 100644 --- a/dist/js/i18n/defaults-am_ET.js +++ b/dist/js/i18n/defaults-am_ET.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-am_ET.min.js b/dist/js/i18n/defaults-am_ET.min.js index cdb798f82..edd215629 100644 --- a/dist/js/i18n/defaults-am_ET.min.js +++ b/dist/js/i18n/defaults-am_ET.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ar_AR.js b/dist/js/i18n/defaults-ar_AR.js index 981e3a23e..b1fbf6a4b 100644 --- a/dist/js/i18n/defaults-ar_AR.js +++ b/dist/js/i18n/defaults-ar_AR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ar_AR.min.js b/dist/js/i18n/defaults-ar_AR.min.js index bbea176bf..d28579ded 100644 --- a/dist/js/i18n/defaults-ar_AR.min.js +++ b/dist/js/i18n/defaults-ar_AR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-bg_BG.js b/dist/js/i18n/defaults-bg_BG.js index ab37611a7..baee3ee3c 100644 --- a/dist/js/i18n/defaults-bg_BG.js +++ b/dist/js/i18n/defaults-bg_BG.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-bg_BG.min.js b/dist/js/i18n/defaults-bg_BG.min.js index 432fab363..fce926222 100644 --- a/dist/js/i18n/defaults-bg_BG.min.js +++ b/dist/js/i18n/defaults-bg_BG.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-cs_CZ.js b/dist/js/i18n/defaults-cs_CZ.js index 719e9ee85..f5199ca03 100644 --- a/dist/js/i18n/defaults-cs_CZ.js +++ b/dist/js/i18n/defaults-cs_CZ.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-cs_CZ.min.js b/dist/js/i18n/defaults-cs_CZ.min.js index 9590254b4..63634f0fc 100644 --- a/dist/js/i18n/defaults-cs_CZ.min.js +++ b/dist/js/i18n/defaults-cs_CZ.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-da_DK.js b/dist/js/i18n/defaults-da_DK.js index 03a83f441..516a04301 100644 --- a/dist/js/i18n/defaults-da_DK.js +++ b/dist/js/i18n/defaults-da_DK.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-da_DK.min.js b/dist/js/i18n/defaults-da_DK.min.js index 8511f6c64..0bfdaabbd 100644 --- a/dist/js/i18n/defaults-da_DK.min.js +++ b/dist/js/i18n/defaults-da_DK.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-de_DE.js b/dist/js/i18n/defaults-de_DE.js index 185f8002f..3c3029a2a 100644 --- a/dist/js/i18n/defaults-de_DE.js +++ b/dist/js/i18n/defaults-de_DE.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-de_DE.min.js b/dist/js/i18n/defaults-de_DE.min.js index d80946646..b8483cee6 100644 --- a/dist/js/i18n/defaults-de_DE.min.js +++ b/dist/js/i18n/defaults-de_DE.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-en_US.js b/dist/js/i18n/defaults-en_US.js index 57c8a20e2..7656512b3 100644 --- a/dist/js/i18n/defaults-en_US.js +++ b/dist/js/i18n/defaults-en_US.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-en_US.min.js b/dist/js/i18n/defaults-en_US.min.js index fc23bec61..2bda485b3 100644 --- a/dist/js/i18n/defaults-en_US.min.js +++ b/dist/js/i18n/defaults-en_US.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-es_CL.js b/dist/js/i18n/defaults-es_CL.js index efd953ed5..610ac9431 100644 --- a/dist/js/i18n/defaults-es_CL.js +++ b/dist/js/i18n/defaults-es_CL.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-es_CL.min.js b/dist/js/i18n/defaults-es_CL.min.js index 28cdbeb71..06e30596e 100644 --- a/dist/js/i18n/defaults-es_CL.min.js +++ b/dist/js/i18n/defaults-es_CL.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-es_ES.js b/dist/js/i18n/defaults-es_ES.js index bf40396d9..6a0982fe1 100644 --- a/dist/js/i18n/defaults-es_ES.js +++ b/dist/js/i18n/defaults-es_ES.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-es_ES.min.js b/dist/js/i18n/defaults-es_ES.min.js index 28cdbeb71..06e30596e 100644 --- a/dist/js/i18n/defaults-es_ES.min.js +++ b/dist/js/i18n/defaults-es_ES.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-et_EE.js b/dist/js/i18n/defaults-et_EE.js index e9b7ed62d..6d259f230 100644 --- a/dist/js/i18n/defaults-et_EE.js +++ b/dist/js/i18n/defaults-et_EE.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-et_EE.min.js b/dist/js/i18n/defaults-et_EE.min.js index 8bfd3f608..3cec8c4d2 100644 --- a/dist/js/i18n/defaults-et_EE.min.js +++ b/dist/js/i18n/defaults-et_EE.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-eu.js b/dist/js/i18n/defaults-eu.js index 44a6b1345..472ef01bf 100644 --- a/dist/js/i18n/defaults-eu.js +++ b/dist/js/i18n/defaults-eu.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-eu.min.js b/dist/js/i18n/defaults-eu.min.js index 9a7eadf67..e020daa35 100644 --- a/dist/js/i18n/defaults-eu.min.js +++ b/dist/js/i18n/defaults-eu.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-fa_IR.js b/dist/js/i18n/defaults-fa_IR.js index aae560b30..734577955 100644 --- a/dist/js/i18n/defaults-fa_IR.js +++ b/dist/js/i18n/defaults-fa_IR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-fa_IR.min.js b/dist/js/i18n/defaults-fa_IR.min.js index b72b7c724..768f0063b 100644 --- a/dist/js/i18n/defaults-fa_IR.min.js +++ b/dist/js/i18n/defaults-fa_IR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-fi_FI.js b/dist/js/i18n/defaults-fi_FI.js index 6d0839185..0a1f9de2f 100644 --- a/dist/js/i18n/defaults-fi_FI.js +++ b/dist/js/i18n/defaults-fi_FI.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-fi_FI.min.js b/dist/js/i18n/defaults-fi_FI.min.js index 7a66fa11a..e553011c4 100644 --- a/dist/js/i18n/defaults-fi_FI.min.js +++ b/dist/js/i18n/defaults-fi_FI.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-fr_FR.js b/dist/js/i18n/defaults-fr_FR.js index 9184cd5ad..29741d53b 100644 --- a/dist/js/i18n/defaults-fr_FR.js +++ b/dist/js/i18n/defaults-fr_FR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-fr_FR.min.js b/dist/js/i18n/defaults-fr_FR.min.js index b6d094942..b2a7a908b 100644 --- a/dist/js/i18n/defaults-fr_FR.min.js +++ b/dist/js/i18n/defaults-fr_FR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-hr_HR.js b/dist/js/i18n/defaults-hr_HR.js index aca498c84..2411d53ed 100644 --- a/dist/js/i18n/defaults-hr_HR.js +++ b/dist/js/i18n/defaults-hr_HR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-hr_HR.min.js b/dist/js/i18n/defaults-hr_HR.min.js index 9920a0c62..172fd9739 100644 --- a/dist/js/i18n/defaults-hr_HR.min.js +++ b/dist/js/i18n/defaults-hr_HR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-hu_HU.js b/dist/js/i18n/defaults-hu_HU.js index cbc90397a..72b6f3aee 100644 --- a/dist/js/i18n/defaults-hu_HU.js +++ b/dist/js/i18n/defaults-hu_HU.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-hu_HU.min.js b/dist/js/i18n/defaults-hu_HU.min.js index 5efa55393..81bdb79f6 100644 --- a/dist/js/i18n/defaults-hu_HU.min.js +++ b/dist/js/i18n/defaults-hu_HU.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-id_ID.js b/dist/js/i18n/defaults-id_ID.js index b76e80802..24168e02c 100644 --- a/dist/js/i18n/defaults-id_ID.js +++ b/dist/js/i18n/defaults-id_ID.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-id_ID.min.js b/dist/js/i18n/defaults-id_ID.min.js index 7de4c322d..9b5ef1d16 100644 --- a/dist/js/i18n/defaults-id_ID.min.js +++ b/dist/js/i18n/defaults-id_ID.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-it_IT.js b/dist/js/i18n/defaults-it_IT.js index 481f08834..98fc97ad1 100644 --- a/dist/js/i18n/defaults-it_IT.js +++ b/dist/js/i18n/defaults-it_IT.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-it_IT.min.js b/dist/js/i18n/defaults-it_IT.min.js index fa34d4c77..58b626c86 100644 --- a/dist/js/i18n/defaults-it_IT.min.js +++ b/dist/js/i18n/defaults-it_IT.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ja_JP.js b/dist/js/i18n/defaults-ja_JP.js index 9823044ca..71b7d2944 100644 --- a/dist/js/i18n/defaults-ja_JP.js +++ b/dist/js/i18n/defaults-ja_JP.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ja_JP.min.js b/dist/js/i18n/defaults-ja_JP.min.js index b1c1eb44b..b7bd0840a 100644 --- a/dist/js/i18n/defaults-ja_JP.min.js +++ b/dist/js/i18n/defaults-ja_JP.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-kh_KM.js b/dist/js/i18n/defaults-kh_KM.js index 5bcc76263..70245b45c 100644 --- a/dist/js/i18n/defaults-kh_KM.js +++ b/dist/js/i18n/defaults-kh_KM.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-kh_KM.min.js b/dist/js/i18n/defaults-kh_KM.min.js index 281d5600c..0adc2237e 100644 --- a/dist/js/i18n/defaults-kh_KM.min.js +++ b/dist/js/i18n/defaults-kh_KM.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ko_KR.js b/dist/js/i18n/defaults-ko_KR.js index 7a8c31c54..f8e198f5d 100644 --- a/dist/js/i18n/defaults-ko_KR.js +++ b/dist/js/i18n/defaults-ko_KR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ko_KR.min.js b/dist/js/i18n/defaults-ko_KR.min.js index cccff78f6..6a21444ca 100644 --- a/dist/js/i18n/defaults-ko_KR.min.js +++ b/dist/js/i18n/defaults-ko_KR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-lt_LT.js b/dist/js/i18n/defaults-lt_LT.js index b5591c6b5..ed77a6678 100644 --- a/dist/js/i18n/defaults-lt_LT.js +++ b/dist/js/i18n/defaults-lt_LT.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-lt_LT.min.js b/dist/js/i18n/defaults-lt_LT.min.js index cb7763b73..ae2026045 100644 --- a/dist/js/i18n/defaults-lt_LT.min.js +++ b/dist/js/i18n/defaults-lt_LT.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-lv_LV.js b/dist/js/i18n/defaults-lv_LV.js index 75c3ee7ce..96f27cb20 100644 --- a/dist/js/i18n/defaults-lv_LV.js +++ b/dist/js/i18n/defaults-lv_LV.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-lv_LV.min.js b/dist/js/i18n/defaults-lv_LV.min.js index fdbaed4f9..9f376e309 100644 --- a/dist/js/i18n/defaults-lv_LV.min.js +++ b/dist/js/i18n/defaults-lv_LV.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-nb_NO.js b/dist/js/i18n/defaults-nb_NO.js index 53fee6b74..b18581f12 100644 --- a/dist/js/i18n/defaults-nb_NO.js +++ b/dist/js/i18n/defaults-nb_NO.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-nb_NO.min.js b/dist/js/i18n/defaults-nb_NO.min.js index 8521efc35..0fbe19986 100644 --- a/dist/js/i18n/defaults-nb_NO.min.js +++ b/dist/js/i18n/defaults-nb_NO.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-nl_NL.js b/dist/js/i18n/defaults-nl_NL.js index 1b730e4d5..a52bdc85e 100644 --- a/dist/js/i18n/defaults-nl_NL.js +++ b/dist/js/i18n/defaults-nl_NL.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-nl_NL.min.js b/dist/js/i18n/defaults-nl_NL.min.js index 2d42f7096..b9606357d 100644 --- a/dist/js/i18n/defaults-nl_NL.min.js +++ b/dist/js/i18n/defaults-nl_NL.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-pl_PL.js b/dist/js/i18n/defaults-pl_PL.js index 4b2c9be78..06849532b 100644 --- a/dist/js/i18n/defaults-pl_PL.js +++ b/dist/js/i18n/defaults-pl_PL.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-pl_PL.min.js b/dist/js/i18n/defaults-pl_PL.min.js index 569cb64a1..9131b8408 100644 --- a/dist/js/i18n/defaults-pl_PL.min.js +++ b/dist/js/i18n/defaults-pl_PL.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-pt_BR.js b/dist/js/i18n/defaults-pt_BR.js index fa4a46ed3..b616db88e 100644 --- a/dist/js/i18n/defaults-pt_BR.js +++ b/dist/js/i18n/defaults-pt_BR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-pt_BR.min.js b/dist/js/i18n/defaults-pt_BR.min.js index 8f638d849..e009aac90 100644 --- a/dist/js/i18n/defaults-pt_BR.min.js +++ b/dist/js/i18n/defaults-pt_BR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-pt_PT.js b/dist/js/i18n/defaults-pt_PT.js index bf068a118..cb6a4be03 100644 --- a/dist/js/i18n/defaults-pt_PT.js +++ b/dist/js/i18n/defaults-pt_PT.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-pt_PT.min.js b/dist/js/i18n/defaults-pt_PT.min.js index 58cb78f17..8aefdf5f9 100644 --- a/dist/js/i18n/defaults-pt_PT.min.js +++ b/dist/js/i18n/defaults-pt_PT.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ro_RO.js b/dist/js/i18n/defaults-ro_RO.js index 66e800864..124f495e9 100644 --- a/dist/js/i18n/defaults-ro_RO.js +++ b/dist/js/i18n/defaults-ro_RO.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ro_RO.min.js b/dist/js/i18n/defaults-ro_RO.min.js index 86864d662..fe3243e3c 100644 --- a/dist/js/i18n/defaults-ro_RO.min.js +++ b/dist/js/i18n/defaults-ro_RO.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ru_RU.js b/dist/js/i18n/defaults-ru_RU.js index 518479829..c5ccc1ce6 100644 --- a/dist/js/i18n/defaults-ru_RU.js +++ b/dist/js/i18n/defaults-ru_RU.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ru_RU.min.js b/dist/js/i18n/defaults-ru_RU.min.js index 3c41a3edc..f6b342abf 100644 --- a/dist/js/i18n/defaults-ru_RU.min.js +++ b/dist/js/i18n/defaults-ru_RU.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-sk_SK.js b/dist/js/i18n/defaults-sk_SK.js index 1b591786b..f496c9706 100644 --- a/dist/js/i18n/defaults-sk_SK.js +++ b/dist/js/i18n/defaults-sk_SK.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-sk_SK.min.js b/dist/js/i18n/defaults-sk_SK.min.js index 5395697d7..d18e63706 100644 --- a/dist/js/i18n/defaults-sk_SK.min.js +++ b/dist/js/i18n/defaults-sk_SK.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-sl_SI.js b/dist/js/i18n/defaults-sl_SI.js index edf873284..2604a0fb5 100644 --- a/dist/js/i18n/defaults-sl_SI.js +++ b/dist/js/i18n/defaults-sl_SI.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-sl_SI.min.js b/dist/js/i18n/defaults-sl_SI.min.js index 8462baa7d..7d3a3f1fd 100644 --- a/dist/js/i18n/defaults-sl_SI.min.js +++ b/dist/js/i18n/defaults-sl_SI.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-sv_SE.js b/dist/js/i18n/defaults-sv_SE.js index 6de6a85a7..de81fc28b 100644 --- a/dist/js/i18n/defaults-sv_SE.js +++ b/dist/js/i18n/defaults-sv_SE.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-sv_SE.min.js b/dist/js/i18n/defaults-sv_SE.min.js index c161bebf6..75fd59ca1 100644 --- a/dist/js/i18n/defaults-sv_SE.min.js +++ b/dist/js/i18n/defaults-sv_SE.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-tr_TR.js b/dist/js/i18n/defaults-tr_TR.js index 65ced5c65..479d4841c 100644 --- a/dist/js/i18n/defaults-tr_TR.js +++ b/dist/js/i18n/defaults-tr_TR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-tr_TR.min.js b/dist/js/i18n/defaults-tr_TR.min.js index 92447c90b..c34b4a3b5 100644 --- a/dist/js/i18n/defaults-tr_TR.min.js +++ b/dist/js/i18n/defaults-tr_TR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ua_UA.js b/dist/js/i18n/defaults-ua_UA.js index c43be2b56..01dc7d64d 100644 --- a/dist/js/i18n/defaults-ua_UA.js +++ b/dist/js/i18n/defaults-ua_UA.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-ua_UA.min.js b/dist/js/i18n/defaults-ua_UA.min.js index 6466292a3..2a40bbad3 100644 --- a/dist/js/i18n/defaults-ua_UA.min.js +++ b/dist/js/i18n/defaults-ua_UA.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-vi_VN.js b/dist/js/i18n/defaults-vi_VN.js index da861b2ce..2f91516ab 100644 --- a/dist/js/i18n/defaults-vi_VN.js +++ b/dist/js/i18n/defaults-vi_VN.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-vi_VN.min.js b/dist/js/i18n/defaults-vi_VN.min.js index 16b578e3e..e564d1f8b 100644 --- a/dist/js/i18n/defaults-vi_VN.min.js +++ b/dist/js/i18n/defaults-vi_VN.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-zh_CN.js b/dist/js/i18n/defaults-zh_CN.js index a2fc0e3ba..f4974475e 100644 --- a/dist/js/i18n/defaults-zh_CN.js +++ b/dist/js/i18n/defaults-zh_CN.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-zh_CN.min.js b/dist/js/i18n/defaults-zh_CN.min.js index a04ced546..ef94d47fc 100644 --- a/dist/js/i18n/defaults-zh_CN.min.js +++ b/dist/js/i18n/defaults-zh_CN.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-zh_TW.js b/dist/js/i18n/defaults-zh_TW.js index 761ed1bfd..f8cfba938 100644 --- a/dist/js/i18n/defaults-zh_TW.js +++ b/dist/js/i18n/defaults-zh_TW.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/dist/js/i18n/defaults-zh_TW.min.js b/dist/js/i18n/defaults-zh_TW.min.js index b886d777f..22decac18 100644 --- a/dist/js/i18n/defaults-zh_TW.min.js +++ b/dist/js/i18n/defaults-zh_TW.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/css/bootstrap-select.css b/docs/docs/dist/css/bootstrap-select.css index 62331f896..5dba830c6 100644 --- a/docs/docs/dist/css/bootstrap-select.css +++ b/docs/docs/dist/css/bootstrap-select.css @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/css/bootstrap-select.min.css b/docs/docs/dist/css/bootstrap-select.min.css index 78f79a985..b825c30d7 100644 --- a/docs/docs/dist/css/bootstrap-select.min.css +++ b/docs/docs/dist/css/bootstrap-select.min.css @@ -1,6 +1,6 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */@-webkit-keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}@-o-keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}@keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}.bootstrap-select>select.bs-select-hidden,select.bs-select-hidden,select.selectpicker{display:none!important}.bootstrap-select{width:220px\0;vertical-align:middle}.bootstrap-select>.dropdown-toggle{position:relative;width:100%;text-align:right;white-space:nowrap;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.bootstrap-select>.dropdown-toggle:after{margin-top:-1px}.bootstrap-select>.dropdown-toggle.bs-placeholder,.bootstrap-select>.dropdown-toggle.bs-placeholder:active,.bootstrap-select>.dropdown-toggle.bs-placeholder:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder:hover{color:#999}.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:hover{color:rgba(255,255,255,.5)}.bootstrap-select>select{position:absolute!important;bottom:0;left:50%;display:block!important;width:.5px!important;height:100%!important;padding:0!important;opacity:0!important;border:none;z-index:0!important}.bootstrap-select>select.mobile-device{top:0;left:0;display:block!important;width:100%!important;z-index:2!important}.bootstrap-select.is-invalid .dropdown-toggle,.error .bootstrap-select .dropdown-toggle,.has-error .bootstrap-select .dropdown-toggle,.was-validated .bootstrap-select select:invalid+.dropdown-toggle{border-color:#b94a48}.bootstrap-select.is-valid .dropdown-toggle,.was-validated .bootstrap-select select:valid+.dropdown-toggle{border-color:#28a745}.bootstrap-select.fit-width{width:auto!important}.bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn){width:220px}.bootstrap-select .dropdown-toggle:focus,.bootstrap-select>select.mobile-device:focus+.dropdown-toggle{outline:thin dotted #333!important;outline:5px auto -webkit-focus-ring-color!important;outline-offset:-2px}.bootstrap-select.form-control{margin-bottom:0;padding:0;border:none;height:auto}:not(.input-group)>.bootstrap-select.form-control:not([class*=col-]){width:100%}.bootstrap-select.form-control.input-group-btn{float:none;z-index:auto}.form-inline .bootstrap-select,.form-inline .bootstrap-select.form-control:not([class*=col-]){width:auto}.bootstrap-select:not(.input-group-btn),.bootstrap-select[class*=col-]{float:none;display:inline-block;margin-left:0}.bootstrap-select.dropdown-menu-right,.bootstrap-select[class*=col-].dropdown-menu-right,.row .bootstrap-select[class*=col-].dropdown-menu-right{float:right}.form-group .bootstrap-select,.form-horizontal .bootstrap-select,.form-inline .bootstrap-select{margin-bottom:0}.form-group-lg .bootstrap-select.form-control,.form-group-sm .bootstrap-select.form-control{padding:0}.form-group-lg .bootstrap-select.form-control .dropdown-toggle,.form-group-sm .bootstrap-select.form-control .dropdown-toggle{height:100%;font-size:inherit;line-height:inherit;border-radius:inherit}.bootstrap-select.form-control-lg .dropdown-toggle,.bootstrap-select.form-control-sm .dropdown-toggle{font-size:inherit;line-height:inherit;border-radius:inherit}.bootstrap-select.form-control-sm .dropdown-toggle{padding:.25rem .5rem}.bootstrap-select.form-control-lg .dropdown-toggle{padding:.5rem 1rem}.form-inline .bootstrap-select .form-control{width:100%}.bootstrap-select.disabled,.bootstrap-select>.disabled{cursor:not-allowed}.bootstrap-select.disabled:focus,.bootstrap-select>.disabled:focus{outline:0!important}.bootstrap-select.bs-container{position:absolute;top:0;left:0;height:0!important;padding:0!important}.bootstrap-select.bs-container .dropdown-menu{z-index:1060}.bootstrap-select .dropdown-toggle .filter-option{position:static;top:0;left:0;float:left;height:100%;width:100%;text-align:left;overflow:hidden;-webkit-box-flex:0;-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto}.bs3.bootstrap-select .dropdown-toggle .filter-option{padding-right:inherit}.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option{position:absolute;padding-top:inherit;padding-bottom:inherit;padding-left:inherit;float:none}.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option .filter-option-inner{padding-right:inherit}.bootstrap-select .dropdown-toggle .filter-option-inner-inner{overflow:hidden}.bootstrap-select .dropdown-toggle .filter-expand{width:0!important;float:left;opacity:0!important;overflow:hidden}.bootstrap-select .dropdown-toggle .caret{position:absolute;top:50%;right:12px;margin-top:-2px;vertical-align:middle}.input-group .bootstrap-select.form-control .dropdown-toggle{border-radius:inherit}.bootstrap-select[class*=col-] .dropdown-toggle{width:100%}.bootstrap-select .dropdown-menu{min-width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select .dropdown-menu>.inner:focus{outline:0!important}.bootstrap-select .dropdown-menu.inner{position:static;float:none;border:0;padding:0;margin:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.bootstrap-select .dropdown-menu li{position:relative}.bootstrap-select .dropdown-menu li.active small{color:rgba(255,255,255,.5)!important}.bootstrap-select .dropdown-menu li.disabled a{cursor:not-allowed}.bootstrap-select .dropdown-menu li a{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bootstrap-select .dropdown-menu li a.opt{position:relative;padding-left:2.25em}.bootstrap-select .dropdown-menu li a span.check-mark{display:none}.bootstrap-select .dropdown-menu li a span.text{display:inline-block}.bootstrap-select .dropdown-menu li small{padding-left:.5em}.bootstrap-select .dropdown-menu .notify{position:absolute;bottom:5px;width:96%;margin:0 2%;min-height:26px;padding:3px 5px;background:#f5f5f5;border:1px solid #e3e3e3;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05);pointer-events:none;opacity:.9;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select .dropdown-menu .notify.fadeOut{-webkit-animation:.3s linear 750ms forwards bs-notify-fadeOut;-o-animation:.3s linear 750ms forwards bs-notify-fadeOut;animation:.3s linear 750ms forwards bs-notify-fadeOut}.bootstrap-select .no-results{padding:3px;background:#f5f5f5;margin:0 5px;white-space:nowrap}.bootstrap-select.fit-width .dropdown-toggle .filter-option{position:static;display:inline;padding:0}.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner,.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner-inner{display:inline}.bootstrap-select.fit-width .dropdown-toggle .bs-caret:before{content:'\00a0'}.bootstrap-select.fit-width .dropdown-toggle .caret{position:static;top:auto;margin-top:-1px}.bootstrap-select.show-tick .dropdown-menu .selected span.check-mark{position:absolute;display:inline-block;right:15px;top:5px}.bootstrap-select.show-tick .dropdown-menu li a span.text{margin-right:34px}.bootstrap-select .bs-ok-default:after{content:'';display:block;width:.5em;height:1em;border-style:solid;border-width:0 .26em .26em 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle{z-index:1061}.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:before{content:'';border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid rgba(204,204,204,.2);position:absolute;bottom:-4px;left:9px;display:none}.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:after{content:'';border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;bottom:-4px;left:10px;display:none}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:before{bottom:auto;top:-4px;border-top:7px solid rgba(204,204,204,.2);border-bottom:0}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:after{bottom:auto;top:-4px;border-top:6px solid #fff;border-bottom:0}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:before{right:12px;left:auto}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:after{right:13px;left:auto}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:after,.bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:before,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:after,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:before{display:block}.bs-actionsbox,.bs-donebutton,.bs-searchbox{padding:4px 8px}.bs-actionsbox{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-actionsbox .btn-group button{width:50%}.bs-donebutton{float:left;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-donebutton .btn-group button{width:100%}.bs-searchbox+.bs-actionsbox{padding:0 8px 4px}.bs-searchbox .form-control{margin-bottom:0;width:100%;float:none} \ No newline at end of file diff --git a/docs/docs/dist/js/bootstrap-select.js b/docs/docs/dist/js/bootstrap-select.js index e88c05475..111f28d72 100644 --- a/docs/docs/dist/js/bootstrap-select.js +++ b/docs/docs/dist/js/bootstrap-select.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ @@ -355,7 +355,7 @@ opt = options[i]; if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) { - value.push(opt.value || opt.text); + value.push(opt.value); } } @@ -687,6 +687,8 @@ } elementTemplates.a.setAttribute('role', 'option'); + if (version.major === '4') elementTemplates.a.className = 'dropdown-item'; + elementTemplates.subtext.className = 'text-muted'; elementTemplates.text = elementTemplates.span.cloneNode(false); @@ -726,8 +728,7 @@ } } - if (typeof classes !== 'undefined' && classes !== '') a.className = classes; - if (version.major === '4') a.classList.add('dropdown-item'); + if (typeof classes !== 'undefined' && classes !== '') a.classList.add.apply(a.classList, classes.split(' ')); if (inline) a.setAttribute('style', inline); return a; @@ -749,7 +750,7 @@ // need to use for icons in the button to prevent a breaking change // note: switch to span in next major release iconElement = (useFragment === true ? elementTemplates.i : elementTemplates.span).cloneNode(false); - iconElement.className = options.iconBase + ' ' + options.icon; + iconElement.className = this.options.iconBase + ' ' + options.icon; elementTemplates.fragment.appendChild(iconElement); elementTemplates.fragment.appendChild(whitespace); @@ -778,13 +779,13 @@ subtextElement, iconElement; - textElement.innerHTML = options.label; + textElement.innerHTML = options.display; if (options.icon) { var whitespace = elementTemplates.whitespace.cloneNode(false); iconElement = elementTemplates.span.cloneNode(false); - iconElement.className = options.iconBase + ' ' + options.icon; + iconElement.className = this.options.iconBase + ' ' + options.icon; elementTemplates.fragment.appendChild(iconElement); elementTemplates.fragment.appendChild(whitespace); @@ -821,6 +822,7 @@ search: {}, current: {}, // current changes if a search is in progress view: {}, + isSearching: false, keydown: { keyHistory: '', resetKeyHistory: { @@ -832,6 +834,9 @@ } } }; + + this.sizeInfo = {}; + // If we have no title yet, try to pull it from the html title attribute (jQuery doesnt' pick it up as it's not a // data-attribute) if (this.options.title === null) { @@ -859,7 +864,7 @@ this.init(); }; - Selectpicker.VERSION = '1.13.12'; + Selectpicker.VERSION = '1.13.13'; // part of this is duplicated in i18n/defaults-en_US.js. Make sure to update both. Selectpicker.DEFAULTS = { @@ -936,6 +941,7 @@ } this.$newElement = this.createDropdown(); + this.buildData(); this.$element .after(this.$newElement) .prependTo(this.$newElement); @@ -1024,7 +1030,7 @@ } setTimeout(function () { - that.createLi(); + that.buildList(); that.$element.trigger('loaded' + EVENT_KEY); }); }, @@ -1167,6 +1173,7 @@ selected, prevActive; + this.selectpicker.isSearching = isSearching; this.selectpicker.current = isSearching ? this.selectpicker.search : this.selectpicker.main; this.setPositionData(); @@ -1455,23 +1462,14 @@ return updateIndex; }, - createLi: function () { - var that = this, - iconBase = this.options.iconBase, - optionSelector = ':not([hidden]):not([data-hidden="true"])', - mainElements = [], + buildData: function () { + var optionSelector = ':not([hidden]):not([data-hidden="true"])', mainData = [], - widestOptionLength = 0, optID = 0, startIndex = this.setPlaceholder() ? 1 : 0; // append the titleOption if necessary and skip the first option in the loop if (this.options.hideDisabled) optionSelector += ':not(:disabled)'; - if ((that.options.showTick || that.multiple) && !elementTemplates.checkMark.parentNode) { - elementTemplates.checkMark.className = iconBase + ' ' + that.options.tickIcon + ' check-mark'; - elementTemplates.a.appendChild(elementTemplates.checkMark); - } - var selectOptions = this.$element[0].querySelectorAll('select > *' + optionSelector); function addDivider (config) { @@ -1489,14 +1487,6 @@ config = config || {}; config.type = 'divider'; - mainElements.push( - generateOption.li( - false, - classNames.DIVIDER, - (config.optID ? config.optID + 'div' : undefined) - ) - ); - mainData.push(config); } @@ -1517,30 +1507,14 @@ if (config.optID) optionClass = 'opt ' + optionClass; + config.optionClass = optionClass.trim(); + config.inlineStyle = inlineStyle; config.text = option.textContent; config.content = option.getAttribute('data-content'); config.tokens = option.getAttribute('data-tokens'); config.subtext = option.getAttribute('data-subtext'); config.icon = option.getAttribute('data-icon'); - config.iconBase = iconBase; - - var textElement = generateOption.text(config); - var liElement = generateOption.li( - generateOption.a( - textElement, - optionClass, - inlineStyle - ), - '', - config.optID - ); - - if (liElement.firstChild) { - liElement.firstChild.id = that.selectId + '-' + liIndex; - } - - mainElements.push(liElement); option.liIndex = liIndex; @@ -1548,26 +1522,10 @@ config.type = 'option'; config.index = liIndex; config.option = option; - config.disabled = config.disabled || option.disabled; + config.selected = !!option.selected; + config.disabled = config.disabled || !!option.disabled; mainData.push(config); - - var combinedLength = 0; - - // count the number of characters in the option - not perfect, but should work in most cases - if (config.display) combinedLength += config.display.length; - if (config.subtext) combinedLength += config.subtext.length; - // if there is an icon, ensure this option's width is checked - if (config.icon) combinedLength += 1; - - if (combinedLength > widestOptionLength) { - widestOptionLength = combinedLength; - - // guess which option is the widest - // use this when calculating menu width - // not perfect, but it's fast, and the width will be updating accordingly when scrolling - that.selectpicker.view.widestOption = mainElements[mainElements.length - 1]; - } } } @@ -1580,12 +1538,12 @@ if (!options.length) return; var config = { - label: htmlEscape(optgroup.label), + display: htmlEscape(optgroup.label), subtext: optgroup.getAttribute('data-subtext'), icon: optgroup.getAttribute('data-icon'), - iconBase: iconBase + type: 'optgroup-label', + optgroupClass: ' ' + (optgroup.className || '') }, - optgroupClass = ' ' + (optgroup.className || ''), headerIndex, lastIndex; @@ -1595,18 +1553,9 @@ addDivider({ optID: optID }); } - var labelElement = generateOption.label(config); - - mainElements.push( - generateOption.li(labelElement, 'dropdown-header' + optgroupClass, optID) - ); + config.optID = optID; - mainData.push({ - display: config.label, - subtext: config.subtext, - type: 'optgroup-label', - optID: optID - }); + mainData.push(config); for (var j = 0, len = options.length; j < len; j++) { var option = options[j]; @@ -1619,8 +1568,8 @@ addOption(option, { headerIndex: headerIndex, lastIndex: lastIndex, - optID: optID, - optgroupClass: optgroupClass, + optID: config.optID, + optgroupClass: config.optgroupClass, disabled: optgroup.disabled }); } @@ -1640,10 +1589,86 @@ } } - this.selectpicker.main.elements = mainElements; - this.selectpicker.main.data = mainData; + this.selectpicker.main.data = this.selectpicker.current.data = mainData; + }, + + buildList: function () { + var that = this, + selectData = this.selectpicker.main.data, + mainElements = [], + widestOptionLength = 0; + + if ((that.options.showTick || that.multiple) && !elementTemplates.checkMark.parentNode) { + elementTemplates.checkMark.className = this.options.iconBase + ' ' + that.options.tickIcon + ' check-mark'; + elementTemplates.a.appendChild(elementTemplates.checkMark); + } + + function buildElement (item) { + var liElement, + combinedLength = 0; + + switch (item.type) { + case 'divider': + liElement = generateOption.li( + false, + classNames.DIVIDER, + (item.optID ? item.optID + 'div' : undefined) + ); + + break; + + case 'option': + liElement = generateOption.li( + generateOption.a( + generateOption.text.call(that, item), + item.optionClass, + item.inlineStyle + ), + '', + item.optID + ); + + if (liElement.firstChild) { + liElement.firstChild.id = that.selectId + '-' + item.index; + } + + break; + + case 'optgroup-label': + liElement = generateOption.li( + generateOption.label.call(that, item), + 'dropdown-header' + item.optgroupClass, + item.optID + ); + + break; + } + + mainElements.push(liElement); + + // count the number of characters in the option - not perfect, but should work in most cases + if (item.display) combinedLength += item.display.length; + if (item.subtext) combinedLength += item.subtext.length; + // if there is an icon, ensure this option's width is checked + if (item.icon) combinedLength += 1; + + if (combinedLength > widestOptionLength) { + widestOptionLength = combinedLength; + + // guess which option is the widest + // use this when calculating menu width + // not perfect, but it's fast, and the width will be updating accordingly when scrolling + that.selectpicker.view.widestOption = mainElements[mainElements.length - 1]; + } + } + + for (var len = selectData.length, i = 0; i < len; i++) { + var item = selectData[i]; - this.selectpicker.current = this.selectpicker.main; + buildElement(item); + } + + this.selectpicker.main.elements = this.selectpicker.current.elements = mainElements; }, findLis: function () { @@ -1651,10 +1676,9 @@ }, render: function () { - // ensure titleOption is appended and selected (if necessary) before getting selectedOptions - this.setPlaceholder(); - var that = this, + // ensure titleOption is appended and selected (if necessary) before getting selectedOptions + startIndex = this.setPlaceholder() ? 1 : 0, element = this.$element[0], selectedOptions = getSelectedOptions(element, this.options.hideDisabled), selectedCount = selectedOptions.length, @@ -1671,7 +1695,7 @@ this.tabIndex(); if (this.options.selectedTextFormat === 'static') { - titleFragment = generateOption.text({ text: this.options.title }, true); + titleFragment = generateOption.text.call(this, { text: this.options.title }, true); } else { showCount = this.multiple && this.options.selectedTextFormat.indexOf('count') !== -1 && selectedCount > 1; @@ -1683,15 +1707,11 @@ // only loop through all selected options if the count won't be shown if (showCount === false) { - for (var selectedIndex = 0; selectedIndex < selectedCount; selectedIndex++) { + for (var selectedIndex = startIndex; selectedIndex < selectedCount; selectedIndex++) { if (selectedIndex < 50) { var option = selectedOptions[selectedIndex], - titleOptions = {}, - thisData = { - content: option.getAttribute('data-content'), - subtext: option.getAttribute('data-subtext'), - icon: option.getAttribute('data-icon') - }; + thisData = this.selectpicker.main.data[option.liIndex], + titleOptions = {}; if (this.multiple && selectedIndex > 0) { titleFragment.appendChild(multipleSeparator.cloneNode(false)); @@ -1705,13 +1725,12 @@ } else { if (that.options.showIcon) { titleOptions.icon = thisData.icon; - titleOptions.iconBase = this.options.iconBase; } if (that.options.showSubtext && !that.multiple && thisData.subtext) titleOptions.subtext = ' ' + thisData.subtext; titleOptions.text = option.textContent.trim(); } - titleFragment.appendChild(generateOption.text(titleOptions, true)); + titleFragment.appendChild(generateOption.text.call(this, titleOptions, true)); } else { break; } @@ -1729,7 +1748,7 @@ var totalCount = this.$element[0].querySelectorAll('select > option' + optionSelector + ', optgroup' + optionSelector + ' option' + optionSelector).length, tr8nText = (typeof this.options.countSelectedText === 'function') ? this.options.countSelectedText(selectedCount, totalCount) : this.options.countSelectedText; - titleFragment = generateOption.text({ + titleFragment = generateOption.text.call(this, { text: tr8nText.replace('{0}', selectedCount.toString()).replace('{1}', totalCount.toString()) }, true); } @@ -1742,7 +1761,7 @@ // If the select doesn't have a title, then use the default, or if nothing is set at all, use noneSelectedText if (!titleFragment.childNodes.length) { - titleFragment = generateOption.text({ + titleFragment = generateOption.text.call(this, { text: typeof this.options.title !== 'undefined' ? this.options.title : this.options.noneSelectedText }, true); } @@ -1815,9 +1834,7 @@ }, liHeight: function (refresh) { - if (!refresh && (this.options.size === false || this.sizeInfo)) return; - - if (!this.sizeInfo) this.sizeInfo = {}; + if (!refresh && (this.options.size === false || Object.keys(this.sizeInfo).length)) return; var newElement = document.createElement('div'), menu = document.createElement('div'), @@ -1973,7 +1990,8 @@ _minHeight, maxHeight, menuInnerMinHeight, - estimate; + estimate, + isDropup; if (this.options.dropupAuto) { // Get the estimated height of the menu without scrollbars. @@ -1981,7 +1999,16 @@ // below the button without setting dropup, but we can't know // the exact height of the menu until createView is called later estimate = liHeight * this.selectpicker.current.elements.length + menuPadding.vert; - this.$newElement.toggleClass(classNames.DROPUP, this.sizeInfo.selectOffsetTop - this.sizeInfo.selectOffsetBot > this.sizeInfo.menuExtras.vert && estimate + this.sizeInfo.menuExtras.vert + 50 > this.sizeInfo.selectOffsetBot); + + isDropup = this.sizeInfo.selectOffsetTop - this.sizeInfo.selectOffsetBot > this.sizeInfo.menuExtras.vert && estimate + this.sizeInfo.menuExtras.vert + 50 > this.sizeInfo.selectOffsetBot; + + // ensure dropup doesn't change while searching (so menu doesn't bounce back and forth) + if (this.selectpicker.isSearching === true) { + isDropup = this.selectpicker.dropup; + } + + this.$newElement.toggleClass(classNames.DROPUP, isDropup); + this.selectpicker.dropup = isDropup; } if (this.options.size === 'auto') { @@ -2038,32 +2065,33 @@ this.liHeight(refresh); if (this.options.header) this.$menu.css('padding-top', 0); - if (this.options.size === false) return; - var that = this, - $window = $(window); + if (this.options.size !== false) { + var that = this, + $window = $(window); - this.setMenuSize(); + this.setMenuSize(); - if (this.options.liveSearch) { - this.$searchbox - .off('input.setMenuSize propertychange.setMenuSize') - .on('input.setMenuSize propertychange.setMenuSize', function () { - return that.setMenuSize(); - }); - } + if (this.options.liveSearch) { + this.$searchbox + .off('input.setMenuSize propertychange.setMenuSize') + .on('input.setMenuSize propertychange.setMenuSize', function () { + return that.setMenuSize(); + }); + } - if (this.options.size === 'auto') { - $window - .off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize') - .on('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize', function () { - return that.setMenuSize(); - }); - } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) { - $window.off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize'); + if (this.options.size === 'auto') { + $window + .off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize') + .on('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize', function () { + return that.setMenuSize(); + }); + } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) { + $window.off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize'); + } } - that.createView(false, true, refresh); + this.createView(false, true, refresh); }, setWidth: function () { @@ -2595,8 +2623,6 @@ if (normalizeSearch) q = normalizeToBase(q); - that._$lisSelected = that.$menuInner.find('.selected'); - for (var i = 0; i < that.selectpicker.main.data.length; i++) { var li = that.selectpicker.main.data[i]; @@ -2699,14 +2725,14 @@ element.classList.add('bs-select-hidden'); - for (var i = 0, len = this.selectpicker.current.elements.length; i < len; i++) { - var liData = this.selectpicker.current.data[i], + for (var i = 0, data = this.selectpicker.current.data, len = data.length; i < len; i++) { + var liData = data[i], option = liData.option; if (option && !liData.disabled && liData.type !== 'divider') { if (liData.selected) previousSelected++; option.selected = status; - if (status) currentSelected++; + if (status === true) currentSelected++; } } @@ -2969,7 +2995,8 @@ this.checkDisabled(); this.setStyle(); this.render(); - this.createLi(); + this.buildData(); + this.buildList(); this.setWidth(); this.setSize(true); @@ -3122,8 +3149,13 @@ return this; }; + // get Bootstrap's keydown event handler for either Bootstrap 4 or Bootstrap 3 + var bootstrapKeydown = $.fn.dropdown.Constructor._dataApiKeydownHandler || $.fn.dropdown.Constructor.prototype.keydown; + $(document) - .off('keydown.bs.dropdown.data-api', '.bootstrap-select [data-toggle="dropdown"], .bootstrap-select .dropdown-menu') + .off('keydown.bs.dropdown.data-api') + .on('keydown.bs.dropdown.data-api', ':not(.bootstrap-select) > [data-toggle="dropdown"]', bootstrapKeydown) + .on('keydown.bs.dropdown.data-api', ':not(.bootstrap-select) > .dropdown-menu', bootstrapKeydown) .on('keydown' + EVENT_KEY, '.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input', Selectpicker.prototype.keydown) .on('focusin.modal', '.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input', function (e) { e.stopPropagation(); diff --git a/docs/docs/dist/js/bootstrap-select.js.map b/docs/docs/dist/js/bootstrap-select.js.map index 9dd747d80..19ebced12 100644 --- a/docs/docs/dist/js/bootstrap-select.js.map +++ b/docs/docs/dist/js/bootstrap-select.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../js/bootstrap-select.js"],"names":[],"mappings":"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AC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAChC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAChC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAClB,IAAI,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC/B,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/F,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAA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CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,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","file":"bootstrap-select.js","sourcesContent":["(function ($) {\r\n 'use strict';\r\n\r\n var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];\r\n\r\n var uriAttrs = [\r\n 'background',\r\n 'cite',\r\n 'href',\r\n 'itemtype',\r\n 'longdesc',\r\n 'poster',\r\n 'src',\r\n 'xlink:href'\r\n ];\r\n\r\n var ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i;\r\n\r\n var DefaultWhitelist = {\r\n // Global attributes allowed on any supplied element below.\r\n '*': ['class', 'dir', 'id', 'lang', 'role', 'tabindex', 'style', ARIA_ATTRIBUTE_PATTERN],\r\n a: ['target', 'href', 'title', 'rel'],\r\n area: [],\r\n b: [],\r\n br: [],\r\n col: [],\r\n code: [],\r\n div: [],\r\n em: [],\r\n hr: [],\r\n h1: [],\r\n h2: [],\r\n h3: [],\r\n h4: [],\r\n h5: [],\r\n h6: [],\r\n i: [],\r\n img: ['src', 'alt', 'title', 'width', 'height'],\r\n li: [],\r\n ol: [],\r\n p: [],\r\n pre: [],\r\n s: [],\r\n small: [],\r\n span: [],\r\n sub: [],\r\n sup: [],\r\n strong: [],\r\n u: [],\r\n ul: []\r\n }\r\n\r\n /**\r\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\r\n *\r\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\r\n */\r\n var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;\r\n\r\n /**\r\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\r\n *\r\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\r\n */\r\n var DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;\r\n\r\n function allowedAttribute (attr, allowedAttributeList) {\r\n var attrName = attr.nodeName.toLowerCase()\r\n\r\n if ($.inArray(attrName, allowedAttributeList) !== -1) {\r\n if ($.inArray(attrName, uriAttrs) !== -1) {\r\n return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN))\r\n }\r\n\r\n return true\r\n }\r\n\r\n var regExp = $(allowedAttributeList).filter(function (index, value) {\r\n return value instanceof RegExp\r\n })\r\n\r\n // Check if a regular expression validates the attribute.\r\n for (var i = 0, l = regExp.length; i < l; i++) {\r\n if (attrName.match(regExp[i])) {\r\n return true\r\n }\r\n }\r\n\r\n return false\r\n }\r\n\r\n function sanitizeHtml (unsafeElements, whiteList, sanitizeFn) {\r\n if (sanitizeFn && typeof sanitizeFn === 'function') {\r\n return sanitizeFn(unsafeElements);\r\n }\r\n\r\n var whitelistKeys = Object.keys(whiteList);\r\n\r\n for (var i = 0, len = unsafeElements.length; i < len; i++) {\r\n var elements = unsafeElements[i].querySelectorAll('*');\r\n\r\n for (var j = 0, len2 = elements.length; j < len2; j++) {\r\n var el = elements[j];\r\n var elName = el.nodeName.toLowerCase();\r\n\r\n if (whitelistKeys.indexOf(elName) === -1) {\r\n el.parentNode.removeChild(el);\r\n\r\n continue;\r\n }\r\n\r\n var attributeList = [].slice.call(el.attributes);\r\n var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);\r\n\r\n for (var k = 0, len3 = attributeList.length; k < len3; k++) {\r\n var attr = attributeList[k];\r\n\r\n if (!allowedAttribute(attr, whitelistedAttributes)) {\r\n el.removeAttribute(attr.nodeName);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n // Polyfill for browsers with no classList support\r\n // Remove in v2\r\n if (!('classList' in document.createElement('_'))) {\r\n (function (view) {\r\n if (!('Element' in view)) return;\r\n\r\n var classListProp = 'classList',\r\n protoProp = 'prototype',\r\n elemCtrProto = view.Element[protoProp],\r\n objCtr = Object,\r\n classListGetter = function () {\r\n var $elem = $(this);\r\n\r\n return {\r\n add: function (classes) {\r\n classes = Array.prototype.slice.call(arguments).join(' ');\r\n return $elem.addClass(classes);\r\n },\r\n remove: function (classes) {\r\n classes = Array.prototype.slice.call(arguments).join(' ');\r\n return $elem.removeClass(classes);\r\n },\r\n toggle: function (classes, force) {\r\n return $elem.toggleClass(classes, force);\r\n },\r\n contains: function (classes) {\r\n return $elem.hasClass(classes);\r\n }\r\n }\r\n };\r\n\r\n if (objCtr.defineProperty) {\r\n var classListPropDesc = {\r\n get: classListGetter,\r\n enumerable: true,\r\n configurable: true\r\n };\r\n try {\r\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\r\n } catch (ex) { // IE 8 doesn't support enumerable:true\r\n // adding undefined to fight this issue https://github.com/eligrey/classList.js/issues/36\r\n // modernie IE8-MSW7 machine has IE8 8.0.6001.18702 and is affected\r\n if (ex.number === undefined || ex.number === -0x7FF5EC54) {\r\n classListPropDesc.enumerable = false;\r\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\r\n }\r\n }\r\n } else if (objCtr[protoProp].__defineGetter__) {\r\n elemCtrProto.__defineGetter__(classListProp, classListGetter);\r\n }\r\n }(window));\r\n }\r\n\r\n var testElement = document.createElement('_');\r\n\r\n testElement.classList.add('c1', 'c2');\r\n\r\n if (!testElement.classList.contains('c2')) {\r\n var _add = DOMTokenList.prototype.add,\r\n _remove = DOMTokenList.prototype.remove;\r\n\r\n DOMTokenList.prototype.add = function () {\r\n Array.prototype.forEach.call(arguments, _add.bind(this));\r\n }\r\n\r\n DOMTokenList.prototype.remove = function () {\r\n Array.prototype.forEach.call(arguments, _remove.bind(this));\r\n }\r\n }\r\n\r\n testElement.classList.toggle('c3', false);\r\n\r\n // Polyfill for IE 10 and Firefox <24, where classList.toggle does not\r\n // support the second argument.\r\n if (testElement.classList.contains('c3')) {\r\n var _toggle = DOMTokenList.prototype.toggle;\r\n\r\n DOMTokenList.prototype.toggle = function (token, force) {\r\n if (1 in arguments && !this.contains(token) === !force) {\r\n return force;\r\n } else {\r\n return _toggle.call(this, token);\r\n }\r\n };\r\n }\r\n\r\n testElement = null;\r\n\r\n // shallow array comparison\r\n function isEqual (array1, array2) {\r\n return array1.length === array2.length && array1.every(function (element, index) {\r\n return element === array2[index];\r\n });\r\n };\r\n\r\n // \r\n if (!String.prototype.startsWith) {\r\n (function () {\r\n 'use strict'; // needed to support `apply`/`call` with `undefined`/`null`\r\n var defineProperty = (function () {\r\n // IE 8 only supports `Object.defineProperty` on DOM elements\r\n try {\r\n var object = {};\r\n var $defineProperty = Object.defineProperty;\r\n var result = $defineProperty(object, object, object) && $defineProperty;\r\n } catch (error) {\r\n }\r\n return result;\r\n }());\r\n var toString = {}.toString;\r\n var startsWith = function (search) {\r\n if (this == null) {\r\n throw new TypeError();\r\n }\r\n var string = String(this);\r\n if (search && toString.call(search) == '[object RegExp]') {\r\n throw new TypeError();\r\n }\r\n var stringLength = string.length;\r\n var searchString = String(search);\r\n var searchLength = searchString.length;\r\n var position = arguments.length > 1 ? arguments[1] : undefined;\r\n // `ToInteger`\r\n var pos = position ? Number(position) : 0;\r\n if (pos != pos) { // better `isNaN`\r\n pos = 0;\r\n }\r\n var start = Math.min(Math.max(pos, 0), stringLength);\r\n // Avoid the `indexOf` call if no match is possible\r\n if (searchLength + start > stringLength) {\r\n return false;\r\n }\r\n var index = -1;\r\n while (++index < searchLength) {\r\n if (string.charCodeAt(start + index) != searchString.charCodeAt(index)) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n };\r\n if (defineProperty) {\r\n defineProperty(String.prototype, 'startsWith', {\r\n 'value': startsWith,\r\n 'configurable': true,\r\n 'writable': true\r\n });\r\n } else {\r\n String.prototype.startsWith = startsWith;\r\n }\r\n }());\r\n }\r\n\r\n if (!Object.keys) {\r\n Object.keys = function (\r\n o, // object\r\n k, // key\r\n r // result array\r\n ) {\r\n // initialize object and result\r\n r = [];\r\n // iterate over object keys\r\n for (k in o) {\r\n // fill result array with non-prototypical keys\r\n r.hasOwnProperty.call(o, k) && r.push(k);\r\n }\r\n // return result\r\n return r;\r\n };\r\n }\r\n\r\n if (HTMLSelectElement && !HTMLSelectElement.prototype.hasOwnProperty('selectedOptions')) {\r\n Object.defineProperty(HTMLSelectElement.prototype, 'selectedOptions', {\r\n get: function () {\r\n return this.querySelectorAll(':checked');\r\n }\r\n });\r\n }\r\n\r\n function getSelectedOptions (select, ignoreDisabled) {\r\n var selectedOptions = select.selectedOptions,\r\n options = [],\r\n opt;\r\n\r\n if (ignoreDisabled) {\r\n for (var i = 0, len = selectedOptions.length; i < len; i++) {\r\n opt = selectedOptions[i];\r\n\r\n if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) {\r\n options.push(opt);\r\n }\r\n }\r\n\r\n return options;\r\n }\r\n\r\n return selectedOptions;\r\n }\r\n\r\n // much faster than $.val()\r\n function getSelectValues (select, selectedOptions) {\r\n var value = [],\r\n options = selectedOptions || select.selectedOptions,\r\n opt;\r\n\r\n for (var i = 0, len = options.length; i < len; i++) {\r\n opt = options[i];\r\n\r\n if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) {\r\n value.push(opt.value || opt.text);\r\n }\r\n }\r\n\r\n if (!select.multiple) {\r\n return !value.length ? null : value[0];\r\n }\r\n\r\n return value;\r\n }\r\n\r\n // set data-selected on select element if the value has been programmatically selected\r\n // prior to initialization of bootstrap-select\r\n // * consider removing or replacing an alternative method *\r\n var valHooks = {\r\n useDefault: false,\r\n _set: $.valHooks.select.set\r\n };\r\n\r\n $.valHooks.select.set = function (elem, value) {\r\n if (value && !valHooks.useDefault) $(elem).data('selected', true);\r\n\r\n return valHooks._set.apply(this, arguments);\r\n };\r\n\r\n var changedArguments = null;\r\n\r\n var EventIsSupported = (function () {\r\n try {\r\n new Event('change');\r\n return true;\r\n } catch (e) {\r\n return false;\r\n }\r\n })();\r\n\r\n $.fn.triggerNative = function (eventName) {\r\n var el = this[0],\r\n event;\r\n\r\n if (el.dispatchEvent) { // for modern browsers & IE9+\r\n if (EventIsSupported) {\r\n // For modern browsers\r\n event = new Event(eventName, {\r\n bubbles: true\r\n });\r\n } else {\r\n // For IE since it doesn't support Event constructor\r\n event = document.createEvent('Event');\r\n event.initEvent(eventName, true, false);\r\n }\r\n\r\n el.dispatchEvent(event);\r\n } else if (el.fireEvent) { // for IE8\r\n event = document.createEventObject();\r\n event.eventType = eventName;\r\n el.fireEvent('on' + eventName, event);\r\n } else {\r\n // fall back to jQuery.trigger\r\n this.trigger(eventName);\r\n }\r\n };\r\n // \r\n\r\n function stringSearch (li, searchString, method, normalize) {\r\n var stringTypes = [\r\n 'display',\r\n 'subtext',\r\n 'tokens'\r\n ],\r\n searchSuccess = false;\r\n\r\n for (var i = 0; i < stringTypes.length; i++) {\r\n var stringType = stringTypes[i],\r\n string = li[stringType];\r\n\r\n if (string) {\r\n string = string.toString();\r\n\r\n // Strip HTML tags. This isn't perfect, but it's much faster than any other method\r\n if (stringType === 'display') {\r\n string = string.replace(/<[^>]+>/g, '');\r\n }\r\n\r\n if (normalize) string = normalizeToBase(string);\r\n string = string.toUpperCase();\r\n\r\n if (method === 'contains') {\r\n searchSuccess = string.indexOf(searchString) >= 0;\r\n } else {\r\n searchSuccess = string.startsWith(searchString);\r\n }\r\n\r\n if (searchSuccess) break;\r\n }\r\n }\r\n\r\n return searchSuccess;\r\n }\r\n\r\n function toInteger (value) {\r\n return parseInt(value, 10) || 0;\r\n }\r\n\r\n // Borrowed from Lodash (_.deburr)\r\n /** Used to map Latin Unicode letters to basic Latin letters. */\r\n var deburredLetters = {\r\n // Latin-1 Supplement block.\r\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\r\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\r\n '\\xc7': 'C', '\\xe7': 'c',\r\n '\\xd0': 'D', '\\xf0': 'd',\r\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\r\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\r\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\r\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\r\n '\\xd1': 'N', '\\xf1': 'n',\r\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\r\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\r\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\r\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\r\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\r\n '\\xc6': 'Ae', '\\xe6': 'ae',\r\n '\\xde': 'Th', '\\xfe': 'th',\r\n '\\xdf': 'ss',\r\n // Latin Extended-A block.\r\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\r\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\r\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\r\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\r\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\r\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\r\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\r\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\r\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\r\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\r\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\r\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\r\n '\\u0134': 'J', '\\u0135': 'j',\r\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\r\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\r\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\r\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\r\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\r\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\r\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\r\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\r\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\r\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\r\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\r\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\r\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\r\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\r\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\r\n '\\u0174': 'W', '\\u0175': 'w',\r\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\r\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\r\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\r\n '\\u0132': 'IJ', '\\u0133': 'ij',\r\n '\\u0152': 'Oe', '\\u0153': 'oe',\r\n '\\u0149': \"'n\", '\\u017f': 's'\r\n };\r\n\r\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\r\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\r\n\r\n /** Used to compose unicode character classes. */\r\n var rsComboMarksRange = '\\\\u0300-\\\\u036f',\r\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\r\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\r\n rsComboMarksExtendedRange = '\\\\u1ab0-\\\\u1aff',\r\n rsComboMarksSupplementRange = '\\\\u1dc0-\\\\u1dff',\r\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange + rsComboMarksExtendedRange + rsComboMarksSupplementRange;\r\n\r\n /** Used to compose unicode capture groups. */\r\n var rsCombo = '[' + rsComboRange + ']';\r\n\r\n /**\r\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\r\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\r\n */\r\n var reComboMark = RegExp(rsCombo, 'g');\r\n\r\n function deburrLetter (key) {\r\n return deburredLetters[key];\r\n };\r\n\r\n function normalizeToBase (string) {\r\n string = string.toString();\r\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\r\n }\r\n\r\n // List of HTML entities for escaping.\r\n var escapeMap = {\r\n '&': '&',\r\n '<': '<',\r\n '>': '>',\r\n '\"': '"',\r\n \"'\": ''',\r\n '`': '`'\r\n };\r\n\r\n // Functions for escaping and unescaping strings to/from HTML interpolation.\r\n var createEscaper = function (map) {\r\n var escaper = function (match) {\r\n return map[match];\r\n };\r\n // Regexes for identifying a key that needs to be escaped.\r\n var source = '(?:' + Object.keys(map).join('|') + ')';\r\n var testRegexp = RegExp(source);\r\n var replaceRegexp = RegExp(source, 'g');\r\n return function (string) {\r\n string = string == null ? '' : '' + string;\r\n return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;\r\n };\r\n };\r\n\r\n var htmlEscape = createEscaper(escapeMap);\r\n\r\n /**\r\n * ------------------------------------------------------------------------\r\n * Constants\r\n * ------------------------------------------------------------------------\r\n */\r\n\r\n var keyCodeMap = {\r\n 32: ' ',\r\n 48: '0',\r\n 49: '1',\r\n 50: '2',\r\n 51: '3',\r\n 52: '4',\r\n 53: '5',\r\n 54: '6',\r\n 55: '7',\r\n 56: '8',\r\n 57: '9',\r\n 59: ';',\r\n 65: 'A',\r\n 66: 'B',\r\n 67: 'C',\r\n 68: 'D',\r\n 69: 'E',\r\n 70: 'F',\r\n 71: 'G',\r\n 72: 'H',\r\n 73: 'I',\r\n 74: 'J',\r\n 75: 'K',\r\n 76: 'L',\r\n 77: 'M',\r\n 78: 'N',\r\n 79: 'O',\r\n 80: 'P',\r\n 81: 'Q',\r\n 82: 'R',\r\n 83: 'S',\r\n 84: 'T',\r\n 85: 'U',\r\n 86: 'V',\r\n 87: 'W',\r\n 88: 'X',\r\n 89: 'Y',\r\n 90: 'Z',\r\n 96: '0',\r\n 97: '1',\r\n 98: '2',\r\n 99: '3',\r\n 100: '4',\r\n 101: '5',\r\n 102: '6',\r\n 103: '7',\r\n 104: '8',\r\n 105: '9'\r\n };\r\n\r\n var keyCodes = {\r\n ESCAPE: 27, // KeyboardEvent.which value for Escape (Esc) key\r\n ENTER: 13, // KeyboardEvent.which value for Enter key\r\n SPACE: 32, // KeyboardEvent.which value for space key\r\n TAB: 9, // KeyboardEvent.which value for tab key\r\n ARROW_UP: 38, // KeyboardEvent.which value for up arrow key\r\n ARROW_DOWN: 40 // KeyboardEvent.which value for down arrow key\r\n }\r\n\r\n var version = {\r\n success: false,\r\n major: '3'\r\n };\r\n\r\n try {\r\n version.full = ($.fn.dropdown.Constructor.VERSION || '').split(' ')[0].split('.');\r\n version.major = version.full[0];\r\n version.success = true;\r\n } catch (err) {\r\n // do nothing\r\n }\r\n\r\n var selectId = 0;\r\n\r\n var EVENT_KEY = '.bs.select';\r\n\r\n var classNames = {\r\n DISABLED: 'disabled',\r\n DIVIDER: 'divider',\r\n SHOW: 'open',\r\n DROPUP: 'dropup',\r\n MENU: 'dropdown-menu',\r\n MENURIGHT: 'dropdown-menu-right',\r\n MENULEFT: 'dropdown-menu-left',\r\n // to-do: replace with more advanced template/customization options\r\n BUTTONCLASS: 'btn-default',\r\n POPOVERHEADER: 'popover-title',\r\n ICONBASE: 'glyphicon',\r\n TICKICON: 'glyphicon-ok'\r\n }\r\n\r\n var Selector = {\r\n MENU: '.' + classNames.MENU\r\n }\r\n\r\n var elementTemplates = {\r\n span: document.createElement('span'),\r\n i: document.createElement('i'),\r\n subtext: document.createElement('small'),\r\n a: document.createElement('a'),\r\n li: document.createElement('li'),\r\n whitespace: document.createTextNode('\\u00A0'),\r\n fragment: document.createDocumentFragment()\r\n }\r\n\r\n elementTemplates.a.setAttribute('role', 'option');\r\n elementTemplates.subtext.className = 'text-muted';\r\n\r\n elementTemplates.text = elementTemplates.span.cloneNode(false);\r\n elementTemplates.text.className = 'text';\r\n\r\n elementTemplates.checkMark = elementTemplates.span.cloneNode(false);\r\n\r\n var REGEXP_ARROW = new RegExp(keyCodes.ARROW_UP + '|' + keyCodes.ARROW_DOWN);\r\n var REGEXP_TAB_OR_ESCAPE = new RegExp('^' + keyCodes.TAB + '$|' + keyCodes.ESCAPE);\r\n\r\n var generateOption = {\r\n li: function (content, classes, optgroup) {\r\n var li = elementTemplates.li.cloneNode(false);\r\n\r\n if (content) {\r\n if (content.nodeType === 1 || content.nodeType === 11) {\r\n li.appendChild(content);\r\n } else {\r\n li.innerHTML = content;\r\n }\r\n }\r\n\r\n if (typeof classes !== 'undefined' && classes !== '') li.className = classes;\r\n if (typeof optgroup !== 'undefined' && optgroup !== null) li.classList.add('optgroup-' + optgroup);\r\n\r\n return li;\r\n },\r\n\r\n a: function (text, classes, inline) {\r\n var a = elementTemplates.a.cloneNode(true);\r\n\r\n if (text) {\r\n if (text.nodeType === 11) {\r\n a.appendChild(text);\r\n } else {\r\n a.insertAdjacentHTML('beforeend', text);\r\n }\r\n }\r\n\r\n if (typeof classes !== 'undefined' && classes !== '') a.className = classes;\r\n if (version.major === '4') a.classList.add('dropdown-item');\r\n if (inline) a.setAttribute('style', inline);\r\n\r\n return a;\r\n },\r\n\r\n text: function (options, useFragment) {\r\n var textElement = elementTemplates.text.cloneNode(false),\r\n subtextElement,\r\n iconElement;\r\n\r\n if (options.content) {\r\n textElement.innerHTML = options.content;\r\n } else {\r\n textElement.textContent = options.text;\r\n\r\n if (options.icon) {\r\n var whitespace = elementTemplates.whitespace.cloneNode(false);\r\n\r\n // need to use for icons in the button to prevent a breaking change\r\n // note: switch to span in next major release\r\n iconElement = (useFragment === true ? elementTemplates.i : elementTemplates.span).cloneNode(false);\r\n iconElement.className = options.iconBase + ' ' + options.icon;\r\n\r\n elementTemplates.fragment.appendChild(iconElement);\r\n elementTemplates.fragment.appendChild(whitespace);\r\n }\r\n\r\n if (options.subtext) {\r\n subtextElement = elementTemplates.subtext.cloneNode(false);\r\n subtextElement.textContent = options.subtext;\r\n textElement.appendChild(subtextElement);\r\n }\r\n }\r\n\r\n if (useFragment === true) {\r\n while (textElement.childNodes.length > 0) {\r\n elementTemplates.fragment.appendChild(textElement.childNodes[0]);\r\n }\r\n } else {\r\n elementTemplates.fragment.appendChild(textElement);\r\n }\r\n\r\n return elementTemplates.fragment;\r\n },\r\n\r\n label: function (options) {\r\n var textElement = elementTemplates.text.cloneNode(false),\r\n subtextElement,\r\n iconElement;\r\n\r\n textElement.innerHTML = options.label;\r\n\r\n if (options.icon) {\r\n var whitespace = elementTemplates.whitespace.cloneNode(false);\r\n\r\n iconElement = elementTemplates.span.cloneNode(false);\r\n iconElement.className = options.iconBase + ' ' + options.icon;\r\n\r\n elementTemplates.fragment.appendChild(iconElement);\r\n elementTemplates.fragment.appendChild(whitespace);\r\n }\r\n\r\n if (options.subtext) {\r\n subtextElement = elementTemplates.subtext.cloneNode(false);\r\n subtextElement.textContent = options.subtext;\r\n textElement.appendChild(subtextElement);\r\n }\r\n\r\n elementTemplates.fragment.appendChild(textElement);\r\n\r\n return elementTemplates.fragment;\r\n }\r\n }\r\n\r\n var Selectpicker = function (element, options) {\r\n var that = this;\r\n\r\n // bootstrap-select has been initialized - revert valHooks.select.set back to its original function\r\n if (!valHooks.useDefault) {\r\n $.valHooks.select.set = valHooks._set;\r\n valHooks.useDefault = true;\r\n }\r\n\r\n this.$element = $(element);\r\n this.$newElement = null;\r\n this.$button = null;\r\n this.$menu = null;\r\n this.options = options;\r\n this.selectpicker = {\r\n main: {},\r\n search: {},\r\n current: {}, // current changes if a search is in progress\r\n view: {},\r\n keydown: {\r\n keyHistory: '',\r\n resetKeyHistory: {\r\n start: function () {\r\n return setTimeout(function () {\r\n that.selectpicker.keydown.keyHistory = '';\r\n }, 800);\r\n }\r\n }\r\n }\r\n };\r\n // If we have no title yet, try to pull it from the html title attribute (jQuery doesnt' pick it up as it's not a\r\n // data-attribute)\r\n if (this.options.title === null) {\r\n this.options.title = this.$element.attr('title');\r\n }\r\n\r\n // Format window padding\r\n var winPad = this.options.windowPadding;\r\n if (typeof winPad === 'number') {\r\n this.options.windowPadding = [winPad, winPad, winPad, winPad];\r\n }\r\n\r\n // Expose public methods\r\n this.val = Selectpicker.prototype.val;\r\n this.render = Selectpicker.prototype.render;\r\n this.refresh = Selectpicker.prototype.refresh;\r\n this.setStyle = Selectpicker.prototype.setStyle;\r\n this.selectAll = Selectpicker.prototype.selectAll;\r\n this.deselectAll = Selectpicker.prototype.deselectAll;\r\n this.destroy = Selectpicker.prototype.destroy;\r\n this.remove = Selectpicker.prototype.remove;\r\n this.show = Selectpicker.prototype.show;\r\n this.hide = Selectpicker.prototype.hide;\r\n\r\n this.init();\r\n };\r\n\r\n Selectpicker.VERSION = '1.13.12';\r\n\r\n // part of this is duplicated in i18n/defaults-en_US.js. Make sure to update both.\r\n Selectpicker.DEFAULTS = {\r\n noneSelectedText: 'Nothing selected',\r\n noneResultsText: 'No results matched {0}',\r\n countSelectedText: function (numSelected, numTotal) {\r\n return (numSelected == 1) ? '{0} item selected' : '{0} items selected';\r\n },\r\n maxOptionsText: function (numAll, numGroup) {\r\n return [\r\n (numAll == 1) ? 'Limit reached ({n} item max)' : 'Limit reached ({n} items max)',\r\n (numGroup == 1) ? 'Group limit reached ({n} item max)' : 'Group limit reached ({n} items max)'\r\n ];\r\n },\r\n selectAllText: 'Select All',\r\n deselectAllText: 'Deselect All',\r\n doneButton: false,\r\n doneButtonText: 'Close',\r\n multipleSeparator: ', ',\r\n styleBase: 'btn',\r\n style: classNames.BUTTONCLASS,\r\n size: 'auto',\r\n title: null,\r\n selectedTextFormat: 'values',\r\n width: false,\r\n container: false,\r\n hideDisabled: false,\r\n showSubtext: false,\r\n showIcon: true,\r\n showContent: true,\r\n dropupAuto: true,\r\n header: false,\r\n liveSearch: false,\r\n liveSearchPlaceholder: null,\r\n liveSearchNormalize: false,\r\n liveSearchStyle: 'contains',\r\n actionsBox: false,\r\n iconBase: classNames.ICONBASE,\r\n tickIcon: classNames.TICKICON,\r\n showTick: false,\r\n template: {\r\n caret: ''\r\n },\r\n maxOptions: false,\r\n mobile: false,\r\n selectOnTab: false,\r\n dropdownAlignRight: false,\r\n windowPadding: 0,\r\n virtualScroll: 600,\r\n display: false,\r\n sanitize: true,\r\n sanitizeFn: null,\r\n whiteList: DefaultWhitelist\r\n };\r\n\r\n Selectpicker.prototype = {\r\n\r\n constructor: Selectpicker,\r\n\r\n init: function () {\r\n var that = this,\r\n id = this.$element.attr('id');\r\n\r\n selectId++;\r\n this.selectId = 'bs-select-' + selectId;\r\n\r\n this.$element[0].classList.add('bs-select-hidden');\r\n\r\n this.multiple = this.$element.prop('multiple');\r\n this.autofocus = this.$element.prop('autofocus');\r\n\r\n if (this.$element[0].classList.contains('show-tick')) {\r\n this.options.showTick = true;\r\n }\r\n\r\n this.$newElement = this.createDropdown();\r\n this.$element\r\n .after(this.$newElement)\r\n .prependTo(this.$newElement);\r\n\r\n this.$button = this.$newElement.children('button');\r\n this.$menu = this.$newElement.children(Selector.MENU);\r\n this.$menuInner = this.$menu.children('.inner');\r\n this.$searchbox = this.$menu.find('input');\r\n\r\n this.$element[0].classList.remove('bs-select-hidden');\r\n\r\n if (this.options.dropdownAlignRight === true) this.$menu[0].classList.add(classNames.MENURIGHT);\r\n\r\n if (typeof id !== 'undefined') {\r\n this.$button.attr('data-id', id);\r\n }\r\n\r\n this.checkDisabled();\r\n this.clickListener();\r\n\r\n if (this.options.liveSearch) {\r\n this.liveSearchListener();\r\n this.focusedParent = this.$searchbox[0];\r\n } else {\r\n this.focusedParent = this.$menuInner[0];\r\n }\r\n\r\n this.setStyle();\r\n this.render();\r\n this.setWidth();\r\n if (this.options.container) {\r\n this.selectPosition();\r\n } else {\r\n this.$element.on('hide' + EVENT_KEY, function () {\r\n if (that.isVirtual()) {\r\n // empty menu on close\r\n var menuInner = that.$menuInner[0],\r\n emptyMenu = menuInner.firstChild.cloneNode(false);\r\n\r\n // replace the existing UL with an empty one - this is faster than $.empty() or innerHTML = ''\r\n menuInner.replaceChild(emptyMenu, menuInner.firstChild);\r\n menuInner.scrollTop = 0;\r\n }\r\n });\r\n }\r\n this.$menu.data('this', this);\r\n this.$newElement.data('this', this);\r\n if (this.options.mobile) this.mobile();\r\n\r\n this.$newElement.on({\r\n 'hide.bs.dropdown': function (e) {\r\n that.$element.trigger('hide' + EVENT_KEY, e);\r\n },\r\n 'hidden.bs.dropdown': function (e) {\r\n that.$element.trigger('hidden' + EVENT_KEY, e);\r\n },\r\n 'show.bs.dropdown': function (e) {\r\n that.$element.trigger('show' + EVENT_KEY, e);\r\n },\r\n 'shown.bs.dropdown': function (e) {\r\n that.$element.trigger('shown' + EVENT_KEY, e);\r\n }\r\n });\r\n\r\n if (that.$element[0].hasAttribute('required')) {\r\n this.$element.on('invalid' + EVENT_KEY, function () {\r\n that.$button[0].classList.add('bs-invalid');\r\n\r\n that.$element\r\n .on('shown' + EVENT_KEY + '.invalid', function () {\r\n that.$element\r\n .val(that.$element.val()) // set the value to hide the validation message in Chrome when menu is opened\r\n .off('shown' + EVENT_KEY + '.invalid');\r\n })\r\n .on('rendered' + EVENT_KEY, function () {\r\n // if select is no longer invalid, remove the bs-invalid class\r\n if (this.validity.valid) that.$button[0].classList.remove('bs-invalid');\r\n that.$element.off('rendered' + EVENT_KEY);\r\n });\r\n\r\n that.$button.on('blur' + EVENT_KEY, function () {\r\n that.$element.trigger('focus').trigger('blur');\r\n that.$button.off('blur' + EVENT_KEY);\r\n });\r\n });\r\n }\r\n\r\n setTimeout(function () {\r\n that.createLi();\r\n that.$element.trigger('loaded' + EVENT_KEY);\r\n });\r\n },\r\n\r\n createDropdown: function () {\r\n // Options\r\n // If we are multiple or showTick option is set, then add the show-tick class\r\n var showTick = (this.multiple || this.options.showTick) ? ' show-tick' : '',\r\n multiselectable = this.multiple ? ' aria-multiselectable=\"true\"' : '',\r\n inputGroup = '',\r\n autofocus = this.autofocus ? ' autofocus' : '';\r\n\r\n if (version.major < 4 && this.$element.parent().hasClass('input-group')) {\r\n inputGroup = ' input-group-btn';\r\n }\r\n\r\n // Elements\r\n var drop,\r\n header = '',\r\n searchbox = '',\r\n actionsbox = '',\r\n donebutton = '';\r\n\r\n if (this.options.header) {\r\n header =\r\n '
    ' +\r\n '' +\r\n this.options.header +\r\n '
    ';\r\n }\r\n\r\n if (this.options.liveSearch) {\r\n searchbox =\r\n '
    ' +\r\n '' +\r\n '
    ';\r\n }\r\n\r\n if (this.multiple && this.options.actionsBox) {\r\n actionsbox =\r\n '
    ' +\r\n '
    ' +\r\n '' +\r\n '' +\r\n '
    ' +\r\n '
    ';\r\n }\r\n\r\n if (this.multiple && this.options.doneButton) {\r\n donebutton =\r\n '
    ' +\r\n '
    ' +\r\n '' +\r\n '
    ' +\r\n '
    ';\r\n }\r\n\r\n drop =\r\n '
    ' +\r\n '' +\r\n '
    ' +\r\n header +\r\n searchbox +\r\n actionsbox +\r\n '
    ' +\r\n '
      ' +\r\n '
    ' +\r\n '
    ' +\r\n donebutton +\r\n '
    ' +\r\n '
    ';\r\n\r\n return $(drop);\r\n },\r\n\r\n setPositionData: function () {\r\n this.selectpicker.view.canHighlight = [];\r\n this.selectpicker.view.size = 0;\r\n\r\n for (var i = 0; i < this.selectpicker.current.data.length; i++) {\r\n var li = this.selectpicker.current.data[i],\r\n canHighlight = true;\r\n\r\n if (li.type === 'divider') {\r\n canHighlight = false;\r\n li.height = this.sizeInfo.dividerHeight;\r\n } else if (li.type === 'optgroup-label') {\r\n canHighlight = false;\r\n li.height = this.sizeInfo.dropdownHeaderHeight;\r\n } else {\r\n li.height = this.sizeInfo.liHeight;\r\n }\r\n\r\n if (li.disabled) canHighlight = false;\r\n\r\n this.selectpicker.view.canHighlight.push(canHighlight);\r\n\r\n if (canHighlight) {\r\n this.selectpicker.view.size++;\r\n li.posinset = this.selectpicker.view.size;\r\n }\r\n\r\n li.position = (i === 0 ? 0 : this.selectpicker.current.data[i - 1].position) + li.height;\r\n }\r\n },\r\n\r\n isVirtual: function () {\r\n return (this.options.virtualScroll !== false) && (this.selectpicker.main.elements.length >= this.options.virtualScroll) || this.options.virtualScroll === true;\r\n },\r\n\r\n createView: function (isSearching, setSize, refresh) {\r\n var that = this,\r\n scrollTop = 0,\r\n active = [],\r\n selected,\r\n prevActive;\r\n\r\n this.selectpicker.current = isSearching ? this.selectpicker.search : this.selectpicker.main;\r\n\r\n this.setPositionData();\r\n\r\n if (setSize) {\r\n if (refresh) {\r\n scrollTop = this.$menuInner[0].scrollTop;\r\n } else if (!that.multiple) {\r\n var element = that.$element[0],\r\n selectedIndex = (element.options[element.selectedIndex] || {}).liIndex;\r\n\r\n if (typeof selectedIndex === 'number' && that.options.size !== false) {\r\n var selectedData = that.selectpicker.main.data[selectedIndex],\r\n position = selectedData && selectedData.position;\r\n\r\n if (position) {\r\n scrollTop = position - ((that.sizeInfo.menuInnerHeight + that.sizeInfo.liHeight) / 2);\r\n }\r\n }\r\n }\r\n }\r\n\r\n scroll(scrollTop, true);\r\n\r\n this.$menuInner.off('scroll.createView').on('scroll.createView', function (e, updateValue) {\r\n if (!that.noScroll) scroll(this.scrollTop, updateValue);\r\n that.noScroll = false;\r\n });\r\n\r\n function scroll (scrollTop, init) {\r\n var size = that.selectpicker.current.elements.length,\r\n chunks = [],\r\n chunkSize,\r\n chunkCount,\r\n firstChunk,\r\n lastChunk,\r\n currentChunk,\r\n prevPositions,\r\n positionIsDifferent,\r\n previousElements,\r\n menuIsDifferent = true,\r\n isVirtual = that.isVirtual();\r\n\r\n that.selectpicker.view.scrollTop = scrollTop;\r\n\r\n chunkSize = Math.ceil(that.sizeInfo.menuInnerHeight / that.sizeInfo.liHeight * 1.5); // number of options in a chunk\r\n chunkCount = Math.round(size / chunkSize) || 1; // number of chunks\r\n\r\n for (var i = 0; i < chunkCount; i++) {\r\n var endOfChunk = (i + 1) * chunkSize;\r\n\r\n if (i === chunkCount - 1) {\r\n endOfChunk = size;\r\n }\r\n\r\n chunks[i] = [\r\n (i) * chunkSize + (!i ? 0 : 1),\r\n endOfChunk\r\n ];\r\n\r\n if (!size) break;\r\n\r\n if (currentChunk === undefined && scrollTop - 1 <= that.selectpicker.current.data[endOfChunk - 1].position - that.sizeInfo.menuInnerHeight) {\r\n currentChunk = i;\r\n }\r\n }\r\n\r\n if (currentChunk === undefined) currentChunk = 0;\r\n\r\n prevPositions = [that.selectpicker.view.position0, that.selectpicker.view.position1];\r\n\r\n // always display previous, current, and next chunks\r\n firstChunk = Math.max(0, currentChunk - 1);\r\n lastChunk = Math.min(chunkCount - 1, currentChunk + 1);\r\n\r\n that.selectpicker.view.position0 = isVirtual === false ? 0 : (Math.max(0, chunks[firstChunk][0]) || 0);\r\n that.selectpicker.view.position1 = isVirtual === false ? size : (Math.min(size, chunks[lastChunk][1]) || 0);\r\n\r\n positionIsDifferent = prevPositions[0] !== that.selectpicker.view.position0 || prevPositions[1] !== that.selectpicker.view.position1;\r\n\r\n if (that.activeIndex !== undefined) {\r\n prevActive = that.selectpicker.main.elements[that.prevActiveIndex];\r\n active = that.selectpicker.main.elements[that.activeIndex];\r\n selected = that.selectpicker.main.elements[that.selectedIndex];\r\n\r\n if (init) {\r\n if (that.activeIndex !== that.selectedIndex) {\r\n that.defocusItem(active);\r\n }\r\n that.activeIndex = undefined;\r\n }\r\n\r\n if (that.activeIndex && that.activeIndex !== that.selectedIndex) {\r\n that.defocusItem(selected);\r\n }\r\n }\r\n\r\n if (that.prevActiveIndex !== undefined && that.prevActiveIndex !== that.activeIndex && that.prevActiveIndex !== that.selectedIndex) {\r\n that.defocusItem(prevActive);\r\n }\r\n\r\n if (init || positionIsDifferent) {\r\n previousElements = that.selectpicker.view.visibleElements ? that.selectpicker.view.visibleElements.slice() : [];\r\n\r\n if (isVirtual === false) {\r\n that.selectpicker.view.visibleElements = that.selectpicker.current.elements;\r\n } else {\r\n that.selectpicker.view.visibleElements = that.selectpicker.current.elements.slice(that.selectpicker.view.position0, that.selectpicker.view.position1);\r\n }\r\n\r\n that.setOptionStatus();\r\n\r\n // if searching, check to make sure the list has actually been updated before updating DOM\r\n // this prevents unnecessary repaints\r\n if (isSearching || (isVirtual === false && init)) menuIsDifferent = !isEqual(previousElements, that.selectpicker.view.visibleElements);\r\n\r\n // if virtual scroll is disabled and not searching,\r\n // menu should never need to be updated more than once\r\n if ((init || isVirtual === true) && menuIsDifferent) {\r\n var menuInner = that.$menuInner[0],\r\n menuFragment = document.createDocumentFragment(),\r\n emptyMenu = menuInner.firstChild.cloneNode(false),\r\n marginTop,\r\n marginBottom,\r\n elements = that.selectpicker.view.visibleElements,\r\n toSanitize = [];\r\n\r\n // replace the existing UL with an empty one - this is faster than $.empty()\r\n menuInner.replaceChild(emptyMenu, menuInner.firstChild);\r\n\r\n for (var i = 0, visibleElementsLen = elements.length; i < visibleElementsLen; i++) {\r\n var element = elements[i],\r\n elText,\r\n elementData;\r\n\r\n if (that.options.sanitize) {\r\n elText = element.lastChild;\r\n\r\n if (elText) {\r\n elementData = that.selectpicker.current.data[i + that.selectpicker.view.position0];\r\n\r\n if (elementData && elementData.content && !elementData.sanitized) {\r\n toSanitize.push(elText);\r\n elementData.sanitized = true;\r\n }\r\n }\r\n }\r\n\r\n menuFragment.appendChild(element);\r\n }\r\n\r\n if (that.options.sanitize && toSanitize.length) {\r\n sanitizeHtml(toSanitize, that.options.whiteList, that.options.sanitizeFn);\r\n }\r\n\r\n if (isVirtual === true) {\r\n marginTop = (that.selectpicker.view.position0 === 0 ? 0 : that.selectpicker.current.data[that.selectpicker.view.position0 - 1].position);\r\n marginBottom = (that.selectpicker.view.position1 > size - 1 ? 0 : that.selectpicker.current.data[size - 1].position - that.selectpicker.current.data[that.selectpicker.view.position1 - 1].position);\r\n\r\n menuInner.firstChild.style.marginTop = marginTop + 'px';\r\n menuInner.firstChild.style.marginBottom = marginBottom + 'px';\r\n } else {\r\n menuInner.firstChild.style.marginTop = 0;\r\n menuInner.firstChild.style.marginBottom = 0;\r\n }\r\n\r\n menuInner.firstChild.appendChild(menuFragment);\r\n\r\n // if an option is encountered that is wider than the current menu width, update the menu width accordingly\r\n // switch to ResizeObserver with increased browser support\r\n if (isVirtual === true && that.sizeInfo.hasScrollBar) {\r\n var menuInnerInnerWidth = menuInner.firstChild.offsetWidth;\r\n\r\n if (init && menuInnerInnerWidth < that.sizeInfo.menuInnerInnerWidth && that.sizeInfo.totalMenuWidth > that.sizeInfo.selectWidth) {\r\n menuInner.firstChild.style.minWidth = that.sizeInfo.menuInnerInnerWidth + 'px';\r\n } else if (menuInnerInnerWidth > that.sizeInfo.menuInnerInnerWidth) {\r\n // set to 0 to get actual width of menu\r\n that.$menu[0].style.minWidth = 0;\r\n\r\n var actualMenuWidth = menuInner.firstChild.offsetWidth;\r\n\r\n if (actualMenuWidth > that.sizeInfo.menuInnerInnerWidth) {\r\n that.sizeInfo.menuInnerInnerWidth = actualMenuWidth;\r\n menuInner.firstChild.style.minWidth = that.sizeInfo.menuInnerInnerWidth + 'px';\r\n }\r\n\r\n // reset to default CSS styling\r\n that.$menu[0].style.minWidth = '';\r\n }\r\n }\r\n }\r\n }\r\n\r\n that.prevActiveIndex = that.activeIndex;\r\n\r\n if (!that.options.liveSearch) {\r\n that.$menuInner.trigger('focus');\r\n } else if (isSearching && init) {\r\n var index = 0,\r\n newActive;\r\n\r\n if (!that.selectpicker.view.canHighlight[index]) {\r\n index = 1 + that.selectpicker.view.canHighlight.slice(1).indexOf(true);\r\n }\r\n\r\n newActive = that.selectpicker.view.visibleElements[index];\r\n\r\n that.defocusItem(that.selectpicker.view.currentActive);\r\n\r\n that.activeIndex = (that.selectpicker.current.data[index] || {}).index;\r\n\r\n that.focusItem(newActive);\r\n }\r\n }\r\n\r\n $(window)\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + '.createView')\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + '.createView', function () {\r\n var isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (isActive) scroll(that.$menuInner[0].scrollTop);\r\n });\r\n },\r\n\r\n focusItem: function (li, liData, noStyle) {\r\n if (li) {\r\n liData = liData || this.selectpicker.main.data[this.activeIndex];\r\n var a = li.firstChild;\r\n\r\n if (a) {\r\n a.setAttribute('aria-setsize', this.selectpicker.view.size);\r\n a.setAttribute('aria-posinset', liData.posinset);\r\n\r\n if (noStyle !== true) {\r\n this.focusedParent.setAttribute('aria-activedescendant', a.id);\r\n li.classList.add('active');\r\n a.classList.add('active');\r\n }\r\n }\r\n }\r\n },\r\n\r\n defocusItem: function (li) {\r\n if (li) {\r\n li.classList.remove('active');\r\n if (li.firstChild) li.firstChild.classList.remove('active');\r\n }\r\n },\r\n\r\n setPlaceholder: function () {\r\n var updateIndex = false;\r\n\r\n if (this.options.title && !this.multiple) {\r\n if (!this.selectpicker.view.titleOption) this.selectpicker.view.titleOption = document.createElement('option');\r\n\r\n // this option doesn't create a new
  • element, but does add a new option at the start,\r\n // so startIndex should increase to prevent having to check every option for the bs-title-option class\r\n updateIndex = true;\r\n\r\n var element = this.$element[0],\r\n isSelected = false,\r\n titleNotAppended = !this.selectpicker.view.titleOption.parentNode;\r\n\r\n if (titleNotAppended) {\r\n // Use native JS to prepend option (faster)\r\n this.selectpicker.view.titleOption.className = 'bs-title-option';\r\n this.selectpicker.view.titleOption.value = '';\r\n\r\n // Check if selected or data-selected attribute is already set on an option. If not, select the titleOption option.\r\n // the selected item may have been changed by user or programmatically before the bootstrap select plugin runs,\r\n // if so, the select will have the data-selected attribute\r\n var $opt = $(element.options[element.selectedIndex]);\r\n isSelected = $opt.attr('selected') === undefined && this.$element.data('selected') === undefined;\r\n }\r\n\r\n if (titleNotAppended || this.selectpicker.view.titleOption.index !== 0) {\r\n element.insertBefore(this.selectpicker.view.titleOption, element.firstChild);\r\n }\r\n\r\n // Set selected *after* appending to select,\r\n // otherwise the option doesn't get selected in IE\r\n // set using selectedIndex, as setting the selected attr to true here doesn't work in IE11\r\n if (isSelected) element.selectedIndex = 0;\r\n }\r\n\r\n return updateIndex;\r\n },\r\n\r\n createLi: function () {\r\n var that = this,\r\n iconBase = this.options.iconBase,\r\n optionSelector = ':not([hidden]):not([data-hidden=\"true\"])',\r\n mainElements = [],\r\n mainData = [],\r\n widestOptionLength = 0,\r\n optID = 0,\r\n startIndex = this.setPlaceholder() ? 1 : 0; // append the titleOption if necessary and skip the first option in the loop\r\n\r\n if (this.options.hideDisabled) optionSelector += ':not(:disabled)';\r\n\r\n if ((that.options.showTick || that.multiple) && !elementTemplates.checkMark.parentNode) {\r\n elementTemplates.checkMark.className = iconBase + ' ' + that.options.tickIcon + ' check-mark';\r\n elementTemplates.a.appendChild(elementTemplates.checkMark);\r\n }\r\n\r\n var selectOptions = this.$element[0].querySelectorAll('select > *' + optionSelector);\r\n\r\n function addDivider (config) {\r\n var previousData = mainData[mainData.length - 1];\r\n\r\n // ensure optgroup doesn't create back-to-back dividers\r\n if (\r\n previousData &&\r\n previousData.type === 'divider' &&\r\n (previousData.optID || config.optID)\r\n ) {\r\n return;\r\n }\r\n\r\n config = config || {};\r\n config.type = 'divider';\r\n\r\n mainElements.push(\r\n generateOption.li(\r\n false,\r\n classNames.DIVIDER,\r\n (config.optID ? config.optID + 'div' : undefined)\r\n )\r\n );\r\n\r\n mainData.push(config);\r\n }\r\n\r\n function addOption (option, config) {\r\n config = config || {};\r\n\r\n config.divider = option.getAttribute('data-divider') === 'true';\r\n\r\n if (config.divider) {\r\n addDivider({\r\n optID: config.optID\r\n });\r\n } else {\r\n var liIndex = mainData.length,\r\n cssText = option.style.cssText,\r\n inlineStyle = cssText ? htmlEscape(cssText) : '',\r\n optionClass = (option.className || '') + (config.optgroupClass || '');\r\n\r\n if (config.optID) optionClass = 'opt ' + optionClass;\r\n\r\n config.text = option.textContent;\r\n\r\n config.content = option.getAttribute('data-content');\r\n config.tokens = option.getAttribute('data-tokens');\r\n config.subtext = option.getAttribute('data-subtext');\r\n config.icon = option.getAttribute('data-icon');\r\n config.iconBase = iconBase;\r\n\r\n var textElement = generateOption.text(config);\r\n var liElement = generateOption.li(\r\n generateOption.a(\r\n textElement,\r\n optionClass,\r\n inlineStyle\r\n ),\r\n '',\r\n config.optID\r\n );\r\n\r\n if (liElement.firstChild) {\r\n liElement.firstChild.id = that.selectId + '-' + liIndex;\r\n }\r\n\r\n mainElements.push(liElement);\r\n\r\n option.liIndex = liIndex;\r\n\r\n config.display = config.content || config.text;\r\n config.type = 'option';\r\n config.index = liIndex;\r\n config.option = option;\r\n config.disabled = config.disabled || option.disabled;\r\n\r\n mainData.push(config);\r\n\r\n var combinedLength = 0;\r\n\r\n // count the number of characters in the option - not perfect, but should work in most cases\r\n if (config.display) combinedLength += config.display.length;\r\n if (config.subtext) combinedLength += config.subtext.length;\r\n // if there is an icon, ensure this option's width is checked\r\n if (config.icon) combinedLength += 1;\r\n\r\n if (combinedLength > widestOptionLength) {\r\n widestOptionLength = combinedLength;\r\n\r\n // guess which option is the widest\r\n // use this when calculating menu width\r\n // not perfect, but it's fast, and the width will be updating accordingly when scrolling\r\n that.selectpicker.view.widestOption = mainElements[mainElements.length - 1];\r\n }\r\n }\r\n }\r\n\r\n function addOptgroup (index, selectOptions) {\r\n var optgroup = selectOptions[index],\r\n previous = selectOptions[index - 1],\r\n next = selectOptions[index + 1],\r\n options = optgroup.querySelectorAll('option' + optionSelector);\r\n\r\n if (!options.length) return;\r\n\r\n var config = {\r\n label: htmlEscape(optgroup.label),\r\n subtext: optgroup.getAttribute('data-subtext'),\r\n icon: optgroup.getAttribute('data-icon'),\r\n iconBase: iconBase\r\n },\r\n optgroupClass = ' ' + (optgroup.className || ''),\r\n headerIndex,\r\n lastIndex;\r\n\r\n optID++;\r\n\r\n if (previous) {\r\n addDivider({ optID: optID });\r\n }\r\n\r\n var labelElement = generateOption.label(config);\r\n\r\n mainElements.push(\r\n generateOption.li(labelElement, 'dropdown-header' + optgroupClass, optID)\r\n );\r\n\r\n mainData.push({\r\n display: config.label,\r\n subtext: config.subtext,\r\n type: 'optgroup-label',\r\n optID: optID\r\n });\r\n\r\n for (var j = 0, len = options.length; j < len; j++) {\r\n var option = options[j];\r\n\r\n if (j === 0) {\r\n headerIndex = mainData.length - 1;\r\n lastIndex = headerIndex + len;\r\n }\r\n\r\n addOption(option, {\r\n headerIndex: headerIndex,\r\n lastIndex: lastIndex,\r\n optID: optID,\r\n optgroupClass: optgroupClass,\r\n disabled: optgroup.disabled\r\n });\r\n }\r\n\r\n if (next) {\r\n addDivider({ optID: optID });\r\n }\r\n }\r\n\r\n for (var len = selectOptions.length; startIndex < len; startIndex++) {\r\n var item = selectOptions[startIndex];\r\n\r\n if (item.tagName !== 'OPTGROUP') {\r\n addOption(item, {});\r\n } else {\r\n addOptgroup(startIndex, selectOptions);\r\n }\r\n }\r\n\r\n this.selectpicker.main.elements = mainElements;\r\n this.selectpicker.main.data = mainData;\r\n\r\n this.selectpicker.current = this.selectpicker.main;\r\n },\r\n\r\n findLis: function () {\r\n return this.$menuInner.find('.inner > li');\r\n },\r\n\r\n render: function () {\r\n // ensure titleOption is appended and selected (if necessary) before getting selectedOptions\r\n this.setPlaceholder();\r\n\r\n var that = this,\r\n element = this.$element[0],\r\n selectedOptions = getSelectedOptions(element, this.options.hideDisabled),\r\n selectedCount = selectedOptions.length,\r\n button = this.$button[0],\r\n buttonInner = button.querySelector('.filter-option-inner-inner'),\r\n multipleSeparator = document.createTextNode(this.options.multipleSeparator),\r\n titleFragment = elementTemplates.fragment.cloneNode(false),\r\n showCount,\r\n countMax,\r\n hasContent = false;\r\n\r\n button.classList.toggle('bs-placeholder', that.multiple ? !selectedCount : !getSelectValues(element, selectedOptions));\r\n\r\n this.tabIndex();\r\n\r\n if (this.options.selectedTextFormat === 'static') {\r\n titleFragment = generateOption.text({ text: this.options.title }, true);\r\n } else {\r\n showCount = this.multiple && this.options.selectedTextFormat.indexOf('count') !== -1 && selectedCount > 1;\r\n\r\n // determine if the number of selected options will be shown (showCount === true)\r\n if (showCount) {\r\n countMax = this.options.selectedTextFormat.split('>');\r\n showCount = (countMax.length > 1 && selectedCount > countMax[1]) || (countMax.length === 1 && selectedCount >= 2);\r\n }\r\n\r\n // only loop through all selected options if the count won't be shown\r\n if (showCount === false) {\r\n for (var selectedIndex = 0; selectedIndex < selectedCount; selectedIndex++) {\r\n if (selectedIndex < 50) {\r\n var option = selectedOptions[selectedIndex],\r\n titleOptions = {},\r\n thisData = {\r\n content: option.getAttribute('data-content'),\r\n subtext: option.getAttribute('data-subtext'),\r\n icon: option.getAttribute('data-icon')\r\n };\r\n\r\n if (this.multiple && selectedIndex > 0) {\r\n titleFragment.appendChild(multipleSeparator.cloneNode(false));\r\n }\r\n\r\n if (option.title) {\r\n titleOptions.text = option.title;\r\n } else if (thisData.content && that.options.showContent) {\r\n titleOptions.content = thisData.content.toString();\r\n hasContent = true;\r\n } else {\r\n if (that.options.showIcon) {\r\n titleOptions.icon = thisData.icon;\r\n titleOptions.iconBase = this.options.iconBase;\r\n }\r\n if (that.options.showSubtext && !that.multiple && thisData.subtext) titleOptions.subtext = ' ' + thisData.subtext;\r\n titleOptions.text = option.textContent.trim();\r\n }\r\n\r\n titleFragment.appendChild(generateOption.text(titleOptions, true));\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n // add ellipsis\r\n if (selectedCount > 49) {\r\n titleFragment.appendChild(document.createTextNode('...'));\r\n }\r\n } else {\r\n var optionSelector = ':not([hidden]):not([data-hidden=\"true\"]):not([data-divider=\"true\"])';\r\n if (this.options.hideDisabled) optionSelector += ':not(:disabled)';\r\n\r\n // If this is a multiselect, and selectedTextFormat is count, then show 1 of 2 selected, etc.\r\n var totalCount = this.$element[0].querySelectorAll('select > option' + optionSelector + ', optgroup' + optionSelector + ' option' + optionSelector).length,\r\n tr8nText = (typeof this.options.countSelectedText === 'function') ? this.options.countSelectedText(selectedCount, totalCount) : this.options.countSelectedText;\r\n\r\n titleFragment = generateOption.text({\r\n text: tr8nText.replace('{0}', selectedCount.toString()).replace('{1}', totalCount.toString())\r\n }, true);\r\n }\r\n }\r\n\r\n if (this.options.title == undefined) {\r\n // use .attr to ensure undefined is returned if title attribute is not set\r\n this.options.title = this.$element.attr('title');\r\n }\r\n\r\n // If the select doesn't have a title, then use the default, or if nothing is set at all, use noneSelectedText\r\n if (!titleFragment.childNodes.length) {\r\n titleFragment = generateOption.text({\r\n text: typeof this.options.title !== 'undefined' ? this.options.title : this.options.noneSelectedText\r\n }, true);\r\n }\r\n\r\n // strip all HTML tags and trim the result, then unescape any escaped tags\r\n button.title = titleFragment.textContent.replace(/<[^>]*>?/g, '').trim();\r\n\r\n if (this.options.sanitize && hasContent) {\r\n sanitizeHtml([titleFragment], that.options.whiteList, that.options.sanitizeFn);\r\n }\r\n\r\n buttonInner.innerHTML = '';\r\n buttonInner.appendChild(titleFragment);\r\n\r\n if (version.major < 4 && this.$newElement[0].classList.contains('bs3-has-addon')) {\r\n var filterExpand = button.querySelector('.filter-expand'),\r\n clone = buttonInner.cloneNode(true);\r\n\r\n clone.className = 'filter-expand';\r\n\r\n if (filterExpand) {\r\n button.replaceChild(clone, filterExpand);\r\n } else {\r\n button.appendChild(clone);\r\n }\r\n }\r\n\r\n this.$element.trigger('rendered' + EVENT_KEY);\r\n },\r\n\r\n /**\r\n * @param [style]\r\n * @param [status]\r\n */\r\n setStyle: function (newStyle, status) {\r\n var button = this.$button[0],\r\n newElement = this.$newElement[0],\r\n style = this.options.style.trim(),\r\n buttonClass;\r\n\r\n if (this.$element.attr('class')) {\r\n this.$newElement.addClass(this.$element.attr('class').replace(/selectpicker|mobile-device|bs-select-hidden|validate\\[.*\\]/gi, ''));\r\n }\r\n\r\n if (version.major < 4) {\r\n newElement.classList.add('bs3');\r\n\r\n if (newElement.parentNode.classList.contains('input-group') &&\r\n (newElement.previousElementSibling || newElement.nextElementSibling) &&\r\n (newElement.previousElementSibling || newElement.nextElementSibling).classList.contains('input-group-addon')\r\n ) {\r\n newElement.classList.add('bs3-has-addon');\r\n }\r\n }\r\n\r\n if (newStyle) {\r\n buttonClass = newStyle.trim();\r\n } else {\r\n buttonClass = style;\r\n }\r\n\r\n if (status == 'add') {\r\n if (buttonClass) button.classList.add.apply(button.classList, buttonClass.split(' '));\r\n } else if (status == 'remove') {\r\n if (buttonClass) button.classList.remove.apply(button.classList, buttonClass.split(' '));\r\n } else {\r\n if (style) button.classList.remove.apply(button.classList, style.split(' '));\r\n if (buttonClass) button.classList.add.apply(button.classList, buttonClass.split(' '));\r\n }\r\n },\r\n\r\n liHeight: function (refresh) {\r\n if (!refresh && (this.options.size === false || this.sizeInfo)) return;\r\n\r\n if (!this.sizeInfo) this.sizeInfo = {};\r\n\r\n var newElement = document.createElement('div'),\r\n menu = document.createElement('div'),\r\n menuInner = document.createElement('div'),\r\n menuInnerInner = document.createElement('ul'),\r\n divider = document.createElement('li'),\r\n dropdownHeader = document.createElement('li'),\r\n li = document.createElement('li'),\r\n a = document.createElement('a'),\r\n text = document.createElement('span'),\r\n header = this.options.header && this.$menu.find('.' + classNames.POPOVERHEADER).length > 0 ? this.$menu.find('.' + classNames.POPOVERHEADER)[0].cloneNode(true) : null,\r\n search = this.options.liveSearch ? document.createElement('div') : null,\r\n actions = this.options.actionsBox && this.multiple && this.$menu.find('.bs-actionsbox').length > 0 ? this.$menu.find('.bs-actionsbox')[0].cloneNode(true) : null,\r\n doneButton = this.options.doneButton && this.multiple && this.$menu.find('.bs-donebutton').length > 0 ? this.$menu.find('.bs-donebutton')[0].cloneNode(true) : null,\r\n firstOption = this.$element.find('option')[0];\r\n\r\n this.sizeInfo.selectWidth = this.$newElement[0].offsetWidth;\r\n\r\n text.className = 'text';\r\n a.className = 'dropdown-item ' + (firstOption ? firstOption.className : '');\r\n newElement.className = this.$menu[0].parentNode.className + ' ' + classNames.SHOW;\r\n newElement.style.width = 0; // ensure button width doesn't affect natural width of menu when calculating\r\n if (this.options.width === 'auto') menu.style.minWidth = 0;\r\n menu.className = classNames.MENU + ' ' + classNames.SHOW;\r\n menuInner.className = 'inner ' + classNames.SHOW;\r\n menuInnerInner.className = classNames.MENU + ' inner ' + (version.major === '4' ? classNames.SHOW : '');\r\n divider.className = classNames.DIVIDER;\r\n dropdownHeader.className = 'dropdown-header';\r\n\r\n text.appendChild(document.createTextNode('\\u200b'));\r\n a.appendChild(text);\r\n li.appendChild(a);\r\n dropdownHeader.appendChild(text.cloneNode(true));\r\n\r\n if (this.selectpicker.view.widestOption) {\r\n menuInnerInner.appendChild(this.selectpicker.view.widestOption.cloneNode(true));\r\n }\r\n\r\n menuInnerInner.appendChild(li);\r\n menuInnerInner.appendChild(divider);\r\n menuInnerInner.appendChild(dropdownHeader);\r\n if (header) menu.appendChild(header);\r\n if (search) {\r\n var input = document.createElement('input');\r\n search.className = 'bs-searchbox';\r\n input.className = 'form-control';\r\n search.appendChild(input);\r\n menu.appendChild(search);\r\n }\r\n if (actions) menu.appendChild(actions);\r\n menuInner.appendChild(menuInnerInner);\r\n menu.appendChild(menuInner);\r\n if (doneButton) menu.appendChild(doneButton);\r\n newElement.appendChild(menu);\r\n\r\n document.body.appendChild(newElement);\r\n\r\n var liHeight = li.offsetHeight,\r\n dropdownHeaderHeight = dropdownHeader ? dropdownHeader.offsetHeight : 0,\r\n headerHeight = header ? header.offsetHeight : 0,\r\n searchHeight = search ? search.offsetHeight : 0,\r\n actionsHeight = actions ? actions.offsetHeight : 0,\r\n doneButtonHeight = doneButton ? doneButton.offsetHeight : 0,\r\n dividerHeight = $(divider).outerHeight(true),\r\n // fall back to jQuery if getComputedStyle is not supported\r\n menuStyle = window.getComputedStyle ? window.getComputedStyle(menu) : false,\r\n menuWidth = menu.offsetWidth,\r\n $menu = menuStyle ? null : $(menu),\r\n menuPadding = {\r\n vert: toInteger(menuStyle ? menuStyle.paddingTop : $menu.css('paddingTop')) +\r\n toInteger(menuStyle ? menuStyle.paddingBottom : $menu.css('paddingBottom')) +\r\n toInteger(menuStyle ? menuStyle.borderTopWidth : $menu.css('borderTopWidth')) +\r\n toInteger(menuStyle ? menuStyle.borderBottomWidth : $menu.css('borderBottomWidth')),\r\n horiz: toInteger(menuStyle ? menuStyle.paddingLeft : $menu.css('paddingLeft')) +\r\n toInteger(menuStyle ? menuStyle.paddingRight : $menu.css('paddingRight')) +\r\n toInteger(menuStyle ? menuStyle.borderLeftWidth : $menu.css('borderLeftWidth')) +\r\n toInteger(menuStyle ? menuStyle.borderRightWidth : $menu.css('borderRightWidth'))\r\n },\r\n menuExtras = {\r\n vert: menuPadding.vert +\r\n toInteger(menuStyle ? menuStyle.marginTop : $menu.css('marginTop')) +\r\n toInteger(menuStyle ? menuStyle.marginBottom : $menu.css('marginBottom')) + 2,\r\n horiz: menuPadding.horiz +\r\n toInteger(menuStyle ? menuStyle.marginLeft : $menu.css('marginLeft')) +\r\n toInteger(menuStyle ? menuStyle.marginRight : $menu.css('marginRight')) + 2\r\n },\r\n scrollBarWidth;\r\n\r\n menuInner.style.overflowY = 'scroll';\r\n\r\n scrollBarWidth = menu.offsetWidth - menuWidth;\r\n\r\n document.body.removeChild(newElement);\r\n\r\n this.sizeInfo.liHeight = liHeight;\r\n this.sizeInfo.dropdownHeaderHeight = dropdownHeaderHeight;\r\n this.sizeInfo.headerHeight = headerHeight;\r\n this.sizeInfo.searchHeight = searchHeight;\r\n this.sizeInfo.actionsHeight = actionsHeight;\r\n this.sizeInfo.doneButtonHeight = doneButtonHeight;\r\n this.sizeInfo.dividerHeight = dividerHeight;\r\n this.sizeInfo.menuPadding = menuPadding;\r\n this.sizeInfo.menuExtras = menuExtras;\r\n this.sizeInfo.menuWidth = menuWidth;\r\n this.sizeInfo.menuInnerInnerWidth = menuWidth - menuPadding.horiz;\r\n this.sizeInfo.totalMenuWidth = this.sizeInfo.menuWidth;\r\n this.sizeInfo.scrollBarWidth = scrollBarWidth;\r\n this.sizeInfo.selectHeight = this.$newElement[0].offsetHeight;\r\n\r\n this.setPositionData();\r\n },\r\n\r\n getSelectPosition: function () {\r\n var that = this,\r\n $window = $(window),\r\n pos = that.$newElement.offset(),\r\n $container = $(that.options.container),\r\n containerPos;\r\n\r\n if (that.options.container && $container.length && !$container.is('body')) {\r\n containerPos = $container.offset();\r\n containerPos.top += parseInt($container.css('borderTopWidth'));\r\n containerPos.left += parseInt($container.css('borderLeftWidth'));\r\n } else {\r\n containerPos = { top: 0, left: 0 };\r\n }\r\n\r\n var winPad = that.options.windowPadding;\r\n\r\n this.sizeInfo.selectOffsetTop = pos.top - containerPos.top - $window.scrollTop();\r\n this.sizeInfo.selectOffsetBot = $window.height() - this.sizeInfo.selectOffsetTop - this.sizeInfo.selectHeight - containerPos.top - winPad[2];\r\n this.sizeInfo.selectOffsetLeft = pos.left - containerPos.left - $window.scrollLeft();\r\n this.sizeInfo.selectOffsetRight = $window.width() - this.sizeInfo.selectOffsetLeft - this.sizeInfo.selectWidth - containerPos.left - winPad[1];\r\n this.sizeInfo.selectOffsetTop -= winPad[0];\r\n this.sizeInfo.selectOffsetLeft -= winPad[3];\r\n },\r\n\r\n setMenuSize: function (isAuto) {\r\n this.getSelectPosition();\r\n\r\n var selectWidth = this.sizeInfo.selectWidth,\r\n liHeight = this.sizeInfo.liHeight,\r\n headerHeight = this.sizeInfo.headerHeight,\r\n searchHeight = this.sizeInfo.searchHeight,\r\n actionsHeight = this.sizeInfo.actionsHeight,\r\n doneButtonHeight = this.sizeInfo.doneButtonHeight,\r\n divHeight = this.sizeInfo.dividerHeight,\r\n menuPadding = this.sizeInfo.menuPadding,\r\n menuInnerHeight,\r\n menuHeight,\r\n divLength = 0,\r\n minHeight,\r\n _minHeight,\r\n maxHeight,\r\n menuInnerMinHeight,\r\n estimate;\r\n\r\n if (this.options.dropupAuto) {\r\n // Get the estimated height of the menu without scrollbars.\r\n // This is useful for smaller menus, where there might be plenty of room\r\n // below the button without setting dropup, but we can't know\r\n // the exact height of the menu until createView is called later\r\n estimate = liHeight * this.selectpicker.current.elements.length + menuPadding.vert;\r\n this.$newElement.toggleClass(classNames.DROPUP, this.sizeInfo.selectOffsetTop - this.sizeInfo.selectOffsetBot > this.sizeInfo.menuExtras.vert && estimate + this.sizeInfo.menuExtras.vert + 50 > this.sizeInfo.selectOffsetBot);\r\n }\r\n\r\n if (this.options.size === 'auto') {\r\n _minHeight = this.selectpicker.current.elements.length > 3 ? this.sizeInfo.liHeight * 3 + this.sizeInfo.menuExtras.vert - 2 : 0;\r\n menuHeight = this.sizeInfo.selectOffsetBot - this.sizeInfo.menuExtras.vert;\r\n minHeight = _minHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight;\r\n menuInnerMinHeight = Math.max(_minHeight - menuPadding.vert, 0);\r\n\r\n if (this.$newElement.hasClass(classNames.DROPUP)) {\r\n menuHeight = this.sizeInfo.selectOffsetTop - this.sizeInfo.menuExtras.vert;\r\n }\r\n\r\n maxHeight = menuHeight;\r\n menuInnerHeight = menuHeight - headerHeight - searchHeight - actionsHeight - doneButtonHeight - menuPadding.vert;\r\n } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) {\r\n for (var i = 0; i < this.options.size; i++) {\r\n if (this.selectpicker.current.data[i].type === 'divider') divLength++;\r\n }\r\n\r\n menuHeight = liHeight * this.options.size + divLength * divHeight + menuPadding.vert;\r\n menuInnerHeight = menuHeight - menuPadding.vert;\r\n maxHeight = menuHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight;\r\n minHeight = menuInnerMinHeight = '';\r\n }\r\n\r\n this.$menu.css({\r\n 'max-height': maxHeight + 'px',\r\n 'overflow': 'hidden',\r\n 'min-height': minHeight + 'px'\r\n });\r\n\r\n this.$menuInner.css({\r\n 'max-height': menuInnerHeight + 'px',\r\n 'overflow-y': 'auto',\r\n 'min-height': menuInnerMinHeight + 'px'\r\n });\r\n\r\n // ensure menuInnerHeight is always a positive number to prevent issues calculating chunkSize in createView\r\n this.sizeInfo.menuInnerHeight = Math.max(menuInnerHeight, 1);\r\n\r\n if (this.selectpicker.current.data.length && this.selectpicker.current.data[this.selectpicker.current.data.length - 1].position > this.sizeInfo.menuInnerHeight) {\r\n this.sizeInfo.hasScrollBar = true;\r\n this.sizeInfo.totalMenuWidth = this.sizeInfo.menuWidth + this.sizeInfo.scrollBarWidth;\r\n }\r\n\r\n if (this.options.dropdownAlignRight === 'auto') {\r\n this.$menu.toggleClass(classNames.MENURIGHT, this.sizeInfo.selectOffsetLeft > this.sizeInfo.selectOffsetRight && this.sizeInfo.selectOffsetRight < (this.sizeInfo.totalMenuWidth - selectWidth));\r\n }\r\n\r\n if (this.dropdown && this.dropdown._popper) this.dropdown._popper.update();\r\n },\r\n\r\n setSize: function (refresh) {\r\n this.liHeight(refresh);\r\n\r\n if (this.options.header) this.$menu.css('padding-top', 0);\r\n if (this.options.size === false) return;\r\n\r\n var that = this,\r\n $window = $(window);\r\n\r\n this.setMenuSize();\r\n\r\n if (this.options.liveSearch) {\r\n this.$searchbox\r\n .off('input.setMenuSize propertychange.setMenuSize')\r\n .on('input.setMenuSize propertychange.setMenuSize', function () {\r\n return that.setMenuSize();\r\n });\r\n }\r\n\r\n if (this.options.size === 'auto') {\r\n $window\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize')\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize', function () {\r\n return that.setMenuSize();\r\n });\r\n } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) {\r\n $window.off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize');\r\n }\r\n\r\n that.createView(false, true, refresh);\r\n },\r\n\r\n setWidth: function () {\r\n var that = this;\r\n\r\n if (this.options.width === 'auto') {\r\n requestAnimationFrame(function () {\r\n that.$menu.css('min-width', '0');\r\n\r\n that.$element.on('loaded' + EVENT_KEY, function () {\r\n that.liHeight();\r\n that.setMenuSize();\r\n\r\n // Get correct width if element is hidden\r\n var $selectClone = that.$newElement.clone().appendTo('body'),\r\n btnWidth = $selectClone.css('width', 'auto').children('button').outerWidth();\r\n\r\n $selectClone.remove();\r\n\r\n // Set width to whatever's larger, button title or longest option\r\n that.sizeInfo.selectWidth = Math.max(that.sizeInfo.totalMenuWidth, btnWidth);\r\n that.$newElement.css('width', that.sizeInfo.selectWidth + 'px');\r\n });\r\n });\r\n } else if (this.options.width === 'fit') {\r\n // Remove inline min-width so width can be changed from 'auto'\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', '').addClass('fit-width');\r\n } else if (this.options.width) {\r\n // Remove inline min-width so width can be changed from 'auto'\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', this.options.width);\r\n } else {\r\n // Remove inline min-width/width so width can be changed\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', '');\r\n }\r\n // Remove fit-width class if width is changed programmatically\r\n if (this.$newElement.hasClass('fit-width') && this.options.width !== 'fit') {\r\n this.$newElement[0].classList.remove('fit-width');\r\n }\r\n },\r\n\r\n selectPosition: function () {\r\n this.$bsContainer = $('
    ');\r\n\r\n var that = this,\r\n $container = $(this.options.container),\r\n pos,\r\n containerPos,\r\n actualHeight,\r\n getPlacement = function ($element) {\r\n var containerPosition = {},\r\n // fall back to dropdown's default display setting if display is not manually set\r\n display = that.options.display || (\r\n // Bootstrap 3 doesn't have $.fn.dropdown.Constructor.Default\r\n $.fn.dropdown.Constructor.Default ? $.fn.dropdown.Constructor.Default.display\r\n : false\r\n );\r\n\r\n that.$bsContainer.addClass($element.attr('class').replace(/form-control|fit-width/gi, '')).toggleClass(classNames.DROPUP, $element.hasClass(classNames.DROPUP));\r\n pos = $element.offset();\r\n\r\n if (!$container.is('body')) {\r\n containerPos = $container.offset();\r\n containerPos.top += parseInt($container.css('borderTopWidth')) - $container.scrollTop();\r\n containerPos.left += parseInt($container.css('borderLeftWidth')) - $container.scrollLeft();\r\n } else {\r\n containerPos = { top: 0, left: 0 };\r\n }\r\n\r\n actualHeight = $element.hasClass(classNames.DROPUP) ? 0 : $element[0].offsetHeight;\r\n\r\n // Bootstrap 4+ uses Popper for menu positioning\r\n if (version.major < 4 || display === 'static') {\r\n containerPosition.top = pos.top - containerPos.top + actualHeight;\r\n containerPosition.left = pos.left - containerPos.left;\r\n }\r\n\r\n containerPosition.width = $element[0].offsetWidth;\r\n\r\n that.$bsContainer.css(containerPosition);\r\n };\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (that.isDisabled()) {\r\n return;\r\n }\r\n\r\n getPlacement(that.$newElement);\r\n\r\n that.$bsContainer\r\n .appendTo(that.options.container)\r\n .toggleClass(classNames.SHOW, !that.$button.hasClass(classNames.SHOW))\r\n .append(that.$menu);\r\n });\r\n\r\n $(window)\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + ' scroll' + EVENT_KEY + '.' + this.selectId)\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + ' scroll' + EVENT_KEY + '.' + this.selectId, function () {\r\n var isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (isActive) getPlacement(that.$newElement);\r\n });\r\n\r\n this.$element.on('hide' + EVENT_KEY, function () {\r\n that.$menu.data('height', that.$menu.height());\r\n that.$bsContainer.detach();\r\n });\r\n },\r\n\r\n setOptionStatus: function (selectedOnly) {\r\n var that = this;\r\n\r\n that.noScroll = false;\r\n\r\n if (that.selectpicker.view.visibleElements && that.selectpicker.view.visibleElements.length) {\r\n for (var i = 0; i < that.selectpicker.view.visibleElements.length; i++) {\r\n var liData = that.selectpicker.current.data[i + that.selectpicker.view.position0],\r\n option = liData.option;\r\n\r\n if (option) {\r\n if (selectedOnly !== true) {\r\n that.setDisabled(\r\n liData.index,\r\n liData.disabled\r\n );\r\n }\r\n\r\n that.setSelected(\r\n liData.index,\r\n option.selected\r\n );\r\n }\r\n }\r\n }\r\n },\r\n\r\n /**\r\n * @param {number} index - the index of the option that is being changed\r\n * @param {boolean} selected - true if the option is being selected, false if being deselected\r\n */\r\n setSelected: function (index, selected) {\r\n var li = this.selectpicker.main.elements[index],\r\n liData = this.selectpicker.main.data[index],\r\n activeIndexIsSet = this.activeIndex !== undefined,\r\n thisIsActive = this.activeIndex === index,\r\n prevActive,\r\n a,\r\n // if current option is already active\r\n // OR\r\n // if the current option is being selected, it's NOT multiple, and\r\n // activeIndex is undefined:\r\n // - when the menu is first being opened, OR\r\n // - after a search has been performed, OR\r\n // - when retainActive is false when selecting a new option (i.e. index of the newly selected option is not the same as the current activeIndex)\r\n keepActive = thisIsActive || (selected && !this.multiple && !activeIndexIsSet);\r\n\r\n liData.selected = selected;\r\n\r\n a = li.firstChild;\r\n\r\n if (selected) {\r\n this.selectedIndex = index;\r\n }\r\n\r\n li.classList.toggle('selected', selected);\r\n\r\n if (keepActive) {\r\n this.focusItem(li, liData);\r\n this.selectpicker.view.currentActive = li;\r\n this.activeIndex = index;\r\n } else {\r\n this.defocusItem(li);\r\n }\r\n\r\n if (a) {\r\n a.classList.toggle('selected', selected);\r\n\r\n if (selected) {\r\n a.setAttribute('aria-selected', true);\r\n } else {\r\n if (this.multiple) {\r\n a.setAttribute('aria-selected', false);\r\n } else {\r\n a.removeAttribute('aria-selected');\r\n }\r\n }\r\n }\r\n\r\n if (!keepActive && !activeIndexIsSet && selected && this.prevActiveIndex !== undefined) {\r\n prevActive = this.selectpicker.main.elements[this.prevActiveIndex];\r\n\r\n this.defocusItem(prevActive);\r\n }\r\n },\r\n\r\n /**\r\n * @param {number} index - the index of the option that is being disabled\r\n * @param {boolean} disabled - true if the option is being disabled, false if being enabled\r\n */\r\n setDisabled: function (index, disabled) {\r\n var li = this.selectpicker.main.elements[index],\r\n a;\r\n\r\n this.selectpicker.main.data[index].disabled = disabled;\r\n\r\n a = li.firstChild;\r\n\r\n li.classList.toggle(classNames.DISABLED, disabled);\r\n\r\n if (a) {\r\n if (version.major === '4') a.classList.toggle(classNames.DISABLED, disabled);\r\n\r\n if (disabled) {\r\n a.setAttribute('aria-disabled', disabled);\r\n a.setAttribute('tabindex', -1);\r\n } else {\r\n a.removeAttribute('aria-disabled');\r\n a.setAttribute('tabindex', 0);\r\n }\r\n }\r\n },\r\n\r\n isDisabled: function () {\r\n return this.$element[0].disabled;\r\n },\r\n\r\n checkDisabled: function () {\r\n if (this.isDisabled()) {\r\n this.$newElement[0].classList.add(classNames.DISABLED);\r\n this.$button.addClass(classNames.DISABLED).attr('tabindex', -1).attr('aria-disabled', true);\r\n } else {\r\n if (this.$button[0].classList.contains(classNames.DISABLED)) {\r\n this.$newElement[0].classList.remove(classNames.DISABLED);\r\n this.$button.removeClass(classNames.DISABLED).attr('aria-disabled', false);\r\n }\r\n\r\n if (this.$button.attr('tabindex') == -1 && !this.$element.data('tabindex')) {\r\n this.$button.removeAttr('tabindex');\r\n }\r\n }\r\n },\r\n\r\n tabIndex: function () {\r\n if (this.$element.data('tabindex') !== this.$element.attr('tabindex') &&\r\n (this.$element.attr('tabindex') !== -98 && this.$element.attr('tabindex') !== '-98')) {\r\n this.$element.data('tabindex', this.$element.attr('tabindex'));\r\n this.$button.attr('tabindex', this.$element.data('tabindex'));\r\n }\r\n\r\n this.$element.attr('tabindex', -98);\r\n },\r\n\r\n clickListener: function () {\r\n var that = this,\r\n $document = $(document);\r\n\r\n $document.data('spaceSelect', false);\r\n\r\n this.$button.on('keyup', function (e) {\r\n if (/(32)/.test(e.keyCode.toString(10)) && $document.data('spaceSelect')) {\r\n e.preventDefault();\r\n $document.data('spaceSelect', false);\r\n }\r\n });\r\n\r\n this.$newElement.on('show.bs.dropdown', function () {\r\n if (version.major > 3 && !that.dropdown) {\r\n that.dropdown = that.$button.data('bs.dropdown');\r\n that.dropdown._menu = that.$menu[0];\r\n }\r\n });\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (!that.$newElement.hasClass(classNames.SHOW)) {\r\n that.setSize();\r\n }\r\n });\r\n\r\n function setFocus () {\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$menuInner.trigger('focus');\r\n }\r\n }\r\n\r\n function checkPopperExists () {\r\n if (that.dropdown && that.dropdown._popper && that.dropdown._popper.state.isCreated) {\r\n setFocus();\r\n } else {\r\n requestAnimationFrame(checkPopperExists);\r\n }\r\n }\r\n\r\n this.$element.on('shown' + EVENT_KEY, function () {\r\n if (that.$menuInner[0].scrollTop !== that.selectpicker.view.scrollTop) {\r\n that.$menuInner[0].scrollTop = that.selectpicker.view.scrollTop;\r\n }\r\n\r\n if (version.major > 3) {\r\n requestAnimationFrame(checkPopperExists);\r\n } else {\r\n setFocus();\r\n }\r\n });\r\n\r\n // ensure posinset and setsize are correct before selecting an option via a click\r\n this.$menuInner.on('mouseenter', 'li a', function (e) {\r\n var hoverLi = this.parentElement,\r\n position0 = that.isVirtual() ? that.selectpicker.view.position0 : 0,\r\n index = Array.prototype.indexOf.call(hoverLi.parentElement.children, hoverLi),\r\n hoverData = that.selectpicker.current.data[index + position0];\r\n\r\n that.focusItem(hoverLi, hoverData, true);\r\n });\r\n\r\n this.$menuInner.on('click', 'li a', function (e, retainActive) {\r\n var $this = $(this),\r\n element = that.$element[0],\r\n position0 = that.isVirtual() ? that.selectpicker.view.position0 : 0,\r\n clickedData = that.selectpicker.current.data[$this.parent().index() + position0],\r\n clickedIndex = clickedData.index,\r\n prevValue = getSelectValues(element),\r\n prevIndex = element.selectedIndex,\r\n prevOption = element.options[prevIndex],\r\n triggerChange = true;\r\n\r\n // Don't close on multi choice menu\r\n if (that.multiple && that.options.maxOptions !== 1) {\r\n e.stopPropagation();\r\n }\r\n\r\n e.preventDefault();\r\n\r\n // Don't run if the select is disabled\r\n if (!that.isDisabled() && !$this.parent().hasClass(classNames.DISABLED)) {\r\n var option = clickedData.option,\r\n $option = $(option),\r\n state = option.selected,\r\n $optgroup = $option.parent('optgroup'),\r\n $optgroupOptions = $optgroup.find('option'),\r\n maxOptions = that.options.maxOptions,\r\n maxOptionsGrp = $optgroup.data('maxOptions') || false;\r\n\r\n if (clickedIndex === that.activeIndex) retainActive = true;\r\n\r\n if (!retainActive) {\r\n that.prevActiveIndex = that.activeIndex;\r\n that.activeIndex = undefined;\r\n }\r\n\r\n if (!that.multiple) { // Deselect all others if not multi select box\r\n if (prevOption) prevOption.selected = false;\r\n option.selected = true;\r\n that.setSelected(clickedIndex, true);\r\n } else { // Toggle the one we have chosen if we are multi select.\r\n option.selected = !state;\r\n\r\n that.setSelected(clickedIndex, !state);\r\n $this.trigger('blur');\r\n\r\n if (maxOptions !== false || maxOptionsGrp !== false) {\r\n var maxReached = maxOptions < getSelectedOptions(element).length,\r\n maxReachedGrp = maxOptionsGrp < $optgroup.find('option:selected').length;\r\n\r\n if ((maxOptions && maxReached) || (maxOptionsGrp && maxReachedGrp)) {\r\n if (maxOptions && maxOptions == 1) {\r\n element.selectedIndex = -1;\r\n option.selected = true;\r\n that.setOptionStatus(true);\r\n } else if (maxOptionsGrp && maxOptionsGrp == 1) {\r\n for (var i = 0; i < $optgroupOptions.length; i++) {\r\n var _option = $optgroupOptions[i];\r\n _option.selected = false;\r\n that.setSelected(_option.liIndex, false);\r\n }\r\n\r\n option.selected = true;\r\n that.setSelected(clickedIndex, true);\r\n } else {\r\n var maxOptionsText = typeof that.options.maxOptionsText === 'string' ? [that.options.maxOptionsText, that.options.maxOptionsText] : that.options.maxOptionsText,\r\n maxOptionsArr = typeof maxOptionsText === 'function' ? maxOptionsText(maxOptions, maxOptionsGrp) : maxOptionsText,\r\n maxTxt = maxOptionsArr[0].replace('{n}', maxOptions),\r\n maxTxtGrp = maxOptionsArr[1].replace('{n}', maxOptionsGrp),\r\n $notify = $('
    ');\r\n // If {var} is set in array, replace it\r\n /** @deprecated */\r\n if (maxOptionsArr[2]) {\r\n maxTxt = maxTxt.replace('{var}', maxOptionsArr[2][maxOptions > 1 ? 0 : 1]);\r\n maxTxtGrp = maxTxtGrp.replace('{var}', maxOptionsArr[2][maxOptionsGrp > 1 ? 0 : 1]);\r\n }\r\n\r\n option.selected = false;\r\n\r\n that.$menu.append($notify);\r\n\r\n if (maxOptions && maxReached) {\r\n $notify.append($('
    ' + maxTxt + '
    '));\r\n triggerChange = false;\r\n that.$element.trigger('maxReached' + EVENT_KEY);\r\n }\r\n\r\n if (maxOptionsGrp && maxReachedGrp) {\r\n $notify.append($('
    ' + maxTxtGrp + '
    '));\r\n triggerChange = false;\r\n that.$element.trigger('maxReachedGrp' + EVENT_KEY);\r\n }\r\n\r\n setTimeout(function () {\r\n that.setSelected(clickedIndex, false);\r\n }, 10);\r\n\r\n $notify[0].classList.add('fadeOut');\r\n\r\n setTimeout(function () {\r\n $notify.remove();\r\n }, 1050);\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (!that.multiple || (that.multiple && that.options.maxOptions === 1)) {\r\n that.$button.trigger('focus');\r\n } else if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n }\r\n\r\n // Trigger select 'change'\r\n if (triggerChange) {\r\n if (that.multiple || prevIndex !== element.selectedIndex) {\r\n // $option.prop('selected') is current option state (selected/unselected). prevValue is the value of the select prior to being changed.\r\n changedArguments = [option.index, $option.prop('selected'), prevValue];\r\n that.$element\r\n .triggerNative('change');\r\n }\r\n }\r\n }\r\n });\r\n\r\n this.$menu.on('click', 'li.' + classNames.DISABLED + ' a, .' + classNames.POPOVERHEADER + ', .' + classNames.POPOVERHEADER + ' :not(.close)', function (e) {\r\n if (e.currentTarget == this) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n if (that.options.liveSearch && !$(e.target).hasClass('close')) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n }\r\n });\r\n\r\n this.$menuInner.on('click', '.divider, .dropdown-header', function (e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n });\r\n\r\n this.$menu.on('click', '.' + classNames.POPOVERHEADER + ' .close', function () {\r\n that.$button.trigger('click');\r\n });\r\n\r\n this.$searchbox.on('click', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n this.$menu.on('click', '.actions-btn', function (e) {\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n\r\n e.preventDefault();\r\n e.stopPropagation();\r\n\r\n if ($(this).hasClass('bs-select-all')) {\r\n that.selectAll();\r\n } else {\r\n that.deselectAll();\r\n }\r\n });\r\n\r\n this.$element\r\n .on('change' + EVENT_KEY, function () {\r\n that.render();\r\n that.$element.trigger('changed' + EVENT_KEY, changedArguments);\r\n changedArguments = null;\r\n })\r\n .on('focus' + EVENT_KEY, function () {\r\n if (!that.options.mobile) that.$button.trigger('focus');\r\n });\r\n },\r\n\r\n liveSearchListener: function () {\r\n var that = this,\r\n noResults = document.createElement('li');\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (!!that.$searchbox.val()) {\r\n that.$searchbox.val('');\r\n }\r\n });\r\n\r\n this.$searchbox.on('click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n this.$searchbox.on('input propertychange', function () {\r\n var searchValue = that.$searchbox.val();\r\n\r\n that.selectpicker.search.elements = [];\r\n that.selectpicker.search.data = [];\r\n\r\n if (searchValue) {\r\n var i,\r\n searchMatch = [],\r\n q = searchValue.toUpperCase(),\r\n cache = {},\r\n cacheArr = [],\r\n searchStyle = that._searchStyle(),\r\n normalizeSearch = that.options.liveSearchNormalize;\r\n\r\n if (normalizeSearch) q = normalizeToBase(q);\r\n\r\n that._$lisSelected = that.$menuInner.find('.selected');\r\n\r\n for (var i = 0; i < that.selectpicker.main.data.length; i++) {\r\n var li = that.selectpicker.main.data[i];\r\n\r\n if (!cache[i]) {\r\n cache[i] = stringSearch(li, q, searchStyle, normalizeSearch);\r\n }\r\n\r\n if (cache[i] && li.headerIndex !== undefined && cacheArr.indexOf(li.headerIndex) === -1) {\r\n if (li.headerIndex > 0) {\r\n cache[li.headerIndex - 1] = true;\r\n cacheArr.push(li.headerIndex - 1);\r\n }\r\n\r\n cache[li.headerIndex] = true;\r\n cacheArr.push(li.headerIndex);\r\n\r\n cache[li.lastIndex + 1] = true;\r\n }\r\n\r\n if (cache[i] && li.type !== 'optgroup-label') cacheArr.push(i);\r\n }\r\n\r\n for (var i = 0, cacheLen = cacheArr.length; i < cacheLen; i++) {\r\n var index = cacheArr[i],\r\n prevIndex = cacheArr[i - 1],\r\n li = that.selectpicker.main.data[index],\r\n liPrev = that.selectpicker.main.data[prevIndex];\r\n\r\n if (li.type !== 'divider' || (li.type === 'divider' && liPrev && liPrev.type !== 'divider' && cacheLen - 1 !== i)) {\r\n that.selectpicker.search.data.push(li);\r\n searchMatch.push(that.selectpicker.main.elements[index]);\r\n }\r\n }\r\n\r\n that.activeIndex = undefined;\r\n that.noScroll = true;\r\n that.$menuInner.scrollTop(0);\r\n that.selectpicker.search.elements = searchMatch;\r\n that.createView(true);\r\n\r\n if (!searchMatch.length) {\r\n noResults.className = 'no-results';\r\n noResults.innerHTML = that.options.noneResultsText.replace('{0}', '\"' + htmlEscape(searchValue) + '\"');\r\n that.$menuInner[0].firstChild.appendChild(noResults);\r\n }\r\n } else {\r\n that.$menuInner.scrollTop(0);\r\n that.createView(false);\r\n }\r\n });\r\n },\r\n\r\n _searchStyle: function () {\r\n return this.options.liveSearchStyle || 'contains';\r\n },\r\n\r\n val: function (value) {\r\n var element = this.$element[0];\r\n\r\n if (typeof value !== 'undefined') {\r\n var prevValue = getSelectValues(element);\r\n\r\n changedArguments = [null, null, prevValue];\r\n\r\n this.$element\r\n .val(value)\r\n .trigger('changed' + EVENT_KEY, changedArguments);\r\n\r\n if (this.$newElement.hasClass(classNames.SHOW)) {\r\n if (this.multiple) {\r\n this.setOptionStatus(true);\r\n } else {\r\n var liSelectedIndex = (element.options[element.selectedIndex] || {}).liIndex;\r\n\r\n if (typeof liSelectedIndex === 'number') {\r\n this.setSelected(this.selectedIndex, false);\r\n this.setSelected(liSelectedIndex, true);\r\n }\r\n }\r\n }\r\n\r\n this.render();\r\n\r\n changedArguments = null;\r\n\r\n return this.$element;\r\n } else {\r\n return this.$element.val();\r\n }\r\n },\r\n\r\n changeAll: function (status) {\r\n if (!this.multiple) return;\r\n if (typeof status === 'undefined') status = true;\r\n\r\n var element = this.$element[0],\r\n previousSelected = 0,\r\n currentSelected = 0,\r\n prevValue = getSelectValues(element);\r\n\r\n element.classList.add('bs-select-hidden');\r\n\r\n for (var i = 0, len = this.selectpicker.current.elements.length; i < len; i++) {\r\n var liData = this.selectpicker.current.data[i],\r\n option = liData.option;\r\n\r\n if (option && !liData.disabled && liData.type !== 'divider') {\r\n if (liData.selected) previousSelected++;\r\n option.selected = status;\r\n if (status) currentSelected++;\r\n }\r\n }\r\n\r\n element.classList.remove('bs-select-hidden');\r\n\r\n if (previousSelected === currentSelected) return;\r\n\r\n this.setOptionStatus();\r\n\r\n changedArguments = [null, null, prevValue];\r\n\r\n this.$element\r\n .triggerNative('change');\r\n },\r\n\r\n selectAll: function () {\r\n return this.changeAll(true);\r\n },\r\n\r\n deselectAll: function () {\r\n return this.changeAll(false);\r\n },\r\n\r\n toggle: function (e) {\r\n e = e || window.event;\r\n\r\n if (e) e.stopPropagation();\r\n\r\n this.$button.trigger('click.bs.dropdown.data-api');\r\n },\r\n\r\n keydown: function (e) {\r\n var $this = $(this),\r\n isToggle = $this.hasClass('dropdown-toggle'),\r\n $parent = isToggle ? $this.closest('.dropdown') : $this.closest(Selector.MENU),\r\n that = $parent.data('this'),\r\n $items = that.findLis(),\r\n index,\r\n isActive,\r\n liActive,\r\n activeLi,\r\n offset,\r\n updateScroll = false,\r\n downOnTab = e.which === keyCodes.TAB && !isToggle && !that.options.selectOnTab,\r\n isArrowKey = REGEXP_ARROW.test(e.which) || downOnTab,\r\n scrollTop = that.$menuInner[0].scrollTop,\r\n isVirtual = that.isVirtual(),\r\n position0 = isVirtual === true ? that.selectpicker.view.position0 : 0;\r\n\r\n // do nothing if a function key is pressed\r\n if (e.which >= 112 && e.which <= 123) return;\r\n\r\n isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (\r\n !isActive &&\r\n (\r\n isArrowKey ||\r\n (e.which >= 48 && e.which <= 57) ||\r\n (e.which >= 96 && e.which <= 105) ||\r\n (e.which >= 65 && e.which <= 90)\r\n )\r\n ) {\r\n that.$button.trigger('click.bs.dropdown.data-api');\r\n\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n return;\r\n }\r\n }\r\n\r\n if (e.which === keyCodes.ESCAPE && isActive) {\r\n e.preventDefault();\r\n that.$button.trigger('click.bs.dropdown.data-api').trigger('focus');\r\n }\r\n\r\n if (isArrowKey) { // if up or down\r\n if (!$items.length) return;\r\n\r\n liActive = that.selectpicker.main.elements[that.activeIndex];\r\n index = liActive ? Array.prototype.indexOf.call(liActive.parentElement.children, liActive) : -1;\r\n\r\n if (index !== -1) {\r\n that.defocusItem(liActive);\r\n }\r\n\r\n if (e.which === keyCodes.ARROW_UP) { // up\r\n if (index !== -1) index--;\r\n if (index + position0 < 0) index += $items.length;\r\n\r\n if (!that.selectpicker.view.canHighlight[index + position0]) {\r\n index = that.selectpicker.view.canHighlight.slice(0, index + position0).lastIndexOf(true) - position0;\r\n if (index === -1) index = $items.length - 1;\r\n }\r\n } else if (e.which === keyCodes.ARROW_DOWN || downOnTab) { // down\r\n index++;\r\n if (index + position0 >= that.selectpicker.view.canHighlight.length) index = 0;\r\n\r\n if (!that.selectpicker.view.canHighlight[index + position0]) {\r\n index = index + 1 + that.selectpicker.view.canHighlight.slice(index + position0 + 1).indexOf(true);\r\n }\r\n }\r\n\r\n e.preventDefault();\r\n\r\n var liActiveIndex = position0 + index;\r\n\r\n if (e.which === keyCodes.ARROW_UP) { // up\r\n // scroll to bottom and highlight last option\r\n if (position0 === 0 && index === $items.length - 1) {\r\n that.$menuInner[0].scrollTop = that.$menuInner[0].scrollHeight;\r\n\r\n liActiveIndex = that.selectpicker.current.elements.length - 1;\r\n } else {\r\n activeLi = that.selectpicker.current.data[liActiveIndex];\r\n offset = activeLi.position - activeLi.height;\r\n\r\n updateScroll = offset < scrollTop;\r\n }\r\n } else if (e.which === keyCodes.ARROW_DOWN || downOnTab) { // down\r\n // scroll to top and highlight first option\r\n if (index === 0) {\r\n that.$menuInner[0].scrollTop = 0;\r\n\r\n liActiveIndex = 0;\r\n } else {\r\n activeLi = that.selectpicker.current.data[liActiveIndex];\r\n offset = activeLi.position - that.sizeInfo.menuInnerHeight;\r\n\r\n updateScroll = offset > scrollTop;\r\n }\r\n }\r\n\r\n liActive = that.selectpicker.current.elements[liActiveIndex];\r\n\r\n that.activeIndex = that.selectpicker.current.data[liActiveIndex].index;\r\n\r\n that.focusItem(liActive);\r\n\r\n that.selectpicker.view.currentActive = liActive;\r\n\r\n if (updateScroll) that.$menuInner[0].scrollTop = offset;\r\n\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n $this.trigger('focus');\r\n }\r\n } else if (\r\n (!$this.is('input') && !REGEXP_TAB_OR_ESCAPE.test(e.which)) ||\r\n (e.which === keyCodes.SPACE && that.selectpicker.keydown.keyHistory)\r\n ) {\r\n var searchMatch,\r\n matches = [],\r\n keyHistory;\r\n\r\n e.preventDefault();\r\n\r\n that.selectpicker.keydown.keyHistory += keyCodeMap[e.which];\r\n\r\n if (that.selectpicker.keydown.resetKeyHistory.cancel) clearTimeout(that.selectpicker.keydown.resetKeyHistory.cancel);\r\n that.selectpicker.keydown.resetKeyHistory.cancel = that.selectpicker.keydown.resetKeyHistory.start();\r\n\r\n keyHistory = that.selectpicker.keydown.keyHistory;\r\n\r\n // if all letters are the same, set keyHistory to just the first character when searching\r\n if (/^(.)\\1+$/.test(keyHistory)) {\r\n keyHistory = keyHistory.charAt(0);\r\n }\r\n\r\n // find matches\r\n for (var i = 0; i < that.selectpicker.current.data.length; i++) {\r\n var li = that.selectpicker.current.data[i],\r\n hasMatch;\r\n\r\n hasMatch = stringSearch(li, keyHistory, 'startsWith', true);\r\n\r\n if (hasMatch && that.selectpicker.view.canHighlight[i]) {\r\n matches.push(li.index);\r\n }\r\n }\r\n\r\n if (matches.length) {\r\n var matchIndex = 0;\r\n\r\n $items.removeClass('active').find('a').removeClass('active');\r\n\r\n // either only one key has been pressed or they are all the same key\r\n if (keyHistory.length === 1) {\r\n matchIndex = matches.indexOf(that.activeIndex);\r\n\r\n if (matchIndex === -1 || matchIndex === matches.length - 1) {\r\n matchIndex = 0;\r\n } else {\r\n matchIndex++;\r\n }\r\n }\r\n\r\n searchMatch = matches[matchIndex];\r\n\r\n activeLi = that.selectpicker.main.data[searchMatch];\r\n\r\n if (scrollTop - activeLi.position > 0) {\r\n offset = activeLi.position - activeLi.height;\r\n updateScroll = true;\r\n } else {\r\n offset = activeLi.position - that.sizeInfo.menuInnerHeight;\r\n // if the option is already visible at the current scroll position, just keep it the same\r\n updateScroll = activeLi.position > scrollTop + that.sizeInfo.menuInnerHeight;\r\n }\r\n\r\n liActive = that.selectpicker.main.elements[searchMatch];\r\n\r\n that.activeIndex = matches[matchIndex];\r\n\r\n that.focusItem(liActive);\r\n\r\n if (liActive) liActive.firstChild.focus();\r\n\r\n if (updateScroll) that.$menuInner[0].scrollTop = offset;\r\n\r\n $this.trigger('focus');\r\n }\r\n }\r\n\r\n // Select focused option if \"Enter\", \"Spacebar\" or \"Tab\" (when selectOnTab is true) are pressed inside the menu.\r\n if (\r\n isActive &&\r\n (\r\n (e.which === keyCodes.SPACE && !that.selectpicker.keydown.keyHistory) ||\r\n e.which === keyCodes.ENTER ||\r\n (e.which === keyCodes.TAB && that.options.selectOnTab)\r\n )\r\n ) {\r\n if (e.which !== keyCodes.SPACE) e.preventDefault();\r\n\r\n if (!that.options.liveSearch || e.which !== keyCodes.SPACE) {\r\n that.$menuInner.find('.active a').trigger('click', true); // retain active class\r\n $this.trigger('focus');\r\n\r\n if (!that.options.liveSearch) {\r\n // Prevent screen from scrolling if the user hits the spacebar\r\n e.preventDefault();\r\n // Fixes spacebar selection of dropdown items in FF & IE\r\n $(document).data('spaceSelect', true);\r\n }\r\n }\r\n }\r\n },\r\n\r\n mobile: function () {\r\n this.$element[0].classList.add('mobile-device');\r\n },\r\n\r\n refresh: function () {\r\n // update options if data attributes have been changed\r\n var config = $.extend({}, this.options, this.$element.data());\r\n this.options = config;\r\n\r\n this.checkDisabled();\r\n this.setStyle();\r\n this.render();\r\n this.createLi();\r\n this.setWidth();\r\n\r\n this.setSize(true);\r\n\r\n this.$element.trigger('refreshed' + EVENT_KEY);\r\n },\r\n\r\n hide: function () {\r\n this.$newElement.hide();\r\n },\r\n\r\n show: function () {\r\n this.$newElement.show();\r\n },\r\n\r\n remove: function () {\r\n this.$newElement.remove();\r\n this.$element.remove();\r\n },\r\n\r\n destroy: function () {\r\n this.$newElement.before(this.$element).remove();\r\n\r\n if (this.$bsContainer) {\r\n this.$bsContainer.remove();\r\n } else {\r\n this.$menu.remove();\r\n }\r\n\r\n this.$element\r\n .off(EVENT_KEY)\r\n .removeData('selectpicker')\r\n .removeClass('bs-select-hidden selectpicker');\r\n\r\n $(window).off(EVENT_KEY + '.' + this.selectId);\r\n }\r\n };\r\n\r\n // SELECTPICKER PLUGIN DEFINITION\r\n // ==============================\r\n function Plugin (option) {\r\n // get the args of the outer function..\r\n var args = arguments;\r\n // The arguments of the function are explicitly re-defined from the argument list, because the shift causes them\r\n // to get lost/corrupted in android 2.3 and IE9 #715 #775\r\n var _option = option;\r\n\r\n [].shift.apply(args);\r\n\r\n // if the version was not set successfully\r\n if (!version.success) {\r\n // try to retreive it again\r\n try {\r\n version.full = ($.fn.dropdown.Constructor.VERSION || '').split(' ')[0].split('.');\r\n } catch (err) {\r\n // fall back to use BootstrapVersion if set\r\n if (Selectpicker.BootstrapVersion) {\r\n version.full = Selectpicker.BootstrapVersion.split(' ')[0].split('.');\r\n } else {\r\n version.full = [version.major, '0', '0'];\r\n\r\n console.warn(\r\n 'There was an issue retrieving Bootstrap\\'s version. ' +\r\n 'Ensure Bootstrap is being loaded before bootstrap-select and there is no namespace collision. ' +\r\n 'If loading Bootstrap asynchronously, the version may need to be manually specified via $.fn.selectpicker.Constructor.BootstrapVersion.',\r\n err\r\n );\r\n }\r\n }\r\n\r\n version.major = version.full[0];\r\n version.success = true;\r\n }\r\n\r\n if (version.major === '4') {\r\n // some defaults need to be changed if using Bootstrap 4\r\n // check to see if they have already been manually changed before forcing them to update\r\n var toUpdate = [];\r\n\r\n if (Selectpicker.DEFAULTS.style === classNames.BUTTONCLASS) toUpdate.push({ name: 'style', className: 'BUTTONCLASS' });\r\n if (Selectpicker.DEFAULTS.iconBase === classNames.ICONBASE) toUpdate.push({ name: 'iconBase', className: 'ICONBASE' });\r\n if (Selectpicker.DEFAULTS.tickIcon === classNames.TICKICON) toUpdate.push({ name: 'tickIcon', className: 'TICKICON' });\r\n\r\n classNames.DIVIDER = 'dropdown-divider';\r\n classNames.SHOW = 'show';\r\n classNames.BUTTONCLASS = 'btn-light';\r\n classNames.POPOVERHEADER = 'popover-header';\r\n classNames.ICONBASE = '';\r\n classNames.TICKICON = 'bs-ok-default';\r\n\r\n for (var i = 0; i < toUpdate.length; i++) {\r\n var option = toUpdate[i];\r\n Selectpicker.DEFAULTS[option.name] = classNames[option.className];\r\n }\r\n }\r\n\r\n var value;\r\n var chain = this.each(function () {\r\n var $this = $(this);\r\n if ($this.is('select')) {\r\n var data = $this.data('selectpicker'),\r\n options = typeof _option == 'object' && _option;\r\n\r\n if (!data) {\r\n var dataAttributes = $this.data();\r\n\r\n for (var dataAttr in dataAttributes) {\r\n if (dataAttributes.hasOwnProperty(dataAttr) && $.inArray(dataAttr, DISALLOWED_ATTRIBUTES) !== -1) {\r\n delete dataAttributes[dataAttr];\r\n }\r\n }\r\n\r\n var config = $.extend({}, Selectpicker.DEFAULTS, $.fn.selectpicker.defaults || {}, dataAttributes, options);\r\n config.template = $.extend({}, Selectpicker.DEFAULTS.template, ($.fn.selectpicker.defaults ? $.fn.selectpicker.defaults.template : {}), dataAttributes.template, options.template);\r\n $this.data('selectpicker', (data = new Selectpicker(this, config)));\r\n } else if (options) {\r\n for (var i in options) {\r\n if (options.hasOwnProperty(i)) {\r\n data.options[i] = options[i];\r\n }\r\n }\r\n }\r\n\r\n if (typeof _option == 'string') {\r\n if (data[_option] instanceof Function) {\r\n value = data[_option].apply(data, args);\r\n } else {\r\n value = data.options[_option];\r\n }\r\n }\r\n }\r\n });\r\n\r\n if (typeof value !== 'undefined') {\r\n // noinspection JSUnusedAssignment\r\n return value;\r\n } else {\r\n return chain;\r\n }\r\n }\r\n\r\n var old = $.fn.selectpicker;\r\n $.fn.selectpicker = Plugin;\r\n $.fn.selectpicker.Constructor = Selectpicker;\r\n\r\n // SELECTPICKER NO CONFLICT\r\n // ========================\r\n $.fn.selectpicker.noConflict = function () {\r\n $.fn.selectpicker = old;\r\n return this;\r\n };\r\n\r\n $(document)\r\n .off('keydown.bs.dropdown.data-api', '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select .dropdown-menu')\r\n .on('keydown' + EVENT_KEY, '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select [role=\"listbox\"], .bootstrap-select .bs-searchbox input', Selectpicker.prototype.keydown)\r\n .on('focusin.modal', '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select [role=\"listbox\"], .bootstrap-select .bs-searchbox input', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n // SELECTPICKER DATA-API\r\n // =====================\r\n $(window).on('load' + EVENT_KEY + '.data-api', function () {\r\n $('.selectpicker').each(function () {\r\n var $selectpicker = $(this);\r\n Plugin.call($selectpicker, $selectpicker.data());\r\n })\r\n });\r\n})(jQuery);\r\n"]} \ No newline at end of file +{"version":3,"sources":["../../js/bootstrap-select.js"],"names":[],"mappings":"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AG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAChC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAChC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAClB,IAAI,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC/B,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/F,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/F,IAAI,EAAE,KAAK,EAAE,CA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EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACb,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","file":"bootstrap-select.js","sourcesContent":["(function ($) {\r\n 'use strict';\r\n\r\n var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];\r\n\r\n var uriAttrs = [\r\n 'background',\r\n 'cite',\r\n 'href',\r\n 'itemtype',\r\n 'longdesc',\r\n 'poster',\r\n 'src',\r\n 'xlink:href'\r\n ];\r\n\r\n var ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i;\r\n\r\n var DefaultWhitelist = {\r\n // Global attributes allowed on any supplied element below.\r\n '*': ['class', 'dir', 'id', 'lang', 'role', 'tabindex', 'style', ARIA_ATTRIBUTE_PATTERN],\r\n a: ['target', 'href', 'title', 'rel'],\r\n area: [],\r\n b: [],\r\n br: [],\r\n col: [],\r\n code: [],\r\n div: [],\r\n em: [],\r\n hr: [],\r\n h1: [],\r\n h2: [],\r\n h3: [],\r\n h4: [],\r\n h5: [],\r\n h6: [],\r\n i: [],\r\n img: ['src', 'alt', 'title', 'width', 'height'],\r\n li: [],\r\n ol: [],\r\n p: [],\r\n pre: [],\r\n s: [],\r\n small: [],\r\n span: [],\r\n sub: [],\r\n sup: [],\r\n strong: [],\r\n u: [],\r\n ul: []\r\n }\r\n\r\n /**\r\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\r\n *\r\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\r\n */\r\n var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;\r\n\r\n /**\r\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\r\n *\r\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\r\n */\r\n var DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;\r\n\r\n function allowedAttribute (attr, allowedAttributeList) {\r\n var attrName = attr.nodeName.toLowerCase()\r\n\r\n if ($.inArray(attrName, allowedAttributeList) !== -1) {\r\n if ($.inArray(attrName, uriAttrs) !== -1) {\r\n return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN))\r\n }\r\n\r\n return true\r\n }\r\n\r\n var regExp = $(allowedAttributeList).filter(function (index, value) {\r\n return value instanceof RegExp\r\n })\r\n\r\n // Check if a regular expression validates the attribute.\r\n for (var i = 0, l = regExp.length; i < l; i++) {\r\n if (attrName.match(regExp[i])) {\r\n return true\r\n }\r\n }\r\n\r\n return false\r\n }\r\n\r\n function sanitizeHtml (unsafeElements, whiteList, sanitizeFn) {\r\n if (sanitizeFn && typeof sanitizeFn === 'function') {\r\n return sanitizeFn(unsafeElements);\r\n }\r\n\r\n var whitelistKeys = Object.keys(whiteList);\r\n\r\n for (var i = 0, len = unsafeElements.length; i < len; i++) {\r\n var elements = unsafeElements[i].querySelectorAll('*');\r\n\r\n for (var j = 0, len2 = elements.length; j < len2; j++) {\r\n var el = elements[j];\r\n var elName = el.nodeName.toLowerCase();\r\n\r\n if (whitelistKeys.indexOf(elName) === -1) {\r\n el.parentNode.removeChild(el);\r\n\r\n continue;\r\n }\r\n\r\n var attributeList = [].slice.call(el.attributes);\r\n var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);\r\n\r\n for (var k = 0, len3 = attributeList.length; k < len3; k++) {\r\n var attr = attributeList[k];\r\n\r\n if (!allowedAttribute(attr, whitelistedAttributes)) {\r\n el.removeAttribute(attr.nodeName);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n // Polyfill for browsers with no classList support\r\n // Remove in v2\r\n if (!('classList' in document.createElement('_'))) {\r\n (function (view) {\r\n if (!('Element' in view)) return;\r\n\r\n var classListProp = 'classList',\r\n protoProp = 'prototype',\r\n elemCtrProto = view.Element[protoProp],\r\n objCtr = Object,\r\n classListGetter = function () {\r\n var $elem = $(this);\r\n\r\n return {\r\n add: function (classes) {\r\n classes = Array.prototype.slice.call(arguments).join(' ');\r\n return $elem.addClass(classes);\r\n },\r\n remove: function (classes) {\r\n classes = Array.prototype.slice.call(arguments).join(' ');\r\n return $elem.removeClass(classes);\r\n },\r\n toggle: function (classes, force) {\r\n return $elem.toggleClass(classes, force);\r\n },\r\n contains: function (classes) {\r\n return $elem.hasClass(classes);\r\n }\r\n }\r\n };\r\n\r\n if (objCtr.defineProperty) {\r\n var classListPropDesc = {\r\n get: classListGetter,\r\n enumerable: true,\r\n configurable: true\r\n };\r\n try {\r\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\r\n } catch (ex) { // IE 8 doesn't support enumerable:true\r\n // adding undefined to fight this issue https://github.com/eligrey/classList.js/issues/36\r\n // modernie IE8-MSW7 machine has IE8 8.0.6001.18702 and is affected\r\n if (ex.number === undefined || ex.number === -0x7FF5EC54) {\r\n classListPropDesc.enumerable = false;\r\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\r\n }\r\n }\r\n } else if (objCtr[protoProp].__defineGetter__) {\r\n elemCtrProto.__defineGetter__(classListProp, classListGetter);\r\n }\r\n }(window));\r\n }\r\n\r\n var testElement = document.createElement('_');\r\n\r\n testElement.classList.add('c1', 'c2');\r\n\r\n if (!testElement.classList.contains('c2')) {\r\n var _add = DOMTokenList.prototype.add,\r\n _remove = DOMTokenList.prototype.remove;\r\n\r\n DOMTokenList.prototype.add = function () {\r\n Array.prototype.forEach.call(arguments, _add.bind(this));\r\n }\r\n\r\n DOMTokenList.prototype.remove = function () {\r\n Array.prototype.forEach.call(arguments, _remove.bind(this));\r\n }\r\n }\r\n\r\n testElement.classList.toggle('c3', false);\r\n\r\n // Polyfill for IE 10 and Firefox <24, where classList.toggle does not\r\n // support the second argument.\r\n if (testElement.classList.contains('c3')) {\r\n var _toggle = DOMTokenList.prototype.toggle;\r\n\r\n DOMTokenList.prototype.toggle = function (token, force) {\r\n if (1 in arguments && !this.contains(token) === !force) {\r\n return force;\r\n } else {\r\n return _toggle.call(this, token);\r\n }\r\n };\r\n }\r\n\r\n testElement = null;\r\n\r\n // shallow array comparison\r\n function isEqual (array1, array2) {\r\n return array1.length === array2.length && array1.every(function (element, index) {\r\n return element === array2[index];\r\n });\r\n };\r\n\r\n // \r\n if (!String.prototype.startsWith) {\r\n (function () {\r\n 'use strict'; // needed to support `apply`/`call` with `undefined`/`null`\r\n var defineProperty = (function () {\r\n // IE 8 only supports `Object.defineProperty` on DOM elements\r\n try {\r\n var object = {};\r\n var $defineProperty = Object.defineProperty;\r\n var result = $defineProperty(object, object, object) && $defineProperty;\r\n } catch (error) {\r\n }\r\n return result;\r\n }());\r\n var toString = {}.toString;\r\n var startsWith = function (search) {\r\n if (this == null) {\r\n throw new TypeError();\r\n }\r\n var string = String(this);\r\n if (search && toString.call(search) == '[object RegExp]') {\r\n throw new TypeError();\r\n }\r\n var stringLength = string.length;\r\n var searchString = String(search);\r\n var searchLength = searchString.length;\r\n var position = arguments.length > 1 ? arguments[1] : undefined;\r\n // `ToInteger`\r\n var pos = position ? Number(position) : 0;\r\n if (pos != pos) { // better `isNaN`\r\n pos = 0;\r\n }\r\n var start = Math.min(Math.max(pos, 0), stringLength);\r\n // Avoid the `indexOf` call if no match is possible\r\n if (searchLength + start > stringLength) {\r\n return false;\r\n }\r\n var index = -1;\r\n while (++index < searchLength) {\r\n if (string.charCodeAt(start + index) != searchString.charCodeAt(index)) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n };\r\n if (defineProperty) {\r\n defineProperty(String.prototype, 'startsWith', {\r\n 'value': startsWith,\r\n 'configurable': true,\r\n 'writable': true\r\n });\r\n } else {\r\n String.prototype.startsWith = startsWith;\r\n }\r\n }());\r\n }\r\n\r\n if (!Object.keys) {\r\n Object.keys = function (\r\n o, // object\r\n k, // key\r\n r // result array\r\n ) {\r\n // initialize object and result\r\n r = [];\r\n // iterate over object keys\r\n for (k in o) {\r\n // fill result array with non-prototypical keys\r\n r.hasOwnProperty.call(o, k) && r.push(k);\r\n }\r\n // return result\r\n return r;\r\n };\r\n }\r\n\r\n if (HTMLSelectElement && !HTMLSelectElement.prototype.hasOwnProperty('selectedOptions')) {\r\n Object.defineProperty(HTMLSelectElement.prototype, 'selectedOptions', {\r\n get: function () {\r\n return this.querySelectorAll(':checked');\r\n }\r\n });\r\n }\r\n\r\n function getSelectedOptions (select, ignoreDisabled) {\r\n var selectedOptions = select.selectedOptions,\r\n options = [],\r\n opt;\r\n\r\n if (ignoreDisabled) {\r\n for (var i = 0, len = selectedOptions.length; i < len; i++) {\r\n opt = selectedOptions[i];\r\n\r\n if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) {\r\n options.push(opt);\r\n }\r\n }\r\n\r\n return options;\r\n }\r\n\r\n return selectedOptions;\r\n }\r\n\r\n // much faster than $.val()\r\n function getSelectValues (select, selectedOptions) {\r\n var value = [],\r\n options = selectedOptions || select.selectedOptions,\r\n opt;\r\n\r\n for (var i = 0, len = options.length; i < len; i++) {\r\n opt = options[i];\r\n\r\n if (!(opt.disabled || opt.parentNode.tagName === 'OPTGROUP' && opt.parentNode.disabled)) {\r\n value.push(opt.value);\r\n }\r\n }\r\n\r\n if (!select.multiple) {\r\n return !value.length ? null : value[0];\r\n }\r\n\r\n return value;\r\n }\r\n\r\n // set data-selected on select element if the value has been programmatically selected\r\n // prior to initialization of bootstrap-select\r\n // * consider removing or replacing an alternative method *\r\n var valHooks = {\r\n useDefault: false,\r\n _set: $.valHooks.select.set\r\n };\r\n\r\n $.valHooks.select.set = function (elem, value) {\r\n if (value && !valHooks.useDefault) $(elem).data('selected', true);\r\n\r\n return valHooks._set.apply(this, arguments);\r\n };\r\n\r\n var changedArguments = null;\r\n\r\n var EventIsSupported = (function () {\r\n try {\r\n new Event('change');\r\n return true;\r\n } catch (e) {\r\n return false;\r\n }\r\n })();\r\n\r\n $.fn.triggerNative = function (eventName) {\r\n var el = this[0],\r\n event;\r\n\r\n if (el.dispatchEvent) { // for modern browsers & IE9+\r\n if (EventIsSupported) {\r\n // For modern browsers\r\n event = new Event(eventName, {\r\n bubbles: true\r\n });\r\n } else {\r\n // For IE since it doesn't support Event constructor\r\n event = document.createEvent('Event');\r\n event.initEvent(eventName, true, false);\r\n }\r\n\r\n el.dispatchEvent(event);\r\n } else if (el.fireEvent) { // for IE8\r\n event = document.createEventObject();\r\n event.eventType = eventName;\r\n el.fireEvent('on' + eventName, event);\r\n } else {\r\n // fall back to jQuery.trigger\r\n this.trigger(eventName);\r\n }\r\n };\r\n // \r\n\r\n function stringSearch (li, searchString, method, normalize) {\r\n var stringTypes = [\r\n 'display',\r\n 'subtext',\r\n 'tokens'\r\n ],\r\n searchSuccess = false;\r\n\r\n for (var i = 0; i < stringTypes.length; i++) {\r\n var stringType = stringTypes[i],\r\n string = li[stringType];\r\n\r\n if (string) {\r\n string = string.toString();\r\n\r\n // Strip HTML tags. This isn't perfect, but it's much faster than any other method\r\n if (stringType === 'display') {\r\n string = string.replace(/<[^>]+>/g, '');\r\n }\r\n\r\n if (normalize) string = normalizeToBase(string);\r\n string = string.toUpperCase();\r\n\r\n if (method === 'contains') {\r\n searchSuccess = string.indexOf(searchString) >= 0;\r\n } else {\r\n searchSuccess = string.startsWith(searchString);\r\n }\r\n\r\n if (searchSuccess) break;\r\n }\r\n }\r\n\r\n return searchSuccess;\r\n }\r\n\r\n function toInteger (value) {\r\n return parseInt(value, 10) || 0;\r\n }\r\n\r\n // Borrowed from Lodash (_.deburr)\r\n /** Used to map Latin Unicode letters to basic Latin letters. */\r\n var deburredLetters = {\r\n // Latin-1 Supplement block.\r\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\r\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\r\n '\\xc7': 'C', '\\xe7': 'c',\r\n '\\xd0': 'D', '\\xf0': 'd',\r\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\r\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\r\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\r\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\r\n '\\xd1': 'N', '\\xf1': 'n',\r\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\r\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\r\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\r\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\r\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\r\n '\\xc6': 'Ae', '\\xe6': 'ae',\r\n '\\xde': 'Th', '\\xfe': 'th',\r\n '\\xdf': 'ss',\r\n // Latin Extended-A block.\r\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\r\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\r\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\r\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\r\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\r\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\r\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\r\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\r\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\r\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\r\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\r\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\r\n '\\u0134': 'J', '\\u0135': 'j',\r\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\r\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\r\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\r\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\r\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\r\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\r\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\r\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\r\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\r\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\r\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\r\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\r\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\r\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\r\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\r\n '\\u0174': 'W', '\\u0175': 'w',\r\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\r\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\r\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\r\n '\\u0132': 'IJ', '\\u0133': 'ij',\r\n '\\u0152': 'Oe', '\\u0153': 'oe',\r\n '\\u0149': \"'n\", '\\u017f': 's'\r\n };\r\n\r\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\r\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\r\n\r\n /** Used to compose unicode character classes. */\r\n var rsComboMarksRange = '\\\\u0300-\\\\u036f',\r\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\r\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\r\n rsComboMarksExtendedRange = '\\\\u1ab0-\\\\u1aff',\r\n rsComboMarksSupplementRange = '\\\\u1dc0-\\\\u1dff',\r\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange + rsComboMarksExtendedRange + rsComboMarksSupplementRange;\r\n\r\n /** Used to compose unicode capture groups. */\r\n var rsCombo = '[' + rsComboRange + ']';\r\n\r\n /**\r\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\r\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\r\n */\r\n var reComboMark = RegExp(rsCombo, 'g');\r\n\r\n function deburrLetter (key) {\r\n return deburredLetters[key];\r\n };\r\n\r\n function normalizeToBase (string) {\r\n string = string.toString();\r\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\r\n }\r\n\r\n // List of HTML entities for escaping.\r\n var escapeMap = {\r\n '&': '&',\r\n '<': '<',\r\n '>': '>',\r\n '\"': '"',\r\n \"'\": ''',\r\n '`': '`'\r\n };\r\n\r\n // Functions for escaping and unescaping strings to/from HTML interpolation.\r\n var createEscaper = function (map) {\r\n var escaper = function (match) {\r\n return map[match];\r\n };\r\n // Regexes for identifying a key that needs to be escaped.\r\n var source = '(?:' + Object.keys(map).join('|') + ')';\r\n var testRegexp = RegExp(source);\r\n var replaceRegexp = RegExp(source, 'g');\r\n return function (string) {\r\n string = string == null ? '' : '' + string;\r\n return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;\r\n };\r\n };\r\n\r\n var htmlEscape = createEscaper(escapeMap);\r\n\r\n /**\r\n * ------------------------------------------------------------------------\r\n * Constants\r\n * ------------------------------------------------------------------------\r\n */\r\n\r\n var keyCodeMap = {\r\n 32: ' ',\r\n 48: '0',\r\n 49: '1',\r\n 50: '2',\r\n 51: '3',\r\n 52: '4',\r\n 53: '5',\r\n 54: '6',\r\n 55: '7',\r\n 56: '8',\r\n 57: '9',\r\n 59: ';',\r\n 65: 'A',\r\n 66: 'B',\r\n 67: 'C',\r\n 68: 'D',\r\n 69: 'E',\r\n 70: 'F',\r\n 71: 'G',\r\n 72: 'H',\r\n 73: 'I',\r\n 74: 'J',\r\n 75: 'K',\r\n 76: 'L',\r\n 77: 'M',\r\n 78: 'N',\r\n 79: 'O',\r\n 80: 'P',\r\n 81: 'Q',\r\n 82: 'R',\r\n 83: 'S',\r\n 84: 'T',\r\n 85: 'U',\r\n 86: 'V',\r\n 87: 'W',\r\n 88: 'X',\r\n 89: 'Y',\r\n 90: 'Z',\r\n 96: '0',\r\n 97: '1',\r\n 98: '2',\r\n 99: '3',\r\n 100: '4',\r\n 101: '5',\r\n 102: '6',\r\n 103: '7',\r\n 104: '8',\r\n 105: '9'\r\n };\r\n\r\n var keyCodes = {\r\n ESCAPE: 27, // KeyboardEvent.which value for Escape (Esc) key\r\n ENTER: 13, // KeyboardEvent.which value for Enter key\r\n SPACE: 32, // KeyboardEvent.which value for space key\r\n TAB: 9, // KeyboardEvent.which value for tab key\r\n ARROW_UP: 38, // KeyboardEvent.which value for up arrow key\r\n ARROW_DOWN: 40 // KeyboardEvent.which value for down arrow key\r\n }\r\n\r\n var version = {\r\n success: false,\r\n major: '3'\r\n };\r\n\r\n try {\r\n version.full = ($.fn.dropdown.Constructor.VERSION || '').split(' ')[0].split('.');\r\n version.major = version.full[0];\r\n version.success = true;\r\n } catch (err) {\r\n // do nothing\r\n }\r\n\r\n var selectId = 0;\r\n\r\n var EVENT_KEY = '.bs.select';\r\n\r\n var classNames = {\r\n DISABLED: 'disabled',\r\n DIVIDER: 'divider',\r\n SHOW: 'open',\r\n DROPUP: 'dropup',\r\n MENU: 'dropdown-menu',\r\n MENURIGHT: 'dropdown-menu-right',\r\n MENULEFT: 'dropdown-menu-left',\r\n // to-do: replace with more advanced template/customization options\r\n BUTTONCLASS: 'btn-default',\r\n POPOVERHEADER: 'popover-title',\r\n ICONBASE: 'glyphicon',\r\n TICKICON: 'glyphicon-ok'\r\n }\r\n\r\n var Selector = {\r\n MENU: '.' + classNames.MENU\r\n }\r\n\r\n var elementTemplates = {\r\n span: document.createElement('span'),\r\n i: document.createElement('i'),\r\n subtext: document.createElement('small'),\r\n a: document.createElement('a'),\r\n li: document.createElement('li'),\r\n whitespace: document.createTextNode('\\u00A0'),\r\n fragment: document.createDocumentFragment()\r\n }\r\n\r\n elementTemplates.a.setAttribute('role', 'option');\r\n if (version.major === '4') elementTemplates.a.className = 'dropdown-item';\r\n\r\n elementTemplates.subtext.className = 'text-muted';\r\n\r\n elementTemplates.text = elementTemplates.span.cloneNode(false);\r\n elementTemplates.text.className = 'text';\r\n\r\n elementTemplates.checkMark = elementTemplates.span.cloneNode(false);\r\n\r\n var REGEXP_ARROW = new RegExp(keyCodes.ARROW_UP + '|' + keyCodes.ARROW_DOWN);\r\n var REGEXP_TAB_OR_ESCAPE = new RegExp('^' + keyCodes.TAB + '$|' + keyCodes.ESCAPE);\r\n\r\n var generateOption = {\r\n li: function (content, classes, optgroup) {\r\n var li = elementTemplates.li.cloneNode(false);\r\n\r\n if (content) {\r\n if (content.nodeType === 1 || content.nodeType === 11) {\r\n li.appendChild(content);\r\n } else {\r\n li.innerHTML = content;\r\n }\r\n }\r\n\r\n if (typeof classes !== 'undefined' && classes !== '') li.className = classes;\r\n if (typeof optgroup !== 'undefined' && optgroup !== null) li.classList.add('optgroup-' + optgroup);\r\n\r\n return li;\r\n },\r\n\r\n a: function (text, classes, inline) {\r\n var a = elementTemplates.a.cloneNode(true);\r\n\r\n if (text) {\r\n if (text.nodeType === 11) {\r\n a.appendChild(text);\r\n } else {\r\n a.insertAdjacentHTML('beforeend', text);\r\n }\r\n }\r\n\r\n if (typeof classes !== 'undefined' && classes !== '') a.classList.add.apply(a.classList, classes.split(' '));\r\n if (inline) a.setAttribute('style', inline);\r\n\r\n return a;\r\n },\r\n\r\n text: function (options, useFragment) {\r\n var textElement = elementTemplates.text.cloneNode(false),\r\n subtextElement,\r\n iconElement;\r\n\r\n if (options.content) {\r\n textElement.innerHTML = options.content;\r\n } else {\r\n textElement.textContent = options.text;\r\n\r\n if (options.icon) {\r\n var whitespace = elementTemplates.whitespace.cloneNode(false);\r\n\r\n // need to use for icons in the button to prevent a breaking change\r\n // note: switch to span in next major release\r\n iconElement = (useFragment === true ? elementTemplates.i : elementTemplates.span).cloneNode(false);\r\n iconElement.className = this.options.iconBase + ' ' + options.icon;\r\n\r\n elementTemplates.fragment.appendChild(iconElement);\r\n elementTemplates.fragment.appendChild(whitespace);\r\n }\r\n\r\n if (options.subtext) {\r\n subtextElement = elementTemplates.subtext.cloneNode(false);\r\n subtextElement.textContent = options.subtext;\r\n textElement.appendChild(subtextElement);\r\n }\r\n }\r\n\r\n if (useFragment === true) {\r\n while (textElement.childNodes.length > 0) {\r\n elementTemplates.fragment.appendChild(textElement.childNodes[0]);\r\n }\r\n } else {\r\n elementTemplates.fragment.appendChild(textElement);\r\n }\r\n\r\n return elementTemplates.fragment;\r\n },\r\n\r\n label: function (options) {\r\n var textElement = elementTemplates.text.cloneNode(false),\r\n subtextElement,\r\n iconElement;\r\n\r\n textElement.innerHTML = options.display;\r\n\r\n if (options.icon) {\r\n var whitespace = elementTemplates.whitespace.cloneNode(false);\r\n\r\n iconElement = elementTemplates.span.cloneNode(false);\r\n iconElement.className = this.options.iconBase + ' ' + options.icon;\r\n\r\n elementTemplates.fragment.appendChild(iconElement);\r\n elementTemplates.fragment.appendChild(whitespace);\r\n }\r\n\r\n if (options.subtext) {\r\n subtextElement = elementTemplates.subtext.cloneNode(false);\r\n subtextElement.textContent = options.subtext;\r\n textElement.appendChild(subtextElement);\r\n }\r\n\r\n elementTemplates.fragment.appendChild(textElement);\r\n\r\n return elementTemplates.fragment;\r\n }\r\n }\r\n\r\n var Selectpicker = function (element, options) {\r\n var that = this;\r\n\r\n // bootstrap-select has been initialized - revert valHooks.select.set back to its original function\r\n if (!valHooks.useDefault) {\r\n $.valHooks.select.set = valHooks._set;\r\n valHooks.useDefault = true;\r\n }\r\n\r\n this.$element = $(element);\r\n this.$newElement = null;\r\n this.$button = null;\r\n this.$menu = null;\r\n this.options = options;\r\n this.selectpicker = {\r\n main: {},\r\n search: {},\r\n current: {}, // current changes if a search is in progress\r\n view: {},\r\n isSearching: false,\r\n keydown: {\r\n keyHistory: '',\r\n resetKeyHistory: {\r\n start: function () {\r\n return setTimeout(function () {\r\n that.selectpicker.keydown.keyHistory = '';\r\n }, 800);\r\n }\r\n }\r\n }\r\n };\r\n\r\n this.sizeInfo = {};\r\n\r\n // If we have no title yet, try to pull it from the html title attribute (jQuery doesnt' pick it up as it's not a\r\n // data-attribute)\r\n if (this.options.title === null) {\r\n this.options.title = this.$element.attr('title');\r\n }\r\n\r\n // Format window padding\r\n var winPad = this.options.windowPadding;\r\n if (typeof winPad === 'number') {\r\n this.options.windowPadding = [winPad, winPad, winPad, winPad];\r\n }\r\n\r\n // Expose public methods\r\n this.val = Selectpicker.prototype.val;\r\n this.render = Selectpicker.prototype.render;\r\n this.refresh = Selectpicker.prototype.refresh;\r\n this.setStyle = Selectpicker.prototype.setStyle;\r\n this.selectAll = Selectpicker.prototype.selectAll;\r\n this.deselectAll = Selectpicker.prototype.deselectAll;\r\n this.destroy = Selectpicker.prototype.destroy;\r\n this.remove = Selectpicker.prototype.remove;\r\n this.show = Selectpicker.prototype.show;\r\n this.hide = Selectpicker.prototype.hide;\r\n\r\n this.init();\r\n };\r\n\r\n Selectpicker.VERSION = '1.13.13';\r\n\r\n // part of this is duplicated in i18n/defaults-en_US.js. Make sure to update both.\r\n Selectpicker.DEFAULTS = {\r\n noneSelectedText: 'Nothing selected',\r\n noneResultsText: 'No results matched {0}',\r\n countSelectedText: function (numSelected, numTotal) {\r\n return (numSelected == 1) ? '{0} item selected' : '{0} items selected';\r\n },\r\n maxOptionsText: function (numAll, numGroup) {\r\n return [\r\n (numAll == 1) ? 'Limit reached ({n} item max)' : 'Limit reached ({n} items max)',\r\n (numGroup == 1) ? 'Group limit reached ({n} item max)' : 'Group limit reached ({n} items max)'\r\n ];\r\n },\r\n selectAllText: 'Select All',\r\n deselectAllText: 'Deselect All',\r\n doneButton: false,\r\n doneButtonText: 'Close',\r\n multipleSeparator: ', ',\r\n styleBase: 'btn',\r\n style: classNames.BUTTONCLASS,\r\n size: 'auto',\r\n title: null,\r\n selectedTextFormat: 'values',\r\n width: false,\r\n container: false,\r\n hideDisabled: false,\r\n showSubtext: false,\r\n showIcon: true,\r\n showContent: true,\r\n dropupAuto: true,\r\n header: false,\r\n liveSearch: false,\r\n liveSearchPlaceholder: null,\r\n liveSearchNormalize: false,\r\n liveSearchStyle: 'contains',\r\n actionsBox: false,\r\n iconBase: classNames.ICONBASE,\r\n tickIcon: classNames.TICKICON,\r\n showTick: false,\r\n template: {\r\n caret: ''\r\n },\r\n maxOptions: false,\r\n mobile: false,\r\n selectOnTab: false,\r\n dropdownAlignRight: false,\r\n windowPadding: 0,\r\n virtualScroll: 600,\r\n display: false,\r\n sanitize: true,\r\n sanitizeFn: null,\r\n whiteList: DefaultWhitelist\r\n };\r\n\r\n Selectpicker.prototype = {\r\n\r\n constructor: Selectpicker,\r\n\r\n init: function () {\r\n var that = this,\r\n id = this.$element.attr('id');\r\n\r\n selectId++;\r\n this.selectId = 'bs-select-' + selectId;\r\n\r\n this.$element[0].classList.add('bs-select-hidden');\r\n\r\n this.multiple = this.$element.prop('multiple');\r\n this.autofocus = this.$element.prop('autofocus');\r\n\r\n if (this.$element[0].classList.contains('show-tick')) {\r\n this.options.showTick = true;\r\n }\r\n\r\n this.$newElement = this.createDropdown();\r\n this.buildData();\r\n this.$element\r\n .after(this.$newElement)\r\n .prependTo(this.$newElement);\r\n\r\n this.$button = this.$newElement.children('button');\r\n this.$menu = this.$newElement.children(Selector.MENU);\r\n this.$menuInner = this.$menu.children('.inner');\r\n this.$searchbox = this.$menu.find('input');\r\n\r\n this.$element[0].classList.remove('bs-select-hidden');\r\n\r\n if (this.options.dropdownAlignRight === true) this.$menu[0].classList.add(classNames.MENURIGHT);\r\n\r\n if (typeof id !== 'undefined') {\r\n this.$button.attr('data-id', id);\r\n }\r\n\r\n this.checkDisabled();\r\n this.clickListener();\r\n\r\n if (this.options.liveSearch) {\r\n this.liveSearchListener();\r\n this.focusedParent = this.$searchbox[0];\r\n } else {\r\n this.focusedParent = this.$menuInner[0];\r\n }\r\n\r\n this.setStyle();\r\n this.render();\r\n this.setWidth();\r\n if (this.options.container) {\r\n this.selectPosition();\r\n } else {\r\n this.$element.on('hide' + EVENT_KEY, function () {\r\n if (that.isVirtual()) {\r\n // empty menu on close\r\n var menuInner = that.$menuInner[0],\r\n emptyMenu = menuInner.firstChild.cloneNode(false);\r\n\r\n // replace the existing UL with an empty one - this is faster than $.empty() or innerHTML = ''\r\n menuInner.replaceChild(emptyMenu, menuInner.firstChild);\r\n menuInner.scrollTop = 0;\r\n }\r\n });\r\n }\r\n this.$menu.data('this', this);\r\n this.$newElement.data('this', this);\r\n if (this.options.mobile) this.mobile();\r\n\r\n this.$newElement.on({\r\n 'hide.bs.dropdown': function (e) {\r\n that.$element.trigger('hide' + EVENT_KEY, e);\r\n },\r\n 'hidden.bs.dropdown': function (e) {\r\n that.$element.trigger('hidden' + EVENT_KEY, e);\r\n },\r\n 'show.bs.dropdown': function (e) {\r\n that.$element.trigger('show' + EVENT_KEY, e);\r\n },\r\n 'shown.bs.dropdown': function (e) {\r\n that.$element.trigger('shown' + EVENT_KEY, e);\r\n }\r\n });\r\n\r\n if (that.$element[0].hasAttribute('required')) {\r\n this.$element.on('invalid' + EVENT_KEY, function () {\r\n that.$button[0].classList.add('bs-invalid');\r\n\r\n that.$element\r\n .on('shown' + EVENT_KEY + '.invalid', function () {\r\n that.$element\r\n .val(that.$element.val()) // set the value to hide the validation message in Chrome when menu is opened\r\n .off('shown' + EVENT_KEY + '.invalid');\r\n })\r\n .on('rendered' + EVENT_KEY, function () {\r\n // if select is no longer invalid, remove the bs-invalid class\r\n if (this.validity.valid) that.$button[0].classList.remove('bs-invalid');\r\n that.$element.off('rendered' + EVENT_KEY);\r\n });\r\n\r\n that.$button.on('blur' + EVENT_KEY, function () {\r\n that.$element.trigger('focus').trigger('blur');\r\n that.$button.off('blur' + EVENT_KEY);\r\n });\r\n });\r\n }\r\n\r\n setTimeout(function () {\r\n that.buildList();\r\n that.$element.trigger('loaded' + EVENT_KEY);\r\n });\r\n },\r\n\r\n createDropdown: function () {\r\n // Options\r\n // If we are multiple or showTick option is set, then add the show-tick class\r\n var showTick = (this.multiple || this.options.showTick) ? ' show-tick' : '',\r\n multiselectable = this.multiple ? ' aria-multiselectable=\"true\"' : '',\r\n inputGroup = '',\r\n autofocus = this.autofocus ? ' autofocus' : '';\r\n\r\n if (version.major < 4 && this.$element.parent().hasClass('input-group')) {\r\n inputGroup = ' input-group-btn';\r\n }\r\n\r\n // Elements\r\n var drop,\r\n header = '',\r\n searchbox = '',\r\n actionsbox = '',\r\n donebutton = '';\r\n\r\n if (this.options.header) {\r\n header =\r\n '
    ' +\r\n '' +\r\n this.options.header +\r\n '
    ';\r\n }\r\n\r\n if (this.options.liveSearch) {\r\n searchbox =\r\n '
    ' +\r\n '' +\r\n '
    ';\r\n }\r\n\r\n if (this.multiple && this.options.actionsBox) {\r\n actionsbox =\r\n '
    ' +\r\n '
    ' +\r\n '' +\r\n '' +\r\n '
    ' +\r\n '
    ';\r\n }\r\n\r\n if (this.multiple && this.options.doneButton) {\r\n donebutton =\r\n '
    ' +\r\n '
    ' +\r\n '' +\r\n '
    ' +\r\n '
    ';\r\n }\r\n\r\n drop =\r\n '
    ' +\r\n '' +\r\n '
    ' +\r\n header +\r\n searchbox +\r\n actionsbox +\r\n '
    ' +\r\n '
      ' +\r\n '
    ' +\r\n '
    ' +\r\n donebutton +\r\n '
    ' +\r\n '
    ';\r\n\r\n return $(drop);\r\n },\r\n\r\n setPositionData: function () {\r\n this.selectpicker.view.canHighlight = [];\r\n this.selectpicker.view.size = 0;\r\n\r\n for (var i = 0; i < this.selectpicker.current.data.length; i++) {\r\n var li = this.selectpicker.current.data[i],\r\n canHighlight = true;\r\n\r\n if (li.type === 'divider') {\r\n canHighlight = false;\r\n li.height = this.sizeInfo.dividerHeight;\r\n } else if (li.type === 'optgroup-label') {\r\n canHighlight = false;\r\n li.height = this.sizeInfo.dropdownHeaderHeight;\r\n } else {\r\n li.height = this.sizeInfo.liHeight;\r\n }\r\n\r\n if (li.disabled) canHighlight = false;\r\n\r\n this.selectpicker.view.canHighlight.push(canHighlight);\r\n\r\n if (canHighlight) {\r\n this.selectpicker.view.size++;\r\n li.posinset = this.selectpicker.view.size;\r\n }\r\n\r\n li.position = (i === 0 ? 0 : this.selectpicker.current.data[i - 1].position) + li.height;\r\n }\r\n },\r\n\r\n isVirtual: function () {\r\n return (this.options.virtualScroll !== false) && (this.selectpicker.main.elements.length >= this.options.virtualScroll) || this.options.virtualScroll === true;\r\n },\r\n\r\n createView: function (isSearching, setSize, refresh) {\r\n var that = this,\r\n scrollTop = 0,\r\n active = [],\r\n selected,\r\n prevActive;\r\n\r\n this.selectpicker.isSearching = isSearching;\r\n this.selectpicker.current = isSearching ? this.selectpicker.search : this.selectpicker.main;\r\n\r\n this.setPositionData();\r\n\r\n if (setSize) {\r\n if (refresh) {\r\n scrollTop = this.$menuInner[0].scrollTop;\r\n } else if (!that.multiple) {\r\n var element = that.$element[0],\r\n selectedIndex = (element.options[element.selectedIndex] || {}).liIndex;\r\n\r\n if (typeof selectedIndex === 'number' && that.options.size !== false) {\r\n var selectedData = that.selectpicker.main.data[selectedIndex],\r\n position = selectedData && selectedData.position;\r\n\r\n if (position) {\r\n scrollTop = position - ((that.sizeInfo.menuInnerHeight + that.sizeInfo.liHeight) / 2);\r\n }\r\n }\r\n }\r\n }\r\n\r\n scroll(scrollTop, true);\r\n\r\n this.$menuInner.off('scroll.createView').on('scroll.createView', function (e, updateValue) {\r\n if (!that.noScroll) scroll(this.scrollTop, updateValue);\r\n that.noScroll = false;\r\n });\r\n\r\n function scroll (scrollTop, init) {\r\n var size = that.selectpicker.current.elements.length,\r\n chunks = [],\r\n chunkSize,\r\n chunkCount,\r\n firstChunk,\r\n lastChunk,\r\n currentChunk,\r\n prevPositions,\r\n positionIsDifferent,\r\n previousElements,\r\n menuIsDifferent = true,\r\n isVirtual = that.isVirtual();\r\n\r\n that.selectpicker.view.scrollTop = scrollTop;\r\n\r\n chunkSize = Math.ceil(that.sizeInfo.menuInnerHeight / that.sizeInfo.liHeight * 1.5); // number of options in a chunk\r\n chunkCount = Math.round(size / chunkSize) || 1; // number of chunks\r\n\r\n for (var i = 0; i < chunkCount; i++) {\r\n var endOfChunk = (i + 1) * chunkSize;\r\n\r\n if (i === chunkCount - 1) {\r\n endOfChunk = size;\r\n }\r\n\r\n chunks[i] = [\r\n (i) * chunkSize + (!i ? 0 : 1),\r\n endOfChunk\r\n ];\r\n\r\n if (!size) break;\r\n\r\n if (currentChunk === undefined && scrollTop - 1 <= that.selectpicker.current.data[endOfChunk - 1].position - that.sizeInfo.menuInnerHeight) {\r\n currentChunk = i;\r\n }\r\n }\r\n\r\n if (currentChunk === undefined) currentChunk = 0;\r\n\r\n prevPositions = [that.selectpicker.view.position0, that.selectpicker.view.position1];\r\n\r\n // always display previous, current, and next chunks\r\n firstChunk = Math.max(0, currentChunk - 1);\r\n lastChunk = Math.min(chunkCount - 1, currentChunk + 1);\r\n\r\n that.selectpicker.view.position0 = isVirtual === false ? 0 : (Math.max(0, chunks[firstChunk][0]) || 0);\r\n that.selectpicker.view.position1 = isVirtual === false ? size : (Math.min(size, chunks[lastChunk][1]) || 0);\r\n\r\n positionIsDifferent = prevPositions[0] !== that.selectpicker.view.position0 || prevPositions[1] !== that.selectpicker.view.position1;\r\n\r\n if (that.activeIndex !== undefined) {\r\n prevActive = that.selectpicker.main.elements[that.prevActiveIndex];\r\n active = that.selectpicker.main.elements[that.activeIndex];\r\n selected = that.selectpicker.main.elements[that.selectedIndex];\r\n\r\n if (init) {\r\n if (that.activeIndex !== that.selectedIndex) {\r\n that.defocusItem(active);\r\n }\r\n that.activeIndex = undefined;\r\n }\r\n\r\n if (that.activeIndex && that.activeIndex !== that.selectedIndex) {\r\n that.defocusItem(selected);\r\n }\r\n }\r\n\r\n if (that.prevActiveIndex !== undefined && that.prevActiveIndex !== that.activeIndex && that.prevActiveIndex !== that.selectedIndex) {\r\n that.defocusItem(prevActive);\r\n }\r\n\r\n if (init || positionIsDifferent) {\r\n previousElements = that.selectpicker.view.visibleElements ? that.selectpicker.view.visibleElements.slice() : [];\r\n\r\n if (isVirtual === false) {\r\n that.selectpicker.view.visibleElements = that.selectpicker.current.elements;\r\n } else {\r\n that.selectpicker.view.visibleElements = that.selectpicker.current.elements.slice(that.selectpicker.view.position0, that.selectpicker.view.position1);\r\n }\r\n\r\n that.setOptionStatus();\r\n\r\n // if searching, check to make sure the list has actually been updated before updating DOM\r\n // this prevents unnecessary repaints\r\n if (isSearching || (isVirtual === false && init)) menuIsDifferent = !isEqual(previousElements, that.selectpicker.view.visibleElements);\r\n\r\n // if virtual scroll is disabled and not searching,\r\n // menu should never need to be updated more than once\r\n if ((init || isVirtual === true) && menuIsDifferent) {\r\n var menuInner = that.$menuInner[0],\r\n menuFragment = document.createDocumentFragment(),\r\n emptyMenu = menuInner.firstChild.cloneNode(false),\r\n marginTop,\r\n marginBottom,\r\n elements = that.selectpicker.view.visibleElements,\r\n toSanitize = [];\r\n\r\n // replace the existing UL with an empty one - this is faster than $.empty()\r\n menuInner.replaceChild(emptyMenu, menuInner.firstChild);\r\n\r\n for (var i = 0, visibleElementsLen = elements.length; i < visibleElementsLen; i++) {\r\n var element = elements[i],\r\n elText,\r\n elementData;\r\n\r\n if (that.options.sanitize) {\r\n elText = element.lastChild;\r\n\r\n if (elText) {\r\n elementData = that.selectpicker.current.data[i + that.selectpicker.view.position0];\r\n\r\n if (elementData && elementData.content && !elementData.sanitized) {\r\n toSanitize.push(elText);\r\n elementData.sanitized = true;\r\n }\r\n }\r\n }\r\n\r\n menuFragment.appendChild(element);\r\n }\r\n\r\n if (that.options.sanitize && toSanitize.length) {\r\n sanitizeHtml(toSanitize, that.options.whiteList, that.options.sanitizeFn);\r\n }\r\n\r\n if (isVirtual === true) {\r\n marginTop = (that.selectpicker.view.position0 === 0 ? 0 : that.selectpicker.current.data[that.selectpicker.view.position0 - 1].position);\r\n marginBottom = (that.selectpicker.view.position1 > size - 1 ? 0 : that.selectpicker.current.data[size - 1].position - that.selectpicker.current.data[that.selectpicker.view.position1 - 1].position);\r\n\r\n menuInner.firstChild.style.marginTop = marginTop + 'px';\r\n menuInner.firstChild.style.marginBottom = marginBottom + 'px';\r\n } else {\r\n menuInner.firstChild.style.marginTop = 0;\r\n menuInner.firstChild.style.marginBottom = 0;\r\n }\r\n\r\n menuInner.firstChild.appendChild(menuFragment);\r\n\r\n // if an option is encountered that is wider than the current menu width, update the menu width accordingly\r\n // switch to ResizeObserver with increased browser support\r\n if (isVirtual === true && that.sizeInfo.hasScrollBar) {\r\n var menuInnerInnerWidth = menuInner.firstChild.offsetWidth;\r\n\r\n if (init && menuInnerInnerWidth < that.sizeInfo.menuInnerInnerWidth && that.sizeInfo.totalMenuWidth > that.sizeInfo.selectWidth) {\r\n menuInner.firstChild.style.minWidth = that.sizeInfo.menuInnerInnerWidth + 'px';\r\n } else if (menuInnerInnerWidth > that.sizeInfo.menuInnerInnerWidth) {\r\n // set to 0 to get actual width of menu\r\n that.$menu[0].style.minWidth = 0;\r\n\r\n var actualMenuWidth = menuInner.firstChild.offsetWidth;\r\n\r\n if (actualMenuWidth > that.sizeInfo.menuInnerInnerWidth) {\r\n that.sizeInfo.menuInnerInnerWidth = actualMenuWidth;\r\n menuInner.firstChild.style.minWidth = that.sizeInfo.menuInnerInnerWidth + 'px';\r\n }\r\n\r\n // reset to default CSS styling\r\n that.$menu[0].style.minWidth = '';\r\n }\r\n }\r\n }\r\n }\r\n\r\n that.prevActiveIndex = that.activeIndex;\r\n\r\n if (!that.options.liveSearch) {\r\n that.$menuInner.trigger('focus');\r\n } else if (isSearching && init) {\r\n var index = 0,\r\n newActive;\r\n\r\n if (!that.selectpicker.view.canHighlight[index]) {\r\n index = 1 + that.selectpicker.view.canHighlight.slice(1).indexOf(true);\r\n }\r\n\r\n newActive = that.selectpicker.view.visibleElements[index];\r\n\r\n that.defocusItem(that.selectpicker.view.currentActive);\r\n\r\n that.activeIndex = (that.selectpicker.current.data[index] || {}).index;\r\n\r\n that.focusItem(newActive);\r\n }\r\n }\r\n\r\n $(window)\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + '.createView')\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + '.createView', function () {\r\n var isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (isActive) scroll(that.$menuInner[0].scrollTop);\r\n });\r\n },\r\n\r\n focusItem: function (li, liData, noStyle) {\r\n if (li) {\r\n liData = liData || this.selectpicker.main.data[this.activeIndex];\r\n var a = li.firstChild;\r\n\r\n if (a) {\r\n a.setAttribute('aria-setsize', this.selectpicker.view.size);\r\n a.setAttribute('aria-posinset', liData.posinset);\r\n\r\n if (noStyle !== true) {\r\n this.focusedParent.setAttribute('aria-activedescendant', a.id);\r\n li.classList.add('active');\r\n a.classList.add('active');\r\n }\r\n }\r\n }\r\n },\r\n\r\n defocusItem: function (li) {\r\n if (li) {\r\n li.classList.remove('active');\r\n if (li.firstChild) li.firstChild.classList.remove('active');\r\n }\r\n },\r\n\r\n setPlaceholder: function () {\r\n var updateIndex = false;\r\n\r\n if (this.options.title && !this.multiple) {\r\n if (!this.selectpicker.view.titleOption) this.selectpicker.view.titleOption = document.createElement('option');\r\n\r\n // this option doesn't create a new
  • element, but does add a new option at the start,\r\n // so startIndex should increase to prevent having to check every option for the bs-title-option class\r\n updateIndex = true;\r\n\r\n var element = this.$element[0],\r\n isSelected = false,\r\n titleNotAppended = !this.selectpicker.view.titleOption.parentNode;\r\n\r\n if (titleNotAppended) {\r\n // Use native JS to prepend option (faster)\r\n this.selectpicker.view.titleOption.className = 'bs-title-option';\r\n this.selectpicker.view.titleOption.value = '';\r\n\r\n // Check if selected or data-selected attribute is already set on an option. If not, select the titleOption option.\r\n // the selected item may have been changed by user or programmatically before the bootstrap select plugin runs,\r\n // if so, the select will have the data-selected attribute\r\n var $opt = $(element.options[element.selectedIndex]);\r\n isSelected = $opt.attr('selected') === undefined && this.$element.data('selected') === undefined;\r\n }\r\n\r\n if (titleNotAppended || this.selectpicker.view.titleOption.index !== 0) {\r\n element.insertBefore(this.selectpicker.view.titleOption, element.firstChild);\r\n }\r\n\r\n // Set selected *after* appending to select,\r\n // otherwise the option doesn't get selected in IE\r\n // set using selectedIndex, as setting the selected attr to true here doesn't work in IE11\r\n if (isSelected) element.selectedIndex = 0;\r\n }\r\n\r\n return updateIndex;\r\n },\r\n\r\n buildData: function () {\r\n var optionSelector = ':not([hidden]):not([data-hidden=\"true\"])',\r\n mainData = [],\r\n optID = 0,\r\n startIndex = this.setPlaceholder() ? 1 : 0; // append the titleOption if necessary and skip the first option in the loop\r\n\r\n if (this.options.hideDisabled) optionSelector += ':not(:disabled)';\r\n\r\n var selectOptions = this.$element[0].querySelectorAll('select > *' + optionSelector);\r\n\r\n function addDivider (config) {\r\n var previousData = mainData[mainData.length - 1];\r\n\r\n // ensure optgroup doesn't create back-to-back dividers\r\n if (\r\n previousData &&\r\n previousData.type === 'divider' &&\r\n (previousData.optID || config.optID)\r\n ) {\r\n return;\r\n }\r\n\r\n config = config || {};\r\n config.type = 'divider';\r\n\r\n mainData.push(config);\r\n }\r\n\r\n function addOption (option, config) {\r\n config = config || {};\r\n\r\n config.divider = option.getAttribute('data-divider') === 'true';\r\n\r\n if (config.divider) {\r\n addDivider({\r\n optID: config.optID\r\n });\r\n } else {\r\n var liIndex = mainData.length,\r\n cssText = option.style.cssText,\r\n inlineStyle = cssText ? htmlEscape(cssText) : '',\r\n optionClass = (option.className || '') + (config.optgroupClass || '');\r\n\r\n if (config.optID) optionClass = 'opt ' + optionClass;\r\n\r\n config.optionClass = optionClass.trim();\r\n config.inlineStyle = inlineStyle;\r\n config.text = option.textContent;\r\n\r\n config.content = option.getAttribute('data-content');\r\n config.tokens = option.getAttribute('data-tokens');\r\n config.subtext = option.getAttribute('data-subtext');\r\n config.icon = option.getAttribute('data-icon');\r\n\r\n option.liIndex = liIndex;\r\n\r\n config.display = config.content || config.text;\r\n config.type = 'option';\r\n config.index = liIndex;\r\n config.option = option;\r\n config.selected = !!option.selected;\r\n config.disabled = config.disabled || !!option.disabled;\r\n\r\n mainData.push(config);\r\n }\r\n }\r\n\r\n function addOptgroup (index, selectOptions) {\r\n var optgroup = selectOptions[index],\r\n previous = selectOptions[index - 1],\r\n next = selectOptions[index + 1],\r\n options = optgroup.querySelectorAll('option' + optionSelector);\r\n\r\n if (!options.length) return;\r\n\r\n var config = {\r\n display: htmlEscape(optgroup.label),\r\n subtext: optgroup.getAttribute('data-subtext'),\r\n icon: optgroup.getAttribute('data-icon'),\r\n type: 'optgroup-label',\r\n optgroupClass: ' ' + (optgroup.className || '')\r\n },\r\n headerIndex,\r\n lastIndex;\r\n\r\n optID++;\r\n\r\n if (previous) {\r\n addDivider({ optID: optID });\r\n }\r\n\r\n config.optID = optID;\r\n\r\n mainData.push(config);\r\n\r\n for (var j = 0, len = options.length; j < len; j++) {\r\n var option = options[j];\r\n\r\n if (j === 0) {\r\n headerIndex = mainData.length - 1;\r\n lastIndex = headerIndex + len;\r\n }\r\n\r\n addOption(option, {\r\n headerIndex: headerIndex,\r\n lastIndex: lastIndex,\r\n optID: config.optID,\r\n optgroupClass: config.optgroupClass,\r\n disabled: optgroup.disabled\r\n });\r\n }\r\n\r\n if (next) {\r\n addDivider({ optID: optID });\r\n }\r\n }\r\n\r\n for (var len = selectOptions.length; startIndex < len; startIndex++) {\r\n var item = selectOptions[startIndex];\r\n\r\n if (item.tagName !== 'OPTGROUP') {\r\n addOption(item, {});\r\n } else {\r\n addOptgroup(startIndex, selectOptions);\r\n }\r\n }\r\n\r\n this.selectpicker.main.data = this.selectpicker.current.data = mainData;\r\n },\r\n\r\n buildList: function () {\r\n var that = this,\r\n selectData = this.selectpicker.main.data,\r\n mainElements = [],\r\n widestOptionLength = 0;\r\n\r\n if ((that.options.showTick || that.multiple) && !elementTemplates.checkMark.parentNode) {\r\n elementTemplates.checkMark.className = this.options.iconBase + ' ' + that.options.tickIcon + ' check-mark';\r\n elementTemplates.a.appendChild(elementTemplates.checkMark);\r\n }\r\n\r\n function buildElement (item) {\r\n var liElement,\r\n combinedLength = 0;\r\n\r\n switch (item.type) {\r\n case 'divider':\r\n liElement = generateOption.li(\r\n false,\r\n classNames.DIVIDER,\r\n (item.optID ? item.optID + 'div' : undefined)\r\n );\r\n\r\n break;\r\n\r\n case 'option':\r\n liElement = generateOption.li(\r\n generateOption.a(\r\n generateOption.text.call(that, item),\r\n item.optionClass,\r\n item.inlineStyle\r\n ),\r\n '',\r\n item.optID\r\n );\r\n\r\n if (liElement.firstChild) {\r\n liElement.firstChild.id = that.selectId + '-' + item.index;\r\n }\r\n\r\n break;\r\n\r\n case 'optgroup-label':\r\n liElement = generateOption.li(\r\n generateOption.label.call(that, item),\r\n 'dropdown-header' + item.optgroupClass,\r\n item.optID\r\n );\r\n\r\n break;\r\n }\r\n\r\n mainElements.push(liElement);\r\n\r\n // count the number of characters in the option - not perfect, but should work in most cases\r\n if (item.display) combinedLength += item.display.length;\r\n if (item.subtext) combinedLength += item.subtext.length;\r\n // if there is an icon, ensure this option's width is checked\r\n if (item.icon) combinedLength += 1;\r\n\r\n if (combinedLength > widestOptionLength) {\r\n widestOptionLength = combinedLength;\r\n\r\n // guess which option is the widest\r\n // use this when calculating menu width\r\n // not perfect, but it's fast, and the width will be updating accordingly when scrolling\r\n that.selectpicker.view.widestOption = mainElements[mainElements.length - 1];\r\n }\r\n }\r\n\r\n for (var len = selectData.length, i = 0; i < len; i++) {\r\n var item = selectData[i];\r\n\r\n buildElement(item);\r\n }\r\n\r\n this.selectpicker.main.elements = this.selectpicker.current.elements = mainElements;\r\n },\r\n\r\n findLis: function () {\r\n return this.$menuInner.find('.inner > li');\r\n },\r\n\r\n render: function () {\r\n var that = this,\r\n // ensure titleOption is appended and selected (if necessary) before getting selectedOptions\r\n startIndex = this.setPlaceholder() ? 1 : 0,\r\n element = this.$element[0],\r\n selectedOptions = getSelectedOptions(element, this.options.hideDisabled),\r\n selectedCount = selectedOptions.length,\r\n button = this.$button[0],\r\n buttonInner = button.querySelector('.filter-option-inner-inner'),\r\n multipleSeparator = document.createTextNode(this.options.multipleSeparator),\r\n titleFragment = elementTemplates.fragment.cloneNode(false),\r\n showCount,\r\n countMax,\r\n hasContent = false;\r\n\r\n button.classList.toggle('bs-placeholder', that.multiple ? !selectedCount : !getSelectValues(element, selectedOptions));\r\n\r\n this.tabIndex();\r\n\r\n if (this.options.selectedTextFormat === 'static') {\r\n titleFragment = generateOption.text.call(this, { text: this.options.title }, true);\r\n } else {\r\n showCount = this.multiple && this.options.selectedTextFormat.indexOf('count') !== -1 && selectedCount > 1;\r\n\r\n // determine if the number of selected options will be shown (showCount === true)\r\n if (showCount) {\r\n countMax = this.options.selectedTextFormat.split('>');\r\n showCount = (countMax.length > 1 && selectedCount > countMax[1]) || (countMax.length === 1 && selectedCount >= 2);\r\n }\r\n\r\n // only loop through all selected options if the count won't be shown\r\n if (showCount === false) {\r\n for (var selectedIndex = startIndex; selectedIndex < selectedCount; selectedIndex++) {\r\n if (selectedIndex < 50) {\r\n var option = selectedOptions[selectedIndex],\r\n thisData = this.selectpicker.main.data[option.liIndex],\r\n titleOptions = {};\r\n\r\n if (this.multiple && selectedIndex > 0) {\r\n titleFragment.appendChild(multipleSeparator.cloneNode(false));\r\n }\r\n\r\n if (option.title) {\r\n titleOptions.text = option.title;\r\n } else if (thisData.content && that.options.showContent) {\r\n titleOptions.content = thisData.content.toString();\r\n hasContent = true;\r\n } else {\r\n if (that.options.showIcon) {\r\n titleOptions.icon = thisData.icon;\r\n }\r\n if (that.options.showSubtext && !that.multiple && thisData.subtext) titleOptions.subtext = ' ' + thisData.subtext;\r\n titleOptions.text = option.textContent.trim();\r\n }\r\n\r\n titleFragment.appendChild(generateOption.text.call(this, titleOptions, true));\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n // add ellipsis\r\n if (selectedCount > 49) {\r\n titleFragment.appendChild(document.createTextNode('...'));\r\n }\r\n } else {\r\n var optionSelector = ':not([hidden]):not([data-hidden=\"true\"]):not([data-divider=\"true\"])';\r\n if (this.options.hideDisabled) optionSelector += ':not(:disabled)';\r\n\r\n // If this is a multiselect, and selectedTextFormat is count, then show 1 of 2 selected, etc.\r\n var totalCount = this.$element[0].querySelectorAll('select > option' + optionSelector + ', optgroup' + optionSelector + ' option' + optionSelector).length,\r\n tr8nText = (typeof this.options.countSelectedText === 'function') ? this.options.countSelectedText(selectedCount, totalCount) : this.options.countSelectedText;\r\n\r\n titleFragment = generateOption.text.call(this, {\r\n text: tr8nText.replace('{0}', selectedCount.toString()).replace('{1}', totalCount.toString())\r\n }, true);\r\n }\r\n }\r\n\r\n if (this.options.title == undefined) {\r\n // use .attr to ensure undefined is returned if title attribute is not set\r\n this.options.title = this.$element.attr('title');\r\n }\r\n\r\n // If the select doesn't have a title, then use the default, or if nothing is set at all, use noneSelectedText\r\n if (!titleFragment.childNodes.length) {\r\n titleFragment = generateOption.text.call(this, {\r\n text: typeof this.options.title !== 'undefined' ? this.options.title : this.options.noneSelectedText\r\n }, true);\r\n }\r\n\r\n // strip all HTML tags and trim the result, then unescape any escaped tags\r\n button.title = titleFragment.textContent.replace(/<[^>]*>?/g, '').trim();\r\n\r\n if (this.options.sanitize && hasContent) {\r\n sanitizeHtml([titleFragment], that.options.whiteList, that.options.sanitizeFn);\r\n }\r\n\r\n buttonInner.innerHTML = '';\r\n buttonInner.appendChild(titleFragment);\r\n\r\n if (version.major < 4 && this.$newElement[0].classList.contains('bs3-has-addon')) {\r\n var filterExpand = button.querySelector('.filter-expand'),\r\n clone = buttonInner.cloneNode(true);\r\n\r\n clone.className = 'filter-expand';\r\n\r\n if (filterExpand) {\r\n button.replaceChild(clone, filterExpand);\r\n } else {\r\n button.appendChild(clone);\r\n }\r\n }\r\n\r\n this.$element.trigger('rendered' + EVENT_KEY);\r\n },\r\n\r\n /**\r\n * @param [style]\r\n * @param [status]\r\n */\r\n setStyle: function (newStyle, status) {\r\n var button = this.$button[0],\r\n newElement = this.$newElement[0],\r\n style = this.options.style.trim(),\r\n buttonClass;\r\n\r\n if (this.$element.attr('class')) {\r\n this.$newElement.addClass(this.$element.attr('class').replace(/selectpicker|mobile-device|bs-select-hidden|validate\\[.*\\]/gi, ''));\r\n }\r\n\r\n if (version.major < 4) {\r\n newElement.classList.add('bs3');\r\n\r\n if (newElement.parentNode.classList.contains('input-group') &&\r\n (newElement.previousElementSibling || newElement.nextElementSibling) &&\r\n (newElement.previousElementSibling || newElement.nextElementSibling).classList.contains('input-group-addon')\r\n ) {\r\n newElement.classList.add('bs3-has-addon');\r\n }\r\n }\r\n\r\n if (newStyle) {\r\n buttonClass = newStyle.trim();\r\n } else {\r\n buttonClass = style;\r\n }\r\n\r\n if (status == 'add') {\r\n if (buttonClass) button.classList.add.apply(button.classList, buttonClass.split(' '));\r\n } else if (status == 'remove') {\r\n if (buttonClass) button.classList.remove.apply(button.classList, buttonClass.split(' '));\r\n } else {\r\n if (style) button.classList.remove.apply(button.classList, style.split(' '));\r\n if (buttonClass) button.classList.add.apply(button.classList, buttonClass.split(' '));\r\n }\r\n },\r\n\r\n liHeight: function (refresh) {\r\n if (!refresh && (this.options.size === false || Object.keys(this.sizeInfo).length)) return;\r\n\r\n var newElement = document.createElement('div'),\r\n menu = document.createElement('div'),\r\n menuInner = document.createElement('div'),\r\n menuInnerInner = document.createElement('ul'),\r\n divider = document.createElement('li'),\r\n dropdownHeader = document.createElement('li'),\r\n li = document.createElement('li'),\r\n a = document.createElement('a'),\r\n text = document.createElement('span'),\r\n header = this.options.header && this.$menu.find('.' + classNames.POPOVERHEADER).length > 0 ? this.$menu.find('.' + classNames.POPOVERHEADER)[0].cloneNode(true) : null,\r\n search = this.options.liveSearch ? document.createElement('div') : null,\r\n actions = this.options.actionsBox && this.multiple && this.$menu.find('.bs-actionsbox').length > 0 ? this.$menu.find('.bs-actionsbox')[0].cloneNode(true) : null,\r\n doneButton = this.options.doneButton && this.multiple && this.$menu.find('.bs-donebutton').length > 0 ? this.$menu.find('.bs-donebutton')[0].cloneNode(true) : null,\r\n firstOption = this.$element.find('option')[0];\r\n\r\n this.sizeInfo.selectWidth = this.$newElement[0].offsetWidth;\r\n\r\n text.className = 'text';\r\n a.className = 'dropdown-item ' + (firstOption ? firstOption.className : '');\r\n newElement.className = this.$menu[0].parentNode.className + ' ' + classNames.SHOW;\r\n newElement.style.width = 0; // ensure button width doesn't affect natural width of menu when calculating\r\n if (this.options.width === 'auto') menu.style.minWidth = 0;\r\n menu.className = classNames.MENU + ' ' + classNames.SHOW;\r\n menuInner.className = 'inner ' + classNames.SHOW;\r\n menuInnerInner.className = classNames.MENU + ' inner ' + (version.major === '4' ? classNames.SHOW : '');\r\n divider.className = classNames.DIVIDER;\r\n dropdownHeader.className = 'dropdown-header';\r\n\r\n text.appendChild(document.createTextNode('\\u200b'));\r\n a.appendChild(text);\r\n li.appendChild(a);\r\n dropdownHeader.appendChild(text.cloneNode(true));\r\n\r\n if (this.selectpicker.view.widestOption) {\r\n menuInnerInner.appendChild(this.selectpicker.view.widestOption.cloneNode(true));\r\n }\r\n\r\n menuInnerInner.appendChild(li);\r\n menuInnerInner.appendChild(divider);\r\n menuInnerInner.appendChild(dropdownHeader);\r\n if (header) menu.appendChild(header);\r\n if (search) {\r\n var input = document.createElement('input');\r\n search.className = 'bs-searchbox';\r\n input.className = 'form-control';\r\n search.appendChild(input);\r\n menu.appendChild(search);\r\n }\r\n if (actions) menu.appendChild(actions);\r\n menuInner.appendChild(menuInnerInner);\r\n menu.appendChild(menuInner);\r\n if (doneButton) menu.appendChild(doneButton);\r\n newElement.appendChild(menu);\r\n\r\n document.body.appendChild(newElement);\r\n\r\n var liHeight = li.offsetHeight,\r\n dropdownHeaderHeight = dropdownHeader ? dropdownHeader.offsetHeight : 0,\r\n headerHeight = header ? header.offsetHeight : 0,\r\n searchHeight = search ? search.offsetHeight : 0,\r\n actionsHeight = actions ? actions.offsetHeight : 0,\r\n doneButtonHeight = doneButton ? doneButton.offsetHeight : 0,\r\n dividerHeight = $(divider).outerHeight(true),\r\n // fall back to jQuery if getComputedStyle is not supported\r\n menuStyle = window.getComputedStyle ? window.getComputedStyle(menu) : false,\r\n menuWidth = menu.offsetWidth,\r\n $menu = menuStyle ? null : $(menu),\r\n menuPadding = {\r\n vert: toInteger(menuStyle ? menuStyle.paddingTop : $menu.css('paddingTop')) +\r\n toInteger(menuStyle ? menuStyle.paddingBottom : $menu.css('paddingBottom')) +\r\n toInteger(menuStyle ? menuStyle.borderTopWidth : $menu.css('borderTopWidth')) +\r\n toInteger(menuStyle ? menuStyle.borderBottomWidth : $menu.css('borderBottomWidth')),\r\n horiz: toInteger(menuStyle ? menuStyle.paddingLeft : $menu.css('paddingLeft')) +\r\n toInteger(menuStyle ? menuStyle.paddingRight : $menu.css('paddingRight')) +\r\n toInteger(menuStyle ? menuStyle.borderLeftWidth : $menu.css('borderLeftWidth')) +\r\n toInteger(menuStyle ? menuStyle.borderRightWidth : $menu.css('borderRightWidth'))\r\n },\r\n menuExtras = {\r\n vert: menuPadding.vert +\r\n toInteger(menuStyle ? menuStyle.marginTop : $menu.css('marginTop')) +\r\n toInteger(menuStyle ? menuStyle.marginBottom : $menu.css('marginBottom')) + 2,\r\n horiz: menuPadding.horiz +\r\n toInteger(menuStyle ? menuStyle.marginLeft : $menu.css('marginLeft')) +\r\n toInteger(menuStyle ? menuStyle.marginRight : $menu.css('marginRight')) + 2\r\n },\r\n scrollBarWidth;\r\n\r\n menuInner.style.overflowY = 'scroll';\r\n\r\n scrollBarWidth = menu.offsetWidth - menuWidth;\r\n\r\n document.body.removeChild(newElement);\r\n\r\n this.sizeInfo.liHeight = liHeight;\r\n this.sizeInfo.dropdownHeaderHeight = dropdownHeaderHeight;\r\n this.sizeInfo.headerHeight = headerHeight;\r\n this.sizeInfo.searchHeight = searchHeight;\r\n this.sizeInfo.actionsHeight = actionsHeight;\r\n this.sizeInfo.doneButtonHeight = doneButtonHeight;\r\n this.sizeInfo.dividerHeight = dividerHeight;\r\n this.sizeInfo.menuPadding = menuPadding;\r\n this.sizeInfo.menuExtras = menuExtras;\r\n this.sizeInfo.menuWidth = menuWidth;\r\n this.sizeInfo.menuInnerInnerWidth = menuWidth - menuPadding.horiz;\r\n this.sizeInfo.totalMenuWidth = this.sizeInfo.menuWidth;\r\n this.sizeInfo.scrollBarWidth = scrollBarWidth;\r\n this.sizeInfo.selectHeight = this.$newElement[0].offsetHeight;\r\n\r\n this.setPositionData();\r\n },\r\n\r\n getSelectPosition: function () {\r\n var that = this,\r\n $window = $(window),\r\n pos = that.$newElement.offset(),\r\n $container = $(that.options.container),\r\n containerPos;\r\n\r\n if (that.options.container && $container.length && !$container.is('body')) {\r\n containerPos = $container.offset();\r\n containerPos.top += parseInt($container.css('borderTopWidth'));\r\n containerPos.left += parseInt($container.css('borderLeftWidth'));\r\n } else {\r\n containerPos = { top: 0, left: 0 };\r\n }\r\n\r\n var winPad = that.options.windowPadding;\r\n\r\n this.sizeInfo.selectOffsetTop = pos.top - containerPos.top - $window.scrollTop();\r\n this.sizeInfo.selectOffsetBot = $window.height() - this.sizeInfo.selectOffsetTop - this.sizeInfo.selectHeight - containerPos.top - winPad[2];\r\n this.sizeInfo.selectOffsetLeft = pos.left - containerPos.left - $window.scrollLeft();\r\n this.sizeInfo.selectOffsetRight = $window.width() - this.sizeInfo.selectOffsetLeft - this.sizeInfo.selectWidth - containerPos.left - winPad[1];\r\n this.sizeInfo.selectOffsetTop -= winPad[0];\r\n this.sizeInfo.selectOffsetLeft -= winPad[3];\r\n },\r\n\r\n setMenuSize: function (isAuto) {\r\n this.getSelectPosition();\r\n\r\n var selectWidth = this.sizeInfo.selectWidth,\r\n liHeight = this.sizeInfo.liHeight,\r\n headerHeight = this.sizeInfo.headerHeight,\r\n searchHeight = this.sizeInfo.searchHeight,\r\n actionsHeight = this.sizeInfo.actionsHeight,\r\n doneButtonHeight = this.sizeInfo.doneButtonHeight,\r\n divHeight = this.sizeInfo.dividerHeight,\r\n menuPadding = this.sizeInfo.menuPadding,\r\n menuInnerHeight,\r\n menuHeight,\r\n divLength = 0,\r\n minHeight,\r\n _minHeight,\r\n maxHeight,\r\n menuInnerMinHeight,\r\n estimate,\r\n isDropup;\r\n\r\n if (this.options.dropupAuto) {\r\n // Get the estimated height of the menu without scrollbars.\r\n // This is useful for smaller menus, where there might be plenty of room\r\n // below the button without setting dropup, but we can't know\r\n // the exact height of the menu until createView is called later\r\n estimate = liHeight * this.selectpicker.current.elements.length + menuPadding.vert;\r\n\r\n isDropup = this.sizeInfo.selectOffsetTop - this.sizeInfo.selectOffsetBot > this.sizeInfo.menuExtras.vert && estimate + this.sizeInfo.menuExtras.vert + 50 > this.sizeInfo.selectOffsetBot;\r\n\r\n // ensure dropup doesn't change while searching (so menu doesn't bounce back and forth)\r\n if (this.selectpicker.isSearching === true) {\r\n isDropup = this.selectpicker.dropup;\r\n }\r\n\r\n this.$newElement.toggleClass(classNames.DROPUP, isDropup);\r\n this.selectpicker.dropup = isDropup;\r\n }\r\n\r\n if (this.options.size === 'auto') {\r\n _minHeight = this.selectpicker.current.elements.length > 3 ? this.sizeInfo.liHeight * 3 + this.sizeInfo.menuExtras.vert - 2 : 0;\r\n menuHeight = this.sizeInfo.selectOffsetBot - this.sizeInfo.menuExtras.vert;\r\n minHeight = _minHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight;\r\n menuInnerMinHeight = Math.max(_minHeight - menuPadding.vert, 0);\r\n\r\n if (this.$newElement.hasClass(classNames.DROPUP)) {\r\n menuHeight = this.sizeInfo.selectOffsetTop - this.sizeInfo.menuExtras.vert;\r\n }\r\n\r\n maxHeight = menuHeight;\r\n menuInnerHeight = menuHeight - headerHeight - searchHeight - actionsHeight - doneButtonHeight - menuPadding.vert;\r\n } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) {\r\n for (var i = 0; i < this.options.size; i++) {\r\n if (this.selectpicker.current.data[i].type === 'divider') divLength++;\r\n }\r\n\r\n menuHeight = liHeight * this.options.size + divLength * divHeight + menuPadding.vert;\r\n menuInnerHeight = menuHeight - menuPadding.vert;\r\n maxHeight = menuHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight;\r\n minHeight = menuInnerMinHeight = '';\r\n }\r\n\r\n this.$menu.css({\r\n 'max-height': maxHeight + 'px',\r\n 'overflow': 'hidden',\r\n 'min-height': minHeight + 'px'\r\n });\r\n\r\n this.$menuInner.css({\r\n 'max-height': menuInnerHeight + 'px',\r\n 'overflow-y': 'auto',\r\n 'min-height': menuInnerMinHeight + 'px'\r\n });\r\n\r\n // ensure menuInnerHeight is always a positive number to prevent issues calculating chunkSize in createView\r\n this.sizeInfo.menuInnerHeight = Math.max(menuInnerHeight, 1);\r\n\r\n if (this.selectpicker.current.data.length && this.selectpicker.current.data[this.selectpicker.current.data.length - 1].position > this.sizeInfo.menuInnerHeight) {\r\n this.sizeInfo.hasScrollBar = true;\r\n this.sizeInfo.totalMenuWidth = this.sizeInfo.menuWidth + this.sizeInfo.scrollBarWidth;\r\n }\r\n\r\n if (this.options.dropdownAlignRight === 'auto') {\r\n this.$menu.toggleClass(classNames.MENURIGHT, this.sizeInfo.selectOffsetLeft > this.sizeInfo.selectOffsetRight && this.sizeInfo.selectOffsetRight < (this.sizeInfo.totalMenuWidth - selectWidth));\r\n }\r\n\r\n if (this.dropdown && this.dropdown._popper) this.dropdown._popper.update();\r\n },\r\n\r\n setSize: function (refresh) {\r\n this.liHeight(refresh);\r\n\r\n if (this.options.header) this.$menu.css('padding-top', 0);\r\n\r\n if (this.options.size !== false) {\r\n var that = this,\r\n $window = $(window);\r\n\r\n this.setMenuSize();\r\n\r\n if (this.options.liveSearch) {\r\n this.$searchbox\r\n .off('input.setMenuSize propertychange.setMenuSize')\r\n .on('input.setMenuSize propertychange.setMenuSize', function () {\r\n return that.setMenuSize();\r\n });\r\n }\r\n\r\n if (this.options.size === 'auto') {\r\n $window\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize')\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize', function () {\r\n return that.setMenuSize();\r\n });\r\n } else if (this.options.size && this.options.size != 'auto' && this.selectpicker.current.elements.length > this.options.size) {\r\n $window.off('resize' + EVENT_KEY + '.' + this.selectId + '.setMenuSize' + ' scroll' + EVENT_KEY + '.' + this.selectId + '.setMenuSize');\r\n }\r\n }\r\n\r\n this.createView(false, true, refresh);\r\n },\r\n\r\n setWidth: function () {\r\n var that = this;\r\n\r\n if (this.options.width === 'auto') {\r\n requestAnimationFrame(function () {\r\n that.$menu.css('min-width', '0');\r\n\r\n that.$element.on('loaded' + EVENT_KEY, function () {\r\n that.liHeight();\r\n that.setMenuSize();\r\n\r\n // Get correct width if element is hidden\r\n var $selectClone = that.$newElement.clone().appendTo('body'),\r\n btnWidth = $selectClone.css('width', 'auto').children('button').outerWidth();\r\n\r\n $selectClone.remove();\r\n\r\n // Set width to whatever's larger, button title or longest option\r\n that.sizeInfo.selectWidth = Math.max(that.sizeInfo.totalMenuWidth, btnWidth);\r\n that.$newElement.css('width', that.sizeInfo.selectWidth + 'px');\r\n });\r\n });\r\n } else if (this.options.width === 'fit') {\r\n // Remove inline min-width so width can be changed from 'auto'\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', '').addClass('fit-width');\r\n } else if (this.options.width) {\r\n // Remove inline min-width so width can be changed from 'auto'\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', this.options.width);\r\n } else {\r\n // Remove inline min-width/width so width can be changed\r\n this.$menu.css('min-width', '');\r\n this.$newElement.css('width', '');\r\n }\r\n // Remove fit-width class if width is changed programmatically\r\n if (this.$newElement.hasClass('fit-width') && this.options.width !== 'fit') {\r\n this.$newElement[0].classList.remove('fit-width');\r\n }\r\n },\r\n\r\n selectPosition: function () {\r\n this.$bsContainer = $('
    ');\r\n\r\n var that = this,\r\n $container = $(this.options.container),\r\n pos,\r\n containerPos,\r\n actualHeight,\r\n getPlacement = function ($element) {\r\n var containerPosition = {},\r\n // fall back to dropdown's default display setting if display is not manually set\r\n display = that.options.display || (\r\n // Bootstrap 3 doesn't have $.fn.dropdown.Constructor.Default\r\n $.fn.dropdown.Constructor.Default ? $.fn.dropdown.Constructor.Default.display\r\n : false\r\n );\r\n\r\n that.$bsContainer.addClass($element.attr('class').replace(/form-control|fit-width/gi, '')).toggleClass(classNames.DROPUP, $element.hasClass(classNames.DROPUP));\r\n pos = $element.offset();\r\n\r\n if (!$container.is('body')) {\r\n containerPos = $container.offset();\r\n containerPos.top += parseInt($container.css('borderTopWidth')) - $container.scrollTop();\r\n containerPos.left += parseInt($container.css('borderLeftWidth')) - $container.scrollLeft();\r\n } else {\r\n containerPos = { top: 0, left: 0 };\r\n }\r\n\r\n actualHeight = $element.hasClass(classNames.DROPUP) ? 0 : $element[0].offsetHeight;\r\n\r\n // Bootstrap 4+ uses Popper for menu positioning\r\n if (version.major < 4 || display === 'static') {\r\n containerPosition.top = pos.top - containerPos.top + actualHeight;\r\n containerPosition.left = pos.left - containerPos.left;\r\n }\r\n\r\n containerPosition.width = $element[0].offsetWidth;\r\n\r\n that.$bsContainer.css(containerPosition);\r\n };\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (that.isDisabled()) {\r\n return;\r\n }\r\n\r\n getPlacement(that.$newElement);\r\n\r\n that.$bsContainer\r\n .appendTo(that.options.container)\r\n .toggleClass(classNames.SHOW, !that.$button.hasClass(classNames.SHOW))\r\n .append(that.$menu);\r\n });\r\n\r\n $(window)\r\n .off('resize' + EVENT_KEY + '.' + this.selectId + ' scroll' + EVENT_KEY + '.' + this.selectId)\r\n .on('resize' + EVENT_KEY + '.' + this.selectId + ' scroll' + EVENT_KEY + '.' + this.selectId, function () {\r\n var isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (isActive) getPlacement(that.$newElement);\r\n });\r\n\r\n this.$element.on('hide' + EVENT_KEY, function () {\r\n that.$menu.data('height', that.$menu.height());\r\n that.$bsContainer.detach();\r\n });\r\n },\r\n\r\n setOptionStatus: function (selectedOnly) {\r\n var that = this;\r\n\r\n that.noScroll = false;\r\n\r\n if (that.selectpicker.view.visibleElements && that.selectpicker.view.visibleElements.length) {\r\n for (var i = 0; i < that.selectpicker.view.visibleElements.length; i++) {\r\n var liData = that.selectpicker.current.data[i + that.selectpicker.view.position0],\r\n option = liData.option;\r\n\r\n if (option) {\r\n if (selectedOnly !== true) {\r\n that.setDisabled(\r\n liData.index,\r\n liData.disabled\r\n );\r\n }\r\n\r\n that.setSelected(\r\n liData.index,\r\n option.selected\r\n );\r\n }\r\n }\r\n }\r\n },\r\n\r\n /**\r\n * @param {number} index - the index of the option that is being changed\r\n * @param {boolean} selected - true if the option is being selected, false if being deselected\r\n */\r\n setSelected: function (index, selected) {\r\n var li = this.selectpicker.main.elements[index],\r\n liData = this.selectpicker.main.data[index],\r\n activeIndexIsSet = this.activeIndex !== undefined,\r\n thisIsActive = this.activeIndex === index,\r\n prevActive,\r\n a,\r\n // if current option is already active\r\n // OR\r\n // if the current option is being selected, it's NOT multiple, and\r\n // activeIndex is undefined:\r\n // - when the menu is first being opened, OR\r\n // - after a search has been performed, OR\r\n // - when retainActive is false when selecting a new option (i.e. index of the newly selected option is not the same as the current activeIndex)\r\n keepActive = thisIsActive || (selected && !this.multiple && !activeIndexIsSet);\r\n\r\n liData.selected = selected;\r\n\r\n a = li.firstChild;\r\n\r\n if (selected) {\r\n this.selectedIndex = index;\r\n }\r\n\r\n li.classList.toggle('selected', selected);\r\n\r\n if (keepActive) {\r\n this.focusItem(li, liData);\r\n this.selectpicker.view.currentActive = li;\r\n this.activeIndex = index;\r\n } else {\r\n this.defocusItem(li);\r\n }\r\n\r\n if (a) {\r\n a.classList.toggle('selected', selected);\r\n\r\n if (selected) {\r\n a.setAttribute('aria-selected', true);\r\n } else {\r\n if (this.multiple) {\r\n a.setAttribute('aria-selected', false);\r\n } else {\r\n a.removeAttribute('aria-selected');\r\n }\r\n }\r\n }\r\n\r\n if (!keepActive && !activeIndexIsSet && selected && this.prevActiveIndex !== undefined) {\r\n prevActive = this.selectpicker.main.elements[this.prevActiveIndex];\r\n\r\n this.defocusItem(prevActive);\r\n }\r\n },\r\n\r\n /**\r\n * @param {number} index - the index of the option that is being disabled\r\n * @param {boolean} disabled - true if the option is being disabled, false if being enabled\r\n */\r\n setDisabled: function (index, disabled) {\r\n var li = this.selectpicker.main.elements[index],\r\n a;\r\n\r\n this.selectpicker.main.data[index].disabled = disabled;\r\n\r\n a = li.firstChild;\r\n\r\n li.classList.toggle(classNames.DISABLED, disabled);\r\n\r\n if (a) {\r\n if (version.major === '4') a.classList.toggle(classNames.DISABLED, disabled);\r\n\r\n if (disabled) {\r\n a.setAttribute('aria-disabled', disabled);\r\n a.setAttribute('tabindex', -1);\r\n } else {\r\n a.removeAttribute('aria-disabled');\r\n a.setAttribute('tabindex', 0);\r\n }\r\n }\r\n },\r\n\r\n isDisabled: function () {\r\n return this.$element[0].disabled;\r\n },\r\n\r\n checkDisabled: function () {\r\n if (this.isDisabled()) {\r\n this.$newElement[0].classList.add(classNames.DISABLED);\r\n this.$button.addClass(classNames.DISABLED).attr('tabindex', -1).attr('aria-disabled', true);\r\n } else {\r\n if (this.$button[0].classList.contains(classNames.DISABLED)) {\r\n this.$newElement[0].classList.remove(classNames.DISABLED);\r\n this.$button.removeClass(classNames.DISABLED).attr('aria-disabled', false);\r\n }\r\n\r\n if (this.$button.attr('tabindex') == -1 && !this.$element.data('tabindex')) {\r\n this.$button.removeAttr('tabindex');\r\n }\r\n }\r\n },\r\n\r\n tabIndex: function () {\r\n if (this.$element.data('tabindex') !== this.$element.attr('tabindex') &&\r\n (this.$element.attr('tabindex') !== -98 && this.$element.attr('tabindex') !== '-98')) {\r\n this.$element.data('tabindex', this.$element.attr('tabindex'));\r\n this.$button.attr('tabindex', this.$element.data('tabindex'));\r\n }\r\n\r\n this.$element.attr('tabindex', -98);\r\n },\r\n\r\n clickListener: function () {\r\n var that = this,\r\n $document = $(document);\r\n\r\n $document.data('spaceSelect', false);\r\n\r\n this.$button.on('keyup', function (e) {\r\n if (/(32)/.test(e.keyCode.toString(10)) && $document.data('spaceSelect')) {\r\n e.preventDefault();\r\n $document.data('spaceSelect', false);\r\n }\r\n });\r\n\r\n this.$newElement.on('show.bs.dropdown', function () {\r\n if (version.major > 3 && !that.dropdown) {\r\n that.dropdown = that.$button.data('bs.dropdown');\r\n that.dropdown._menu = that.$menu[0];\r\n }\r\n });\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (!that.$newElement.hasClass(classNames.SHOW)) {\r\n that.setSize();\r\n }\r\n });\r\n\r\n function setFocus () {\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$menuInner.trigger('focus');\r\n }\r\n }\r\n\r\n function checkPopperExists () {\r\n if (that.dropdown && that.dropdown._popper && that.dropdown._popper.state.isCreated) {\r\n setFocus();\r\n } else {\r\n requestAnimationFrame(checkPopperExists);\r\n }\r\n }\r\n\r\n this.$element.on('shown' + EVENT_KEY, function () {\r\n if (that.$menuInner[0].scrollTop !== that.selectpicker.view.scrollTop) {\r\n that.$menuInner[0].scrollTop = that.selectpicker.view.scrollTop;\r\n }\r\n\r\n if (version.major > 3) {\r\n requestAnimationFrame(checkPopperExists);\r\n } else {\r\n setFocus();\r\n }\r\n });\r\n\r\n // ensure posinset and setsize are correct before selecting an option via a click\r\n this.$menuInner.on('mouseenter', 'li a', function (e) {\r\n var hoverLi = this.parentElement,\r\n position0 = that.isVirtual() ? that.selectpicker.view.position0 : 0,\r\n index = Array.prototype.indexOf.call(hoverLi.parentElement.children, hoverLi),\r\n hoverData = that.selectpicker.current.data[index + position0];\r\n\r\n that.focusItem(hoverLi, hoverData, true);\r\n });\r\n\r\n this.$menuInner.on('click', 'li a', function (e, retainActive) {\r\n var $this = $(this),\r\n element = that.$element[0],\r\n position0 = that.isVirtual() ? that.selectpicker.view.position0 : 0,\r\n clickedData = that.selectpicker.current.data[$this.parent().index() + position0],\r\n clickedIndex = clickedData.index,\r\n prevValue = getSelectValues(element),\r\n prevIndex = element.selectedIndex,\r\n prevOption = element.options[prevIndex],\r\n triggerChange = true;\r\n\r\n // Don't close on multi choice menu\r\n if (that.multiple && that.options.maxOptions !== 1) {\r\n e.stopPropagation();\r\n }\r\n\r\n e.preventDefault();\r\n\r\n // Don't run if the select is disabled\r\n if (!that.isDisabled() && !$this.parent().hasClass(classNames.DISABLED)) {\r\n var option = clickedData.option,\r\n $option = $(option),\r\n state = option.selected,\r\n $optgroup = $option.parent('optgroup'),\r\n $optgroupOptions = $optgroup.find('option'),\r\n maxOptions = that.options.maxOptions,\r\n maxOptionsGrp = $optgroup.data('maxOptions') || false;\r\n\r\n if (clickedIndex === that.activeIndex) retainActive = true;\r\n\r\n if (!retainActive) {\r\n that.prevActiveIndex = that.activeIndex;\r\n that.activeIndex = undefined;\r\n }\r\n\r\n if (!that.multiple) { // Deselect all others if not multi select box\r\n if (prevOption) prevOption.selected = false;\r\n option.selected = true;\r\n that.setSelected(clickedIndex, true);\r\n } else { // Toggle the one we have chosen if we are multi select.\r\n option.selected = !state;\r\n\r\n that.setSelected(clickedIndex, !state);\r\n $this.trigger('blur');\r\n\r\n if (maxOptions !== false || maxOptionsGrp !== false) {\r\n var maxReached = maxOptions < getSelectedOptions(element).length,\r\n maxReachedGrp = maxOptionsGrp < $optgroup.find('option:selected').length;\r\n\r\n if ((maxOptions && maxReached) || (maxOptionsGrp && maxReachedGrp)) {\r\n if (maxOptions && maxOptions == 1) {\r\n element.selectedIndex = -1;\r\n option.selected = true;\r\n that.setOptionStatus(true);\r\n } else if (maxOptionsGrp && maxOptionsGrp == 1) {\r\n for (var i = 0; i < $optgroupOptions.length; i++) {\r\n var _option = $optgroupOptions[i];\r\n _option.selected = false;\r\n that.setSelected(_option.liIndex, false);\r\n }\r\n\r\n option.selected = true;\r\n that.setSelected(clickedIndex, true);\r\n } else {\r\n var maxOptionsText = typeof that.options.maxOptionsText === 'string' ? [that.options.maxOptionsText, that.options.maxOptionsText] : that.options.maxOptionsText,\r\n maxOptionsArr = typeof maxOptionsText === 'function' ? maxOptionsText(maxOptions, maxOptionsGrp) : maxOptionsText,\r\n maxTxt = maxOptionsArr[0].replace('{n}', maxOptions),\r\n maxTxtGrp = maxOptionsArr[1].replace('{n}', maxOptionsGrp),\r\n $notify = $('
    ');\r\n // If {var} is set in array, replace it\r\n /** @deprecated */\r\n if (maxOptionsArr[2]) {\r\n maxTxt = maxTxt.replace('{var}', maxOptionsArr[2][maxOptions > 1 ? 0 : 1]);\r\n maxTxtGrp = maxTxtGrp.replace('{var}', maxOptionsArr[2][maxOptionsGrp > 1 ? 0 : 1]);\r\n }\r\n\r\n option.selected = false;\r\n\r\n that.$menu.append($notify);\r\n\r\n if (maxOptions && maxReached) {\r\n $notify.append($('
    ' + maxTxt + '
    '));\r\n triggerChange = false;\r\n that.$element.trigger('maxReached' + EVENT_KEY);\r\n }\r\n\r\n if (maxOptionsGrp && maxReachedGrp) {\r\n $notify.append($('
    ' + maxTxtGrp + '
    '));\r\n triggerChange = false;\r\n that.$element.trigger('maxReachedGrp' + EVENT_KEY);\r\n }\r\n\r\n setTimeout(function () {\r\n that.setSelected(clickedIndex, false);\r\n }, 10);\r\n\r\n $notify[0].classList.add('fadeOut');\r\n\r\n setTimeout(function () {\r\n $notify.remove();\r\n }, 1050);\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (!that.multiple || (that.multiple && that.options.maxOptions === 1)) {\r\n that.$button.trigger('focus');\r\n } else if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n }\r\n\r\n // Trigger select 'change'\r\n if (triggerChange) {\r\n if (that.multiple || prevIndex !== element.selectedIndex) {\r\n // $option.prop('selected') is current option state (selected/unselected). prevValue is the value of the select prior to being changed.\r\n changedArguments = [option.index, $option.prop('selected'), prevValue];\r\n that.$element\r\n .triggerNative('change');\r\n }\r\n }\r\n }\r\n });\r\n\r\n this.$menu.on('click', 'li.' + classNames.DISABLED + ' a, .' + classNames.POPOVERHEADER + ', .' + classNames.POPOVERHEADER + ' :not(.close)', function (e) {\r\n if (e.currentTarget == this) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n if (that.options.liveSearch && !$(e.target).hasClass('close')) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n }\r\n });\r\n\r\n this.$menuInner.on('click', '.divider, .dropdown-header', function (e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n });\r\n\r\n this.$menu.on('click', '.' + classNames.POPOVERHEADER + ' .close', function () {\r\n that.$button.trigger('click');\r\n });\r\n\r\n this.$searchbox.on('click', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n this.$menu.on('click', '.actions-btn', function (e) {\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n that.$button.trigger('focus');\r\n }\r\n\r\n e.preventDefault();\r\n e.stopPropagation();\r\n\r\n if ($(this).hasClass('bs-select-all')) {\r\n that.selectAll();\r\n } else {\r\n that.deselectAll();\r\n }\r\n });\r\n\r\n this.$element\r\n .on('change' + EVENT_KEY, function () {\r\n that.render();\r\n that.$element.trigger('changed' + EVENT_KEY, changedArguments);\r\n changedArguments = null;\r\n })\r\n .on('focus' + EVENT_KEY, function () {\r\n if (!that.options.mobile) that.$button.trigger('focus');\r\n });\r\n },\r\n\r\n liveSearchListener: function () {\r\n var that = this,\r\n noResults = document.createElement('li');\r\n\r\n this.$button.on('click.bs.dropdown.data-api', function () {\r\n if (!!that.$searchbox.val()) {\r\n that.$searchbox.val('');\r\n }\r\n });\r\n\r\n this.$searchbox.on('click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n this.$searchbox.on('input propertychange', function () {\r\n var searchValue = that.$searchbox.val();\r\n\r\n that.selectpicker.search.elements = [];\r\n that.selectpicker.search.data = [];\r\n\r\n if (searchValue) {\r\n var i,\r\n searchMatch = [],\r\n q = searchValue.toUpperCase(),\r\n cache = {},\r\n cacheArr = [],\r\n searchStyle = that._searchStyle(),\r\n normalizeSearch = that.options.liveSearchNormalize;\r\n\r\n if (normalizeSearch) q = normalizeToBase(q);\r\n\r\n for (var i = 0; i < that.selectpicker.main.data.length; i++) {\r\n var li = that.selectpicker.main.data[i];\r\n\r\n if (!cache[i]) {\r\n cache[i] = stringSearch(li, q, searchStyle, normalizeSearch);\r\n }\r\n\r\n if (cache[i] && li.headerIndex !== undefined && cacheArr.indexOf(li.headerIndex) === -1) {\r\n if (li.headerIndex > 0) {\r\n cache[li.headerIndex - 1] = true;\r\n cacheArr.push(li.headerIndex - 1);\r\n }\r\n\r\n cache[li.headerIndex] = true;\r\n cacheArr.push(li.headerIndex);\r\n\r\n cache[li.lastIndex + 1] = true;\r\n }\r\n\r\n if (cache[i] && li.type !== 'optgroup-label') cacheArr.push(i);\r\n }\r\n\r\n for (var i = 0, cacheLen = cacheArr.length; i < cacheLen; i++) {\r\n var index = cacheArr[i],\r\n prevIndex = cacheArr[i - 1],\r\n li = that.selectpicker.main.data[index],\r\n liPrev = that.selectpicker.main.data[prevIndex];\r\n\r\n if (li.type !== 'divider' || (li.type === 'divider' && liPrev && liPrev.type !== 'divider' && cacheLen - 1 !== i)) {\r\n that.selectpicker.search.data.push(li);\r\n searchMatch.push(that.selectpicker.main.elements[index]);\r\n }\r\n }\r\n\r\n that.activeIndex = undefined;\r\n that.noScroll = true;\r\n that.$menuInner.scrollTop(0);\r\n that.selectpicker.search.elements = searchMatch;\r\n that.createView(true);\r\n\r\n if (!searchMatch.length) {\r\n noResults.className = 'no-results';\r\n noResults.innerHTML = that.options.noneResultsText.replace('{0}', '\"' + htmlEscape(searchValue) + '\"');\r\n that.$menuInner[0].firstChild.appendChild(noResults);\r\n }\r\n } else {\r\n that.$menuInner.scrollTop(0);\r\n that.createView(false);\r\n }\r\n });\r\n },\r\n\r\n _searchStyle: function () {\r\n return this.options.liveSearchStyle || 'contains';\r\n },\r\n\r\n val: function (value) {\r\n var element = this.$element[0];\r\n\r\n if (typeof value !== 'undefined') {\r\n var prevValue = getSelectValues(element);\r\n\r\n changedArguments = [null, null, prevValue];\r\n\r\n this.$element\r\n .val(value)\r\n .trigger('changed' + EVENT_KEY, changedArguments);\r\n\r\n if (this.$newElement.hasClass(classNames.SHOW)) {\r\n if (this.multiple) {\r\n this.setOptionStatus(true);\r\n } else {\r\n var liSelectedIndex = (element.options[element.selectedIndex] || {}).liIndex;\r\n\r\n if (typeof liSelectedIndex === 'number') {\r\n this.setSelected(this.selectedIndex, false);\r\n this.setSelected(liSelectedIndex, true);\r\n }\r\n }\r\n }\r\n\r\n this.render();\r\n\r\n changedArguments = null;\r\n\r\n return this.$element;\r\n } else {\r\n return this.$element.val();\r\n }\r\n },\r\n\r\n changeAll: function (status) {\r\n if (!this.multiple) return;\r\n if (typeof status === 'undefined') status = true;\r\n\r\n var element = this.$element[0],\r\n previousSelected = 0,\r\n currentSelected = 0,\r\n prevValue = getSelectValues(element);\r\n\r\n element.classList.add('bs-select-hidden');\r\n\r\n for (var i = 0, data = this.selectpicker.current.data, len = data.length; i < len; i++) {\r\n var liData = data[i],\r\n option = liData.option;\r\n\r\n if (option && !liData.disabled && liData.type !== 'divider') {\r\n if (liData.selected) previousSelected++;\r\n option.selected = status;\r\n if (status === true) currentSelected++;\r\n }\r\n }\r\n\r\n element.classList.remove('bs-select-hidden');\r\n\r\n if (previousSelected === currentSelected) return;\r\n\r\n this.setOptionStatus();\r\n\r\n changedArguments = [null, null, prevValue];\r\n\r\n this.$element\r\n .triggerNative('change');\r\n },\r\n\r\n selectAll: function () {\r\n return this.changeAll(true);\r\n },\r\n\r\n deselectAll: function () {\r\n return this.changeAll(false);\r\n },\r\n\r\n toggle: function (e) {\r\n e = e || window.event;\r\n\r\n if (e) e.stopPropagation();\r\n\r\n this.$button.trigger('click.bs.dropdown.data-api');\r\n },\r\n\r\n keydown: function (e) {\r\n var $this = $(this),\r\n isToggle = $this.hasClass('dropdown-toggle'),\r\n $parent = isToggle ? $this.closest('.dropdown') : $this.closest(Selector.MENU),\r\n that = $parent.data('this'),\r\n $items = that.findLis(),\r\n index,\r\n isActive,\r\n liActive,\r\n activeLi,\r\n offset,\r\n updateScroll = false,\r\n downOnTab = e.which === keyCodes.TAB && !isToggle && !that.options.selectOnTab,\r\n isArrowKey = REGEXP_ARROW.test(e.which) || downOnTab,\r\n scrollTop = that.$menuInner[0].scrollTop,\r\n isVirtual = that.isVirtual(),\r\n position0 = isVirtual === true ? that.selectpicker.view.position0 : 0;\r\n\r\n // do nothing if a function key is pressed\r\n if (e.which >= 112 && e.which <= 123) return;\r\n\r\n isActive = that.$newElement.hasClass(classNames.SHOW);\r\n\r\n if (\r\n !isActive &&\r\n (\r\n isArrowKey ||\r\n (e.which >= 48 && e.which <= 57) ||\r\n (e.which >= 96 && e.which <= 105) ||\r\n (e.which >= 65 && e.which <= 90)\r\n )\r\n ) {\r\n that.$button.trigger('click.bs.dropdown.data-api');\r\n\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n return;\r\n }\r\n }\r\n\r\n if (e.which === keyCodes.ESCAPE && isActive) {\r\n e.preventDefault();\r\n that.$button.trigger('click.bs.dropdown.data-api').trigger('focus');\r\n }\r\n\r\n if (isArrowKey) { // if up or down\r\n if (!$items.length) return;\r\n\r\n liActive = that.selectpicker.main.elements[that.activeIndex];\r\n index = liActive ? Array.prototype.indexOf.call(liActive.parentElement.children, liActive) : -1;\r\n\r\n if (index !== -1) {\r\n that.defocusItem(liActive);\r\n }\r\n\r\n if (e.which === keyCodes.ARROW_UP) { // up\r\n if (index !== -1) index--;\r\n if (index + position0 < 0) index += $items.length;\r\n\r\n if (!that.selectpicker.view.canHighlight[index + position0]) {\r\n index = that.selectpicker.view.canHighlight.slice(0, index + position0).lastIndexOf(true) - position0;\r\n if (index === -1) index = $items.length - 1;\r\n }\r\n } else if (e.which === keyCodes.ARROW_DOWN || downOnTab) { // down\r\n index++;\r\n if (index + position0 >= that.selectpicker.view.canHighlight.length) index = 0;\r\n\r\n if (!that.selectpicker.view.canHighlight[index + position0]) {\r\n index = index + 1 + that.selectpicker.view.canHighlight.slice(index + position0 + 1).indexOf(true);\r\n }\r\n }\r\n\r\n e.preventDefault();\r\n\r\n var liActiveIndex = position0 + index;\r\n\r\n if (e.which === keyCodes.ARROW_UP) { // up\r\n // scroll to bottom and highlight last option\r\n if (position0 === 0 && index === $items.length - 1) {\r\n that.$menuInner[0].scrollTop = that.$menuInner[0].scrollHeight;\r\n\r\n liActiveIndex = that.selectpicker.current.elements.length - 1;\r\n } else {\r\n activeLi = that.selectpicker.current.data[liActiveIndex];\r\n offset = activeLi.position - activeLi.height;\r\n\r\n updateScroll = offset < scrollTop;\r\n }\r\n } else if (e.which === keyCodes.ARROW_DOWN || downOnTab) { // down\r\n // scroll to top and highlight first option\r\n if (index === 0) {\r\n that.$menuInner[0].scrollTop = 0;\r\n\r\n liActiveIndex = 0;\r\n } else {\r\n activeLi = that.selectpicker.current.data[liActiveIndex];\r\n offset = activeLi.position - that.sizeInfo.menuInnerHeight;\r\n\r\n updateScroll = offset > scrollTop;\r\n }\r\n }\r\n\r\n liActive = that.selectpicker.current.elements[liActiveIndex];\r\n\r\n that.activeIndex = that.selectpicker.current.data[liActiveIndex].index;\r\n\r\n that.focusItem(liActive);\r\n\r\n that.selectpicker.view.currentActive = liActive;\r\n\r\n if (updateScroll) that.$menuInner[0].scrollTop = offset;\r\n\r\n if (that.options.liveSearch) {\r\n that.$searchbox.trigger('focus');\r\n } else {\r\n $this.trigger('focus');\r\n }\r\n } else if (\r\n (!$this.is('input') && !REGEXP_TAB_OR_ESCAPE.test(e.which)) ||\r\n (e.which === keyCodes.SPACE && that.selectpicker.keydown.keyHistory)\r\n ) {\r\n var searchMatch,\r\n matches = [],\r\n keyHistory;\r\n\r\n e.preventDefault();\r\n\r\n that.selectpicker.keydown.keyHistory += keyCodeMap[e.which];\r\n\r\n if (that.selectpicker.keydown.resetKeyHistory.cancel) clearTimeout(that.selectpicker.keydown.resetKeyHistory.cancel);\r\n that.selectpicker.keydown.resetKeyHistory.cancel = that.selectpicker.keydown.resetKeyHistory.start();\r\n\r\n keyHistory = that.selectpicker.keydown.keyHistory;\r\n\r\n // if all letters are the same, set keyHistory to just the first character when searching\r\n if (/^(.)\\1+$/.test(keyHistory)) {\r\n keyHistory = keyHistory.charAt(0);\r\n }\r\n\r\n // find matches\r\n for (var i = 0; i < that.selectpicker.current.data.length; i++) {\r\n var li = that.selectpicker.current.data[i],\r\n hasMatch;\r\n\r\n hasMatch = stringSearch(li, keyHistory, 'startsWith', true);\r\n\r\n if (hasMatch && that.selectpicker.view.canHighlight[i]) {\r\n matches.push(li.index);\r\n }\r\n }\r\n\r\n if (matches.length) {\r\n var matchIndex = 0;\r\n\r\n $items.removeClass('active').find('a').removeClass('active');\r\n\r\n // either only one key has been pressed or they are all the same key\r\n if (keyHistory.length === 1) {\r\n matchIndex = matches.indexOf(that.activeIndex);\r\n\r\n if (matchIndex === -1 || matchIndex === matches.length - 1) {\r\n matchIndex = 0;\r\n } else {\r\n matchIndex++;\r\n }\r\n }\r\n\r\n searchMatch = matches[matchIndex];\r\n\r\n activeLi = that.selectpicker.main.data[searchMatch];\r\n\r\n if (scrollTop - activeLi.position > 0) {\r\n offset = activeLi.position - activeLi.height;\r\n updateScroll = true;\r\n } else {\r\n offset = activeLi.position - that.sizeInfo.menuInnerHeight;\r\n // if the option is already visible at the current scroll position, just keep it the same\r\n updateScroll = activeLi.position > scrollTop + that.sizeInfo.menuInnerHeight;\r\n }\r\n\r\n liActive = that.selectpicker.main.elements[searchMatch];\r\n\r\n that.activeIndex = matches[matchIndex];\r\n\r\n that.focusItem(liActive);\r\n\r\n if (liActive) liActive.firstChild.focus();\r\n\r\n if (updateScroll) that.$menuInner[0].scrollTop = offset;\r\n\r\n $this.trigger('focus');\r\n }\r\n }\r\n\r\n // Select focused option if \"Enter\", \"Spacebar\" or \"Tab\" (when selectOnTab is true) are pressed inside the menu.\r\n if (\r\n isActive &&\r\n (\r\n (e.which === keyCodes.SPACE && !that.selectpicker.keydown.keyHistory) ||\r\n e.which === keyCodes.ENTER ||\r\n (e.which === keyCodes.TAB && that.options.selectOnTab)\r\n )\r\n ) {\r\n if (e.which !== keyCodes.SPACE) e.preventDefault();\r\n\r\n if (!that.options.liveSearch || e.which !== keyCodes.SPACE) {\r\n that.$menuInner.find('.active a').trigger('click', true); // retain active class\r\n $this.trigger('focus');\r\n\r\n if (!that.options.liveSearch) {\r\n // Prevent screen from scrolling if the user hits the spacebar\r\n e.preventDefault();\r\n // Fixes spacebar selection of dropdown items in FF & IE\r\n $(document).data('spaceSelect', true);\r\n }\r\n }\r\n }\r\n },\r\n\r\n mobile: function () {\r\n this.$element[0].classList.add('mobile-device');\r\n },\r\n\r\n refresh: function () {\r\n // update options if data attributes have been changed\r\n var config = $.extend({}, this.options, this.$element.data());\r\n this.options = config;\r\n\r\n this.checkDisabled();\r\n this.setStyle();\r\n this.render();\r\n this.buildData();\r\n this.buildList();\r\n this.setWidth();\r\n\r\n this.setSize(true);\r\n\r\n this.$element.trigger('refreshed' + EVENT_KEY);\r\n },\r\n\r\n hide: function () {\r\n this.$newElement.hide();\r\n },\r\n\r\n show: function () {\r\n this.$newElement.show();\r\n },\r\n\r\n remove: function () {\r\n this.$newElement.remove();\r\n this.$element.remove();\r\n },\r\n\r\n destroy: function () {\r\n this.$newElement.before(this.$element).remove();\r\n\r\n if (this.$bsContainer) {\r\n this.$bsContainer.remove();\r\n } else {\r\n this.$menu.remove();\r\n }\r\n\r\n this.$element\r\n .off(EVENT_KEY)\r\n .removeData('selectpicker')\r\n .removeClass('bs-select-hidden selectpicker');\r\n\r\n $(window).off(EVENT_KEY + '.' + this.selectId);\r\n }\r\n };\r\n\r\n // SELECTPICKER PLUGIN DEFINITION\r\n // ==============================\r\n function Plugin (option) {\r\n // get the args of the outer function..\r\n var args = arguments;\r\n // The arguments of the function are explicitly re-defined from the argument list, because the shift causes them\r\n // to get lost/corrupted in android 2.3 and IE9 #715 #775\r\n var _option = option;\r\n\r\n [].shift.apply(args);\r\n\r\n // if the version was not set successfully\r\n if (!version.success) {\r\n // try to retreive it again\r\n try {\r\n version.full = ($.fn.dropdown.Constructor.VERSION || '').split(' ')[0].split('.');\r\n } catch (err) {\r\n // fall back to use BootstrapVersion if set\r\n if (Selectpicker.BootstrapVersion) {\r\n version.full = Selectpicker.BootstrapVersion.split(' ')[0].split('.');\r\n } else {\r\n version.full = [version.major, '0', '0'];\r\n\r\n console.warn(\r\n 'There was an issue retrieving Bootstrap\\'s version. ' +\r\n 'Ensure Bootstrap is being loaded before bootstrap-select and there is no namespace collision. ' +\r\n 'If loading Bootstrap asynchronously, the version may need to be manually specified via $.fn.selectpicker.Constructor.BootstrapVersion.',\r\n err\r\n );\r\n }\r\n }\r\n\r\n version.major = version.full[0];\r\n version.success = true;\r\n }\r\n\r\n if (version.major === '4') {\r\n // some defaults need to be changed if using Bootstrap 4\r\n // check to see if they have already been manually changed before forcing them to update\r\n var toUpdate = [];\r\n\r\n if (Selectpicker.DEFAULTS.style === classNames.BUTTONCLASS) toUpdate.push({ name: 'style', className: 'BUTTONCLASS' });\r\n if (Selectpicker.DEFAULTS.iconBase === classNames.ICONBASE) toUpdate.push({ name: 'iconBase', className: 'ICONBASE' });\r\n if (Selectpicker.DEFAULTS.tickIcon === classNames.TICKICON) toUpdate.push({ name: 'tickIcon', className: 'TICKICON' });\r\n\r\n classNames.DIVIDER = 'dropdown-divider';\r\n classNames.SHOW = 'show';\r\n classNames.BUTTONCLASS = 'btn-light';\r\n classNames.POPOVERHEADER = 'popover-header';\r\n classNames.ICONBASE = '';\r\n classNames.TICKICON = 'bs-ok-default';\r\n\r\n for (var i = 0; i < toUpdate.length; i++) {\r\n var option = toUpdate[i];\r\n Selectpicker.DEFAULTS[option.name] = classNames[option.className];\r\n }\r\n }\r\n\r\n var value;\r\n var chain = this.each(function () {\r\n var $this = $(this);\r\n if ($this.is('select')) {\r\n var data = $this.data('selectpicker'),\r\n options = typeof _option == 'object' && _option;\r\n\r\n if (!data) {\r\n var dataAttributes = $this.data();\r\n\r\n for (var dataAttr in dataAttributes) {\r\n if (dataAttributes.hasOwnProperty(dataAttr) && $.inArray(dataAttr, DISALLOWED_ATTRIBUTES) !== -1) {\r\n delete dataAttributes[dataAttr];\r\n }\r\n }\r\n\r\n var config = $.extend({}, Selectpicker.DEFAULTS, $.fn.selectpicker.defaults || {}, dataAttributes, options);\r\n config.template = $.extend({}, Selectpicker.DEFAULTS.template, ($.fn.selectpicker.defaults ? $.fn.selectpicker.defaults.template : {}), dataAttributes.template, options.template);\r\n $this.data('selectpicker', (data = new Selectpicker(this, config)));\r\n } else if (options) {\r\n for (var i in options) {\r\n if (options.hasOwnProperty(i)) {\r\n data.options[i] = options[i];\r\n }\r\n }\r\n }\r\n\r\n if (typeof _option == 'string') {\r\n if (data[_option] instanceof Function) {\r\n value = data[_option].apply(data, args);\r\n } else {\r\n value = data.options[_option];\r\n }\r\n }\r\n }\r\n });\r\n\r\n if (typeof value !== 'undefined') {\r\n // noinspection JSUnusedAssignment\r\n return value;\r\n } else {\r\n return chain;\r\n }\r\n }\r\n\r\n var old = $.fn.selectpicker;\r\n $.fn.selectpicker = Plugin;\r\n $.fn.selectpicker.Constructor = Selectpicker;\r\n\r\n // SELECTPICKER NO CONFLICT\r\n // ========================\r\n $.fn.selectpicker.noConflict = function () {\r\n $.fn.selectpicker = old;\r\n return this;\r\n };\r\n\r\n // get Bootstrap's keydown event handler for either Bootstrap 4 or Bootstrap 3\r\n var bootstrapKeydown = $.fn.dropdown.Constructor._dataApiKeydownHandler || $.fn.dropdown.Constructor.prototype.keydown;\r\n\r\n $(document)\r\n .off('keydown.bs.dropdown.data-api')\r\n .on('keydown.bs.dropdown.data-api', ':not(.bootstrap-select) > [data-toggle=\"dropdown\"]', bootstrapKeydown)\r\n .on('keydown.bs.dropdown.data-api', ':not(.bootstrap-select) > .dropdown-menu', bootstrapKeydown)\r\n .on('keydown' + EVENT_KEY, '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select [role=\"listbox\"], .bootstrap-select .bs-searchbox input', Selectpicker.prototype.keydown)\r\n .on('focusin.modal', '.bootstrap-select [data-toggle=\"dropdown\"], .bootstrap-select [role=\"listbox\"], .bootstrap-select .bs-searchbox input', function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n // SELECTPICKER DATA-API\r\n // =====================\r\n $(window).on('load' + EVENT_KEY + '.data-api', function () {\r\n $('.selectpicker').each(function () {\r\n var $selectpicker = $(this);\r\n Plugin.call($selectpicker, $selectpicker.data());\r\n })\r\n });\r\n})(jQuery);\r\n"]} \ No newline at end of file diff --git a/docs/docs/dist/js/bootstrap-select.min.js b/docs/docs/dist/js/bootstrap-select.min.js index 6a4529019..21b949ef4 100644 --- a/docs/docs/dist/js/bootstrap-select.min.js +++ b/docs/docs/dist/js/bootstrap-select.min.js @@ -1,9 +1,9 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ -!function(e,t){void 0===e&&void 0!==window&&(e=window),"function"==typeof define&&define.amd?define(["jquery"],function(e){return t(e)}):"object"==typeof module&&module.exports?module.exports=t(require("jquery")):t(e.jQuery)}(this,function(e){!function(z){"use strict";var d=["sanitize","whiteList","sanitizeFn"],r=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],e={"*":["class","dir","id","lang","role","tabindex","style",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},l=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,a=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;function v(e,t){var i=e.nodeName.toLowerCase();if(-1!==z.inArray(i,t))return-1===z.inArray(i,r)||Boolean(e.nodeValue.match(l)||e.nodeValue.match(a));for(var s=z(t).filter(function(e,t){return t instanceof RegExp}),n=0,o=s.length;n]+>/g,"")),s&&(a=w(a)),a=a.toUpperCase(),o="contains"===i?0<=a.indexOf(t):a.startsWith(t)))break}return o}function L(e){return parseInt(e,10)||0}z.fn.triggerNative=function(e){var t,i=this[0];i.dispatchEvent?(u?t=new Event(e,{bubbles:!0}):(t=document.createEvent("Event")).initEvent(e,!0,!1),i.dispatchEvent(t)):i.fireEvent?((t=document.createEventObject()).eventType=e,i.fireEvent("on"+e,t)):this.trigger(e)};var f={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"},m=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,g=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]","g");function b(e){return f[e]}function w(e){return(e=e.toString())&&e.replace(m,b).replace(g,"")}var I,x,$,y,S=(I={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},x="(?:"+Object.keys(I).join("|")+")",$=RegExp(x),y=RegExp(x,"g"),function(e){return e=null==e?"":""+e,$.test(e)?e.replace(y,E):e});function E(e){return I[e]}var C={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"},N=27,D=13,H=32,W=9,B=38,M=40,R={success:!1,major:"3"};try{R.full=(z.fn.dropdown.Constructor.VERSION||"").split(" ")[0].split("."),R.major=R.full[0],R.success=!0}catch(e){}var U=0,j=".bs.select",V={DISABLED:"disabled",DIVIDER:"divider",SHOW:"open",DROPUP:"dropup",MENU:"dropdown-menu",MENURIGHT:"dropdown-menu-right",MENULEFT:"dropdown-menu-left",BUTTONCLASS:"btn-default",POPOVERHEADER:"popover-title",ICONBASE:"glyphicon",TICKICON:"glyphicon-ok"},F={MENU:"."+V.MENU},_={span:document.createElement("span"),i:document.createElement("i"),subtext:document.createElement("small"),a:document.createElement("a"),li:document.createElement("li"),whitespace:document.createTextNode("\xa0"),fragment:document.createDocumentFragment()};_.a.setAttribute("role","option"),_.subtext.className="text-muted",_.text=_.span.cloneNode(!1),_.text.className="text",_.checkMark=_.span.cloneNode(!1);var G=new RegExp(B+"|"+M),q=new RegExp("^"+W+"$|"+N),K=function(e,t,i){var s=_.li.cloneNode(!1);return e&&(1===e.nodeType||11===e.nodeType?s.appendChild(e):s.innerHTML=e),void 0!==t&&""!==t&&(s.className=t),null!=i&&s.classList.add("optgroup-"+i),s},Y=function(e,t,i){var s=_.a.cloneNode(!0);return e&&(11===e.nodeType?s.appendChild(e):s.insertAdjacentHTML("beforeend",e)),void 0!==t&&""!==t&&(s.className=t),"4"===R.major&&s.classList.add("dropdown-item"),i&&s.setAttribute("style",i),s},Z=function(e,t){var i,s,n=_.text.cloneNode(!1);if(e.content)n.innerHTML=e.content;else{if(n.textContent=e.text,e.icon){var o=_.whitespace.cloneNode(!1);(s=(!0===t?_.i:_.span).cloneNode(!1)).className=e.iconBase+" "+e.icon,_.fragment.appendChild(s),_.fragment.appendChild(o)}e.subtext&&((i=_.subtext.cloneNode(!1)).textContent=e.subtext,n.appendChild(i))}if(!0===t)for(;0'},maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,windowPadding:0,virtualScroll:600,display:!1,sanitize:!0,sanitizeFn:null,whiteList:e},Q.prototype={constructor:Q,init:function(){var i=this,e=this.$element.attr("id");U++,this.selectId="bs-select-"+U,this.$element[0].classList.add("bs-select-hidden"),this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$element[0].classList.contains("show-tick")&&(this.options.showTick=!0),this.$newElement=this.createDropdown(),this.$element.after(this.$newElement).prependTo(this.$newElement),this.$button=this.$newElement.children("button"),this.$menu=this.$newElement.children(F.MENU),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),this.$element[0].classList.remove("bs-select-hidden"),!0===this.options.dropdownAlignRight&&this.$menu[0].classList.add(V.MENURIGHT),void 0!==e&&this.$button.attr("data-id",e),this.checkDisabled(),this.clickListener(),this.options.liveSearch?(this.liveSearchListener(),this.focusedParent=this.$searchbox[0]):this.focusedParent=this.$menuInner[0],this.setStyle(),this.render(),this.setWidth(),this.options.container?this.selectPosition():this.$element.on("hide"+j,function(){if(i.isVirtual()){var e=i.$menuInner[0],t=e.firstChild.cloneNode(!1);e.replaceChild(t,e.firstChild),e.scrollTop=0}}),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile(),this.$newElement.on({"hide.bs.dropdown":function(e){i.$element.trigger("hide"+j,e)},"hidden.bs.dropdown":function(e){i.$element.trigger("hidden"+j,e)},"show.bs.dropdown":function(e){i.$element.trigger("show"+j,e)},"shown.bs.dropdown":function(e){i.$element.trigger("shown"+j,e)}}),i.$element[0].hasAttribute("required")&&this.$element.on("invalid"+j,function(){i.$button[0].classList.add("bs-invalid"),i.$element.on("shown"+j+".invalid",function(){i.$element.val(i.$element.val()).off("shown"+j+".invalid")}).on("rendered"+j,function(){this.validity.valid&&i.$button[0].classList.remove("bs-invalid"),i.$element.off("rendered"+j)}),i.$button.on("blur"+j,function(){i.$element.trigger("focus").trigger("blur"),i.$button.off("blur"+j)})}),setTimeout(function(){i.createLi(),i.$element.trigger("loaded"+j)})},createDropdown:function(){var e=this.multiple||this.options.showTick?" show-tick":"",t=this.multiple?' aria-multiselectable="true"':"",i="",s=this.autofocus?" autofocus":"";R.major<4&&this.$element.parent().hasClass("input-group")&&(i=" input-group-btn");var n,o="",r="",l="",a="";return this.options.header&&(o='
    '+this.options.header+"
    "),this.options.liveSearch&&(r=''),this.multiple&&this.options.actionsBox&&(l='
    "),this.multiple&&this.options.doneButton&&(a='
    "),n='",z(n)},setPositionData:function(){this.selectpicker.view.canHighlight=[];for(var e=this.selectpicker.view.size=0;e=this.options.virtualScroll||!0===this.options.virtualScroll},createView:function(A,e,t){var L,N,D=this,i=0,H=[];if(this.selectpicker.current=A?this.selectpicker.search:this.selectpicker.main,this.setPositionData(),e)if(t)i=this.$menuInner[0].scrollTop;else if(!D.multiple){var s=D.$element[0],n=(s.options[s.selectedIndex]||{}).liIndex;if("number"==typeof n&&!1!==D.options.size){var o=D.selectpicker.main.data[n],r=o&&o.position;r&&(i=r-(D.sizeInfo.menuInnerHeight+D.sizeInfo.liHeight)/2)}}function l(e,t){var i,s,n,o,r,l,a,c,d=D.selectpicker.current.elements.length,h=[],p=!0,u=D.isVirtual();D.selectpicker.view.scrollTop=e,i=Math.ceil(D.sizeInfo.menuInnerHeight/D.sizeInfo.liHeight*1.5),s=Math.round(d/i)||1;for(var f=0;fd-1?0:D.selectpicker.current.data[d-1].position-D.selectpicker.current.data[D.selectpicker.view.position1-1].position,b.firstChild.style.marginTop=v+"px",b.firstChild.style.marginBottom=g+"px"):(b.firstChild.style.marginTop=0,b.firstChild.style.marginBottom=0),b.firstChild.appendChild(w),!0===u&&D.sizeInfo.hasScrollBar){var C=b.firstChild.offsetWidth;if(t&&CD.sizeInfo.selectWidth)b.firstChild.style.minWidth=D.sizeInfo.menuInnerInnerWidth+"px";else if(C>D.sizeInfo.menuInnerInnerWidth){D.$menu[0].style.minWidth=0;var O=b.firstChild.offsetWidth;O>D.sizeInfo.menuInnerInnerWidth&&(D.sizeInfo.menuInnerInnerWidth=O,b.firstChild.style.minWidth=D.sizeInfo.menuInnerInnerWidth+"px"),D.$menu[0].style.minWidth=""}}}if(D.prevActiveIndex=D.activeIndex,D.options.liveSearch){if(A&&t){var z,T=0;D.selectpicker.view.canHighlight[T]||(T=1+D.selectpicker.view.canHighlight.slice(1).indexOf(!0)),z=D.selectpicker.view.visibleElements[T],D.defocusItem(D.selectpicker.view.currentActive),D.activeIndex=(D.selectpicker.current.data[T]||{}).index,D.focusItem(z)}}else D.$menuInner.trigger("focus")}l(i,!0),this.$menuInner.off("scroll.createView").on("scroll.createView",function(e,t){D.noScroll||l(this.scrollTop,t),D.noScroll=!1}),z(window).off("resize"+j+"."+this.selectId+".createView").on("resize"+j+"."+this.selectId+".createView",function(){D.$newElement.hasClass(V.SHOW)&&l(D.$menuInner[0].scrollTop)})},focusItem:function(e,t,i){if(e){t=t||this.selectpicker.main.data[this.activeIndex];var s=e.firstChild;s&&(s.setAttribute("aria-setsize",this.selectpicker.view.size),s.setAttribute("aria-posinset",t.posinset),!0!==i&&(this.focusedParent.setAttribute("aria-activedescendant",s.id),e.classList.add("active"),s.classList.add("active")))}},defocusItem:function(e){e&&(e.classList.remove("active"),e.firstChild&&e.firstChild.classList.remove("active"))},setPlaceholder:function(){var e=!1;if(this.options.title&&!this.multiple){this.selectpicker.view.titleOption||(this.selectpicker.view.titleOption=document.createElement("option")),e=!0;var t=this.$element[0],i=!1,s=!this.selectpicker.view.titleOption.parentNode;if(s)this.selectpicker.view.titleOption.className="bs-title-option",this.selectpicker.view.titleOption.value="",i=void 0===z(t.options[t.selectedIndex]).attr("selected")&&void 0===this.$element.data("selected");!s&&0===this.selectpicker.view.titleOption.index||t.insertBefore(this.selectpicker.view.titleOption,t.firstChild),i&&(t.selectedIndex=0)}return e},createLi:function(){var c=this,f=this.options.iconBase,m=':not([hidden]):not([data-hidden="true"])',v=[],g=[],d=0,b=0,e=this.setPlaceholder()?1:0;this.options.hideDisabled&&(m+=":not(:disabled)"),!c.options.showTick&&!c.multiple||_.checkMark.parentNode||(_.checkMark.className=f+" "+c.options.tickIcon+" check-mark",_.a.appendChild(_.checkMark));var t=this.$element[0].querySelectorAll("select > *"+m);function w(e){var t=g[g.length-1];t&&"divider"===t.type&&(t.optID||e.optID)||((e=e||{}).type="divider",v.push(K(!1,V.DIVIDER,e.optID?e.optID+"div":void 0)),g.push(e))}function I(e,t){if((t=t||{}).divider="true"===e.getAttribute("data-divider"),t.divider)w({optID:t.optID});else{var i=g.length,s=e.style.cssText,n=s?S(s):"",o=(e.className||"")+(t.optgroupClass||"");t.optID&&(o="opt "+o),t.text=e.textContent,t.content=e.getAttribute("data-content"),t.tokens=e.getAttribute("data-tokens"),t.subtext=e.getAttribute("data-subtext"),t.icon=e.getAttribute("data-icon"),t.iconBase=f;var r=Z(t),l=K(Y(r,o,n),"",t.optID);l.firstChild&&(l.firstChild.id=c.selectId+"-"+i),v.push(l),e.liIndex=i,t.display=t.content||t.text,t.type="option",t.index=i,t.option=e,t.disabled=t.disabled||e.disabled,g.push(t);var a=0;t.display&&(a+=t.display.length),t.subtext&&(a+=t.subtext.length),t.icon&&(a+=1),d li")},render:function(){this.setPlaceholder();var e,t=this,i=this.$element[0],s=O(i,this.options.hideDisabled),n=s.length,o=this.$button[0],r=o.querySelector(".filter-option-inner-inner"),l=document.createTextNode(this.options.multipleSeparator),a=_.fragment.cloneNode(!1),c=!1;if(o.classList.toggle("bs-placeholder",t.multiple?!n:!T(i,s)),this.tabIndex(),"static"===this.options.selectedTextFormat)a=Z({text:this.options.title},!0);else if(!1===(this.multiple&&-1!==this.options.selectedTextFormat.indexOf("count")&&1")).length&&n>e[1]||1===e.length&&2<=n))){for(var d=0;d option"+f+", optgroup"+f+" option"+f).length,v="function"==typeof this.options.countSelectedText?this.options.countSelectedText(n,m):this.options.countSelectedText;a=Z({text:v.replace("{0}",n.toString()).replace("{1}",m.toString())},!0)}if(null==this.options.title&&(this.options.title=this.$element.attr("title")),a.childNodes.length||(a=Z({text:void 0!==this.options.title?this.options.title:this.options.noneSelectedText},!0)),o.title=a.textContent.replace(/<[^>]*>?/g,"").trim(),this.options.sanitize&&c&&P([a],t.options.whiteList,t.options.sanitizeFn),r.innerHTML="",r.appendChild(a),R.major<4&&this.$newElement[0].classList.contains("bs3-has-addon")){var g=o.querySelector(".filter-expand"),b=r.cloneNode(!0);b.className="filter-expand",g?o.replaceChild(b,g):o.appendChild(b)}this.$element.trigger("rendered"+j)},setStyle:function(e,t){var i,s=this.$button[0],n=this.$newElement[0],o=this.options.style.trim();this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,"")),R.major<4&&(n.classList.add("bs3"),n.parentNode.classList.contains("input-group")&&(n.previousElementSibling||n.nextElementSibling)&&(n.previousElementSibling||n.nextElementSibling).classList.contains("input-group-addon")&&n.classList.add("bs3-has-addon")),i=e?e.trim():o,"add"==t?i&&s.classList.add.apply(s.classList,i.split(" ")):"remove"==t?i&&s.classList.remove.apply(s.classList,i.split(" ")):(o&&s.classList.remove.apply(s.classList,o.split(" ")),i&&s.classList.add.apply(s.classList,i.split(" ")))},liHeight:function(e){if(e||!1!==this.options.size&&!this.sizeInfo){this.sizeInfo||(this.sizeInfo={});var t=document.createElement("div"),i=document.createElement("div"),s=document.createElement("div"),n=document.createElement("ul"),o=document.createElement("li"),r=document.createElement("li"),l=document.createElement("li"),a=document.createElement("a"),c=document.createElement("span"),d=this.options.header&&0this.sizeInfo.menuExtras.vert&&l+this.sizeInfo.menuExtras.vert+50>this.sizeInfo.selectOffsetBot)),"auto"===this.options.size)n=3this.options.size){for(var g=0;gthis.sizeInfo.menuInnerHeight&&(this.sizeInfo.hasScrollBar=!0,this.sizeInfo.totalMenuWidth=this.sizeInfo.menuWidth+this.sizeInfo.scrollBarWidth),"auto"===this.options.dropdownAlignRight&&this.$menu.toggleClass(V.MENURIGHT,this.sizeInfo.selectOffsetLeft>this.sizeInfo.selectOffsetRight&&this.sizeInfo.selectOffsetRightthis.options.size&&i.off("resize"+j+"."+this.selectId+".setMenuSize scroll"+j+"."+this.selectId+".setMenuSize"),t.createView(!1,!0,e)}},setWidth:function(){var i=this;"auto"===this.options.width?requestAnimationFrame(function(){i.$menu.css("min-width","0"),i.$element.on("loaded"+j,function(){i.liHeight(),i.setMenuSize();var e=i.$newElement.clone().appendTo("body"),t=e.css("width","auto").children("button").outerWidth();e.remove(),i.sizeInfo.selectWidth=Math.max(i.sizeInfo.totalMenuWidth,t),i.$newElement.css("width",i.sizeInfo.selectWidth+"px")})}):"fit"===this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width","")),this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement[0].classList.remove("fit-width")},selectPosition:function(){this.$bsContainer=z('
    ');function e(e){var t={},i=r.options.display||!!z.fn.dropdown.Constructor.Default&&z.fn.dropdown.Constructor.Default.display;r.$bsContainer.addClass(e.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass(V.DROPUP,e.hasClass(V.DROPUP)),s=e.offset(),l.is("body")?n={top:0,left:0}:((n=l.offset()).top+=parseInt(l.css("borderTopWidth"))-l.scrollTop(),n.left+=parseInt(l.css("borderLeftWidth"))-l.scrollLeft()),o=e.hasClass(V.DROPUP)?0:e[0].offsetHeight,(R.major<4||"static"===i)&&(t.top=s.top-n.top+o,t.left=s.left-n.left),t.width=e[0].offsetWidth,r.$bsContainer.css(t)}var s,n,o,r=this,l=z(this.options.container);this.$button.on("click.bs.dropdown.data-api",function(){r.isDisabled()||(e(r.$newElement),r.$bsContainer.appendTo(r.options.container).toggleClass(V.SHOW,!r.$button.hasClass(V.SHOW)).append(r.$menu))}),z(window).off("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId).on("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId,function(){r.$newElement.hasClass(V.SHOW)&&e(r.$newElement)}),this.$element.on("hide"+j,function(){r.$menu.data("height",r.$menu.height()),r.$bsContainer.detach()})},setOptionStatus:function(e){var t=this;if(t.noScroll=!1,t.selectpicker.view.visibleElements&&t.selectpicker.view.visibleElements.length)for(var i=0;i
    ');$[2]&&(y=y.replace("{var}",$[2][1"+y+"
    ")),d=!1,C.$element.trigger("maxReached"+j)),g&&w&&(E.append(z("
    "+S+"
    ")),d=!1,C.$element.trigger("maxReachedGrp"+j)),setTimeout(function(){C.setSelected(r,!1)},10),E[0].classList.add("fadeOut"),setTimeout(function(){E.remove()},1050)}}}else c&&(c.selected=!1),h.selected=!0,C.setSelected(r,!0);!C.multiple||C.multiple&&1===C.options.maxOptions?C.$button.trigger("focus"):C.options.liveSearch&&C.$searchbox.trigger("focus"),d&&(!C.multiple&&a===s.selectedIndex||(A=[h.index,p.prop("selected"),l],C.$element.triggerNative("change")))}}),this.$menu.on("click","li."+V.DISABLED+" a, ."+V.POPOVERHEADER+", ."+V.POPOVERHEADER+" :not(.close)",function(e){e.currentTarget==this&&(e.preventDefault(),e.stopPropagation(),C.options.liveSearch&&!z(e.target).hasClass("close")?C.$searchbox.trigger("focus"):C.$button.trigger("focus"))}),this.$menuInner.on("click",".divider, .dropdown-header",function(e){e.preventDefault(),e.stopPropagation(),C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus")}),this.$menu.on("click","."+V.POPOVERHEADER+" .close",function(){C.$button.trigger("click")}),this.$searchbox.on("click",function(e){e.stopPropagation()}),this.$menu.on("click",".actions-btn",function(e){C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus"),e.preventDefault(),e.stopPropagation(),z(this).hasClass("bs-select-all")?C.selectAll():C.deselectAll()}),this.$element.on("change"+j,function(){C.render(),C.$element.trigger("changed"+j,A),A=null}).on("focus"+j,function(){C.options.mobile||C.$button.trigger("focus")})},liveSearchListener:function(){var u=this,f=document.createElement("li");this.$button.on("click.bs.dropdown.data-api",function(){u.$searchbox.val()&&u.$searchbox.val("")}),this.$searchbox.on("click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api",function(e){e.stopPropagation()}),this.$searchbox.on("input propertychange",function(){var e=u.$searchbox.val();if(u.selectpicker.search.elements=[],u.selectpicker.search.data=[],e){var t=[],i=e.toUpperCase(),s={},n=[],o=u._searchStyle(),r=u.options.liveSearchNormalize;r&&(i=w(i)),u._$lisSelected=u.$menuInner.find(".selected");for(var l=0;l=a.selectpicker.view.canHighlight.length&&(t=0),a.selectpicker.view.canHighlight[t+f]||(t=t+1+a.selectpicker.view.canHighlight.slice(t+f+1).indexOf(!0))),e.preventDefault();var m=f+t;e.which===B?0===f&&t===c.length-1?(a.$menuInner[0].scrollTop=a.$menuInner[0].scrollHeight,m=a.selectpicker.current.elements.length-1):d=(o=(n=a.selectpicker.current.data[m]).position-n.height)u+a.sizeInfo.menuInnerHeight),s=a.selectpicker.main.elements[v],a.activeIndex=b[x],a.focusItem(s),s&&s.firstChild.focus(),d&&(a.$menuInner[0].scrollTop=o),r.trigger("focus")}}i&&(e.which===H&&!a.selectpicker.keydown.keyHistory||e.which===D||e.which===W&&a.options.selectOnTab)&&(e.which!==H&&e.preventDefault(),a.options.liveSearch&&e.which===H||(a.$menuInner.find(".active a").trigger("click",!0),r.trigger("focus"),a.options.liveSearch||(e.preventDefault(),z(document).data("spaceSelect",!0))))}},mobile:function(){this.$element[0].classList.add("mobile-device")},refresh:function(){var e=z.extend({},this.options,this.$element.data());this.options=e,this.checkDisabled(),this.setStyle(),this.render(),this.createLi(),this.setWidth(),this.setSize(!0),this.$element.trigger("refreshed"+j)},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()},destroy:function(){this.$newElement.before(this.$element).remove(),this.$bsContainer?this.$bsContainer.remove():this.$menu.remove(),this.$element.off(j).removeData("selectpicker").removeClass("bs-select-hidden selectpicker"),z(window).off(j+"."+this.selectId)}};var ee=z.fn.selectpicker;z.fn.selectpicker=X,z.fn.selectpicker.Constructor=Q,z.fn.selectpicker.noConflict=function(){return z.fn.selectpicker=ee,this},z(document).off("keydown.bs.dropdown.data-api",'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select .dropdown-menu').on("keydown"+j,'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',Q.prototype.keydown).on("focusin.modal",'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',function(e){e.stopPropagation()}),z(window).on("load"+j+".data-api",function(){z(".selectpicker").each(function(){var e=z(this);X.call(e,e.data())})})}(e)}); +!function(e,t){void 0===e&&void 0!==window&&(e=window),"function"==typeof define&&define.amd?define(["jquery"],function(e){return t(e)}):"object"==typeof module&&module.exports?module.exports=t(require("jquery")):t(e.jQuery)}(this,function(e){!function(z){"use strict";var d=["sanitize","whiteList","sanitizeFn"],r=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],e={"*":["class","dir","id","lang","role","tabindex","style",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},l=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,a=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;function v(e,t){var i=e.nodeName.toLowerCase();if(-1!==z.inArray(i,t))return-1===z.inArray(i,r)||Boolean(e.nodeValue.match(l)||e.nodeValue.match(a));for(var s=z(t).filter(function(e,t){return t instanceof RegExp}),n=0,o=s.length;n]+>/g,"")),s&&(a=w(a)),a=a.toUpperCase(),o="contains"===i?0<=a.indexOf(t):a.startsWith(t)))break}return o}function L(e){return parseInt(e,10)||0}z.fn.triggerNative=function(e){var t,i=this[0];i.dispatchEvent?(u?t=new Event(e,{bubbles:!0}):(t=document.createEvent("Event")).initEvent(e,!0,!1),i.dispatchEvent(t)):i.fireEvent?((t=document.createEventObject()).eventType=e,i.fireEvent("on"+e,t)):this.trigger(e)};var f={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"},m=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,g=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]","g");function b(e){return f[e]}function w(e){return(e=e.toString())&&e.replace(m,b).replace(g,"")}var I,x,y,$,S,E=(I={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},x=function(e){return I[e]},y="(?:"+Object.keys(I).join("|")+")",$=RegExp(y),S=RegExp(y,"g"),function(e){return e=null==e?"":""+e,$.test(e)?e.replace(S,x):e}),C={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"},N=27,D=13,H=32,P=9,W=38,M=40,R={success:!1,major:"3"};try{R.full=(z.fn.dropdown.Constructor.VERSION||"").split(" ")[0].split("."),R.major=R.full[0],R.success=!0}catch(e){}var U=0,j=".bs.select",V={DISABLED:"disabled",DIVIDER:"divider",SHOW:"open",DROPUP:"dropup",MENU:"dropdown-menu",MENURIGHT:"dropdown-menu-right",MENULEFT:"dropdown-menu-left",BUTTONCLASS:"btn-default",POPOVERHEADER:"popover-title",ICONBASE:"glyphicon",TICKICON:"glyphicon-ok"},F={MENU:"."+V.MENU},_={span:document.createElement("span"),i:document.createElement("i"),subtext:document.createElement("small"),a:document.createElement("a"),li:document.createElement("li"),whitespace:document.createTextNode("\xa0"),fragment:document.createDocumentFragment()};_.a.setAttribute("role","option"),"4"===R.major&&(_.a.className="dropdown-item"),_.subtext.className="text-muted",_.text=_.span.cloneNode(!1),_.text.className="text",_.checkMark=_.span.cloneNode(!1);var G=new RegExp(W+"|"+M),q=new RegExp("^"+P+"$|"+N),K={li:function(e,t,i){var s=_.li.cloneNode(!1);return e&&(1===e.nodeType||11===e.nodeType?s.appendChild(e):s.innerHTML=e),void 0!==t&&""!==t&&(s.className=t),null!=i&&s.classList.add("optgroup-"+i),s},a:function(e,t,i){var s=_.a.cloneNode(!0);return e&&(11===e.nodeType?s.appendChild(e):s.insertAdjacentHTML("beforeend",e)),void 0!==t&&""!==t&&s.classList.add.apply(s.classList,t.split(" ")),i&&s.setAttribute("style",i),s},text:function(e,t){var i,s,n=_.text.cloneNode(!1);if(e.content)n.innerHTML=e.content;else{if(n.textContent=e.text,e.icon){var o=_.whitespace.cloneNode(!1);(s=(!0===t?_.i:_.span).cloneNode(!1)).className=this.options.iconBase+" "+e.icon,_.fragment.appendChild(s),_.fragment.appendChild(o)}e.subtext&&((i=_.subtext.cloneNode(!1)).textContent=e.subtext,n.appendChild(i))}if(!0===t)for(;0'},maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,windowPadding:0,virtualScroll:600,display:!1,sanitize:!0,sanitizeFn:null,whiteList:e},Y.prototype={constructor:Y,init:function(){var i=this,e=this.$element.attr("id");U++,this.selectId="bs-select-"+U,this.$element[0].classList.add("bs-select-hidden"),this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$element[0].classList.contains("show-tick")&&(this.options.showTick=!0),this.$newElement=this.createDropdown(),this.buildData(),this.$element.after(this.$newElement).prependTo(this.$newElement),this.$button=this.$newElement.children("button"),this.$menu=this.$newElement.children(F.MENU),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),this.$element[0].classList.remove("bs-select-hidden"),!0===this.options.dropdownAlignRight&&this.$menu[0].classList.add(V.MENURIGHT),void 0!==e&&this.$button.attr("data-id",e),this.checkDisabled(),this.clickListener(),this.options.liveSearch?(this.liveSearchListener(),this.focusedParent=this.$searchbox[0]):this.focusedParent=this.$menuInner[0],this.setStyle(),this.render(),this.setWidth(),this.options.container?this.selectPosition():this.$element.on("hide"+j,function(){if(i.isVirtual()){var e=i.$menuInner[0],t=e.firstChild.cloneNode(!1);e.replaceChild(t,e.firstChild),e.scrollTop=0}}),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile(),this.$newElement.on({"hide.bs.dropdown":function(e){i.$element.trigger("hide"+j,e)},"hidden.bs.dropdown":function(e){i.$element.trigger("hidden"+j,e)},"show.bs.dropdown":function(e){i.$element.trigger("show"+j,e)},"shown.bs.dropdown":function(e){i.$element.trigger("shown"+j,e)}}),i.$element[0].hasAttribute("required")&&this.$element.on("invalid"+j,function(){i.$button[0].classList.add("bs-invalid"),i.$element.on("shown"+j+".invalid",function(){i.$element.val(i.$element.val()).off("shown"+j+".invalid")}).on("rendered"+j,function(){this.validity.valid&&i.$button[0].classList.remove("bs-invalid"),i.$element.off("rendered"+j)}),i.$button.on("blur"+j,function(){i.$element.trigger("focus").trigger("blur"),i.$button.off("blur"+j)})}),setTimeout(function(){i.buildList(),i.$element.trigger("loaded"+j)})},createDropdown:function(){var e=this.multiple||this.options.showTick?" show-tick":"",t=this.multiple?' aria-multiselectable="true"':"",i="",s=this.autofocus?" autofocus":"";R.major<4&&this.$element.parent().hasClass("input-group")&&(i=" input-group-btn");var n,o="",r="",l="",a="";return this.options.header&&(o='
    '+this.options.header+"
    "),this.options.liveSearch&&(r=''),this.multiple&&this.options.actionsBox&&(l='
    "),this.multiple&&this.options.doneButton&&(a='
    "),n='",z(n)},setPositionData:function(){this.selectpicker.view.canHighlight=[];for(var e=this.selectpicker.view.size=0;e=this.options.virtualScroll||!0===this.options.virtualScroll},createView:function(N,e,t){var D,H,P=this,i=0,W=[];if(this.selectpicker.isSearching=N,this.selectpicker.current=N?this.selectpicker.search:this.selectpicker.main,this.setPositionData(),e)if(t)i=this.$menuInner[0].scrollTop;else if(!P.multiple){var s=P.$element[0],n=(s.options[s.selectedIndex]||{}).liIndex;if("number"==typeof n&&!1!==P.options.size){var o=P.selectpicker.main.data[n],r=o&&o.position;r&&(i=r-(P.sizeInfo.menuInnerHeight+P.sizeInfo.liHeight)/2)}}function l(e,t){var i,s,n,o,r,l,a,c,d,h,p=P.selectpicker.current.elements.length,u=[],f=!0,m=P.isVirtual();P.selectpicker.view.scrollTop=e,i=Math.ceil(P.sizeInfo.menuInnerHeight/P.sizeInfo.liHeight*1.5),s=Math.round(p/i)||1;for(var v=0;vp-1?0:P.selectpicker.current.data[p-1].position-P.selectpicker.current.data[P.selectpicker.view.position1-1].position,I.firstChild.style.marginTop=b+"px",w+"px"):I.firstChild.style.marginTop=0,I.firstChild.appendChild(x),!0===m&&P.sizeInfo.hasScrollBar){var z=I.firstChild.offsetWidth;if(t&&zP.sizeInfo.selectWidth)I.firstChild.style.minWidth=P.sizeInfo.menuInnerInnerWidth+"px";else if(z>P.sizeInfo.menuInnerInnerWidth){P.$menu[0].style.minWidth=0;var T=I.firstChild.offsetWidth;T>P.sizeInfo.menuInnerInnerWidth&&(P.sizeInfo.menuInnerInnerWidth=T,I.firstChild.style.minWidth=P.sizeInfo.menuInnerInnerWidth+"px"),P.$menu[0].style.minWidth=""}}}if(P.prevActiveIndex=P.activeIndex,P.options.liveSearch){if(N&&t){var A,L=0;P.selectpicker.view.canHighlight[L]||(L=1+P.selectpicker.view.canHighlight.slice(1).indexOf(!0)),A=P.selectpicker.view.visibleElements[L],P.defocusItem(P.selectpicker.view.currentActive),P.activeIndex=(P.selectpicker.current.data[L]||{}).index,P.focusItem(A)}}else P.$menuInner.trigger("focus")}l(i,!0),this.$menuInner.off("scroll.createView").on("scroll.createView",function(e,t){P.noScroll||l(this.scrollTop,t),P.noScroll=!1}),z(window).off("resize"+j+"."+this.selectId+".createView").on("resize"+j+"."+this.selectId+".createView",function(){P.$newElement.hasClass(V.SHOW)&&l(P.$menuInner[0].scrollTop)})},focusItem:function(e,t,i){if(e){t=t||this.selectpicker.main.data[this.activeIndex];var s=e.firstChild;s&&(s.setAttribute("aria-setsize",this.selectpicker.view.size),s.setAttribute("aria-posinset",t.posinset),!0!==i&&(this.focusedParent.setAttribute("aria-activedescendant",s.id),e.classList.add("active"),s.classList.add("active")))}},defocusItem:function(e){e&&(e.classList.remove("active"),e.firstChild&&e.firstChild.classList.remove("active"))},setPlaceholder:function(){var e=!1;if(this.options.title&&!this.multiple){this.selectpicker.view.titleOption||(this.selectpicker.view.titleOption=document.createElement("option")),e=!0;var t=this.$element[0],i=!1,s=!this.selectpicker.view.titleOption.parentNode;if(s)this.selectpicker.view.titleOption.className="bs-title-option",this.selectpicker.view.titleOption.value="",i=void 0===z(t.options[t.selectedIndex]).attr("selected")&&void 0===this.$element.data("selected");(s||0!==this.selectpicker.view.titleOption.index)&&t.insertBefore(this.selectpicker.view.titleOption,t.firstChild),i&&(t.selectedIndex=0)}return e},buildData:function(){var p=':not([hidden]):not([data-hidden="true"])',u=[],f=0,e=this.setPlaceholder()?1:0;this.options.hideDisabled&&(p+=":not(:disabled)");var t=this.$element[0].querySelectorAll("select > *"+p);function m(e){var t=u[u.length-1];t&&"divider"===t.type&&(t.optID||e.optID)||((e=e||{}).type="divider",u.push(e))}function v(e,t){if((t=t||{}).divider="true"===e.getAttribute("data-divider"),t.divider)m({optID:t.optID});else{var i=u.length,s=e.style.cssText,n=s?E(s):"",o=(e.className||"")+(t.optgroupClass||"");t.optID&&(o="opt "+o),t.optionClass=o.trim(),t.inlineStyle=n,t.text=e.textContent,t.content=e.getAttribute("data-content"),t.tokens=e.getAttribute("data-tokens"),t.subtext=e.getAttribute("data-subtext"),t.icon=e.getAttribute("data-icon"),e.liIndex=i,t.display=t.content||t.text,t.type="option",t.index=i,t.option=e,t.selected=!!e.selected,t.disabled=t.disabled||!!e.disabled,u.push(t)}}function i(e,t){var i=t[e],s=t[e-1],n=t[e+1],o=i.querySelectorAll("option"+p);if(o.length){var r,l,a={display:E(i.label),subtext:i.getAttribute("data-subtext"),icon:i.getAttribute("data-icon"),type:"optgroup-label",optgroupClass:" "+(i.className||"")};f++,s&&m({optID:f}),a.optID=f,u.push(a);for(var c=0,d=o.length;c li")},render:function(){var e,t,i=this,s=this.setPlaceholder()?1:0,n=this.$element[0],o=O(n,this.options.hideDisabled),r=o.length,l=this.$button[0],a=l.querySelector(".filter-option-inner-inner"),c=document.createTextNode(this.options.multipleSeparator),d=_.fragment.cloneNode(!1),h=!1;if(l.classList.toggle("bs-placeholder",i.multiple?!r:!T(n,o)),this.tabIndex(),"static"===this.options.selectedTextFormat)d=K.text.call(this,{text:this.options.title},!0);else if((e=this.multiple&&-1!==this.options.selectedTextFormat.indexOf("count")&&1")).length&&r>t[1]||1===t.length&&2<=r),!1===e){for(var p=s;p option"+v+", optgroup"+v+" option"+v).length,b="function"==typeof this.options.countSelectedText?this.options.countSelectedText(r,g):this.options.countSelectedText;d=K.text.call(this,{text:b.replace("{0}",r.toString()).replace("{1}",g.toString())},!0)}if(null==this.options.title&&(this.options.title=this.$element.attr("title")),d.childNodes.length||(d=K.text.call(this,{text:void 0!==this.options.title?this.options.title:this.options.noneSelectedText},!0)),l.title=d.textContent.replace(/<[^>]*>?/g,"").trim(),this.options.sanitize&&h&&B([d],i.options.whiteList,i.options.sanitizeFn),a.innerHTML="",a.appendChild(d),R.major<4&&this.$newElement[0].classList.contains("bs3-has-addon")){var w=l.querySelector(".filter-expand"),I=a.cloneNode(!0);I.className="filter-expand",w?l.replaceChild(I,w):l.appendChild(I)}this.$element.trigger("rendered"+j)},setStyle:function(e,t){var i,s=this.$button[0],n=this.$newElement[0],o=this.options.style.trim();this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,"")),R.major<4&&(n.classList.add("bs3"),n.parentNode.classList.contains("input-group")&&(n.previousElementSibling||n.nextElementSibling)&&(n.previousElementSibling||n.nextElementSibling).classList.contains("input-group-addon")&&n.classList.add("bs3-has-addon")),i=e?e.trim():o,"add"==t?i&&s.classList.add.apply(s.classList,i.split(" ")):"remove"==t?i&&s.classList.remove.apply(s.classList,i.split(" ")):(o&&s.classList.remove.apply(s.classList,o.split(" ")),i&&s.classList.add.apply(s.classList,i.split(" ")))},liHeight:function(e){if(e||!1!==this.options.size&&!Object.keys(this.sizeInfo).length){var t=document.createElement("div"),i=document.createElement("div"),s=document.createElement("div"),n=document.createElement("ul"),o=document.createElement("li"),r=document.createElement("li"),l=document.createElement("li"),a=document.createElement("a"),c=document.createElement("span"),d=this.options.header&&0this.sizeInfo.menuExtras.vert&&l+this.sizeInfo.menuExtras.vert+50>this.sizeInfo.selectOffsetBot,!0===this.selectpicker.isSearching&&(a=this.selectpicker.dropup),this.$newElement.toggleClass(V.DROPUP,a),this.selectpicker.dropup=a),"auto"===this.options.size)n=3this.options.size){for(var b=0;bthis.sizeInfo.menuInnerHeight&&(this.sizeInfo.hasScrollBar=!0,this.sizeInfo.totalMenuWidth=this.sizeInfo.menuWidth+this.sizeInfo.scrollBarWidth),"auto"===this.options.dropdownAlignRight&&this.$menu.toggleClass(V.MENURIGHT,this.sizeInfo.selectOffsetLeft>this.sizeInfo.selectOffsetRight&&this.sizeInfo.selectOffsetRightthis.options.size&&i.off("resize"+j+"."+this.selectId+".setMenuSize scroll"+j+"."+this.selectId+".setMenuSize")}this.createView(!1,!0,e)},setWidth:function(){var i=this;"auto"===this.options.width?requestAnimationFrame(function(){i.$menu.css("min-width","0"),i.$element.on("loaded"+j,function(){i.liHeight(),i.setMenuSize();var e=i.$newElement.clone().appendTo("body"),t=e.css("width","auto").children("button").outerWidth();e.remove(),i.sizeInfo.selectWidth=Math.max(i.sizeInfo.totalMenuWidth,t),i.$newElement.css("width",i.sizeInfo.selectWidth+"px")})}):"fit"===this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width","")),this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement[0].classList.remove("fit-width")},selectPosition:function(){this.$bsContainer=z('
    ');var s,n,o,r=this,l=z(this.options.container),e=function(e){var t={},i=r.options.display||!!z.fn.dropdown.Constructor.Default&&z.fn.dropdown.Constructor.Default.display;r.$bsContainer.addClass(e.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass(V.DROPUP,e.hasClass(V.DROPUP)),s=e.offset(),l.is("body")?n={top:0,left:0}:((n=l.offset()).top+=parseInt(l.css("borderTopWidth"))-l.scrollTop(),n.left+=parseInt(l.css("borderLeftWidth"))-l.scrollLeft()),o=e.hasClass(V.DROPUP)?0:e[0].offsetHeight,(R.major<4||"static"===i)&&(t.top=s.top-n.top+o,t.left=s.left-n.left),t.width=e[0].offsetWidth,r.$bsContainer.css(t)};this.$button.on("click.bs.dropdown.data-api",function(){r.isDisabled()||(e(r.$newElement),r.$bsContainer.appendTo(r.options.container).toggleClass(V.SHOW,!r.$button.hasClass(V.SHOW)).append(r.$menu))}),z(window).off("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId).on("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId,function(){r.$newElement.hasClass(V.SHOW)&&e(r.$newElement)}),this.$element.on("hide"+j,function(){r.$menu.data("height",r.$menu.height()),r.$bsContainer.detach()})},setOptionStatus:function(e){var t=this;if(t.noScroll=!1,t.selectpicker.view.visibleElements&&t.selectpicker.view.visibleElements.length)for(var i=0;i
    ');y[2]&&($=$.replace("{var}",y[2][1"+$+"")),d=!1,C.$element.trigger("maxReached"+j)),g&&w&&(E.append(z("
    "+S+"
    ")),d=!1,C.$element.trigger("maxReachedGrp"+j)),setTimeout(function(){C.setSelected(r,!1)},10),E[0].classList.add("fadeOut"),setTimeout(function(){E.remove()},1050)}}}else c&&(c.selected=!1),h.selected=!0,C.setSelected(r,!0);!C.multiple||C.multiple&&1===C.options.maxOptions?C.$button.trigger("focus"):C.options.liveSearch&&C.$searchbox.trigger("focus"),d&&(C.multiple||a!==s.selectedIndex)&&(A=[h.index,p.prop("selected"),l],C.$element.triggerNative("change"))}}),this.$menu.on("click","li."+V.DISABLED+" a, ."+V.POPOVERHEADER+", ."+V.POPOVERHEADER+" :not(.close)",function(e){e.currentTarget==this&&(e.preventDefault(),e.stopPropagation(),C.options.liveSearch&&!z(e.target).hasClass("close")?C.$searchbox.trigger("focus"):C.$button.trigger("focus"))}),this.$menuInner.on("click",".divider, .dropdown-header",function(e){e.preventDefault(),e.stopPropagation(),C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus")}),this.$menu.on("click","."+V.POPOVERHEADER+" .close",function(){C.$button.trigger("click")}),this.$searchbox.on("click",function(e){e.stopPropagation()}),this.$menu.on("click",".actions-btn",function(e){C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus"),e.preventDefault(),e.stopPropagation(),z(this).hasClass("bs-select-all")?C.selectAll():C.deselectAll()}),this.$element.on("change"+j,function(){C.render(),C.$element.trigger("changed"+j,A),A=null}).on("focus"+j,function(){C.options.mobile||C.$button.trigger("focus")})},liveSearchListener:function(){var u=this,f=document.createElement("li");this.$button.on("click.bs.dropdown.data-api",function(){u.$searchbox.val()&&u.$searchbox.val("")}),this.$searchbox.on("click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api",function(e){e.stopPropagation()}),this.$searchbox.on("input propertychange",function(){var e=u.$searchbox.val();if(u.selectpicker.search.elements=[],u.selectpicker.search.data=[],e){var t=[],i=e.toUpperCase(),s={},n=[],o=u._searchStyle(),r=u.options.liveSearchNormalize;r&&(i=w(i));for(var l=0;l=a.selectpicker.view.canHighlight.length&&(t=0),a.selectpicker.view.canHighlight[t+f]||(t=t+1+a.selectpicker.view.canHighlight.slice(t+f+1).indexOf(!0))),e.preventDefault();var m=f+t;e.which===W?0===f&&t===c.length-1?(a.$menuInner[0].scrollTop=a.$menuInner[0].scrollHeight,m=a.selectpicker.current.elements.length-1):d=(o=(n=a.selectpicker.current.data[m]).position-n.height)u+a.sizeInfo.menuInnerHeight),s=a.selectpicker.main.elements[v],a.activeIndex=b[x],a.focusItem(s),s&&s.firstChild.focus(),d&&(a.$menuInner[0].scrollTop=o),r.trigger("focus")}}i&&(e.which===H&&!a.selectpicker.keydown.keyHistory||e.which===D||e.which===P&&a.options.selectOnTab)&&(e.which!==H&&e.preventDefault(),a.options.liveSearch&&e.which===H||(a.$menuInner.find(".active a").trigger("click",!0),r.trigger("focus"),a.options.liveSearch||(e.preventDefault(),z(document).data("spaceSelect",!0))))}},mobile:function(){this.$element[0].classList.add("mobile-device")},refresh:function(){var e=z.extend({},this.options,this.$element.data());this.options=e,this.checkDisabled(),this.setStyle(),this.render(),this.buildData(),this.buildList(),this.setWidth(),this.setSize(!0),this.$element.trigger("refreshed"+j)},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()},destroy:function(){this.$newElement.before(this.$element).remove(),this.$bsContainer?this.$bsContainer.remove():this.$menu.remove(),this.$element.off(j).removeData("selectpicker").removeClass("bs-select-hidden selectpicker"),z(window).off(j+"."+this.selectId)}};var J=z.fn.selectpicker;z.fn.selectpicker=Z,z.fn.selectpicker.Constructor=Y,z.fn.selectpicker.noConflict=function(){return z.fn.selectpicker=J,this};var Q=z.fn.dropdown.Constructor._dataApiKeydownHandler||z.fn.dropdown.Constructor.prototype.keydown;z(document).off("keydown.bs.dropdown.data-api").on("keydown.bs.dropdown.data-api",':not(.bootstrap-select) > [data-toggle="dropdown"]',Q).on("keydown.bs.dropdown.data-api",":not(.bootstrap-select) > .dropdown-menu",Q).on("keydown"+j,'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',Y.prototype.keydown).on("focusin.modal",'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',function(e){e.stopPropagation()}),z(window).on("load"+j+".data-api",function(){z(".selectpicker").each(function(){var e=z(this);Z.call(e,e.data())})})}(e)}); //# sourceMappingURL=bootstrap-select.min.js.map \ No newline at end of file diff --git a/docs/docs/dist/js/bootstrap-select.min.js.map b/docs/docs/dist/js/bootstrap-select.min.js.map index e81e756dc..ed99753ec 100644 --- a/docs/docs/dist/js/bootstrap-select.min.js.map +++ b/docs/docs/dist/js/bootstrap-select.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../js/bootstrap-select.js"],"names":["$","DISALLOWED_ATTRIBUTES","uriAttrs","DefaultWhitelist","*","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","i","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","toLowerCase","inArray","Boolean","nodeValue","match","regExp","filter","index","value","RegExp","l","length","sanitizeHtml","unsafeElements","whiteList","sanitizeFn","whitelistKeys","Object","keys","len","elements","querySelectorAll","j","len2","el","elName","indexOf","attributeList","slice","call","attributes","whitelistedAttributes","concat","k","len3","removeAttribute","parentNode","removeChild","document","createElement","view","classListProp","protoProp","elemCtrProto","Element","objCtr","classListGetter","$elem","this","add","classes","Array","prototype","arguments","join","addClass","remove","removeClass","toggle","force","toggleClass","contains","hasClass","defineProperty","classListPropDesc","get","enumerable","configurable","ex","undefined","number","__defineGetter__","window","toString","testElement","classList","_add","DOMTokenList","_remove","forEach","bind","_toggle","token","startsWith","search","TypeError","string","String","stringLength","searchString","searchLength","position","pos","Number","start","Math","min","max","charCodeAt","getSelectedOptions","select","ignoreDisabled","opt","selectedOptions","options","disabled","tagName","push","getSelectValues","text","multiple","object","$defineProperty","result","error","writable","o","r","hasOwnProperty","HTMLSelectElement","valHooks","useDefault","_set","set","elem","data","apply","changedArguments","EventIsSupported","Event","e","stringSearch","method","normalize","stringTypes","searchSuccess","stringType","replace","normalizeToBase","toUpperCase","toInteger","parseInt","fn","triggerNative","eventName","event","dispatchEvent","bubbles","createEvent","initEvent","fireEvent","createEventObject","eventType","trigger","deburredLetters","À","Á","Â","Ã","Ä","Å","à","á","â","ã","ä","å","Ç","ç","Ð","ð","È","É","Ê","Ë","è","é","ê","ë","Ì","Í","Î","Ï","ì","í","î","ï","Ñ","ñ","Ò","Ó","Ô","Õ","Ö","Ø","ò","ó","ô","õ","ö","ø","Ù","Ú","Û","Ü","ù","ú","û","ü","Ý","ý","ÿ","Æ","æ","Þ","þ","ß","Ā","Ă","Ą","ā","ă","ą","Ć","Ĉ","Ċ","Č","ć","ĉ","ċ","č","Ď","Đ","ď","đ","Ē","Ĕ","Ė","Ę","Ě","ē","ĕ","ė","ę","ě","Ĝ","Ğ","Ġ","Ģ","ĝ","ğ","ġ","ģ","Ĥ","Ħ","ĥ","ħ","Ĩ","Ī","Ĭ","Į","İ","ĩ","ī","ĭ","į","ı","Ĵ","ĵ","Ķ","ķ","ĸ","Ĺ","Ļ","Ľ","Ŀ","Ł","ĺ","ļ","ľ","ŀ","ł","Ń","Ņ","Ň","Ŋ","ń","ņ","ň","ŋ","Ō","Ŏ","Ő","ō","ŏ","ő","Ŕ","Ŗ","Ř","ŕ","ŗ","ř","Ś","Ŝ","Ş","Š","ś","ŝ","ş","š","Ţ","Ť","Ŧ","ţ","ť","ŧ","Ũ","Ū","Ŭ","Ů","Ű","Ų","ũ","ū","ŭ","ů","ű","ų","Ŵ","ŵ","Ŷ","ŷ","Ÿ","Ź","Ż","Ž","ź","ż","ž","IJ","ij","Œ","œ","ʼn","ſ","reLatin","reComboMark","deburrLetter","key","map","source","testRegexp","replaceRegexp","htmlEscape","&","<",">","\"","'","`","test","escaper","keyCodeMap","32","48","49","50","51","52","53","54","55","56","57","59","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","96","97","98","99","100","101","102","103","104","105","keyCodes","version","success","major","full","dropdown","Constructor","VERSION","split","err","selectId","EVENT_KEY","classNames","DISABLED","DIVIDER","SHOW","DROPUP","MENU","MENURIGHT","MENULEFT","BUTTONCLASS","POPOVERHEADER","ICONBASE","TICKICON","Selector","elementTemplates","subtext","whitespace","createTextNode","fragment","createDocumentFragment","setAttribute","className","cloneNode","checkMark","REGEXP_ARROW","REGEXP_TAB_OR_ESCAPE","generateOption","content","optgroup","nodeType","appendChild","innerHTML","inline","insertAdjacentHTML","useFragment","subtextElement","iconElement","textElement","textContent","icon","iconBase","childNodes","label","Selectpicker","element","that","$element","$newElement","$button","$menu","selectpicker","main","current","keydown","keyHistory","resetKeyHistory","setTimeout","title","winPad","windowPadding","val","render","refresh","setStyle","selectAll","deselectAll","destroy","show","hide","init","Plugin","option","args","_option","shift","BootstrapVersion","console","warn","toUpdate","DEFAULTS","style","name","tickIcon","chain","each","$this","is","dataAttributes","dataAttr","config","extend","defaults","template","Function","noneSelectedText","noneResultsText","countSelectedText","numSelected","numTotal","maxOptionsText","numAll","numGroup","selectAllText","deselectAllText","doneButton","doneButtonText","multipleSeparator","styleBase","size","selectedTextFormat","width","container","hideDisabled","showSubtext","showIcon","showContent","dropupAuto","header","liveSearch","liveSearchPlaceholder","liveSearchNormalize","liveSearchStyle","actionsBox","showTick","caret","maxOptions","mobile","selectOnTab","dropdownAlignRight","virtualScroll","display","sanitize","constructor","id","prop","autofocus","createDropdown","after","prependTo","children","$menuInner","$searchbox","find","checkDisabled","clickListener","liveSearchListener","focusedParent","setWidth","selectPosition","on","isVirtual","menuInner","emptyMenu","firstChild","replaceChild","scrollTop","hide.bs.dropdown","hidden.bs.dropdown","show.bs.dropdown","shown.bs.dropdown","hasAttribute","off","validity","valid","createLi","multiselectable","inputGroup","parent","drop","searchbox","actionsbox","donebutton","setPositionData","canHighlight","type","height","sizeInfo","dividerHeight","dropdownHeaderHeight","liHeight","posinset","createView","isSearching","setSize","selected","prevActive","active","selectedIndex","liIndex","selectedData","menuInnerHeight","scroll","chunkSize","chunkCount","firstChunk","lastChunk","currentChunk","prevPositions","positionIsDifferent","previousElements","chunks","menuIsDifferent","ceil","round","endOfChunk","position0","position1","activeIndex","prevActiveIndex","defocusItem","visibleElements","setOptionStatus","array1","array2","every","isEqual","marginTop","marginBottom","menuFragment","toSanitize","visibleElementsLen","elText","elementData","lastChild","sanitized","hasScrollBar","menuInnerInnerWidth","offsetWidth","totalMenuWidth","selectWidth","minWidth","actualMenuWidth","newActive","currentActive","focusItem","updateValue","noScroll","liData","noStyle","setPlaceholder","updateIndex","titleOption","isSelected","titleNotAppended","insertBefore","optionSelector","mainElements","mainData","widestOptionLength","optID","startIndex","selectOptions","addDivider","previousData","addOption","divider","getAttribute","cssText","inlineStyle","optionClass","optgroupClass","tokens","liElement","combinedLength","widestOption","addOptgroup","previous","next","headerIndex","lastIndex","labelElement","item","findLis","countMax","selectedCount","button","buttonInner","querySelector","titleFragment","hasContent","tabIndex","titleOptions","thisData","trim","totalCount","tr8nText","filterExpand","clone","newStyle","status","buttonClass","newElement","previousElementSibling","nextElementSibling","menu","menuInnerInner","dropdownHeader","actions","firstOption","input","body","scrollBarWidth","offsetHeight","headerHeight","searchHeight","actionsHeight","doneButtonHeight","outerHeight","menuStyle","getComputedStyle","menuWidth","menuPadding","vert","paddingTop","css","paddingBottom","borderTopWidth","borderBottomWidth","horiz","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","menuExtras","marginLeft","marginRight","overflowY","selectHeight","getSelectPosition","containerPos","$window","offset","$container","top","left","selectOffsetTop","selectOffsetBot","selectOffsetLeft","scrollLeft","selectOffsetRight","setMenuSize","isAuto","menuHeight","minHeight","_minHeight","maxHeight","menuInnerMinHeight","estimate","divHeight","divLength","max-height","overflow","min-height","overflow-y","_popper","update","requestAnimationFrame","$selectClone","appendTo","btnWidth","outerWidth","$bsContainer","getPlacement","containerPosition","Default","actualHeight","isDisabled","append","detach","selectedOnly","setDisabled","setSelected","activeIndexIsSet","keepActive","removeAttr","$document","setFocus","checkPopperExists","state","isCreated","keyCode","preventDefault","_menu","hoverLi","parentElement","hoverData","retainActive","clickedData","clickedIndex","prevValue","prevIndex","prevOption","triggerChange","stopPropagation","$option","$optgroup","$optgroupOptions","maxOptionsGrp","maxReached","maxReachedGrp","maxOptionsArr","maxTxt","maxTxtGrp","$notify","currentTarget","target","noResults","searchValue","searchMatch","q","cache","cacheArr","searchStyle","_searchStyle","normalizeSearch","_$lisSelected","cacheLen","liPrev","liSelectedIndex","changeAll","previousSelected","currentSelected","isActive","liActive","activeLi","isToggle","closest","$items","updateScroll","downOnTab","which","isArrowKey","lastIndexOf","liActiveIndex","scrollHeight","matches","cancel","clearTimeout","charAt","matchIndex","focus","before","removeData","old","noConflict","$selectpicker","jQuery"],"mappings":"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","file":"bootstrap-select.min.js"} \ No newline at end of file +{"version":3,"sources":["../../js/bootstrap-select.js"],"names":["$","DISALLOWED_ATTRIBUTES","uriAttrs","DefaultWhitelist","*","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","i","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","toLowerCase","inArray","Boolean","nodeValue","match","regExp","filter","index","value","RegExp","l","length","sanitizeHtml","unsafeElements","whiteList","sanitizeFn","whitelistKeys","Object","keys","len","elements","querySelectorAll","j","len2","el","elName","indexOf","attributeList","slice","call","attributes","whitelistedAttributes","concat","k","len3","removeAttribute","parentNode","removeChild","document","createElement","view","classListProp","protoProp","elemCtrProto","Element","objCtr","classListGetter","$elem","this","add","classes","Array","prototype","arguments","join","addClass","remove","removeClass","toggle","force","toggleClass","contains","hasClass","defineProperty","classListPropDesc","get","enumerable","configurable","ex","undefined","number","__defineGetter__","window","toString","startsWith","testElement","classList","_add","DOMTokenList","_remove","forEach","bind","_toggle","token","getSelectedOptions","select","ignoreDisabled","opt","selectedOptions","options","disabled","tagName","push","getSelectValues","multiple","String","object","$defineProperty","result","error","search","TypeError","string","stringLength","searchString","searchLength","position","pos","Number","start","Math","min","max","charCodeAt","writable","o","r","hasOwnProperty","HTMLSelectElement","valHooks","useDefault","_set","set","elem","data","apply","changedArguments","EventIsSupported","Event","e","stringSearch","method","normalize","stringTypes","searchSuccess","stringType","replace","normalizeToBase","toUpperCase","toInteger","parseInt","fn","triggerNative","eventName","event","dispatchEvent","bubbles","createEvent","initEvent","fireEvent","createEventObject","eventType","trigger","deburredLetters","À","Á","Â","Ã","Ä","Å","à","á","â","ã","ä","å","Ç","ç","Ð","ð","È","É","Ê","Ë","è","é","ê","ë","Ì","Í","Î","Ï","ì","í","î","ï","Ñ","ñ","Ò","Ó","Ô","Õ","Ö","Ø","ò","ó","ô","õ","ö","ø","Ù","Ú","Û","Ü","ù","ú","û","ü","Ý","ý","ÿ","Æ","æ","Þ","þ","ß","Ā","Ă","Ą","ā","ă","ą","Ć","Ĉ","Ċ","Č","ć","ĉ","ċ","č","Ď","Đ","ď","đ","Ē","Ĕ","Ė","Ę","Ě","ē","ĕ","ė","ę","ě","Ĝ","Ğ","Ġ","Ģ","ĝ","ğ","ġ","ģ","Ĥ","Ħ","ĥ","ħ","Ĩ","Ī","Ĭ","Į","İ","ĩ","ī","ĭ","į","ı","Ĵ","ĵ","Ķ","ķ","ĸ","Ĺ","Ļ","Ľ","Ŀ","Ł","ĺ","ļ","ľ","ŀ","ł","Ń","Ņ","Ň","Ŋ","ń","ņ","ň","ŋ","Ō","Ŏ","Ő","ō","ŏ","ő","Ŕ","Ŗ","Ř","ŕ","ŗ","ř","Ś","Ŝ","Ş","Š","ś","ŝ","ş","š","Ţ","Ť","Ŧ","ţ","ť","ŧ","Ũ","Ū","Ŭ","Ů","Ű","Ų","ũ","ū","ŭ","ů","ű","ų","Ŵ","ŵ","Ŷ","ŷ","Ÿ","Ź","Ż","Ž","ź","ż","ž","IJ","ij","Œ","œ","ʼn","ſ","reLatin","reComboMark","deburrLetter","key","map","escaper","source","testRegexp","replaceRegexp","htmlEscape","&","<",">","\"","'","`","test","keyCodeMap","32","48","49","50","51","52","53","54","55","56","57","59","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","96","97","98","99","100","101","102","103","104","105","keyCodes","version","success","major","full","dropdown","Constructor","VERSION","split","err","selectId","EVENT_KEY","classNames","DISABLED","DIVIDER","SHOW","DROPUP","MENU","MENURIGHT","MENULEFT","BUTTONCLASS","POPOVERHEADER","ICONBASE","TICKICON","Selector","elementTemplates","subtext","whitespace","createTextNode","fragment","createDocumentFragment","setAttribute","className","text","cloneNode","checkMark","REGEXP_ARROW","REGEXP_TAB_OR_ESCAPE","generateOption","content","optgroup","nodeType","appendChild","innerHTML","inline","insertAdjacentHTML","useFragment","subtextElement","iconElement","textElement","textContent","icon","iconBase","childNodes","label","display","Selectpicker","element","that","$element","$newElement","$button","$menu","selectpicker","main","current","isSearching","keydown","keyHistory","resetKeyHistory","setTimeout","sizeInfo","title","winPad","windowPadding","val","render","refresh","setStyle","selectAll","deselectAll","destroy","show","hide","init","Plugin","option","args","_option","shift","BootstrapVersion","console","warn","toUpdate","DEFAULTS","style","name","tickIcon","chain","each","$this","is","dataAttributes","dataAttr","config","extend","defaults","template","Function","noneSelectedText","noneResultsText","countSelectedText","numSelected","numTotal","maxOptionsText","numAll","numGroup","selectAllText","deselectAllText","doneButton","doneButtonText","multipleSeparator","styleBase","size","selectedTextFormat","width","container","hideDisabled","showSubtext","showIcon","showContent","dropupAuto","header","liveSearch","liveSearchPlaceholder","liveSearchNormalize","liveSearchStyle","actionsBox","showTick","caret","maxOptions","mobile","selectOnTab","dropdownAlignRight","virtualScroll","sanitize","constructor","id","prop","autofocus","createDropdown","buildData","after","prependTo","children","$menuInner","$searchbox","find","checkDisabled","clickListener","liveSearchListener","focusedParent","setWidth","selectPosition","on","isVirtual","menuInner","emptyMenu","firstChild","replaceChild","scrollTop","hide.bs.dropdown","hidden.bs.dropdown","show.bs.dropdown","shown.bs.dropdown","hasAttribute","off","validity","valid","buildList","multiselectable","inputGroup","parent","drop","searchbox","actionsbox","donebutton","setPositionData","canHighlight","type","height","dividerHeight","dropdownHeaderHeight","liHeight","posinset","createView","setSize","selected","prevActive","active","selectedIndex","liIndex","selectedData","menuInnerHeight","scroll","chunkSize","chunkCount","firstChunk","lastChunk","currentChunk","prevPositions","positionIsDifferent","previousElements","array1","array2","chunks","menuIsDifferent","ceil","round","endOfChunk","position0","position1","activeIndex","prevActiveIndex","defocusItem","visibleElements","setOptionStatus","every","marginTop","marginBottom","menuFragment","toSanitize","visibleElementsLen","elText","elementData","lastChild","sanitized","hasScrollBar","menuInnerInnerWidth","offsetWidth","totalMenuWidth","selectWidth","minWidth","actualMenuWidth","newActive","currentActive","focusItem","updateValue","noScroll","liData","noStyle","setPlaceholder","updateIndex","titleOption","isSelected","titleNotAppended","insertBefore","optionSelector","mainData","optID","startIndex","selectOptions","addDivider","previousData","addOption","divider","getAttribute","cssText","inlineStyle","optionClass","optgroupClass","trim","tokens","addOptgroup","previous","next","headerIndex","lastIndex","item","selectData","mainElements","widestOptionLength","buildElement","liElement","combinedLength","widestOption","findLis","showCount","countMax","selectedCount","button","buttonInner","querySelector","titleFragment","hasContent","tabIndex","thisData","titleOptions","totalCount","tr8nText","filterExpand","clone","newStyle","status","buttonClass","newElement","previousElementSibling","nextElementSibling","menu","menuInnerInner","dropdownHeader","actions","firstOption","input","body","scrollBarWidth","offsetHeight","headerHeight","searchHeight","actionsHeight","doneButtonHeight","outerHeight","menuStyle","getComputedStyle","menuWidth","menuPadding","vert","paddingTop","css","paddingBottom","borderTopWidth","borderBottomWidth","horiz","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","menuExtras","marginLeft","marginRight","overflowY","selectHeight","getSelectPosition","containerPos","$window","offset","$container","top","left","selectOffsetTop","selectOffsetBot","selectOffsetLeft","scrollLeft","selectOffsetRight","setMenuSize","isAuto","menuHeight","minHeight","_minHeight","maxHeight","menuInnerMinHeight","estimate","isDropup","divHeight","divLength","dropup","max-height","overflow","min-height","overflow-y","_popper","update","requestAnimationFrame","$selectClone","appendTo","btnWidth","outerWidth","$bsContainer","actualHeight","getPlacement","containerPosition","Default","isDisabled","append","detach","selectedOnly","setDisabled","setSelected","activeIndexIsSet","keepActive","removeAttr","$document","setFocus","checkPopperExists","state","isCreated","keyCode","preventDefault","_menu","hoverLi","parentElement","hoverData","retainActive","clickedData","clickedIndex","prevValue","prevIndex","prevOption","triggerChange","stopPropagation","$option","$optgroup","$optgroupOptions","maxOptionsGrp","maxReached","maxReachedGrp","maxOptionsArr","maxTxt","maxTxtGrp","$notify","currentTarget","target","noResults","searchValue","searchMatch","q","cache","cacheArr","searchStyle","_searchStyle","normalizeSearch","cacheLen","liPrev","liSelectedIndex","changeAll","previousSelected","currentSelected","isActive","liActive","activeLi","isToggle","closest","$items","updateScroll","downOnTab","which","isArrowKey","lastIndexOf","liActiveIndex","scrollHeight","matches","cancel","clearTimeout","charAt","matchIndex","focus","before","removeData","old","noConflict","bootstrapKeydown","_dataApiKeydownHandler","$selectpicker","jQuery"],"mappings":"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","file":"bootstrap-select.min.js"} \ No newline at end of file diff --git a/docs/docs/dist/js/i18n/defaults-am_ET.js b/docs/docs/dist/js/i18n/defaults-am_ET.js index 6d43d6001..701f5b762 100644 --- a/docs/docs/dist/js/i18n/defaults-am_ET.js +++ b/docs/docs/dist/js/i18n/defaults-am_ET.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-am_ET.min.js b/docs/docs/dist/js/i18n/defaults-am_ET.min.js index cdb798f82..edd215629 100644 --- a/docs/docs/dist/js/i18n/defaults-am_ET.min.js +++ b/docs/docs/dist/js/i18n/defaults-am_ET.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ar_AR.js b/docs/docs/dist/js/i18n/defaults-ar_AR.js index 981e3a23e..b1fbf6a4b 100644 --- a/docs/docs/dist/js/i18n/defaults-ar_AR.js +++ b/docs/docs/dist/js/i18n/defaults-ar_AR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ar_AR.min.js b/docs/docs/dist/js/i18n/defaults-ar_AR.min.js index bbea176bf..d28579ded 100644 --- a/docs/docs/dist/js/i18n/defaults-ar_AR.min.js +++ b/docs/docs/dist/js/i18n/defaults-ar_AR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-bg_BG.js b/docs/docs/dist/js/i18n/defaults-bg_BG.js index ab37611a7..baee3ee3c 100644 --- a/docs/docs/dist/js/i18n/defaults-bg_BG.js +++ b/docs/docs/dist/js/i18n/defaults-bg_BG.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-bg_BG.min.js b/docs/docs/dist/js/i18n/defaults-bg_BG.min.js index 432fab363..fce926222 100644 --- a/docs/docs/dist/js/i18n/defaults-bg_BG.min.js +++ b/docs/docs/dist/js/i18n/defaults-bg_BG.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-cs_CZ.js b/docs/docs/dist/js/i18n/defaults-cs_CZ.js index 719e9ee85..f5199ca03 100644 --- a/docs/docs/dist/js/i18n/defaults-cs_CZ.js +++ b/docs/docs/dist/js/i18n/defaults-cs_CZ.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-cs_CZ.min.js b/docs/docs/dist/js/i18n/defaults-cs_CZ.min.js index 9590254b4..63634f0fc 100644 --- a/docs/docs/dist/js/i18n/defaults-cs_CZ.min.js +++ b/docs/docs/dist/js/i18n/defaults-cs_CZ.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-da_DK.js b/docs/docs/dist/js/i18n/defaults-da_DK.js index 03a83f441..516a04301 100644 --- a/docs/docs/dist/js/i18n/defaults-da_DK.js +++ b/docs/docs/dist/js/i18n/defaults-da_DK.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-da_DK.min.js b/docs/docs/dist/js/i18n/defaults-da_DK.min.js index 8511f6c64..0bfdaabbd 100644 --- a/docs/docs/dist/js/i18n/defaults-da_DK.min.js +++ b/docs/docs/dist/js/i18n/defaults-da_DK.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-de_DE.js b/docs/docs/dist/js/i18n/defaults-de_DE.js index 185f8002f..3c3029a2a 100644 --- a/docs/docs/dist/js/i18n/defaults-de_DE.js +++ b/docs/docs/dist/js/i18n/defaults-de_DE.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-de_DE.min.js b/docs/docs/dist/js/i18n/defaults-de_DE.min.js index d80946646..b8483cee6 100644 --- a/docs/docs/dist/js/i18n/defaults-de_DE.min.js +++ b/docs/docs/dist/js/i18n/defaults-de_DE.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-en_US.js b/docs/docs/dist/js/i18n/defaults-en_US.js index 57c8a20e2..7656512b3 100644 --- a/docs/docs/dist/js/i18n/defaults-en_US.js +++ b/docs/docs/dist/js/i18n/defaults-en_US.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-en_US.min.js b/docs/docs/dist/js/i18n/defaults-en_US.min.js index fc23bec61..2bda485b3 100644 --- a/docs/docs/dist/js/i18n/defaults-en_US.min.js +++ b/docs/docs/dist/js/i18n/defaults-en_US.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-es_CL.js b/docs/docs/dist/js/i18n/defaults-es_CL.js index efd953ed5..610ac9431 100644 --- a/docs/docs/dist/js/i18n/defaults-es_CL.js +++ b/docs/docs/dist/js/i18n/defaults-es_CL.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-es_CL.min.js b/docs/docs/dist/js/i18n/defaults-es_CL.min.js index 28cdbeb71..06e30596e 100644 --- a/docs/docs/dist/js/i18n/defaults-es_CL.min.js +++ b/docs/docs/dist/js/i18n/defaults-es_CL.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-es_ES.js b/docs/docs/dist/js/i18n/defaults-es_ES.js index bf40396d9..6a0982fe1 100644 --- a/docs/docs/dist/js/i18n/defaults-es_ES.js +++ b/docs/docs/dist/js/i18n/defaults-es_ES.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-es_ES.min.js b/docs/docs/dist/js/i18n/defaults-es_ES.min.js index 28cdbeb71..06e30596e 100644 --- a/docs/docs/dist/js/i18n/defaults-es_ES.min.js +++ b/docs/docs/dist/js/i18n/defaults-es_ES.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-et_EE.js b/docs/docs/dist/js/i18n/defaults-et_EE.js index e9b7ed62d..6d259f230 100644 --- a/docs/docs/dist/js/i18n/defaults-et_EE.js +++ b/docs/docs/dist/js/i18n/defaults-et_EE.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-et_EE.min.js b/docs/docs/dist/js/i18n/defaults-et_EE.min.js index 8bfd3f608..3cec8c4d2 100644 --- a/docs/docs/dist/js/i18n/defaults-et_EE.min.js +++ b/docs/docs/dist/js/i18n/defaults-et_EE.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-eu.js b/docs/docs/dist/js/i18n/defaults-eu.js index 44a6b1345..472ef01bf 100644 --- a/docs/docs/dist/js/i18n/defaults-eu.js +++ b/docs/docs/dist/js/i18n/defaults-eu.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-eu.min.js b/docs/docs/dist/js/i18n/defaults-eu.min.js index 9a7eadf67..e020daa35 100644 --- a/docs/docs/dist/js/i18n/defaults-eu.min.js +++ b/docs/docs/dist/js/i18n/defaults-eu.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-fa_IR.js b/docs/docs/dist/js/i18n/defaults-fa_IR.js index aae560b30..734577955 100644 --- a/docs/docs/dist/js/i18n/defaults-fa_IR.js +++ b/docs/docs/dist/js/i18n/defaults-fa_IR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-fa_IR.min.js b/docs/docs/dist/js/i18n/defaults-fa_IR.min.js index b72b7c724..768f0063b 100644 --- a/docs/docs/dist/js/i18n/defaults-fa_IR.min.js +++ b/docs/docs/dist/js/i18n/defaults-fa_IR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-fi_FI.js b/docs/docs/dist/js/i18n/defaults-fi_FI.js index 6d0839185..0a1f9de2f 100644 --- a/docs/docs/dist/js/i18n/defaults-fi_FI.js +++ b/docs/docs/dist/js/i18n/defaults-fi_FI.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-fi_FI.min.js b/docs/docs/dist/js/i18n/defaults-fi_FI.min.js index 7a66fa11a..e553011c4 100644 --- a/docs/docs/dist/js/i18n/defaults-fi_FI.min.js +++ b/docs/docs/dist/js/i18n/defaults-fi_FI.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-fr_FR.js b/docs/docs/dist/js/i18n/defaults-fr_FR.js index 9184cd5ad..29741d53b 100644 --- a/docs/docs/dist/js/i18n/defaults-fr_FR.js +++ b/docs/docs/dist/js/i18n/defaults-fr_FR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-fr_FR.min.js b/docs/docs/dist/js/i18n/defaults-fr_FR.min.js index b6d094942..b2a7a908b 100644 --- a/docs/docs/dist/js/i18n/defaults-fr_FR.min.js +++ b/docs/docs/dist/js/i18n/defaults-fr_FR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-hr_HR.js b/docs/docs/dist/js/i18n/defaults-hr_HR.js index aca498c84..2411d53ed 100644 --- a/docs/docs/dist/js/i18n/defaults-hr_HR.js +++ b/docs/docs/dist/js/i18n/defaults-hr_HR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-hr_HR.min.js b/docs/docs/dist/js/i18n/defaults-hr_HR.min.js index 9920a0c62..172fd9739 100644 --- a/docs/docs/dist/js/i18n/defaults-hr_HR.min.js +++ b/docs/docs/dist/js/i18n/defaults-hr_HR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-hu_HU.js b/docs/docs/dist/js/i18n/defaults-hu_HU.js index cbc90397a..72b6f3aee 100644 --- a/docs/docs/dist/js/i18n/defaults-hu_HU.js +++ b/docs/docs/dist/js/i18n/defaults-hu_HU.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-hu_HU.min.js b/docs/docs/dist/js/i18n/defaults-hu_HU.min.js index 5efa55393..81bdb79f6 100644 --- a/docs/docs/dist/js/i18n/defaults-hu_HU.min.js +++ b/docs/docs/dist/js/i18n/defaults-hu_HU.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-id_ID.js b/docs/docs/dist/js/i18n/defaults-id_ID.js index b76e80802..24168e02c 100644 --- a/docs/docs/dist/js/i18n/defaults-id_ID.js +++ b/docs/docs/dist/js/i18n/defaults-id_ID.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-id_ID.min.js b/docs/docs/dist/js/i18n/defaults-id_ID.min.js index 7de4c322d..9b5ef1d16 100644 --- a/docs/docs/dist/js/i18n/defaults-id_ID.min.js +++ b/docs/docs/dist/js/i18n/defaults-id_ID.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-it_IT.js b/docs/docs/dist/js/i18n/defaults-it_IT.js index 481f08834..98fc97ad1 100644 --- a/docs/docs/dist/js/i18n/defaults-it_IT.js +++ b/docs/docs/dist/js/i18n/defaults-it_IT.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-it_IT.min.js b/docs/docs/dist/js/i18n/defaults-it_IT.min.js index fa34d4c77..58b626c86 100644 --- a/docs/docs/dist/js/i18n/defaults-it_IT.min.js +++ b/docs/docs/dist/js/i18n/defaults-it_IT.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ja_JP.js b/docs/docs/dist/js/i18n/defaults-ja_JP.js index 9823044ca..71b7d2944 100644 --- a/docs/docs/dist/js/i18n/defaults-ja_JP.js +++ b/docs/docs/dist/js/i18n/defaults-ja_JP.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ja_JP.min.js b/docs/docs/dist/js/i18n/defaults-ja_JP.min.js index b1c1eb44b..b7bd0840a 100644 --- a/docs/docs/dist/js/i18n/defaults-ja_JP.min.js +++ b/docs/docs/dist/js/i18n/defaults-ja_JP.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-kh_KM.js b/docs/docs/dist/js/i18n/defaults-kh_KM.js index 5bcc76263..70245b45c 100644 --- a/docs/docs/dist/js/i18n/defaults-kh_KM.js +++ b/docs/docs/dist/js/i18n/defaults-kh_KM.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-kh_KM.min.js b/docs/docs/dist/js/i18n/defaults-kh_KM.min.js index 281d5600c..0adc2237e 100644 --- a/docs/docs/dist/js/i18n/defaults-kh_KM.min.js +++ b/docs/docs/dist/js/i18n/defaults-kh_KM.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ko_KR.js b/docs/docs/dist/js/i18n/defaults-ko_KR.js index 7a8c31c54..f8e198f5d 100644 --- a/docs/docs/dist/js/i18n/defaults-ko_KR.js +++ b/docs/docs/dist/js/i18n/defaults-ko_KR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ko_KR.min.js b/docs/docs/dist/js/i18n/defaults-ko_KR.min.js index cccff78f6..6a21444ca 100644 --- a/docs/docs/dist/js/i18n/defaults-ko_KR.min.js +++ b/docs/docs/dist/js/i18n/defaults-ko_KR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-lt_LT.js b/docs/docs/dist/js/i18n/defaults-lt_LT.js index b5591c6b5..ed77a6678 100644 --- a/docs/docs/dist/js/i18n/defaults-lt_LT.js +++ b/docs/docs/dist/js/i18n/defaults-lt_LT.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-lt_LT.min.js b/docs/docs/dist/js/i18n/defaults-lt_LT.min.js index cb7763b73..ae2026045 100644 --- a/docs/docs/dist/js/i18n/defaults-lt_LT.min.js +++ b/docs/docs/dist/js/i18n/defaults-lt_LT.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-lv_LV.js b/docs/docs/dist/js/i18n/defaults-lv_LV.js index 75c3ee7ce..96f27cb20 100644 --- a/docs/docs/dist/js/i18n/defaults-lv_LV.js +++ b/docs/docs/dist/js/i18n/defaults-lv_LV.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-lv_LV.min.js b/docs/docs/dist/js/i18n/defaults-lv_LV.min.js index fdbaed4f9..9f376e309 100644 --- a/docs/docs/dist/js/i18n/defaults-lv_LV.min.js +++ b/docs/docs/dist/js/i18n/defaults-lv_LV.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-nb_NO.js b/docs/docs/dist/js/i18n/defaults-nb_NO.js index 53fee6b74..b18581f12 100644 --- a/docs/docs/dist/js/i18n/defaults-nb_NO.js +++ b/docs/docs/dist/js/i18n/defaults-nb_NO.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-nb_NO.min.js b/docs/docs/dist/js/i18n/defaults-nb_NO.min.js index 8521efc35..0fbe19986 100644 --- a/docs/docs/dist/js/i18n/defaults-nb_NO.min.js +++ b/docs/docs/dist/js/i18n/defaults-nb_NO.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-nl_NL.js b/docs/docs/dist/js/i18n/defaults-nl_NL.js index 1b730e4d5..a52bdc85e 100644 --- a/docs/docs/dist/js/i18n/defaults-nl_NL.js +++ b/docs/docs/dist/js/i18n/defaults-nl_NL.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-nl_NL.min.js b/docs/docs/dist/js/i18n/defaults-nl_NL.min.js index 2d42f7096..b9606357d 100644 --- a/docs/docs/dist/js/i18n/defaults-nl_NL.min.js +++ b/docs/docs/dist/js/i18n/defaults-nl_NL.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-pl_PL.js b/docs/docs/dist/js/i18n/defaults-pl_PL.js index 4b2c9be78..06849532b 100644 --- a/docs/docs/dist/js/i18n/defaults-pl_PL.js +++ b/docs/docs/dist/js/i18n/defaults-pl_PL.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-pl_PL.min.js b/docs/docs/dist/js/i18n/defaults-pl_PL.min.js index 569cb64a1..9131b8408 100644 --- a/docs/docs/dist/js/i18n/defaults-pl_PL.min.js +++ b/docs/docs/dist/js/i18n/defaults-pl_PL.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-pt_BR.js b/docs/docs/dist/js/i18n/defaults-pt_BR.js index fa4a46ed3..b616db88e 100644 --- a/docs/docs/dist/js/i18n/defaults-pt_BR.js +++ b/docs/docs/dist/js/i18n/defaults-pt_BR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-pt_BR.min.js b/docs/docs/dist/js/i18n/defaults-pt_BR.min.js index 8f638d849..e009aac90 100644 --- a/docs/docs/dist/js/i18n/defaults-pt_BR.min.js +++ b/docs/docs/dist/js/i18n/defaults-pt_BR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-pt_PT.js b/docs/docs/dist/js/i18n/defaults-pt_PT.js index bf068a118..cb6a4be03 100644 --- a/docs/docs/dist/js/i18n/defaults-pt_PT.js +++ b/docs/docs/dist/js/i18n/defaults-pt_PT.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-pt_PT.min.js b/docs/docs/dist/js/i18n/defaults-pt_PT.min.js index 58cb78f17..8aefdf5f9 100644 --- a/docs/docs/dist/js/i18n/defaults-pt_PT.min.js +++ b/docs/docs/dist/js/i18n/defaults-pt_PT.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ro_RO.js b/docs/docs/dist/js/i18n/defaults-ro_RO.js index 66e800864..124f495e9 100644 --- a/docs/docs/dist/js/i18n/defaults-ro_RO.js +++ b/docs/docs/dist/js/i18n/defaults-ro_RO.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ro_RO.min.js b/docs/docs/dist/js/i18n/defaults-ro_RO.min.js index 86864d662..fe3243e3c 100644 --- a/docs/docs/dist/js/i18n/defaults-ro_RO.min.js +++ b/docs/docs/dist/js/i18n/defaults-ro_RO.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ru_RU.js b/docs/docs/dist/js/i18n/defaults-ru_RU.js index 518479829..c5ccc1ce6 100644 --- a/docs/docs/dist/js/i18n/defaults-ru_RU.js +++ b/docs/docs/dist/js/i18n/defaults-ru_RU.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ru_RU.min.js b/docs/docs/dist/js/i18n/defaults-ru_RU.min.js index 3c41a3edc..f6b342abf 100644 --- a/docs/docs/dist/js/i18n/defaults-ru_RU.min.js +++ b/docs/docs/dist/js/i18n/defaults-ru_RU.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-sk_SK.js b/docs/docs/dist/js/i18n/defaults-sk_SK.js index 1b591786b..f496c9706 100644 --- a/docs/docs/dist/js/i18n/defaults-sk_SK.js +++ b/docs/docs/dist/js/i18n/defaults-sk_SK.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-sk_SK.min.js b/docs/docs/dist/js/i18n/defaults-sk_SK.min.js index 5395697d7..d18e63706 100644 --- a/docs/docs/dist/js/i18n/defaults-sk_SK.min.js +++ b/docs/docs/dist/js/i18n/defaults-sk_SK.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-sl_SI.js b/docs/docs/dist/js/i18n/defaults-sl_SI.js index edf873284..2604a0fb5 100644 --- a/docs/docs/dist/js/i18n/defaults-sl_SI.js +++ b/docs/docs/dist/js/i18n/defaults-sl_SI.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-sl_SI.min.js b/docs/docs/dist/js/i18n/defaults-sl_SI.min.js index 8462baa7d..7d3a3f1fd 100644 --- a/docs/docs/dist/js/i18n/defaults-sl_SI.min.js +++ b/docs/docs/dist/js/i18n/defaults-sl_SI.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-sv_SE.js b/docs/docs/dist/js/i18n/defaults-sv_SE.js index 6de6a85a7..de81fc28b 100644 --- a/docs/docs/dist/js/i18n/defaults-sv_SE.js +++ b/docs/docs/dist/js/i18n/defaults-sv_SE.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-sv_SE.min.js b/docs/docs/dist/js/i18n/defaults-sv_SE.min.js index c161bebf6..75fd59ca1 100644 --- a/docs/docs/dist/js/i18n/defaults-sv_SE.min.js +++ b/docs/docs/dist/js/i18n/defaults-sv_SE.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-tr_TR.js b/docs/docs/dist/js/i18n/defaults-tr_TR.js index 65ced5c65..479d4841c 100644 --- a/docs/docs/dist/js/i18n/defaults-tr_TR.js +++ b/docs/docs/dist/js/i18n/defaults-tr_TR.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-tr_TR.min.js b/docs/docs/dist/js/i18n/defaults-tr_TR.min.js index 92447c90b..c34b4a3b5 100644 --- a/docs/docs/dist/js/i18n/defaults-tr_TR.min.js +++ b/docs/docs/dist/js/i18n/defaults-tr_TR.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ua_UA.js b/docs/docs/dist/js/i18n/defaults-ua_UA.js index c43be2b56..01dc7d64d 100644 --- a/docs/docs/dist/js/i18n/defaults-ua_UA.js +++ b/docs/docs/dist/js/i18n/defaults-ua_UA.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-ua_UA.min.js b/docs/docs/dist/js/i18n/defaults-ua_UA.min.js index 6466292a3..2a40bbad3 100644 --- a/docs/docs/dist/js/i18n/defaults-ua_UA.min.js +++ b/docs/docs/dist/js/i18n/defaults-ua_UA.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-vi_VN.js b/docs/docs/dist/js/i18n/defaults-vi_VN.js index da861b2ce..2f91516ab 100644 --- a/docs/docs/dist/js/i18n/defaults-vi_VN.js +++ b/docs/docs/dist/js/i18n/defaults-vi_VN.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-vi_VN.min.js b/docs/docs/dist/js/i18n/defaults-vi_VN.min.js index 16b578e3e..e564d1f8b 100644 --- a/docs/docs/dist/js/i18n/defaults-vi_VN.min.js +++ b/docs/docs/dist/js/i18n/defaults-vi_VN.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-zh_CN.js b/docs/docs/dist/js/i18n/defaults-zh_CN.js index a2fc0e3ba..f4974475e 100644 --- a/docs/docs/dist/js/i18n/defaults-zh_CN.js +++ b/docs/docs/dist/js/i18n/defaults-zh_CN.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-zh_CN.min.js b/docs/docs/dist/js/i18n/defaults-zh_CN.min.js index a04ced546..ef94d47fc 100644 --- a/docs/docs/dist/js/i18n/defaults-zh_CN.min.js +++ b/docs/docs/dist/js/i18n/defaults-zh_CN.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-zh_TW.js b/docs/docs/dist/js/i18n/defaults-zh_TW.js index 761ed1bfd..f8cfba938 100644 --- a/docs/docs/dist/js/i18n/defaults-zh_TW.js +++ b/docs/docs/dist/js/i18n/defaults-zh_TW.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/dist/js/i18n/defaults-zh_TW.min.js b/docs/docs/dist/js/i18n/defaults-zh_TW.min.js index b886d777f..22decac18 100644 --- a/docs/docs/dist/js/i18n/defaults-zh_TW.min.js +++ b/docs/docs/dist/js/i18n/defaults-zh_TW.min.js @@ -1,7 +1,7 @@ /*! - * Bootstrap-select v1.13.12 (https://developer.snapappointments.com/bootstrap-select) + * Bootstrap-select v1.13.13 (https://developer.snapappointments.com/bootstrap-select) * - * Copyright 2012-2019 SnapAppointments, LLC + * Copyright 2012-2020 SnapAppointments, LLC * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) */ diff --git a/docs/docs/index.md b/docs/docs/index.md index 56caaca26..0312ec0ce 100644 --- a/docs/docs/index.md +++ b/docs/docs/index.md @@ -8,7 +8,7 @@ Bootstrap-select requires jQuery v1.9.1+, Bootstrap’s dropdown.js component, a Several quick start options are available: -- [Download the latest release.](https://github.com/snapappointments/bootstrap-select/archive/v1.13.12.zip) +- [Download the latest release.](https://github.com/snapappointments/bootstrap-select/archive/v1.13.13.zip) - Clone the repo: `git clone https://github.com/snapappointments/bootstrap-select.git` - Install with [npm](https://www.npmjs.com/package/bootstrap-select): `npm install bootstrap-select` - Install with [yarn](https://yarn.pm/bootstrap-select): `yarn add bootstrap-select` @@ -19,13 +19,13 @@ Several quick start options are available: ```html - + - + - + ```
    diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 520573745..f4d177433 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -18,4 +18,4 @@ nav: - Options: options.md - Methods: methods.md extra: - version: 1.13.12 + version: 1.13.13 diff --git a/js/bootstrap-select.js b/js/bootstrap-select.js index 0ca0b5f80..060772528 100644 --- a/js/bootstrap-select.js +++ b/js/bootstrap-select.js @@ -840,7 +840,7 @@ this.init(); }; - Selectpicker.VERSION = '1.13.12'; + Selectpicker.VERSION = '1.13.13'; // part of this is duplicated in i18n/defaults-en_US.js. Make sure to update both. Selectpicker.DEFAULTS = { diff --git a/nuget/bootstrap-select.nuspec b/nuget/bootstrap-select.nuspec index dc2915c3c..86d0c656a 100644 --- a/nuget/bootstrap-select.nuspec +++ b/nuget/bootstrap-select.nuspec @@ -2,7 +2,7 @@ bootstrap-select - 1.13.12 + 1.13.13 bootstrap-select Casey Holzer, Silvio Moreto, SnapAppointments LLC SnapAppointments, LLC diff --git a/package.json b/package.json index bd99b1c8d..5d69cb19b 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "title": "bootstrap-select", "main": "dist/js/bootstrap-select.js", "description": "The jQuery plugin that brings select elements into the 21st century with intuitive multiselection, searching, and much more. Now with Bootstrap 4 support.", - "version": "1.13.12", + "version": "1.13.13", "homepage": "https://developer.snapappointments.com/bootstrap-select", "author": { "name": "Casey Holzer",