locomotivecms 3.1.1 → 3.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (910) hide show
  1. checksums.yaml +4 -4
  2. data/lib/generators/locomotive/install/templates/mongoid_heroku.yml +3 -3
  3. data/lib/locomotive/version.rb +1 -1
  4. data/spec/requests/locomotive/steam/cache_spec.rb +1 -1
  5. metadata +4 -911
  6. data/vendor/assets/components/locomotive_sources/backbone/LICENSE +0 -22
  7. data/vendor/assets/components/locomotive_sources/backbone/backbone-min.js +0 -2
  8. data/vendor/assets/components/locomotive_sources/backbone/backbone-min.map +0 -1
  9. data/vendor/assets/components/locomotive_sources/backbone/backbone.js +0 -1894
  10. data/vendor/assets/components/locomotive_sources/backbone/bower.json +0 -8
  11. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/Gruntfile.js +0 -82
  12. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/LICENSE +0 -20
  13. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/README.md +0 -92
  14. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/bootstrap-tagsinput.jquery.json +0 -27
  15. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/bower.json +0 -42
  16. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput-angular.js +0 -87
  17. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput-angular.min.js +0 -7
  18. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput-angular.min.js.map +0 -1
  19. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput-typeahead.css +0 -49
  20. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput.css +0 -55
  21. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput.js +0 -663
  22. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput.less +0 -50
  23. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput.min.js +0 -7
  24. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput.min.js.map +0 -1
  25. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/dist/bootstrap-tagsinput.zip +0 -0
  26. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/examples/assets/app.css +0 -67
  27. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/examples/assets/app.js +0 -15
  28. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/examples/assets/app_bs2.js +0 -74
  29. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/examples/assets/app_bs3.js +0 -95
  30. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/examples/assets/cities.json +0 -16
  31. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/examples/assets/citynames.json +0 -16
  32. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/examples/bootstrap-2.3.2.html +0 -666
  33. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/examples/index.html +0 -742
  34. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/karma.conf.js +0 -20
  35. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/package.json +0 -47
  36. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/src/bootstrap-tagsinput-angular.js +0 -87
  37. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/src/bootstrap-tagsinput-typeahead.css +0 -49
  38. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/src/bootstrap-tagsinput.css +0 -55
  39. data/vendor/assets/components/locomotive_sources/bootstrap-tagsinput/src/bootstrap-tagsinput.js +0 -663
  40. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/CONTRIBUTING.md +0 -38
  41. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/Gruntfile.js +0 -191
  42. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/LICENSE +0 -21
  43. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/README.md +0 -37
  44. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/bower.json +0 -35
  45. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker-standalone.css +0 -103
  46. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.css +0 -373
  47. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css +0 -5
  48. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js +0 -9
  49. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/component.json +0 -9
  50. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/composer.json +0 -28
  51. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/ChangeLog.md +0 -222
  52. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/ContributorsGuide.md +0 -126
  53. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/Events.md +0 -96
  54. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/Extras.md +0 -95
  55. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/FAQ.md +0 -22
  56. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/Functions.md +0 -670
  57. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/Installing.md +0 -161
  58. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/Options.md +0 -473
  59. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/Version 4 Changelog.md +0 -6
  60. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/Version 4 Contributors guide.md +0 -6
  61. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/docs/index.md +0 -592
  62. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/mkdocs.yml +0 -17
  63. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/package.json +0 -43
  64. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/src/js/bootstrap-datetimepicker.js +0 -2552
  65. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/src/less/_bootstrap-datetimepicker.less +0 -352
  66. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/src/less/bootstrap-datetimepicker-build.less +0 -17
  67. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/src/nuget/Bootstrap.v3.Datetimepicker.CSS.nuspec +0 -34
  68. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/src/nuget/Bootstrap.v3.Datetimepicker.nuspec +0 -34
  69. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/src/nuget/NuGet.exe +0 -0
  70. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/src/nuget/install.ps1 +0 -2
  71. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/src/sass/_bootstrap-datetimepicker.scss +0 -343
  72. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/src/sass/bootstrap-datetimepicker-build.scss +0 -16
  73. data/vendor/assets/components/locomotive_sources/eonasdan-bootstrap-datetimepicker/tasks/bump_version.js +0 -88
  74. data/vendor/assets/components/locomotive_sources/jquery/MIT-LICENSE.txt +0 -21
  75. data/vendor/assets/components/locomotive_sources/jquery/bower.json +0 -28
  76. data/vendor/assets/components/locomotive_sources/jquery/dist/jquery.js +0 -9210
  77. data/vendor/assets/components/locomotive_sources/jquery/dist/jquery.min.js +0 -5
  78. data/vendor/assets/components/locomotive_sources/jquery/dist/jquery.min.map +0 -1
  79. data/vendor/assets/components/locomotive_sources/jquery/src/ajax.js +0 -786
  80. data/vendor/assets/components/locomotive_sources/jquery/src/ajax/jsonp.js +0 -89
  81. data/vendor/assets/components/locomotive_sources/jquery/src/ajax/load.js +0 -75
  82. data/vendor/assets/components/locomotive_sources/jquery/src/ajax/parseJSON.js +0 -13
  83. data/vendor/assets/components/locomotive_sources/jquery/src/ajax/parseXML.js +0 -28
  84. data/vendor/assets/components/locomotive_sources/jquery/src/ajax/script.js +0 -64
  85. data/vendor/assets/components/locomotive_sources/jquery/src/ajax/var/nonce.js +0 -5
  86. data/vendor/assets/components/locomotive_sources/jquery/src/ajax/var/rquery.js +0 -3
  87. data/vendor/assets/components/locomotive_sources/jquery/src/ajax/xhr.js +0 -136
  88. data/vendor/assets/components/locomotive_sources/jquery/src/attributes.js +0 -11
  89. data/vendor/assets/components/locomotive_sources/jquery/src/attributes/attr.js +0 -141
  90. data/vendor/assets/components/locomotive_sources/jquery/src/attributes/classes.js +0 -158
  91. data/vendor/assets/components/locomotive_sources/jquery/src/attributes/prop.js +0 -94
  92. data/vendor/assets/components/locomotive_sources/jquery/src/attributes/support.js +0 -35
  93. data/vendor/assets/components/locomotive_sources/jquery/src/attributes/val.js +0 -161
  94. data/vendor/assets/components/locomotive_sources/jquery/src/callbacks.js +0 -205
  95. data/vendor/assets/components/locomotive_sources/jquery/src/core.js +0 -502
  96. data/vendor/assets/components/locomotive_sources/jquery/src/core/access.js +0 -60
  97. data/vendor/assets/components/locomotive_sources/jquery/src/core/init.js +0 -123
  98. data/vendor/assets/components/locomotive_sources/jquery/src/core/parseHTML.js +0 -39
  99. data/vendor/assets/components/locomotive_sources/jquery/src/core/ready.js +0 -97
  100. data/vendor/assets/components/locomotive_sources/jquery/src/core/var/rsingleTag.js +0 -4
  101. data/vendor/assets/components/locomotive_sources/jquery/src/css.js +0 -450
  102. data/vendor/assets/components/locomotive_sources/jquery/src/css/addGetHookIf.js +0 -22
  103. data/vendor/assets/components/locomotive_sources/jquery/src/css/curCSS.js +0 -57
  104. data/vendor/assets/components/locomotive_sources/jquery/src/css/defaultDisplay.js +0 -70
  105. data/vendor/assets/components/locomotive_sources/jquery/src/css/hiddenVisibleSelectors.js +0 -15
  106. data/vendor/assets/components/locomotive_sources/jquery/src/css/support.js +0 -96
  107. data/vendor/assets/components/locomotive_sources/jquery/src/css/swap.js +0 -28
  108. data/vendor/assets/components/locomotive_sources/jquery/src/css/var/cssExpand.js +0 -3
  109. data/vendor/assets/components/locomotive_sources/jquery/src/css/var/getStyles.js +0 -12
  110. data/vendor/assets/components/locomotive_sources/jquery/src/css/var/isHidden.js +0 -13
  111. data/vendor/assets/components/locomotive_sources/jquery/src/css/var/rmargin.js +0 -3
  112. data/vendor/assets/components/locomotive_sources/jquery/src/css/var/rnumnonpx.js +0 -5
  113. data/vendor/assets/components/locomotive_sources/jquery/src/data.js +0 -178
  114. data/vendor/assets/components/locomotive_sources/jquery/src/data/Data.js +0 -181
  115. data/vendor/assets/components/locomotive_sources/jquery/src/data/accepts.js +0 -20
  116. data/vendor/assets/components/locomotive_sources/jquery/src/data/var/data_priv.js +0 -5
  117. data/vendor/assets/components/locomotive_sources/jquery/src/data/var/data_user.js +0 -5
  118. data/vendor/assets/components/locomotive_sources/jquery/src/deferred.js +0 -149
  119. data/vendor/assets/components/locomotive_sources/jquery/src/deprecated.js +0 -13
  120. data/vendor/assets/components/locomotive_sources/jquery/src/dimensions.js +0 -50
  121. data/vendor/assets/components/locomotive_sources/jquery/src/effects.js +0 -648
  122. data/vendor/assets/components/locomotive_sources/jquery/src/effects/Tween.js +0 -114
  123. data/vendor/assets/components/locomotive_sources/jquery/src/effects/animatedSelector.js +0 -13
  124. data/vendor/assets/components/locomotive_sources/jquery/src/event.js +0 -868
  125. data/vendor/assets/components/locomotive_sources/jquery/src/event/ajax.js +0 -13
  126. data/vendor/assets/components/locomotive_sources/jquery/src/event/alias.js +0 -39
  127. data/vendor/assets/components/locomotive_sources/jquery/src/event/support.js +0 -9
  128. data/vendor/assets/components/locomotive_sources/jquery/src/exports/amd.js +0 -24
  129. data/vendor/assets/components/locomotive_sources/jquery/src/exports/global.js +0 -32
  130. data/vendor/assets/components/locomotive_sources/jquery/src/intro.js +0 -44
  131. data/vendor/assets/components/locomotive_sources/jquery/src/jquery.js +0 -37
  132. data/vendor/assets/components/locomotive_sources/jquery/src/manipulation.js +0 -580
  133. data/vendor/assets/components/locomotive_sources/jquery/src/manipulation/_evalUrl.js +0 -18
  134. data/vendor/assets/components/locomotive_sources/jquery/src/manipulation/support.js +0 -32
  135. data/vendor/assets/components/locomotive_sources/jquery/src/manipulation/var/rcheckableType.js +0 -3
  136. data/vendor/assets/components/locomotive_sources/jquery/src/offset.js +0 -207
  137. data/vendor/assets/components/locomotive_sources/jquery/src/outro.js +0 -1
  138. data/vendor/assets/components/locomotive_sources/jquery/src/queue.js +0 -142
  139. data/vendor/assets/components/locomotive_sources/jquery/src/queue/delay.js +0 -22
  140. data/vendor/assets/components/locomotive_sources/jquery/src/selector-native.js +0 -172
  141. data/vendor/assets/components/locomotive_sources/jquery/src/selector-sizzle.js +0 -14
  142. data/vendor/assets/components/locomotive_sources/jquery/src/selector.js +0 -1
  143. data/vendor/assets/components/locomotive_sources/jquery/src/serialize.js +0 -111
  144. data/vendor/assets/components/locomotive_sources/jquery/src/sizzle/dist/sizzle.js +0 -2067
  145. data/vendor/assets/components/locomotive_sources/jquery/src/sizzle/dist/sizzle.min.js +0 -3
  146. data/vendor/assets/components/locomotive_sources/jquery/src/sizzle/dist/sizzle.min.map +0 -1
  147. data/vendor/assets/components/locomotive_sources/jquery/src/traversing.js +0 -199
  148. data/vendor/assets/components/locomotive_sources/jquery/src/traversing/findFilter.js +0 -100
  149. data/vendor/assets/components/locomotive_sources/jquery/src/traversing/var/rneedsContext.js +0 -6
  150. data/vendor/assets/components/locomotive_sources/jquery/src/var/arr.js +0 -3
  151. data/vendor/assets/components/locomotive_sources/jquery/src/var/class2type.js +0 -4
  152. data/vendor/assets/components/locomotive_sources/jquery/src/var/concat.js +0 -5
  153. data/vendor/assets/components/locomotive_sources/jquery/src/var/hasOwn.js +0 -5
  154. data/vendor/assets/components/locomotive_sources/jquery/src/var/indexOf.js +0 -5
  155. data/vendor/assets/components/locomotive_sources/jquery/src/var/pnum.js +0 -3
  156. data/vendor/assets/components/locomotive_sources/jquery/src/var/push.js +0 -5
  157. data/vendor/assets/components/locomotive_sources/jquery/src/var/rnotwhite.js +0 -3
  158. data/vendor/assets/components/locomotive_sources/jquery/src/var/slice.js +0 -5
  159. data/vendor/assets/components/locomotive_sources/jquery/src/var/strundefined.js +0 -3
  160. data/vendor/assets/components/locomotive_sources/jquery/src/var/support.js +0 -4
  161. data/vendor/assets/components/locomotive_sources/jquery/src/var/toString.js +0 -5
  162. data/vendor/assets/components/locomotive_sources/jquery/src/wrap.js +0 -79
  163. data/vendor/assets/components/locomotive_sources/moment-timezone/LICENSE +0 -20
  164. data/vendor/assets/components/locomotive_sources/moment-timezone/README.md +0 -36
  165. data/vendor/assets/components/locomotive_sources/moment-timezone/bower.json +0 -18
  166. data/vendor/assets/components/locomotive_sources/moment-timezone/builds/moment-timezone-with-data-2010-2020.js +0 -1189
  167. data/vendor/assets/components/locomotive_sources/moment-timezone/builds/moment-timezone-with-data-2010-2020.min.js +0 -7
  168. data/vendor/assets/components/locomotive_sources/moment-timezone/builds/moment-timezone-with-data.js +0 -1189
  169. data/vendor/assets/components/locomotive_sources/moment-timezone/builds/moment-timezone-with-data.min.js +0 -7
  170. data/vendor/assets/components/locomotive_sources/moment-timezone/builds/moment-timezone.min.js +0 -6
  171. data/vendor/assets/components/locomotive_sources/moment-timezone/changelog.md +0 -101
  172. data/vendor/assets/components/locomotive_sources/moment-timezone/composer.json +0 -43
  173. data/vendor/assets/components/locomotive_sources/moment-timezone/data/meta/latest.json +0 -5012
  174. data/vendor/assets/components/locomotive_sources/moment-timezone/data/packed/latest.json +0 -590
  175. data/vendor/assets/components/locomotive_sources/moment-timezone/data/unpacked/latest.json +0 -124081
  176. data/vendor/assets/components/locomotive_sources/moment-timezone/moment-timezone-utils.js +0 -316
  177. data/vendor/assets/components/locomotive_sources/moment-timezone/moment-timezone.js +0 -599
  178. data/vendor/assets/components/locomotive_sources/moment/CHANGELOG.md +0 -496
  179. data/vendor/assets/components/locomotive_sources/moment/LICENSE +0 -22
  180. data/vendor/assets/components/locomotive_sources/moment/README.md +0 -58
  181. data/vendor/assets/components/locomotive_sources/moment/bower.json +0 -22
  182. data/vendor/assets/components/locomotive_sources/moment/locale/af.js +0 -73
  183. data/vendor/assets/components/locomotive_sources/moment/locale/ar-ma.js +0 -59
  184. data/vendor/assets/components/locomotive_sources/moment/locale/ar-sa.js +0 -103
  185. data/vendor/assets/components/locomotive_sources/moment/locale/ar-tn.js +0 -57
  186. data/vendor/assets/components/locomotive_sources/moment/locale/ar.js +0 -136
  187. data/vendor/assets/components/locomotive_sources/moment/locale/az.js +0 -104
  188. data/vendor/assets/components/locomotive_sources/moment/locale/be.js +0 -134
  189. data/vendor/assets/components/locomotive_sources/moment/locale/bg.js +0 -90
  190. data/vendor/assets/components/locomotive_sources/moment/locale/bn.js +0 -113
  191. data/vendor/assets/components/locomotive_sources/moment/locale/bo.js +0 -110
  192. data/vendor/assets/components/locomotive_sources/moment/locale/br.js +0 -107
  193. data/vendor/assets/components/locomotive_sources/moment/locale/bs.js +0 -141
  194. data/vendor/assets/components/locomotive_sources/moment/locale/ca.js +0 -79
  195. data/vendor/assets/components/locomotive_sources/moment/locale/cs.js +0 -171
  196. data/vendor/assets/components/locomotive_sources/moment/locale/cv.js +0 -63
  197. data/vendor/assets/components/locomotive_sources/moment/locale/cy.js +0 -79
  198. data/vendor/assets/components/locomotive_sources/moment/locale/da.js +0 -60
  199. data/vendor/assets/components/locomotive_sources/moment/locale/de-at.js +0 -77
  200. data/vendor/assets/components/locomotive_sources/moment/locale/de.js +0 -76
  201. data/vendor/assets/components/locomotive_sources/moment/locale/dv.js +0 -99
  202. data/vendor/assets/components/locomotive_sources/moment/locale/el.js +0 -98
  203. data/vendor/assets/components/locomotive_sources/moment/locale/en-au.js +0 -66
  204. data/vendor/assets/components/locomotive_sources/moment/locale/en-ca.js +0 -63
  205. data/vendor/assets/components/locomotive_sources/moment/locale/en-gb.js +0 -67
  206. data/vendor/assets/components/locomotive_sources/moment/locale/en-ie.js +0 -67
  207. data/vendor/assets/components/locomotive_sources/moment/locale/en-nz.js +0 -66
  208. data/vendor/assets/components/locomotive_sources/moment/locale/eo.js +0 -73
  209. data/vendor/assets/components/locomotive_sources/moment/locale/es.js +0 -79
  210. data/vendor/assets/components/locomotive_sources/moment/locale/et.js +0 -80
  211. data/vendor/assets/components/locomotive_sources/moment/locale/eu.js +0 -64
  212. data/vendor/assets/components/locomotive_sources/moment/locale/fa.js +0 -105
  213. data/vendor/assets/components/locomotive_sources/moment/locale/fi.js +0 -107
  214. data/vendor/assets/components/locomotive_sources/moment/locale/fo.js +0 -60
  215. data/vendor/assets/components/locomotive_sources/moment/locale/fr-ca.js +0 -58
  216. data/vendor/assets/components/locomotive_sources/moment/locale/fr-ch.js +0 -62
  217. data/vendor/assets/components/locomotive_sources/moment/locale/fr.js +0 -62
  218. data/vendor/assets/components/locomotive_sources/moment/locale/fy.js +0 -71
  219. data/vendor/assets/components/locomotive_sources/moment/locale/gd.js +0 -76
  220. data/vendor/assets/components/locomotive_sources/moment/locale/gl.js +0 -75
  221. data/vendor/assets/components/locomotive_sources/moment/locale/he.js +0 -82
  222. data/vendor/assets/components/locomotive_sources/moment/locale/hi.js +0 -123
  223. data/vendor/assets/components/locomotive_sources/moment/locale/hr.js +0 -143
  224. data/vendor/assets/components/locomotive_sources/moment/locale/hu.js +0 -109
  225. data/vendor/assets/components/locomotive_sources/moment/locale/hy-am.js +0 -95
  226. data/vendor/assets/components/locomotive_sources/moment/locale/id.js +0 -83
  227. data/vendor/assets/components/locomotive_sources/moment/locale/is.js +0 -127
  228. data/vendor/assets/components/locomotive_sources/moment/locale/it.js +0 -70
  229. data/vendor/assets/components/locomotive_sources/moment/locale/ja.js +0 -65
  230. data/vendor/assets/components/locomotive_sources/moment/locale/jv.js +0 -83
  231. data/vendor/assets/components/locomotive_sources/moment/locale/ka.js +0 -89
  232. data/vendor/assets/components/locomotive_sources/moment/locale/kk.js +0 -87
  233. data/vendor/assets/components/locomotive_sources/moment/locale/km.js +0 -58
  234. data/vendor/assets/components/locomotive_sources/moment/locale/ko.js +0 -68
  235. data/vendor/assets/components/locomotive_sources/moment/locale/lb.js +0 -134
  236. data/vendor/assets/components/locomotive_sources/moment/locale/lo.js +0 -69
  237. data/vendor/assets/components/locomotive_sources/moment/locale/lt.js +0 -115
  238. data/vendor/assets/components/locomotive_sources/moment/locale/lv.js +0 -96
  239. data/vendor/assets/components/locomotive_sources/moment/locale/me.js +0 -109
  240. data/vendor/assets/components/locomotive_sources/moment/locale/mk.js +0 -90
  241. data/vendor/assets/components/locomotive_sources/moment/locale/ml.js +0 -71
  242. data/vendor/assets/components/locomotive_sources/moment/locale/mr.js +0 -158
  243. data/vendor/assets/components/locomotive_sources/moment/locale/ms-my.js +0 -82
  244. data/vendor/assets/components/locomotive_sources/moment/locale/ms.js +0 -82
  245. data/vendor/assets/components/locomotive_sources/moment/locale/my.js +0 -93
  246. data/vendor/assets/components/locomotive_sources/moment/locale/nb.js +0 -61
  247. data/vendor/assets/components/locomotive_sources/moment/locale/ne.js +0 -121
  248. data/vendor/assets/components/locomotive_sources/moment/locale/nl.js +0 -71
  249. data/vendor/assets/components/locomotive_sources/moment/locale/nn.js +0 -60
  250. data/vendor/assets/components/locomotive_sources/moment/locale/pl.js +0 -105
  251. data/vendor/assets/components/locomotive_sources/moment/locale/pt-br.js +0 -60
  252. data/vendor/assets/components/locomotive_sources/moment/locale/pt.js +0 -64
  253. data/vendor/assets/components/locomotive_sources/moment/locale/ro.js +0 -74
  254. data/vendor/assets/components/locomotive_sources/moment/locale/ru.js +0 -166
  255. data/vendor/assets/components/locomotive_sources/moment/locale/se.js +0 -61
  256. data/vendor/assets/components/locomotive_sources/moment/locale/si.js +0 -66
  257. data/vendor/assets/components/locomotive_sources/moment/locale/sk.js +0 -150
  258. data/vendor/assets/components/locomotive_sources/moment/locale/sl.js +0 -160
  259. data/vendor/assets/components/locomotive_sources/moment/locale/sq.js +0 -69
  260. data/vendor/assets/components/locomotive_sources/moment/locale/sr-cyrl.js +0 -108
  261. data/vendor/assets/components/locomotive_sources/moment/locale/sr.js +0 -108
  262. data/vendor/assets/components/locomotive_sources/moment/locale/sv.js +0 -67
  263. data/vendor/assets/components/locomotive_sources/moment/locale/sw.js +0 -58
  264. data/vendor/assets/components/locomotive_sources/moment/locale/ta.js +0 -129
  265. data/vendor/assets/components/locomotive_sources/moment/locale/te.js +0 -88
  266. data/vendor/assets/components/locomotive_sources/moment/locale/th.js +0 -65
  267. data/vendor/assets/components/locomotive_sources/moment/locale/tl-ph.js +0 -62
  268. data/vendor/assets/components/locomotive_sources/moment/locale/tlh.js +0 -119
  269. data/vendor/assets/components/locomotive_sources/moment/locale/tr.js +0 -90
  270. data/vendor/assets/components/locomotive_sources/moment/locale/tzl.js +0 -87
  271. data/vendor/assets/components/locomotive_sources/moment/locale/tzm-latn.js +0 -58
  272. data/vendor/assets/components/locomotive_sources/moment/locale/tzm.js +0 -58
  273. data/vendor/assets/components/locomotive_sources/moment/locale/uk.js +0 -146
  274. data/vendor/assets/components/locomotive_sources/moment/locale/uz.js +0 -58
  275. data/vendor/assets/components/locomotive_sources/moment/locale/vi.js +0 -66
  276. data/vendor/assets/components/locomotive_sources/moment/locale/zh-cn.js +0 -127
  277. data/vendor/assets/components/locomotive_sources/moment/locale/zh-tw.js +0 -101
  278. data/vendor/assets/components/locomotive_sources/moment/min/locales.js +0 -7548
  279. data/vendor/assets/components/locomotive_sources/moment/min/locales.min.js +0 -72
  280. data/vendor/assets/components/locomotive_sources/moment/min/moment-with-locales.js +0 -11144
  281. data/vendor/assets/components/locomotive_sources/moment/min/moment-with-locales.min.js +0 -74
  282. data/vendor/assets/components/locomotive_sources/moment/min/moment.min.js +0 -7
  283. data/vendor/assets/components/locomotive_sources/moment/min/tests.js +0 -46196
  284. data/vendor/assets/components/locomotive_sources/moment/moment.js +0 -3606
  285. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/check-overflow.js +0 -34
  286. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/date-from-array.js +0 -21
  287. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/from-anything.js +0 -101
  288. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/from-array.js +0 -136
  289. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/from-object.js +0 -16
  290. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/from-string-and-array.js +0 -50
  291. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/from-string-and-format.js +0 -104
  292. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/from-string.js +0 -120
  293. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/local.js +0 -5
  294. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/parsing-flags.js +0 -22
  295. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/utc.js +0 -5
  296. data/vendor/assets/components/locomotive_sources/moment/src/lib/create/valid.js +0 -37
  297. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/abs.js +0 -18
  298. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/add-subtract.js +0 -21
  299. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/as.js +0 -55
  300. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/bubble.js +0 -61
  301. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/constructor.js +0 -41
  302. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/create.js +0 -117
  303. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/duration.js +0 -12
  304. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/get.js +0 -25
  305. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/humanize.js +0 -64
  306. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/iso-string.js +0 -52
  307. data/vendor/assets/components/locomotive_sources/moment/src/lib/duration/prototype.js +0 -48
  308. data/vendor/assets/components/locomotive_sources/moment/src/lib/format/format.js +0 -92
  309. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/calendar.js +0 -15
  310. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/constructor.js +0 -2
  311. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/en.js +0 -15
  312. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/formats.js +0 -23
  313. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/invalid.js +0 -5
  314. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/lists.js +0 -48
  315. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/locale.js +0 -35
  316. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/locales.js +0 -118
  317. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/ordinal.js +0 -7
  318. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/pre-post-format.js +0 -3
  319. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/prototype.js +0 -76
  320. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/relative.js +0 -29
  321. data/vendor/assets/components/locomotive_sources/moment/src/lib/locale/set.js +0 -16
  322. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/add-subtract.js +0 -52
  323. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/calendar.js +0 -21
  324. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/clone.js +0 -5
  325. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/compare.js +0 -57
  326. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/constructor.js +0 -74
  327. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/creation-data.js +0 -9
  328. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/diff.js +0 -61
  329. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/format.js +0 -28
  330. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/from.js +0 -17
  331. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/get-set.js +0 -43
  332. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/locale.js +0 -34
  333. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/min-max.js +0 -63
  334. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/moment.js +0 -28
  335. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/now.js +0 -3
  336. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/prototype.js +0 -149
  337. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/start-end-of.js +0 -52
  338. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/to-type.js +0 -34
  339. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/to.js +0 -17
  340. data/vendor/assets/components/locomotive_sources/moment/src/lib/moment/valid.js +0 -15
  341. data/vendor/assets/components/locomotive_sources/moment/src/lib/parse/regex.js +0 -54
  342. data/vendor/assets/components/locomotive_sources/moment/src/lib/parse/token.js +0 -32
  343. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/aliases.js +0 -29
  344. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/constants.js +0 -9
  345. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/day-of-month.js +0 -32
  346. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/day-of-week.js +0 -162
  347. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/day-of-year.js +0 -32
  348. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/hour.js +0 -129
  349. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/millisecond.js +0 -64
  350. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/minute.js +0 -24
  351. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/month.js +0 -209
  352. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/offset.js +0 -219
  353. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/quarter.js +0 -27
  354. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/second.js +0 -24
  355. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/timestamp.js +0 -20
  356. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/timezone.js +0 -16
  357. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/units.js +0 -20
  358. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/week-calendar-utils.js +0 -65
  359. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/week-year.js +0 -101
  360. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/week.js +0 -61
  361. data/vendor/assets/components/locomotive_sources/moment/src/lib/units/year.js +0 -70
  362. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/abs-ceil.js +0 -7
  363. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/abs-floor.js +0 -7
  364. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/compare-arrays.js +0 -16
  365. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/defaults.js +0 -10
  366. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/deprecate.js +0 -33
  367. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/extend.js +0 -19
  368. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/has-own-prop.js +0 -3
  369. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/hooks.js +0 -13
  370. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/is-array.js +0 -3
  371. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/is-date.js +0 -3
  372. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/is-function.js +0 -3
  373. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/is-undefined.js +0 -3
  374. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/map.js +0 -7
  375. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/to-int.js +0 -12
  376. data/vendor/assets/components/locomotive_sources/moment/src/lib/utils/zero-fill.js +0 -7
  377. data/vendor/assets/components/locomotive_sources/moment/src/locale/af.js +0 -63
  378. data/vendor/assets/components/locomotive_sources/moment/src/locale/ar-ma.js +0 -50
  379. data/vendor/assets/components/locomotive_sources/moment/src/locale/ar-sa.js +0 -94
  380. data/vendor/assets/components/locomotive_sources/moment/src/locale/ar-tn.js +0 -48
  381. data/vendor/assets/components/locomotive_sources/moment/src/locale/ar.js +0 -127
  382. data/vendor/assets/components/locomotive_sources/moment/src/locale/az.js +0 -95
  383. data/vendor/assets/components/locomotive_sources/moment/src/locale/be.js +0 -125
  384. data/vendor/assets/components/locomotive_sources/moment/src/locale/bg.js +0 -81
  385. data/vendor/assets/components/locomotive_sources/moment/src/locale/bn.js +0 -104
  386. data/vendor/assets/components/locomotive_sources/moment/src/locale/bo.js +0 -101
  387. data/vendor/assets/components/locomotive_sources/moment/src/locale/br.js +0 -98
  388. data/vendor/assets/components/locomotive_sources/moment/src/locale/bs.js +0 -132
  389. data/vendor/assets/components/locomotive_sources/moment/src/locale/ca.js +0 -70
  390. data/vendor/assets/components/locomotive_sources/moment/src/locale/cs.js +0 -162
  391. data/vendor/assets/components/locomotive_sources/moment/src/locale/cv.js +0 -53
  392. data/vendor/assets/components/locomotive_sources/moment/src/locale/cy.js +0 -70
  393. data/vendor/assets/components/locomotive_sources/moment/src/locale/da.js +0 -51
  394. data/vendor/assets/components/locomotive_sources/moment/src/locale/de-at.js +0 -67
  395. data/vendor/assets/components/locomotive_sources/moment/src/locale/de.js +0 -66
  396. data/vendor/assets/components/locomotive_sources/moment/src/locale/dv.js +0 -89
  397. data/vendor/assets/components/locomotive_sources/moment/src/locale/el.js +0 -86
  398. data/vendor/assets/components/locomotive_sources/moment/src/locale/en-au.js +0 -57
  399. data/vendor/assets/components/locomotive_sources/moment/src/locale/en-ca.js +0 -54
  400. data/vendor/assets/components/locomotive_sources/moment/src/locale/en-gb.js +0 -58
  401. data/vendor/assets/components/locomotive_sources/moment/src/locale/en-ie.js +0 -58
  402. data/vendor/assets/components/locomotive_sources/moment/src/locale/en-nz.js +0 -56
  403. data/vendor/assets/components/locomotive_sources/moment/src/locale/eo.js +0 -64
  404. data/vendor/assets/components/locomotive_sources/moment/src/locale/es.js +0 -70
  405. data/vendor/assets/components/locomotive_sources/moment/src/locale/et.js +0 -71
  406. data/vendor/assets/components/locomotive_sources/moment/src/locale/eu.js +0 -55
  407. data/vendor/assets/components/locomotive_sources/moment/src/locale/fa.js +0 -96
  408. data/vendor/assets/components/locomotive_sources/moment/src/locale/fi.js +0 -98
  409. data/vendor/assets/components/locomotive_sources/moment/src/locale/fo.js +0 -51
  410. data/vendor/assets/components/locomotive_sources/moment/src/locale/fr-ca.js +0 -49
  411. data/vendor/assets/components/locomotive_sources/moment/src/locale/fr-ch.js +0 -53
  412. data/vendor/assets/components/locomotive_sources/moment/src/locale/fr.js +0 -53
  413. data/vendor/assets/components/locomotive_sources/moment/src/locale/fy.js +0 -62
  414. data/vendor/assets/components/locomotive_sources/moment/src/locale/gd.js +0 -67
  415. data/vendor/assets/components/locomotive_sources/moment/src/locale/gl.js +0 -66
  416. data/vendor/assets/components/locomotive_sources/moment/src/locale/he.js +0 -73
  417. data/vendor/assets/components/locomotive_sources/moment/src/locale/hi.js +0 -114
  418. data/vendor/assets/components/locomotive_sources/moment/src/locale/hr.js +0 -134
  419. data/vendor/assets/components/locomotive_sources/moment/src/locale/hu.js +0 -100
  420. data/vendor/assets/components/locomotive_sources/moment/src/locale/hy-am.js +0 -86
  421. data/vendor/assets/components/locomotive_sources/moment/src/locale/id.js +0 -74
  422. data/vendor/assets/components/locomotive_sources/moment/src/locale/is.js +0 -118
  423. data/vendor/assets/components/locomotive_sources/moment/src/locale/it.js +0 -61
  424. data/vendor/assets/components/locomotive_sources/moment/src/locale/ja.js +0 -56
  425. data/vendor/assets/components/locomotive_sources/moment/src/locale/jv.js +0 -73
  426. data/vendor/assets/components/locomotive_sources/moment/src/locale/ka.js +0 -80
  427. data/vendor/assets/components/locomotive_sources/moment/src/locale/kk.js +0 -77
  428. data/vendor/assets/components/locomotive_sources/moment/src/locale/km.js +0 -49
  429. data/vendor/assets/components/locomotive_sources/moment/src/locale/ko.js +0 -59
  430. data/vendor/assets/components/locomotive_sources/moment/src/locale/lb.js +0 -125
  431. data/vendor/assets/components/locomotive_sources/moment/src/locale/lo.js +0 -60
  432. data/vendor/assets/components/locomotive_sources/moment/src/locale/lt.js +0 -106
  433. data/vendor/assets/components/locomotive_sources/moment/src/locale/lv.js +0 -87
  434. data/vendor/assets/components/locomotive_sources/moment/src/locale/me.js +0 -99
  435. data/vendor/assets/components/locomotive_sources/moment/src/locale/mk.js +0 -81
  436. data/vendor/assets/components/locomotive_sources/moment/src/locale/ml.js +0 -62
  437. data/vendor/assets/components/locomotive_sources/moment/src/locale/mr.js +0 -149
  438. data/vendor/assets/components/locomotive_sources/moment/src/locale/ms-my.js +0 -73
  439. data/vendor/assets/components/locomotive_sources/moment/src/locale/ms.js +0 -73
  440. data/vendor/assets/components/locomotive_sources/moment/src/locale/my.js +0 -84
  441. data/vendor/assets/components/locomotive_sources/moment/src/locale/nb.js +0 -52
  442. data/vendor/assets/components/locomotive_sources/moment/src/locale/ne.js +0 -112
  443. data/vendor/assets/components/locomotive_sources/moment/src/locale/nl.js +0 -62
  444. data/vendor/assets/components/locomotive_sources/moment/src/locale/nn.js +0 -51
  445. data/vendor/assets/components/locomotive_sources/moment/src/locale/pl.js +0 -95
  446. data/vendor/assets/components/locomotive_sources/moment/src/locale/pt-br.js +0 -51
  447. data/vendor/assets/components/locomotive_sources/moment/src/locale/pt.js +0 -55
  448. data/vendor/assets/components/locomotive_sources/moment/src/locale/ro.js +0 -65
  449. data/vendor/assets/components/locomotive_sources/moment/src/locale/ru.js +0 -156
  450. data/vendor/assets/components/locomotive_sources/moment/src/locale/se.js +0 -51
  451. data/vendor/assets/components/locomotive_sources/moment/src/locale/si.js +0 -56
  452. data/vendor/assets/components/locomotive_sources/moment/src/locale/sk.js +0 -141
  453. data/vendor/assets/components/locomotive_sources/moment/src/locale/sl.js +0 -150
  454. data/vendor/assets/components/locomotive_sources/moment/src/locale/sq.js +0 -60
  455. data/vendor/assets/components/locomotive_sources/moment/src/locale/sr-cyrl.js +0 -99
  456. data/vendor/assets/components/locomotive_sources/moment/src/locale/sr.js +0 -99
  457. data/vendor/assets/components/locomotive_sources/moment/src/locale/sv.js +0 -58
  458. data/vendor/assets/components/locomotive_sources/moment/src/locale/sw.js +0 -49
  459. data/vendor/assets/components/locomotive_sources/moment/src/locale/ta.js +0 -120
  460. data/vendor/assets/components/locomotive_sources/moment/src/locale/te.js +0 -78
  461. data/vendor/assets/components/locomotive_sources/moment/src/locale/th.js +0 -56
  462. data/vendor/assets/components/locomotive_sources/moment/src/locale/tl-ph.js +0 -53
  463. data/vendor/assets/components/locomotive_sources/moment/src/locale/tlh.js +0 -109
  464. data/vendor/assets/components/locomotive_sources/moment/src/locale/tr.js +0 -81
  465. data/vendor/assets/components/locomotive_sources/moment/src/locale/tzl.js +0 -78
  466. data/vendor/assets/components/locomotive_sources/moment/src/locale/tzm-latn.js +0 -49
  467. data/vendor/assets/components/locomotive_sources/moment/src/locale/tzm.js +0 -49
  468. data/vendor/assets/components/locomotive_sources/moment/src/locale/uk.js +0 -137
  469. data/vendor/assets/components/locomotive_sources/moment/src/locale/uz.js +0 -49
  470. data/vendor/assets/components/locomotive_sources/moment/src/locale/vi.js +0 -57
  471. data/vendor/assets/components/locomotive_sources/moment/src/locale/zh-cn.js +0 -118
  472. data/vendor/assets/components/locomotive_sources/moment/src/locale/zh-tw.js +0 -91
  473. data/vendor/assets/components/locomotive_sources/moment/src/moment.js +0 -71
  474. data/vendor/assets/components/locomotive_sources/moment/templates/amd-named.js +0 -7
  475. data/vendor/assets/components/locomotive_sources/moment/templates/amd.js +0 -7
  476. data/vendor/assets/components/locomotive_sources/moment/templates/default.js +0 -5
  477. data/vendor/assets/components/locomotive_sources/moment/templates/globals.js +0 -5
  478. data/vendor/assets/components/locomotive_sources/moment/templates/locale-header.js +0 -6
  479. data/vendor/assets/components/locomotive_sources/moment/templates/test-header.js +0 -6
  480. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/Gemfile +0 -3
  481. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/Gruntfile.js +0 -110
  482. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/LICENSE +0 -8
  483. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/README.md +0 -91
  484. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/3.3.2.html +0 -4
  485. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/3.4.1.html +0 -4
  486. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/3.4.2.html +0 -4
  487. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/3.4.3.html +0 -4
  488. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/3.4.4.html +0 -4
  489. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/3.4.5.html +0 -4
  490. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/3.5.1.html +0 -4
  491. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/3.5.2.html +0 -4
  492. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_config.yml +0 -13
  493. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_includes/footer-links.html +0 -9
  494. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_includes/footer.html +0 -10
  495. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_includes/head.html +0 -13
  496. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_includes/navbar.html +0 -21
  497. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_includes/select2-select.html +0 -55
  498. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_layouts/default.html +0 -489
  499. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_layouts/minimal.html +0 -7
  500. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_sass/_extends.sass +0 -4
  501. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_sass/_mixins.sass +0 -9
  502. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_sass/_select2-result-repository.sass +0 -40
  503. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/_sass/_variables.sass +0 -1
  504. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/css/bootstrap.min.css +0 -5
  505. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/css/gh-pages.sass +0 -103
  506. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/css/select2-bootstrap.css +0 -495
  507. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/favicon.ico +0 -0
  508. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/fonts/glyphicons-halflings-regular.eot +0 -0
  509. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/fonts/glyphicons-halflings-regular.svg +0 -288
  510. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/fonts/glyphicons-halflings-regular.ttf +0 -0
  511. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/fonts/glyphicons-halflings-regular.woff +0 -0
  512. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/fonts/glyphicons-halflings-regular.woff2 +0 -0
  513. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/index.html +0 -77
  514. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/js/bootstrap.min.js +0 -7
  515. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/js/respond.min.js +0 -5
  516. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/_jekyll/master.html +0 -4
  517. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/bower.json +0 -20
  518. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/compass/stylesheets/select2-bootstrap.scss +0 -1
  519. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/3.3.2.html +0 -1668
  520. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/3.4.1.html +0 -1662
  521. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/3.4.2.html +0 -1662
  522. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/3.4.3.html +0 -1662
  523. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/3.4.4.html +0 -1662
  524. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/3.4.5.html +0 -1662
  525. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/3.5.1.html +0 -1662
  526. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/3.5.2.html +0 -1662
  527. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/css/bootstrap.min.css +0 -5
  528. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/css/gh-pages.css +0 -142
  529. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/css/select2-bootstrap.css +0 -495
  530. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/favicon.ico +0 -0
  531. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/fonts/glyphicons-halflings-regular.eot +0 -0
  532. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/fonts/glyphicons-halflings-regular.svg +0 -288
  533. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/fonts/glyphicons-halflings-regular.ttf +0 -0
  534. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/fonts/glyphicons-halflings-regular.woff +0 -0
  535. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/fonts/glyphicons-halflings-regular.woff2 +0 -0
  536. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/index.html +0 -293
  537. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/js/bootstrap.min.js +0 -7
  538. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/js/respond.min.js +0 -5
  539. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/docs/master.html +0 -1662
  540. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/lib/build.less +0 -3
  541. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/lib/build.scss +0 -3
  542. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/lib/select2-bootstrap-css.rb +0 -11
  543. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/lib/select2-bootstrap.less +0 -480
  544. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/lib/select2-bootstrap.scss +0 -480
  545. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/lib/select2-bootstrap/version.rb +0 -9
  546. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/package.json +0 -48
  547. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/select2-bootstrap-css.gemspec +0 -22
  548. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/select2-bootstrap.css +0 -495
  549. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/select2-bootstrap.min.css +0 -1
  550. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/test/less_test.js +0 -25
  551. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/test/scss_test.js +0 -25
  552. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/test/support/less.patch +0 -416
  553. data/vendor/assets/components/locomotive_sources/select2-bootstrap-css/test/support/scss.patch +0 -4
  554. data/vendor/assets/components/locomotive_sources/select2/CONTRIBUTING.md +0 -204
  555. data/vendor/assets/components/locomotive_sources/select2/Gruntfile.js +0 -370
  556. data/vendor/assets/components/locomotive_sources/select2/LICENSE.md +0 -21
  557. data/vendor/assets/components/locomotive_sources/select2/README.md +0 -105
  558. data/vendor/assets/components/locomotive_sources/select2/bower.json +0 -12
  559. data/vendor/assets/components/locomotive_sources/select2/component.json +0 -19
  560. data/vendor/assets/components/locomotive_sources/select2/composer.json +0 -25
  561. data/vendor/assets/components/locomotive_sources/select2/dist/css/select2.css +0 -482
  562. data/vendor/assets/components/locomotive_sources/select2/dist/css/select2.min.css +0 -1
  563. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/ar.js +0 -3
  564. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/az.js +0 -3
  565. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/bg.js +0 -3
  566. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/ca.js +0 -3
  567. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/cs.js +0 -3
  568. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/da.js +0 -3
  569. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/de.js +0 -3
  570. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/en.js +0 -3
  571. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/es.js +0 -3
  572. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/et.js +0 -3
  573. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/eu.js +0 -3
  574. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/fa.js +0 -3
  575. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/fi.js +0 -3
  576. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/fr.js +0 -3
  577. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/gl.js +0 -3
  578. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/he.js +0 -3
  579. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/hi.js +0 -3
  580. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/hr.js +0 -3
  581. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/hu.js +0 -3
  582. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/id.js +0 -3
  583. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/is.js +0 -3
  584. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/it.js +0 -3
  585. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/ja.js +0 -3
  586. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/ko.js +0 -3
  587. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/lt.js +0 -3
  588. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/lv.js +0 -3
  589. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/mk.js +0 -3
  590. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/ms.js +0 -3
  591. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/nb.js +0 -3
  592. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/nl.js +0 -3
  593. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/pl.js +0 -3
  594. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/pt-BR.js +0 -3
  595. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/pt.js +0 -3
  596. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/ro.js +0 -3
  597. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/ru.js +0 -3
  598. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/sk.js +0 -3
  599. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/sr-Cyrl.js +0 -3
  600. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/sr.js +0 -3
  601. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/sv.js +0 -3
  602. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/th.js +0 -3
  603. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/tr.js +0 -3
  604. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/uk.js +0 -3
  605. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/vi.js +0 -3
  606. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/zh-CN.js +0 -3
  607. data/vendor/assets/components/locomotive_sources/select2/dist/js/i18n/zh-TW.js +0 -3
  608. data/vendor/assets/components/locomotive_sources/select2/dist/js/select2.full.js +0 -6281
  609. data/vendor/assets/components/locomotive_sources/select2/dist/js/select2.full.min.js +0 -3
  610. data/vendor/assets/components/locomotive_sources/select2/dist/js/select2.js +0 -5571
  611. data/vendor/assets/components/locomotive_sources/select2/dist/js/select2.min.js +0 -2
  612. data/vendor/assets/components/locomotive_sources/select2/docs/README.md +0 -38
  613. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/basics.html +0 -65
  614. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/data.html +0 -128
  615. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/disabled-mode.html +0 -43
  616. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/disabled-results.html +0 -32
  617. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/hide-search.html +0 -25
  618. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/localization-rtl-diacritics.html +0 -90
  619. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/matcher.html +0 -43
  620. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/multiple-max.html +0 -28
  621. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/placeholders.html +0 -37
  622. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/programmatic-control.html +0 -156
  623. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/tags.html +0 -33
  624. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/themes-templating-responsive-design.html +0 -111
  625. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/examples/tokenizer.html +0 -36
  626. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/footer.html +0 -20
  627. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/ga.html +0 -9
  628. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/head.html +0 -19
  629. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/js-source-states.html +0 -62
  630. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/nav/announcements-4.0.html +0 -26
  631. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/nav/examples.html +0 -96
  632. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/nav/options-old.html +0 -55
  633. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/nav/options.html +0 -77
  634. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/navigation.html +0 -53
  635. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/notice-previous.html +0 -7
  636. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options-old/adapters.html +0 -209
  637. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options-old/backwards-compatibility.html +0 -200
  638. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options-old/core-options.html +0 -790
  639. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options-old/dropdown.html +0 -308
  640. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options-old/events.html +0 -50
  641. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options-old/setting-default-options.html +0 -37
  642. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/compatibility.html +0 -10
  643. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/compatibility/initial-selection.html +0 -50
  644. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/compatibility/introduction.html +0 -18
  645. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/compatibility/matcher.html +0 -50
  646. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/compatibility/query-function.html +0 -50
  647. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/compatibility/text-input.html +0 -32
  648. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/core.html +0 -9
  649. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/core/amd-support.html +0 -38
  650. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/core/data-attributes.html +0 -72
  651. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/core/options.html +0 -58
  652. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/data.html +0 -9
  653. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/data/ajax.html +0 -109
  654. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/data/array.html +0 -53
  655. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/data/select.html +0 -57
  656. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/dropdown.html +0 -9
  657. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/dropdown/filtering.html +0 -23
  658. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/dropdown/placement.html +0 -29
  659. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/dropdown/selections.html +0 -17
  660. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/events.html +0 -8
  661. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/events/internal.html +0 -9
  662. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/events/jquery.html +0 -29
  663. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/introduction.html +0 -9
  664. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/not-written.html +0 -3
  665. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/selections.html +0 -10
  666. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/selections/clearing-selections.html +0 -17
  667. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/selections/multiple.html +0 -17
  668. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/selections/placeholder.html +0 -53
  669. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/options/selections/templating.html +0 -23
  670. data/vendor/assets/components/locomotive_sources/select2/docs/_includes/social-buttons.html +0 -10
  671. data/vendor/assets/components/locomotive_sources/select2/docs/_layouts/default.html +0 -57
  672. data/vendor/assets/components/locomotive_sources/select2/docs/_layouts/home.html +0 -23
  673. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_alert.scss +0 -47
  674. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_anchorjs.scss +0 -27
  675. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_buttons.scss +0 -20
  676. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_code.scss +0 -16
  677. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_examples.scss +0 -90
  678. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_featurette.scss +0 -16
  679. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_footer.scss +0 -42
  680. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_hamburger.scss +0 -49
  681. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_home.scss +0 -31
  682. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_jumbotron.scss +0 -24
  683. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_layout.scss +0 -14
  684. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_nav.scss +0 -58
  685. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_prettify.scss +0 -51
  686. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_result-repository.scss +0 -62
  687. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_sidenav.scss +0 -152
  688. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_social.scss +0 -35
  689. data/vendor/assets/components/locomotive_sources/select2/docs/_sass/_typography.scss +0 -6
  690. data/vendor/assets/components/locomotive_sources/select2/docs/announcements-4.0.html +0 -752
  691. data/vendor/assets/components/locomotive_sources/select2/docs/community.html +0 -154
  692. data/vendor/assets/components/locomotive_sources/select2/docs/css/s2-docs.scss +0 -19
  693. data/vendor/assets/components/locomotive_sources/select2/docs/examples.html +0 -254
  694. data/vendor/assets/components/locomotive_sources/select2/docs/images/logo.png +0 -0
  695. data/vendor/assets/components/locomotive_sources/select2/docs/index.html +0 -238
  696. data/vendor/assets/components/locomotive_sources/select2/docs/options-old.html +0 -37
  697. data/vendor/assets/components/locomotive_sources/select2/docs/options.html +0 -37
  698. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/css/bootstrap.min.css +0 -5
  699. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/css/font-awesome.min.css +0 -4
  700. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/fonts/FontAwesome.otf +0 -0
  701. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/fonts/fontawesome-webfont.eot +0 -0
  702. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/fonts/fontawesome-webfont.svg +0 -655
  703. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/fonts/fontawesome-webfont.ttf +0 -0
  704. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/fonts/fontawesome-webfont.woff +0 -0
  705. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/fonts/fontawesome-webfont.woff2 +0 -0
  706. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ak.png +0 -0
  707. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/al.png +0 -0
  708. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ar.png +0 -0
  709. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/az.png +0 -0
  710. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ca.png +0 -0
  711. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/co.png +0 -0
  712. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ct.png +0 -0
  713. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/de.png +0 -0
  714. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/fl.png +0 -0
  715. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ga.png +0 -0
  716. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/hi.png +0 -0
  717. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ia.png +0 -0
  718. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/id.png +0 -0
  719. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/il.png +0 -0
  720. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/in.png +0 -0
  721. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ks.png +0 -0
  722. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ky.png +0 -0
  723. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/la.png +0 -0
  724. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ma.png +0 -0
  725. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/md.png +0 -0
  726. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/me.png +0 -0
  727. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/mi.png +0 -0
  728. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/mn.png +0 -0
  729. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/mo.png +0 -0
  730. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ms.png +0 -0
  731. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/mt.png +0 -0
  732. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/nc.png +0 -0
  733. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/nd.png +0 -0
  734. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ne.png +0 -0
  735. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/nh.png +0 -0
  736. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/nj.png +0 -0
  737. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/nm.png +0 -0
  738. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/nv.png +0 -0
  739. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ny.png +0 -0
  740. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/oh.png +0 -0
  741. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ok.png +0 -0
  742. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/or.png +0 -0
  743. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/pa.png +0 -0
  744. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ri.png +0 -0
  745. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/sc.png +0 -0
  746. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/sd.png +0 -0
  747. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/tn.png +0 -0
  748. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/tx.png +0 -0
  749. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/ut.png +0 -0
  750. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/va.png +0 -0
  751. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/vt.png +0 -0
  752. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/wa.png +0 -0
  753. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/wi.png +0 -0
  754. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/wv.png +0 -0
  755. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/images/flags/wy.png +0 -0
  756. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/js/anchor.min.js +0 -6
  757. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/js/bootstrap.min.js +0 -6
  758. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/js/jquery.min.js +0 -4
  759. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/js/placeholders.jquery.min.js +0 -2
  760. data/vendor/assets/components/locomotive_sources/select2/docs/vendor/js/prettify.min.js +0 -28
  761. data/vendor/assets/components/locomotive_sources/select2/package.json +0 -66
  762. data/vendor/assets/components/locomotive_sources/select2/select2.jquery.json +0 -32
  763. data/vendor/assets/components/locomotive_sources/select2/src/js/banner.end.js +0 -6
  764. data/vendor/assets/components/locomotive_sources/select2/src/js/banner.start.js +0 -6
  765. data/vendor/assets/components/locomotive_sources/select2/src/js/jquery.mousewheel.shim.js +0 -6
  766. data/vendor/assets/components/locomotive_sources/select2/src/js/jquery.select2.js +0 -58
  767. data/vendor/assets/components/locomotive_sources/select2/src/js/jquery.shim.js +0 -14
  768. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/compat/containerCss.js +0 -56
  769. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/compat/dropdownCss.js +0 -56
  770. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/compat/initSelection.js +0 -42
  771. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/compat/inputData.js +0 -127
  772. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/compat/matcher.js +0 -42
  773. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/compat/query.js +0 -26
  774. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/compat/utils.js +0 -43
  775. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/core.js +0 -545
  776. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/data/ajax.js +0 -101
  777. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/data/array.js +0 -79
  778. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/data/base.js +0 -40
  779. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/data/maximumInputLength.js +0 -31
  780. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/data/maximumSelectionLength.js +0 -31
  781. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/data/minimumInputLength.js +0 -30
  782. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/data/select.js +0 -285
  783. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/data/tags.js +0 -119
  784. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/data/tokenizer.js +0 -93
  785. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/defaults.js +0 -396
  786. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/diacritics.js +0 -847
  787. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown.js +0 -42
  788. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown/attachBody.js +0 -216
  789. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown/attachContainer.js +0 -18
  790. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown/closeOnSelect.js +0 -32
  791. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown/hidePlaceholder.js +0 -42
  792. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown/infiniteScroll.js +0 -89
  793. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown/minimumResultsForSearch.js +0 -39
  794. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown/search.js +0 -95
  795. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown/selectOnClose.js +0 -40
  796. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/dropdown/stopPropagation.js +0 -38
  797. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/ar.js +0 -36
  798. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/az.js +0 -27
  799. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/bg.js +0 -47
  800. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/ca.js +0 -52
  801. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/cs.js +0 -61
  802. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/da.js +0 -40
  803. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/de.js +0 -37
  804. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/en.js +0 -44
  805. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/es.js +0 -52
  806. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/et.js +0 -53
  807. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/eu.js +0 -51
  808. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/fa.js +0 -38
  809. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/fi.js +0 -27
  810. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/fr.js +0 -46
  811. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/gl.js +0 -51
  812. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/he.js +0 -56
  813. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/hi.js +0 -39
  814. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/hr.js +0 -44
  815. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/hu.js +0 -27
  816. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/id.js +0 -30
  817. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/is.js +0 -41
  818. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/it.js +0 -48
  819. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/ja.js +0 -36
  820. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/ko.js +0 -36
  821. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/lt.js +0 -51
  822. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/lv.js +0 -51
  823. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/mk.js +0 -47
  824. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/ms.js +0 -30
  825. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/nb.js +0 -35
  826. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/nl.js +0 -43
  827. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/pl.js +0 -45
  828. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/pt-BR.js +0 -46
  829. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/pt.js +0 -40
  830. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/ro.js +0 -48
  831. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/ru.js +0 -58
  832. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/sk.js +0 -56
  833. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/sr-Cyrl.js +0 -55
  834. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/sr.js +0 -55
  835. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/sv.js +0 -37
  836. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/th.js +0 -33
  837. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/tr.js +0 -33
  838. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/uk.js +0 -43
  839. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/vi.js +0 -37
  840. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/zh-CN.js +0 -36
  841. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/i18n/zh-TW.js +0 -33
  842. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/keys.js +0 -25
  843. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/options.js +0 -122
  844. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/results.js +0 -516
  845. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/selection/allowClear.js +0 -97
  846. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/selection/base.js +0 -158
  847. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/selection/clickMask.js +0 -29
  848. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/selection/eventRelay.js +0 -45
  849. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/selection/multiple.js +0 -109
  850. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/selection/placeholder.js +0 -49
  851. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/selection/search.js +0 -222
  852. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/selection/single.js +0 -93
  853. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/selection/stopPropagation.js +0 -38
  854. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/translation.js +0 -36
  855. data/vendor/assets/components/locomotive_sources/select2/src/js/select2/utils.js +0 -262
  856. data/vendor/assets/components/locomotive_sources/select2/src/js/wrapper.end.js +0 -12
  857. data/vendor/assets/components/locomotive_sources/select2/src/js/wrapper.start.js +0 -23
  858. data/vendor/assets/components/locomotive_sources/select2/src/scss/_dropdown.scss +0 -73
  859. data/vendor/assets/components/locomotive_sources/select2/src/scss/_multiple.scss +0 -35
  860. data/vendor/assets/components/locomotive_sources/select2/src/scss/_single.scss +0 -34
  861. data/vendor/assets/components/locomotive_sources/select2/src/scss/core.scss +0 -48
  862. data/vendor/assets/components/locomotive_sources/select2/src/scss/mixins/_gradients.scss +0 -13
  863. data/vendor/assets/components/locomotive_sources/select2/src/scss/theme/classic/_defaults.scss +0 -34
  864. data/vendor/assets/components/locomotive_sources/select2/src/scss/theme/classic/_multiple.scss +0 -93
  865. data/vendor/assets/components/locomotive_sources/select2/src/scss/theme/classic/_single.scss +0 -124
  866. data/vendor/assets/components/locomotive_sources/select2/src/scss/theme/classic/layout.scss +0 -64
  867. data/vendor/assets/components/locomotive_sources/select2/src/scss/theme/default/_multiple.scss +0 -94
  868. data/vendor/assets/components/locomotive_sources/select2/src/scss/theme/default/_single.scss +0 -83
  869. data/vendor/assets/components/locomotive_sources/select2/src/scss/theme/default/layout.scss +0 -97
  870. data/vendor/assets/components/locomotive_sources/select2/tests/a11y/search-tests.js +0 -51
  871. data/vendor/assets/components/locomotive_sources/select2/tests/a11y/selection-tests.js +0 -154
  872. data/vendor/assets/components/locomotive_sources/select2/tests/data/array-tests.js +0 -290
  873. data/vendor/assets/components/locomotive_sources/select2/tests/data/base-tests.js +0 -29
  874. data/vendor/assets/components/locomotive_sources/select2/tests/data/inputData-tests.js +0 -158
  875. data/vendor/assets/components/locomotive_sources/select2/tests/data/maximumInputLength-tests.js +0 -138
  876. data/vendor/assets/components/locomotive_sources/select2/tests/data/maximumSelectionLength-tests.js +0 -202
  877. data/vendor/assets/components/locomotive_sources/select2/tests/data/minimumInputLength-tests.js +0 -138
  878. data/vendor/assets/components/locomotive_sources/select2/tests/data/select-tests.js +0 -457
  879. data/vendor/assets/components/locomotive_sources/select2/tests/data/tags-tests.js +0 -241
  880. data/vendor/assets/components/locomotive_sources/select2/tests/data/tokenizer-tests.js +0 -171
  881. data/vendor/assets/components/locomotive_sources/select2/tests/dropdown/dropdownCss-tests.js +0 -104
  882. data/vendor/assets/components/locomotive_sources/select2/tests/dropdown/selectOnClose-tests.js +0 -137
  883. data/vendor/assets/components/locomotive_sources/select2/tests/dropdown/stopPropagation-tests.js +0 -33
  884. data/vendor/assets/components/locomotive_sources/select2/tests/helpers.js +0 -46
  885. data/vendor/assets/components/locomotive_sources/select2/tests/integration.html +0 -19
  886. data/vendor/assets/components/locomotive_sources/select2/tests/integration/select2-methods.js +0 -139
  887. data/vendor/assets/components/locomotive_sources/select2/tests/options/data-tests.js +0 -44
  888. data/vendor/assets/components/locomotive_sources/select2/tests/options/deprecated-tests.js +0 -250
  889. data/vendor/assets/components/locomotive_sources/select2/tests/options/translation-tests.js +0 -28
  890. data/vendor/assets/components/locomotive_sources/select2/tests/options/width-tests.js +0 -66
  891. data/vendor/assets/components/locomotive_sources/select2/tests/selection/allowClear-tests.js +0 -218
  892. data/vendor/assets/components/locomotive_sources/select2/tests/selection/containerCss-tests.js +0 -104
  893. data/vendor/assets/components/locomotive_sources/select2/tests/selection/multiple-tests.js +0 -149
  894. data/vendor/assets/components/locomotive_sources/select2/tests/selection/placeholder-tests.js +0 -74
  895. data/vendor/assets/components/locomotive_sources/select2/tests/selection/search-tests.js +0 -139
  896. data/vendor/assets/components/locomotive_sources/select2/tests/selection/single-tests.js +0 -117
  897. data/vendor/assets/components/locomotive_sources/select2/tests/selection/stopPropagation-tests.js +0 -33
  898. data/vendor/assets/components/locomotive_sources/select2/tests/unit.html +0 -91
  899. data/vendor/assets/components/locomotive_sources/select2/tests/utils/decorator-tests.js +0 -189
  900. data/vendor/assets/components/locomotive_sources/select2/tests/utils/escapeMarkup-tests.js +0 -36
  901. data/vendor/assets/components/locomotive_sources/select2/tests/vendor/jquery-1.7.2.js +0 -9404
  902. data/vendor/assets/components/locomotive_sources/select2/tests/vendor/qunit-1.14.0.css +0 -237
  903. data/vendor/assets/components/locomotive_sources/select2/tests/vendor/qunit-1.14.0.js +0 -2288
  904. data/vendor/assets/components/locomotive_sources/select2/vendor/jquery-2.1.0.js +0 -9111
  905. data/vendor/assets/components/locomotive_sources/underscore/LICENSE +0 -23
  906. data/vendor/assets/components/locomotive_sources/underscore/README.md +0 -22
  907. data/vendor/assets/components/locomotive_sources/underscore/bower.json +0 -7
  908. data/vendor/assets/components/locomotive_sources/underscore/underscore-min.js +0 -6
  909. data/vendor/assets/components/locomotive_sources/underscore/underscore-min.map +0 -1
  910. data/vendor/assets/components/locomotive_sources/underscore/underscore.js +0 -1548
