{"version":3,"file":"BsMultiSelect.js","sources":["../../js/src/Bs4AdapterCss.js","../../js/src/Bs4AdapterJs.js","../../js/src/MultiSelect.js","../../js/src/AddToJQueryPrototype.js","../../js/src/Bs4Adapter.js","../../js/src/BsMultiSelect.js"],"sourcesContent":["class Bs4AdapterCss {\r\n\r\n constructor(options, $) {\r\n const defaults = {\r\n selectedPanelFocusClass : 'focus',\r\n selectedPanelDisabledClass: 'disabled',\r\n selectedItemContentDisabledClass: 'disabled',\r\n dropDownItemDisabledClass: 'disabled'\r\n };\r\n this.options = $.extend({}, defaults, options);\r\n }\r\n\r\n DisableSelectedItemContent($content){\r\n $content.addClass(this.options.selectedItemContentDisabledClass )\r\n }\r\n\r\n DisabledStyle($checkBox, isDisbaled){\r\n if (isDisbaled) //? $checkBox.addClass : $checkBox.removeClass\r\n $checkBox.addClass(this.options.dropDownItemDisabledClass);\r\n else\r\n $checkBox.removeClass(this.options.dropDownItemDisabledClass);\r\n }\r\n\r\n Enable($selectedPanel){\r\n $selectedPanel.removeClass(this.options.selectedPanelDisabledClass)\r\n }\r\n\r\n Disable($selectedPanel){\r\n $selectedPanel.addClass(this.options.selectedPanelDisabledClass)\r\n }\r\n\r\n FocusIn($selectedPanel){\r\n $selectedPanel.addClass(this.options.selectedPanelFocusClass);\r\n }\r\n\r\n FocusOut($selectedPanel){\r\n $selectedPanel.removeClass(this.options.selectedPanelFocusClass);\r\n }\r\n}\r\n\r\nexport default Bs4AdapterCss;\r\n","const defSelectedPanelStyle = {'margin-bottom': '0', 'height': 'auto'};\r\nconst defSelectedItemStyle = {'padding-left': '0px', 'line-height': '1.5em'};\r\nconst defRemoveSelectedItemButtonStyle = {'font-size':'1.5em', 'line-height': '.9em'};\r\n\r\nclass Bs4AdapterJs {\r\n constructor(options, $) {\r\n const defaults = {\r\n selectedPanelDefMinHeight: 'calc(2.25rem + 2px)',\r\n selectedPanelLgMinHeight: 'calc(2.875rem + 2px)',\r\n selectedPanelSmMinHeight: 'calc(1.8125rem + 2px)',\r\n selectedPanelDisabledBackgroundColor: '#e9ecef',\r\n selectedPanelFocusBorderColor: '#80bdff',\r\n selectedPanelFocusBoxShadow: '0 0 0 0.2rem rgba(0, 123, 255, 0.25)',\r\n selectedPanelFocusValidBoxShadow: '0 0 0 0.2rem rgba(40, 167, 69, 0.25)',\r\n selectedPanelFocusInvalidBoxShadow: '0 0 0 0.2rem rgba(220, 53, 69, 0.25)',\r\n filterInputColor: '#495057',\r\n selectedItemContentDisabledOpacity: '.65',\r\n dropdDownLabelDisabledColor: '#6c757d'\r\n };\r\n this.options = $.extend({}, defaults, options);\r\n }\r\n\r\n OnInit(dom){\r\n dom.selectedPanel.css(defSelectedPanelStyle);\r\n dom.filterInput.css(\"color\", this.options.filterInputColor);\r\n }\r\n\r\n \r\n CreateSelectedItemContent($selectedItem, $button){\r\n $selectedItem.css(defSelectedItemStyle);\r\n $button.css(defRemoveSelectedItemButtonStyle);\r\n }\r\n\r\n DisableSelectedItemContent($content){\r\n $content.css(\"opacity\", this.options.selectedItemContentDisabledOpacity )\r\n }\r\n\r\n DisabledStyle($checkBox, isDisbaled){\r\n $checkBox.siblings('label').css('color', isDisbaled?this.options.dropdDownLabelDisabledColor:'')\r\n }\r\n\r\n UpdateSize($selectedPanel){\r\n if ($selectedPanel.hasClass(\"form-control-lg\")){\r\n $selectedPanel.css(\"min-height\", this.options.selectedPanelLgMinHeight);\r\n } else if ($selectedPanel.hasClass(\"form-control-sm\")){\r\n $selectedPanel.css(\"min-height\", this.options.selectedPanelSmMinHeight);\r\n } else {\r\n $selectedPanel.css(\"min-height\", this.options.selectedPanelDefMinHeight);\r\n }\r\n }\r\n\r\n Enable($selectedPanel){\r\n $selectedPanel.css({\"background-color\": \"\"})\r\n }\r\n\r\n Disable($selectedPanel){\r\n $selectedPanel.css({\"background-color\": this.options.selectedPanelDisabledBackgroundColor})\r\n }\r\n\r\n FocusIn($selectedPanel){\r\n if ($selectedPanel.hasClass(\"is-valid\")){\r\n $selectedPanel.css(\"box-shadow\", this.options.selectedPanelFocusValidBoxShadow);\r\n } else if ($selectedPanel.hasClass(\"is-invalid\")){\r\n $selectedPanel.css(\"box-shadow\", this.options.selectedPanelFocusInvalidBoxShadow);\r\n } else {\r\n $selectedPanel\r\n .css(\"box-shadow\", this.options.selectedPanelFocusBoxShadow)\r\n .css(\"border-color\", this.options.selectedPanelFocusBorderColor);\r\n }\r\n }\r\n\r\n FocusOut($selectedPanel){\r\n $selectedPanel.css(\"box-shadow\", \"\" ).css(\"border-color\", \"\")\r\n }\r\n}\r\n\r\nexport default Bs4AdapterJs;\r\n","import Popper from 'popper.js'\r\n\r\nconst defSelectedPanelStyleSys = {'display':'flex', 'flex-wrap':'wrap', 'list-style-type':'none'}; // remove bullets since this is ul\r\nconst defFilterInputStyleSys = {'width':'2ch', 'border':'0', 'padding':'0', 'outline':'none', 'background-color':'transparent' };\r\nconst defDropDownMenuStyleSys = {'list-style-type':'none'}; // remove bullets since this is ul\r\n\r\n// jQuery used for:\r\n// $.extend, $.contains, $(\"