tom-select-rails 2.2.2 → 2.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. checksums.yaml +4 -4
  2. data/lib/tom-select-rails/version.rb +1 -1
  3. data/vendor/assets/javascripts/tom-select-rails/cjs/constants.d.ts +12 -0
  4. data/vendor/assets/javascripts/tom-select-rails/cjs/constants.js +16 -0
  5. data/vendor/assets/javascripts/tom-select-rails/cjs/constants.js.map +1 -0
  6. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/highlight.d.ts +13 -0
  7. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/highlight.js +69 -0
  8. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/highlight.js.map +1 -0
  9. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microevent.d.ts +20 -0
  10. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microevent.js +64 -0
  11. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microevent.js.map +1 -0
  12. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microplugin.d.ts +71 -0
  13. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microplugin.js +112 -0
  14. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microplugin.js.map +1 -0
  15. data/vendor/assets/javascripts/tom-select-rails/cjs/defaults.d.ts +52 -0
  16. data/vendor/assets/javascripts/tom-select-rails/cjs/defaults.js +84 -0
  17. data/vendor/assets/javascripts/tom-select-rails/cjs/defaults.js.map +1 -0
  18. data/vendor/assets/javascripts/tom-select-rails/cjs/getSettings.d.ts +3 -0
  19. data/vendor/assets/javascripts/tom-select-rails/cjs/getSettings.js +146 -0
  20. data/vendor/assets/javascripts/tom-select-rails/cjs/getSettings.js.map +1 -0
  21. data/vendor/assets/javascripts/tom-select-rails/cjs/package.json +1 -0
  22. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/caret_position/plugin.d.ts +16 -0
  23. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/caret_position/plugin.js +66 -0
  24. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/caret_position/plugin.js.map +1 -0
  25. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/change_listener/plugin.d.ts +16 -0
  26. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/change_listener/plugin.js +25 -0
  27. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/change_listener/plugin.js.map +1 -0
  28. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/plugin.d.ts +17 -0
  29. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/plugin.js +108 -0
  30. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/plugin.js.map +1 -0
  31. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/types.d.ts +14 -0
  32. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/types.js +3 -0
  33. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/types.js.map +1 -0
  34. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/plugin.d.ts +17 -0
  35. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/plugin.js +44 -0
  36. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/plugin.js.map +1 -0
  37. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/types.d.ts +5 -0
  38. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/types.js +3 -0
  39. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/types.js.map +1 -0
  40. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/drag_drop/plugin.d.ts +16 -0
  41. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/drag_drop/plugin.js +117 -0
  42. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/drag_drop/plugin.js.map +1 -0
  43. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/plugin.d.ts +17 -0
  44. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/plugin.js +50 -0
  45. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/plugin.js.map +1 -0
  46. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/types.d.ts +8 -0
  47. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/types.js +3 -0
  48. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/types.js.map +1 -0
  49. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_input/plugin.d.ts +16 -0
  50. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_input/plugin.js +77 -0
  51. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_input/plugin.js.map +1 -0
  52. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/input_autogrow/plugin.d.ts +15 -0
  53. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/input_autogrow/plugin.js +47 -0
  54. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/input_autogrow/plugin.js.map +1 -0
  55. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_active_items/plugin.d.ts +15 -0
  56. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_active_items/plugin.js +22 -0
  57. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_active_items/plugin.js.map +1 -0
  58. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_backspace_delete/plugin.d.ts +15 -0
  59. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_backspace_delete/plugin.js +28 -0
  60. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_backspace_delete/plugin.js.map +1 -0
  61. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/optgroup_columns/plugin.d.ts +16 -0
  62. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/optgroup_columns/plugin.js +51 -0
  63. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/optgroup_columns/plugin.js.map +1 -0
  64. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/plugin.d.ts +17 -0
  65. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/plugin.js +61 -0
  66. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/plugin.js.map +1 -0
  67. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/types.d.ts +6 -0
  68. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/types.js +3 -0
  69. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/types.js.map +1 -0
  70. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/restore_on_backspace/plugin.d.ts +21 -0
  71. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/restore_on_backspace/plugin.js +24 -0
  72. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/restore_on_backspace/plugin.js.map +1 -0
  73. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/virtual_scroll/plugin.d.ts +16 -0
  74. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/virtual_scroll/plugin.js +170 -0
  75. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/virtual_scroll/plugin.js.map +1 -0
  76. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.complete.d.ts +2 -0
  77. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.complete.js +33 -5497
  78. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.complete.js.map +1 -1
  79. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.d.ts +594 -0
  80. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.js +2147 -4555
  81. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.js.map +1 -1
  82. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.popular.d.ts +2 -0
  83. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.popular.js +15 -4934
  84. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.popular.js.map +1 -1
  85. data/vendor/assets/javascripts/tom-select-rails/cjs/types/core.d.ts +49 -0
  86. data/vendor/assets/javascripts/tom-select-rails/cjs/types/core.js +3 -0
  87. data/vendor/assets/javascripts/tom-select-rails/cjs/types/core.js.map +1 -0
  88. data/vendor/assets/javascripts/tom-select-rails/cjs/types/index.d.ts +2 -0
  89. data/vendor/assets/javascripts/tom-select-rails/cjs/types/index.js +19 -0
  90. data/vendor/assets/javascripts/tom-select-rails/cjs/types/index.js.map +1 -0
  91. data/vendor/assets/javascripts/tom-select-rails/cjs/types/settings.d.ts +79 -0
  92. data/vendor/assets/javascripts/tom-select-rails/cjs/types/settings.js +3 -0
  93. data/vendor/assets/javascripts/tom-select-rails/cjs/types/settings.js.map +1 -0
  94. data/vendor/assets/javascripts/tom-select-rails/cjs/utils.d.ts +95 -0
  95. data/vendor/assets/javascripts/tom-select-rails/cjs/utils.js +130 -114
  96. data/vendor/assets/javascripts/tom-select-rails/cjs/utils.js.map +1 -1
  97. data/vendor/assets/javascripts/tom-select-rails/cjs/vanilla.d.ts +76 -0
  98. data/vendor/assets/javascripts/tom-select-rails/cjs/vanilla.js +190 -0
  99. data/vendor/assets/javascripts/tom-select-rails/cjs/vanilla.js.map +1 -0
  100. data/vendor/assets/javascripts/tom-select-rails/esm/constants.d.ts +12 -0
  101. data/vendor/assets/javascripts/tom-select-rails/esm/constants.js +13 -0
  102. data/vendor/assets/javascripts/tom-select-rails/esm/constants.js.map +1 -0
  103. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/highlight.d.ts +13 -0
  104. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/highlight.js +64 -0
  105. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/highlight.js.map +1 -0
  106. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microevent.d.ts +20 -0
  107. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microevent.js +61 -0
  108. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microevent.js.map +1 -0
  109. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microplugin.d.ts +71 -0
  110. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microplugin.js +109 -0
  111. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microplugin.js.map +1 -0
  112. data/vendor/assets/javascripts/tom-select-rails/esm/defaults.d.ts +52 -0
  113. data/vendor/assets/javascripts/tom-select-rails/esm/defaults.js +82 -0
  114. data/vendor/assets/javascripts/tom-select-rails/esm/defaults.js.map +1 -0
  115. data/vendor/assets/javascripts/tom-select-rails/esm/getSettings.d.ts +3 -0
  116. data/vendor/assets/javascripts/tom-select-rails/esm/getSettings.js +143 -0
  117. data/vendor/assets/javascripts/tom-select-rails/esm/getSettings.js.map +1 -0
  118. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/caret_position/plugin.d.ts +16 -0
  119. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/caret_position/plugin.js +26 -78
  120. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/caret_position/plugin.js.map +1 -1
  121. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/change_listener/plugin.d.ts +16 -0
  122. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/change_listener/plugin.js +3 -2
  123. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/change_listener/plugin.js.map +1 -1
  124. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/plugin.d.ts +17 -0
  125. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/plugin.js +47 -96
  126. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/plugin.js.map +1 -1
  127. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/types.d.ts +14 -0
  128. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/types.js +2 -0
  129. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/types.js.map +1 -0
  130. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/plugin.d.ts +17 -0
  131. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/plugin.js +3 -75
  132. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/plugin.js.map +1 -1
  133. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/types.d.ts +5 -0
  134. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/types.js +2 -0
  135. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/types.js.map +1 -0
  136. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/drag_drop/plugin.d.ts +16 -0
  137. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/drag_drop/plugin.js +187 -29
  138. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/drag_drop/plugin.js.map +1 -1
  139. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/plugin.d.ts +17 -0
  140. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/plugin.js +27 -97
  141. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/plugin.js.map +1 -1
  142. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/types.d.ts +8 -0
  143. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/types.js +2 -0
  144. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/types.js.map +1 -0
  145. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_input/plugin.d.ts +16 -0
  146. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_input/plugin.js +46 -117
  147. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_input/plugin.js.map +1 -1
  148. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/input_autogrow/plugin.d.ts +15 -0
  149. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/input_autogrow/plugin.js +4 -6
  150. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/input_autogrow/plugin.js.map +1 -1
  151. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_active_items/plugin.d.ts +15 -0
  152. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_active_items/plugin.js +2 -1
  153. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_active_items/plugin.js.map +1 -1
  154. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_backspace_delete/plugin.d.ts +15 -0
  155. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_backspace_delete/plugin.js +2 -2
  156. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_backspace_delete/plugin.js.map +1 -1
  157. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/optgroup_columns/plugin.d.ts +16 -0
  158. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/optgroup_columns/plugin.js +3 -80
  159. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/optgroup_columns/plugin.js.map +1 -1
  160. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/plugin.d.ts +17 -0
  161. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/plugin.js +38 -104
  162. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/plugin.js.map +1 -1
  163. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/types.d.ts +6 -0
  164. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/types.js +2 -0
  165. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/types.js.map +1 -0
  166. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/restore_on_backspace/plugin.d.ts +21 -0
  167. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/restore_on_backspace/plugin.js +2 -3
  168. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/restore_on_backspace/plugin.js.map +1 -1
  169. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/virtual_scroll/plugin.d.ts +16 -0
  170. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/virtual_scroll/plugin.js +56 -112
  171. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/virtual_scroll/plugin.js.map +1 -1
  172. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.complete.d.ts +2 -0
  173. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.complete.js +17 -5481
  174. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.complete.js.map +1 -1
  175. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.d.ts +594 -0
  176. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.js +2127 -4536
  177. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.js.map +1 -1
  178. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.popular.d.ts +2 -0
  179. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.popular.js +8 -4927
  180. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.popular.js.map +1 -1
  181. data/vendor/assets/javascripts/tom-select-rails/esm/types/core.d.ts +49 -0
  182. data/vendor/assets/javascripts/tom-select-rails/esm/types/core.js +2 -0
  183. data/vendor/assets/javascripts/tom-select-rails/esm/types/core.js.map +1 -0
  184. data/vendor/assets/javascripts/tom-select-rails/esm/types/index.d.ts +2 -0
  185. data/vendor/assets/javascripts/tom-select-rails/esm/types/index.js +3 -0
  186. data/vendor/assets/javascripts/tom-select-rails/esm/types/index.js.map +1 -0
  187. data/vendor/assets/javascripts/tom-select-rails/esm/types/settings.d.ts +79 -0
  188. data/vendor/assets/javascripts/tom-select-rails/esm/types/settings.js +2 -0
  189. data/vendor/assets/javascripts/tom-select-rails/esm/types/settings.js.map +1 -0
  190. data/vendor/assets/javascripts/tom-select-rails/esm/utils.d.ts +95 -0
  191. data/vendor/assets/javascripts/tom-select-rails/esm/utils.js +121 -107
  192. data/vendor/assets/javascripts/tom-select-rails/esm/utils.js.map +1 -1
  193. data/vendor/assets/javascripts/tom-select-rails/esm/vanilla.d.ts +76 -0
  194. data/vendor/assets/javascripts/tom-select-rails/esm/vanilla.js +172 -0
  195. data/vendor/assets/javascripts/tom-select-rails/esm/vanilla.js.map +1 -0
  196. data/vendor/assets/javascripts/tom-select-rails/js/package.json +1 -0
  197. data/vendor/assets/javascripts/tom-select-rails/js/plugins/caret_position.js +161 -213
  198. data/vendor/assets/javascripts/tom-select-rails/js/plugins/caret_position.js.map +1 -1
  199. data/vendor/assets/javascripts/tom-select-rails/js/plugins/change_listener.js +3 -2
  200. data/vendor/assets/javascripts/tom-select-rails/js/plugins/change_listener.js.map +1 -1
  201. data/vendor/assets/javascripts/tom-select-rails/js/plugins/checkbox_options.js +47 -96
  202. data/vendor/assets/javascripts/tom-select-rails/js/plugins/checkbox_options.js.map +1 -1
  203. data/vendor/assets/javascripts/tom-select-rails/js/plugins/clear_button.js +71 -143
  204. data/vendor/assets/javascripts/tom-select-rails/js/plugins/clear_button.js.map +1 -1
  205. data/vendor/assets/javascripts/tom-select-rails/js/plugins/drag_drop.js +187 -29
  206. data/vendor/assets/javascripts/tom-select-rails/js/plugins/drag_drop.js.map +1 -1
  207. data/vendor/assets/javascripts/tom-select-rails/js/plugins/dropdown_header.js +100 -170
  208. data/vendor/assets/javascripts/tom-select-rails/js/plugins/dropdown_header.js.map +1 -1
  209. data/vendor/assets/javascripts/tom-select-rails/js/plugins/dropdown_input.js +212 -283
  210. data/vendor/assets/javascripts/tom-select-rails/js/plugins/dropdown_input.js.map +1 -1
  211. data/vendor/assets/javascripts/tom-select-rails/js/plugins/input_autogrow.js +4 -6
  212. data/vendor/assets/javascripts/tom-select-rails/js/plugins/input_autogrow.js.map +1 -1
  213. data/vendor/assets/javascripts/tom-select-rails/js/plugins/no_active_items.js +2 -1
  214. data/vendor/assets/javascripts/tom-select-rails/js/plugins/no_active_items.js.map +1 -1
  215. data/vendor/assets/javascripts/tom-select-rails/js/plugins/no_backspace_delete.js +2 -2
  216. data/vendor/assets/javascripts/tom-select-rails/js/plugins/no_backspace_delete.js.map +1 -1
  217. data/vendor/assets/javascripts/tom-select-rails/js/plugins/optgroup_columns.js +84 -161
  218. data/vendor/assets/javascripts/tom-select-rails/js/plugins/optgroup_columns.js.map +1 -1
  219. data/vendor/assets/javascripts/tom-select-rails/js/plugins/remove_button.js +132 -198
  220. data/vendor/assets/javascripts/tom-select-rails/js/plugins/remove_button.js.map +1 -1
  221. data/vendor/assets/javascripts/tom-select-rails/js/plugins/restore_on_backspace.js +2 -3
  222. data/vendor/assets/javascripts/tom-select-rails/js/plugins/restore_on_backspace.js.map +1 -1
  223. data/vendor/assets/javascripts/tom-select-rails/js/plugins/virtual_scroll.js +270 -326
  224. data/vendor/assets/javascripts/tom-select-rails/js/plugins/virtual_scroll.js.map +1 -1
  225. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.base.js +1367 -1918
  226. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.base.js.map +1 -1
  227. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.base.min.js +186 -173
  228. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.base.min.js.map +1 -1
  229. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.complete.js +1400 -1883
  230. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.complete.js.map +1 -1
  231. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.complete.min.js +366 -343
  232. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.complete.min.js.map +1 -1
  233. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.popular.js +1369 -1915
  234. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.popular.js.map +1 -1
  235. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.popular.min.js +339 -326
  236. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.popular.min.js.map +1 -1
  237. data/vendor/assets/javascripts/tom-select-rails/types/contrib/microevent.d.ts +1 -1
  238. data/vendor/assets/javascripts/tom-select-rails/types/contrib/microplugin.d.ts +4 -4
  239. data/vendor/assets/javascripts/tom-select-rails/types/defaults.d.ts +1 -0
  240. data/vendor/assets/javascripts/tom-select-rails/types/getSettings.d.ts +2 -2
  241. data/vendor/assets/javascripts/tom-select-rails/types/plugins/caret_position/plugin.d.ts +1 -1
  242. data/vendor/assets/javascripts/tom-select-rails/types/plugins/change_listener/plugin.d.ts +1 -1
  243. data/vendor/assets/javascripts/tom-select-rails/types/plugins/checkbox_options/plugin.d.ts +4 -3
  244. data/vendor/assets/javascripts/tom-select-rails/types/plugins/checkbox_options/types.d.ts +14 -0
  245. data/vendor/assets/javascripts/tom-select-rails/types/plugins/clear_button/plugin.d.ts +2 -2
  246. data/vendor/assets/javascripts/tom-select-rails/types/plugins/clear_button/types.d.ts +1 -1
  247. data/vendor/assets/javascripts/tom-select-rails/types/plugins/drag_drop/plugin.d.ts +1 -1
  248. data/vendor/assets/javascripts/tom-select-rails/types/plugins/dropdown_header/plugin.d.ts +2 -2
  249. data/vendor/assets/javascripts/tom-select-rails/types/plugins/dropdown_header/types.d.ts +1 -1
  250. data/vendor/assets/javascripts/tom-select-rails/types/plugins/dropdown_input/plugin.d.ts +1 -1
  251. data/vendor/assets/javascripts/tom-select-rails/types/plugins/input_autogrow/plugin.d.ts +1 -1
  252. data/vendor/assets/javascripts/tom-select-rails/types/plugins/no_active_items/plugin.d.ts +1 -1
  253. data/vendor/assets/javascripts/tom-select-rails/types/plugins/no_backspace_delete/plugin.d.ts +1 -1
  254. data/vendor/assets/javascripts/tom-select-rails/types/plugins/optgroup_columns/plugin.d.ts +1 -1
  255. data/vendor/assets/javascripts/tom-select-rails/types/plugins/remove_button/plugin.d.ts +2 -2
  256. data/vendor/assets/javascripts/tom-select-rails/types/plugins/remove_button/types.d.ts +1 -1
  257. data/vendor/assets/javascripts/tom-select-rails/types/plugins/restore_on_backspace/plugin.d.ts +3 -3
  258. data/vendor/assets/javascripts/tom-select-rails/types/plugins/virtual_scroll/plugin.d.ts +1 -1
  259. data/vendor/assets/javascripts/tom-select-rails/types/tom-select.complete.d.ts +1 -1
  260. data/vendor/assets/javascripts/tom-select-rails/types/tom-select.d.ts +12 -14
  261. data/vendor/assets/javascripts/tom-select-rails/types/tom-select.popular.d.ts +1 -1
  262. data/vendor/assets/javascripts/tom-select-rails/types/types/core.d.ts +17 -16
  263. data/vendor/assets/javascripts/tom-select-rails/types/types/index.d.ts +2 -2
  264. data/vendor/assets/javascripts/tom-select-rails/types/types/settings.d.ts +6 -5
  265. data/vendor/assets/javascripts/tom-select-rails/types/utils.d.ts +21 -2
  266. data/vendor/assets/javascripts/tom-select-rails/types/vanilla.d.ts +1 -1
  267. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap4.css +227 -219
  268. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap4.css.map +1 -1
  269. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap4.min.css +1 -1
  270. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap4.min.css.map +1 -1
  271. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap5.css +247 -254
  272. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap5.css.map +1 -1
  273. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap5.min.css +1 -1
  274. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap5.min.css.map +1 -1
  275. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.css +213 -210
  276. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.css.map +1 -1
  277. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.default.css +223 -215
  278. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.default.css.map +1 -1
  279. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.default.min.css +1 -1
  280. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.default.min.css.map +1 -1
  281. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.min.css +1 -1
  282. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.min.css.map +1 -1
  283. data/vendor/assets/stylesheets/tom-select-rails/scss/_dropdown.scss +7 -10
  284. data/vendor/assets/stylesheets/tom-select-rails/scss/_items.scss +7 -9
  285. data/vendor/assets/stylesheets/tom-select-rails/scss/plugins/checkbox_options.scss +8 -2
  286. data/vendor/assets/stylesheets/tom-select-rails/scss/plugins/clear_button.scss +16 -14
  287. data/vendor/assets/stylesheets/tom-select-rails/scss/plugins/drag_drop.scss +6 -12
  288. data/vendor/assets/stylesheets/tom-select-rails/scss/plugins/dropdown_header.scss +3 -2
  289. data/vendor/assets/stylesheets/tom-select-rails/scss/plugins/dropdown_input.scss +7 -11
  290. data/vendor/assets/stylesheets/tom-select-rails/scss/plugins/input_autogrow.scss +0 -3
  291. data/vendor/assets/stylesheets/tom-select-rails/scss/plugins/optgroup_columns.scss +7 -5
  292. data/vendor/assets/stylesheets/tom-select-rails/scss/plugins/remove_button.scss +20 -20
  293. data/vendor/assets/stylesheets/tom-select-rails/scss/tom-select.bootstrap4.scss +33 -39
  294. data/vendor/assets/stylesheets/tom-select-rails/scss/tom-select.bootstrap5.scss +54 -80
  295. data/vendor/assets/stylesheets/tom-select-rails/scss/tom-select.default.scss +16 -14
  296. data/vendor/assets/stylesheets/tom-select-rails/scss/tom-select.scss +52 -57
  297. metadata +154 -7