@@ -1,23 +0,0 @@
1
- Copyright (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative
2
- Reporters & Editors
3
-
4
- Permission is hereby granted, free of charge, to any person
5
- obtaining a copy of this software and associated documentation
6
- files (the "Software"), to deal in the Software without
7
- restriction, including without limitation the rights to use,
8
- copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the
10
- Software is furnished to do so, subject to the following
11
- conditions:
12
-
13
- The above copyright notice and this permission notice shall be
14
- included in all copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
18
- OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
20
- HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
21
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
22
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23
- OTHER DEALINGS IN THE SOFTWARE.
@@ -1,22 +0,0 @@
1
- __
2
- /\ \ __
3
- __ __ ___ \_\ \ __ _ __ ____ ___ ___ _ __ __ /\_\ ____
4
- /\ \/\ \ /' _ `\ /'_ \ /'__`\/\ __\/ ,__\ / ___\ / __`\/\ __\/'__`\ \/\ \ /',__\
5
- \ \ \_\ \/\ \/\ \/\ \ \ \/\ __/\ \ \//\__, `\/\ \__//\ \ \ \ \ \//\ __/ __ \ \ \/\__, `\
6
- \ \____/\ \_\ \_\ \___,_\ \____\\ \_\\/\____/\ \____\ \____/\ \_\\ \____\/\_\ _\ \ \/\____/
7
- \/___/ \/_/\/_/\/__,_ /\/____/ \/_/ \/___/ \/____/\/___/ \/_/ \/____/\/_//\ \_\ \/___/
8
- \ \____/
9
- \/___/
10
-
11
- Underscore.js is a utility-belt library for JavaScript that provides
12
- support for the usual functional suspects (each, map, reduce, filter...)
13
- without extending any core JavaScript objects.
14
-
15
- For Docs, License, Tests, and pre-packed downloads, see:
16
- http://underscorejs.org
17
-
18
- Underscore is an open-sourced component of DocumentCloud:
19
- https://github.com/documentcloud
20
-
21
- Many thanks to our contributors:
22
- https://github.com/jashkenas/underscore/contributors
@@ -1,7 +0,0 @@
1
- {
2
- "name": "underscore",
3
- "version": "1.8.3",
4
- "main": "underscore.js",
5
- "keywords": ["util", "functional", "server", "client", "browser"],
6
- "ignore" : ["docs", "test", "*.yml", "CNAME", "index.html", "favicon.ico", "CONTRIBUTING.md", ".*", "component.json", "package.json", "karma.*"]
7
- }
@@ -1,6 +0,0 @@
1
- // Underscore.js 1.8.3
2
- // http://underscorejs.org
3
- // (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
4
- // Underscore may be freely distributed under the MIT license.
5
- (function(){function n(n){function t(t,r,e,u,i,o){for(;i>=0&&o>i;i+=n){var a=u?u[i]:i;e=r(e,t[a],a,t)}return e}return function(r,e,u,i){e=b(e,i,4);var o=!k(r)&&m.keys(r),a=(o||r).length,c=n>0?0:a-1;return arguments.length<3&&(u=r[o?o[c]:c],c+=n),t(r,e,u,o,c,a)}}function t(n){return function(t,r,e){r=x(r,e);for(var u=O(t),i=n>0?0:u-1;i>=0&&u>i;i+=n)if(r(t[i],i,t))return i;return-1}}function r(n,t,r){return function(e,u,i){var o=0,a=O(e);if("number"==typeof i)n>0?o=i>=0?i:Math.max(i+a,o):a=i>=0?Math.min(i+1,a):i+a+1;else if(r&&i&&a)return i=r(e,u),e[i]===u?i:-1;if(u!==u)return i=t(l.call(e,o,a),m.isNaN),i>=0?i+o:-1;for(i=n>0?o:a-1;i>=0&&a>i;i+=n)if(e[i]===u)return i;return-1}}function e(n,t){var r=I.length,e=n.constructor,u=m.isFunction(e)&&e.prototype||a,i="constructor";for(m.has(n,i)&&!m.contains(t,i)&&t.push(i);r--;)i=I[r],i in n&&n[i]!==u[i]&&!m.contains(t,i)&&t.push(i)}var u=this,i=u._,o=Array.prototype,a=Object.prototype,c=Function.prototype,f=o.push,l=o.slice,s=a.toString,p=a.hasOwnProperty,h=Array.isArray,v=Object.keys,g=c.bind,y=Object.create,d=function(){},m=function(n){return n instanceof m?n:this instanceof m?void(this._wrapped=n):new m(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=m),exports._=m):u._=m,m.VERSION="1.8.3";var b=function(n,t,r){if(t===void 0)return n;switch(null==r?3:r){case 1:return function(r){return n.call(t,r)};case 2:return function(r,e){return n.call(t,r,e)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,i){return n.call(t,r,e,u,i)}}return function(){return n.apply(t,arguments)}},x=function(n,t,r){return null==n?m.identity:m.isFunction(n)?b(n,t,r):m.isObject(n)?m.matcher(n):m.property(n)};m.iteratee=function(n,t){return x(n,t,1/0)};var _=function(n,t){return function(r){var e=arguments.length;if(2>e||null==r)return r;for(var u=1;e>u;u++)for(var i=arguments[u],o=n(i),a=o.length,c=0;a>c;c++){var f=o[c];t&&r[f]!==void 0||(r[f]=i[f])}return r}},j=function(n){if(!m.isObject(n))return{};if(y)return y(n);d.prototype=n;var t=new d;return d.prototype=null,t},w=function(n){return function(t){return null==t?void 0:t[n]}},A=Math.pow(2,53)-1,O=w("length"),k=function(n){var t=O(n);return"number"==typeof t&&t>=0&&A>=t};m.each=m.forEach=function(n,t,r){t=b(t,r);var e,u;if(k(n))for(e=0,u=n.length;u>e;e++)t(n[e],e,n);else{var i=m.keys(n);for(e=0,u=i.length;u>e;e++)t(n[i[e]],i[e],n)}return n},m.map=m.collect=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=Array(u),o=0;u>o;o++){var a=e?e[o]:o;i[o]=t(n[a],a,n)}return i},m.reduce=m.foldl=m.inject=n(1),m.reduceRight=m.foldr=n(-1),m.find=m.detect=function(n,t,r){var e;return e=k(n)?m.findIndex(n,t,r):m.findKey(n,t,r),e!==void 0&&e!==-1?n[e]:void 0},m.filter=m.select=function(n,t,r){var e=[];return t=x(t,r),m.each(n,function(n,r,u){t(n,r,u)&&e.push(n)}),e},m.reject=function(n,t,r){return m.filter(n,m.negate(x(t)),r)},m.every=m.all=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(!t(n[o],o,n))return!1}return!0},m.some=m.any=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(t(n[o],o,n))return!0}return!1},m.contains=m.includes=m.include=function(n,t,r,e){return k(n)||(n=m.values(n)),("number"!=typeof r||e)&&(r=0),m.indexOf(n,t,r)>=0},m.invoke=function(n,t){var r=l.call(arguments,2),e=m.isFunction(t);return m.map(n,function(n){var u=e?t:n[t];return null==u?u:u.apply(n,r)})},m.pluck=function(n,t){return m.map(n,m.property(t))},m.where=function(n,t){return m.filter(n,m.matcher(t))},m.findWhere=function(n,t){return m.find(n,m.matcher(t))},m.max=function(n,t,r){var e,u,i=-1/0,o=-1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],e>i&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(u>o||u===-1/0&&i===-1/0)&&(i=n,o=u)});return i},m.min=function(n,t,r){var e,u,i=1/0,o=1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],i>e&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(o>u||1/0===u&&1/0===i)&&(i=n,o=u)});return i},m.shuffle=function(n){for(var t,r=k(n)?n:m.values(n),e=r.length,u=Array(e),i=0;e>i;i++)t=m.random(0,i),t!==i&&(u[i]=u[t]),u[t]=r[i];return u},m.sample=function(n,t,r){return null==t||r?(k(n)||(n=m.values(n)),n[m.random(n.length-1)]):m.shuffle(n).slice(0,Math.max(0,t))},m.sortBy=function(n,t,r){return t=x(t,r),m.pluck(m.map(n,function(n,r,e){return{value:n,index:r,criteria:t(n,r,e)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={};return r=x(r,e),m.each(t,function(e,i){var o=r(e,i,t);n(u,e,o)}),u}};m.groupBy=F(function(n,t,r){m.has(n,r)?n[r].push(t):n[r]=[t]}),m.indexBy=F(function(n,t,r){n[r]=t}),m.countBy=F(function(n,t,r){m.has(n,r)?n[r]++:n[r]=1}),m.toArray=function(n){return n?m.isArray(n)?l.call(n):k(n)?m.map(n,m.identity):m.values(n):[]},m.size=function(n){return null==n?0:k(n)?n.length:m.keys(n).length},m.partition=function(n,t,r){t=x(t,r);var e=[],u=[];return m.each(n,function(n,r,i){(t(n,r,i)?e:u).push(n)}),[e,u]},m.first=m.head=m.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:m.initial(n,n.length-t)},m.initial=function(n,t,r){return l.call(n,0,Math.max(0,n.length-(null==t||r?1:t)))},m.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:m.rest(n,Math.max(0,n.length-t))},m.rest=m.tail=m.drop=function(n,t,r){return l.call(n,null==t||r?1:t)},m.compact=function(n){return m.filter(n,m.identity)};var S=function(n,t,r,e){for(var u=[],i=0,o=e||0,a=O(n);a>o;o++){var c=n[o];if(k(c)&&(m.isArray(c)||m.isArguments(c))){t||(c=S(c,t,r));var f=0,l=c.length;for(u.length+=l;l>f;)u[i++]=c[f++]}else r||(u[i++]=c)}return u};m.flatten=function(n,t){return S(n,t,!1)},m.without=function(n){return m.difference(n,l.call(arguments,1))},m.uniq=m.unique=function(n,t,r,e){m.isBoolean(t)||(e=r,r=t,t=!1),null!=r&&(r=x(r,e));for(var u=[],i=[],o=0,a=O(n);a>o;o++){var c=n[o],f=r?r(c,o,n):c;t?(o&&i===f||u.push(c),i=f):r?m.contains(i,f)||(i.push(f),u.push(c)):m.contains(u,c)||u.push(c)}return u},m.union=function(){return m.uniq(S(arguments,!0,!0))},m.intersection=function(n){for(var t=[],r=arguments.length,e=0,u=O(n);u>e;e++){var i=n[e];if(!m.contains(t,i)){for(var o=1;r>o&&m.contains(arguments[o],i);o++);o===r&&t.push(i)}}return t},m.difference=function(n){var t=S(arguments,!0,!0,1);return m.filter(n,function(n){return!m.contains(t,n)})},m.zip=function(){return m.unzip(arguments)},m.unzip=function(n){for(var t=n&&m.max(n,O).length||0,r=Array(t),e=0;t>e;e++)r[e]=m.pluck(n,e);return r},m.object=function(n,t){for(var r={},e=0,u=O(n);u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},m.findIndex=t(1),m.findLastIndex=t(-1),m.sortedIndex=function(n,t,r,e){r=x(r,e,1);for(var u=r(t),i=0,o=O(n);o>i;){var a=Math.floor((i+o)/2);r(n[a])<u?i=a+1:o=a}return i},m.indexOf=r(1,m.findIndex,m.sortedIndex),m.lastIndexOf=r(-1,m.findLastIndex),m.range=function(n,t,r){null==t&&(t=n||0,n=0),r=r||1;for(var e=Math.max(Math.ceil((t-n)/r),0),u=Array(e),i=0;e>i;i++,n+=r)u[i]=n;return u};var E=function(n,t,r,e,u){if(!(e instanceof t))return n.apply(r,u);var i=j(n.prototype),o=n.apply(i,u);return m.isObject(o)?o:i};m.bind=function(n,t){if(g&&n.bind===g)return g.apply(n,l.call(arguments,1));if(!m.isFunction(n))throw new TypeError("Bind must be called on a function");var r=l.call(arguments,2),e=function(){return E(n,e,t,this,r.concat(l.call(arguments)))};return e},m.partial=function(n){var t=l.call(arguments,1),r=function(){for(var e=0,u=t.length,i=Array(u),o=0;u>o;o++)i[o]=t[o]===m?arguments[e++]:t[o];for(;e<arguments.length;)i.push(arguments[e++]);return E(n,r,this,this,i)};return r},m.bindAll=function(n){var t,r,e=arguments.length;if(1>=e)throw new Error("bindAll must be passed function names");for(t=1;e>t;t++)r=arguments[t],n[r]=m.bind(n[r],n);return n},m.memoize=function(n,t){var r=function(e){var u=r.cache,i=""+(t?t.apply(this,arguments):e);return m.has(u,i)||(u[i]=n.apply(this,arguments)),u[i]};return r.cache={},r},m.delay=function(n,t){var r=l.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},m.defer=m.partial(m.delay,m,1),m.throttle=function(n,t,r){var e,u,i,o=null,a=0;r||(r={});var c=function(){a=r.leading===!1?0:m.now(),o=null,i=n.apply(e,u),o||(e=u=null)};return function(){var f=m.now();a||r.leading!==!1||(a=f);var l=t-(f-a);return e=this,u=arguments,0>=l||l>t?(o&&(clearTimeout(o),o=null),a=f,i=n.apply(e,u),o||(e=u=null)):o||r.trailing===!1||(o=setTimeout(c,l)),i}},m.debounce=function(n,t,r){var e,u,i,o,a,c=function(){var f=m.now()-o;t>f&&f>=0?e=setTimeout(c,t-f):(e=null,r||(a=n.apply(i,u),e||(i=u=null)))};return function(){i=this,u=arguments,o=m.now();var f=r&&!e;return e||(e=setTimeout(c,t)),f&&(a=n.apply(i,u),i=u=null),a}},m.wrap=function(n,t){return m.partial(t,n)},m.negate=function(n){return function(){return!n.apply(this,arguments)}},m.compose=function(){var n=arguments,t=n.length-1;return function(){for(var r=t,e=n[t].apply(this,arguments);r--;)e=n[r].call(this,e);return e}},m.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},m.before=function(n,t){var r;return function(){return--n>0&&(r=t.apply(this,arguments)),1>=n&&(t=null),r}},m.once=m.partial(m.before,2);var M=!{toString:null}.propertyIsEnumerable("toString"),I=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];m.keys=function(n){if(!m.isObject(n))return[];if(v)return v(n);var t=[];for(var r in n)m.has(n,r)&&t.push(r);return M&&e(n,t),t},m.allKeys=function(n){if(!m.isObject(n))return[];var t=[];for(var r in n)t.push(r);return M&&e(n,t),t},m.values=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},m.mapObject=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=u.length,o={},a=0;i>a;a++)e=u[a],o[e]=t(n[e],e,n);return o},m.pairs=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},m.invert=function(n){for(var t={},r=m.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},m.functions=m.methods=function(n){var t=[];for(var r in n)m.isFunction(n[r])&&t.push(r);return t.sort()},m.extend=_(m.allKeys),m.extendOwn=m.assign=_(m.keys),m.findKey=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=0,o=u.length;o>i;i++)if(e=u[i],t(n[e],e,n))return e},m.pick=function(n,t,r){var e,u,i={},o=n;if(null==o)return i;m.isFunction(t)?(u=m.allKeys(o),e=b(t,r)):(u=S(arguments,!1,!1,1),e=function(n,t,r){return t in r},o=Object(o));for(var a=0,c=u.length;c>a;a++){var f=u[a],l=o[f];e(l,f,o)&&(i[f]=l)}return i},m.omit=function(n,t,r){if(m.isFunction(t))t=m.negate(t);else{var e=m.map(S(arguments,!1,!1,1),String);t=function(n,t){return!m.contains(e,t)}}return m.pick(n,t,r)},m.defaults=_(m.allKeys,!0),m.create=function(n,t){var r=j(n);return t&&m.extendOwn(r,t),r},m.clone=function(n){return m.isObject(n)?m.isArray(n)?n.slice():m.extend({},n):n},m.tap=function(n,t){return t(n),n},m.isMatch=function(n,t){var r=m.keys(t),e=r.length;if(null==n)return!e;for(var u=Object(n),i=0;e>i;i++){var o=r[i];if(t[o]!==u[o]||!(o in u))return!1}return!0};var N=function(n,t,r,e){if(n===t)return 0!==n||1/n===1/t;if(null==n||null==t)return n===t;n instanceof m&&(n=n._wrapped),t instanceof m&&(t=t._wrapped);var u=s.call(n);if(u!==s.call(t))return!1;switch(u){case"[object RegExp]":case"[object String]":return""+n==""+t;case"[object Number]":return+n!==+n?+t!==+t:0===+n?1/+n===1/t:+n===+t;case"[object Date]":case"[object Boolean]":return+n===+t}var i="[object Array]"===u;if(!i){if("object"!=typeof n||"object"!=typeof t)return!1;var o=n.constructor,a=t.constructor;if(o!==a&&!(m.isFunction(o)&&o instanceof o&&m.isFunction(a)&&a instanceof a)&&"constructor"in n&&"constructor"in t)return!1}r=r||[],e=e||[];for(var c=r.length;c--;)if(r[c]===n)return e[c]===t;if(r.push(n),e.push(t),i){if(c=n.length,c!==t.length)return!1;for(;c--;)if(!N(n[c],t[c],r,e))return!1}else{var f,l=m.keys(n);if(c=l.length,m.keys(t).length!==c)return!1;for(;c--;)if(f=l[c],!m.has(t,f)||!N(n[f],t[f],r,e))return!1}return r.pop(),e.pop(),!0};m.isEqual=function(n,t){return N(n,t)},m.isEmpty=function(n){return null==n?!0:k(n)&&(m.isArray(n)||m.isString(n)||m.isArguments(n))?0===n.length:0===m.keys(n).length},m.isElement=function(n){return!(!n||1!==n.nodeType)},m.isArray=h||function(n){return"[object Array]"===s.call(n)},m.isObject=function(n){var t=typeof n;return"function"===t||"object"===t&&!!n},m.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(n){m["is"+n]=function(t){return s.call(t)==="[object "+n+"]"}}),m.isArguments(arguments)||(m.isArguments=function(n){return m.has(n,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(m.isFunction=function(n){return"function"==typeof n||!1}),m.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},m.isNaN=function(n){return m.isNumber(n)&&n!==+n},m.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"===s.call(n)},m.isNull=function(n){return null===n},m.isUndefined=function(n){return n===void 0},m.has=function(n,t){return null!=n&&p.call(n,t)},m.noConflict=function(){return u._=i,this},m.identity=function(n){return n},m.constant=function(n){return function(){return n}},m.noop=function(){},m.property=w,m.propertyOf=function(n){return null==n?function(){}:function(t){return n[t]}},m.matcher=m.matches=function(n){return n=m.extendOwn({},n),function(t){return m.isMatch(t,n)}},m.times=function(n,t,r){var e=Array(Math.max(0,n));t=b(t,r,1);for(var u=0;n>u;u++)e[u]=t(u);return e},m.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},m.now=Date.now||function(){return(new Date).getTime()};var B={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},T=m.invert(B),R=function(n){var t=function(t){return n[t]},r="(?:"+m.keys(n).join("|")+")",e=RegExp(r),u=RegExp(r,"g");return function(n){return n=null==n?"":""+n,e.test(n)?n.replace(u,t):n}};m.escape=R(B),m.unescape=R(T),m.result=function(n,t,r){var e=null==n?void 0:n[t];return e===void 0&&(e=r),m.isFunction(e)?e.call(n):e};var q=0;m.uniqueId=function(n){var t=++q+"";return n?n+t:t},m.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var K=/(.)^/,z={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\u2028|\u2029/g,L=function(n){return"\\"+z[n]};m.template=function(n,t,r){!t&&r&&(t=r),t=m.defaults({},t,m.templateSettings);var e=RegExp([(t.escape||K).source,(t.interpolate||K).source,(t.evaluate||K).source].join("|")+"|$","g"),u=0,i="__p+='";n.replace(e,function(t,r,e,o,a){return i+=n.slice(u,a).replace(D,L),u=a+t.length,r?i+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'":e?i+="'+\n((__t=("+e+"))==null?'':__t)+\n'":o&&(i+="';\n"+o+"\n__p+='"),t}),i+="';\n",t.variable||(i="with(obj||{}){\n"+i+"}\n"),i="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+i+"return __p;\n";try{var o=new Function(t.variable||"obj","_",i)}catch(a){throw a.source=i,a}var c=function(n){return o.call(this,n,m)},f=t.variable||"obj";return c.source="function("+f+"){\n"+i+"}",c},m.chain=function(n){var t=m(n);return t._chain=!0,t};var P=function(n,t){return n._chain?m(t).chain():t};m.mixin=function(n){m.each(m.functions(n),function(t){var r=m[t]=n[t];m.prototype[t]=function(){var n=[this._wrapped];return f.apply(n,arguments),P(this,r.apply(m,n))}})},m.mixin(m),m.each(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=o[n];m.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!==n&&"splice"!==n||0!==r.length||delete r[0],P(this,r)}}),m.each(["concat","join","slice"],function(n){var t=o[n];m.prototype[n]=function(){return P(this,t.apply(this._wrapped,arguments))}}),m.prototype.value=function(){return this._wrapped},m.prototype.valueOf=m.prototype.toJSON=m.prototype.value,m.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return m})}).call(this);
6
- //# sourceMappingURL=underscore-min.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"underscore-min.js","sources":["underscore.js"],"names":["createReduce","dir","iterator","obj","iteratee","memo","keys","index","length","currentKey","context","optimizeCb","isArrayLike","_","arguments","createPredicateIndexFinder","array","predicate","cb","getLength","createIndexFinder","predicateFind","sortedIndex","item","idx","i","Math","max","min","slice","call","isNaN","collectNonEnumProps","nonEnumIdx","nonEnumerableProps","constructor","proto","isFunction","prototype","ObjProto","prop","has","contains","push","root","this","previousUnderscore","ArrayProto","Array","Object","FuncProto","Function","toString","hasOwnProperty","nativeIsArray","isArray","nativeKeys","nativeBind","bind","nativeCreate","create","Ctor","_wrapped","exports","module","VERSION","func","argCount","value","other","collection","accumulator","apply","identity","isObject","matcher","property","Infinity","createAssigner","keysFunc","undefinedOnly","source","l","key","baseCreate","result","MAX_ARRAY_INDEX","pow","each","forEach","map","collect","results","reduce","foldl","inject","reduceRight","foldr","find","detect","findIndex","findKey","filter","select","list","reject","negate","every","all","some","any","includes","include","fromIndex","guard","values","indexOf","invoke","method","args","isFunc","pluck","where","attrs","findWhere","computed","lastComputed","shuffle","rand","set","shuffled","random","sample","n","sortBy","criteria","sort","left","right","a","b","group","behavior","groupBy","indexBy","countBy","toArray","size","partition","pass","fail","first","head","take","initial","last","rest","tail","drop","compact","flatten","input","shallow","strict","startIndex","output","isArguments","j","len","without","difference","uniq","unique","isSorted","isBoolean","seen","union","intersection","argsLength","zip","unzip","object","findLastIndex","low","high","mid","floor","lastIndexOf","range","start","stop","step","ceil","executeBound","sourceFunc","boundFunc","callingContext","self","TypeError","bound","concat","partial","boundArgs","position","bindAll","Error","memoize","hasher","cache","address","delay","wait","setTimeout","defer","throttle","options","timeout","previous","later","leading","now","remaining","clearTimeout","trailing","debounce","immediate","timestamp","callNow","wrap","wrapper","compose","after","times","before","once","hasEnumBug","propertyIsEnumerable","allKeys","mapObject","pairs","invert","functions","methods","names","extend","extendOwn","assign","pick","oiteratee","omit","String","defaults","props","clone","tap","interceptor","isMatch","eq","aStack","bStack","className","areArrays","aCtor","bCtor","pop","isEqual","isEmpty","isString","isElement","nodeType","type","name","Int8Array","isFinite","parseFloat","isNumber","isNull","isUndefined","noConflict","constant","noop","propertyOf","matches","accum","Date","getTime","escapeMap","&","<",">","\"","'","`","unescapeMap","createEscaper","escaper","match","join","testRegexp","RegExp","replaceRegexp","string","test","replace","escape","unescape","fallback","idCounter","uniqueId","prefix","id","templateSettings","evaluate","interpolate","noMatch","escapes","\\","\r","\n","
","
","escapeChar","template","text","settings","oldSettings","offset","variable","render","e","data","argument","chain","instance","_chain","mixin","valueOf","toJSON","define","amd"],"mappings":"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"}
@@ -1,1548 +0,0 @@
1
- // Underscore.js 1.8.3
2
- // http://underscorejs.org
3
- // (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
4
- // Underscore may be freely distributed under the MIT license.
5
-
6
- (function() {
7
-
8
- // Baseline setup
9
- // --------------
10
-
11
- // Establish the root object, `window` in the browser, or `exports` on the server.
12
- var root = this;
13
-
14
- // Save the previous value of the `_` variable.
15
- var previousUnderscore = root._;
16
-
17
- // Save bytes in the minified (but not gzipped) version:
18
- var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype;
19
-
20
- // Create quick reference variables for speed access to core prototypes.
21
- var
22
- push = ArrayProto.push,
23
- slice = ArrayProto.slice,
24
- toString = ObjProto.toString,
25
- hasOwnProperty = ObjProto.hasOwnProperty;
26
-
27
- // All **ECMAScript 5** native function implementations that we hope to use
28
- // are declared here.
29
- var
30
- nativeIsArray = Array.isArray,
31
- nativeKeys = Object.keys,
32
- nativeBind = FuncProto.bind,
33
- nativeCreate = Object.create;
34
-
35
- // Naked function reference for surrogate-prototype-swapping.
36
- var Ctor = function(){};
37
-
38
- // Create a safe reference to the Underscore object for use below.
39
- var _ = function(obj) {
40
- if (obj instanceof _) return obj;
41
- if (!(this instanceof _)) return new _(obj);
42
- this._wrapped = obj;
43
- };
44
-
45
- // Export the Underscore object for **Node.js**, with
46
- // backwards-compatibility for the old `require()` API. If we're in
47
- // the browser, add `_` as a global object.
48
- if (typeof exports !== 'undefined') {
49
- if (typeof module !== 'undefined' && module.exports) {
50
- exports = module.exports = _;
51
- }
52
- exports._ = _;
53
- } else {
54
- root._ = _;
55
- }
56
-
57
- // Current version.
58
- _.VERSION = '1.8.3';
59
-
60
- // Internal function that returns an efficient (for current engines) version
61
- // of the passed-in callback, to be repeatedly applied in other Underscore
62
- // functions.
63
- var optimizeCb = function(func, context, argCount) {
64
- if (context === void 0) return func;
65
- switch (argCount == null ? 3 : argCount) {
66
- case 1: return function(value) {
67
- return func.call(context, value);
68
- };
69
- case 2: return function(value, other) {
70
- return func.call(context, value, other);
71
- };
72
- case 3: return function(value, index, collection) {
73
- return func.call(context, value, index, collection);
74
- };
75
- case 4: return function(accumulator, value, index, collection) {
76
- return func.call(context, accumulator, value, index, collection);
77
- };
78
- }
79
- return function() {
80
- return func.apply(context, arguments);
81
- };
82
- };
83
-
84
- // A mostly-internal function to generate callbacks that can be applied
85
- // to each element in a collection, returning the desired result — either
86
- // identity, an arbitrary callback, a property matcher, or a property accessor.
87
- var cb = function(value, context, argCount) {
88
- if (value == null) return _.identity;
89
- if (_.isFunction(value)) return optimizeCb(value, context, argCount);
90
- if (_.isObject(value)) return _.matcher(value);
91
- return _.property(value);
92
- };
93
- _.iteratee = function(value, context) {
94
- return cb(value, context, Infinity);
95
- };
96
-
97
- // An internal function for creating assigner functions.
98
- var createAssigner = function(keysFunc, undefinedOnly) {
99
- return function(obj) {
100
- var length = arguments.length;
101
- if (length < 2 || obj == null) return obj;
102
- for (var index = 1; index < length; index++) {
103
- var source = arguments[index],
104
- keys = keysFunc(source),
105
- l = keys.length;
106
- for (var i = 0; i < l; i++) {
107
- var key = keys[i];
108
- if (!undefinedOnly || obj[key] === void 0) obj[key] = source[key];
109
- }
110
- }
111
- return obj;
112
- };
113
- };
114
-
115
- // An internal function for creating a new object that inherits from another.
116
- var baseCreate = function(prototype) {
117
- if (!_.isObject(prototype)) return {};
118
- if (nativeCreate) return nativeCreate(prototype);
119
- Ctor.prototype = prototype;
120
- var result = new Ctor;
121
- Ctor.prototype = null;
122
- return result;
123
- };
124
-
125
- var property = function(key) {
126
- return function(obj) {
127
- return obj == null ? void 0 : obj[key];
128
- };
129
- };
130
-
131
- // Helper for collection methods to determine whether a collection
132
- // should be iterated as an array or as an object
133
- // Related: http://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength
134
- // Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094
135
- var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1;
136
- var getLength = property('length');
137
- var isArrayLike = function(collection) {
138
- var length = getLength(collection);
139
- return typeof length == 'number' && length >= 0 && length <= MAX_ARRAY_INDEX;
140
- };
141
-
142
- // Collection Functions
143
- // --------------------
144
-
145
- // The cornerstone, an `each` implementation, aka `forEach`.
146
- // Handles raw objects in addition to array-likes. Treats all
147
- // sparse array-likes as if they were dense.
148
- _.each = _.forEach = function(obj, iteratee, context) {
149
- iteratee = optimizeCb(iteratee, context);
150
- var i, length;
151
- if (isArrayLike(obj)) {
152
- for (i = 0, length = obj.length; i < length; i++) {
153
- iteratee(obj[i], i, obj);
154
- }
155
- } else {
156
- var keys = _.keys(obj);
157
- for (i = 0, length = keys.length; i < length; i++) {
158
- iteratee(obj[keys[i]], keys[i], obj);
159
- }
160
- }
161
- return obj;
162
- };
163
-
164
- // Return the results of applying the iteratee to each element.
165
- _.map = _.collect = function(obj, iteratee, context) {
166
- iteratee = cb(iteratee, context);
167
- var keys = !isArrayLike(obj) && _.keys(obj),
168
- length = (keys || obj).length,
169
- results = Array(length);
170
- for (var index = 0; index < length; index++) {
171
- var currentKey = keys ? keys[index] : index;
172
- results[index] = iteratee(obj[currentKey], currentKey, obj);
173
- }
174
- return results;
175
- };
176
-
177
- // Create a reducing function iterating left or right.
178
- function createReduce(dir) {
179
- // Optimized iterator function as using arguments.length
180
- // in the main function will deoptimize the, see #1991.
181
- function iterator(obj, iteratee, memo, keys, index, length) {
182
- for (; index >= 0 && index < length; index += dir) {
183
- var currentKey = keys ? keys[index] : index;
184
- memo = iteratee(memo, obj[currentKey], currentKey, obj);
185
- }
186
- return memo;
187
- }
188
-
189
- return function(obj, iteratee, memo, context) {
190
- iteratee = optimizeCb(iteratee, context, 4);
191
- var keys = !isArrayLike(obj) && _.keys(obj),
192
- length = (keys || obj).length,
193
- index = dir > 0 ? 0 : length - 1;
194
- // Determine the initial value if none is provided.
195
- if (arguments.length < 3) {
196
- memo = obj[keys ? keys[index] : index];
197
- index += dir;
198
- }
199
- return iterator(obj, iteratee, memo, keys, index, length);
200
- };
201
- }
202
-
203
- // **Reduce** builds up a single result from a list of values, aka `inject`,
204
- // or `foldl`.
205
- _.reduce = _.foldl = _.inject = createReduce(1);
206
-
207
- // The right-associative version of reduce, also known as `foldr`.
208
- _.reduceRight = _.foldr = createReduce(-1);
209
-
210
- // Return the first value which passes a truth test. Aliased as `detect`.
211
- _.find = _.detect = function(obj, predicate, context) {
212
- var key;
213
- if (isArrayLike(obj)) {
214
- key = _.findIndex(obj, predicate, context);
215
- } else {
216
- key = _.findKey(obj, predicate, context);
217
- }
218
- if (key !== void 0 && key !== -1) return obj[key];
219
- };
220
-
221
- // Return all the elements that pass a truth test.
222
- // Aliased as `select`.
223
- _.filter = _.select = function(obj, predicate, context) {
224
- var results = [];
225
- predicate = cb(predicate, context);
226
- _.each(obj, function(value, index, list) {
227
- if (predicate(value, index, list)) results.push(value);
228
- });
229
- return results;
230
- };
231
-
232
- // Return all the elements for which a truth test fails.
233
- _.reject = function(obj, predicate, context) {
234
- return _.filter(obj, _.negate(cb(predicate)), context);
235
- };
236
-
237
- // Determine whether all of the elements match a truth test.
238
- // Aliased as `all`.
239
- _.every = _.all = function(obj, predicate, context) {
240
- predicate = cb(predicate, context);
241
- var keys = !isArrayLike(obj) && _.keys(obj),
242
- length = (keys || obj).length;
243
- for (var index = 0; index < length; index++) {
244
- var currentKey = keys ? keys[index] : index;
245
- if (!predicate(obj[currentKey], currentKey, obj)) return false;
246
- }
247
- return true;
248
- };
249
-
250
- // Determine if at least one element in the object matches a truth test.
251
- // Aliased as `any`.
252
- _.some = _.any = function(obj, predicate, context) {
253
- predicate = cb(predicate, context);
254
- var keys = !isArrayLike(obj) && _.keys(obj),
255
- length = (keys || obj).length;
256
- for (var index = 0; index < length; index++) {
257
- var currentKey = keys ? keys[index] : index;
258
- if (predicate(obj[currentKey], currentKey, obj)) return true;
259
- }
260
- return false;
261
- };
262
-
263
- // Determine if the array or object contains a given item (using `===`).
264
- // Aliased as `includes` and `include`.
265
- _.contains = _.includes = _.include = function(obj, item, fromIndex, guard) {
266
- if (!isArrayLike(obj)) obj = _.values(obj);
267
- if (typeof fromIndex != 'number' || guard) fromIndex = 0;
268
- return _.indexOf(obj, item, fromIndex) >= 0;
269
- };
270
-
271
- // Invoke a method (with arguments) on every item in a collection.
272
- _.invoke = function(obj, method) {
273
- var args = slice.call(arguments, 2);
274
- var isFunc = _.isFunction(method);
275
- return _.map(obj, function(value) {
276
- var func = isFunc ? method : value[method];
277
- return func == null ? func : func.apply(value, args);
278
- });
279
- };
280
-
281
- // Convenience version of a common use case of `map`: fetching a property.
282
- _.pluck = function(obj, key) {
283
- return _.map(obj, _.property(key));
284
- };
285
-
286
- // Convenience version of a common use case of `filter`: selecting only objects
287
- // containing specific `key:value` pairs.
288
- _.where = function(obj, attrs) {
289
- return _.filter(obj, _.matcher(attrs));
290
- };
291
-
292
- // Convenience version of a common use case of `find`: getting the first object
293
- // containing specific `key:value` pairs.
294
- _.findWhere = function(obj, attrs) {
295
- return _.find(obj, _.matcher(attrs));
296
- };
297
-
298
- // Return the maximum element (or element-based computation).
299
- _.max = function(obj, iteratee, context) {
300
- var result = -Infinity, lastComputed = -Infinity,
301
- value, computed;
302
- if (iteratee == null && obj != null) {
303
- obj = isArrayLike(obj) ? obj : _.values(obj);
304
- for (var i = 0, length = obj.length; i < length; i++) {
305
- value = obj[i];
306
- if (value > result) {
307
- result = value;
308
- }
309
- }
310
- } else {
311
- iteratee = cb(iteratee, context);
312
- _.each(obj, function(value, index, list) {
313
- computed = iteratee(value, index, list);
314
- if (computed > lastComputed || computed === -Infinity && result === -Infinity) {
315
- result = value;
316
- lastComputed = computed;
317
- }
318
- });
319
- }
320
- return result;
321
- };
322
-
323
- // Return the minimum element (or element-based computation).
324
- _.min = function(obj, iteratee, context) {
325
- var result = Infinity, lastComputed = Infinity,
326
- value, computed;
327
- if (iteratee == null && obj != null) {
328
- obj = isArrayLike(obj) ? obj : _.values(obj);
329
- for (var i = 0, length = obj.length; i < length; i++) {
330
- value = obj[i];
331
- if (value < result) {
332
- result = value;
333
- }
334
- }
335
- } else {
336
- iteratee = cb(iteratee, context);
337
- _.each(obj, function(value, index, list) {
338
- computed = iteratee(value, index, list);
339
- if (computed < lastComputed || computed === Infinity && result === Infinity) {
340
- result = value;
341
- lastComputed = computed;
342
- }
343
- });
344
- }
345
- return result;
346
- };
347
-
348
- // Shuffle a collection, using the modern version of the
349
- // [Fisher-Yates shuffle](http://en.wikipedia.org/wiki/Fisher–Yates_shuffle).
350
- _.shuffle = function(obj) {
351
- var set = isArrayLike(obj) ? obj : _.values(obj);
352
- var length = set.length;
353
- var shuffled = Array(length);
354
- for (var index = 0, rand; index < length; index++) {
355
- rand = _.random(0, index);
356
- if (rand !== index) shuffled[index] = shuffled[rand];
357
- shuffled[rand] = set[index];
358
- }
359
- return shuffled;
360
- };
361
-
362
- // Sample **n** random values from a collection.
363
- // If **n** is not specified, returns a single random element.
364
- // The internal `guard` argument allows it to work with `map`.
365
- _.sample = function(obj, n, guard) {
366
- if (n == null || guard) {
367
- if (!isArrayLike(obj)) obj = _.values(obj);
368
- return obj[_.random(obj.length - 1)];
369
- }
370
- return _.shuffle(obj).slice(0, Math.max(0, n));
371
- };
372
-
373
- // Sort the object's values by a criterion produced by an iteratee.
374
- _.sortBy = function(obj, iteratee, context) {
375
- iteratee = cb(iteratee, context);
376
- return _.pluck(_.map(obj, function(value, index, list) {
377
- return {
378
- value: value,
379
- index: index,
380
- criteria: iteratee(value, index, list)
381
- };
382
- }).sort(function(left, right) {
383
- var a = left.criteria;
384
- var b = right.criteria;
385
- if (a !== b) {
386
- if (a > b || a === void 0) return 1;
387
- if (a < b || b === void 0) return -1;
388
- }
389
- return left.index - right.index;
390
- }), 'value');
391
- };
392
-
393
- // An internal function used for aggregate "group by" operations.
394
- var group = function(behavior) {
395
- return function(obj, iteratee, context) {
396
- var result = {};
397
- iteratee = cb(iteratee, context);
398
- _.each(obj, function(value, index) {
399
- var key = iteratee(value, index, obj);
400
- behavior(result, value, key);
401
- });
402
- return result;
403
- };
404
- };
405
-
406
- // Groups the object's values by a criterion. Pass either a string attribute
407
- // to group by, or a function that returns the criterion.
408
- _.groupBy = group(function(result, value, key) {
409
- if (_.has(result, key)) result[key].push(value); else result[key] = [value];
410
- });
411
-
412
- // Indexes the object's values by a criterion, similar to `groupBy`, but for
413
- // when you know that your index values will be unique.
414
- _.indexBy = group(function(result, value, key) {
415
- result[key] = value;
416
- });
417
-
418
- // Counts instances of an object that group by a certain criterion. Pass
419
- // either a string attribute to count by, or a function that returns the
420
- // criterion.
421
- _.countBy = group(function(result, value, key) {
422
- if (_.has(result, key)) result[key]++; else result[key] = 1;
423
- });
424
-
425
- // Safely create a real, live array from anything iterable.
426
- _.toArray = function(obj) {
427
- if (!obj) return [];
428
- if (_.isArray(obj)) return slice.call(obj);
429
- if (isArrayLike(obj)) return _.map(obj, _.identity);
430
- return _.values(obj);
431
- };
432
-
433
- // Return the number of elements in an object.
434
- _.size = function(obj) {
435
- if (obj == null) return 0;
436
- return isArrayLike(obj) ? obj.length : _.keys(obj).length;
437
- };
438
-
439
- // Split a collection into two arrays: one whose elements all satisfy the given
440
- // predicate, and one whose elements all do not satisfy the predicate.
441
- _.partition = function(obj, predicate, context) {
442
- predicate = cb(predicate, context);
443
- var pass = [], fail = [];
444
- _.each(obj, function(value, key, obj) {
445
- (predicate(value, key, obj) ? pass : fail).push(value);
446
- });
447
- return [pass, fail];
448
- };
449
-
450
- // Array Functions
451
- // ---------------
452
-
453
- // Get the first element of an array. Passing **n** will return the first N
454
- // values in the array. Aliased as `head` and `take`. The **guard** check
455
- // allows it to work with `_.map`.
456
- _.first = _.head = _.take = function(array, n, guard) {
457
- if (array == null) return void 0;
458
- if (n == null || guard) return array[0];
459
- return _.initial(array, array.length - n);
460
- };
461
-
462
- // Returns everything but the last entry of the array. Especially useful on
463
- // the arguments object. Passing **n** will return all the values in
464
- // the array, excluding the last N.
465
- _.initial = function(array, n, guard) {
466
- return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n)));
467
- };
468
-
469
- // Get the last element of an array. Passing **n** will return the last N
470
- // values in the array.
471
- _.last = function(array, n, guard) {
472
- if (array == null) return void 0;
473
- if (n == null || guard) return array[array.length - 1];
474
- return _.rest(array, Math.max(0, array.length - n));
475
- };
476
-
477
- // Returns everything but the first entry of the array. Aliased as `tail` and `drop`.
478
- // Especially useful on the arguments object. Passing an **n** will return
479
- // the rest N values in the array.
480
- _.rest = _.tail = _.drop = function(array, n, guard) {
481
- return slice.call(array, n == null || guard ? 1 : n);
482
- };
483
-
484
- // Trim out all falsy values from an array.
485
- _.compact = function(array) {
486
- return _.filter(array, _.identity);
487
- };
488
-
489
- // Internal implementation of a recursive `flatten` function.
490
- var flatten = function(input, shallow, strict, startIndex) {
491
- var output = [], idx = 0;
492
- for (var i = startIndex || 0, length = getLength(input); i < length; i++) {
493
- var value = input[i];
494
- if (isArrayLike(value) && (_.isArray(value) || _.isArguments(value))) {
495
- //flatten current level of array or arguments object
496
- if (!shallow) value = flatten(value, shallow, strict);
497
- var j = 0, len = value.length;
498
- output.length += len;
499
- while (j < len) {
500
- output[idx++] = value[j++];
501
- }
502
- } else if (!strict) {
503
- output[idx++] = value;
504
- }
505
- }
506
- return output;
507
- };
508
-
509
- // Flatten out an array, either recursively (by default), or just one level.
510
- _.flatten = function(array, shallow) {
511
- return flatten(array, shallow, false);
512
- };
513
-
514
- // Return a version of the array that does not contain the specified value(s).
515
- _.without = function(array) {
516
- return _.difference(array, slice.call(arguments, 1));
517
- };
518
-
519
- // Produce a duplicate-free version of the array. If the array has already
520
- // been sorted, you have the option of using a faster algorithm.
521
- // Aliased as `unique`.
522
- _.uniq = _.unique = function(array, isSorted, iteratee, context) {
523
- if (!_.isBoolean(isSorted)) {
524
- context = iteratee;
525
- iteratee = isSorted;
526
- isSorted = false;
527
- }
528
- if (iteratee != null) iteratee = cb(iteratee, context);
529
- var result = [];
530
- var seen = [];
531
- for (var i = 0, length = getLength(array); i < length; i++) {
532
- var value = array[i],
533
- computed = iteratee ? iteratee(value, i, array) : value;
534
- if (isSorted) {
535
- if (!i || seen !== computed) result.push(value);
536
- seen = computed;
537
- } else if (iteratee) {
538
- if (!_.contains(seen, computed)) {
539
- seen.push(computed);
540
- result.push(value);
541
- }
542
- } else if (!_.contains(result, value)) {
543
- result.push(value);
544
- }
545
- }
546
- return result;
547
- };
548
-
549
- // Produce an array that contains the union: each distinct element from all of
550
- // the passed-in arrays.
551
- _.union = function() {
552
- return _.uniq(flatten(arguments, true, true));
553
- };
554
-
555
- // Produce an array that contains every item shared between all the
556
- // passed-in arrays.
557
- _.intersection = function(array) {
558
- var result = [];
559
- var argsLength = arguments.length;
560
- for (var i = 0, length = getLength(array); i < length; i++) {
561
- var item = array[i];
562
- if (_.contains(result, item)) continue;
563
- for (var j = 1; j < argsLength; j++) {
564
- if (!_.contains(arguments[j], item)) break;
565
- }
566
- if (j === argsLength) result.push(item);
567
- }
568
- return result;
569
- };
570
-
571
- // Take the difference between one array and a number of other arrays.
572
- // Only the elements present in just the first array will remain.
573
- _.difference = function(array) {
574
- var rest = flatten(arguments, true, true, 1);
575
- return _.filter(array, function(value){
576
- return !_.contains(rest, value);
577
- });
578
- };
579
-
580
- // Zip together multiple lists into a single array -- elements that share
581
- // an index go together.
582
- _.zip = function() {
583
- return _.unzip(arguments);
584
- };
585
-
586
- // Complement of _.zip. Unzip accepts an array of arrays and groups
587
- // each array's elements on shared indices
588
- _.unzip = function(array) {
589
- var length = array && _.max(array, getLength).length || 0;
590
- var result = Array(length);
591
-
592
- for (var index = 0; index < length; index++) {
593
- result[index] = _.pluck(array, index);
594
- }
595
- return result;
596
- };
597
-
598
- // Converts lists into objects. Pass either a single array of `[key, value]`
599
- // pairs, or two parallel arrays of the same length -- one of keys, and one of
600
- // the corresponding values.
601
- _.object = function(list, values) {
602
- var result = {};
603
- for (var i = 0, length = getLength(list); i < length; i++) {
604
- if (values) {
605
- result[list[i]] = values[i];
606
- } else {
607
- result[list[i][0]] = list[i][1];
608
- }
609
- }
610
- return result;
611
- };
612
-
613
- // Generator function to create the findIndex and findLastIndex functions
614
- function createPredicateIndexFinder(dir) {
615
- return function(array, predicate, context) {
616
- predicate = cb(predicate, context);
617
- var length = getLength(array);
618
- var index = dir > 0 ? 0 : length - 1;
619
- for (; index >= 0 && index < length; index += dir) {
620
- if (predicate(array[index], index, array)) return index;
621
- }
622
- return -1;
623
- };
624
- }
625
-
626
- // Returns the first index on an array-like that passes a predicate test
627
- _.findIndex = createPredicateIndexFinder(1);
628
- _.findLastIndex = createPredicateIndexFinder(-1);
629
-
630
- // Use a comparator function to figure out the smallest index at which
631
- // an object should be inserted so as to maintain order. Uses binary search.
632
- _.sortedIndex = function(array, obj, iteratee, context) {
633
- iteratee = cb(iteratee, context, 1);
634
- var value = iteratee(obj);
635
- var low = 0, high = getLength(array);
636
- while (low < high) {
637
- var mid = Math.floor((low + high) / 2);
638
- if (iteratee(array[mid]) < value) low = mid + 1; else high = mid;
639
- }
640
- return low;
641
- };
642
-
643
- // Generator function to create the indexOf and lastIndexOf functions
644
- function createIndexFinder(dir, predicateFind, sortedIndex) {
645
- return function(array, item, idx) {
646
- var i = 0, length = getLength(array);
647
- if (typeof idx == 'number') {
648
- if (dir > 0) {
649
- i = idx >= 0 ? idx : Math.max(idx + length, i);
650
- } else {
651
- length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1;
652
- }
653
- } else if (sortedIndex && idx && length) {
654
- idx = sortedIndex(array, item);
655
- return array[idx] === item ? idx : -1;
656
- }
657
- if (item !== item) {
658
- idx = predicateFind(slice.call(array, i, length), _.isNaN);
659
- return idx >= 0 ? idx + i : -1;
660
- }
661
- for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) {
662
- if (array[idx] === item) return idx;
663
- }
664
- return -1;
665
- };
666
- }
667
-
668
- // Return the position of the first occurrence of an item in an array,
669
- // or -1 if the item is not included in the array.
670
- // If the array is large and already in sort order, pass `true`
671
- // for **isSorted** to use binary search.
672
- _.indexOf = createIndexFinder(1, _.findIndex, _.sortedIndex);
673
- _.lastIndexOf = createIndexFinder(-1, _.findLastIndex);
674
-
675
- // Generate an integer Array containing an arithmetic progression. A port of
676
- // the native Python `range()` function. See
677
- // [the Python documentation](http://docs.python.org/library/functions.html#range).
678
- _.range = function(start, stop, step) {
679
- if (stop == null) {
680
- stop = start || 0;
681
- start = 0;
682
- }
683
- step = step || 1;
684
-
685
- var length = Math.max(Math.ceil((stop - start) / step), 0);
686
- var range = Array(length);
687
-
688
- for (var idx = 0; idx < length; idx++, start += step) {
689
- range[idx] = start;
690
- }
691
-
692
- return range;
693
- };
694
-
695
- // Function (ahem) Functions
696
- // ------------------
697
-
698
- // Determines whether to execute a function as a constructor
699
- // or a normal function with the provided arguments
700
- var executeBound = function(sourceFunc, boundFunc, context, callingContext, args) {
701
- if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args);
702
- var self = baseCreate(sourceFunc.prototype);
703
- var result = sourceFunc.apply(self, args);
704
- if (_.isObject(result)) return result;
705
- return self;
706
- };
707
-
708
- // Create a function bound to a given object (assigning `this`, and arguments,
709
- // optionally). Delegates to **ECMAScript 5**'s native `Function.bind` if
710
- // available.
711
- _.bind = function(func, context) {
712
- if (nativeBind && func.bind === nativeBind) return nativeBind.apply(func, slice.call(arguments, 1));
713
- if (!_.isFunction(func)) throw new TypeError('Bind must be called on a function');
714
- var args = slice.call(arguments, 2);
715
- var bound = function() {
716
- return executeBound(func, bound, context, this, args.concat(slice.call(arguments)));
717
- };
718
- return bound;
719
- };
720
-
721
- // Partially apply a function by creating a version that has had some of its
722
- // arguments pre-filled, without changing its dynamic `this` context. _ acts
723
- // as a placeholder, allowing any combination of arguments to be pre-filled.
724
- _.partial = function(func) {
725
- var boundArgs = slice.call(arguments, 1);
726
- var bound = function() {
727
- var position = 0, length = boundArgs.length;
728
- var args = Array(length);
729
- for (var i = 0; i < length; i++) {
730
- args[i] = boundArgs[i] === _ ? arguments[position++] : boundArgs[i];
731
- }
732
- while (position < arguments.length) args.push(arguments[position++]);
733
- return executeBound(func, bound, this, this, args);
734
- };
735
- return bound;
736
- };
737
-
738
- // Bind a number of an object's methods to that object. Remaining arguments
739
- // are the method names to be bound. Useful for ensuring that all callbacks
740
- // defined on an object belong to it.
741
- _.bindAll = function(obj) {
742
- var i, length = arguments.length, key;
743
- if (length <= 1) throw new Error('bindAll must be passed function names');
744
- for (i = 1; i < length; i++) {
745
- key = arguments[i];
746
- obj[key] = _.bind(obj[key], obj);
747
- }
748
- return obj;
749
- };
750
-
751
- // Memoize an expensive function by storing its results.
752
- _.memoize = function(func, hasher) {
753
- var memoize = function(key) {
754
- var cache = memoize.cache;
755
- var address = '' + (hasher ? hasher.apply(this, arguments) : key);
756
- if (!_.has(cache, address)) cache[address] = func.apply(this, arguments);
757
- return cache[address];
758
- };
759
- memoize.cache = {};
760
- return memoize;
761
- };
762
-
763
- // Delays a function for the given number of milliseconds, and then calls
764
- // it with the arguments supplied.
765
- _.delay = function(func, wait) {
766
- var args = slice.call(arguments, 2);
767
- return setTimeout(function(){
768
- return func.apply(null, args);
769
- }, wait);
770
- };
771
-
772
- // Defers a function, scheduling it to run after the current call stack has
773
- // cleared.
774
- _.defer = _.partial(_.delay, _, 1);
775
-
776
- // Returns a function, that, when invoked, will only be triggered at most once
777
- // during a given window of time. Normally, the throttled function will run
778
- // as much as it can, without ever going more than once per `wait` duration;
779
- // but if you'd like to disable the execution on the leading edge, pass
780
- // `{leading: false}`. To disable execution on the trailing edge, ditto.
781
- _.throttle = function(func, wait, options) {
782
- var context, args, result;
783
- var timeout = null;
784
- var previous = 0;
785
- if (!options) options = {};
786
- var later = function() {
787
- previous = options.leading === false ? 0 : _.now();
788
- timeout = null;
789
- result = func.apply(context, args);
790
- if (!timeout) context = args = null;
791
- };
792
- return function() {
793
- var now = _.now();
794
- if (!previous && options.leading === false) previous = now;
795
- var remaining = wait - (now - previous);
796
- context = this;
797
- args = arguments;
798
- if (remaining <= 0 || remaining > wait) {
799
- if (timeout) {
800
- clearTimeout(timeout);
801
- timeout = null;
802
- }
803
- previous = now;
804
- result = func.apply(context, args);
805
- if (!timeout) context = args = null;
806
- } else if (!timeout && options.trailing !== false) {
807
- timeout = setTimeout(later, remaining);
808
- }
809
- return result;
810
- };
811
- };
812
-
813
- // Returns a function, that, as long as it continues to be invoked, will not
814
- // be triggered. The function will be called after it stops being called for
815
- // N milliseconds. If `immediate` is passed, trigger the function on the
816
- // leading edge, instead of the trailing.
817
- _.debounce = function(func, wait, immediate) {
818
- var timeout, args, context, timestamp, result;
819
-
820
- var later = function() {
821
- var last = _.now() - timestamp;
822
-
823
- if (last < wait && last >= 0) {
824
- timeout = setTimeout(later, wait - last);
825
- } else {
826
- timeout = null;
827
- if (!immediate) {
828
- result = func.apply(context, args);
829
- if (!timeout) context = args = null;
830
- }
831
- }
832
- };
833
-
834
- return function() {
835
- context = this;
836
- args = arguments;
837
- timestamp = _.now();
838
- var callNow = immediate && !timeout;
839
- if (!timeout) timeout = setTimeout(later, wait);
840
- if (callNow) {
841
- result = func.apply(context, args);
842
- context = args = null;
843
- }
844
-
845
- return result;
846
- };
847
- };
848
-
849
- // Returns the first function passed as an argument to the second,
850
- // allowing you to adjust arguments, run code before and after, and
851
- // conditionally execute the original function.
852
- _.wrap = function(func, wrapper) {
853
- return _.partial(wrapper, func);
854
- };
855
-
856
- // Returns a negated version of the passed-in predicate.
857
- _.negate = function(predicate) {
858
- return function() {
859
- return !predicate.apply(this, arguments);
860
- };
861
- };
862
-
863
- // Returns a function that is the composition of a list of functions, each
864
- // consuming the return value of the function that follows.
865
- _.compose = function() {
866
- var args = arguments;
867
- var start = args.length - 1;
868
- return function() {
869
- var i = start;
870
- var result = args[start].apply(this, arguments);
871
- while (i--) result = args[i].call(this, result);
872
- return result;
873
- };
874
- };
875
-
876
- // Returns a function that will only be executed on and after the Nth call.
877
- _.after = function(times, func) {
878
- return function() {
879
- if (--times < 1) {
880
- return func.apply(this, arguments);
881
- }
882
- };
883
- };
884
-
885
- // Returns a function that will only be executed up to (but not including) the Nth call.
886
- _.before = function(times, func) {
887
- var memo;
888
- return function() {
889
- if (--times > 0) {
890
- memo = func.apply(this, arguments);
891
- }
892
- if (times <= 1) func = null;
893
- return memo;
894
- };
895
- };
896
-
897
- // Returns a function that will be executed at most one time, no matter how
898
- // often you call it. Useful for lazy initialization.
899
- _.once = _.partial(_.before, 2);
900
-
901
- // Object Functions
902
- // ----------------
903
-
904
- // Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed.
905
- var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString');
906
- var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString',
907
- 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString'];
908
-
909
- function collectNonEnumProps(obj, keys) {
910
- var nonEnumIdx = nonEnumerableProps.length;
911
- var constructor = obj.constructor;
912
- var proto = (_.isFunction(constructor) && constructor.prototype) || ObjProto;
913
-
914
- // Constructor is a special case.
915
- var prop = 'constructor';
916
- if (_.has(obj, prop) && !_.contains(keys, prop)) keys.push(prop);
917
-
918
- while (nonEnumIdx--) {
919
- prop = nonEnumerableProps[nonEnumIdx];
920
- if (prop in obj && obj[prop] !== proto[prop] && !_.contains(keys, prop)) {
921
- keys.push(prop);
922
- }
923
- }
924
- }
925
-
926
- // Retrieve the names of an object's own properties.
927
- // Delegates to **ECMAScript 5**'s native `Object.keys`
928
- _.keys = function(obj) {
929
- if (!_.isObject(obj)) return [];
930
- if (nativeKeys) return nativeKeys(obj);
931
- var keys = [];
932
- for (var key in obj) if (_.has(obj, key)) keys.push(key);
933
- // Ahem, IE < 9.
934
- if (hasEnumBug) collectNonEnumProps(obj, keys);
935
- return keys;
936
- };
937
-
938
- // Retrieve all the property names of an object.
939
- _.allKeys = function(obj) {
940
- if (!_.isObject(obj)) return [];
941
- var keys = [];
942
- for (var key in obj) keys.push(key);
943
- // Ahem, IE < 9.
944
- if (hasEnumBug) collectNonEnumProps(obj, keys);
945
- return keys;
946
- };
947
-
948
- // Retrieve the values of an object's properties.
949
- _.values = function(obj) {
950
- var keys = _.keys(obj);
951
- var length = keys.length;
952
- var values = Array(length);
953
- for (var i = 0; i < length; i++) {
954
- values[i] = obj[keys[i]];
955
- }
956
- return values;
957
- };
958
-
959
- // Returns the results of applying the iteratee to each element of the object
960
- // In contrast to _.map it returns an object
961
- _.mapObject = function(obj, iteratee, context) {
962
- iteratee = cb(iteratee, context);
963
- var keys = _.keys(obj),
964
- length = keys.length,
965
- results = {},
966
- currentKey;
967
- for (var index = 0; index < length; index++) {
968
- currentKey = keys[index];
969
- results[currentKey] = iteratee(obj[currentKey], currentKey, obj);
970
- }
971
- return results;
972
- };
973
-
974
- // Convert an object into a list of `[key, value]` pairs.
975
- _.pairs = function(obj) {
976
- var keys = _.keys(obj);
977
- var length = keys.length;
978
- var pairs = Array(length);
979
- for (var i = 0; i < length; i++) {
980
- pairs[i] = [keys[i], obj[keys[i]]];
981
- }
982
- return pairs;
983
- };
984
-
985
- // Invert the keys and values of an object. The values must be serializable.
986
- _.invert = function(obj) {
987
- var result = {};
988
- var keys = _.keys(obj);
989
- for (var i = 0, length = keys.length; i < length; i++) {
990
- result[obj[keys[i]]] = keys[i];
991
- }
992
- return result;
993
- };
994
-
995
- // Return a sorted list of the function names available on the object.
996
- // Aliased as `methods`
997
- _.functions = _.methods = function(obj) {
998
- var names = [];
999
- for (var key in obj) {
1000
- if (_.isFunction(obj[key])) names.push(key);
1001
- }
1002
- return names.sort();
1003
- };
1004
-
1005
- // Extend a given object with all the properties in passed-in object(s).
1006
- _.extend = createAssigner(_.allKeys);
1007
-
1008
- // Assigns a given object with all the own properties in the passed-in object(s)
1009
- // (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)
1010
- _.extendOwn = _.assign = createAssigner(_.keys);
1011
-
1012
- // Returns the first key on an object that passes a predicate test
1013
- _.findKey = function(obj, predicate, context) {
1014
- predicate = cb(predicate, context);
1015
- var keys = _.keys(obj), key;
1016
- for (var i = 0, length = keys.length; i < length; i++) {
1017
- key = keys[i];
1018
- if (predicate(obj[key], key, obj)) return key;
1019
- }
1020
- };
1021
-
1022
- // Return a copy of the object only containing the whitelisted properties.
1023
- _.pick = function(object, oiteratee, context) {
1024
- var result = {}, obj = object, iteratee, keys;
1025
- if (obj == null) return result;
1026
- if (_.isFunction(oiteratee)) {
1027
- keys = _.allKeys(obj);
1028
- iteratee = optimizeCb(oiteratee, context);
1029
- } else {
1030
- keys = flatten(arguments, false, false, 1);
1031
- iteratee = function(value, key, obj) { return key in obj; };
1032
- obj = Object(obj);
1033
- }
1034
- for (var i = 0, length = keys.length; i < length; i++) {
1035
- var key = keys[i];
1036
- var value = obj[key];
1037
- if (iteratee(value, key, obj)) result[key] = value;
1038
- }
1039
- return result;
1040
- };
1041
-
1042
- // Return a copy of the object without the blacklisted properties.
1043
- _.omit = function(obj, iteratee, context) {
1044
- if (_.isFunction(iteratee)) {
1045
- iteratee = _.negate(iteratee);
1046
- } else {
1047
- var keys = _.map(flatten(arguments, false, false, 1), String);
1048
- iteratee = function(value, key) {
1049
- return !_.contains(keys, key);
1050
- };
1051
- }
1052
- return _.pick(obj, iteratee, context);
1053
- };
1054
-
1055
- // Fill in a given object with default properties.
1056
- _.defaults = createAssigner(_.allKeys, true);
1057
-
1058
- // Creates an object that inherits from the given prototype object.
1059
- // If additional properties are provided then they will be added to the
1060
- // created object.
1061
- _.create = function(prototype, props) {
1062
- var result = baseCreate(prototype);
1063
- if (props) _.extendOwn(result, props);
1064
- return result;
1065
- };
1066
-
1067
- // Create a (shallow-cloned) duplicate of an object.
1068
- _.clone = function(obj) {
1069
- if (!_.isObject(obj)) return obj;
1070
- return _.isArray(obj) ? obj.slice() : _.extend({}, obj);
1071
- };
1072
-
1073
- // Invokes interceptor with the obj, and then returns obj.
1074
- // The primary purpose of this method is to "tap into" a method chain, in
1075
- // order to perform operations on intermediate results within the chain.
1076
- _.tap = function(obj, interceptor) {
1077
- interceptor(obj);
1078
- return obj;
1079
- };
1080
-
1081
- // Returns whether an object has a given set of `key:value` pairs.
1082
- _.isMatch = function(object, attrs) {
1083
- var keys = _.keys(attrs), length = keys.length;
1084
- if (object == null) return !length;
1085
- var obj = Object(object);
1086
- for (var i = 0; i < length; i++) {
1087
- var key = keys[i];
1088
- if (attrs[key] !== obj[key] || !(key in obj)) return false;
1089
- }
1090
- return true;
1091
- };
1092
-
1093
-
1094
- // Internal recursive comparison function for `isEqual`.
1095
- var eq = function(a, b, aStack, bStack) {
1096
- // Identical objects are equal. `0 === -0`, but they aren't identical.
1097
- // See the [Harmony `egal` proposal](http://wiki.ecmascript.org/doku.php?id=harmony:egal).
1098
- if (a === b) return a !== 0 || 1 / a === 1 / b;
1099
- // A strict comparison is necessary because `null == undefined`.
1100
- if (a == null || b == null) return a === b;
1101
- // Unwrap any wrapped objects.
1102
- if (a instanceof _) a = a._wrapped;
1103
- if (b instanceof _) b = b._wrapped;
1104
- // Compare `[[Class]]` names.
1105
- var className = toString.call(a);
1106
- if (className !== toString.call(b)) return false;
1107
- switch (className) {
1108
- // Strings, numbers, regular expressions, dates, and booleans are compared by value.
1109
- case '[object RegExp]':
1110
- // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')
1111
- case '[object String]':
1112
- // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is
1113
- // equivalent to `new String("5")`.
1114
- return '' + a === '' + b;
1115
- case '[object Number]':
1116
- // `NaN`s are equivalent, but non-reflexive.
1117
- // Object(NaN) is equivalent to NaN
1118
- if (+a !== +a) return +b !== +b;
1119
- // An `egal` comparison is performed for other numeric values.
1120
- return +a === 0 ? 1 / +a === 1 / b : +a === +b;
1121
- case '[object Date]':
1122
- case '[object Boolean]':
1123
- // Coerce dates and booleans to numeric primitive values. Dates are compared by their
1124
- // millisecond representations. Note that invalid dates with millisecond representations
1125
- // of `NaN` are not equivalent.
1126
- return +a === +b;
1127
- }
1128
-
1129
- var areArrays = className === '[object Array]';
1130
- if (!areArrays) {
1131
- if (typeof a != 'object' || typeof b != 'object') return false;
1132
-
1133
- // Objects with different constructors are not equivalent, but `Object`s or `Array`s
1134
- // from different frames are.
1135
- var aCtor = a.constructor, bCtor = b.constructor;
1136
- if (aCtor !== bCtor && !(_.isFunction(aCtor) && aCtor instanceof aCtor &&
1137
- _.isFunction(bCtor) && bCtor instanceof bCtor)
1138
- && ('constructor' in a && 'constructor' in b)) {
1139
- return false;
1140
- }
1141
- }
1142
- // Assume equality for cyclic structures. The algorithm for detecting cyclic
1143
- // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.
1144
-
1145
- // Initializing stack of traversed objects.
1146
- // It's done here since we only need them for objects and arrays comparison.
1147
- aStack = aStack || [];
1148
- bStack = bStack || [];
1149
- var length = aStack.length;
1150
- while (length--) {
1151
- // Linear search. Performance is inversely proportional to the number of
1152
- // unique nested structures.
1153
- if (aStack[length] === a) return bStack[length] === b;
1154
- }
1155
-
1156
- // Add the first object to the stack of traversed objects.
1157
- aStack.push(a);
1158
- bStack.push(b);
1159
-
1160
- // Recursively compare objects and arrays.
1161
- if (areArrays) {
1162
- // Compare array lengths to determine if a deep comparison is necessary.
1163
- length = a.length;
1164
- if (length !== b.length) return false;
1165
- // Deep compare the contents, ignoring non-numeric properties.
1166
- while (length--) {
1167
- if (!eq(a[length], b[length], aStack, bStack)) return false;
1168
- }
1169
- } else {
1170
- // Deep compare objects.
1171
- var keys = _.keys(a), key;
1172
- length = keys.length;
1173
- // Ensure that both objects contain the same number of properties before comparing deep equality.
1174
- if (_.keys(b).length !== length) return false;
1175
- while (length--) {
1176
- // Deep compare each member
1177
- key = keys[length];
1178
- if (!(_.has(b, key) && eq(a[key], b[key], aStack, bStack))) return false;
1179
- }
1180
- }
1181
- // Remove the first object from the stack of traversed objects.
1182
- aStack.pop();
1183
- bStack.pop();
1184
- return true;
1185
- };
1186
-
1187
- // Perform a deep comparison to check if two objects are equal.
1188
- _.isEqual = function(a, b) {
1189
- return eq(a, b);
1190
- };
1191
-
1192
- // Is a given array, string, or object empty?
1193
- // An "empty" object has no enumerable own-properties.
1194
- _.isEmpty = function(obj) {
1195
- if (obj == null) return true;
1196
- if (isArrayLike(obj) && (_.isArray(obj) || _.isString(obj) || _.isArguments(obj))) return obj.length === 0;
1197
- return _.keys(obj).length === 0;
1198
- };
1199
-
1200
- // Is a given value a DOM element?
1201
- _.isElement = function(obj) {
1202
- return !!(obj && obj.nodeType === 1);
1203
- };
1204
-
1205
- // Is a given value an array?
1206
- // Delegates to ECMA5's native Array.isArray
1207
- _.isArray = nativeIsArray || function(obj) {
1208
- return toString.call(obj) === '[object Array]';
1209
- };
1210
-
1211
- // Is a given variable an object?
1212
- _.isObject = function(obj) {
1213
- var type = typeof obj;
1214
- return type === 'function' || type === 'object' && !!obj;
1215
- };
1216
-
1217
- // Add some isType methods: isArguments, isFunction, isString, isNumber, isDate, isRegExp, isError.
1218
- _.each(['Arguments', 'Function', 'String', 'Number', 'Date', 'RegExp', 'Error'], function(name) {
1219
- _['is' + name] = function(obj) {
1220
- return toString.call(obj) === '[object ' + name + ']';
1221
- };
1222
- });
1223
-
1224
- // Define a fallback version of the method in browsers (ahem, IE < 9), where
1225
- // there isn't any inspectable "Arguments" type.
1226
- if (!_.isArguments(arguments)) {
1227
- _.isArguments = function(obj) {
1228
- return _.has(obj, 'callee');
1229
- };
1230
- }
1231
-
1232
- // Optimize `isFunction` if appropriate. Work around some typeof bugs in old v8,
1233
- // IE 11 (#1621), and in Safari 8 (#1929).
1234
- if (typeof /./ != 'function' && typeof Int8Array != 'object') {
1235
- _.isFunction = function(obj) {
1236
- return typeof obj == 'function' || false;
1237
- };
1238
- }
1239
-
1240
- // Is a given object a finite number?
1241
- _.isFinite = function(obj) {
1242
- return isFinite(obj) && !isNaN(parseFloat(obj));
1243
- };
1244
-
1245
- // Is the given value `NaN`? (NaN is the only number which does not equal itself).
1246
- _.isNaN = function(obj) {
1247
- return _.isNumber(obj) && obj !== +obj;
1248
- };
1249
-
1250
- // Is a given value a boolean?
1251
- _.isBoolean = function(obj) {
1252
- return obj === true || obj === false || toString.call(obj) === '[object Boolean]';
1253
- };
1254
-
1255
- // Is a given value equal to null?
1256
- _.isNull = function(obj) {
1257
- return obj === null;
1258
- };
1259
-
1260
- // Is a given variable undefined?
1261
- _.isUndefined = function(obj) {
1262
- return obj === void 0;
1263
- };
1264
-
1265
- // Shortcut function for checking if an object has a given property directly
1266
- // on itself (in other words, not on a prototype).
1267
- _.has = function(obj, key) {
1268
- return obj != null && hasOwnProperty.call(obj, key);
1269
- };
1270
-
1271
- // Utility Functions
1272
- // -----------------
1273
-
1274
- // Run Underscore.js in *noConflict* mode, returning the `_` variable to its
1275
- // previous owner. Returns a reference to the Underscore object.
1276
- _.noConflict = function() {
1277
- root._ = previousUnderscore;
1278
- return this;
1279
- };
1280
-
1281
- // Keep the identity function around for default iteratees.
1282
- _.identity = function(value) {
1283
- return value;
1284
- };
1285
-
1286
- // Predicate-generating functions. Often useful outside of Underscore.
1287
- _.constant = function(value) {
1288
- return function() {
1289
- return value;
1290
- };
1291
- };
1292
-
1293
- _.noop = function(){};
1294
-
1295
- _.property = property;
1296
-
1297
- // Generates a function for a given object that returns a given property.
1298
- _.propertyOf = function(obj) {
1299
- return obj == null ? function(){} : function(key) {
1300
- return obj[key];
1301
- };
1302
- };
1303
-
1304
- // Returns a predicate for checking whether an object has a given set of
1305
- // `key:value` pairs.
1306
- _.matcher = _.matches = function(attrs) {
1307
- attrs = _.extendOwn({}, attrs);
1308
- return function(obj) {
1309
- return _.isMatch(obj, attrs);
1310
- };
1311
- };
1312
-
1313
- // Run a function **n** times.
1314
- _.times = function(n, iteratee, context) {
1315
- var accum = Array(Math.max(0, n));
1316
- iteratee = optimizeCb(iteratee, context, 1);
1317
- for (var i = 0; i < n; i++) accum[i] = iteratee(i);
1318
- return accum;
1319
- };
1320
-
1321
- // Return a random integer between min and max (inclusive).
1322
- _.random = function(min, max) {
1323
- if (max == null) {
1324
- max = min;
1325
- min = 0;
1326
- }
1327
- return min + Math.floor(Math.random() * (max - min + 1));
1328
- };
1329
-
1330
- // A (possibly faster) way to get the current timestamp as an integer.
1331
- _.now = Date.now || function() {
1332
- return new Date().getTime();
1333
- };
1334
-
1335
- // List of HTML entities for escaping.
1336
- var escapeMap = {
1337
- '&': '&amp;',
1338
- '<': '&lt;',
1339
- '>': '&gt;',
1340
- '"': '&quot;',
1341
- "'": '&#x27;',
1342
- '`': '&#x60;'
1343
- };
1344
- var unescapeMap = _.invert(escapeMap);
1345
-
1346
- // Functions for escaping and unescaping strings to/from HTML interpolation.
1347
- var createEscaper = function(map) {
1348
- var escaper = function(match) {
1349
- return map[match];
1350
- };
1351
- // Regexes for identifying a key that needs to be escaped
1352
- var source = '(?:' + _.keys(map).join('|') + ')';
1353
- var testRegexp = RegExp(source);
1354
- var replaceRegexp = RegExp(source, 'g');
1355
- return function(string) {
1356
- string = string == null ? '' : '' + string;
1357
- return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;
1358
- };
1359
- };
1360
- _.escape = createEscaper(escapeMap);
1361
- _.unescape = createEscaper(unescapeMap);
1362
-
1363
- // If the value of the named `property` is a function then invoke it with the
1364
- // `object` as context; otherwise, return it.
1365
- _.result = function(object, property, fallback) {
1366
- var value = object == null ? void 0 : object[property];
1367
- if (value === void 0) {
1368
- value = fallback;
1369
- }
1370
- return _.isFunction(value) ? value.call(object) : value;
1371
- };
1372
-
1373
- // Generate a unique integer id (unique within the entire client session).
1374
- // Useful for temporary DOM ids.
1375
- var idCounter = 0;
1376
- _.uniqueId = function(prefix) {
1377
- var id = ++idCounter + '';
1378
- return prefix ? prefix + id : id;
1379
- };
1380
-
1381
- // By default, Underscore uses ERB-style template delimiters, change the
1382
- // following template settings to use alternative delimiters.
1383
- _.templateSettings = {
1384
- evaluate : /<%([\s\S]+?)%>/g,
1385
- interpolate : /<%=([\s\S]+?)%>/g,
1386
- escape : /<%-([\s\S]+?)%>/g
1387
- };
1388
-
1389
- // When customizing `templateSettings`, if you don't want to define an
1390
- // interpolation, evaluation or escaping regex, we need one that is
1391
- // guaranteed not to match.
1392
- var noMatch = /(.)^/;
1393
-
1394
- // Certain characters need to be escaped so that they can be put into a
1395
- // string literal.
1396
- var escapes = {
1397
- "'": "'",
1398
- '\\': '\\',
1399
- '\r': 'r',
1400
- '\n': 'n',
1401
- '\u2028': 'u2028',
1402
- '\u2029': 'u2029'
1403
- };
1404
-
1405
- var escaper = /\\|'|\r|\n|\u2028|\u2029/g;
1406
-
1407
- var escapeChar = function(match) {
1408
- return '\\' + escapes[match];
1409
- };
1410
-
1411
- // JavaScript micro-templating, similar to John Resig's implementation.
1412
- // Underscore templating handles arbitrary delimiters, preserves whitespace,
1413
- // and correctly escapes quotes within interpolated code.
1414
- // NB: `oldSettings` only exists for backwards compatibility.
1415
- _.template = function(text, settings, oldSettings) {
1416
- if (!settings && oldSettings) settings = oldSettings;
1417
- settings = _.defaults({}, settings, _.templateSettings);
1418
-
1419
- // Combine delimiters into one regular expression via alternation.
1420
- var matcher = RegExp([
1421
- (settings.escape || noMatch).source,
1422
- (settings.interpolate || noMatch).source,
1423
- (settings.evaluate || noMatch).source
1424
- ].join('|') + '|$', 'g');
1425
-
1426
- // Compile the template source, escaping string literals appropriately.
1427
- var index = 0;
1428
- var source = "__p+='";
1429
- text.replace(matcher, function(match, escape, interpolate, evaluate, offset) {
1430
- source += text.slice(index, offset).replace(escaper, escapeChar);
1431
- index = offset + match.length;
1432
-
1433
- if (escape) {
1434
- source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'";
1435
- } else if (interpolate) {
1436
- source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'";
1437
- } else if (evaluate) {
1438
- source += "';\n" + evaluate + "\n__p+='";
1439
- }
1440
-
1441
- // Adobe VMs need the match returned to produce the correct offest.
1442
- return match;
1443
- });
1444
- source += "';\n";
1445
-
1446
- // If a variable is not specified, place data values in local scope.
1447
- if (!settings.variable) source = 'with(obj||{}){\n' + source + '}\n';
1448
-
1449
- source = "var __t,__p='',__j=Array.prototype.join," +
1450
- "print=function(){__p+=__j.call(arguments,'');};\n" +
1451
- source + 'return __p;\n';
1452
-
1453
- try {
1454
- var render = new Function(settings.variable || 'obj', '_', source);
1455
- } catch (e) {
1456
- e.source = source;
1457
- throw e;
1458
- }
1459
-
1460
- var template = function(data) {
1461
- return render.call(this, data, _);
1462
- };
1463
-
1464
- // Provide the compiled source as a convenience for precompilation.
1465
- var argument = settings.variable || 'obj';
1466
- template.source = 'function(' + argument + '){\n' + source + '}';
1467
-
1468
- return template;
1469
- };
1470
-
1471
- // Add a "chain" function. Start chaining a wrapped Underscore object.
1472
- _.chain = function(obj) {
1473
- var instance = _(obj);
1474
- instance._chain = true;
1475
- return instance;
1476
- };
1477
-
1478
- // OOP
1479
- // ---------------
1480
- // If Underscore is called as a function, it returns a wrapped object that
1481
- // can be used OO-style. This wrapper holds altered versions of all the
1482
- // underscore functions. Wrapped objects may be chained.
1483
-
1484
- // Helper function to continue chaining intermediate results.
1485
- var result = function(instance, obj) {
1486
- return instance._chain ? _(obj).chain() : obj;
1487
- };
1488
-
1489
- // Add your own custom functions to the Underscore object.
1490
- _.mixin = function(obj) {
1491
- _.each(_.functions(obj), function(name) {
1492
- var func = _[name] = obj[name];
1493
- _.prototype[name] = function() {
1494
- var args = [this._wrapped];
1495
- push.apply(args, arguments);
1496
- return result(this, func.apply(_, args));
1497
- };
1498
- });
1499
- };
1500
-
1501
- // Add all of the Underscore functions to the wrapper object.
1502
- _.mixin(_);
1503
-
1504
- // Add all mutator Array functions to the wrapper.
1505
- _.each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {
1506
- var method = ArrayProto[name];
1507
- _.prototype[name] = function() {
1508
- var obj = this._wrapped;
1509
- method.apply(obj, arguments);
1510
- if ((name === 'shift' || name === 'splice') && obj.length === 0) delete obj[0];
1511
- return result(this, obj);
1512
- };
1513
- });
1514
-
1515
- // Add all accessor Array functions to the wrapper.
1516
- _.each(['concat', 'join', 'slice'], function(name) {
1517
- var method = ArrayProto[name];
1518
- _.prototype[name] = function() {
1519
- return result(this, method.apply(this._wrapped, arguments));
1520
- };
1521
- });
1522
-
1523
- // Extracts the result from a wrapped and chained object.
1524
- _.prototype.value = function() {
1525
- return this._wrapped;
1526
- };
1527
-
1528
- // Provide unwrapping proxy for some methods used in engine operations
1529
- // such as arithmetic and JSON stringification.
1530
- _.prototype.valueOf = _.prototype.toJSON = _.prototype.value;
1531
-
1532
- _.prototype.toString = function() {
1533
- return '' + this._wrapped;
1534
- };
1535
-
1536
- // AMD registration happens at the end for compatibility with AMD loaders
1537
- // that may not enforce next-turn semantics on modules. Even though general
1538
- // practice for AMD registration is to be anonymous, underscore registers
1539
- // as a named module because, like jQuery, it is a base library that is
1540
- // popular enough to be bundled in a third party lib, but not be part of
1541
- // an AMD load request. Those cases could generate an error when an
1542
- // anonymous define() is called outside of a loader request.
1543
- if (typeof define === 'function' && define.amd) {
1544
- define('underscore', [], function() {
1545
- return _;
1546
- });
1547
- }
1548
- }.call(this));