tom-select-rails 2.3.1 → 2.4.5

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 (259) 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.js +16 -0
  4. data/vendor/assets/javascripts/tom-select-rails/cjs/constants.js.map +1 -0
  5. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/highlight.js +69 -0
  6. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/highlight.js.map +1 -0
  7. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microevent.js +64 -0
  8. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microevent.js.map +1 -0
  9. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microplugin.js +112 -0
  10. data/vendor/assets/javascripts/tom-select-rails/cjs/contrib/microplugin.js.map +1 -0
  11. data/vendor/assets/javascripts/tom-select-rails/cjs/defaults.js +84 -0
  12. data/vendor/assets/javascripts/tom-select-rails/cjs/defaults.js.map +1 -0
  13. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/getSettings.d.ts +2 -2
  14. data/vendor/assets/javascripts/tom-select-rails/cjs/getSettings.js +146 -0
  15. data/vendor/assets/javascripts/tom-select-rails/cjs/getSettings.js.map +1 -0
  16. data/vendor/assets/javascripts/tom-select-rails/cjs/package.json +1 -0
  17. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/caret_position/plugin.d.ts +1 -1
  18. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/caret_position/plugin.js +66 -0
  19. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/caret_position/plugin.js.map +1 -0
  20. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/change_listener/plugin.d.ts +1 -1
  21. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/change_listener/plugin.js +25 -0
  22. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/change_listener/plugin.js.map +1 -0
  23. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/checkbox_options/plugin.d.ts +2 -2
  24. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/plugin.js +108 -0
  25. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/plugin.js.map +1 -0
  26. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/types.js +3 -0
  27. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/checkbox_options/types.js.map +1 -0
  28. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/clear_button/plugin.d.ts +2 -2
  29. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/plugin.js +46 -0
  30. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/plugin.js.map +1 -0
  31. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/clear_button/types.d.ts +2 -0
  32. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/types.js +3 -0
  33. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/clear_button/types.js.map +1 -0
  34. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/drag_drop/plugin.d.ts +1 -1
  35. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/drag_drop/plugin.js +117 -0
  36. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/drag_drop/plugin.js.map +1 -0
  37. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/dropdown_header/plugin.d.ts +2 -2
  38. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/plugin.js +50 -0
  39. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/plugin.js.map +1 -0
  40. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/types.js +3 -0
  41. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_header/types.js.map +1 -0
  42. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/dropdown_input/plugin.d.ts +1 -1
  43. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_input/plugin.js +77 -0
  44. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/dropdown_input/plugin.js.map +1 -0
  45. data/vendor/assets/javascripts/tom-select-rails/{types/plugins/no_backspace_delete → cjs/plugins/input_autogrow}/plugin.d.ts +1 -1
  46. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/input_autogrow/plugin.js +47 -0
  47. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/input_autogrow/plugin.js.map +1 -0
  48. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/no_active_items/plugin.d.ts +1 -1
  49. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_active_items/plugin.js +22 -0
  50. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_active_items/plugin.js.map +1 -0
  51. data/vendor/assets/javascripts/tom-select-rails/{types/plugins/input_autogrow → cjs/plugins/no_backspace_delete}/plugin.d.ts +1 -1
  52. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_backspace_delete/plugin.js +28 -0
  53. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/no_backspace_delete/plugin.js.map +1 -0
  54. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/optgroup_columns/plugin.d.ts +1 -1
  55. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/optgroup_columns/plugin.js +51 -0
  56. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/optgroup_columns/plugin.js.map +1 -0
  57. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/remove_button/plugin.d.ts +2 -2
  58. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/plugin.js +61 -0
  59. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/plugin.js.map +1 -0
  60. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/types.js +3 -0
  61. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/remove_button/types.js.map +1 -0
  62. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/restore_on_backspace/plugin.d.ts +2 -2
  63. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/restore_on_backspace/plugin.js +24 -0
  64. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/restore_on_backspace/plugin.js.map +1 -0
  65. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/virtual_scroll/plugin.d.ts +1 -1
  66. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/virtual_scroll/plugin.js +170 -0
  67. data/vendor/assets/javascripts/tom-select-rails/cjs/plugins/virtual_scroll/plugin.js.map +1 -0
  68. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.complete.d.ts +2 -0
  69. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.complete.js +33 -5291
  70. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.complete.js.map +1 -1
  71. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/tom-select.d.ts +3 -3
  72. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.js +2128 -4255
  73. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.js.map +1 -1
  74. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.popular.d.ts +2 -0
  75. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.popular.js +15 -4665
  76. data/vendor/assets/javascripts/tom-select-rails/cjs/tom-select.popular.js.map +1 -1
  77. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/types/core.d.ts +2 -2
  78. data/vendor/assets/javascripts/tom-select-rails/cjs/types/core.js +3 -0
  79. data/vendor/assets/javascripts/tom-select-rails/cjs/types/core.js.map +1 -0
  80. data/vendor/assets/javascripts/tom-select-rails/cjs/types/index.d.ts +2 -0
  81. data/vendor/assets/javascripts/tom-select-rails/cjs/types/index.js +19 -0
  82. data/vendor/assets/javascripts/tom-select-rails/cjs/types/index.js.map +1 -0
  83. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/types/settings.d.ts +4 -4
  84. data/vendor/assets/javascripts/tom-select-rails/cjs/types/settings.js +3 -0
  85. data/vendor/assets/javascripts/tom-select-rails/cjs/types/settings.js.map +1 -0
  86. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/utils.d.ts +16 -4
  87. data/vendor/assets/javascripts/tom-select-rails/cjs/utils.js +124 -112
  88. data/vendor/assets/javascripts/tom-select-rails/cjs/utils.js.map +1 -1
  89. data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/vanilla.d.ts +1 -1
  90. data/vendor/assets/javascripts/tom-select-rails/cjs/vanilla.js +190 -0
  91. data/vendor/assets/javascripts/tom-select-rails/cjs/vanilla.js.map +1 -0
  92. data/vendor/assets/javascripts/tom-select-rails/esm/constants.d.ts +12 -0
  93. data/vendor/assets/javascripts/tom-select-rails/esm/constants.js +13 -0
  94. data/vendor/assets/javascripts/tom-select-rails/esm/constants.js.map +1 -0
  95. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/highlight.d.ts +13 -0
  96. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/highlight.js +64 -0
  97. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/highlight.js.map +1 -0
  98. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microevent.d.ts +20 -0
  99. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microevent.js +61 -0
  100. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microevent.js.map +1 -0
  101. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microplugin.d.ts +71 -0
  102. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microplugin.js +109 -0
  103. data/vendor/assets/javascripts/tom-select-rails/esm/contrib/microplugin.js.map +1 -0
  104. data/vendor/assets/javascripts/tom-select-rails/esm/defaults.d.ts +52 -0
  105. data/vendor/assets/javascripts/tom-select-rails/esm/defaults.js +82 -0
  106. data/vendor/assets/javascripts/tom-select-rails/esm/defaults.js.map +1 -0
  107. data/vendor/assets/javascripts/tom-select-rails/esm/getSettings.d.ts +3 -0
  108. data/vendor/assets/javascripts/tom-select-rails/esm/getSettings.js +143 -0
  109. data/vendor/assets/javascripts/tom-select-rails/esm/getSettings.js.map +1 -0
  110. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/caret_position/plugin.d.ts +16 -0
  111. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/caret_position/plugin.js +16 -63
  112. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/caret_position/plugin.js.map +1 -1
  113. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/change_listener/plugin.d.ts +16 -0
  114. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/change_listener/plugin.js +1 -1
  115. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/change_listener/plugin.js.map +1 -1
  116. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/plugin.d.ts +17 -0
  117. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/plugin.js +1 -63
  118. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/plugin.js.map +1 -1
  119. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/types.d.ts +14 -0
  120. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/types.js +2 -0
  121. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/checkbox_options/types.js.map +1 -0
  122. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/plugin.d.ts +17 -0
  123. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/plugin.js +4 -64
  124. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/plugin.js.map +1 -1
  125. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/types.d.ts +7 -0
  126. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/types.js +2 -0
  127. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/clear_button/types.js.map +1 -0
  128. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/drag_drop/plugin.d.ts +16 -0
  129. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/drag_drop/plugin.js +1 -63
  130. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/drag_drop/plugin.js.map +1 -1
  131. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/plugin.d.ts +17 -0
  132. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/plugin.js +26 -88
  133. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/plugin.js.map +1 -1
  134. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/types.d.ts +8 -0
  135. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/types.js +2 -0
  136. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_header/types.js.map +1 -0
  137. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_input/plugin.d.ts +16 -0
  138. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_input/plugin.js +34 -96
  139. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/dropdown_input/plugin.js.map +1 -1
  140. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/input_autogrow/plugin.d.ts +15 -0
  141. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/input_autogrow/plugin.js +1 -1
  142. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/input_autogrow/plugin.js.map +1 -1
  143. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_active_items/plugin.d.ts +15 -0
  144. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_active_items/plugin.js +1 -1
  145. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_active_items/plugin.js.map +1 -1
  146. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_backspace_delete/plugin.d.ts +15 -0
  147. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_backspace_delete/plugin.js +1 -1
  148. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/no_backspace_delete/plugin.js.map +1 -1
  149. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/optgroup_columns/plugin.d.ts +16 -0
  150. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/optgroup_columns/plugin.js +1 -66
  151. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/optgroup_columns/plugin.js.map +1 -1
  152. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/plugin.d.ts +17 -0
  153. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/plugin.js +28 -90
  154. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/plugin.js.map +1 -1
  155. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/types.d.ts +6 -0
  156. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/types.js +2 -0
  157. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/remove_button/types.js.map +1 -0
  158. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/restore_on_backspace/plugin.d.ts +21 -0
  159. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/restore_on_backspace/plugin.js +1 -1
  160. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/restore_on_backspace/plugin.js.map +1 -1
  161. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/virtual_scroll/plugin.d.ts +16 -0
  162. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/virtual_scroll/plugin.js +16 -63
  163. data/vendor/assets/javascripts/tom-select-rails/esm/plugins/virtual_scroll/plugin.js.map +1 -1
  164. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.complete.d.ts +2 -0
  165. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.complete.js +17 -5275
  166. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.complete.js.map +1 -1
  167. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.d.ts +594 -0
  168. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.js +2123 -4251
  169. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.js.map +1 -1
  170. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.popular.d.ts +2 -0
  171. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.popular.js +8 -4658
  172. data/vendor/assets/javascripts/tom-select-rails/esm/tom-select.popular.js.map +1 -1
  173. data/vendor/assets/javascripts/tom-select-rails/esm/types/core.d.ts +49 -0
  174. data/vendor/assets/javascripts/tom-select-rails/esm/types/core.js +2 -0
  175. data/vendor/assets/javascripts/tom-select-rails/esm/types/core.js.map +1 -0
  176. data/vendor/assets/javascripts/tom-select-rails/esm/types/index.d.ts +2 -0
  177. data/vendor/assets/javascripts/tom-select-rails/esm/types/index.js +3 -0
  178. data/vendor/assets/javascripts/tom-select-rails/esm/types/index.js.map +1 -0
  179. data/vendor/assets/javascripts/tom-select-rails/esm/types/settings.d.ts +79 -0
  180. data/vendor/assets/javascripts/tom-select-rails/esm/types/settings.js +2 -0
  181. data/vendor/assets/javascripts/tom-select-rails/esm/types/settings.js.map +1 -0
  182. data/vendor/assets/javascripts/tom-select-rails/esm/utils.d.ts +95 -0
  183. data/vendor/assets/javascripts/tom-select-rails/esm/utils.js +116 -107
  184. data/vendor/assets/javascripts/tom-select-rails/esm/utils.js.map +1 -1
  185. data/vendor/assets/javascripts/tom-select-rails/esm/vanilla.d.ts +76 -0
  186. data/vendor/assets/javascripts/tom-select-rails/esm/vanilla.js +172 -0
  187. data/vendor/assets/javascripts/tom-select-rails/esm/vanilla.js.map +1 -0
  188. data/vendor/assets/javascripts/tom-select-rails/js/package.json +1 -0
  189. data/vendor/assets/javascripts/tom-select-rails/js/plugins/caret_position.js +161 -208
  190. data/vendor/assets/javascripts/tom-select-rails/js/plugins/caret_position.js.map +1 -1
  191. data/vendor/assets/javascripts/tom-select-rails/js/plugins/change_listener.js +1 -1
  192. data/vendor/assets/javascripts/tom-select-rails/js/plugins/change_listener.js.map +1 -1
  193. data/vendor/assets/javascripts/tom-select-rails/js/plugins/checkbox_options.js +1 -63
  194. data/vendor/assets/javascripts/tom-select-rails/js/plugins/checkbox_options.js.map +1 -1
  195. data/vendor/assets/javascripts/tom-select-rails/js/plugins/clear_button.js +70 -130
  196. data/vendor/assets/javascripts/tom-select-rails/js/plugins/clear_button.js.map +1 -1
  197. data/vendor/assets/javascripts/tom-select-rails/js/plugins/drag_drop.js +1 -63
  198. data/vendor/assets/javascripts/tom-select-rails/js/plugins/drag_drop.js.map +1 -1
  199. data/vendor/assets/javascripts/tom-select-rails/js/plugins/dropdown_header.js +95 -157
  200. data/vendor/assets/javascripts/tom-select-rails/js/plugins/dropdown_header.js.map +1 -1
  201. data/vendor/assets/javascripts/tom-select-rails/js/plugins/dropdown_input.js +212 -274
  202. data/vendor/assets/javascripts/tom-select-rails/js/plugins/dropdown_input.js.map +1 -1
  203. data/vendor/assets/javascripts/tom-select-rails/js/plugins/input_autogrow.js +1 -1
  204. data/vendor/assets/javascripts/tom-select-rails/js/plugins/input_autogrow.js.map +1 -1
  205. data/vendor/assets/javascripts/tom-select-rails/js/plugins/no_active_items.js +1 -1
  206. data/vendor/assets/javascripts/tom-select-rails/js/plugins/no_active_items.js.map +1 -1
  207. data/vendor/assets/javascripts/tom-select-rails/js/plugins/no_backspace_delete.js +1 -1
  208. data/vendor/assets/javascripts/tom-select-rails/js/plugins/no_backspace_delete.js.map +1 -1
  209. data/vendor/assets/javascripts/tom-select-rails/js/plugins/optgroup_columns.js +79 -144
  210. data/vendor/assets/javascripts/tom-select-rails/js/plugins/optgroup_columns.js.map +1 -1
  211. data/vendor/assets/javascripts/tom-select-rails/js/plugins/remove_button.js +132 -194
  212. data/vendor/assets/javascripts/tom-select-rails/js/plugins/remove_button.js.map +1 -1
  213. data/vendor/assets/javascripts/tom-select-rails/js/plugins/restore_on_backspace.js +1 -1
  214. data/vendor/assets/javascripts/tom-select-rails/js/plugins/restore_on_backspace.js.map +1 -1
  215. data/vendor/assets/javascripts/tom-select-rails/js/plugins/virtual_scroll.js +248 -295
  216. data/vendor/assets/javascripts/tom-select-rails/js/plugins/virtual_scroll.js.map +1 -1
  217. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.base.js +835 -1106
  218. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.base.js.map +1 -1
  219. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.base.min.js +176 -173
  220. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.base.min.js.map +1 -1
  221. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.complete.js +838 -1107
  222. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.complete.js.map +1 -1
  223. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.complete.min.js +357 -354
  224. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.complete.min.js.map +1 -1
  225. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.popular.js +835 -1106
  226. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.popular.js.map +1 -1
  227. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.popular.min.js +336 -333
  228. data/vendor/assets/javascripts/tom-select-rails/js/tom-select.popular.min.js.map +1 -1
  229. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap4.css +16 -13
  230. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap4.css.map +1 -1
  231. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap4.min.css +1 -1
  232. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap4.min.css.map +1 -1
  233. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap5.css +15 -12
  234. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap5.css.map +1 -1
  235. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap5.min.css +1 -1
  236. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.bootstrap5.min.css.map +1 -1
  237. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.css +11 -10
  238. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.css.map +1 -1
  239. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.default.css +7 -6
  240. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.default.css.map +1 -1
  241. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.default.min.css +1 -1
  242. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.default.min.css.map +1 -1
  243. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.min.css +1 -1
  244. data/vendor/assets/stylesheets/tom-select-rails/css/tom-select.min.css.map +1 -1
  245. data/vendor/assets/stylesheets/tom-select-rails/scss/_items.scss +6 -4
  246. data/vendor/assets/stylesheets/tom-select-rails/scss/tom-select.default.scss +1 -1
  247. data/vendor/assets/stylesheets/tom-select-rails/scss/tom-select.scss +6 -6
  248. metadata +153 -39
  249. data/vendor/assets/javascripts/tom-select-rails/types/tom-select.complete.d.ts +0 -2
  250. data/vendor/assets/javascripts/tom-select-rails/types/tom-select.popular.d.ts +0 -2
  251. data/vendor/assets/javascripts/tom-select-rails/types/types/index.d.ts +0 -2
  252. /data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/constants.d.ts +0 -0
  253. /data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/contrib/highlight.d.ts +0 -0
  254. /data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/contrib/microevent.d.ts +0 -0
  255. /data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/contrib/microplugin.d.ts +0 -0
  256. /data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/defaults.d.ts +0 -0
  257. /data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/checkbox_options/types.d.ts +0 -0
  258. /data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/dropdown_header/types.d.ts +0 -0
  259. /data/vendor/assets/javascripts/tom-select-rails/{types → cjs}/plugins/remove_button/types.d.ts +0 -0
