adminlte_rails 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (324) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +8 -0
  3. data/.travis.yml +5 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/Gemfile +6 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.md +51 -0
  8. data/Rakefile +10 -0
  9. data/adminlte_rails.gemspec +27 -0
  10. data/bin/console +14 -0
  11. data/bin/setup +8 -0
  12. data/lib/adminlte_rails.rb +5 -0
  13. data/lib/adminlte_rails/engine.rb +7 -0
  14. data/lib/adminlte_rails/version.rb +3 -0
  15. data/vendor/assets/javascripts/adminlte.js +3 -0
  16. data/vendor/assets/javascripts/adminlte.min.js +3 -0
  17. data/vendor/assets/javascripts/adminlte/adminlte.js +1129 -0
  18. data/vendor/assets/javascripts/adminlte/adminlte.min.js +14 -0
  19. data/vendor/assets/javascripts/adminlte/plugins/bootstrap-colorpicker/bootstrap-colorpicker.js +1319 -0
  20. data/vendor/assets/javascripts/adminlte/plugins/bootstrap-colorpicker/bootstrap-colorpicker.min.js +5 -0
  21. data/vendor/assets/javascripts/adminlte/plugins/bootstrap-datepicker/bootstrap-datepicker.js +2030 -0
  22. data/vendor/assets/javascripts/adminlte/plugins/bootstrap-datepicker/bootstrap-datepicker.min.js +8 -0
  23. data/vendor/assets/javascripts/adminlte/plugins/bootstrap-daterangepicker/bootstrap-daterangepicker.js +1653 -0
  24. data/vendor/assets/javascripts/adminlte/plugins/bootstrap-slider/bootstrap-slider.js +427 -0
  25. data/vendor/assets/javascripts/adminlte/plugins/bootstrap-timepicker/bootstrap-timepicker.js +1177 -0
  26. data/vendor/assets/javascripts/adminlte/plugins/bootstrap/bootstrap.js +2377 -0
  27. data/vendor/assets/javascripts/adminlte/plugins/bootstrap/bootstrap.min.js +7 -0
  28. data/vendor/assets/javascripts/adminlte/plugins/jquery/jquery.js +10364 -0
  29. data/vendor/assets/javascripts/adminlte/plugins/jquery/jquery.min.js +2 -0
  30. data/vendor/assets/javascripts/adminlte/plugins/select2/.bower.json +24 -0
  31. data/vendor/assets/javascripts/adminlte/plugins/select2/.editorconfig +6 -0
  32. data/vendor/assets/javascripts/adminlte/plugins/select2/.github/CONTRIBUTING.md +203 -0
  33. data/vendor/assets/javascripts/adminlte/plugins/select2/.github/ISSUE_TEMPLATE.md +20 -0
  34. data/vendor/assets/javascripts/adminlte/plugins/select2/.github/PULL_REQUEST_TEMPLATE.md +13 -0
  35. data/vendor/assets/javascripts/adminlte/plugins/select2/.gitignore +3 -0
  36. data/vendor/assets/javascripts/adminlte/plugins/select2/.jshintignore +4 -0
  37. data/vendor/assets/javascripts/adminlte/plugins/select2/.jshintrc +25 -0
  38. data/vendor/assets/javascripts/adminlte/plugins/select2/.travis.yml +22 -0
  39. data/vendor/assets/javascripts/adminlte/plugins/select2/CHANGELOG.md +272 -0
  40. data/vendor/assets/javascripts/adminlte/plugins/select2/Gruntfile.js +380 -0
  41. data/vendor/assets/javascripts/adminlte/plugins/select2/LICENSE.md +21 -0
  42. data/vendor/assets/javascripts/adminlte/plugins/select2/README.md +123 -0
  43. data/vendor/assets/javascripts/adminlte/plugins/select2/bower.json +13 -0
  44. data/vendor/assets/javascripts/adminlte/plugins/select2/component.json +19 -0
  45. data/vendor/assets/javascripts/adminlte/plugins/select2/composer.json +25 -0
  46. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/css/select2.css +484 -0
  47. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/css/select2.min.css +1 -0
  48. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/af.js +3 -0
  49. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/ar.js +3 -0
  50. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/az.js +3 -0
  51. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/bg.js +3 -0
  52. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/bs.js +3 -0
  53. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/ca.js +3 -0
  54. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/cs.js +3 -0
  55. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/da.js +3 -0
  56. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/de.js +3 -0
  57. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/dsb.js +3 -0
  58. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/el.js +3 -0
  59. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/en.js +3 -0
  60. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/es.js +3 -0
  61. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/et.js +3 -0
  62. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/eu.js +3 -0
  63. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/fa.js +3 -0
  64. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/fi.js +3 -0
  65. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/fr.js +3 -0
  66. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/gl.js +3 -0
  67. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/he.js +3 -0
  68. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/hi.js +3 -0
  69. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/hr.js +3 -0
  70. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/hsb.js +3 -0
  71. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/hu.js +3 -0
  72. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/hy.js +3 -0
  73. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/id.js +3 -0
  74. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/is.js +3 -0
  75. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/it.js +3 -0
  76. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/ja.js +3 -0
  77. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/km.js +3 -0
  78. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/ko.js +3 -0
  79. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/lt.js +3 -0
  80. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/lv.js +3 -0
  81. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/mk.js +3 -0
  82. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/ms.js +3 -0
  83. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/nb.js +3 -0
  84. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/nl.js +3 -0
  85. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/pl.js +3 -0
  86. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/ps.js +3 -0
  87. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/pt-BR.js +3 -0
  88. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/pt.js +3 -0
  89. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/ro.js +3 -0
  90. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/ru.js +3 -0
  91. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/sk.js +3 -0
  92. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/sl.js +3 -0
  93. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/sr-Cyrl.js +3 -0
  94. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/sr.js +3 -0
  95. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/sv.js +3 -0
  96. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/th.js +3 -0
  97. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/tr.js +3 -0
  98. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/uk.js +3 -0
  99. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/vi.js +3 -0
  100. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/zh-CN.js +3 -0
  101. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/i18n/zh-TW.js +3 -0
  102. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/select2.full.js +6457 -0
  103. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/select2.full.min.js +1 -0
  104. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/select2.js +5746 -0
  105. data/vendor/assets/javascripts/adminlte/plugins/select2/dist/js/select2.min.js +1 -0
  106. data/vendor/assets/javascripts/adminlte/plugins/select2/docs/README.md +1 -0
  107. data/vendor/assets/javascripts/adminlte/plugins/select2/docs/announcements-4.0.html +12 -0
  108. data/vendor/assets/javascripts/adminlte/plugins/select2/docs/community.html +12 -0
  109. data/vendor/assets/javascripts/adminlte/plugins/select2/docs/examples.html +12 -0
  110. data/vendor/assets/javascripts/adminlte/plugins/select2/docs/index.html +12 -0
  111. data/vendor/assets/javascripts/adminlte/plugins/select2/docs/options-old.html +12 -0
  112. data/vendor/assets/javascripts/adminlte/plugins/select2/docs/options.html +12 -0
  113. data/vendor/assets/javascripts/adminlte/plugins/select2/package.json +73 -0
  114. data/vendor/assets/javascripts/adminlte/plugins/select2/select2.jquery.json +32 -0
  115. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/banner.end.js +6 -0
  116. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/banner.start.js +6 -0
  117. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/jquery.mousewheel.shim.js +6 -0
  118. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/jquery.select2.js +57 -0
  119. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/jquery.shim.js +14 -0
  120. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/compat/containerCss.js +56 -0
  121. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/compat/dropdownCss.js +56 -0
  122. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/compat/initSelection.js +42 -0
  123. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/compat/inputData.js +127 -0
  124. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/compat/matcher.js +42 -0
  125. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/compat/query.js +26 -0
  126. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/compat/utils.js +43 -0
  127. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/core.js +612 -0
  128. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/data/ajax.js +109 -0
  129. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/data/array.js +79 -0
  130. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/data/base.js +40 -0
  131. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/data/maximumInputLength.js +31 -0
  132. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/data/maximumSelectionLength.js +31 -0
  133. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/data/minimumInputLength.js +30 -0
  134. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/data/select.js +285 -0
  135. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/data/tags.js +128 -0
  136. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/data/tokenizer.js +116 -0
  137. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/defaults.js +396 -0
  138. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/diacritics.js +847 -0
  139. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown.js +42 -0
  140. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown/attachBody.js +222 -0
  141. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown/attachContainer.js +18 -0
  142. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown/closeOnSelect.js +35 -0
  143. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown/hidePlaceholder.js +42 -0
  144. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown/infiniteScroll.js +89 -0
  145. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown/minimumResultsForSearch.js +39 -0
  146. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown/search.js +101 -0
  147. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown/selectOnClose.js +50 -0
  148. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/dropdown/stopPropagation.js +38 -0
  149. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/af.js +44 -0
  150. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/ar.js +30 -0
  151. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/az.js +27 -0
  152. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/bg.js +47 -0
  153. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/bs.js +55 -0
  154. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/ca.js +52 -0
  155. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/cs.js +61 -0
  156. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/da.js +36 -0
  157. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/de.js +40 -0
  158. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/dsb.js +48 -0
  159. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/el.js +52 -0
  160. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/en.js +44 -0
  161. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/es.js +52 -0
  162. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/et.js +53 -0
  163. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/eu.js +51 -0
  164. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/fa.js +38 -0
  165. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/fi.js +30 -0
  166. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/fr.js +33 -0
  167. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/gl.js +39 -0
  168. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/he.js +56 -0
  169. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/hi.js +39 -0
  170. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/hr.js +44 -0
  171. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/hsb.js +48 -0
  172. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/hu.js +30 -0
  173. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/hy.js +38 -0
  174. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/id.js +30 -0
  175. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/is.js +41 -0
  176. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/it.js +48 -0
  177. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/ja.js +36 -0
  178. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/km.js +36 -0
  179. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/ko.js +36 -0
  180. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/lt.js +52 -0
  181. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/lv.js +51 -0
  182. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/mk.js +47 -0
  183. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/ms.js +30 -0
  184. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/nb.js +32 -0
  185. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/nl.js +43 -0
  186. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/pl.js +45 -0
  187. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/ps.js +45 -0
  188. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/pt-BR.js +46 -0
  189. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/pt.js +40 -0
  190. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/ro.js +46 -0
  191. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/ru.js +58 -0
  192. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/sk.js +59 -0
  193. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/sl.js +54 -0
  194. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/sr-Cyrl.js +55 -0
  195. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/sr.js +55 -0
  196. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/sv.js +37 -0
  197. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/th.js +36 -0
  198. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/tr.js +36 -0
  199. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/uk.js +43 -0
  200. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/vi.js +37 -0
  201. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/zh-CN.js +36 -0
  202. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/i18n/zh-TW.js +33 -0
  203. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/keys.js +25 -0
  204. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/options.js +122 -0
  205. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/results.js +523 -0
  206. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/selection/allowClear.js +97 -0
  207. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/selection/base.js +158 -0
  208. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/selection/clickMask.js +29 -0
  209. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/selection/eventRelay.js +45 -0
  210. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/selection/multiple.js +109 -0
  211. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/selection/placeholder.js +49 -0
  212. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/selection/search.js +222 -0
  213. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/selection/single.js +99 -0
  214. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/selection/stopPropagation.js +38 -0
  215. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/translation.js +36 -0
  216. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/select2/utils.js +276 -0
  217. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/wrapper.end.js +12 -0
  218. data/vendor/assets/javascripts/adminlte/plugins/select2/src/js/wrapper.start.js +38 -0
  219. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/_dropdown.scss +73 -0
  220. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/_multiple.scss +35 -0
  221. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/_single.scss +34 -0
  222. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/core.scss +48 -0
  223. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/mixins/_gradients.scss +13 -0
  224. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/theme/classic/_defaults.scss +34 -0
  225. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/theme/classic/_multiple.scss +93 -0
  226. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/theme/classic/_single.scss +124 -0
  227. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/theme/classic/layout.scss +64 -0
  228. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/theme/default/_multiple.scss +98 -0
  229. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/theme/default/_single.scss +83 -0
  230. data/vendor/assets/javascripts/adminlte/plugins/select2/src/scss/theme/default/layout.scss +97 -0
  231. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/a11y/search-tests.js +51 -0
  232. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/a11y/selection-tests.js +154 -0
  233. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/data/array-tests.js +318 -0
  234. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/data/base-tests.js +29 -0
  235. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/data/inputData-tests.js +158 -0
  236. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/data/maximumInputLength-tests.js +138 -0
  237. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/data/maximumSelectionLength-tests.js +202 -0
  238. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/data/minimumInputLength-tests.js +138 -0
  239. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/data/select-tests.js +489 -0
  240. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/data/tags-tests.js +276 -0
  241. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/data/tokenizer-tests.js +219 -0
  242. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/dropdown/dropdownCss-tests.js +104 -0
  243. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/dropdown/positioning-tests.js +177 -0
  244. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/dropdown/selectOnClose-tests.js +137 -0
  245. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/dropdown/stopPropagation-tests.js +33 -0
  246. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/helpers.js +46 -0
  247. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/integration.html +21 -0
  248. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/integration/dom-changes.js +257 -0
  249. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/integration/jquery-calls.js +30 -0
  250. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/integration/select2-methods.js +139 -0
  251. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/options/ajax-tests.js +32 -0
  252. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/options/data-tests.js +44 -0
  253. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/options/deprecated-tests.js +250 -0
  254. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/options/translation-tests.js +28 -0
  255. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/options/width-tests.js +66 -0
  256. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/results/focusing-tests.js +138 -0
  257. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/selection/allowClear-tests.js +218 -0
  258. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/selection/containerCss-tests.js +104 -0
  259. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/selection/multiple-tests.js +149 -0
  260. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/selection/placeholder-tests.js +74 -0
  261. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/selection/search-tests.js +191 -0
  262. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/selection/single-tests.js +117 -0
  263. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/selection/stopPropagation-tests.js +33 -0
  264. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/unit.html +95 -0
  265. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/utils/decorator-tests.js +189 -0
  266. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/utils/escapeMarkup-tests.js +36 -0
  267. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/vendor/jquery-1.7.2.js +9404 -0
  268. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/vendor/qunit-1.23.1.css +305 -0
  269. data/vendor/assets/javascripts/adminlte/plugins/select2/tests/vendor/qunit-1.23.1.js +4334 -0
  270. data/vendor/assets/javascripts/adminlte/plugins/select2/vendor/jquery-2.1.0.js +9111 -0
  271. data/vendor/assets/stylesheets/adminlte.min.scss +27 -0
  272. data/vendor/assets/stylesheets/adminlte.scss +6 -0
  273. data/vendor/assets/stylesheets/adminlte/adminlte.css +4977 -0
  274. data/vendor/assets/stylesheets/adminlte/adminlte.min.css +7 -0
  275. data/vendor/assets/stylesheets/adminlte/fonts/FontAwesome.otf +0 -0
  276. data/vendor/assets/stylesheets/adminlte/fonts/fontawesome-webfont.eot +0 -0
  277. data/vendor/assets/stylesheets/adminlte/fonts/fontawesome-webfont.svg +2671 -0
  278. data/vendor/assets/stylesheets/adminlte/fonts/fontawesome-webfont.ttf +0 -0
  279. data/vendor/assets/stylesheets/adminlte/fonts/fontawesome-webfont.woff +0 -0
  280. data/vendor/assets/stylesheets/adminlte/fonts/fontawesome-webfont.woff2 +0 -0
  281. data/vendor/assets/stylesheets/adminlte/fonts/glyphicons-halflings-regular.eot +0 -0
  282. data/vendor/assets/stylesheets/adminlte/fonts/glyphicons-halflings-regular.svg +288 -0
  283. data/vendor/assets/stylesheets/adminlte/fonts/glyphicons-halflings-regular.ttf +0 -0
  284. data/vendor/assets/stylesheets/adminlte/fonts/glyphicons-halflings-regular.woff +0 -0
  285. data/vendor/assets/stylesheets/adminlte/fonts/glyphicons-halflings-regular.woff2 +0 -0
  286. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap-colorpicker/bootstrap-colorpicker.css +230 -0
  287. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap-datepicker/bootstrap-datepicker.css +477 -0
  288. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap-datepicker/bootstrap-datepicker.standalone.css +510 -0
  289. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap-datepicker/bootstrap-datepicker3.css +684 -0
  290. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap-datepicker/bootstrap-datepicker3.standalone.css +713 -0
  291. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap-daterangepicker/bootstrap-daterangepicker.css +269 -0
  292. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap-slider/bootstrap-slider.css +178 -0
  293. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap-timepicker/bootstrap-timepicker.less +172 -0
  294. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap/bootstrap.css.map +1 -0
  295. data/vendor/assets/stylesheets/adminlte/plugins/bootstrap/bootstrap.scss +6757 -0
  296. data/vendor/assets/stylesheets/adminlte/plugins/font-awesome/font-awesome.scss +2341 -0
  297. data/vendor/assets/stylesheets/adminlte/plugins/select2/select2.css +484 -0
  298. data/vendor/assets/stylesheets/adminlte/skins/_all-skins.css +1781 -0
  299. data/vendor/assets/stylesheets/adminlte/skins/_all-skins.min.css +1 -0
  300. data/vendor/assets/stylesheets/adminlte/skins/skin-black-light.css +171 -0
  301. data/vendor/assets/stylesheets/adminlte/skins/skin-black-light.min.css +1 -0
  302. data/vendor/assets/stylesheets/adminlte/skins/skin-black.css +161 -0
  303. data/vendor/assets/stylesheets/adminlte/skins/skin-black.min.css +1 -0
  304. data/vendor/assets/stylesheets/adminlte/skins/skin-blue-light.css +163 -0
  305. data/vendor/assets/stylesheets/adminlte/skins/skin-blue-light.min.css +1 -0
  306. data/vendor/assets/stylesheets/adminlte/skins/skin-blue.css +142 -0
  307. data/vendor/assets/stylesheets/adminlte/skins/skin-blue.min.css +1 -0
  308. data/vendor/assets/stylesheets/adminlte/skins/skin-green-light.css +152 -0
  309. data/vendor/assets/stylesheets/adminlte/skins/skin-green-light.min.css +1 -0
  310. data/vendor/assets/stylesheets/adminlte/skins/skin-green.css +134 -0
  311. data/vendor/assets/stylesheets/adminlte/skins/skin-green.min.css +1 -0
  312. data/vendor/assets/stylesheets/adminlte/skins/skin-purple-light.css +152 -0
  313. data/vendor/assets/stylesheets/adminlte/skins/skin-purple-light.min.css +1 -0
  314. data/vendor/assets/stylesheets/adminlte/skins/skin-purple.css +134 -0
  315. data/vendor/assets/stylesheets/adminlte/skins/skin-purple.min.css +1 -0
  316. data/vendor/assets/stylesheets/adminlte/skins/skin-red-light.css +152 -0
  317. data/vendor/assets/stylesheets/adminlte/skins/skin-red-light.min.css +1 -0
  318. data/vendor/assets/stylesheets/adminlte/skins/skin-red.css +134 -0
  319. data/vendor/assets/stylesheets/adminlte/skins/skin-red.min.css +1 -0
  320. data/vendor/assets/stylesheets/adminlte/skins/skin-yellow-light.css +152 -0
  321. data/vendor/assets/stylesheets/adminlte/skins/skin-yellow-light.min.css +1 -0
  322. data/vendor/assets/stylesheets/adminlte/skins/skin-yellow.css +134 -0
  323. data/vendor/assets/stylesheets/adminlte/skins/skin-yellow.min.css +1 -0
  324. metadata +408 -0