@@ -1,293 +1,222 @@
1
1
  /**
2
- * Tom Select v2.2.2
2
+ * Tom Select v2.4.3
3
3
  * Licensed under the Apache License, Version 2.0 (the "License");
4
4
  */
5
5
 
6
6
  (function (global, factory) {
7
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
8
- typeof define === 'function' && define.amd ? define(factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.dropdown_input = factory());
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
8
+ typeof define === 'function' && define.amd ? define(factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.dropdown_input = factory());
10
10
  })(this, (function () { 'use strict';
11
11
 
12
- const KEY_ESC = 27;
13
- const KEY_TAB = 9;
14
- typeof navigator === 'undefined' ? false : /Mac/.test(navigator.userAgent);
15
- // ctrl key or apple key for ma
16
-
17
- /*! @orchidjs/unicode-variants | https://github.com/orchidjs/unicode-variants | Apache License (v2) */
18
- const accent_pat = '[\u0300-\u036F\u{b7}\u{2be}\u{2bc}]';
19
- /** @type {TUnicodeMap} */
20
-
21
- const latin_convert = {};
22
- /** @type {TUnicodeMap} */
23
-
24
- const latin_condensed = {
25
- '/': '⁄∕',
26
- '0': '߀',
27
- "a": "ⱥɐɑ",
28
- "aa": "ꜳ",
29
- "ae": "æǽǣ",
30
- "ao": "ꜵ",
31
- "au": "ꜷ",
32
- "av": "ꜹꜻ",
33
- "ay": "ꜽ",
34
- "b": "ƀɓƃ",
35
- "c": "ꜿƈȼↄ",
36
- "d": "đɗɖᴅƌꮷԁɦ",
37
- "e": "ɛǝᴇɇ",
38
- "f": "ꝼƒ",
39
- "g": "ǥɠꞡᵹꝿɢ",
40
- "h": "ħⱨⱶɥ",
41
- "i": "ɨı",
42
- "j": "ɉȷ",
43
- "k": "ƙⱪꝁꝃꝅꞣ",
44
- "l": "łƚɫⱡꝉꝇꞁɭ",
45
- "m": "ɱɯϻ",
46
- "n": "ꞥƞɲꞑᴎлԉ",
47
- "o": "øǿɔɵꝋꝍᴑ",
48
- "oe": "œ",
49
- "oi": "ƣ",
50
- "oo": "ꝏ",
51
- "ou": "ȣ",
52
- "p": "ƥᵽꝑꝓꝕρ",
53
- "q": "ꝗꝙɋ",
54
- "r": "ɍɽꝛꞧꞃ",
55
- "s": "ßȿꞩꞅʂ",
56
- "t": "ŧƭʈⱦꞇ",
57
- "th": "þ",
58
- "tz": "ꜩ",
59
- "u": "ʉ",
60
- "v": "ʋꝟʌ",
61
- "vy": "ꝡ",
62
- "w": "ⱳ",
63
- "y": "ƴɏỿ",
64
- "z": "ƶȥɀⱬꝣ",
65
- "hv": "ƕ"
66
- };
67
-
68
- for (let latin in latin_condensed) {
69
- let unicode = latin_condensed[latin] || '';
70
-
71
- for (let i = 0; i < unicode.length; i++) {
72
- let char = unicode.substring(i, i + 1);
73
- latin_convert[char] = latin;
74
- }
75
- }
76
-
77
- new RegExp(Object.keys(latin_convert).join('|') + '|' + accent_pat, 'gu');
78
-
79
- /**
80
- * Iterates over arrays and hashes.
81
- *
82
- * ```
83
- * iterate(this.items, function(item, id) {
84
- * // invoked for each item
85
- * });
86
- * ```
87
- *
88
- */
89
-
90
- const iterate = (object, callback) => {
91
- if (Array.isArray(object)) {
92
- object.forEach(callback);
93
- } else {
94
- for (var key in object) {
95
- if (object.hasOwnProperty(key)) {
96
- callback(object[key], key);
97
- }
98
- }
99
- }
100
- };
101
-
102
- /**
103
- * Return a dom element from either a dom query string, jQuery object, a dom element or html string
104
- * https://stackoverflow.com/questions/494143/creating-a-new-dom-element-from-an-html-string-using-built-in-dom-methods-or-pro/35385518#35385518
105
- *
106
- * param query should be {}
107
- */
108
-
109
- const getDom = query => {
110
- if (query.jquery) {
111
- return query[0];
112
- }
113
-
114
- if (query instanceof HTMLElement) {
115
- return query;
116
- }
117
-
118
- if (isHtmlString(query)) {
119
- var tpl = document.createElement('template');
120
- tpl.innerHTML = query.trim(); // Never return a text node of whitespace as the result
121
-
122
- return tpl.content.firstChild;
123
- }
124
-
125
- return document.querySelector(query);
126
- };
127
- const isHtmlString = arg => {
128
- if (typeof arg === 'string' && arg.indexOf('<') > -1) {
129
- return true;
130
- }
131
-
132
- return false;
133
- };
134
- /**
135
- * Add css classes
136
- *
137
- */
138
-
139
- const addClasses = (elmts, ...classes) => {
140
- var norm_classes = classesArray(classes);
141
- elmts = castAsArray(elmts);
142
- elmts.map(el => {
143
- norm_classes.map(cls => {
144
- el.classList.add(cls);
145
- });
146
- });
147
- };
148
- /**
149
- * Return arguments
150
- *
151
- */
152
-
153
- const classesArray = args => {
154
- var classes = [];
155
- iterate(args, _classes => {
156
- if (typeof _classes === 'string') {
157
- _classes = _classes.trim().split(/[\11\12\14\15\40]/);
158
- }
159
-
160
- if (Array.isArray(_classes)) {
161
- classes = classes.concat(_classes);
162
- }
163
- });
164
- return classes.filter(Boolean);
165
- };
166
- /**
167
- * Create an array from arg if it's not already an array
168
- *
169
- */
170
-
171
- const castAsArray = arg => {
172
- if (!Array.isArray(arg)) {
173
- arg = [arg];
174
- }
175
-
176
- return arg;
177
- };
178
-
179
- /**
180
- * Converts a scalar to its best string representation
181
- * for hash keys and HTML attribute values.
182
- *
183
- * Transformations:
184
- * 'str' -> 'str'
185
- * null -> ''
186
- * undefined -> ''
187
- * true -> '1'
188
- * false -> '0'
189
- * 0 -> '0'
190
- * 1 -> '1'
191
- *
192
- */
193
- /**
194
- * Prevent default
195
- *
196
- */
197
-
198
- const preventDefault = (evt, stop = false) => {
199
- if (evt) {
200
- evt.preventDefault();
201
-
202
- if (stop) {
203
- evt.stopPropagation();
204
- }
205
- }
206
- };
207
- /**
208
- * Add event helper
209
- *
210
- */
211
-
212
- const addEvent = (target, type, callback, options) => {
213
- target.addEventListener(type, callback, options);
214
- };
215
-
216
- /**
217
- * Plugin: "dropdown_input" (Tom Select)
218
- * Copyright (c) contributors
219
- *
220
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
221
- * file except in compliance with the License. You may obtain a copy of the License at:
222
- * http://www.apache.org/licenses/LICENSE-2.0
223
- *
224
- * Unless required by applicable law or agreed to in writing, software distributed under
225
- * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
226
- * ANY KIND, either express or implied. See the License for the specific language
227
- * governing permissions and limitations under the License.
228
- *
229
- */
230
- function plugin () {
231
- const self = this;
232
- self.settings.shouldOpen = true; // make sure the input is shown even if there are no options to display in the dropdown
233
-
234
- self.hook('before', 'setup', () => {
235
- self.focus_node = self.control;
236
- addClasses(self.control_input, 'dropdown-input');
237
- const div = getDom('<div class="dropdown-input-wrap">');
238
- div.append(self.control_input);
239
- self.dropdown.insertBefore(div, self.dropdown.firstChild); // set a placeholder in the select control
240
-
241
- const placeholder = getDom('<input class="items-placeholder" tabindex="-1" />');
242
- placeholder.placeholder = self.settings.placeholder || '';
243
- self.control.append(placeholder);
244
- });
245
- self.on('initialize', () => {
246
- // set tabIndex on control to -1, otherwise [shift+tab] will put focus right back on control_input
247
- self.control_input.addEventListener('keydown', evt => {
248
- //addEvent(self.control_input,'keydown' as const,(evt:KeyboardEvent) =>{
249
- switch (evt.keyCode) {
250
- case KEY_ESC:
251
- if (self.isOpen) {
252
- preventDefault(evt, true);
253
- self.close();
254
- }
255
-
256
- self.clearActiveItems();
257
- return;
258
-
259
- case KEY_TAB:
260
- self.focus_node.tabIndex = -1;
261
- break;
262
- }
263
-
264
- return self.onKeyDown.call(self, evt);
265
- });
266
- self.on('blur', () => {
267
- self.focus_node.tabIndex = self.isDisabled ? -1 : self.tabIndex;
268
- }); // give the control_input focus when the dropdown is open
269
-
270
- self.on('dropdown_open', () => {
271
- self.control_input.focus();
272
- }); // prevent onBlur from closing when focus is on the control_input
273
-
274
- const orig_onBlur = self.onBlur;
275
- self.hook('instead', 'onBlur', evt => {
276
- if (evt && evt.relatedTarget == self.control_input) return;
277
- return orig_onBlur.call(self);
278
- });
279
- addEvent(self.control_input, 'blur', () => self.onBlur()); // return focus to control to allow further keyboard input
280
-
281
- self.hook('before', 'close', () => {
282
- if (!self.isOpen) return;
283
- self.focus_node.focus({
284
- preventScroll: true
285
- });
286
- });
287
- });
288
- }
289
-
290
- return plugin;
12
+ const KEY_ESC = 27;
13
+ const KEY_TAB = 9;
14
+ // ctrl key or apple key for ma
15
+
16
+ /**
17
+ * Converts a scalar to its best string representation
18
+ * for hash keys and HTML attribute values.
19
+ *
20
+ * Transformations:
21
+ * 'str' -> 'str'
22
+ * null -> ''
23
+ * undefined -> ''
24
+ * true -> '1'
25
+ * false -> '0'
26
+ * 0 -> '0'
27
+ * 1 -> '1'
28
+ *
29
+ */
30
+
31
+ /**
32
+ * Prevent default
33
+ *
34
+ */
35
+ const preventDefault = (evt, stop = false) => {
36
+ if (evt) {
37
+ evt.preventDefault();
38
+ if (stop) {
39
+ evt.stopPropagation();
40
+ }
41
+ }
42
+ };
43
+
44
+ /**
45
+ * Add event helper
46
+ *
47
+ */
48
+ const addEvent = (target, type, callback, options) => {
49
+ target.addEventListener(type, callback, options);
50
+ };
51
+
52
+ /**
53
+ * Iterates over arrays and hashes.
54
+ *
55
+ * ```
56
+ * iterate(this.items, function(item, id) {
57
+ * // invoked for each item
58
+ * });
59
+ * ```
60
+ *
61
+ */
62
+ const iterate = (object, callback) => {
63
+ if (Array.isArray(object)) {
64
+ object.forEach(callback);
65
+ } else {
66
+ for (var key in object) {
67
+ if (object.hasOwnProperty(key)) {
68
+ callback(object[key], key);
69
+ }
70
+ }
71
+ }
72
+ };
73
+
74
+ /**
75
+ * Return a dom element from either a dom query string, jQuery object, a dom element or html string
76
+ * https://stackoverflow.com/questions/494143/creating-a-new-dom-element-from-an-html-string-using-built-in-dom-methods-or-pro/35385518#35385518
77
+ *
78
+ * param query should be {}
79
+ */
80
+ const getDom = query => {
81
+ if (query.jquery) {
82
+ return query[0];
83
+ }
84
+ if (query instanceof HTMLElement) {
85
+ return query;
86
+ }
87
+ if (isHtmlString(query)) {
88
+ var tpl = document.createElement('template');
89
+ tpl.innerHTML = query.trim(); // Never return a text node of whitespace as the result
90
+ return tpl.content.firstChild;
91
+ }
92
+ return document.querySelector(query);
93
+ };
94
+ const isHtmlString = arg => {
95
+ if (typeof arg === 'string' && arg.indexOf('<') > -1) {
96
+ return true;
97
+ }
98
+ return false;
99
+ };
100
+
101
+ /**
102
+ * Add css classes
103
+ *
104
+ */
105
+ const addClasses = (elmts, ...classes) => {
106
+ var norm_classes = classesArray(classes);
107
+ elmts = castAsArray(elmts);
108
+ elmts.map(el => {
109
+ norm_classes.map(cls => {
110
+ el.classList.add(cls);
111
+ });
112
+ });
113
+ };
114
+
115
+ /**
116
+ * Return arguments
117
+ *
118
+ */
119
+ const classesArray = args => {
120
+ var classes = [];
121
+ iterate(args, _classes => {
122
+ if (typeof _classes === 'string') {
123
+ _classes = _classes.trim().split(/[\t\n\f\r\s]/);
124
+ }
125
+ if (Array.isArray(_classes)) {
126
+ classes = classes.concat(_classes);
127
+ }
128
+ });
129
+ return classes.filter(Boolean);
130
+ };
131
+
132
+ /**
133
+ * Create an array from arg if it's not already an array
134
+ *
135
+ */
136
+ const castAsArray = arg => {
137
+ if (!Array.isArray(arg)) {
138
+ arg = [arg];
139
+ }
140
+ return arg;
141
+ };
142
+
143
+ /**
144
+ * Plugin: "dropdown_input" (Tom Select)
145
+ * Copyright (c) contributors
146
+ *
147
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
148
+ * file except in compliance with the License. You may obtain a copy of the License at:
149
+ * http://www.apache.org/licenses/LICENSE-2.0
150
+ *
151
+ * Unless required by applicable law or agreed to in writing, software distributed under
152
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
153
+ * ANY KIND, either express or implied. See the License for the specific language
154
+ * governing permissions and limitations under the License.
155
+ *
156
+ */
157
+
158
+ function plugin () {
159
+ const self = this;
160
+ self.settings.shouldOpen = true; // make sure the input is shown even if there are no options to display in the dropdown
161
+
162
+ self.hook('before', 'setup', () => {
163
+ self.focus_node = self.control;
164
+ addClasses(self.control_input, 'dropdown-input');
165
+ const div = getDom('<div class="dropdown-input-wrap">');
166
+ div.append(self.control_input);
167
+ self.dropdown.insertBefore(div, self.dropdown.firstChild);
168
+
169
+ // set a placeholder in the select control
170
+ const placeholder = getDom('<input class="items-placeholder" tabindex="-1" />');
171
+ placeholder.placeholder = self.settings.placeholder || '';
172
+ self.control.append(placeholder);
173
+ });
174
+ self.on('initialize', () => {
175
+ // set tabIndex on control to -1, otherwise [shift+tab] will put focus right back on control_input
176
+ self.control_input.addEventListener('keydown', evt => {
177
+ //addEvent(self.control_input,'keydown' as const,(evt:KeyboardEvent) =>{
178
+ switch (evt.keyCode) {
179
+ case KEY_ESC:
180
+ if (self.isOpen) {
181
+ preventDefault(evt, true);
182
+ self.close();
183
+ }
184
+ self.clearActiveItems();
185
+ return;
186
+ case KEY_TAB:
187
+ self.focus_node.tabIndex = -1;
188
+ break;
189
+ }
190
+ return self.onKeyDown.call(self, evt);
191
+ });
192
+ self.on('blur', () => {
193
+ self.focus_node.tabIndex = self.isDisabled ? -1 : self.tabIndex;
194
+ });
195
+
196
+ // give the control_input focus when the dropdown is open
197
+ self.on('dropdown_open', () => {
198
+ self.control_input.focus();
199
+ });
200
+
201
+ // prevent onBlur from closing when focus is on the control_input
202
+ const orig_onBlur = self.onBlur;
203
+ self.hook('instead', 'onBlur', evt => {
204
+ if (evt && evt.relatedTarget == self.control_input) return;
205
+ return orig_onBlur.call(self);
206
+ });
207
+ addEvent(self.control_input, 'blur', () => self.onBlur());
208
+
209
+ // return focus to control to allow further keyboard input
210
+ self.hook('before', 'close', () => {
211
+ if (!self.isOpen) return;
212
+ self.focus_node.focus({
213
+ preventScroll: true
214
+ });
215
+ });
216
+ });
217
+ }
218
+
219
+ return plugin;
291
220
 
292
221
  }));
293
222
  //# sourceMappingURL=dropdown_input.js.map