@@ -0,0 +1,49 @@
1
+ import type TomSelect from '../tom-select.ts';
2
+ import { escape_html } from '../utils.ts';
3
+ export interface TomInput extends HTMLElement {
4
+ tomselect?: TomSelect;
5
+ disabled: boolean;
6
+ readOnly?: boolean;
7
+ required: boolean;
8
+ value: string;
9
+ type: string;
10
+ validity: ValidityState;
11
+ }
12
+ export type TomArgObject = {
13
+ silent?: boolean;
14
+ };
15
+ export type TomOption = {
16
+ [key: string]: any;
17
+ };
18
+ export type TomOptions = {
19
+ [key: string]: TomOption;
20
+ };
21
+ export type TomCreateFilter = (input: string) => boolean;
22
+ export type TomCreateCallback = (data?: TomOption) => void;
23
+ export type TomCreate = (input: string, create: TomCreateCallback) => boolean;
24
+ export interface TomItem extends HTMLElement {
25
+ dataset: {
26
+ value: string;
27
+ };
28
+ }
29
+ export type TomLoadCallback = TomSelect['loadCallback'];
30
+ export type TomTemplate = (data: TomOption, escape: typeof escape_html) => string | HTMLElement;
31
+ export type TomTemplateNull = (data: TomOption, escape: typeof escape_html) => null | string | HTMLElement;
32
+ export type TomTemplates = {
33
+ 'dropdown': TomTemplate;
34
+ 'optgroup': TomTemplate;
35
+ 'optgroup_header': TomTemplate;
36
+ 'option': TomTemplate;
37
+ 'item': TomTemplate;
38
+ 'option_create': TomTemplate;
39
+ 'no_results': TomTemplate;
40
+ 'loading': TomTemplate;
41
+ 'not_loading': TomTemplateNull;
42
+ 'loading_more': TomTemplateNull;
43
+ 'no_more_results': TomTemplateNull;
44
+ };
45
+ export type TomTemplateNames = keyof TomTemplates;
46
+ export type TomClearFilter = (option: TomOption, value: string) => boolean;
47
+ export type RecursivePartial<T> = {
48
+ [P in keyof T]?: T[P] extends (infer U)[] ? RecursivePartial<U>[] : T[P] extends object | undefined ? RecursivePartial<T[P]> : T[P];
49
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/types/core.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from './core.ts';
2
+ export * from './settings.ts';
@@ -0,0 +1,3 @@
1
+ export * from "./core.js";
2
+ export * from "./settings.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AACA,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,79 @@
1
+ import { TomCreateFilter, TomCreate, TomLoadCallback, TomTemplates, TomOption } from './index.ts';
2
+ import { TPluginItem, TPluginHash } from '../contrib/microplugin.ts';
3
+ import { type Sort as SifterSort, type SortFn as SifterSortFn } from '@orchidjs/sifter';
4
+ export type TomSettings = {
5
+ options?: any[];
6
+ optgroups?: any[];
7
+ items?: string[];
8
+ plugins: string[] | TPluginItem[] | TPluginHash;
9
+ delimiter: string;
10
+ splitOn: RegExp | string;
11
+ persist: boolean;
12
+ diacritics: boolean;
13
+ create: boolean | TomCreate;
14
+ createOnBlur: boolean;
15
+ createFilter: RegExp | string | TomCreateFilter;
16
+ highlight: boolean;
17
+ openOnFocus: boolean;
18
+ shouldOpen: boolean;
19
+ maxOptions: number;
20
+ maxItems: null | number;
21
+ hideSelected: boolean;
22
+ duplicates: boolean;
23
+ addPrecedence: boolean;
24
+ selectOnTab: boolean;
25
+ preload: boolean | string;
26
+ allowEmptyOption: boolean;
27
+ closeAfterSelect: boolean;
28
+ refreshThrottle: number;
29
+ loadThrottle: number;
30
+ loadingClass: string;
31
+ dataAttr: string;
32
+ optgroupField: string;
33
+ valueField: string;
34
+ labelField: string;
35
+ disabledField: string;
36
+ optgroupLabelField: string;
37
+ optgroupValueField: string;
38
+ lockOptgroupOrder: boolean;
39
+ sortField: string | SifterSort[] | SifterSortFn;
40
+ searchField: string[];
41
+ searchConjunction: string;
42
+ nesting: boolean;
43
+ mode: string;
44
+ wrapperClass: string;
45
+ controlClass: string;
46
+ dropdownClass: string;
47
+ dropdownContentClass: string;
48
+ itemClass: string;
49
+ optionClass: string;
50
+ dropdownParent: string;
51
+ controlInput: string | HTMLInputElement;
52
+ copyClassesToDropdown: boolean;
53
+ placeholder: string;
54
+ hidePlaceholder: boolean;
55
+ load: (value: string, callback: TomLoadCallback) => void;
56
+ score?: (query: string) => () => any;
57
+ shouldLoad: (query: string) => boolean;
58
+ onInitialize: () => void;
59
+ onChange: (value: string | number) => void;
60
+ onItemAdd: (value: string | number, item: HTMLDivElement) => void;
61
+ onItemRemove: (value: string | number, item: HTMLDivElement) => void;
62
+ onClear: () => void;
63
+ onOptionAdd: (value: string | number, data: TomOption) => void;
64
+ onOptionRemove: (value: string | number) => void;
65
+ onOptionClear: () => void;
66
+ onOptionGroupAdd: (value: string | number, data: TomOption) => void;
67
+ onOptionGroupRemove: (value: string | number) => void;
68
+ onOptionGroupClear: () => void;
69
+ onDropdownOpen: (dropdown: HTMLDivElement) => void;
70
+ onDropdownClose: (dropdown: HTMLDivElement) => void;
71
+ onType: (str: string) => void;
72
+ onLoad: (options: TomOption[], optgroups: TomOption[]) => void;
73
+ onFocus: () => void;
74
+ onBlur: () => void;
75
+ onDelete: (values: string[], evt: KeyboardEvent | MouseEvent) => boolean;
76
+ render: TomTemplates;
77
+ firstUrl: (query: string) => any;
78
+ shouldLoadMore: () => boolean;
79
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/types/settings.ts"],"names":[],"mappings":""}
@@ -0,0 +1,95 @@
1
+ import type TomSelect from './tom-select.ts';
2
+ import { TomLoadCallback } from './types/index.ts';
3
+ /**
4
+ * Converts a scalar to its best string representation
5
+ * for hash keys and HTML attribute values.
6
+ *
7
+ * Transformations:
8
+ * 'str' -> 'str'
9
+ * null -> ''
10
+ * undefined -> ''
11
+ * true -> '1'
12
+ * false -> '0'
13
+ * 0 -> '0'
14
+ * 1 -> '1'
15
+ *
16
+ */
17
+ export declare const hash_key: (value: undefined | null | boolean | string | number) => string | null;
18
+ export declare const get_hash: (value: boolean | string | number) => string;
19
+ /**
20
+ * Escapes a string for use within HTML.
21
+ *
22
+ */
23
+ export declare const escape_html: (str: string) => string;
24
+ /**
25
+ * use setTimeout if timeout > 0
26
+ */
27
+ export declare const timeout: (fn: () => void, timeout: number) => number | null;
28
+ /**
29
+ * Debounce the user provided load function
30
+ *
31
+ */
32
+ export declare const loadDebounce: (fn: (value: string, callback: TomLoadCallback) => void, delay: number) => (this: TomSelect, value: string, callback: TomLoadCallback) => void;
33
+ /**
34
+ * Debounce all fired events types listed in `types`
35
+ * while executing the provided `fn`.
36
+ *
37
+ */
38
+ export declare const debounce_events: (self: TomSelect, types: string[], fn: () => void) => void;
39
+ /**
40
+ * Determines the current selection within a text input control.
41
+ * Returns an object containing:
42
+ * - start
43
+ * - length
44
+ *
45
+ * Note: "selectionStart, selectionEnd ... apply only to inputs of types text, search, URL, tel and password"
46
+ * - https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange
47
+ */
48
+ export declare const getSelection: (input: HTMLInputElement) => {
49
+ start: number;
50
+ length: number;
51
+ };
52
+ /**
53
+ * Prevent default
54
+ *
55
+ */
56
+ export declare const preventDefault: (evt?: Event, stop?: boolean) => void;
57
+ /**
58
+ * Add event helper
59
+ *
60
+ */
61
+ export declare const addEvent: (target: EventTarget, type: string, callback: EventListenerOrEventListenerObject, options?: object) => void;
62
+ /**
63
+ * Return true if the requested key is down
64
+ * Will return false if more than one control character is pressed ( when [ctrl+shift+a] != [ctrl+a] )
65
+ * The current evt may not always set ( eg calling advanceSelection() )
66
+ *
67
+ */
68
+ export declare const isKeyDown: (key_name: keyof (KeyboardEvent | MouseEvent), evt?: KeyboardEvent | MouseEvent) => boolean;
69
+ /**
70
+ * Get the id of an element
71
+ * If the id attribute is not set, set the attribute with the given id
72
+ *
73
+ */
74
+ export declare const getId: (el: Element, id: string) => string;
75
+ /**
76
+ * Returns a string with backslashes added before characters that need to be escaped.
77
+ */
78
+ export declare const addSlashes: (str: string) => string;
79
+ /**
80
+ *
81
+ */
82
+ export declare const append: (parent: Element | DocumentFragment, node: string | Node | null | undefined) => void;
83
+ /**
84
+ * Iterates over arrays and hashes.
85
+ *
86
+ * ```
87
+ * iterate(this.items, function(item, id) {
88
+ * // invoked for each item
89
+ * });
90
+ * ```
91
+ *
92
+ */
93
+ export declare const iterate: (object: [] | {
94
+ [key: string]: any;
95
+ }, callback: (value: any, key: any) => any) => void;
@@ -1,8 +1,3 @@
1
- /**
2
- * Tom Select v2.3.1
3
- * Licensed under the Apache License, Version 2.0 (the "License");
4
- */
5
-
6
1
  /**
7
2
  * Converts a scalar to its best string representation
8
3
  * for hash keys and HTML attribute values.
@@ -17,86 +12,85 @@
17
12
  * 1 -> '1'
18
13
  *
19
14
  */
20
- const hash_key = value => {
21
- if (typeof value === 'undefined' || value === null) return null;
22
- return get_hash(value);
15
+ export const hash_key = (value) => {
16
+ if (typeof value === 'undefined' || value === null)
17
+ return null;
18
+ return get_hash(value);
23
19
  };
24
- const get_hash = value => {
25
- if (typeof value === 'boolean') return value ? '1' : '0';
26
- return value + '';
20
+ export const get_hash = (value) => {
21
+ if (typeof value === 'boolean')
22
+ return value ? '1' : '0';
23
+ return value + '';
27
24
  };
28
-
29
25
  /**
30
26
  * Escapes a string for use within HTML.
31
27
  *
32
28
  */
33
- const escape_html = str => {
34
- return (str + '').replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;');
29
+ export const escape_html = (str) => {
30
+ return (str + '')
31
+ .replace(/&/g, '&amp;')
32
+ .replace(/</g, '&lt;')
33
+ .replace(/>/g, '&gt;')
34
+ .replace(/"/g, '&quot;');
35
35
  };
36
-
37
36
  /**
38
- * use setTimeout if timeout > 0
37
+ * use setTimeout if timeout > 0
39
38
  */
40
- const timeout = (fn, timeout) => {
41
- if (timeout > 0) {
42
- return setTimeout(fn, timeout);
43
- }
44
- fn.call(null);
45
- return null;
39
+ export const timeout = (fn, timeout) => {
40
+ if (timeout > 0) {
41
+ return window.setTimeout(fn, timeout);
42
+ }
43
+ fn.call(null);
44
+ return null;
46
45
  };
47
-
48
46
  /**
49
47
  * Debounce the user provided load function
50
48
  *
51
49
  */
52
- const loadDebounce = (fn, delay) => {
53
- var timeout;
54
- return function (value, callback) {
55
- var self = this;
56
- if (timeout) {
57
- self.loading = Math.max(self.loading - 1, 0);
58
- clearTimeout(timeout);
59
- }
60
- timeout = setTimeout(function () {
61
- timeout = null;
62
- self.loadedSearches[value] = true;
63
- fn.call(self, value, callback);
64
- }, delay);
65
- };
50
+ export const loadDebounce = (fn, delay) => {
51
+ var timeout;
52
+ return function (value, callback) {
53
+ var self = this;
54
+ if (timeout) {
55
+ self.loading = Math.max(self.loading - 1, 0);
56
+ clearTimeout(timeout);
57
+ }
58
+ timeout = setTimeout(function () {
59
+ timeout = null;
60
+ self.loadedSearches[value] = true;
61
+ fn.call(self, value, callback);
62
+ }, delay);
63
+ };
66
64
  };
67
-
68
65
  /**
69
66
  * Debounce all fired events types listed in `types`
70
67
  * while executing the provided `fn`.
71
68
  *
72
69
  */
73
- const debounce_events = (self, types, fn) => {
74
- var type;
75
- var trigger = self.trigger;
76
- var event_args = {};
77
-
78
- // override trigger method
79
- self.trigger = function () {
80
- var type = arguments[0];
81
- if (types.indexOf(type) !== -1) {
82
- event_args[type] = arguments;
83
- } else {
84
- return trigger.apply(self, arguments);
85
- }
86
- };
87
-
88
- // invoke provided function
89
- fn.apply(self, []);
90
- self.trigger = trigger;
91
-
92
- // trigger queued events
93
- for (type of types) {
94
- if (type in event_args) {
95
- trigger.apply(self, event_args[type]);
70
+ export const debounce_events = (self, types, fn) => {
71
+ var type;
72
+ var trigger = self.trigger;
73
+ var event_args = {};
74
+ // override trigger method
75
+ self.trigger = function () {
76
+ var type = arguments[0];
77
+ if (types.indexOf(type) !== -1) {
78
+ event_args[type] = arguments;
79
+ }
80
+ else {
81
+ return trigger.apply(self, arguments);
82
+ }
83
+ };
84
+ // invoke provided function
85
+ fn.apply(self, []);
86
+ self.trigger = trigger;
87
+ // trigger queued events
88
+ for (type of types) {
89
+ if (type in event_args) {
90
+ trigger.apply(self, event_args[type]);
91
+ }
96
92
  }
97
- }
98
93
  };
99
-
100
94
  /**
101
95
  * Determines the current selection within a text input control.
102
96
  * Returns an object containing:
@@ -106,81 +100,96 @@ const debounce_events = (self, types, fn) => {
106
100
  * Note: "selectionStart, selectionEnd ... apply only to inputs of types text, search, URL, tel and password"
107
101
  * - https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange
108
102
  */
109
- const getSelection = input => {
110
- return {
111
- start: input.selectionStart || 0,
112
- length: (input.selectionEnd || 0) - (input.selectionStart || 0)
113
- };
103
+ export const getSelection = (input) => {
104
+ return {
105
+ start: input.selectionStart || 0,
106
+ length: (input.selectionEnd || 0) - (input.selectionStart || 0),
107
+ };
114
108
  };
115
-
116
109
  /**
117
110
  * Prevent default
118
111
  *
119
112
  */
120
- const preventDefault = (evt, stop = false) => {
121
- if (evt) {
122
- evt.preventDefault();
123
- if (stop) {
124
- evt.stopPropagation();
113
+ export const preventDefault = (evt, stop = false) => {
114
+ if (evt) {
115
+ evt.preventDefault();
116
+ if (stop) {
117
+ evt.stopPropagation();
118
+ }
125
119
  }
126
- }
127
120
  };
128
-
129
121
  /**
130
122
  * Add event helper
131
123
  *
132
124
  */
133
- const addEvent = (target, type, callback, options) => {
134
- target.addEventListener(type, callback, options);
125
+ export const addEvent = (target, type, callback, options) => {
126
+ target.addEventListener(type, callback, options);
135
127
  };
136
-
137
128
  /**
138
129
  * Return true if the requested key is down
139
130
  * Will return false if more than one control character is pressed ( when [ctrl+shift+a] != [ctrl+a] )
140
131
  * The current evt may not always set ( eg calling advanceSelection() )
141
132
  *
142
133
  */
143
- const isKeyDown = (key_name, evt) => {
144
- if (!evt) {
145
- return false;
146
- }
147
- if (!evt[key_name]) {
134
+ export const isKeyDown = (key_name, evt) => {
135
+ if (!evt) {
136
+ return false;
137
+ }
138
+ if (!evt[key_name]) {
139
+ return false;
140
+ }
141
+ var count = (evt.altKey ? 1 : 0) + (evt.ctrlKey ? 1 : 0) + (evt.shiftKey ? 1 : 0) + (evt.metaKey ? 1 : 0);
142
+ if (count === 1) {
143
+ return true;
144
+ }
148
145
  return false;
149
- }
150
- var count = (evt.altKey ? 1 : 0) + (evt.ctrlKey ? 1 : 0) + (evt.shiftKey ? 1 : 0) + (evt.metaKey ? 1 : 0);
151
- if (count === 1) {
152
- return true;
153
- }
154
- return false;
155
146
  };
156
-
157
147
  /**
158
148
  * Get the id of an element
159
149
  * If the id attribute is not set, set the attribute with the given id
160
150
  *
161
151
  */
162
- const getId = (el, id) => {
163
- const existing_id = el.getAttribute('id');
164
- if (existing_id) {
165
- return existing_id;
166
- }
167
- el.setAttribute('id', id);
168
- return id;
152
+ export const getId = (el, id) => {
153
+ const existing_id = el.getAttribute('id');
154
+ if (existing_id) {
155
+ return existing_id;
156
+ }
157
+ el.setAttribute('id', id);
158
+ return id;
169
159
  };
170
-
171
160
  /**
172
161
  * Returns a string with backslashes added before characters that need to be escaped.
173
162
  */
174
- const addSlashes = str => {
175
- return str.replace(/[\\"']/g, '\\$&');
163
+ export const addSlashes = (str) => {
164
+ return str.replace(/[\\"']/g, '\\$&');
165
+ };
166
+ /**
167
+ *
168
+ */
169
+ export const append = (parent, node) => {
170
+ if (node)
171
+ parent.append(node);
176
172
  };
177
-
178
173
  /**
174
+ * Iterates over arrays and hashes.
175
+ *
176
+ * ```
177
+ * iterate(this.items, function(item, id) {
178
+ * // invoked for each item
179
+ * });
180
+ * ```
179
181
  *
180
182
  */
181
- const append = (parent, node) => {
182
- if (node) parent.append(node);
183
+ export const iterate = (object, callback) => {
184
+ if (Array.isArray(object)) {
185
+ object.forEach(callback);
186
+ }
187
+ else {
188
+ for (var key in object) {
189
+ if (object.hasOwnProperty(key)) {
190
+ callback(object[key], key);
191
+ }
192
+ }
193
+ }
183
194
  };
184
-
185
- export { addEvent, addSlashes, append, debounce_events, escape_html, getId, getSelection, get_hash, hash_key, isKeyDown, loadDebounce, preventDefault, timeout };
186
- //# sourceMappingURL=utils.js.map
195
+ //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../src/utils.ts"],"sourcesContent":["\nimport TomSelect from './tom-select';\nimport { TomLoadCallback } from './types/index';\n\n\n/**\n * Converts a scalar to its best string representation\n * for hash keys and HTML attribute values.\n *\n * Transformations:\n * 'str' -> 'str'\n * null -> ''\n * undefined -> ''\n * true -> '1'\n * false -> '0'\n * 0 -> '0'\n * 1 -> '1'\n *\n */\nexport const hash_key = (value:undefined|null|boolean|string|number):string|null => {\n\tif (typeof value === 'undefined' || value === null) return null;\n\treturn get_hash(value);\n};\n\nexport const get_hash = (value:boolean|string|number):string => {\n\tif (typeof value === 'boolean') return value ? '1' : '0';\n\treturn value + '';\n};\n\n/**\n * Escapes a string for use within HTML.\n *\n */\nexport const escape_html = (str:string):string => {\n\treturn (str + '')\n\t\t.replace(/&/g, '&amp;')\n\t\t.replace(/</g, '&lt;')\n\t\t.replace(/>/g, '&gt;')\n\t\t.replace(/\"/g, '&quot;');\n};\n\n\n/**\n * use setTimeout if timeout > 0 \n */\nexport const timeout = (fn:()=>void,timeout:number) => {\n\tif( timeout > 0 ){\n\t\treturn setTimeout(fn,timeout);\n\t}\n\n\tfn.call(null);\n\treturn null;\n}\n\n/**\n * Debounce the user provided load function\n *\n */\nexport const loadDebounce = (fn:(value:string,callback:TomLoadCallback) => void,delay:number) => {\n\tvar timeout: null|ReturnType<typeof setTimeout>;\n\treturn function(this:TomSelect, value:string,callback:TomLoadCallback) {\n\t\tvar self = this;\n\n\t\tif( timeout ){\n\t\t\tself.loading = Math.max(self.loading - 1, 0);\n\t\t\tclearTimeout(timeout);\n\t\t}\n\t\ttimeout = setTimeout(function() {\n\t\t\ttimeout = null;\n\t\t\tself.loadedSearches[value] = true;\n\t\t\tfn.call(self, value, callback);\n\n\t\t}, delay);\n\t};\n};\n\n\n/**\n * Debounce all fired events types listed in `types`\n * while executing the provided `fn`.\n *\n */\nexport const debounce_events = ( self:TomSelect, types:string[], fn:() => void ) => {\n\tvar type:string;\n\tvar trigger = self.trigger;\n\tvar event_args:{ [key: string]: any } = {};\n\n\t// override trigger method\n\tself.trigger = function(){\n\t\tvar type = arguments[0];\n\t\tif (types.indexOf(type) !== -1) {\n\t\t\tevent_args[type] = arguments;\n\t\t} else {\n\t\t\treturn trigger.apply(self, arguments);\n\t\t}\n\t};\n\n\t// invoke provided function\n\tfn.apply(self, []);\n\tself.trigger = trigger;\n\n\t// trigger queued events\n\tfor( type of types ){\n\t\tif( type in event_args ){\n\t\t\ttrigger.apply(self, event_args[type]);\n\t\t}\n\t}\n};\n\n\n/**\n * Determines the current selection within a text input control.\n * Returns an object containing:\n * - start\n * - length\n *\n * Note: \"selectionStart, selectionEnd ... apply only to inputs of types text, search, URL, tel and password\"\n * \t- https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n */\nexport const getSelection = (input:HTMLInputElement):{ start: number; length: number } => {\n\treturn {\n\t\tstart\t: input.selectionStart || 0,\n\t\tlength\t: (input.selectionEnd||0) - (input.selectionStart||0),\n\t};\n};\n\n\n/**\n * Prevent default\n *\n */\nexport const preventDefault = (evt?:Event, stop:boolean=false):void => {\n\tif( evt ){\n\t\tevt.preventDefault();\n\t\tif( stop ){\n\t\t\tevt.stopPropagation();\n\t\t}\n\t}\n}\n\n\n/**\n * Add event helper\n *\n */\nexport const addEvent = (target:EventTarget, type:string, callback:EventListenerOrEventListenerObject, options?:object):void => {\n\ttarget.addEventListener(type,callback,options);\n};\n\n\n/**\n * Return true if the requested key is down\n * Will return false if more than one control character is pressed ( when [ctrl+shift+a] != [ctrl+a] )\n * The current evt may not always set ( eg calling advanceSelection() )\n *\n */\nexport const isKeyDown = ( key_name:keyof (KeyboardEvent|MouseEvent), evt?:KeyboardEvent|MouseEvent ) => {\n\n\tif( !evt ){\n\t\treturn false;\n\t}\n\n\tif( !evt[key_name] ){\n\t\treturn false;\n\t}\n\n\tvar count = (evt.altKey?1:0) + (evt.ctrlKey?1:0) + (evt.shiftKey?1:0) + (evt.metaKey?1:0);\n\n\tif( count === 1 ){\n\t\treturn true;\n\t}\n\n\treturn false;\n};\n\n\n/**\n * Get the id of an element\n * If the id attribute is not set, set the attribute with the given id\n *\n */\nexport const getId = (el:Element,id:string) => {\n\tconst existing_id = el.getAttribute('id');\n\tif( existing_id ){\n\t\treturn existing_id;\n\t}\n\n\tel.setAttribute('id',id);\n\treturn id;\n};\n\n\n/**\n * Returns a string with backslashes added before characters that need to be escaped.\n */\nexport const addSlashes = (str:string):string => {\n\treturn str.replace(/[\\\\\"']/g, '\\\\$&');\n};\n\n/**\n *\n */\nexport const append = ( parent:Element|DocumentFragment, node: string|Node|null|undefined ):void =>{\n\tif( node ) parent.append(node);\n};\n"],"names":["hash_key","value","get_hash","escape_html","str","replace","timeout","fn","setTimeout","call","loadDebounce","delay","callback","self","loading","Math","max","clearTimeout","loadedSearches","debounce_events","types","type","trigger","event_args","arguments","indexOf","apply","getSelection","input","start","selectionStart","length","selectionEnd","preventDefault","evt","stop","stopPropagation","addEvent","target","options","addEventListener","isKeyDown","key_name","count","altKey","ctrlKey","shiftKey","metaKey","getId","el","id","existing_id","getAttribute","setAttribute","addSlashes","append","parent","node"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}