@@ -0,0 +1,109 @@
1
+ define([
2
+ './array',
3
+ '../utils',
4
+ 'jquery'
5
+ ], function (ArrayAdapter, Utils, $) {
6
+ function AjaxAdapter ($element, options) {
7
+ this.ajaxOptions = this._applyDefaults(options.get('ajax'));
8
+
9
+ if (this.ajaxOptions.processResults != null) {
10
+ this.processResults = this.ajaxOptions.processResults;
11
+ }
12
+
13
+ AjaxAdapter.__super__.constructor.call(this, $element, options);
14
+ }
15
+
16
+ Utils.Extend(AjaxAdapter, ArrayAdapter);
17
+
18
+ AjaxAdapter.prototype._applyDefaults = function (options) {
19
+ var defaults = {
20
+ data: function (params) {
21
+ return $.extend({}, params, {
22
+ q: params.term
23
+ });
24
+ },
25
+ transport: function (params, success, failure) {
26
+ var $request = $.ajax(params);
27
+
28
+ $request.then(success);
29
+ $request.fail(failure);
30
+
31
+ return $request;
32
+ }
33
+ };
34
+
35
+ return $.extend({}, defaults, options, true);
36
+ };
37
+
38
+ AjaxAdapter.prototype.processResults = function (results) {
39
+ return results;
40
+ };
41
+
42
+ AjaxAdapter.prototype.query = function (params, callback) {
43
+ var matches = [];
44
+ var self = this;
45
+
46
+ if (this._request != null) {
47
+ // JSONP requests cannot always be aborted
48
+ if ($.isFunction(this._request.abort)) {
49
+ this._request.abort();
50
+ }
51
+
52
+ this._request = null;
53
+ }
54
+
55
+ var options = $.extend({
56
+ type: 'GET'
57
+ }, this.ajaxOptions);
58
+
59
+ if (typeof options.url === 'function') {
60
+ options.url = options.url.call(this.$element, params);
61
+ }
62
+
63
+ if (typeof options.data === 'function') {
64
+ options.data = options.data.call(this.$element, params);
65
+ }
66
+
67
+ function request () {
68
+ var $request = options.transport(options, function (data) {
69
+ var results = self.processResults(data, params);
70
+
71
+ if (self.options.get('debug') && window.console && console.error) {
72
+ // Check to make sure that the response included a `results` key.
73
+ if (!results || !results.results || !$.isArray(results.results)) {
74
+ console.error(
75
+ 'Select2: The AJAX results did not return an array in the ' +
76
+ '`results` key of the response.'
77
+ );
78
+ }
79
+ }
80
+
81
+ callback(results);
82
+ }, function () {
83
+ // Attempt to detect if a request was aborted
84
+ // Only works if the transport exposes a status property
85
+ if ($request.status && $request.status === '0') {
86
+ return;
87
+ }
88
+
89
+ self.trigger('results:message', {
90
+ message: 'errorLoading'
91
+ });
92
+ });
93
+
94
+ self._request = $request;
95
+ }
96
+
97
+ if (this.ajaxOptions.delay && params.term != null) {
98
+ if (this._queryTimeout) {
99
+ window.clearTimeout(this._queryTimeout);
100
+ }
101
+
102
+ this._queryTimeout = window.setTimeout(request, this.ajaxOptions.delay);
103
+ } else {
104
+ request();
105
+ }
106
+ };
107
+
108
+ return AjaxAdapter;
109
+ });
@@ -0,0 +1,79 @@
1
+ define([
2
+ './select',
3
+ '../utils',
4
+ 'jquery'
5
+ ], function (SelectAdapter, Utils, $) {
6
+ function ArrayAdapter ($element, options) {
7
+ var data = options.get('data') || [];
8
+
9
+ ArrayAdapter.__super__.constructor.call(this, $element, options);
10
+
11
+ this.addOptions(this.convertToOptions(data));
12
+ }
13
+
14
+ Utils.Extend(ArrayAdapter, SelectAdapter);
15
+
16
+ ArrayAdapter.prototype.select = function (data) {
17
+ var $option = this.$element.find('option').filter(function (i, elm) {
18
+ return elm.value == data.id.toString();
19
+ });
20
+
21
+ if ($option.length === 0) {
22
+ $option = this.option(data);
23
+
24
+ this.addOptions($option);
25
+ }
26
+
27
+ ArrayAdapter.__super__.select.call(this, data);
28
+ };
29
+
30
+ ArrayAdapter.prototype.convertToOptions = function (data) {
31
+ var self = this;
32
+
33
+ var $existing = this.$element.find('option');
34
+ var existingIds = $existing.map(function () {
35
+ return self.item($(this)).id;
36
+ }).get();
37
+
38
+ var $options = [];
39
+
40
+ // Filter out all items except for the one passed in the argument
41
+ function onlyItem (item) {
42
+ return function () {
43
+ return $(this).val() == item.id;
44
+ };
45
+ }
46
+
47
+ for (var d = 0; d < data.length; d++) {
48
+ var item = this._normalizeItem(data[d]);
49
+
50
+ // Skip items which were pre-loaded, only merge the data
51
+ if ($.inArray(item.id, existingIds) >= 0) {
52
+ var $existingOption = $existing.filter(onlyItem(item));
53
+
54
+ var existingData = this.item($existingOption);
55
+ var newData = $.extend(true, {}, item, existingData);
56
+
57
+ var $newOption = this.option(newData);
58
+
59
+ $existingOption.replaceWith($newOption);
60
+
61
+ continue;
62
+ }
63
+
64
+ var $option = this.option(item);
65
+
66
+ if (item.children) {
67
+ var $children = this.convertToOptions(item.children);
68
+
69
+ Utils.appendMany($option, $children);
70
+ }
71
+
72
+ $options.push($option);
73
+ }
74
+
75
+ return $options;
76
+ };
77
+
78
+ return ArrayAdapter;
79
+ });
@@ -0,0 +1,40 @@
1
+ define([
2
+ '../utils'
3
+ ], function (Utils) {
4
+ function BaseAdapter ($element, options) {
5
+ BaseAdapter.__super__.constructor.call(this);
6
+ }
7
+
8
+ Utils.Extend(BaseAdapter, Utils.Observable);
9
+
10
+ BaseAdapter.prototype.current = function (callback) {
11
+ throw new Error('The `current` method must be defined in child classes.');
12
+ };
13
+
14
+ BaseAdapter.prototype.query = function (params, callback) {
15
+ throw new Error('The `query` method must be defined in child classes.');
16
+ };
17
+
18
+ BaseAdapter.prototype.bind = function (container, $container) {
19
+ // Can be implemented in subclasses
20
+ };
21
+
22
+ BaseAdapter.prototype.destroy = function () {
23
+ // Can be implemented in subclasses
24
+ };
25
+
26
+ BaseAdapter.prototype.generateResultId = function (container, data) {
27
+ var id = container.id + '-result-';
28
+
29
+ id += Utils.generateChars(4);
30
+
31
+ if (data.id != null) {
32
+ id += '-' + data.id.toString();
33
+ } else {
34
+ id += '-' + Utils.generateChars(4);
35
+ }
36
+ return id;
37
+ };
38
+
39
+ return BaseAdapter;
40
+ });
@@ -0,0 +1,31 @@
1
+ define([
2
+
3
+ ], function () {
4
+ function MaximumInputLength (decorated, $e, options) {
5
+ this.maximumInputLength = options.get('maximumInputLength');
6
+
7
+ decorated.call(this, $e, options);
8
+ }
9
+
10
+ MaximumInputLength.prototype.query = function (decorated, params, callback) {
11
+ params.term = params.term || '';
12
+
13
+ if (this.maximumInputLength > 0 &&
14
+ params.term.length > this.maximumInputLength) {
15
+ this.trigger('results:message', {
16
+ message: 'inputTooLong',
17
+ args: {
18
+ maximum: this.maximumInputLength,
19
+ input: params.term,
20
+ params: params
21
+ }
22
+ });
23
+
24
+ return;
25
+ }
26
+
27
+ decorated.call(this, params, callback);
28
+ };
29
+
30
+ return MaximumInputLength;
31
+ });
@@ -0,0 +1,31 @@
1
+ define([
2
+
3
+ ], function (){
4
+ function MaximumSelectionLength (decorated, $e, options) {
5
+ this.maximumSelectionLength = options.get('maximumSelectionLength');
6
+
7
+ decorated.call(this, $e, options);
8
+ }
9
+
10
+ MaximumSelectionLength.prototype.query =
11
+ function (decorated, params, callback) {
12
+ var self = this;
13
+
14
+ this.current(function (currentData) {
15
+ var count = currentData != null ? currentData.length : 0;
16
+ if (self.maximumSelectionLength > 0 &&
17
+ count >= self.maximumSelectionLength) {
18
+ self.trigger('results:message', {
19
+ message: 'maximumSelected',
20
+ args: {
21
+ maximum: self.maximumSelectionLength
22
+ }
23
+ });
24
+ return;
25
+ }
26
+ decorated.call(self, params, callback);
27
+ });
28
+ };
29
+
30
+ return MaximumSelectionLength;
31
+ });
@@ -0,0 +1,30 @@
1
+ define([
2
+
3
+ ], function () {
4
+ function MinimumInputLength (decorated, $e, options) {
5
+ this.minimumInputLength = options.get('minimumInputLength');
6
+
7
+ decorated.call(this, $e, options);
8
+ }
9
+
10
+ MinimumInputLength.prototype.query = function (decorated, params, callback) {
11
+ params.term = params.term || '';
12
+
13
+ if (params.term.length < this.minimumInputLength) {
14
+ this.trigger('results:message', {
15
+ message: 'inputTooShort',
16
+ args: {
17
+ minimum: this.minimumInputLength,
18
+ input: params.term,
19
+ params: params
20
+ }
21
+ });
22
+
23
+ return;
24
+ }
25
+
26
+ decorated.call(this, params, callback);
27
+ };
28
+
29
+ return MinimumInputLength;
30
+ });
@@ -0,0 +1,285 @@
1
+ define([
2
+ './base',
3
+ '../utils',
4
+ 'jquery'
5
+ ], function (BaseAdapter, Utils, $) {
6
+ function SelectAdapter ($element, options) {
7
+ this.$element = $element;
8
+ this.options = options;
9
+
10
+ SelectAdapter.__super__.constructor.call(this);
11
+ }
12
+
13
+ Utils.Extend(SelectAdapter, BaseAdapter);
14
+
15
+ SelectAdapter.prototype.current = function (callback) {
16
+ var data = [];
17
+ var self = this;
18
+
19
+ this.$element.find(':selected').each(function () {
20
+ var $option = $(this);
21
+
22
+ var option = self.item($option);
23
+
24
+ data.push(option);
25
+ });
26
+
27
+ callback(data);
28
+ };
29
+
30
+ SelectAdapter.prototype.select = function (data) {
31
+ var self = this;
32
+
33
+ data.selected = true;
34
+
35
+ // If data.element is a DOM node, use it instead
36
+ if ($(data.element).is('option')) {
37
+ data.element.selected = true;
38
+
39
+ this.$element.trigger('change');
40
+
41
+ return;
42
+ }
43
+
44
+ if (this.$element.prop('multiple')) {
45
+ this.current(function (currentData) {
46
+ var val = [];
47
+
48
+ data = [data];
49
+ data.push.apply(data, currentData);
50
+
51
+ for (var d = 0; d < data.length; d++) {
52
+ var id = data[d].id;
53
+
54
+ if ($.inArray(id, val) === -1) {
55
+ val.push(id);
56
+ }
57
+ }
58
+
59
+ self.$element.val(val);
60
+ self.$element.trigger('change');
61
+ });
62
+ } else {
63
+ var val = data.id;
64
+
65
+ this.$element.val(val);
66
+ this.$element.trigger('change');
67
+ }
68
+ };
69
+
70
+ SelectAdapter.prototype.unselect = function (data) {
71
+ var self = this;
72
+
73
+ if (!this.$element.prop('multiple')) {
74
+ return;
75
+ }
76
+
77
+ data.selected = false;
78
+
79
+ if ($(data.element).is('option')) {
80
+ data.element.selected = false;
81
+
82
+ this.$element.trigger('change');
83
+
84
+ return;
85
+ }
86
+
87
+ this.current(function (currentData) {
88
+ var val = [];
89
+
90
+ for (var d = 0; d < currentData.length; d++) {
91
+ var id = currentData[d].id;
92
+
93
+ if (id !== data.id && $.inArray(id, val) === -1) {
94
+ val.push(id);
95
+ }
96
+ }
97
+
98
+ self.$element.val(val);
99
+
100
+ self.$element.trigger('change');
101
+ });
102
+ };
103
+
104
+ SelectAdapter.prototype.bind = function (container, $container) {
105
+ var self = this;
106
+
107
+ this.container = container;
108
+
109
+ container.on('select', function (params) {
110
+ self.select(params.data);
111
+ });
112
+
113
+ container.on('unselect', function (params) {
114
+ self.unselect(params.data);
115
+ });
116
+ };
117
+
118
+ SelectAdapter.prototype.destroy = function () {
119
+ // Remove anything added to child elements
120
+ this.$element.find('*').each(function () {
121
+ // Remove any custom data set by Select2
122
+ $.removeData(this, 'data');
123
+ });
124
+ };
125
+
126
+ SelectAdapter.prototype.query = function (params, callback) {
127
+ var data = [];
128
+ var self = this;
129
+
130
+ var $options = this.$element.children();
131
+
132
+ $options.each(function () {
133
+ var $option = $(this);
134
+
135
+ if (!$option.is('option') && !$option.is('optgroup')) {
136
+ return;
137
+ }
138
+
139
+ var option = self.item($option);
140
+
141
+ var matches = self.matches(params, option);
142
+
143
+ if (matches !== null) {
144
+ data.push(matches);
145
+ }
146
+ });
147
+
148
+ callback({
149
+ results: data
150
+ });
151
+ };
152
+
153
+ SelectAdapter.prototype.addOptions = function ($options) {
154
+ Utils.appendMany(this.$element, $options);
155
+ };
156
+
157
+ SelectAdapter.prototype.option = function (data) {
158
+ var option;
159
+
160
+ if (data.children) {
161
+ option = document.createElement('optgroup');
162
+ option.label = data.text;
163
+ } else {
164
+ option = document.createElement('option');
165
+
166
+ if (option.textContent !== undefined) {
167
+ option.textContent = data.text;
168
+ } else {
169
+ option.innerText = data.text;
170
+ }
171
+ }
172
+
173
+ if (data.id !== undefined) {
174
+ option.value = data.id;
175
+ }
176
+
177
+ if (data.disabled) {
178
+ option.disabled = true;
179
+ }
180
+
181
+ if (data.selected) {
182
+ option.selected = true;
183
+ }
184
+
185
+ if (data.title) {
186
+ option.title = data.title;
187
+ }
188
+
189
+ var $option = $(option);
190
+
191
+ var normalizedData = this._normalizeItem(data);
192
+ normalizedData.element = option;
193
+
194
+ // Override the option's data with the combined data
195
+ $.data(option, 'data', normalizedData);
196
+
197
+ return $option;
198
+ };
199
+
200
+ SelectAdapter.prototype.item = function ($option) {
201
+ var data = {};
202
+
203
+ data = $.data($option[0], 'data');
204
+
205
+ if (data != null) {
206
+ return data;
207
+ }
208
+
209
+ if ($option.is('option')) {
210
+ data = {
211
+ id: $option.val(),
212
+ text: $option.text(),
213
+ disabled: $option.prop('disabled'),
214
+ selected: $option.prop('selected'),
215
+ title: $option.prop('title')
216
+ };
217
+ } else if ($option.is('optgroup')) {
218
+ data = {
219
+ text: $option.prop('label'),
220
+ children: [],
221
+ title: $option.prop('title')
222
+ };
223
+
224
+ var $children = $option.children('option');
225
+ var children = [];
226
+
227
+ for (var c = 0; c < $children.length; c++) {
228
+ var $child = $($children[c]);
229
+
230
+ var child = this.item($child);
231
+
232
+ children.push(child);
233
+ }
234
+
235
+ data.children = children;
236
+ }
237
+
238
+ data = this._normalizeItem(data);
239
+ data.element = $option[0];
240
+
241
+ $.data($option[0], 'data', data);
242
+
243
+ return data;
244
+ };
245
+
246
+ SelectAdapter.prototype._normalizeItem = function (item) {
247
+ if (!$.isPlainObject(item)) {
248
+ item = {
249
+ id: item,
250
+ text: item
251
+ };
252
+ }
253
+
254
+ item = $.extend({}, {
255
+ text: ''
256
+ }, item);
257
+
258
+ var defaults = {
259
+ selected: false,
260
+ disabled: false
261
+ };
262
+
263
+ if (item.id != null) {
264
+ item.id = item.id.toString();
265
+ }
266
+
267
+ if (item.text != null) {
268
+ item.text = item.text.toString();
269
+ }
270
+
271
+ if (item._resultId == null && item.id && this.container != null) {
272
+ item._resultId = this.generateResultId(this.container, item);
273
+ }
274
+
275
+ return $.extend({}, defaults, item);
276
+ };
277
+
278
+ SelectAdapter.prototype.matches = function (params, data) {
279
+ var matcher = this.options.get('matcher');
280
+
281
+ return matcher(params, data);
282
+ };
283
+
284
+ return SelectAdapter;
285
+ });