date_picker 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1360) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/Rakefile +34 -0
  4. data/lib/date_picker.rb +21 -0
  5. data/lib/date_picker/form_helper.rb +33 -0
  6. data/lib/date_picker/form_tag_helper.rb +228 -0
  7. data/lib/date_picker/mappings.rb +76 -0
  8. data/lib/date_picker/mappings/moment.rb +7 -0
  9. data/lib/date_picker/railtie.rb +33 -0
  10. data/lib/date_picker/styles/bootstrap.rb +40 -0
  11. data/lib/date_picker/styles/jquery_ui.rb +36 -0
  12. data/lib/date_picker/version.rb +3 -0
  13. data/lib/generators/date_picker/config_generator.rb +16 -0
  14. data/lib/generators/date_picker/simple_form_generator.rb +15 -0
  15. data/lib/generators/date_picker/templates/config/date_picker.erb +8 -0
  16. data/lib/generators/date_picker/templates/inputs/date_picker_input.erb +22 -0
  17. data/lib/tasks/date_picker_tasks.rake +4 -0
  18. data/test/date_picker_test.rb +7 -0
  19. data/test/dummy/README.rdoc +28 -0
  20. data/test/dummy/Rakefile +6 -0
  21. data/test/dummy/app/assets/javascripts/application.js +17 -0
  22. data/test/dummy/app/assets/javascripts/events.js +2 -0
  23. data/test/dummy/app/assets/stylesheets/application.css +16 -0
  24. data/test/dummy/app/assets/stylesheets/events.css +4 -0
  25. data/test/dummy/app/assets/stylesheets/scaffold.css +56 -0
  26. data/test/dummy/app/controllers/application_controller.rb +5 -0
  27. data/test/dummy/app/controllers/events_controller.rb +58 -0
  28. data/test/dummy/app/helpers/application_helper.rb +2 -0
  29. data/test/dummy/app/helpers/events_helper.rb +2 -0
  30. data/test/dummy/app/inputs/date_picker_input.rb +22 -0
  31. data/test/dummy/app/inputs/date_time_input.rb +22 -0
  32. data/test/dummy/app/models/event.rb +2 -0
  33. data/test/dummy/app/views/events/_form.html.erb +26 -0
  34. data/test/dummy/app/views/events/edit.html.erb +6 -0
  35. data/test/dummy/app/views/events/index.html.erb +31 -0
  36. data/test/dummy/app/views/events/new.html.erb +5 -0
  37. data/test/dummy/app/views/events/show.html.erb +19 -0
  38. data/test/dummy/app/views/layouts/application.html.erb +16 -0
  39. data/test/dummy/bin/bundle +3 -0
  40. data/test/dummy/bin/rails +4 -0
  41. data/test/dummy/bin/rake +4 -0
  42. data/test/dummy/bin/setup +29 -0
  43. data/test/dummy/bower.json +21 -0
  44. data/test/dummy/config.ru +4 -0
  45. data/test/dummy/config/application.rb +28 -0
  46. data/test/dummy/config/boot.rb +5 -0
  47. data/test/dummy/config/database.yml +25 -0
  48. data/test/dummy/config/environment.rb +5 -0
  49. data/test/dummy/config/environments/development.rb +41 -0
  50. data/test/dummy/config/environments/production.rb +79 -0
  51. data/test/dummy/config/environments/test.rb +42 -0
  52. data/test/dummy/config/initializers/assets.rb +11 -0
  53. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  54. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  55. data/test/dummy/config/initializers/date_picker.rb +8 -0
  56. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  57. data/test/dummy/config/initializers/inflections.rb +16 -0
  58. data/test/dummy/config/initializers/mime_types.rb +4 -0
  59. data/test/dummy/config/initializers/session_store.rb +3 -0
  60. data/test/dummy/config/initializers/simple_form.rb +166 -0
  61. data/test/dummy/config/initializers/simple_form_bootstrap.rb +136 -0
  62. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  63. data/test/dummy/config/locales/en.yml +30 -0
  64. data/test/dummy/config/locales/simple_form.en.yml +31 -0
  65. data/test/dummy/config/routes.rb +57 -0
  66. data/test/dummy/config/secrets.yml +22 -0
  67. data/test/dummy/db/development.sqlite3 +0 -0
  68. data/test/dummy/db/migrate/20150421155740_create_events.rb +11 -0
  69. data/test/dummy/db/schema.rb +24 -0
  70. data/test/dummy/lib/templates/erb/scaffold/_form.html.erb +13 -0
  71. data/test/dummy/log/development.log +3252 -0
  72. data/test/dummy/public/404.html +67 -0
  73. data/test/dummy/public/422.html +67 -0
  74. data/test/dummy/public/500.html +66 -0
  75. data/test/dummy/public/favicon.ico +0 -0
  76. data/test/dummy/test/controllers/events_controller_test.rb +49 -0
  77. data/test/dummy/test/fixtures/events.yml +11 -0
  78. data/test/dummy/test/models/event_test.rb +7 -0
  79. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-q54lB4AlRHyEZi6ZnpoIn4wtA-xz660-pgpRX5ACGY.cache +1 -0
  80. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/00IggDaXjSrF74uRPxY4AAw1IR7t9_Ac9t5miWSxC1w.cache +1 -0
  81. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0GrLssg7b7ttaReBr2oj9WY6rh1CACDEU4dST6R-W14.cache +0 -0
  82. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/1utVWuNaR24-d7q_THRsS36kQBJJPq1Tby92u-QUhVQ.cache +0 -0
  83. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/25Gs0xVTKbdbNaadqvHdi3zm5MM3xjrc2KSmHQDuIu0.cache +1 -0
  84. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/25voJUhn5xCHDtLS-YAJeD_YsQb7wg1VcaNdZCLwizM.cache +0 -0
  85. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/2D2SASGCBTqtUEBsklOQX3ZxcoPzF4UFRw5976grFAI.cache +1 -0
  86. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/4-FESDIX-PMBy0gbAXkRdZYJoMtO1jo_oQG3-990Wek.cache +9 -0
  87. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/4HPLNHd0_4anbcn1RcYrwtKIr00pa7Jb_Dsd9AX_OCQ.cache +1 -0
  88. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/5cVacNLPabB4FueJj2gIFXIlGb8x_CI22f07IC31p8Q.cache +1 -0
  89. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/5fZgp8BEzNNwmUew1xwh931dNlG3wlf6G5T8ClSnmY4.cache +0 -0
  90. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6UJV7Q12FZJnYsIFIkArNd3cYtwqoscK3h2pxawIwpg.cache +2 -0
  91. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6XtY2IYnR3fjnszLouC4AHTlm3ownFiNZMRvUmw8fIo.cache +2 -0
  92. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6jbtcpoR3YoFinQEr-FdQMLWQ7llZRIPZBzUBHtVvzg.cache +2 -0
  93. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/8pu56AxtR8Gfh3J_aW6R2tO5cIypfF8nn209DmxYsjg.cache +0 -0
  94. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9LR02Hy6t4CVo9bO7DwmFxEOrGu2FonGOFOlwMDYMYE.cache +0 -0
  95. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9scPEXWTvWsJwK7NvecBxLR8X8FmKddvyvzpxPVlvgI.cache +2 -0
  96. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/BZtq8DcvWfkwoB1qbl1d3rD1FULl6aSVCttjpthRIT0.cache +1 -0
  97. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/BsEtkpsaw38uDZ9p9_GG0auVOlYQgZzr-uKGc5FXUWI.cache +1 -0
  98. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/CBuvwt4s_eXvq-01jqTIsKcQvIPouPcY79KCXz0Ntpk.cache +0 -0
  99. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/CePBwBE3UVb1NAuvov7KILtybsOe9veh07m2-77tdwE.cache +2 -0
  100. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/DfGgJHTEUDz1q0g845Ahe1Xs-CwVAxcycQJxh-5shR4.cache +1 -0
  101. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/GReH0CZn97YV1iisZUgrowOdkDo75w3PogSGWZ2Gd98.cache +2 -0
  102. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/H3J6N3hfedfbXKVgkXPJQ8ELwzCLs-Lc5vPrpoRMTvY.cache +1 -0
  103. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/IIA7bl9GLkUac9K8Dx7Q5jEogmp6QZR0yY_X5X2Ehz8.cache +1 -0
  104. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/INGKqc_HwkxsxrVFX8Y4r0nilLmYhmGdJ8kEUQTE-oI.cache +2 -0
  105. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/J8IHhzsBsAEOhk4nQfl7TQcwewH86vD9EPyd8Ka3GXY.cache +1 -0
  106. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/JLm55r-Xc2Q772BAZeDJPaHEq3km0mriAukgvntzFfM.cache +1 -0
  107. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/K7guQLiXpBz4J12MTcVd2pX59Bn0mtVsx7hApxcHDUI.cache +0 -0
  108. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/KWFIdhqWLzygIS07JOXfD2nSU14JLAi_YAkzIBC7WMQ.cache +1 -0
  109. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MwRB8Vrn76VZpy8ZdXWSvI4TGyf7mY4u0YL0vP0hS-0.cache +0 -0
  110. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/NsPfgTZksrQm-3upX8VeCtinfcGTWWvvB602fKUL32Y.cache +0 -0
  111. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/NwXtfJkYPOynJHv60ed7agIJAxZXLucN6YVhuNgd58w.cache +0 -0
  112. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/OWaLyX6OSbXDN6LTMxU32B4Waf5wEej2b6kOuNMLyxQ.cache +2 -0
  113. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/PLkbs-c2ejtpBV0P3t5NT4-iYDckvfxN4Dfnn4j1lNU.cache +1 -0
  114. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/PR8srUFdUhaC6vHv2dW5_BhBJQa_iqdSk2U1mtjjcZw.cache +1 -0
  115. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/R7xut--FNzMb2jNt5AWuL3CXWbp5IZ4kGks9IMUEVPo.cache +0 -0
  116. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RR_Z_6NVdv1g_gKM0DxAH7dqCccUHh2H61YucUbZiT0.cache +0 -0
  117. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RnrhqwzueP5GoARPgWJGjjJBYsRCH89Tx1ceW77SNSc.cache +2 -0
  118. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RpSnlNLuFpBKe4dwvETZwbOfPV0KxDbDvmaVI7JypPA.cache +2 -0
  119. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/SgisVuteMo0Fr0v_GUesHP3HH2Ak95xLAjGcU9Lwod4.cache +0 -0
  120. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TMucnWoHwVk0i5fU9lnleDUTEtNTYpqe6nmm4T2eAyM.cache +0 -0
  121. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/UYvblA-C1EgnK1XReBbm9hrOyCjK4zxFeXbrd0nSvX4.cache +0 -0
  122. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VUYbQNDTrKqvVQ1ouDbhBCa-sriD1v9doCxAp_T8KgQ.cache +1 -0
  123. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/WLUcc14ocRJtbuPdiAi_d_9ZZCZSftVqMhGOw0bsVaM.cache +1 -0
  124. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XEUwb4LhCrKqA3GGjkKZb3Mr1T0V35nZ3eWaRzzo5fQ.cache +1 -0
  125. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Y9URx5QKFclE1CED_VmHCEUUiIelZ99h4VpZhzLmYMs.cache +1 -0
  126. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZI9kZIPtTmlhEC5b1XnWdWlVVdTqbkBXSvjQhmP2HX4.cache +2 -0
  127. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZN8p7Stz-YFu7i9v3aS1xuAgSZlVc41PI61Sh16V2bQ.cache +2 -0
  128. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZwqlzSev2wwY-p4j7HgfFOwi4tbfO95GjM0KQlUcZzo.cache +0 -0
  129. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/_YaAJK3GGox9Caf3-Tk6arP2T_4Ai0uUtQ50mxDarEc.cache +0 -0
  130. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/bYm5yA8YsfhvZ17nTGaZycC-UtWb5GVRHEeNK2_5vuQ.cache +0 -0
  131. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/bdf-u_uOavWUuEtC4J7nWscWLPB_gxWNZVOl9KWNTKo.cache +0 -0
  132. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cHgWmQBPYhbzk6fZYFBN9usZqN64ui4jV9eX2Lx2gJo.cache +0 -0
  133. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cSfEqgLMLMTJIS7s4L-p1qveiX_0JQ--DlOoHnF8cWw.cache +0 -0
  134. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/dAsk9VwColBx_BKrkICP0UCLQ6rFOy0GQDaCpwbckzs.cache +2 -0
  135. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/dmVQjOUcyXUqzF2JwMV-f_qDA6Xl2w8e61677Yq1YVI.cache +1 -0
  136. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/eVQGJ7_RwvbfMIRNJPP24yiPUNrKKGIaT09NqsRKLuQ.cache +1 -0
  137. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ei2F_0rocjY_oaaPPtU8ja2AUeVbKhkHm0hSXX__Xnc.cache +2 -0
  138. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ggMWZt6mzE-y5RsQ0XeKrwu9MQOr82ERxVMR3kMrjuI.cache +1 -0
  139. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/hf9AhHXQEqLjZfLtARvW7UIME8PKKjqG_TRIdgkokl4.cache +0 -0
  140. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/i-POaoKJLzMeWC3b4x-19LPRgad4Q4ZkG0PLR9kVQ_o.cache +0 -0
  141. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/i7k3rapQGoHsVKGiKxRjPC_OKkpU9Oi5kE8XDSwjn4s.cache +0 -0
  142. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/iPgpMNYu8ae-wLuWHDwdm9HAVU5NX1iw8k07YB1TcfI.cache +2 -0
  143. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/loWr0ILFzZ9QQA1g9aoddMOvsniAtaEAVjIu2fkR2Bg.cache +0 -0
  144. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/m66-tOnR_O1xesVa2_Uqs5OZ_XqEILtFHhOlH5qesf0.cache +1 -0
  145. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/n3A9AgGG_LWh19iQLo0J9cPsYvAC6YPnZEp0YLS4Zpg.cache +9 -0
  146. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nAAlZG-ZH0r0cKbfPDolSlWmaQd1NY85kUDG-pGwRio.cache +0 -0
  147. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nBO1zGXYle8GOhoTqAqlCNkmiPNNsJgpgqNU2_XFiDE.cache +1 -0
  148. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nucmMrsWR8rfEIBWuTFkFlVoSDu7pLr9tqTvXZhKwyo.cache +1 -0
  149. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/qIhTJKvF6hFZG-nk5iZoiDLHfDWs9zwESijT_2O3I6c.cache +1 -0
  150. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/r-t_hKtPObURNHWyAJ7ZukzghXpLqbm3_f-Zh3-VUAs.cache +2 -0
  151. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/r3dvvuCme39pWewiw8QMRpvHJUcfgLtgHyx1AgMRLcg.cache +0 -0
  152. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/sIUg5vbceVgBTM0X-BJgr6zRTuDc_Q2Kz_WLbykclSw.cache +2 -0
  153. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/uKo1gXCxjSJ6mr7qkSJTLHmYu2xMexrVyLTtHjYrgG0.cache +0 -0
  154. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vE0PGSibRowzTnSUhFwanfLBSPsnKi_fO1wkETCYc-s.cache +1 -0
  155. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vm_p5YDasW7QkGlUGog3ELn7JxSYQiYnGUC0cIwqr9s.cache +1 -0
  156. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/wenenOXuSMMRso3XiFZ9AvoX-WSo2rH40oZZlPHGs-o.cache +0 -0
  157. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yensQFudwo98IFMyEh7AJE6XNTbJKzA60ecH0RnH2n4.cache +0 -0
  158. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ykQVd8_bjKtciuHUDjlvQbsiYIh4hiepbznqcCBPPAg.cache +0 -0
  159. data/test/dummy/vendor/assets/components/bootstrap/Gruntfile.js +511 -0
  160. data/test/dummy/vendor/assets/components/bootstrap/LICENSE +21 -0
  161. data/test/dummy/vendor/assets/components/bootstrap/README.md +134 -0
  162. data/test/dummy/vendor/assets/components/bootstrap/bower.json +39 -0
  163. data/test/dummy/vendor/assets/components/bootstrap/dist/css/bootstrap-theme.css +476 -0
  164. data/test/dummy/vendor/assets/components/bootstrap/dist/css/bootstrap-theme.css.map +1 -0
  165. data/test/dummy/vendor/assets/components/bootstrap/dist/css/bootstrap-theme.min.css +5 -0
  166. data/test/dummy/vendor/assets/components/bootstrap/dist/css/bootstrap.css +6584 -0
  167. data/test/dummy/vendor/assets/components/bootstrap/dist/css/bootstrap.css.map +1 -0
  168. data/test/dummy/vendor/assets/components/bootstrap/dist/css/bootstrap.min.css +5 -0
  169. data/test/dummy/vendor/assets/components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  170. data/test/dummy/vendor/assets/components/bootstrap/dist/fonts/glyphicons-halflings-regular.svg +288 -0
  171. data/test/dummy/vendor/assets/components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  172. data/test/dummy/vendor/assets/components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  173. data/test/dummy/vendor/assets/components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
  174. data/test/dummy/vendor/assets/components/bootstrap/dist/js/bootstrap.js +2317 -0
  175. data/test/dummy/vendor/assets/components/bootstrap/dist/js/bootstrap.min.js +7 -0
  176. data/test/dummy/vendor/assets/components/bootstrap/dist/js/npm.js +13 -0
  177. data/test/dummy/vendor/assets/components/bootstrap/fonts/glyphicons-halflings-regular.eot +0 -0
  178. data/test/dummy/vendor/assets/components/bootstrap/fonts/glyphicons-halflings-regular.svg +288 -0
  179. data/test/dummy/vendor/assets/components/bootstrap/fonts/glyphicons-halflings-regular.ttf +0 -0
  180. data/test/dummy/vendor/assets/components/bootstrap/fonts/glyphicons-halflings-regular.woff +0 -0
  181. data/test/dummy/vendor/assets/components/bootstrap/fonts/glyphicons-halflings-regular.woff2 +0 -0
  182. data/test/dummy/vendor/assets/components/bootstrap/grunt/bs-commonjs-generator.js +23 -0
  183. data/test/dummy/vendor/assets/components/bootstrap/grunt/bs-glyphicons-data-generator.js +41 -0
  184. data/test/dummy/vendor/assets/components/bootstrap/grunt/bs-lessdoc-parser.js +238 -0
  185. data/test/dummy/vendor/assets/components/bootstrap/grunt/bs-raw-files-generator.js +46 -0
  186. data/test/dummy/vendor/assets/components/bootstrap/grunt/configBridge.json +46 -0
  187. data/test/dummy/vendor/assets/components/bootstrap/grunt/sauce_browsers.yml +82 -0
  188. data/test/dummy/vendor/assets/components/bootstrap/js/affix.js +162 -0
  189. data/test/dummy/vendor/assets/components/bootstrap/js/alert.js +94 -0
  190. data/test/dummy/vendor/assets/components/bootstrap/js/button.js +116 -0
  191. data/test/dummy/vendor/assets/components/bootstrap/js/carousel.js +237 -0
  192. data/test/dummy/vendor/assets/components/bootstrap/js/collapse.js +211 -0
  193. data/test/dummy/vendor/assets/components/bootstrap/js/dropdown.js +161 -0
  194. data/test/dummy/vendor/assets/components/bootstrap/js/modal.js +339 -0
  195. data/test/dummy/vendor/assets/components/bootstrap/js/popover.js +108 -0
  196. data/test/dummy/vendor/assets/components/bootstrap/js/scrollspy.js +172 -0
  197. data/test/dummy/vendor/assets/components/bootstrap/js/tab.js +153 -0
  198. data/test/dummy/vendor/assets/components/bootstrap/js/tooltip.js +476 -0
  199. data/test/dummy/vendor/assets/components/bootstrap/js/transition.js +59 -0
  200. data/test/dummy/vendor/assets/components/bootstrap/less/alerts.less +73 -0
  201. data/test/dummy/vendor/assets/components/bootstrap/less/badges.less +66 -0
  202. data/test/dummy/vendor/assets/components/bootstrap/less/bootstrap.less +50 -0
  203. data/test/dummy/vendor/assets/components/bootstrap/less/breadcrumbs.less +26 -0
  204. data/test/dummy/vendor/assets/components/bootstrap/less/button-groups.less +243 -0
  205. data/test/dummy/vendor/assets/components/bootstrap/less/buttons.less +160 -0
  206. data/test/dummy/vendor/assets/components/bootstrap/less/carousel.less +269 -0
  207. data/test/dummy/vendor/assets/components/bootstrap/less/close.less +34 -0
  208. data/test/dummy/vendor/assets/components/bootstrap/less/code.less +69 -0
  209. data/test/dummy/vendor/assets/components/bootstrap/less/component-animations.less +33 -0
  210. data/test/dummy/vendor/assets/components/bootstrap/less/dropdowns.less +214 -0
  211. data/test/dummy/vendor/assets/components/bootstrap/less/forms.less +574 -0
  212. data/test/dummy/vendor/assets/components/bootstrap/less/glyphicons.less +305 -0
  213. data/test/dummy/vendor/assets/components/bootstrap/less/grid.less +84 -0
  214. data/test/dummy/vendor/assets/components/bootstrap/less/input-groups.less +166 -0
  215. data/test/dummy/vendor/assets/components/bootstrap/less/jumbotron.less +50 -0
  216. data/test/dummy/vendor/assets/components/bootstrap/less/labels.less +64 -0
  217. data/test/dummy/vendor/assets/components/bootstrap/less/list-group.less +124 -0
  218. data/test/dummy/vendor/assets/components/bootstrap/less/media.less +61 -0
  219. data/test/dummy/vendor/assets/components/bootstrap/less/mixins.less +39 -0
  220. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/alerts.less +14 -0
  221. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/background-variant.less +8 -0
  222. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/border-radius.less +18 -0
  223. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/buttons.less +52 -0
  224. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/center-block.less +7 -0
  225. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/clearfix.less +22 -0
  226. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/forms.less +85 -0
  227. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/gradients.less +59 -0
  228. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/grid-framework.less +91 -0
  229. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/grid.less +122 -0
  230. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/hide-text.less +21 -0
  231. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/image.less +33 -0
  232. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/labels.less +12 -0
  233. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/list-group.less +29 -0
  234. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/nav-divider.less +10 -0
  235. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/nav-vertical-align.less +9 -0
  236. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/opacity.less +8 -0
  237. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/pagination.less +23 -0
  238. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/panels.less +24 -0
  239. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/progress-bar.less +10 -0
  240. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/reset-filter.less +8 -0
  241. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/resize.less +6 -0
  242. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/responsive-visibility.less +15 -0
  243. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/size.less +10 -0
  244. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/tab-focus.less +9 -0
  245. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/table-row.less +28 -0
  246. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/text-emphasis.less +8 -0
  247. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/text-overflow.less +8 -0
  248. data/test/dummy/vendor/assets/components/bootstrap/less/mixins/vendor-prefixes.less +227 -0
  249. data/test/dummy/vendor/assets/components/bootstrap/less/modals.less +150 -0
  250. data/test/dummy/vendor/assets/components/bootstrap/less/navbar.less +660 -0
  251. data/test/dummy/vendor/assets/components/bootstrap/less/navs.less +242 -0
  252. data/test/dummy/vendor/assets/components/bootstrap/less/normalize.less +427 -0
  253. data/test/dummy/vendor/assets/components/bootstrap/less/pager.less +54 -0
  254. data/test/dummy/vendor/assets/components/bootstrap/less/pagination.less +88 -0
  255. data/test/dummy/vendor/assets/components/bootstrap/less/panels.less +265 -0
  256. data/test/dummy/vendor/assets/components/bootstrap/less/popovers.less +135 -0
  257. data/test/dummy/vendor/assets/components/bootstrap/less/print.less +107 -0
  258. data/test/dummy/vendor/assets/components/bootstrap/less/progress-bars.less +87 -0
  259. data/test/dummy/vendor/assets/components/bootstrap/less/responsive-embed.less +35 -0
  260. data/test/dummy/vendor/assets/components/bootstrap/less/responsive-utilities.less +194 -0
  261. data/test/dummy/vendor/assets/components/bootstrap/less/scaffolding.less +162 -0
  262. data/test/dummy/vendor/assets/components/bootstrap/less/tables.less +234 -0
  263. data/test/dummy/vendor/assets/components/bootstrap/less/theme.less +273 -0
  264. data/test/dummy/vendor/assets/components/bootstrap/less/thumbnails.less +36 -0
  265. data/test/dummy/vendor/assets/components/bootstrap/less/tooltip.less +102 -0
  266. data/test/dummy/vendor/assets/components/bootstrap/less/type.less +302 -0
  267. data/test/dummy/vendor/assets/components/bootstrap/less/utilities.less +55 -0
  268. data/test/dummy/vendor/assets/components/bootstrap/less/variables.less +861 -0
  269. data/test/dummy/vendor/assets/components/bootstrap/less/wells.less +29 -0
  270. data/test/dummy/vendor/assets/components/bootstrap/package.js +22 -0
  271. data/test/dummy/vendor/assets/components/bootstrap/package.json +93 -0
  272. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/CONTRIBUTING.md +32 -0
  273. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/Gruntfile.js +194 -0
  274. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/LICENSE +21 -0
  275. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/README.md +25 -0
  276. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/bower.json +37 -0
  277. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.css +366 -0
  278. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css +366 -0
  279. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js +8 -0
  280. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/build/nuget/Bootstrap.v3.Datetimepicker.4.0.0.nupkg +0 -0
  281. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/build/nuget/Bootstrap.v3.Datetimepicker.CSS.4.0.0.nupkg +0 -0
  282. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/component.json +9 -0
  283. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/composer.json +31 -0
  284. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/package.json +35 -0
  285. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/src/js/bootstrap-datetimepicker.js +2051 -0
  286. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/src/less/_bootstrap-datetimepicker.less +343 -0
  287. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/src/less/bootstrap-datetimepicker-build.less +17 -0
  288. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/src/nuget/Bootstrap.v3.Datetimepicker.CSS.nuspec +30 -0
  289. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/src/nuget/Bootstrap.v3.Datetimepicker.nuspec +30 -0
  290. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/src/nuget/NuGet.exe +0 -0
  291. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/src/nuget/install.ps1 +2 -0
  292. data/test/dummy/vendor/assets/components/eonasdan-bootstrap-datetimepicker/tasks/bump_version.js +88 -0
  293. data/test/dummy/vendor/assets/components/jquery-ui/AUTHORS.txt +284 -0
  294. data/test/dummy/vendor/assets/components/jquery-ui/LICENSE.txt +44 -0
  295. data/test/dummy/vendor/assets/components/jquery-ui/README.md +11 -0
  296. data/test/dummy/vendor/assets/components/jquery-ui/bower.json +12 -0
  297. data/test/dummy/vendor/assets/components/jquery-ui/component.json +13 -0
  298. data/test/dummy/vendor/assets/components/jquery-ui/composer.json +69 -0
  299. data/test/dummy/vendor/assets/components/jquery-ui/jquery-ui.js +16617 -0
  300. data/test/dummy/vendor/assets/components/jquery-ui/jquery-ui.min.js +13 -0
  301. data/test/dummy/vendor/assets/components/jquery-ui/package.json +71 -0
  302. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/accordion.css +36 -0
  303. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/all.css +12 -0
  304. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/autocomplete.css +16 -0
  305. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/base.css +28 -0
  306. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/button.css +114 -0
  307. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/core.css +93 -0
  308. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/datepicker.css +175 -0
  309. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/dialog.css +70 -0
  310. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/draggable.css +12 -0
  311. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  312. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  313. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  314. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  315. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  316. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  317. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  318. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  319. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_222222_256x240.png +0 -0
  320. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_2e83ff_256x240.png +0 -0
  321. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_444444_256x240.png +0 -0
  322. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_454545_256x240.png +0 -0
  323. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_555555_256x240.png +0 -0
  324. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_777620_256x240.png +0 -0
  325. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_777777_256x240.png +0 -0
  326. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_888888_256x240.png +0 -0
  327. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_cc0000_256x240.png +0 -0
  328. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_cd0a0a_256x240.png +0 -0
  329. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/images/ui-icons_ffffff_256x240.png +0 -0
  330. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/jquery-ui.css +1225 -0
  331. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/jquery-ui.min.css +7 -0
  332. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/menu.css +63 -0
  333. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/progressbar.css +28 -0
  334. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/resizable.css +78 -0
  335. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/selectable.css +17 -0
  336. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/selectmenu.css +59 -0
  337. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/slider.css +75 -0
  338. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/sortable.css +12 -0
  339. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/spinner.css +65 -0
  340. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/tabs.css +51 -0
  341. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/theme.css +410 -0
  342. data/test/dummy/vendor/assets/components/jquery-ui/themes/base/tooltip.css +21 -0
  343. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/animated-overlay.gif +0 -0
  344. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-bg_diagonals-thick_8_333333_40x40.png +0 -0
  345. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-bg_flat_65_ffffff_40x100.png +0 -0
  346. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-bg_glass_40_111111_1x400.png +0 -0
  347. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-bg_glass_55_1c1c1c_1x400.png +0 -0
  348. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-bg_highlight-hard_100_f9f9f9_1x100.png +0 -0
  349. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-bg_highlight-hard_40_aaaaaa_1x100.png +0 -0
  350. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-bg_highlight-soft_50_aaaaaa_1x100.png +0 -0
  351. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-bg_inset-hard_45_cd0a0a_1x100.png +0 -0
  352. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-bg_inset-hard_55_ffeb80_1x100.png +0 -0
  353. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-icons_222222_256x240.png +0 -0
  354. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-icons_4ca300_256x240.png +0 -0
  355. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-icons_bbbbbb_256x240.png +0 -0
  356. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-icons_ededed_256x240.png +0 -0
  357. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-icons_ffcf29_256x240.png +0 -0
  358. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/images/ui-icons_ffffff_256x240.png +0 -0
  359. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/jquery-ui.css +1225 -0
  360. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/jquery-ui.min.css +7 -0
  361. data/test/dummy/vendor/assets/components/jquery-ui/themes/black-tie/theme.css +410 -0
  362. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/animated-overlay.gif +0 -0
  363. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-bg_diagonals-thick_75_f3d8d8_40x40.png +0 -0
  364. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-bg_dots-small_65_a6a6a6_2x2.png +0 -0
  365. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-bg_flat_0_333333_40x100.png +0 -0
  366. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-bg_flat_65_ffffff_40x100.png +0 -0
  367. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  368. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-bg_glass_55_fbf8ee_1x400.png +0 -0
  369. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-bg_highlight-hard_100_eeeeee_1x100.png +0 -0
  370. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-bg_highlight-hard_100_f6f6f6_1x100.png +0 -0
  371. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-bg_highlight-soft_15_cc0000_1x100.png +0 -0
  372. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-icons_004276_256x240.png +0 -0
  373. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-icons_cc0000_256x240.png +0 -0
  374. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/images/ui-icons_ffffff_256x240.png +0 -0
  375. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/jquery-ui.css +1225 -0
  376. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/jquery-ui.min.css +7 -0
  377. data/test/dummy/vendor/assets/components/jquery-ui/themes/blitzer/theme.css +410 -0
  378. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/animated-overlay.gif +0 -0
  379. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-bg_diagonals-thick_90_eeeeee_40x40.png +0 -0
  380. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-bg_flat_15_cd0a0a_40x100.png +0 -0
  381. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-bg_glass_100_e4f1fb_1x400.png +0 -0
  382. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-bg_glass_50_3baae3_1x400.png +0 -0
  383. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-bg_glass_80_d7ebf9_1x400.png +0 -0
  384. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-bg_highlight-hard_100_f2f5f7_1x100.png +0 -0
  385. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-bg_highlight-hard_70_000000_1x100.png +0 -0
  386. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-bg_highlight-soft_100_deedf7_1x100.png +0 -0
  387. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-bg_highlight-soft_25_ffef8f_1x100.png +0 -0
  388. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-icons_2694e8_256x240.png +0 -0
  389. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-icons_2e83ff_256x240.png +0 -0
  390. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-icons_3d80b3_256x240.png +0 -0
  391. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-icons_72a7cf_256x240.png +0 -0
  392. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/images/ui-icons_ffffff_256x240.png +0 -0
  393. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/jquery-ui.css +1225 -0
  394. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/jquery-ui.min.css +7 -0
  395. data/test/dummy/vendor/assets/components/jquery-ui/themes/cupertino/theme.css +410 -0
  396. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/animated-overlay.gif +0 -0
  397. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-bg_flat_30_cccccc_40x100.png +0 -0
  398. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-bg_flat_50_5c5c5c_40x100.png +0 -0
  399. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-bg_glass_40_ffc73d_1x400.png +0 -0
  400. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-hard_20_0972a5_1x100.png +0 -0
  401. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-soft_33_003147_1x100.png +0 -0
  402. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-soft_35_222222_1x100.png +0 -0
  403. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-soft_44_444444_1x100.png +0 -0
  404. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-soft_80_eeeeee_1x100.png +0 -0
  405. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-bg_loop_25_000000_21x21.png +0 -0
  406. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-icons_222222_256x240.png +0 -0
  407. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-icons_4b8e0b_256x240.png +0 -0
  408. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-icons_a83300_256x240.png +0 -0
  409. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-icons_cccccc_256x240.png +0 -0
  410. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/images/ui-icons_ffffff_256x240.png +0 -0
  411. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/jquery-ui.css +1225 -0
  412. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/jquery-ui.min.css +7 -0
  413. data/test/dummy/vendor/assets/components/jquery-ui/themes/dark-hive/theme.css +410 -0
  414. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/animated-overlay.gif +0 -0
  415. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-bg_diagonals-thick_15_0b3e6f_40x40.png +0 -0
  416. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-bg_dots-medium_30_0b58a2_4x4.png +0 -0
  417. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-bg_dots-small_20_333333_2x2.png +0 -0
  418. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-bg_dots-small_30_a32d00_2x2.png +0 -0
  419. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-bg_dots-small_40_00498f_2x2.png +0 -0
  420. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  421. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-bg_flat_40_292929_40x100.png +0 -0
  422. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-bg_gloss-wave_20_111111_500x100.png +0 -0
  423. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-icons_00498f_256x240.png +0 -0
  424. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-icons_98d2fb_256x240.png +0 -0
  425. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-icons_9ccdfc_256x240.png +0 -0
  426. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/images/ui-icons_ffffff_256x240.png +0 -0
  427. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/jquery-ui.css +1225 -0
  428. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/jquery-ui.min.css +7 -0
  429. data/test/dummy/vendor/assets/components/jquery-ui/themes/dot-luv/theme.css +410 -0
  430. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/animated-overlay.gif +0 -0
  431. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  432. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-bg_flat_0_eeeeee_40x100.png +0 -0
  433. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-bg_flat_55_994d53_40x100.png +0 -0
  434. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-bg_flat_55_fafafa_40x100.png +0 -0
  435. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-bg_gloss-wave_30_3d3644_500x100.png +0 -0
  436. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-bg_highlight-soft_100_dcd9de_1x100.png +0 -0
  437. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-bg_highlight-soft_100_eae6ea_1x100.png +0 -0
  438. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-bg_highlight-soft_25_30273a_1x100.png +0 -0
  439. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-bg_highlight-soft_45_5f5964_1x100.png +0 -0
  440. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-icons_454545_256x240.png +0 -0
  441. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-icons_734d99_256x240.png +0 -0
  442. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-icons_8d78a5_256x240.png +0 -0
  443. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-icons_a8a3ae_256x240.png +0 -0
  444. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-icons_ebccce_256x240.png +0 -0
  445. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/images/ui-icons_ffffff_256x240.png +0 -0
  446. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/jquery-ui.css +1225 -0
  447. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/jquery-ui.min.css +7 -0
  448. data/test/dummy/vendor/assets/components/jquery-ui/themes/eggplant/theme.css +410 -0
  449. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/animated-overlay.gif +0 -0
  450. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-bg_diagonals-small_25_c5ddfc_40x40.png +0 -0
  451. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-bg_diagonals-thick_20_e69700_40x40.png +0 -0
  452. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-bg_diagonals-thick_22_1484e6_40x40.png +0 -0
  453. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-bg_diagonals-thick_26_2293f7_40x40.png +0 -0
  454. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-bg_flat_0_e69700_40x100.png +0 -0
  455. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-bg_flat_0_e6b900_40x100.png +0 -0
  456. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-bg_highlight-soft_100_f9f9f9_1x100.png +0 -0
  457. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-bg_inset-hard_100_eeeeee_1x100.png +0 -0
  458. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-icons_0a82eb_256x240.png +0 -0
  459. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-icons_0b54d5_256x240.png +0 -0
  460. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-icons_5fa5e3_256x240.png +0 -0
  461. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-icons_fcdd4a_256x240.png +0 -0
  462. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/images/ui-icons_ffffff_256x240.png +0 -0
  463. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/jquery-ui.css +1225 -0
  464. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/jquery-ui.min.css +7 -0
  465. data/test/dummy/vendor/assets/components/jquery-ui/themes/excite-bike/theme.css +410 -0
  466. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/animated-overlay.gif +0 -0
  467. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  468. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-bg_flat_0_eeeeee_40x100.png +0 -0
  469. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-bg_flat_55_ffffff_40x100.png +0 -0
  470. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  471. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  472. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-bg_highlight-soft_100_f6f6f6_1x100.png +0 -0
  473. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-bg_highlight-soft_25_0073ea_1x100.png +0 -0
  474. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-bg_highlight-soft_50_dddddd_1x100.png +0 -0
  475. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-icons_0073ea_256x240.png +0 -0
  476. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-icons_454545_256x240.png +0 -0
  477. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-icons_666666_256x240.png +0 -0
  478. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-icons_ff0084_256x240.png +0 -0
  479. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/images/ui-icons_ffffff_256x240.png +0 -0
  480. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/jquery-ui.css +1225 -0
  481. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/jquery-ui.min.css +7 -0
  482. data/test/dummy/vendor/assets/components/jquery-ui/themes/flick/theme.css +410 -0
  483. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/animated-overlay.gif +0 -0
  484. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-bg_diagonals-small_40_db4865_40x40.png +0 -0
  485. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-bg_diagonals-small_50_93c3cd_40x40.png +0 -0
  486. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-bg_diagonals-small_50_ff3853_40x40.png +0 -0
  487. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-bg_diagonals-small_75_ccd232_40x40.png +0 -0
  488. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-bg_dots-medium_80_ffff38_4x4.png +0 -0
  489. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-bg_dots-small_35_35414f_2x2.png +0 -0
  490. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-bg_flat_75_ba9217_40x100.png +0 -0
  491. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  492. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-bg_white-lines_85_f7f7ba_40x100.png +0 -0
  493. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-icons_454545_256x240.png +0 -0
  494. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-icons_88a206_256x240.png +0 -0
  495. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-icons_c02669_256x240.png +0 -0
  496. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-icons_e1e463_256x240.png +0 -0
  497. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-icons_ffeb33_256x240.png +0 -0
  498. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/images/ui-icons_ffffff_256x240.png +0 -0
  499. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/jquery-ui.css +1225 -0
  500. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/jquery-ui.min.css +7 -0
  501. data/test/dummy/vendor/assets/components/jquery-ui/themes/hot-sneaks/theme.css +410 -0
  502. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/animated-overlay.gif +0 -0
  503. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-bg_flat_75_aaaaaa_40x100.png +0 -0
  504. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-bg_glass_100_f5f0e5_1x400.png +0 -0
  505. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-bg_glass_25_cb842e_1x400.png +0 -0
  506. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-bg_glass_70_ede4d4_1x400.png +0 -0
  507. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-bg_highlight-hard_100_f4f0ec_1x100.png +0 -0
  508. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-bg_highlight-hard_65_fee4bd_1x100.png +0 -0
  509. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-bg_highlight-hard_75_f5f5b5_1x100.png +0 -0
  510. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-bg_inset-soft_100_f4f0ec_1x100.png +0 -0
  511. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-icons_c47a23_256x240.png +0 -0
  512. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-icons_cb672b_256x240.png +0 -0
  513. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-icons_f08000_256x240.png +0 -0
  514. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-icons_f35f07_256x240.png +0 -0
  515. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-icons_ff7519_256x240.png +0 -0
  516. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/images/ui-icons_ffffff_256x240.png +0 -0
  517. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/jquery-ui.css +1225 -0
  518. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/jquery-ui.min.css +7 -0
  519. data/test/dummy/vendor/assets/components/jquery-ui/themes/humanity/theme.css +410 -0
  520. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/animated-overlay.gif +0 -0
  521. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-bg_diagonals-small_0_aaaaaa_40x40.png +0 -0
  522. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-bg_diagonals-thick_15_444444_40x40.png +0 -0
  523. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-bg_diagonals-thick_95_ffdc2e_40x40.png +0 -0
  524. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-bg_glass_55_fbf5d0_1x400.png +0 -0
  525. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-bg_highlight-hard_30_285c00_1x100.png +0 -0
  526. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-bg_highlight-soft_33_3a8104_1x100.png +0 -0
  527. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-bg_highlight-soft_50_4eb305_1x100.png +0 -0
  528. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-bg_highlight-soft_60_4ca20b_1x100.png +0 -0
  529. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-bg_inset-soft_10_285c00_1x100.png +0 -0
  530. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-icons_4eb305_256x240.png +0 -0
  531. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-icons_72b42d_256x240.png +0 -0
  532. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-icons_cd0a0a_256x240.png +0 -0
  533. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/images/ui-icons_ffffff_256x240.png +0 -0
  534. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/jquery-ui.css +1225 -0
  535. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/jquery-ui.min.css +7 -0
  536. data/test/dummy/vendor/assets/components/jquery-ui/themes/le-frog/theme.css +410 -0
  537. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/animated-overlay.gif +0 -0
  538. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  539. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-bg_glass_15_5f391b_1x400.png +0 -0
  540. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-bg_gloss-wave_20_1c160d_500x100.png +0 -0
  541. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-bg_gloss-wave_25_453326_500x100.png +0 -0
  542. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-bg_gloss-wave_30_44372c_500x100.png +0 -0
  543. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-bg_highlight-soft_20_201913_1x100.png +0 -0
  544. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-bg_highlight-soft_20_619226_1x100.png +0 -0
  545. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-bg_inset-soft_10_201913_1x100.png +0 -0
  546. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-icons_222222_256x240.png +0 -0
  547. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-icons_9bcc60_256x240.png +0 -0
  548. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-icons_add978_256x240.png +0 -0
  549. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-icons_e3ddc9_256x240.png +0 -0
  550. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-icons_f1fd86_256x240.png +0 -0
  551. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/images/ui-icons_ffffff_256x240.png +0 -0
  552. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/jquery-ui.css +1225 -0
  553. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/jquery-ui.min.css +7 -0
  554. data/test/dummy/vendor/assets/components/jquery-ui/themes/mint-choc/theme.css +410 -0
  555. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/animated-overlay.gif +0 -0
  556. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  557. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-bg_flat_0_eeeeee_40x100.png +0 -0
  558. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-bg_flat_55_c0402a_40x100.png +0 -0
  559. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-bg_flat_55_eeeeee_40x100.png +0 -0
  560. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-bg_glass_100_f8f8f8_1x400.png +0 -0
  561. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-bg_glass_35_dddddd_1x400.png +0 -0
  562. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-bg_glass_60_eeeeee_1x400.png +0 -0
  563. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-bg_inset-hard_75_999999_1x100.png +0 -0
  564. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-bg_inset-soft_50_c9c9c9_1x100.png +0 -0
  565. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-icons_3383bb_256x240.png +0 -0
  566. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-icons_454545_256x240.png +0 -0
  567. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-icons_70b2e1_256x240.png +0 -0
  568. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-icons_999999_256x240.png +0 -0
  569. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/images/ui-icons_fbc856_256x240.png +0 -0
  570. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/jquery-ui.css +1225 -0
  571. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/jquery-ui.min.css +7 -0
  572. data/test/dummy/vendor/assets/components/jquery-ui/themes/overcast/theme.css +410 -0
  573. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/animated-overlay.gif +0 -0
  574. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-bg_diagonal-maze_20_6e4f1c_10x10.png +0 -0
  575. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-bg_diagonal-maze_40_000000_10x10.png +0 -0
  576. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_10_eceadf_60x60.png +0 -0
  577. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_10_f8f7f6_60x60.png +0 -0
  578. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_15_eceadf_60x60.png +0 -0
  579. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_15_f7f3de_60x60.png +0 -0
  580. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_15_ffffff_60x60.png +0 -0
  581. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_65_654b24_60x60.png +0 -0
  582. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_68_b83400_60x60.png +0 -0
  583. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-icons_222222_256x240.png +0 -0
  584. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-icons_3572ac_256x240.png +0 -0
  585. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-icons_8c291d_256x240.png +0 -0
  586. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-icons_b83400_256x240.png +0 -0
  587. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-icons_fbdb93_256x240.png +0 -0
  588. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/images/ui-icons_ffffff_256x240.png +0 -0
  589. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/jquery-ui.css +1225 -0
  590. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/jquery-ui.min.css +7 -0
  591. data/test/dummy/vendor/assets/components/jquery-ui/themes/pepper-grinder/theme.css +410 -0
  592. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/animated-overlay.gif +0 -0
  593. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  594. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-bg_flat_55_fbec88_40x100.png +0 -0
  595. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png +0 -0
  596. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-bg_glass_85_dfeffc_1x400.png +0 -0
  597. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  598. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
  599. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png +0 -0
  600. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  601. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-icons_217bc0_256x240.png +0 -0
  602. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-icons_2e83ff_256x240.png +0 -0
  603. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-icons_469bdd_256x240.png +0 -0
  604. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-icons_6da8d5_256x240.png +0 -0
  605. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-icons_cd0a0a_256x240.png +0 -0
  606. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-icons_d8e7f3_256x240.png +0 -0
  607. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/images/ui-icons_f9bd01_256x240.png +0 -0
  608. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/jquery-ui.css +1225 -0
  609. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/jquery-ui.min.css +7 -0
  610. data/test/dummy/vendor/assets/components/jquery-ui/themes/redmond/theme.css +410 -0
  611. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/animated-overlay.gif +0 -0
  612. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  613. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  614. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  615. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  616. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  617. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  618. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  619. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  620. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-icons_222222_256x240.png +0 -0
  621. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  622. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-icons_454545_256x240.png +0 -0
  623. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-icons_888888_256x240.png +0 -0
  624. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  625. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/jquery-ui.css +1225 -0
  626. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/jquery-ui.min.css +7 -0
  627. data/test/dummy/vendor/assets/components/jquery-ui/themes/smoothness/theme.css +410 -0
  628. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/animated-overlay.gif +0 -0
  629. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-bg_glass_55_fcf0ba_1x400.png +0 -0
  630. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-bg_gloss-wave_100_ece8da_500x100.png +0 -0
  631. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-bg_highlight-hard_100_f5f3e5_1x100.png +0 -0
  632. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-bg_highlight-hard_100_fafaf4_1x100.png +0 -0
  633. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-bg_highlight-hard_15_459e00_1x100.png +0 -0
  634. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-bg_highlight-hard_95_cccccc_1x100.png +0 -0
  635. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-bg_highlight-soft_25_67b021_1x100.png +0 -0
  636. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-bg_highlight-soft_95_ffedad_1x100.png +0 -0
  637. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-bg_inset-soft_15_2b2922_1x100.png +0 -0
  638. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-icons_808080_256x240.png +0 -0
  639. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-icons_847e71_256x240.png +0 -0
  640. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-icons_8DC262_256x240.png +0 -0
  641. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-icons_cd0a0a_256x240.png +0 -0
  642. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-icons_eeeeee_256x240.png +0 -0
  643. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/images/ui-icons_ffffff_256x240.png +0 -0
  644. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/jquery-ui.css +1225 -0
  645. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/jquery-ui.min.css +7 -0
  646. data/test/dummy/vendor/assets/components/jquery-ui/themes/south-street/theme.css +410 -0
  647. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/animated-overlay.gif +0 -0
  648. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-bg_flat_55_999999_40x100.png +0 -0
  649. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-bg_flat_75_aaaaaa_40x100.png +0 -0
  650. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-bg_glass_45_0078ae_1x400.png +0 -0
  651. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-bg_glass_55_f8da4e_1x400.png +0 -0
  652. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-bg_glass_75_79c9ec_1x400.png +0 -0
  653. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-bg_gloss-wave_45_e14f1c_500x100.png +0 -0
  654. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-bg_gloss-wave_50_6eac2c_500x100.png +0 -0
  655. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-bg_gloss-wave_75_2191c0_500x100.png +0 -0
  656. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  657. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-icons_0078ae_256x240.png +0 -0
  658. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-icons_056b93_256x240.png +0 -0
  659. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-icons_d8e7f3_256x240.png +0 -0
  660. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-icons_e0fdff_256x240.png +0 -0
  661. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-icons_f5e175_256x240.png +0 -0
  662. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-icons_f7a50d_256x240.png +0 -0
  663. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/images/ui-icons_fcd113_256x240.png +0 -0
  664. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/jquery-ui.css +1225 -0
  665. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/jquery-ui.min.css +7 -0
  666. data/test/dummy/vendor/assets/components/jquery-ui/themes/start/theme.css +410 -0
  667. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/animated-overlay.gif +0 -0
  668. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-bg_diagonals-medium_20_d34d17_40x40.png +0 -0
  669. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-bg_flat_30_cccccc_40x100.png +0 -0
  670. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-bg_flat_50_5c5c5c_40x100.png +0 -0
  671. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-bg_gloss-wave_45_817865_500x100.png +0 -0
  672. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-bg_gloss-wave_60_fece2f_500x100.png +0 -0
  673. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-bg_gloss-wave_70_ffdd57_500x100.png +0 -0
  674. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-bg_gloss-wave_90_fff9e5_500x100.png +0 -0
  675. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-bg_highlight-soft_100_feeebd_1x100.png +0 -0
  676. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-bg_inset-soft_30_ffffff_1x100.png +0 -0
  677. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-icons_3d3d3d_256x240.png +0 -0
  678. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-icons_bd7b00_256x240.png +0 -0
  679. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-icons_d19405_256x240.png +0 -0
  680. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-icons_eb990f_256x240.png +0 -0
  681. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-icons_ed9f26_256x240.png +0 -0
  682. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-icons_fadc7a_256x240.png +0 -0
  683. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/images/ui-icons_ffe180_256x240.png +0 -0
  684. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/jquery-ui.css +1225 -0
  685. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/jquery-ui.min.css +7 -0
  686. data/test/dummy/vendor/assets/components/jquery-ui/themes/sunny/theme.css +410 -0
  687. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/animated-overlay.gif +0 -0
  688. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_10_4f4221_10x8.png +0 -0
  689. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_20_372806_10x8.png +0 -0
  690. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_25_675423_10x8.png +0 -0
  691. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_25_d5ac5d_10x8.png +0 -0
  692. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_8_261803_10x8.png +0 -0
  693. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_8_443113_10x8.png +0 -0
  694. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-bg_flat_75_ddd4b0_40x100.png +0 -0
  695. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-bg_highlight-hard_65_fee4bd_1x100.png +0 -0
  696. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-icons_070603_256x240.png +0 -0
  697. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-icons_e8e2b5_256x240.png +0 -0
  698. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-icons_e9cd86_256x240.png +0 -0
  699. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-icons_efec9f_256x240.png +0 -0
  700. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-icons_f2ec64_256x240.png +0 -0
  701. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-icons_f9f2bd_256x240.png +0 -0
  702. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/images/ui-icons_ff7519_256x240.png +0 -0
  703. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/jquery-ui.css +1225 -0
  704. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/jquery-ui.min.css +7 -0
  705. data/test/dummy/vendor/assets/components/jquery-ui/themes/swanky-purse/theme.css +410 -0
  706. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/animated-overlay.gif +0 -0
  707. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-bg_diagonals-small_50_262626_40x40.png +0 -0
  708. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-bg_flat_0_303030_40x100.png +0 -0
  709. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-bg_flat_0_4c4c4c_40x100.png +0 -0
  710. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-bg_glass_40_0a0a0a_1x400.png +0 -0
  711. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-bg_glass_55_f1fbe5_1x400.png +0 -0
  712. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-bg_glass_60_000000_1x400.png +0 -0
  713. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-bg_gloss-wave_55_000000_500x100.png +0 -0
  714. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-bg_gloss-wave_85_9fda58_500x100.png +0 -0
  715. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-bg_gloss-wave_95_f6ecd5_500x100.png +0 -0
  716. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-icons_000000_256x240.png +0 -0
  717. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-icons_1f1f1f_256x240.png +0 -0
  718. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-icons_9fda58_256x240.png +0 -0
  719. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-icons_b8ec79_256x240.png +0 -0
  720. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-icons_cd0a0a_256x240.png +0 -0
  721. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/images/ui-icons_ffffff_256x240.png +0 -0
  722. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/jquery-ui.css +1225 -0
  723. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/jquery-ui.min.css +7 -0
  724. data/test/dummy/vendor/assets/components/jquery-ui/themes/trontastic/theme.css +410 -0
  725. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/animated-overlay.gif +0 -0
  726. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-bg_flat_30_cccccc_40x100.png +0 -0
  727. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-bg_flat_50_5c5c5c_40x100.png +0 -0
  728. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-bg_glass_20_555555_1x400.png +0 -0
  729. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-bg_glass_40_0078a3_1x400.png +0 -0
  730. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-bg_glass_40_ffc73d_1x400.png +0 -0
  731. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-bg_gloss-wave_25_333333_500x100.png +0 -0
  732. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-bg_highlight-soft_80_eeeeee_1x100.png +0 -0
  733. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-bg_inset-soft_25_000000_1x100.png +0 -0
  734. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-bg_inset-soft_30_f58400_1x100.png +0 -0
  735. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-icons_222222_256x240.png +0 -0
  736. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-icons_4b8e0b_256x240.png +0 -0
  737. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-icons_a83300_256x240.png +0 -0
  738. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-icons_cccccc_256x240.png +0 -0
  739. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/images/ui-icons_ffffff_256x240.png +0 -0
  740. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/jquery-ui.css +1225 -0
  741. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/jquery-ui.min.css +7 -0
  742. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-darkness/theme.css +410 -0
  743. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/animated-overlay.gif +0 -0
  744. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  745. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  746. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-bg_flat_10_000000_40x100.png +0 -0
  747. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  748. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  749. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  750. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  751. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  752. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  753. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-icons_222222_256x240.png +0 -0
  754. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-icons_228ef1_256x240.png +0 -0
  755. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-icons_ef8c08_256x240.png +0 -0
  756. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-icons_ffd27a_256x240.png +0 -0
  757. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/images/ui-icons_ffffff_256x240.png +0 -0
  758. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/jquery-ui.css +1225 -0
  759. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/jquery-ui.min.css +7 -0
  760. data/test/dummy/vendor/assets/components/jquery-ui/themes/ui-lightness/theme.css +410 -0
  761. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/animated-overlay.gif +0 -0
  762. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  763. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  764. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-bg_gloss-wave_16_121212_500x100.png +0 -0
  765. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-bg_highlight-hard_15_888888_1x100.png +0 -0
  766. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-bg_highlight-hard_55_555555_1x100.png +0 -0
  767. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-bg_highlight-soft_35_adadad_1x100.png +0 -0
  768. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-bg_highlight-soft_60_dddddd_1x100.png +0 -0
  769. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-bg_inset-soft_15_121212_1x100.png +0 -0
  770. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-icons_666666_256x240.png +0 -0
  771. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-icons_aaaaaa_256x240.png +0 -0
  772. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-icons_bbbbbb_256x240.png +0 -0
  773. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-icons_c98000_256x240.png +0 -0
  774. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-icons_cccccc_256x240.png +0 -0
  775. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-icons_cd0a0a_256x240.png +0 -0
  776. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/images/ui-icons_f29a00_256x240.png +0 -0
  777. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/jquery-ui.css +1225 -0
  778. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/jquery-ui.min.css +7 -0
  779. data/test/dummy/vendor/assets/components/jquery-ui/themes/vader/theme.css +410 -0
  780. data/test/dummy/vendor/assets/components/jquery-ui/ui/accordion.js +590 -0
  781. data/test/dummy/vendor/assets/components/jquery-ui/ui/autocomplete.js +628 -0
  782. data/test/dummy/vendor/assets/components/jquery-ui/ui/button.js +411 -0
  783. data/test/dummy/vendor/assets/components/jquery-ui/ui/core.js +304 -0
  784. data/test/dummy/vendor/assets/components/jquery-ui/ui/datepicker.js +2084 -0
  785. data/test/dummy/vendor/assets/components/jquery-ui/ui/dialog.js +876 -0
  786. data/test/dummy/vendor/assets/components/jquery-ui/ui/draggable.js +1132 -0
  787. data/test/dummy/vendor/assets/components/jquery-ui/ui/droppable.js +413 -0
  788. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-blind.js +90 -0
  789. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-bounce.js +123 -0
  790. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-clip.js +77 -0
  791. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-drop.js +75 -0
  792. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-explode.js +107 -0
  793. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-fade.js +40 -0
  794. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-fold.js +86 -0
  795. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-highlight.js +60 -0
  796. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-puff.js +60 -0
  797. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-pulsate.js +73 -0
  798. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-scale.js +89 -0
  799. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-shake.js +84 -0
  800. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-size.js +233 -0
  801. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-slide.js +74 -0
  802. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect-transfer.js +57 -0
  803. data/test/dummy/vendor/assets/components/jquery-ui/ui/effect.js +1301 -0
  804. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-af.js +37 -0
  805. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ar-DZ.js +37 -0
  806. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ar.js +38 -0
  807. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-az.js +37 -0
  808. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-be.js +37 -0
  809. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-bg.js +38 -0
  810. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-bs.js +37 -0
  811. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ca.js +37 -0
  812. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-cs.js +37 -0
  813. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-cy-GB.js +37 -0
  814. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-da.js +37 -0
  815. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-de.js +37 -0
  816. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-el.js +37 -0
  817. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-en-AU.js +37 -0
  818. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-en-GB.js +37 -0
  819. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-en-NZ.js +37 -0
  820. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-eo.js +37 -0
  821. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-es.js +37 -0
  822. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-et.js +37 -0
  823. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-eu.js +36 -0
  824. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-fa.js +73 -0
  825. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-fi.js +37 -0
  826. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-fo.js +37 -0
  827. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-fr-CA.js +37 -0
  828. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-fr-CH.js +37 -0
  829. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-fr.js +39 -0
  830. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-gl.js +37 -0
  831. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-he.js +37 -0
  832. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-hi.js +37 -0
  833. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-hr.js +37 -0
  834. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-hu.js +36 -0
  835. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-hy.js +37 -0
  836. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-id.js +37 -0
  837. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-is.js +37 -0
  838. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-it-CH.js +37 -0
  839. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-it.js +37 -0
  840. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ja.js +37 -0
  841. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ka.js +35 -0
  842. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-kk.js +37 -0
  843. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-km.js +37 -0
  844. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ko.js +37 -0
  845. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ky.js +38 -0
  846. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-lb.js +37 -0
  847. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-lt.js +37 -0
  848. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-lv.js +37 -0
  849. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-mk.js +37 -0
  850. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ml.js +37 -0
  851. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ms.js +37 -0
  852. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-nb.js +36 -0
  853. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-nl-BE.js +37 -0
  854. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-nl.js +37 -0
  855. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-nn.js +36 -0
  856. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-no.js +37 -0
  857. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-pl.js +37 -0
  858. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-pt-BR.js +37 -0
  859. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-pt.js +36 -0
  860. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-rm.js +35 -0
  861. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ro.js +40 -0
  862. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ru.js +37 -0
  863. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-sk.js +37 -0
  864. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-sl.js +38 -0
  865. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-sq.js +37 -0
  866. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-sr-SR.js +37 -0
  867. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-sr.js +37 -0
  868. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-sv.js +37 -0
  869. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-ta.js +37 -0
  870. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-th.js +37 -0
  871. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-tj.js +37 -0
  872. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-tr.js +37 -0
  873. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-uk.js +38 -0
  874. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-vi.js +37 -0
  875. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-zh-CN.js +37 -0
  876. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-zh-HK.js +37 -0
  877. data/test/dummy/vendor/assets/components/jquery-ui/ui/i18n/datepicker-zh-TW.js +37 -0
  878. data/test/dummy/vendor/assets/components/jquery-ui/ui/menu.js +646 -0
  879. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/accordion.min.js +4 -0
  880. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/autocomplete.min.js +4 -0
  881. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/button.min.js +4 -0
  882. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/core.min.js +4 -0
  883. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/datepicker.min.js +5 -0
  884. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/dialog.min.js +4 -0
  885. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/draggable.min.js +4 -0
  886. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/droppable.min.js +4 -0
  887. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-blind.min.js +4 -0
  888. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-bounce.min.js +4 -0
  889. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-clip.min.js +4 -0
  890. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-drop.min.js +4 -0
  891. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-explode.min.js +4 -0
  892. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-fade.min.js +4 -0
  893. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-fold.min.js +4 -0
  894. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-highlight.min.js +4 -0
  895. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-puff.min.js +4 -0
  896. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-pulsate.min.js +4 -0
  897. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-scale.min.js +4 -0
  898. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-shake.min.js +4 -0
  899. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-size.min.js +4 -0
  900. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-slide.min.js +4 -0
  901. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect-transfer.min.js +4 -0
  902. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/effect.min.js +4 -0
  903. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-af.min.js +4 -0
  904. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ar-DZ.min.js +4 -0
  905. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ar.min.js +4 -0
  906. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-az.min.js +4 -0
  907. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-be.min.js +4 -0
  908. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-bg.min.js +4 -0
  909. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-bs.min.js +4 -0
  910. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ca.min.js +4 -0
  911. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-cs.min.js +4 -0
  912. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-cy-GB.min.js +4 -0
  913. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-da.min.js +4 -0
  914. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-de.min.js +4 -0
  915. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-el.min.js +4 -0
  916. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-en-AU.min.js +4 -0
  917. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-en-GB.min.js +4 -0
  918. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-en-NZ.min.js +4 -0
  919. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-eo.min.js +4 -0
  920. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-es.min.js +4 -0
  921. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-et.min.js +4 -0
  922. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-eu.min.js +4 -0
  923. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-fa.min.js +4 -0
  924. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-fi.min.js +4 -0
  925. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-fo.min.js +4 -0
  926. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-fr-CA.min.js +4 -0
  927. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-fr-CH.min.js +4 -0
  928. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-fr.min.js +4 -0
  929. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-gl.min.js +4 -0
  930. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-he.min.js +4 -0
  931. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-hi.min.js +4 -0
  932. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-hr.min.js +4 -0
  933. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-hu.min.js +4 -0
  934. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-hy.min.js +4 -0
  935. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-id.min.js +4 -0
  936. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-is.min.js +4 -0
  937. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-it-CH.min.js +4 -0
  938. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-it.min.js +4 -0
  939. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ja.min.js +4 -0
  940. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ka.min.js +4 -0
  941. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-kk.min.js +4 -0
  942. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-km.min.js +4 -0
  943. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ko.min.js +4 -0
  944. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ky.min.js +4 -0
  945. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-lb.min.js +4 -0
  946. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-lt.min.js +4 -0
  947. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-lv.min.js +4 -0
  948. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-mk.min.js +4 -0
  949. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ml.min.js +4 -0
  950. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ms.min.js +4 -0
  951. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-nb.min.js +4 -0
  952. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-nl-BE.min.js +4 -0
  953. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-nl.min.js +4 -0
  954. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-nn.min.js +4 -0
  955. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-no.min.js +4 -0
  956. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-pl.min.js +4 -0
  957. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-pt-BR.min.js +4 -0
  958. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-pt.min.js +4 -0
  959. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-rm.min.js +4 -0
  960. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ro.min.js +4 -0
  961. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ru.min.js +4 -0
  962. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-sk.min.js +4 -0
  963. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-sl.min.js +4 -0
  964. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-sq.min.js +4 -0
  965. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-sr-SR.min.js +4 -0
  966. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-sr.min.js +4 -0
  967. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-sv.min.js +4 -0
  968. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-ta.min.js +4 -0
  969. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-th.min.js +4 -0
  970. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-tj.min.js +4 -0
  971. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-tr.min.js +4 -0
  972. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-uk.min.js +4 -0
  973. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-vi.min.js +4 -0
  974. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-zh-CN.min.js +4 -0
  975. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-zh-HK.min.js +4 -0
  976. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/i18n/datepicker-zh-TW.min.js +4 -0
  977. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/menu.min.js +4 -0
  978. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/mouse.min.js +4 -0
  979. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/position.min.js +4 -0
  980. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/progressbar.min.js +4 -0
  981. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/resizable.min.js +4 -0
  982. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/selectable.min.js +4 -0
  983. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/selectmenu.min.js +4 -0
  984. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/slider.min.js +4 -0
  985. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/sortable.min.js +4 -0
  986. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/spinner.min.js +4 -0
  987. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/tabs.min.js +4 -0
  988. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/tooltip.min.js +4 -0
  989. data/test/dummy/vendor/assets/components/jquery-ui/ui/minified/widget.min.js +4 -0
  990. data/test/dummy/vendor/assets/components/jquery-ui/ui/mouse.js +199 -0
  991. data/test/dummy/vendor/assets/components/jquery-ui/ui/position.js +517 -0
  992. data/test/dummy/vendor/assets/components/jquery-ui/ui/progressbar.js +159 -0
  993. data/test/dummy/vendor/assets/components/jquery-ui/ui/resizable.js +1152 -0
  994. data/test/dummy/vendor/assets/components/jquery-ui/ui/selectable.js +287 -0
  995. data/test/dummy/vendor/assets/components/jquery-ui/ui/selectmenu.js +615 -0
  996. data/test/dummy/vendor/assets/components/jquery-ui/ui/slider.js +717 -0
  997. data/test/dummy/vendor/assets/components/jquery-ui/ui/sortable.js +1315 -0
  998. data/test/dummy/vendor/assets/components/jquery-ui/ui/spinner.js +514 -0
  999. data/test/dummy/vendor/assets/components/jquery-ui/ui/tabs.js +886 -0
  1000. data/test/dummy/vendor/assets/components/jquery-ui/ui/tooltip.js +473 -0
  1001. data/test/dummy/vendor/assets/components/jquery-ui/ui/widget.js +558 -0
  1002. data/test/dummy/vendor/assets/components/jquery/MIT-LICENSE.txt +21 -0
  1003. data/test/dummy/vendor/assets/components/jquery/bower.json +27 -0
  1004. data/test/dummy/vendor/assets/components/jquery/dist/jquery.js +9205 -0
  1005. data/test/dummy/vendor/assets/components/jquery/dist/jquery.min.js +5 -0
  1006. data/test/dummy/vendor/assets/components/jquery/dist/jquery.min.map +1 -0
  1007. data/test/dummy/vendor/assets/components/jquery/src/ajax.js +786 -0
  1008. data/test/dummy/vendor/assets/components/jquery/src/ajax/jsonp.js +89 -0
  1009. data/test/dummy/vendor/assets/components/jquery/src/ajax/load.js +75 -0
  1010. data/test/dummy/vendor/assets/components/jquery/src/ajax/parseJSON.js +13 -0
  1011. data/test/dummy/vendor/assets/components/jquery/src/ajax/parseXML.js +28 -0
  1012. data/test/dummy/vendor/assets/components/jquery/src/ajax/script.js +64 -0
  1013. data/test/dummy/vendor/assets/components/jquery/src/ajax/var/nonce.js +5 -0
  1014. data/test/dummy/vendor/assets/components/jquery/src/ajax/var/rquery.js +3 -0
  1015. data/test/dummy/vendor/assets/components/jquery/src/ajax/xhr.js +136 -0
  1016. data/test/dummy/vendor/assets/components/jquery/src/attributes.js +11 -0
  1017. data/test/dummy/vendor/assets/components/jquery/src/attributes/attr.js +141 -0
  1018. data/test/dummy/vendor/assets/components/jquery/src/attributes/classes.js +158 -0
  1019. data/test/dummy/vendor/assets/components/jquery/src/attributes/prop.js +94 -0
  1020. data/test/dummy/vendor/assets/components/jquery/src/attributes/support.js +35 -0
  1021. data/test/dummy/vendor/assets/components/jquery/src/attributes/val.js +161 -0
  1022. data/test/dummy/vendor/assets/components/jquery/src/callbacks.js +205 -0
  1023. data/test/dummy/vendor/assets/components/jquery/src/core.js +497 -0
  1024. data/test/dummy/vendor/assets/components/jquery/src/core/access.js +60 -0
  1025. data/test/dummy/vendor/assets/components/jquery/src/core/init.js +123 -0
  1026. data/test/dummy/vendor/assets/components/jquery/src/core/parseHTML.js +39 -0
  1027. data/test/dummy/vendor/assets/components/jquery/src/core/ready.js +97 -0
  1028. data/test/dummy/vendor/assets/components/jquery/src/core/var/rsingleTag.js +4 -0
  1029. data/test/dummy/vendor/assets/components/jquery/src/css.js +450 -0
  1030. data/test/dummy/vendor/assets/components/jquery/src/css/addGetHookIf.js +22 -0
  1031. data/test/dummy/vendor/assets/components/jquery/src/css/curCSS.js +57 -0
  1032. data/test/dummy/vendor/assets/components/jquery/src/css/defaultDisplay.js +70 -0
  1033. data/test/dummy/vendor/assets/components/jquery/src/css/hiddenVisibleSelectors.js +15 -0
  1034. data/test/dummy/vendor/assets/components/jquery/src/css/support.js +96 -0
  1035. data/test/dummy/vendor/assets/components/jquery/src/css/swap.js +28 -0
  1036. data/test/dummy/vendor/assets/components/jquery/src/css/var/cssExpand.js +3 -0
  1037. data/test/dummy/vendor/assets/components/jquery/src/css/var/getStyles.js +12 -0
  1038. data/test/dummy/vendor/assets/components/jquery/src/css/var/isHidden.js +13 -0
  1039. data/test/dummy/vendor/assets/components/jquery/src/css/var/rmargin.js +3 -0
  1040. data/test/dummy/vendor/assets/components/jquery/src/css/var/rnumnonpx.js +5 -0
  1041. data/test/dummy/vendor/assets/components/jquery/src/data.js +178 -0
  1042. data/test/dummy/vendor/assets/components/jquery/src/data/Data.js +181 -0
  1043. data/test/dummy/vendor/assets/components/jquery/src/data/accepts.js +20 -0
  1044. data/test/dummy/vendor/assets/components/jquery/src/data/var/data_priv.js +5 -0
  1045. data/test/dummy/vendor/assets/components/jquery/src/data/var/data_user.js +5 -0
  1046. data/test/dummy/vendor/assets/components/jquery/src/deferred.js +149 -0
  1047. data/test/dummy/vendor/assets/components/jquery/src/deprecated.js +13 -0
  1048. data/test/dummy/vendor/assets/components/jquery/src/dimensions.js +50 -0
  1049. data/test/dummy/vendor/assets/components/jquery/src/effects.js +648 -0
  1050. data/test/dummy/vendor/assets/components/jquery/src/effects/Tween.js +114 -0
  1051. data/test/dummy/vendor/assets/components/jquery/src/effects/animatedSelector.js +13 -0
  1052. data/test/dummy/vendor/assets/components/jquery/src/event.js +868 -0
  1053. data/test/dummy/vendor/assets/components/jquery/src/event/ajax.js +13 -0
  1054. data/test/dummy/vendor/assets/components/jquery/src/event/alias.js +39 -0
  1055. data/test/dummy/vendor/assets/components/jquery/src/event/support.js +9 -0
  1056. data/test/dummy/vendor/assets/components/jquery/src/exports/amd.js +24 -0
  1057. data/test/dummy/vendor/assets/components/jquery/src/exports/global.js +32 -0
  1058. data/test/dummy/vendor/assets/components/jquery/src/intro.js +44 -0
  1059. data/test/dummy/vendor/assets/components/jquery/src/jquery.js +37 -0
  1060. data/test/dummy/vendor/assets/components/jquery/src/manipulation.js +580 -0
  1061. data/test/dummy/vendor/assets/components/jquery/src/manipulation/_evalUrl.js +18 -0
  1062. data/test/dummy/vendor/assets/components/jquery/src/manipulation/support.js +32 -0
  1063. data/test/dummy/vendor/assets/components/jquery/src/manipulation/var/rcheckableType.js +3 -0
  1064. data/test/dummy/vendor/assets/components/jquery/src/offset.js +207 -0
  1065. data/test/dummy/vendor/assets/components/jquery/src/outro.js +1 -0
  1066. data/test/dummy/vendor/assets/components/jquery/src/queue.js +142 -0
  1067. data/test/dummy/vendor/assets/components/jquery/src/queue/delay.js +22 -0
  1068. data/test/dummy/vendor/assets/components/jquery/src/selector-native.js +172 -0
  1069. data/test/dummy/vendor/assets/components/jquery/src/selector-sizzle.js +14 -0
  1070. data/test/dummy/vendor/assets/components/jquery/src/selector.js +1 -0
  1071. data/test/dummy/vendor/assets/components/jquery/src/serialize.js +111 -0
  1072. data/test/dummy/vendor/assets/components/jquery/src/sizzle/dist/sizzle.js +2067 -0
  1073. data/test/dummy/vendor/assets/components/jquery/src/sizzle/dist/sizzle.min.js +3 -0
  1074. data/test/dummy/vendor/assets/components/jquery/src/sizzle/dist/sizzle.min.map +1 -0
  1075. data/test/dummy/vendor/assets/components/jquery/src/traversing.js +199 -0
  1076. data/test/dummy/vendor/assets/components/jquery/src/traversing/findFilter.js +100 -0
  1077. data/test/dummy/vendor/assets/components/jquery/src/traversing/var/rneedsContext.js +6 -0
  1078. data/test/dummy/vendor/assets/components/jquery/src/var/arr.js +3 -0
  1079. data/test/dummy/vendor/assets/components/jquery/src/var/class2type.js +4 -0
  1080. data/test/dummy/vendor/assets/components/jquery/src/var/concat.js +5 -0
  1081. data/test/dummy/vendor/assets/components/jquery/src/var/hasOwn.js +5 -0
  1082. data/test/dummy/vendor/assets/components/jquery/src/var/indexOf.js +5 -0
  1083. data/test/dummy/vendor/assets/components/jquery/src/var/pnum.js +3 -0
  1084. data/test/dummy/vendor/assets/components/jquery/src/var/push.js +5 -0
  1085. data/test/dummy/vendor/assets/components/jquery/src/var/rnotwhite.js +3 -0
  1086. data/test/dummy/vendor/assets/components/jquery/src/var/slice.js +5 -0
  1087. data/test/dummy/vendor/assets/components/jquery/src/var/strundefined.js +3 -0
  1088. data/test/dummy/vendor/assets/components/jquery/src/var/support.js +4 -0
  1089. data/test/dummy/vendor/assets/components/jquery/src/var/toString.js +5 -0
  1090. data/test/dummy/vendor/assets/components/jquery/src/wrap.js +79 -0
  1091. data/test/dummy/vendor/assets/components/moment/CHANGELOG.md +435 -0
  1092. data/test/dummy/vendor/assets/components/moment/LICENSE +22 -0
  1093. data/test/dummy/vendor/assets/components/moment/Moment.js.nuspec +28 -0
  1094. data/test/dummy/vendor/assets/components/moment/README.md +55 -0
  1095. data/test/dummy/vendor/assets/components/moment/benchmarks/clone.js +10 -0
  1096. data/test/dummy/vendor/assets/components/moment/bower.json +20 -0
  1097. data/test/dummy/vendor/assets/components/moment/locale/af.js +72 -0
  1098. data/test/dummy/vendor/assets/components/moment/locale/ar-ma.js +58 -0
  1099. data/test/dummy/vendor/assets/components/moment/locale/ar-sa.js +102 -0
  1100. data/test/dummy/vendor/assets/components/moment/locale/ar-tn.js +56 -0
  1101. data/test/dummy/vendor/assets/components/moment/locale/ar.js +135 -0
  1102. data/test/dummy/vendor/assets/components/moment/locale/az.js +103 -0
  1103. data/test/dummy/vendor/assets/components/moment/locale/be.js +146 -0
  1104. data/test/dummy/vendor/assets/components/moment/locale/bg.js +89 -0
  1105. data/test/dummy/vendor/assets/components/moment/locale/bn.js +112 -0
  1106. data/test/dummy/vendor/assets/components/moment/locale/bo.js +109 -0
  1107. data/test/dummy/vendor/assets/components/moment/locale/br.js +106 -0
  1108. data/test/dummy/vendor/assets/components/moment/locale/bs.js +140 -0
  1109. data/test/dummy/vendor/assets/components/moment/locale/ca.js +78 -0
  1110. data/test/dummy/vendor/assets/components/moment/locale/cs.js +156 -0
  1111. data/test/dummy/vendor/assets/components/moment/locale/cv.js +62 -0
  1112. data/test/dummy/vendor/assets/components/moment/locale/cy.js +78 -0
  1113. data/test/dummy/vendor/assets/components/moment/locale/da.js +59 -0
  1114. data/test/dummy/vendor/assets/components/moment/locale/de-at.js +75 -0
  1115. data/test/dummy/vendor/assets/components/moment/locale/de.js +74 -0
  1116. data/test/dummy/vendor/assets/components/moment/locale/el.js +93 -0
  1117. data/test/dummy/vendor/assets/components/moment/locale/en-au.js +65 -0
  1118. data/test/dummy/vendor/assets/components/moment/locale/en-ca.js +62 -0
  1119. data/test/dummy/vendor/assets/components/moment/locale/en-gb.js +66 -0
  1120. data/test/dummy/vendor/assets/components/moment/locale/eo.js +72 -0
  1121. data/test/dummy/vendor/assets/components/moment/locale/es.js +78 -0
  1122. data/test/dummy/vendor/assets/components/moment/locale/et.js +79 -0
  1123. data/test/dummy/vendor/assets/components/moment/locale/eu.js +63 -0
  1124. data/test/dummy/vendor/assets/components/moment/locale/fa.js +104 -0
  1125. data/test/dummy/vendor/assets/components/moment/locale/fi.js +106 -0
  1126. data/test/dummy/vendor/assets/components/moment/locale/fo.js +59 -0
  1127. data/test/dummy/vendor/assets/components/moment/locale/fr-ca.js +57 -0
  1128. data/test/dummy/vendor/assets/components/moment/locale/fr.js +61 -0
  1129. data/test/dummy/vendor/assets/components/moment/locale/fy.js +70 -0
  1130. data/test/dummy/vendor/assets/components/moment/locale/gl.js +74 -0
  1131. data/test/dummy/vendor/assets/components/moment/locale/he.js +81 -0
  1132. data/test/dummy/vendor/assets/components/moment/locale/hi.js +122 -0
  1133. data/test/dummy/vendor/assets/components/moment/locale/hr.js +139 -0
  1134. data/test/dummy/vendor/assets/components/moment/locale/hu.js +108 -0
  1135. data/test/dummy/vendor/assets/components/moment/locale/hy-am.js +110 -0
  1136. data/test/dummy/vendor/assets/components/moment/locale/id.js +82 -0
  1137. data/test/dummy/vendor/assets/components/moment/locale/is.js +126 -0
  1138. data/test/dummy/vendor/assets/components/moment/locale/it.js +69 -0
  1139. data/test/dummy/vendor/assets/components/moment/locale/ja.js +64 -0
  1140. data/test/dummy/vendor/assets/components/moment/locale/ka.js +102 -0
  1141. data/test/dummy/vendor/assets/components/moment/locale/km.js +57 -0
  1142. data/test/dummy/vendor/assets/components/moment/locale/ko.js +67 -0
  1143. data/test/dummy/vendor/assets/components/moment/locale/lb.js +133 -0
  1144. data/test/dummy/vendor/assets/components/moment/locale/lt.js +114 -0
  1145. data/test/dummy/vendor/assets/components/moment/locale/lv.js +78 -0
  1146. data/test/dummy/vendor/assets/components/moment/locale/mk.js +89 -0
  1147. data/test/dummy/vendor/assets/components/moment/locale/ml.js +70 -0
  1148. data/test/dummy/vendor/assets/components/moment/locale/mr.js +120 -0
  1149. data/test/dummy/vendor/assets/components/moment/locale/ms-my.js +81 -0
  1150. data/test/dummy/vendor/assets/components/moment/locale/my.js +91 -0
  1151. data/test/dummy/vendor/assets/components/moment/locale/nb.js +60 -0
  1152. data/test/dummy/vendor/assets/components/moment/locale/ne.js +122 -0
  1153. data/test/dummy/vendor/assets/components/moment/locale/nl.js +70 -0
  1154. data/test/dummy/vendor/assets/components/moment/locale/nn.js +59 -0
  1155. data/test/dummy/vendor/assets/components/moment/locale/pl.js +99 -0
  1156. data/test/dummy/vendor/assets/components/moment/locale/pt-br.js +59 -0
  1157. data/test/dummy/vendor/assets/components/moment/locale/pt.js +63 -0
  1158. data/test/dummy/vendor/assets/components/moment/locale/ro.js +73 -0
  1159. data/test/dummy/vendor/assets/components/moment/locale/ru.js +163 -0
  1160. data/test/dummy/vendor/assets/components/moment/locale/sk.js +157 -0
  1161. data/test/dummy/vendor/assets/components/moment/locale/sl.js +146 -0
  1162. data/test/dummy/vendor/assets/components/moment/locale/sq.js +68 -0
  1163. data/test/dummy/vendor/assets/components/moment/locale/sr-cyrl.js +107 -0
  1164. data/test/dummy/vendor/assets/components/moment/locale/sr.js +107 -0
  1165. data/test/dummy/vendor/assets/components/moment/locale/sv.js +66 -0
  1166. data/test/dummy/vendor/assets/components/moment/locale/ta.js +94 -0
  1167. data/test/dummy/vendor/assets/components/moment/locale/th.js +64 -0
  1168. data/test/dummy/vendor/assets/components/moment/locale/tl-ph.js +61 -0
  1169. data/test/dummy/vendor/assets/components/moment/locale/tr.js +89 -0
  1170. data/test/dummy/vendor/assets/components/moment/locale/tzm-latn.js +57 -0
  1171. data/test/dummy/vendor/assets/components/moment/locale/tzm.js +57 -0
  1172. data/test/dummy/vendor/assets/components/moment/locale/uk.js +152 -0
  1173. data/test/dummy/vendor/assets/components/moment/locale/uz.js +57 -0
  1174. data/test/dummy/vendor/assets/components/moment/locale/vi.js +65 -0
  1175. data/test/dummy/vendor/assets/components/moment/locale/zh-cn.js +126 -0
  1176. data/test/dummy/vendor/assets/components/moment/locale/zh-tw.js +100 -0
  1177. data/test/dummy/vendor/assets/components/moment/meteor/README.md +25 -0
  1178. data/test/dummy/vendor/assets/components/moment/meteor/export.js +3 -0
  1179. data/test/dummy/vendor/assets/components/moment/meteor/test.js +5 -0
  1180. data/test/dummy/vendor/assets/components/moment/min/locales.js +6372 -0
  1181. data/test/dummy/vendor/assets/components/moment/min/locales.min.js +77 -0
  1182. data/test/dummy/vendor/assets/components/moment/min/moment-with-locales.js +9449 -0
  1183. data/test/dummy/vendor/assets/components/moment/min/moment-with-locales.min.js +79 -0
  1184. data/test/dummy/vendor/assets/components/moment/min/moment.min.js +7 -0
  1185. data/test/dummy/vendor/assets/components/moment/min/tests.js +38220 -0
  1186. data/test/dummy/vendor/assets/components/moment/moment.js +3083 -0
  1187. data/test/dummy/vendor/assets/components/moment/scripts/npm_prepublish.sh +43 -0
  1188. data/test/dummy/vendor/assets/components/moment/src/lib/create/check-overflow.js +27 -0
  1189. data/test/dummy/vendor/assets/components/moment/src/lib/create/date-from-array.js +19 -0
  1190. data/test/dummy/vendor/assets/components/moment/src/lib/create/default-parsing-flags.js +15 -0
  1191. data/test/dummy/vendor/assets/components/moment/src/lib/create/from-anything.js +93 -0
  1192. data/test/dummy/vendor/assets/components/moment/src/lib/create/from-array.js +123 -0
  1193. data/test/dummy/vendor/assets/components/moment/src/lib/create/from-object.js +13 -0
  1194. data/test/dummy/vendor/assets/components/moment/src/lib/create/from-string-and-array.js +51 -0
  1195. data/test/dummy/vendor/assets/components/moment/src/lib/create/from-string-and-format.js +99 -0
  1196. data/test/dummy/vendor/assets/components/moment/src/lib/create/from-string.js +82 -0
  1197. data/test/dummy/vendor/assets/components/moment/src/lib/create/local.js +5 -0
  1198. data/test/dummy/vendor/assets/components/moment/src/lib/create/utc.js +5 -0
  1199. data/test/dummy/vendor/assets/components/moment/src/lib/create/valid.js +34 -0
  1200. data/test/dummy/vendor/assets/components/moment/src/lib/duration/abs.js +18 -0
  1201. data/test/dummy/vendor/assets/components/moment/src/lib/duration/add-subtract.js +21 -0
  1202. data/test/dummy/vendor/assets/components/moment/src/lib/duration/as.js +55 -0
  1203. data/test/dummy/vendor/assets/components/moment/src/lib/duration/bubble.js +54 -0
  1204. data/test/dummy/vendor/assets/components/moment/src/lib/duration/constructor.js +41 -0
  1205. data/test/dummy/vendor/assets/components/moment/src/lib/duration/create.js +113 -0
  1206. data/test/dummy/vendor/assets/components/moment/src/lib/duration/duration.js +12 -0
  1207. data/test/dummy/vendor/assets/components/moment/src/lib/duration/get.js +25 -0
  1208. data/test/dummy/vendor/assets/components/moment/src/lib/duration/humanize.js +64 -0
  1209. data/test/dummy/vendor/assets/components/moment/src/lib/duration/iso-string.js +28 -0
  1210. data/test/dummy/vendor/assets/components/moment/src/lib/duration/prototype.js +48 -0
  1211. data/test/dummy/vendor/assets/components/moment/src/lib/format/format.js +95 -0
  1212. data/test/dummy/vendor/assets/components/moment/src/lib/locale/calendar.js +13 -0
  1213. data/test/dummy/vendor/assets/components/moment/src/lib/locale/constructor.js +2 -0
  1214. data/test/dummy/vendor/assets/components/moment/src/lib/locale/en.js +15 -0
  1215. data/test/dummy/vendor/assets/components/moment/src/lib/locale/formats.js +19 -0
  1216. data/test/dummy/vendor/assets/components/moment/src/lib/locale/invalid.js +5 -0
  1217. data/test/dummy/vendor/assets/components/moment/src/lib/locale/lists.js +48 -0
  1218. data/test/dummy/vendor/assets/components/moment/src/lib/locale/locale.js +35 -0
  1219. data/test/dummy/vendor/assets/components/moment/src/lib/locale/locales.js +119 -0
  1220. data/test/dummy/vendor/assets/components/moment/src/lib/locale/ordinal.js +7 -0
  1221. data/test/dummy/vendor/assets/components/moment/src/lib/locale/pre-post-format.js +3 -0
  1222. data/test/dummy/vendor/assets/components/moment/src/lib/locale/prototype.js +70 -0
  1223. data/test/dummy/vendor/assets/components/moment/src/lib/locale/relative.js +27 -0
  1224. data/test/dummy/vendor/assets/components/moment/src/lib/locale/set.js +14 -0
  1225. data/test/dummy/vendor/assets/components/moment/src/lib/moment/add-subtract.js +46 -0
  1226. data/test/dummy/vendor/assets/components/moment/src/lib/moment/calendar.js +17 -0
  1227. data/test/dummy/vendor/assets/components/moment/src/lib/moment/clone.js +5 -0
  1228. data/test/dummy/vendor/assets/components/moment/src/lib/moment/compare.js +43 -0
  1229. data/test/dummy/vendor/assets/components/moment/src/lib/moment/constructor.js +72 -0
  1230. data/test/dummy/vendor/assets/components/moment/src/lib/moment/diff.js +49 -0
  1231. data/test/dummy/vendor/assets/components/moment/src/lib/moment/format.js +27 -0
  1232. data/test/dummy/vendor/assets/components/moment/src/lib/moment/from.js +10 -0
  1233. data/test/dummy/vendor/assets/components/moment/src/lib/moment/get-set.js +39 -0
  1234. data/test/dummy/vendor/assets/components/moment/src/lib/moment/locale.js +34 -0
  1235. data/test/dummy/vendor/assets/components/moment/src/lib/moment/min-max.js +54 -0
  1236. data/test/dummy/vendor/assets/components/moment/src/lib/moment/moment.js +26 -0
  1237. data/test/dummy/vendor/assets/components/moment/src/lib/moment/prototype.js +141 -0
  1238. data/test/dummy/vendor/assets/components/moment/src/lib/moment/start-end-of.js +52 -0
  1239. data/test/dummy/vendor/assets/components/moment/src/lib/moment/to-type.js +16 -0
  1240. data/test/dummy/vendor/assets/components/moment/src/lib/moment/valid.js +14 -0
  1241. data/test/dummy/vendor/assets/components/moment/src/lib/parse/regex.js +44 -0
  1242. data/test/dummy/vendor/assets/components/moment/src/lib/parse/token.js +32 -0
  1243. data/test/dummy/vendor/assets/components/moment/src/lib/units/aliases.js +29 -0
  1244. data/test/dummy/vendor/assets/components/moment/src/lib/units/constants.js +7 -0
  1245. data/test/dummy/vendor/assets/components/moment/src/lib/units/day-of-month.js +32 -0
  1246. data/test/dummy/vendor/assets/components/moment/src/lib/units/day-of-week.js +133 -0
  1247. data/test/dummy/vendor/assets/components/moment/src/lib/units/day-of-year.js +49 -0
  1248. data/test/dummy/vendor/assets/components/moment/src/lib/units/hour.js +76 -0
  1249. data/test/dummy/vendor/assets/components/moment/src/lib/units/millisecond.js +42 -0
  1250. data/test/dummy/vendor/assets/components/moment/src/lib/units/minute.js +24 -0
  1251. data/test/dummy/vendor/assets/components/moment/src/lib/units/month.js +128 -0
  1252. data/test/dummy/vendor/assets/components/moment/src/lib/units/offset.js +206 -0
  1253. data/test/dummy/vendor/assets/components/moment/src/lib/units/quarter.js +27 -0
  1254. data/test/dummy/vendor/assets/components/moment/src/lib/units/second.js +24 -0
  1255. data/test/dummy/vendor/assets/components/moment/src/lib/units/timestamp.js +20 -0
  1256. data/test/dummy/vendor/assets/components/moment/src/lib/units/timezone.js +16 -0
  1257. data/test/dummy/vendor/assets/components/moment/src/lib/units/units.js +20 -0
  1258. data/test/dummy/vendor/assets/components/moment/src/lib/units/week-year.js +78 -0
  1259. data/test/dummy/vendor/assets/components/moment/src/lib/units/week.js +88 -0
  1260. data/test/dummy/vendor/assets/components/moment/src/lib/units/year.js +60 -0
  1261. data/test/dummy/vendor/assets/components/moment/src/lib/utils/abs-floor.js +7 -0
  1262. data/test/dummy/vendor/assets/components/moment/src/lib/utils/compare-arrays.js +16 -0
  1263. data/test/dummy/vendor/assets/components/moment/src/lib/utils/defaults.js +10 -0
  1264. data/test/dummy/vendor/assets/components/moment/src/lib/utils/deprecate.js +31 -0
  1265. data/test/dummy/vendor/assets/components/moment/src/lib/utils/extend.js +19 -0
  1266. data/test/dummy/vendor/assets/components/moment/src/lib/utils/has-own-prop.js +3 -0
  1267. data/test/dummy/vendor/assets/components/moment/src/lib/utils/hooks.js +13 -0
  1268. data/test/dummy/vendor/assets/components/moment/src/lib/utils/is-array.js +3 -0
  1269. data/test/dummy/vendor/assets/components/moment/src/lib/utils/is-date.js +3 -0
  1270. data/test/dummy/vendor/assets/components/moment/src/lib/utils/map.js +7 -0
  1271. data/test/dummy/vendor/assets/components/moment/src/lib/utils/to-int.js +14 -0
  1272. data/test/dummy/vendor/assets/components/moment/src/lib/utils/zero-fill.js +9 -0
  1273. data/test/dummy/vendor/assets/components/moment/src/locale/af.js +63 -0
  1274. data/test/dummy/vendor/assets/components/moment/src/locale/ar-ma.js +50 -0
  1275. data/test/dummy/vendor/assets/components/moment/src/locale/ar-sa.js +94 -0
  1276. data/test/dummy/vendor/assets/components/moment/src/locale/ar-tn.js +48 -0
  1277. data/test/dummy/vendor/assets/components/moment/src/locale/ar.js +127 -0
  1278. data/test/dummy/vendor/assets/components/moment/src/locale/az.js +95 -0
  1279. data/test/dummy/vendor/assets/components/moment/src/locale/be.js +138 -0
  1280. data/test/dummy/vendor/assets/components/moment/src/locale/bg.js +81 -0
  1281. data/test/dummy/vendor/assets/components/moment/src/locale/bn.js +104 -0
  1282. data/test/dummy/vendor/assets/components/moment/src/locale/bo.js +101 -0
  1283. data/test/dummy/vendor/assets/components/moment/src/locale/br.js +98 -0
  1284. data/test/dummy/vendor/assets/components/moment/src/locale/bs.js +132 -0
  1285. data/test/dummy/vendor/assets/components/moment/src/locale/ca.js +70 -0
  1286. data/test/dummy/vendor/assets/components/moment/src/locale/cs.js +148 -0
  1287. data/test/dummy/vendor/assets/components/moment/src/locale/cv.js +54 -0
  1288. data/test/dummy/vendor/assets/components/moment/src/locale/cy.js +70 -0
  1289. data/test/dummy/vendor/assets/components/moment/src/locale/da.js +51 -0
  1290. data/test/dummy/vendor/assets/components/moment/src/locale/de-at.js +67 -0
  1291. data/test/dummy/vendor/assets/components/moment/src/locale/de.js +66 -0
  1292. data/test/dummy/vendor/assets/components/moment/src/locale/el.js +85 -0
  1293. data/test/dummy/vendor/assets/components/moment/src/locale/en-au.js +57 -0
  1294. data/test/dummy/vendor/assets/components/moment/src/locale/en-ca.js +54 -0
  1295. data/test/dummy/vendor/assets/components/moment/src/locale/en-gb.js +58 -0
  1296. data/test/dummy/vendor/assets/components/moment/src/locale/eo.js +64 -0
  1297. data/test/dummy/vendor/assets/components/moment/src/locale/es.js +70 -0
  1298. data/test/dummy/vendor/assets/components/moment/src/locale/et.js +71 -0
  1299. data/test/dummy/vendor/assets/components/moment/src/locale/eu.js +55 -0
  1300. data/test/dummy/vendor/assets/components/moment/src/locale/fa.js +96 -0
  1301. data/test/dummy/vendor/assets/components/moment/src/locale/fi.js +98 -0
  1302. data/test/dummy/vendor/assets/components/moment/src/locale/fo.js +51 -0
  1303. data/test/dummy/vendor/assets/components/moment/src/locale/fr-ca.js +49 -0
  1304. data/test/dummy/vendor/assets/components/moment/src/locale/fr.js +53 -0
  1305. data/test/dummy/vendor/assets/components/moment/src/locale/fy.js +62 -0
  1306. data/test/dummy/vendor/assets/components/moment/src/locale/gl.js +66 -0
  1307. data/test/dummy/vendor/assets/components/moment/src/locale/he.js +73 -0
  1308. data/test/dummy/vendor/assets/components/moment/src/locale/hi.js +114 -0
  1309. data/test/dummy/vendor/assets/components/moment/src/locale/hr.js +131 -0
  1310. data/test/dummy/vendor/assets/components/moment/src/locale/hu.js +100 -0
  1311. data/test/dummy/vendor/assets/components/moment/src/locale/hy-am.js +102 -0
  1312. data/test/dummy/vendor/assets/components/moment/src/locale/id.js +74 -0
  1313. data/test/dummy/vendor/assets/components/moment/src/locale/is.js +118 -0
  1314. data/test/dummy/vendor/assets/components/moment/src/locale/it.js +61 -0
  1315. data/test/dummy/vendor/assets/components/moment/src/locale/ja.js +56 -0
  1316. data/test/dummy/vendor/assets/components/moment/src/locale/ka.js +94 -0
  1317. data/test/dummy/vendor/assets/components/moment/src/locale/km.js +49 -0
  1318. data/test/dummy/vendor/assets/components/moment/src/locale/ko.js +59 -0
  1319. data/test/dummy/vendor/assets/components/moment/src/locale/lb.js +125 -0
  1320. data/test/dummy/vendor/assets/components/moment/src/locale/lt.js +106 -0
  1321. data/test/dummy/vendor/assets/components/moment/src/locale/lv.js +70 -0
  1322. data/test/dummy/vendor/assets/components/moment/src/locale/mk.js +81 -0
  1323. data/test/dummy/vendor/assets/components/moment/src/locale/ml.js +62 -0
  1324. data/test/dummy/vendor/assets/components/moment/src/locale/mr.js +112 -0
  1325. data/test/dummy/vendor/assets/components/moment/src/locale/ms-my.js +73 -0
  1326. data/test/dummy/vendor/assets/components/moment/src/locale/my.js +83 -0
  1327. data/test/dummy/vendor/assets/components/moment/src/locale/nb.js +52 -0
  1328. data/test/dummy/vendor/assets/components/moment/src/locale/ne.js +114 -0
  1329. data/test/dummy/vendor/assets/components/moment/src/locale/nl.js +62 -0
  1330. data/test/dummy/vendor/assets/components/moment/src/locale/nn.js +51 -0
  1331. data/test/dummy/vendor/assets/components/moment/src/locale/pl.js +91 -0
  1332. data/test/dummy/vendor/assets/components/moment/src/locale/pt-br.js +51 -0
  1333. data/test/dummy/vendor/assets/components/moment/src/locale/pt.js +55 -0
  1334. data/test/dummy/vendor/assets/components/moment/src/locale/ro.js +65 -0
  1335. data/test/dummy/vendor/assets/components/moment/src/locale/ru.js +155 -0
  1336. data/test/dummy/vendor/assets/components/moment/src/locale/sk.js +149 -0
  1337. data/test/dummy/vendor/assets/components/moment/src/locale/sl.js +138 -0
  1338. data/test/dummy/vendor/assets/components/moment/src/locale/sq.js +60 -0
  1339. data/test/dummy/vendor/assets/components/moment/src/locale/sr-cyrl.js +99 -0
  1340. data/test/dummy/vendor/assets/components/moment/src/locale/sr.js +99 -0
  1341. data/test/dummy/vendor/assets/components/moment/src/locale/sv.js +58 -0
  1342. data/test/dummy/vendor/assets/components/moment/src/locale/ta.js +86 -0
  1343. data/test/dummy/vendor/assets/components/moment/src/locale/th.js +56 -0
  1344. data/test/dummy/vendor/assets/components/moment/src/locale/tl-ph.js +53 -0
  1345. data/test/dummy/vendor/assets/components/moment/src/locale/tr.js +81 -0
  1346. data/test/dummy/vendor/assets/components/moment/src/locale/tzm-latn.js +49 -0
  1347. data/test/dummy/vendor/assets/components/moment/src/locale/tzm.js +49 -0
  1348. data/test/dummy/vendor/assets/components/moment/src/locale/uk.js +144 -0
  1349. data/test/dummy/vendor/assets/components/moment/src/locale/uz.js +49 -0
  1350. data/test/dummy/vendor/assets/components/moment/src/locale/vi.js +57 -0
  1351. data/test/dummy/vendor/assets/components/moment/src/locale/zh-cn.js +118 -0
  1352. data/test/dummy/vendor/assets/components/moment/src/locale/zh-tw.js +92 -0
  1353. data/test/dummy/vendor/assets/components/moment/src/moment.js +68 -0
  1354. data/test/dummy/vendor/assets/components/moment/templates/amd-named.js +7 -0
  1355. data/test/dummy/vendor/assets/components/moment/templates/amd.js +7 -0
  1356. data/test/dummy/vendor/assets/components/moment/templates/globals.js +5 -0
  1357. data/test/dummy/vendor/assets/components/moment/templates/locale-header.js +5 -0
  1358. data/test/dummy/vendor/assets/components/moment/templates/test-header.js +5 -0
  1359. data/test/test_helper.rb +19 -0
  1360. metadata +2772 -0
@@ -0,0 +1,8 @@
1
+ /*! version : 4.7.14
2
+ =========================================================
3
+ bootstrap-datetimejs
4
+ https://github.com/Eonasdan/bootstrap-datetimepicker
5
+ Copyright (c) 2015 Jonathan Peterson
6
+ =========================================================
7
+ */
8
+ !function(a){"use strict";if("function"==typeof define&&define.amd)define(["jquery","moment"],a);else if("object"==typeof exports)a(require("jquery"),require("moment"));else{if("undefined"==typeof jQuery)throw"bootstrap-datetimepicker requires jQuery to be loaded first";if("undefined"==typeof moment)throw"bootstrap-datetimepicker requires Moment.js to be loaded first";a(jQuery,moment)}}(function(a,b){"use strict";if(!b)throw new Error("bootstrap-datetimepicker requires Moment.js to be loaded first");var c=function(c,d){var e,f,g,h,i,j={},k=b().startOf("d"),l=k.clone(),m=!0,n=!1,o=!1,p=0,q=[{clsName:"days",navFnc:"M",navStep:1},{clsName:"months",navFnc:"y",navStep:1},{clsName:"years",navFnc:"y",navStep:10}],r=["days","months","years"],s=["top","bottom","auto"],t=["left","right","auto"],u=["default","top","bottom"],v={up:38,38:"up",down:40,40:"down",left:37,37:"left",right:39,39:"right",tab:9,9:"tab",escape:27,27:"escape",enter:13,13:"enter",pageUp:33,33:"pageUp",pageDown:34,34:"pageDown",shift:16,16:"shift",control:17,17:"control",space:32,32:"space",t:84,84:"t","delete":46,46:"delete"},w={},x=function(a){if("string"!=typeof a||a.length>1)throw new TypeError("isEnabled expects a single character string parameter");switch(a){case"y":return-1!==g.indexOf("Y");case"M":return-1!==g.indexOf("M");case"d":return-1!==g.toLowerCase().indexOf("d");case"h":case"H":return-1!==g.toLowerCase().indexOf("h");case"m":return-1!==g.indexOf("m");case"s":return-1!==g.indexOf("s");default:return!1}},y=function(){return x("h")||x("m")||x("s")},z=function(){return x("y")||x("M")||x("d")},A=function(){var b=a("<thead>").append(a("<tr>").append(a("<th>").addClass("prev").attr("data-action","previous").append(a("<span>").addClass(d.icons.previous))).append(a("<th>").addClass("picker-switch").attr("data-action","pickerSwitch").attr("colspan",d.calendarWeeks?"6":"5")).append(a("<th>").addClass("next").attr("data-action","next").append(a("<span>").addClass(d.icons.next)))),c=a("<tbody>").append(a("<tr>").append(a("<td>").attr("colspan",d.calendarWeeks?"8":"7")));return[a("<div>").addClass("datepicker-days").append(a("<table>").addClass("table-condensed").append(b).append(a("<tbody>"))),a("<div>").addClass("datepicker-months").append(a("<table>").addClass("table-condensed").append(b.clone()).append(c.clone())),a("<div>").addClass("datepicker-years").append(a("<table>").addClass("table-condensed").append(b.clone()).append(c.clone()))]},B=function(){var b=a("<tr>"),c=a("<tr>"),e=a("<tr>");return x("h")&&(b.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1"}).addClass("btn").attr("data-action","incrementHours").append(a("<span>").addClass(d.icons.up)))),c.append(a("<td>").append(a("<span>").addClass("timepicker-hour").attr("data-time-component","hours").attr("data-action","showHours"))),e.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1"}).addClass("btn").attr("data-action","decrementHours").append(a("<span>").addClass(d.icons.down))))),x("m")&&(x("h")&&(b.append(a("<td>").addClass("separator")),c.append(a("<td>").addClass("separator").html(":")),e.append(a("<td>").addClass("separator"))),b.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1"}).addClass("btn").attr("data-action","incrementMinutes").append(a("<span>").addClass(d.icons.up)))),c.append(a("<td>").append(a("<span>").addClass("timepicker-minute").attr("data-time-component","minutes").attr("data-action","showMinutes"))),e.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1"}).addClass("btn").attr("data-action","decrementMinutes").append(a("<span>").addClass(d.icons.down))))),x("s")&&(x("m")&&(b.append(a("<td>").addClass("separator")),c.append(a("<td>").addClass("separator").html(":")),e.append(a("<td>").addClass("separator"))),b.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1"}).addClass("btn").attr("data-action","incrementSeconds").append(a("<span>").addClass(d.icons.up)))),c.append(a("<td>").append(a("<span>").addClass("timepicker-second").attr("data-time-component","seconds").attr("data-action","showSeconds"))),e.append(a("<td>").append(a("<a>").attr({href:"#",tabindex:"-1"}).addClass("btn").attr("data-action","decrementSeconds").append(a("<span>").addClass(d.icons.down))))),f||(b.append(a("<td>").addClass("separator")),c.append(a("<td>").append(a("<button>").addClass("btn btn-primary").attr("data-action","togglePeriod"))),e.append(a("<td>").addClass("separator"))),a("<div>").addClass("timepicker-picker").append(a("<table>").addClass("table-condensed").append([b,c,e]))},C=function(){var b=a("<div>").addClass("timepicker-hours").append(a("<table>").addClass("table-condensed")),c=a("<div>").addClass("timepicker-minutes").append(a("<table>").addClass("table-condensed")),d=a("<div>").addClass("timepicker-seconds").append(a("<table>").addClass("table-condensed")),e=[B()];return x("h")&&e.push(b),x("m")&&e.push(c),x("s")&&e.push(d),e},D=function(){var b=[];return d.showTodayButton&&b.push(a("<td>").append(a("<a>").attr("data-action","today").append(a("<span>").addClass(d.icons.today)))),!d.sideBySide&&z()&&y()&&b.push(a("<td>").append(a("<a>").attr("data-action","togglePicker").append(a("<span>").addClass(d.icons.time)))),d.showClear&&b.push(a("<td>").append(a("<a>").attr("data-action","clear").append(a("<span>").addClass(d.icons.clear)))),d.showClose&&b.push(a("<td>").append(a("<a>").attr("data-action","close").append(a("<span>").addClass(d.icons.close)))),a("<table>").addClass("table-condensed").append(a("<tbody>").append(a("<tr>").append(b)))},E=function(){var b=a("<div>").addClass("bootstrap-datetimepicker-widget dropdown-menu"),c=a("<div>").addClass("datepicker").append(A()),e=a("<div>").addClass("timepicker").append(C()),g=a("<ul>").addClass("list-unstyled"),h=a("<li>").addClass("picker-switch"+(d.collapse?" accordion-toggle":"")).append(D());return d.inline&&b.removeClass("dropdown-menu"),f&&b.addClass("usetwentyfour"),d.sideBySide&&z()&&y()?(b.addClass("timepicker-sbs"),b.append(a("<div>").addClass("row").append(c.addClass("col-sm-6")).append(e.addClass("col-sm-6"))),b.append(h),b):("top"===d.toolbarPlacement&&g.append(h),z()&&g.append(a("<li>").addClass(d.collapse&&y()?"collapse in":"").append(c)),"default"===d.toolbarPlacement&&g.append(h),y()&&g.append(a("<li>").addClass(d.collapse&&z()?"collapse":"").append(e)),"bottom"===d.toolbarPlacement&&g.append(h),b.append(g))},F=function(){var b,e={};return b=c.is("input")||d.inline?c.data():c.find("input").data(),b.dateOptions&&b.dateOptions instanceof Object&&(e=a.extend(!0,e,b.dateOptions)),a.each(d,function(a){var c="date"+a.charAt(0).toUpperCase()+a.slice(1);void 0!==b[c]&&(e[a]=b[c])}),e},G=function(){var b,e=(n||c).position(),f=(n||c).offset(),g=d.widgetPositioning.vertical,h=d.widgetPositioning.horizontal;if(d.widgetParent)b=d.widgetParent.append(o);else if(c.is("input"))b=c.parent().append(o);else{if(d.inline)return void(b=c.append(o));b=c,c.children().first().after(o)}if("auto"===g&&(g=f.top+1.5*o.height()>=a(window).height()+a(window).scrollTop()&&o.height()+c.outerHeight()<f.top?"top":"bottom"),"auto"===h&&(h=b.width()<f.left+o.outerWidth()/2&&f.left+o.outerWidth()>a(window).width()?"right":"left"),"top"===g?o.addClass("top").removeClass("bottom"):o.addClass("bottom").removeClass("top"),"right"===h?o.addClass("pull-right"):o.removeClass("pull-right"),"relative"!==b.css("position")&&(b=b.parents().filter(function(){return"relative"===a(this).css("position")}).first()),0===b.length)throw new Error("datetimepicker component should be placed within a relative positioned container");o.css({top:"top"===g?"auto":e.top+c.outerHeight(),bottom:"top"===g?e.top+c.outerHeight():"auto",left:"left"===h?b.css("padding-left"):"auto",right:"left"===h?"auto":b.width()-c.outerWidth()})},H=function(a){"dp.change"===a.type&&(a.date&&a.date.isSame(a.oldDate)||!a.date&&!a.oldDate)||c.trigger(a)},I=function(a){o&&(a&&(i=Math.max(p,Math.min(2,i+a))),o.find(".datepicker > div").hide().filter(".datepicker-"+q[i].clsName).show())},J=function(){var b=a("<tr>"),c=l.clone().startOf("w");for(d.calendarWeeks===!0&&b.append(a("<th>").addClass("cw").text("#"));c.isBefore(l.clone().endOf("w"));)b.append(a("<th>").addClass("dow").text(c.format("dd"))),c.add(1,"d");o.find(".datepicker-days thead").append(b)},K=function(a){return d.disabledDates[a.format("YYYY-MM-DD")]===!0},L=function(a){return d.enabledDates[a.format("YYYY-MM-DD")]===!0},M=function(a,b){return a.isValid()?d.disabledDates&&K(a)&&"M"!==b?!1:d.enabledDates&&!L(a)&&"M"!==b?!1:d.minDate&&a.isBefore(d.minDate,b)?!1:d.maxDate&&a.isAfter(d.maxDate,b)?!1:"d"===b&&-1!==d.daysOfWeekDisabled.indexOf(a.day())?!1:!0:!1},N=function(){for(var b=[],c=l.clone().startOf("y").hour(12);c.isSame(l,"y");)b.push(a("<span>").attr("data-action","selectMonth").addClass("month").text(c.format("MMM"))),c.add(1,"M");o.find(".datepicker-months td").empty().append(b)},O=function(){var b=o.find(".datepicker-months"),c=b.find("th"),d=b.find("tbody").find("span");b.find(".disabled").removeClass("disabled"),M(l.clone().subtract(1,"y"),"y")||c.eq(0).addClass("disabled"),c.eq(1).text(l.year()),M(l.clone().add(1,"y"),"y")||c.eq(2).addClass("disabled"),d.removeClass("active"),k.isSame(l,"y")&&d.eq(k.month()).addClass("active"),d.each(function(b){M(l.clone().month(b),"M")||a(this).addClass("disabled")})},P=function(){var a=o.find(".datepicker-years"),b=a.find("th"),c=l.clone().subtract(5,"y"),e=l.clone().add(6,"y"),f="";for(a.find(".disabled").removeClass("disabled"),d.minDate&&d.minDate.isAfter(c,"y")&&b.eq(0).addClass("disabled"),b.eq(1).text(c.year()+"-"+e.year()),d.maxDate&&d.maxDate.isBefore(e,"y")&&b.eq(2).addClass("disabled");!c.isAfter(e,"y");)f+='<span data-action="selectYear" class="year'+(c.isSame(k,"y")?" active":"")+(M(c,"y")?"":" disabled")+'">'+c.year()+"</span>",c.add(1,"y");a.find("td").html(f)},Q=function(){var c,e,f,g=o.find(".datepicker-days"),h=g.find("th"),i=[];if(z()){for(g.find(".disabled").removeClass("disabled"),h.eq(1).text(l.format(d.dayViewHeaderFormat)),M(l.clone().subtract(1,"M"),"M")||h.eq(0).addClass("disabled"),M(l.clone().add(1,"M"),"M")||h.eq(2).addClass("disabled"),c=l.clone().startOf("M").startOf("week");!l.clone().endOf("M").endOf("w").isBefore(c,"d");)0===c.weekday()&&(e=a("<tr>"),d.calendarWeeks&&e.append('<td class="cw">'+c.week()+"</td>"),i.push(e)),f="",c.isBefore(l,"M")&&(f+=" old"),c.isAfter(l,"M")&&(f+=" new"),c.isSame(k,"d")&&!m&&(f+=" active"),M(c,"d")||(f+=" disabled"),c.isSame(b(),"d")&&(f+=" today"),(0===c.day()||6===c.day())&&(f+=" weekend"),e.append('<td data-action="selectDay" class="day'+f+'">'+c.date()+"</td>"),c.add(1,"d");g.find("tbody").empty().append(i),O(),P()}},R=function(){var b=o.find(".timepicker-hours table"),c=l.clone().startOf("d"),d=[],e=a("<tr>");for(l.hour()>11&&!f&&c.hour(12);c.isSame(l,"d")&&(f||l.hour()<12&&c.hour()<12||l.hour()>11);)c.hour()%4===0&&(e=a("<tr>"),d.push(e)),e.append('<td data-action="selectHour" class="hour'+(M(c,"h")?"":" disabled")+'">'+c.format(f?"HH":"hh")+"</td>"),c.add(1,"h");b.empty().append(d)},S=function(){for(var b=o.find(".timepicker-minutes table"),c=l.clone().startOf("h"),e=[],f=a("<tr>"),g=1===d.stepping?5:d.stepping;l.isSame(c,"h");)c.minute()%(4*g)===0&&(f=a("<tr>"),e.push(f)),f.append('<td data-action="selectMinute" class="minute'+(M(c,"m")?"":" disabled")+'">'+c.format("mm")+"</td>"),c.add(g,"m");b.empty().append(e)},T=function(){for(var b=o.find(".timepicker-seconds table"),c=l.clone().startOf("m"),d=[],e=a("<tr>");l.isSame(c,"m");)c.second()%20===0&&(e=a("<tr>"),d.push(e)),e.append('<td data-action="selectSecond" class="second'+(M(c,"s")?"":" disabled")+'">'+c.format("ss")+"</td>"),c.add(5,"s");b.empty().append(d)},U=function(){var a=o.find(".timepicker span[data-time-component]");f||o.find(".timepicker [data-action=togglePeriod]").text(k.format("A")),a.filter("[data-time-component=hours]").text(k.format(f?"HH":"hh")),a.filter("[data-time-component=minutes]").text(k.format("mm")),a.filter("[data-time-component=seconds]").text(k.format("ss")),R(),S(),T()},V=function(){o&&(Q(),U())},W=function(a){var b=m?null:k;return a?(a=a.clone().locale(d.locale),1!==d.stepping&&a.minutes(Math.round(a.minutes()/d.stepping)*d.stepping%60).seconds(0),void(M(a)?(k=a,l=k.clone(),e.val(k.format(g)),c.data("date",k.format(g)),V(),m=!1,H({type:"dp.change",date:k.clone(),oldDate:b})):(d.keepInvalid||e.val(m?"":k.format(g)),H({type:"dp.error",date:a})))):(m=!0,e.val(""),c.data("date",""),H({type:"dp.change",date:null,oldDate:b}),void V())},X=function(){var b=!1;return o?(o.find(".collapse").each(function(){var c=a(this).data("collapse");return c&&c.transitioning?(b=!0,!1):!0}),b?j:(n&&n.hasClass("btn")&&n.toggleClass("active"),o.hide(),a(window).off("resize",G),o.off("click","[data-action]"),o.off("mousedown",!1),o.remove(),o=!1,H({type:"dp.hide",date:k.clone()}),j)):j},Y=function(){W(null)},Z={next:function(){l.add(q[i].navStep,q[i].navFnc),Q()},previous:function(){l.subtract(q[i].navStep,q[i].navFnc),Q()},pickerSwitch:function(){I(1)},selectMonth:function(b){var c=a(b.target).closest("tbody").find("span").index(a(b.target));l.month(c),i===p?(W(k.clone().year(l.year()).month(l.month())),d.inline||X()):(I(-1),Q())},selectYear:function(b){var c=parseInt(a(b.target).text(),10)||0;l.year(c),i===p?(W(k.clone().year(l.year())),d.inline||X()):(I(-1),Q())},selectDay:function(b){var c=l.clone();a(b.target).is(".old")&&c.subtract(1,"M"),a(b.target).is(".new")&&c.add(1,"M"),W(c.date(parseInt(a(b.target).text(),10))),y()||d.keepOpen||d.inline||X()},incrementHours:function(){W(k.clone().add(1,"h"))},incrementMinutes:function(){W(k.clone().add(d.stepping,"m"))},incrementSeconds:function(){W(k.clone().add(1,"s"))},decrementHours:function(){W(k.clone().subtract(1,"h"))},decrementMinutes:function(){W(k.clone().subtract(d.stepping,"m"))},decrementSeconds:function(){W(k.clone().subtract(1,"s"))},togglePeriod:function(){W(k.clone().add(k.hours()>=12?-12:12,"h"))},togglePicker:function(b){var c,e=a(b.target),f=e.closest("ul"),g=f.find(".in"),h=f.find(".collapse:not(.in)");if(g&&g.length){if(c=g.data("collapse"),c&&c.transitioning)return;g.collapse?(g.collapse("hide"),h.collapse("show")):(g.removeClass("in"),h.addClass("in")),e.is("span")?e.toggleClass(d.icons.time+" "+d.icons.date):e.find("span").toggleClass(d.icons.time+" "+d.icons.date)}},showPicker:function(){o.find(".timepicker > div:not(.timepicker-picker)").hide(),o.find(".timepicker .timepicker-picker").show()},showHours:function(){o.find(".timepicker .timepicker-picker").hide(),o.find(".timepicker .timepicker-hours").show()},showMinutes:function(){o.find(".timepicker .timepicker-picker").hide(),o.find(".timepicker .timepicker-minutes").show()},showSeconds:function(){o.find(".timepicker .timepicker-picker").hide(),o.find(".timepicker .timepicker-seconds").show()},selectHour:function(b){var c=parseInt(a(b.target).text(),10);f||(k.hours()>=12?12!==c&&(c+=12):12===c&&(c=0)),W(k.clone().hours(c)),Z.showPicker.call(j)},selectMinute:function(b){W(k.clone().minutes(parseInt(a(b.target).text(),10))),Z.showPicker.call(j)},selectSecond:function(b){W(k.clone().seconds(parseInt(a(b.target).text(),10))),Z.showPicker.call(j)},clear:Y,today:function(){W(b())},close:X},$=function(b){return a(b.currentTarget).is(".disabled")?!1:(Z[a(b.currentTarget).data("action")].apply(j,arguments),!1)},_=function(){var c,f={year:function(a){return a.month(0).date(1).hours(0).seconds(0).minutes(0)},month:function(a){return a.date(1).hours(0).seconds(0).minutes(0)},day:function(a){return a.hours(0).seconds(0).minutes(0)},hour:function(a){return a.seconds(0).minutes(0)},minute:function(a){return a.seconds(0)}};return e.prop("disabled")||!d.ignoreReadonly&&e.prop("readonly")||o?j:(d.useCurrent&&m&&(e.is("input")&&0===e.val().trim().length||d.inline)&&(c=b(),"string"==typeof d.useCurrent&&(c=f[d.useCurrent](c)),W(c)),o=E(),J(),N(),o.find(".timepicker-hours").hide(),o.find(".timepicker-minutes").hide(),o.find(".timepicker-seconds").hide(),V(),I(),a(window).on("resize",G),o.on("click","[data-action]",$),o.on("mousedown",!1),n&&n.hasClass("btn")&&n.toggleClass("active"),o.show(),G(),e.is(":focus")||e.focus(),H({type:"dp.show"}),j)},ab=function(){return o?X():_()},bb=function(a){return a=b.isMoment(a)||a instanceof Date?b(a):b(a,h,d.useStrict),a.locale(d.locale),a},cb=function(a){var b,c,e,f,g=null,h=[],i={},k=a.which,l="p";w[k]=l;for(b in w)w.hasOwnProperty(b)&&w[b]===l&&(h.push(b),parseInt(b,10)!==k&&(i[b]=!0));for(b in d.keyBinds)if(d.keyBinds.hasOwnProperty(b)&&"function"==typeof d.keyBinds[b]&&(e=b.split(" "),e.length===h.length&&v[k]===e[e.length-1])){for(f=!0,c=e.length-2;c>=0;c--)if(!(v[e[c]]in i)){f=!1;break}if(f){g=d.keyBinds[b];break}}g&&(g.call(j,o),a.stopPropagation(),a.preventDefault())},db=function(a){w[a.which]="r",a.stopPropagation(),a.preventDefault()},eb=function(b){var c=a(b.target).val().trim(),d=c?bb(c):null;return W(d),b.stopImmediatePropagation(),!1},fb=function(){e.on({change:eb,blur:d.debug?"":X,keydown:cb,keyup:db}),c.is("input")?e.on({focus:_}):n&&(n.on("click",ab),n.on("mousedown",!1))},gb=function(){e.off({change:eb,blur:X,keydown:cb,keyup:db}),c.is("input")?e.off({focus:_}):n&&(n.off("click",ab),n.off("mousedown",!1))},hb=function(b){var c={};return a.each(b,function(){var a=bb(this);a.isValid()&&(c[a.format("YYYY-MM-DD")]=!0)}),Object.keys(c).length?c:!1},ib=function(){var a=d.format||"L LT";g=a.replace(/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,function(a){var b=k.localeData().longDateFormat(a)||a;return b.replace(/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,function(a){return k.localeData().longDateFormat(a)||a})}),h=d.extraFormats?d.extraFormats.slice():[],h.indexOf(a)<0&&h.indexOf(g)<0&&h.push(g),f=g.toLowerCase().indexOf("a")<1&&g.indexOf("h")<1,x("y")&&(p=2),x("M")&&(p=1),x("d")&&(p=0),i=Math.max(p,i),m||W(k)};if(j.destroy=function(){X(),gb(),c.removeData("DateTimePicker"),c.removeData("date")},j.toggle=ab,j.show=_,j.hide=X,j.disable=function(){return X(),n&&n.hasClass("btn")&&n.addClass("disabled"),e.prop("disabled",!0),j},j.enable=function(){return n&&n.hasClass("btn")&&n.removeClass("disabled"),e.prop("disabled",!1),j},j.ignoreReadonly=function(a){if(0===arguments.length)return d.ignoreReadonly;if("boolean"!=typeof a)throw new TypeError("ignoreReadonly () expects a boolean parameter");return d.ignoreReadonly=a,j},j.options=function(b){if(0===arguments.length)return a.extend(!0,{},d);if(!(b instanceof Object))throw new TypeError("options() options parameter should be an object");return a.extend(!0,d,b),a.each(d,function(a,b){if(void 0===j[a])throw new TypeError("option "+a+" is not recognized!");j[a](b)}),j},j.date=function(a){if(0===arguments.length)return m?null:k.clone();if(!(null===a||"string"==typeof a||b.isMoment(a)||a instanceof Date))throw new TypeError("date() parameter must be one of [null, string, moment or Date]");return W(null===a?null:bb(a)),j},j.format=function(a){if(0===arguments.length)return d.format;if("string"!=typeof a&&("boolean"!=typeof a||a!==!1))throw new TypeError("format() expects a sting or boolean:false parameter "+a);return d.format=a,g&&ib(),j},j.dayViewHeaderFormat=function(a){if(0===arguments.length)return d.dayViewHeaderFormat;if("string"!=typeof a)throw new TypeError("dayViewHeaderFormat() expects a string parameter");return d.dayViewHeaderFormat=a,j},j.extraFormats=function(a){if(0===arguments.length)return d.extraFormats;if(a!==!1&&!(a instanceof Array))throw new TypeError("extraFormats() expects an array or false parameter");return d.extraFormats=a,h&&ib(),j},j.disabledDates=function(b){if(0===arguments.length)return d.disabledDates?a.extend({},d.disabledDates):d.disabledDates;if(!b)return d.disabledDates=!1,V(),j;if(!(b instanceof Array))throw new TypeError("disabledDates() expects an array parameter");return d.disabledDates=hb(b),d.enabledDates=!1,V(),j},j.enabledDates=function(b){if(0===arguments.length)return d.enabledDates?a.extend({},d.enabledDates):d.enabledDates;if(!b)return d.enabledDates=!1,V(),j;if(!(b instanceof Array))throw new TypeError("enabledDates() expects an array parameter");return d.enabledDates=hb(b),d.disabledDates=!1,V(),j},j.daysOfWeekDisabled=function(a){if(0===arguments.length)return d.daysOfWeekDisabled.splice(0);if(!(a instanceof Array))throw new TypeError("daysOfWeekDisabled() expects an array parameter");return d.daysOfWeekDisabled=a.reduce(function(a,b){return b=parseInt(b,10),b>6||0>b||isNaN(b)?a:(-1===a.indexOf(b)&&a.push(b),a)},[]).sort(),V(),j},j.maxDate=function(a){if(0===arguments.length)return d.maxDate?d.maxDate.clone():d.maxDate;if("boolean"==typeof a&&a===!1)return d.maxDate=!1,V(),j;"string"==typeof a&&("now"===a||"moment"===a)&&(a=b());var c=bb(a);if(!c.isValid())throw new TypeError("maxDate() Could not parse date parameter: "+a);if(d.minDate&&c.isBefore(d.minDate))throw new TypeError("maxDate() date parameter is before options.minDate: "+c.format(g));return d.maxDate=c,d.maxDate.isBefore(a)&&W(d.maxDate),l.isAfter(c)&&(l=c.clone()),V(),j},j.minDate=function(a){if(0===arguments.length)return d.minDate?d.minDate.clone():d.minDate;if("boolean"==typeof a&&a===!1)return d.minDate=!1,V(),j;"string"==typeof a&&("now"===a||"moment"===a)&&(a=b());var c=bb(a);if(!c.isValid())throw new TypeError("minDate() Could not parse date parameter: "+a);if(d.maxDate&&c.isAfter(d.maxDate))throw new TypeError("minDate() date parameter is after options.maxDate: "+c.format(g));return d.minDate=c,d.minDate.isAfter(a)&&W(d.minDate),l.isBefore(c)&&(l=c.clone()),V(),j},j.defaultDate=function(a){if(0===arguments.length)return d.defaultDate?d.defaultDate.clone():d.defaultDate;if(!a)return d.defaultDate=!1,j;"string"==typeof a&&("now"===a||"moment"===a)&&(a=b());var c=bb(a);if(!c.isValid())throw new TypeError("defaultDate() Could not parse date parameter: "+a);if(!M(c))throw new TypeError("defaultDate() date passed is invalid according to component setup validations");return d.defaultDate=c,d.defaultDate&&""===e.val().trim()&&void 0===e.attr("placeholder")&&W(d.defaultDate),j},j.locale=function(a){if(0===arguments.length)return d.locale;if(!b.localeData(a))throw new TypeError("locale() locale "+a+" is not loaded from moment locales!");return d.locale=a,k.locale(d.locale),l.locale(d.locale),g&&ib(),o&&(X(),_()),j},j.stepping=function(a){return 0===arguments.length?d.stepping:(a=parseInt(a,10),(isNaN(a)||1>a)&&(a=1),d.stepping=a,j)},j.useCurrent=function(a){var b=["year","month","day","hour","minute"];if(0===arguments.length)return d.useCurrent;if("boolean"!=typeof a&&"string"!=typeof a)throw new TypeError("useCurrent() expects a boolean or string parameter");if("string"==typeof a&&-1===b.indexOf(a.toLowerCase()))throw new TypeError("useCurrent() expects a string parameter of "+b.join(", "));return d.useCurrent=a,j},j.collapse=function(a){if(0===arguments.length)return d.collapse;if("boolean"!=typeof a)throw new TypeError("collapse() expects a boolean parameter");return d.collapse===a?j:(d.collapse=a,o&&(X(),_()),j)},j.icons=function(b){if(0===arguments.length)return a.extend({},d.icons);if(!(b instanceof Object))throw new TypeError("icons() expects parameter to be an Object");return a.extend(d.icons,b),o&&(X(),_()),j},j.useStrict=function(a){if(0===arguments.length)return d.useStrict;if("boolean"!=typeof a)throw new TypeError("useStrict() expects a boolean parameter");return d.useStrict=a,j},j.sideBySide=function(a){if(0===arguments.length)return d.sideBySide;if("boolean"!=typeof a)throw new TypeError("sideBySide() expects a boolean parameter");return d.sideBySide=a,o&&(X(),_()),j},j.viewMode=function(a){if(0===arguments.length)return d.viewMode;if("string"!=typeof a)throw new TypeError("viewMode() expects a string parameter");if(-1===r.indexOf(a))throw new TypeError("viewMode() parameter must be one of ("+r.join(", ")+") value");return d.viewMode=a,i=Math.max(r.indexOf(a),p),I(),j},j.toolbarPlacement=function(a){if(0===arguments.length)return d.toolbarPlacement;if("string"!=typeof a)throw new TypeError("toolbarPlacement() expects a string parameter");if(-1===u.indexOf(a))throw new TypeError("toolbarPlacement() parameter must be one of ("+u.join(", ")+") value");return d.toolbarPlacement=a,o&&(X(),_()),j},j.widgetPositioning=function(b){if(0===arguments.length)return a.extend({},d.widgetPositioning);if("[object Object]"!=={}.toString.call(b))throw new TypeError("widgetPositioning() expects an object variable");if(b.horizontal){if("string"!=typeof b.horizontal)throw new TypeError("widgetPositioning() horizontal variable must be a string");if(b.horizontal=b.horizontal.toLowerCase(),-1===t.indexOf(b.horizontal))throw new TypeError("widgetPositioning() expects horizontal parameter to be one of ("+t.join(", ")+")");d.widgetPositioning.horizontal=b.horizontal}if(b.vertical){if("string"!=typeof b.vertical)throw new TypeError("widgetPositioning() vertical variable must be a string");if(b.vertical=b.vertical.toLowerCase(),-1===s.indexOf(b.vertical))throw new TypeError("widgetPositioning() expects vertical parameter to be one of ("+s.join(", ")+")");d.widgetPositioning.vertical=b.vertical}return V(),j},j.calendarWeeks=function(a){if(0===arguments.length)return d.calendarWeeks;if("boolean"!=typeof a)throw new TypeError("calendarWeeks() expects parameter to be a boolean value");return d.calendarWeeks=a,V(),j},j.showTodayButton=function(a){if(0===arguments.length)return d.showTodayButton;if("boolean"!=typeof a)throw new TypeError("showTodayButton() expects a boolean parameter");return d.showTodayButton=a,o&&(X(),_()),j},j.showClear=function(a){if(0===arguments.length)return d.showClear;if("boolean"!=typeof a)throw new TypeError("showClear() expects a boolean parameter");return d.showClear=a,o&&(X(),_()),j},j.widgetParent=function(b){if(0===arguments.length)return d.widgetParent;if("string"==typeof b&&(b=a(b)),null!==b&&"string"!=typeof b&&!(b instanceof a))throw new TypeError("widgetParent() expects a string or a jQuery object parameter");return d.widgetParent=b,o&&(X(),_()),j},j.keepOpen=function(a){if(0===arguments.length)return d.keepOpen;if("boolean"!=typeof a)throw new TypeError("keepOpen() expects a boolean parameter");return d.keepOpen=a,j},j.inline=function(a){if(0===arguments.length)return d.inline;if("boolean"!=typeof a)throw new TypeError("inline() expects a boolean parameter");return d.inline=a,j},j.clear=function(){return Y(),j},j.keyBinds=function(a){return d.keyBinds=a,j},j.debug=function(a){if("boolean"!=typeof a)throw new TypeError("debug() expects a boolean parameter");return d.debug=a,j},j.showClose=function(a){if(0===arguments.length)return d.showClose;if("boolean"!=typeof a)throw new TypeError("showClose() expects a boolean parameter");return d.showClose=a,j},j.keepInvalid=function(a){if(0===arguments.length)return d.keepInvalid;if("boolean"!=typeof a)throw new TypeError("keepInvalid() expects a boolean parameter");return d.keepInvalid=a,j},j.datepickerInput=function(a){if(0===arguments.length)return d.datepickerInput;if("string"!=typeof a)throw new TypeError("datepickerInput() expects a string parameter");return d.datepickerInput=a,j},c.is("input"))e=c;else if(e=c.find(d.datepickerInput),0===e.size())e=c.find("input");else if(!e.is("input"))throw new Error('CSS class "'+d.datepickerInput+'" cannot be applied to non input element');if(c.hasClass("input-group")&&(n=c.find(0===c.find(".datepickerbutton").size()?'[class^="input-group-"]':".datepickerbutton")),!d.inline&&!e.is("input"))throw new Error("Could not initialize DateTimePicker without an input element");return a.extend(!0,d,F()),j.options(d),ib(),fb(),e.prop("disabled")&&j.disable(),e.is("input")&&0!==e.val().trim().length?W(bb(e.val().trim())):d.defaultDate&&void 0===e.attr("placeholder")&&W(d.defaultDate),d.inline&&_(),j};a.fn.datetimepicker=function(b){return this.each(function(){var d=a(this);d.data("DateTimePicker")||(b=a.extend(!0,{},a.fn.datetimepicker.defaults,b),d.data("DateTimePicker",c(d,b)))})},a.fn.datetimepicker.defaults={format:!1,dayViewHeaderFormat:"MMMM YYYY",extraFormats:!1,stepping:1,minDate:!1,maxDate:!1,useCurrent:!0,collapse:!0,locale:b.locale(),defaultDate:!1,disabledDates:!1,enabledDates:!1,icons:{time:"glyphicon glyphicon-time",date:"glyphicon glyphicon-calendar",up:"glyphicon glyphicon-chevron-up",down:"glyphicon glyphicon-chevron-down",previous:"glyphicon glyphicon-chevron-left",next:"glyphicon glyphicon-chevron-right",today:"glyphicon glyphicon-screenshot",clear:"glyphicon glyphicon-trash",close:"glyphicon glyphicon-remove"},useStrict:!1,sideBySide:!1,daysOfWeekDisabled:[],calendarWeeks:!1,viewMode:"days",toolbarPlacement:"default",showTodayButton:!1,showClear:!1,showClose:!1,widgetPositioning:{horizontal:"auto",vertical:"auto"},widgetParent:null,ignoreReadonly:!1,keepOpen:!1,inline:!1,keepInvalid:!1,datepickerInput:".datepickerinput",keyBinds:{up:function(a){if(a){var c=this.date()||b();this.date(a.find(".datepicker").is(":visible")?c.clone().subtract(7,"d"):c.clone().add(1,"m"))}},down:function(a){if(!a)return void this.show();var c=this.date()||b();this.date(a.find(".datepicker").is(":visible")?c.clone().add(7,"d"):c.clone().subtract(1,"m"))},"control up":function(a){if(a){var c=this.date()||b();this.date(a.find(".datepicker").is(":visible")?c.clone().subtract(1,"y"):c.clone().add(1,"h"))}},"control down":function(a){if(a){var c=this.date()||b();this.date(a.find(".datepicker").is(":visible")?c.clone().add(1,"y"):c.clone().subtract(1,"h"))}},left:function(a){if(a){var c=this.date()||b();a.find(".datepicker").is(":visible")&&this.date(c.clone().subtract(1,"d"))}},right:function(a){if(a){var c=this.date()||b();a.find(".datepicker").is(":visible")&&this.date(c.clone().add(1,"d"))}},pageUp:function(a){if(a){var c=this.date()||b();a.find(".datepicker").is(":visible")&&this.date(c.clone().subtract(1,"M"))}},pageDown:function(a){if(a){var c=this.date()||b();a.find(".datepicker").is(":visible")&&this.date(c.clone().add(1,"M"))}},enter:function(){this.hide()},escape:function(){this.hide()},"control space":function(a){a.find(".timepicker").is(":visible")&&a.find('.btn[data-action="togglePeriod"]').click()},t:function(){this.date(b())},"delete":function(){this.clear()}},debug:!1}});
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "bootstrap-datetimepicker",
3
+ "version": "4.7.14",
4
+ "main": ["build/css/bootstrap-datetimepicker.min.css","build/js/bootstrap-datetimepicker.min.js","src/less/_bootstrap-datetimepicker.less","src/less/bootstrap-datetimepicker-build.less","src/js/bootstrap-datetimepicker.js"],
5
+ "dependencies": {
6
+ "jquery" : ">=1.8.3",
7
+ "moment": ">=2.8.0"
8
+ }
9
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "name": "eonasdan/bootstrap-datetimepicker",
3
+ "type": "component",
4
+ "version": "4.7.14",
5
+ "description": "Date/time picker widget based on twitter bootstrap",
6
+ "keywords": [
7
+ "bootstrap",
8
+ "datetimepicker"
9
+ ],
10
+ "homepage": "http://eonasdan.github.io/bootstrap-datetimepicker/",
11
+ "license": "MIT",
12
+ "require": {
13
+ "robloach/component-installer": "*",
14
+ "components/jquery": ">=1.9.1",
15
+ "moment/moment": ">=2.8"
16
+ },
17
+ "extra": {
18
+ "component": {
19
+ "scripts": [
20
+ "src/js/bootstrap-datetimepicker.js"
21
+ ],
22
+ "files": [
23
+ "build/js/bootstrap-datetimepicker.min.js",
24
+ "build/css/bootstrap-datetimepicker.css",
25
+ "build/css/bootstrap-datetimepicker.min.css",
26
+ "src/less/_bootstrap-datetimepicker.less",
27
+ "src/less/bootstrap-datetimepicker-build.less"
28
+ ]
29
+ }
30
+ }
31
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "bootstrap-datetimepicker",
3
+ "main": "src/js/bootstrap-datetimepicker.js",
4
+ "version": "4.7.14",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/eonasdan/bootstrap-datetimepicker.git"
8
+ },
9
+ "bugs": {
10
+ "url": "https://github.com/eonasdan/bootstrap-datetimepicker/issues"
11
+ },
12
+ "keywords": [
13
+ "twitter-bootstrap",
14
+ "bootstrap",
15
+ "datepicker",
16
+ "datetimepicker",
17
+ "timepicker",
18
+ "moment"
19
+ ],
20
+ "dependencies": {
21
+ "moment": "~2.8.2",
22
+ "bootstrap": "^3.0",
23
+ "jquery": "latest"
24
+ },
25
+ "devDependencies": {
26
+ "grunt": "latest",
27
+ "grunt-contrib-jasmine": "^0.7.0",
28
+ "grunt-contrib-jshint": "latest",
29
+ "grunt-contrib-less": "latest",
30
+ "grunt-contrib-uglify": "latest",
31
+ "grunt-jscs": "latest",
32
+ "grunt-string-replace": "latest",
33
+ "load-grunt-tasks": "latest"
34
+ }
35
+ }
@@ -0,0 +1,2051 @@
1
+ /*! version : 4.7.14
2
+ =========================================================
3
+ bootstrap-datetimejs
4
+ https://github.com/Eonasdan/bootstrap-datetimepicker
5
+ Copyright (c) 2015 Jonathan Peterson
6
+ =========================================================
7
+ */
8
+ /*
9
+ The MIT License (MIT)
10
+
11
+ Copyright (c) 2015 Jonathan Peterson
12
+
13
+ Permission is hereby granted, free of charge, to any person obtaining a copy
14
+ of this software and associated documentation files (the "Software"), to deal
15
+ in the Software without restriction, including without limitation the rights
16
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
17
+ copies of the Software, and to permit persons to whom the Software is
18
+ furnished to do so, subject to the following conditions:
19
+
20
+ The above copyright notice and this permission notice shall be included in
21
+ all copies or substantial portions of the Software.
22
+
23
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
24
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
26
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
28
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
29
+ THE SOFTWARE.
30
+ */
31
+ /*global define:false */
32
+ /*global exports:false */
33
+ /*global require:false */
34
+ /*global jQuery:false */
35
+ /*global moment:false */
36
+ (function (factory) {
37
+ 'use strict';
38
+ if (typeof define === 'function' && define.amd) {
39
+ // AMD is used - Register as an anonymous module.
40
+ define(['jquery', 'moment'], factory);
41
+ } else if (typeof exports === 'object') {
42
+ factory(require('jquery'), require('moment'));
43
+ } else {
44
+ // Neither AMD nor CommonJS used. Use global variables.
45
+ if (typeof jQuery === 'undefined') {
46
+ throw 'bootstrap-datetimepicker requires jQuery to be loaded first';
47
+ }
48
+ if (typeof moment === 'undefined') {
49
+ throw 'bootstrap-datetimepicker requires Moment.js to be loaded first';
50
+ }
51
+ factory(jQuery, moment);
52
+ }
53
+ }(function ($, moment) {
54
+ 'use strict';
55
+ if (!moment) {
56
+ throw new Error('bootstrap-datetimepicker requires Moment.js to be loaded first');
57
+ }
58
+
59
+ var dateTimePicker = function (element, options) {
60
+ var picker = {},
61
+ date = moment().startOf('d'),
62
+ viewDate = date.clone(),
63
+ unset = true,
64
+ input,
65
+ component = false,
66
+ widget = false,
67
+ use24Hours,
68
+ minViewModeNumber = 0,
69
+ actualFormat,
70
+ parseFormats,
71
+ currentViewMode,
72
+ datePickerModes = [
73
+ {
74
+ clsName: 'days',
75
+ navFnc: 'M',
76
+ navStep: 1
77
+ },
78
+ {
79
+ clsName: 'months',
80
+ navFnc: 'y',
81
+ navStep: 1
82
+ },
83
+ {
84
+ clsName: 'years',
85
+ navFnc: 'y',
86
+ navStep: 10
87
+ }
88
+ ],
89
+ viewModes = ['days', 'months', 'years'],
90
+ verticalModes = ['top', 'bottom', 'auto'],
91
+ horizontalModes = ['left', 'right', 'auto'],
92
+ toolbarPlacements = ['default', 'top', 'bottom'],
93
+ keyMap = {
94
+ 'up': 38,
95
+ 38: 'up',
96
+ 'down': 40,
97
+ 40: 'down',
98
+ 'left': 37,
99
+ 37: 'left',
100
+ 'right': 39,
101
+ 39: 'right',
102
+ 'tab': 9,
103
+ 9: 'tab',
104
+ 'escape': 27,
105
+ 27: 'escape',
106
+ 'enter': 13,
107
+ 13: 'enter',
108
+ 'pageUp': 33,
109
+ 33: 'pageUp',
110
+ 'pageDown': 34,
111
+ 34: 'pageDown',
112
+ 'shift': 16,
113
+ 16: 'shift',
114
+ 'control': 17,
115
+ 17: 'control',
116
+ 'space': 32,
117
+ 32: 'space',
118
+ 't': 84,
119
+ 84: 't',
120
+ 'delete': 46,
121
+ 46: 'delete'
122
+ },
123
+ keyState = {},
124
+
125
+ /********************************************************************************
126
+ *
127
+ * Private functions
128
+ *
129
+ ********************************************************************************/
130
+ isEnabled = function (granularity) {
131
+ if (typeof granularity !== 'string' || granularity.length > 1) {
132
+ throw new TypeError('isEnabled expects a single character string parameter');
133
+ }
134
+ switch (granularity) {
135
+ case 'y':
136
+ return actualFormat.indexOf('Y') !== -1;
137
+ case 'M':
138
+ return actualFormat.indexOf('M') !== -1;
139
+ case 'd':
140
+ return actualFormat.toLowerCase().indexOf('d') !== -1;
141
+ case 'h':
142
+ case 'H':
143
+ return actualFormat.toLowerCase().indexOf('h') !== -1;
144
+ case 'm':
145
+ return actualFormat.indexOf('m') !== -1;
146
+ case 's':
147
+ return actualFormat.indexOf('s') !== -1;
148
+ default:
149
+ return false;
150
+ }
151
+ },
152
+
153
+ hasTime = function () {
154
+ return (isEnabled('h') || isEnabled('m') || isEnabled('s'));
155
+ },
156
+
157
+ hasDate = function () {
158
+ return (isEnabled('y') || isEnabled('M') || isEnabled('d'));
159
+ },
160
+
161
+ getDatePickerTemplate = function () {
162
+ var headTemplate = $('<thead>')
163
+ .append($('<tr>')
164
+ .append($('<th>').addClass('prev').attr('data-action', 'previous')
165
+ .append($('<span>').addClass(options.icons.previous))
166
+ )
167
+ .append($('<th>').addClass('picker-switch').attr('data-action', 'pickerSwitch').attr('colspan', (options.calendarWeeks ? '6' : '5')))
168
+ .append($('<th>').addClass('next').attr('data-action', 'next')
169
+ .append($('<span>').addClass(options.icons.next))
170
+ )
171
+ ),
172
+ contTemplate = $('<tbody>')
173
+ .append($('<tr>')
174
+ .append($('<td>').attr('colspan', (options.calendarWeeks ? '8' : '7')))
175
+ );
176
+
177
+ return [
178
+ $('<div>').addClass('datepicker-days')
179
+ .append($('<table>').addClass('table-condensed')
180
+ .append(headTemplate)
181
+ .append($('<tbody>'))
182
+ ),
183
+ $('<div>').addClass('datepicker-months')
184
+ .append($('<table>').addClass('table-condensed')
185
+ .append(headTemplate.clone())
186
+ .append(contTemplate.clone())
187
+ ),
188
+ $('<div>').addClass('datepicker-years')
189
+ .append($('<table>').addClass('table-condensed')
190
+ .append(headTemplate.clone())
191
+ .append(contTemplate.clone())
192
+ )
193
+ ];
194
+ },
195
+
196
+ getTimePickerMainTemplate = function () {
197
+ var topRow = $('<tr>'),
198
+ middleRow = $('<tr>'),
199
+ bottomRow = $('<tr>');
200
+
201
+ if (isEnabled('h')) {
202
+ topRow.append($('<td>')
203
+ .append($('<a>').attr({href: '#', tabindex: '-1'}).addClass('btn').attr('data-action', 'incrementHours')
204
+ .append($('<span>').addClass(options.icons.up))));
205
+ middleRow.append($('<td>')
206
+ .append($('<span>').addClass('timepicker-hour').attr('data-time-component', 'hours').attr('data-action', 'showHours')));
207
+ bottomRow.append($('<td>')
208
+ .append($('<a>').attr({href: '#', tabindex: '-1'}).addClass('btn').attr('data-action', 'decrementHours')
209
+ .append($('<span>').addClass(options.icons.down))));
210
+ }
211
+ if (isEnabled('m')) {
212
+ if (isEnabled('h')) {
213
+ topRow.append($('<td>').addClass('separator'));
214
+ middleRow.append($('<td>').addClass('separator').html(':'));
215
+ bottomRow.append($('<td>').addClass('separator'));
216
+ }
217
+ topRow.append($('<td>')
218
+ .append($('<a>').attr({href: '#', tabindex: '-1'}).addClass('btn').attr('data-action', 'incrementMinutes')
219
+ .append($('<span>').addClass(options.icons.up))));
220
+ middleRow.append($('<td>')
221
+ .append($('<span>').addClass('timepicker-minute').attr('data-time-component', 'minutes').attr('data-action', 'showMinutes')));
222
+ bottomRow.append($('<td>')
223
+ .append($('<a>').attr({href: '#', tabindex: '-1'}).addClass('btn').attr('data-action', 'decrementMinutes')
224
+ .append($('<span>').addClass(options.icons.down))));
225
+ }
226
+ if (isEnabled('s')) {
227
+ if (isEnabled('m')) {
228
+ topRow.append($('<td>').addClass('separator'));
229
+ middleRow.append($('<td>').addClass('separator').html(':'));
230
+ bottomRow.append($('<td>').addClass('separator'));
231
+ }
232
+ topRow.append($('<td>')
233
+ .append($('<a>').attr({href: '#', tabindex: '-1'}).addClass('btn').attr('data-action', 'incrementSeconds')
234
+ .append($('<span>').addClass(options.icons.up))));
235
+ middleRow.append($('<td>')
236
+ .append($('<span>').addClass('timepicker-second').attr('data-time-component', 'seconds').attr('data-action', 'showSeconds')));
237
+ bottomRow.append($('<td>')
238
+ .append($('<a>').attr({href: '#', tabindex: '-1'}).addClass('btn').attr('data-action', 'decrementSeconds')
239
+ .append($('<span>').addClass(options.icons.down))));
240
+ }
241
+
242
+ if (!use24Hours) {
243
+ topRow.append($('<td>').addClass('separator'));
244
+ middleRow.append($('<td>')
245
+ .append($('<button>').addClass('btn btn-primary').attr('data-action', 'togglePeriod')));
246
+ bottomRow.append($('<td>').addClass('separator'));
247
+ }
248
+
249
+ return $('<div>').addClass('timepicker-picker')
250
+ .append($('<table>').addClass('table-condensed')
251
+ .append([topRow, middleRow, bottomRow]));
252
+ },
253
+
254
+ getTimePickerTemplate = function () {
255
+ var hoursView = $('<div>').addClass('timepicker-hours')
256
+ .append($('<table>').addClass('table-condensed')),
257
+ minutesView = $('<div>').addClass('timepicker-minutes')
258
+ .append($('<table>').addClass('table-condensed')),
259
+ secondsView = $('<div>').addClass('timepicker-seconds')
260
+ .append($('<table>').addClass('table-condensed')),
261
+ ret = [getTimePickerMainTemplate()];
262
+
263
+ if (isEnabled('h')) {
264
+ ret.push(hoursView);
265
+ }
266
+ if (isEnabled('m')) {
267
+ ret.push(minutesView);
268
+ }
269
+ if (isEnabled('s')) {
270
+ ret.push(secondsView);
271
+ }
272
+
273
+ return ret;
274
+ },
275
+
276
+ getToolbar = function () {
277
+ var row = [];
278
+ if (options.showTodayButton) {
279
+ row.push($('<td>').append($('<a>').attr('data-action', 'today').append($('<span>').addClass(options.icons.today))));
280
+ }
281
+ if (!options.sideBySide && hasDate() && hasTime()) {
282
+ row.push($('<td>').append($('<a>').attr('data-action', 'togglePicker').append($('<span>').addClass(options.icons.time))));
283
+ }
284
+ if (options.showClear) {
285
+ row.push($('<td>').append($('<a>').attr('data-action', 'clear').append($('<span>').addClass(options.icons.clear))));
286
+ }
287
+ if (options.showClose) {
288
+ row.push($('<td>').append($('<a>').attr('data-action', 'close').append($('<span>').addClass(options.icons.close))));
289
+ }
290
+ return $('<table>').addClass('table-condensed').append($('<tbody>').append($('<tr>').append(row)));
291
+ },
292
+
293
+ getTemplate = function () {
294
+ var template = $('<div>').addClass('bootstrap-datetimepicker-widget dropdown-menu'),
295
+ dateView = $('<div>').addClass('datepicker').append(getDatePickerTemplate()),
296
+ timeView = $('<div>').addClass('timepicker').append(getTimePickerTemplate()),
297
+ content = $('<ul>').addClass('list-unstyled'),
298
+ toolbar = $('<li>').addClass('picker-switch' + (options.collapse ? ' accordion-toggle' : '')).append(getToolbar());
299
+
300
+ if (options.inline) {
301
+ template.removeClass('dropdown-menu');
302
+ }
303
+
304
+ if (use24Hours) {
305
+ template.addClass('usetwentyfour');
306
+ }
307
+ if (options.sideBySide && hasDate() && hasTime()) {
308
+ template.addClass('timepicker-sbs');
309
+ template.append(
310
+ $('<div>').addClass('row')
311
+ .append(dateView.addClass('col-sm-6'))
312
+ .append(timeView.addClass('col-sm-6'))
313
+ );
314
+ template.append(toolbar);
315
+ return template;
316
+ }
317
+
318
+ if (options.toolbarPlacement === 'top') {
319
+ content.append(toolbar);
320
+ }
321
+ if (hasDate()) {
322
+ content.append($('<li>').addClass((options.collapse && hasTime() ? 'collapse in' : '')).append(dateView));
323
+ }
324
+ if (options.toolbarPlacement === 'default') {
325
+ content.append(toolbar);
326
+ }
327
+ if (hasTime()) {
328
+ content.append($('<li>').addClass((options.collapse && hasDate() ? 'collapse' : '')).append(timeView));
329
+ }
330
+ if (options.toolbarPlacement === 'bottom') {
331
+ content.append(toolbar);
332
+ }
333
+ return template.append(content);
334
+ },
335
+
336
+ dataToOptions = function () {
337
+ var eData,
338
+ dataOptions = {};
339
+
340
+ if (element.is('input') || options.inline) {
341
+ eData = element.data();
342
+ } else {
343
+ eData = element.find('input').data();
344
+ }
345
+
346
+ if (eData.dateOptions && eData.dateOptions instanceof Object) {
347
+ dataOptions = $.extend(true, dataOptions, eData.dateOptions);
348
+ }
349
+
350
+ $.each(options, function (key) {
351
+ var attributeName = 'date' + key.charAt(0).toUpperCase() + key.slice(1);
352
+ if (eData[attributeName] !== undefined) {
353
+ dataOptions[key] = eData[attributeName];
354
+ }
355
+ });
356
+ return dataOptions;
357
+ },
358
+
359
+ place = function () {
360
+ var position = (component || element).position(),
361
+ offset = (component || element).offset(),
362
+ vertical = options.widgetPositioning.vertical,
363
+ horizontal = options.widgetPositioning.horizontal,
364
+ parent;
365
+
366
+ if (options.widgetParent) {
367
+ parent = options.widgetParent.append(widget);
368
+ } else if (element.is('input')) {
369
+ parent = element.parent().append(widget);
370
+ } else if (options.inline) {
371
+ parent = element.append(widget);
372
+ return;
373
+ } else {
374
+ parent = element;
375
+ element.children().first().after(widget);
376
+ }
377
+
378
+ // Top and bottom logic
379
+ if (vertical === 'auto') {
380
+ if (offset.top + widget.height() * 1.5 >= $(window).height() + $(window).scrollTop() &&
381
+ widget.height() + element.outerHeight() < offset.top) {
382
+ vertical = 'top';
383
+ } else {
384
+ vertical = 'bottom';
385
+ }
386
+ }
387
+
388
+ // Left and right logic
389
+ if (horizontal === 'auto') {
390
+ if (parent.width() < offset.left + widget.outerWidth() / 2 &&
391
+ offset.left + widget.outerWidth() > $(window).width()) {
392
+ horizontal = 'right';
393
+ } else {
394
+ horizontal = 'left';
395
+ }
396
+ }
397
+
398
+ if (vertical === 'top') {
399
+ widget.addClass('top').removeClass('bottom');
400
+ } else {
401
+ widget.addClass('bottom').removeClass('top');
402
+ }
403
+
404
+ if (horizontal === 'right') {
405
+ widget.addClass('pull-right');
406
+ } else {
407
+ widget.removeClass('pull-right');
408
+ }
409
+
410
+ // find the first parent element that has a relative css positioning
411
+ if (parent.css('position') !== 'relative') {
412
+ parent = parent.parents().filter(function () {
413
+ return $(this).css('position') === 'relative';
414
+ }).first();
415
+ }
416
+
417
+ if (parent.length === 0) {
418
+ throw new Error('datetimepicker component should be placed within a relative positioned container');
419
+ }
420
+
421
+ widget.css({
422
+ top: vertical === 'top' ? 'auto' : position.top + element.outerHeight(),
423
+ bottom: vertical === 'top' ? position.top + element.outerHeight() : 'auto',
424
+ left: horizontal === 'left' ? parent.css('padding-left') : 'auto',
425
+ right: horizontal === 'left' ? 'auto' : parent.width() - element.outerWidth()
426
+ });
427
+ },
428
+
429
+ notifyEvent = function (e) {
430
+ if (e.type === 'dp.change' && ((e.date && e.date.isSame(e.oldDate)) || (!e.date && !e.oldDate))) {
431
+ return;
432
+ }
433
+ element.trigger(e);
434
+ },
435
+
436
+ showMode = function (dir) {
437
+ if (!widget) {
438
+ return;
439
+ }
440
+ if (dir) {
441
+ currentViewMode = Math.max(minViewModeNumber, Math.min(2, currentViewMode + dir));
442
+ }
443
+ widget.find('.datepicker > div').hide().filter('.datepicker-' + datePickerModes[currentViewMode].clsName).show();
444
+ },
445
+
446
+ fillDow = function () {
447
+ var row = $('<tr>'),
448
+ currentDate = viewDate.clone().startOf('w');
449
+
450
+ if (options.calendarWeeks === true) {
451
+ row.append($('<th>').addClass('cw').text('#'));
452
+ }
453
+
454
+ while (currentDate.isBefore(viewDate.clone().endOf('w'))) {
455
+ row.append($('<th>').addClass('dow').text(currentDate.format('dd')));
456
+ currentDate.add(1, 'd');
457
+ }
458
+ widget.find('.datepicker-days thead').append(row);
459
+ },
460
+
461
+ isInDisabledDates = function (testDate) {
462
+ return options.disabledDates[testDate.format('YYYY-MM-DD')] === true;
463
+ },
464
+
465
+ isInEnabledDates = function (testDate) {
466
+ return options.enabledDates[testDate.format('YYYY-MM-DD')] === true;
467
+ },
468
+
469
+ isValid = function (targetMoment, granularity) {
470
+ if (!targetMoment.isValid()) {
471
+ return false;
472
+ }
473
+ if (options.disabledDates && isInDisabledDates(targetMoment) && granularity !== 'M') {
474
+ return false;
475
+ }
476
+ if (options.enabledDates && !isInEnabledDates(targetMoment) && granularity !== 'M') {
477
+ return false;
478
+ }
479
+ if (options.minDate && targetMoment.isBefore(options.minDate, granularity)) {
480
+ return false;
481
+ }
482
+ if (options.maxDate && targetMoment.isAfter(options.maxDate, granularity)) {
483
+ return false;
484
+ }
485
+ if (granularity === 'd' && options.daysOfWeekDisabled.indexOf(targetMoment.day()) !== -1) { //widget && widget.find('.datepicker-days').length > 0
486
+ return false;
487
+ }
488
+ return true;
489
+ },
490
+
491
+ fillMonths = function () {
492
+ var spans = [],
493
+ monthsShort = viewDate.clone().startOf('y').hour(12); // hour is changed to avoid DST issues in some browsers
494
+ while (monthsShort.isSame(viewDate, 'y')) {
495
+ spans.push($('<span>').attr('data-action', 'selectMonth').addClass('month').text(monthsShort.format('MMM')));
496
+ monthsShort.add(1, 'M');
497
+ }
498
+ widget.find('.datepicker-months td').empty().append(spans);
499
+ },
500
+
501
+ updateMonths = function () {
502
+ var monthsView = widget.find('.datepicker-months'),
503
+ monthsViewHeader = monthsView.find('th'),
504
+ months = monthsView.find('tbody').find('span');
505
+
506
+ monthsView.find('.disabled').removeClass('disabled');
507
+
508
+ if (!isValid(viewDate.clone().subtract(1, 'y'), 'y')) {
509
+ monthsViewHeader.eq(0).addClass('disabled');
510
+ }
511
+
512
+ monthsViewHeader.eq(1).text(viewDate.year());
513
+
514
+ if (!isValid(viewDate.clone().add(1, 'y'), 'y')) {
515
+ monthsViewHeader.eq(2).addClass('disabled');
516
+ }
517
+
518
+ months.removeClass('active');
519
+ if (date.isSame(viewDate, 'y')) {
520
+ months.eq(date.month()).addClass('active');
521
+ }
522
+
523
+ months.each(function (index) {
524
+ if (!isValid(viewDate.clone().month(index), 'M')) {
525
+ $(this).addClass('disabled');
526
+ }
527
+ });
528
+ },
529
+
530
+ updateYears = function () {
531
+ var yearsView = widget.find('.datepicker-years'),
532
+ yearsViewHeader = yearsView.find('th'),
533
+ startYear = viewDate.clone().subtract(5, 'y'),
534
+ endYear = viewDate.clone().add(6, 'y'),
535
+ html = '';
536
+
537
+ yearsView.find('.disabled').removeClass('disabled');
538
+
539
+ if (options.minDate && options.minDate.isAfter(startYear, 'y')) {
540
+ yearsViewHeader.eq(0).addClass('disabled');
541
+ }
542
+
543
+ yearsViewHeader.eq(1).text(startYear.year() + '-' + endYear.year());
544
+
545
+ if (options.maxDate && options.maxDate.isBefore(endYear, 'y')) {
546
+ yearsViewHeader.eq(2).addClass('disabled');
547
+ }
548
+
549
+ while (!startYear.isAfter(endYear, 'y')) {
550
+ html += '<span data-action="selectYear" class="year' + (startYear.isSame(date, 'y') ? ' active' : '') + (!isValid(startYear, 'y') ? ' disabled' : '') + '">' + startYear.year() + '</span>';
551
+ startYear.add(1, 'y');
552
+ }
553
+
554
+ yearsView.find('td').html(html);
555
+ },
556
+
557
+ fillDate = function () {
558
+ var daysView = widget.find('.datepicker-days'),
559
+ daysViewHeader = daysView.find('th'),
560
+ currentDate,
561
+ html = [],
562
+ row,
563
+ clsName;
564
+
565
+ if (!hasDate()) {
566
+ return;
567
+ }
568
+
569
+ daysView.find('.disabled').removeClass('disabled');
570
+ daysViewHeader.eq(1).text(viewDate.format(options.dayViewHeaderFormat));
571
+
572
+ if (!isValid(viewDate.clone().subtract(1, 'M'), 'M')) {
573
+ daysViewHeader.eq(0).addClass('disabled');
574
+ }
575
+ if (!isValid(viewDate.clone().add(1, 'M'), 'M')) {
576
+ daysViewHeader.eq(2).addClass('disabled');
577
+ }
578
+
579
+ currentDate = viewDate.clone().startOf('M').startOf('week');
580
+
581
+ while (!viewDate.clone().endOf('M').endOf('w').isBefore(currentDate, 'd')) {
582
+ if (currentDate.weekday() === 0) {
583
+ row = $('<tr>');
584
+ if (options.calendarWeeks) {
585
+ row.append('<td class="cw">' + currentDate.week() + '</td>');
586
+ }
587
+ html.push(row);
588
+ }
589
+ clsName = '';
590
+ if (currentDate.isBefore(viewDate, 'M')) {
591
+ clsName += ' old';
592
+ }
593
+ if (currentDate.isAfter(viewDate, 'M')) {
594
+ clsName += ' new';
595
+ }
596
+ if (currentDate.isSame(date, 'd') && !unset) {
597
+ clsName += ' active';
598
+ }
599
+ if (!isValid(currentDate, 'd')) {
600
+ clsName += ' disabled';
601
+ }
602
+ if (currentDate.isSame(moment(), 'd')) {
603
+ clsName += ' today';
604
+ }
605
+ if (currentDate.day() === 0 || currentDate.day() === 6) {
606
+ clsName += ' weekend';
607
+ }
608
+ row.append('<td data-action="selectDay" class="day' + clsName + '">' + currentDate.date() + '</td>');
609
+ currentDate.add(1, 'd');
610
+ }
611
+
612
+ daysView.find('tbody').empty().append(html);
613
+
614
+ updateMonths();
615
+
616
+ updateYears();
617
+ },
618
+
619
+ fillHours = function () {
620
+ var table = widget.find('.timepicker-hours table'),
621
+ currentHour = viewDate.clone().startOf('d'),
622
+ html = [],
623
+ row = $('<tr>');
624
+
625
+ if (viewDate.hour() > 11 && !use24Hours) {
626
+ currentHour.hour(12);
627
+ }
628
+ while (currentHour.isSame(viewDate, 'd') && (use24Hours || (viewDate.hour() < 12 && currentHour.hour() < 12) || viewDate.hour() > 11)) {
629
+ if (currentHour.hour() % 4 === 0) {
630
+ row = $('<tr>');
631
+ html.push(row);
632
+ }
633
+ row.append('<td data-action="selectHour" class="hour' + (!isValid(currentHour, 'h') ? ' disabled' : '') + '">' + currentHour.format(use24Hours ? 'HH' : 'hh') + '</td>');
634
+ currentHour.add(1, 'h');
635
+ }
636
+ table.empty().append(html);
637
+ },
638
+
639
+ fillMinutes = function () {
640
+ var table = widget.find('.timepicker-minutes table'),
641
+ currentMinute = viewDate.clone().startOf('h'),
642
+ html = [],
643
+ row = $('<tr>'),
644
+ step = options.stepping === 1 ? 5 : options.stepping;
645
+
646
+ while (viewDate.isSame(currentMinute, 'h')) {
647
+ if (currentMinute.minute() % (step * 4) === 0) {
648
+ row = $('<tr>');
649
+ html.push(row);
650
+ }
651
+ row.append('<td data-action="selectMinute" class="minute' + (!isValid(currentMinute, 'm') ? ' disabled' : '') + '">' + currentMinute.format('mm') + '</td>');
652
+ currentMinute.add(step, 'm');
653
+ }
654
+ table.empty().append(html);
655
+ },
656
+
657
+ fillSeconds = function () {
658
+ var table = widget.find('.timepicker-seconds table'),
659
+ currentSecond = viewDate.clone().startOf('m'),
660
+ html = [],
661
+ row = $('<tr>');
662
+
663
+ while (viewDate.isSame(currentSecond, 'm')) {
664
+ if (currentSecond.second() % 20 === 0) {
665
+ row = $('<tr>');
666
+ html.push(row);
667
+ }
668
+ row.append('<td data-action="selectSecond" class="second' + (!isValid(currentSecond, 's') ? ' disabled' : '') + '">' + currentSecond.format('ss') + '</td>');
669
+ currentSecond.add(5, 's');
670
+ }
671
+
672
+ table.empty().append(html);
673
+ },
674
+
675
+ fillTime = function () {
676
+ var timeComponents = widget.find('.timepicker span[data-time-component]');
677
+ if (!use24Hours) {
678
+ widget.find('.timepicker [data-action=togglePeriod]').text(date.format('A'));
679
+ }
680
+ timeComponents.filter('[data-time-component=hours]').text(date.format(use24Hours ? 'HH' : 'hh'));
681
+ timeComponents.filter('[data-time-component=minutes]').text(date.format('mm'));
682
+ timeComponents.filter('[data-time-component=seconds]').text(date.format('ss'));
683
+
684
+ fillHours();
685
+ fillMinutes();
686
+ fillSeconds();
687
+ },
688
+
689
+ update = function () {
690
+ if (!widget) {
691
+ return;
692
+ }
693
+ fillDate();
694
+ fillTime();
695
+ },
696
+
697
+ setValue = function (targetMoment) {
698
+ var oldDate = unset ? null : date;
699
+
700
+ // case of calling setValue(null or false)
701
+ if (!targetMoment) {
702
+ unset = true;
703
+ input.val('');
704
+ element.data('date', '');
705
+ notifyEvent({
706
+ type: 'dp.change',
707
+ date: null,
708
+ oldDate: oldDate
709
+ });
710
+ update();
711
+ return;
712
+ }
713
+
714
+ targetMoment = targetMoment.clone().locale(options.locale);
715
+
716
+ if (options.stepping !== 1) {
717
+ targetMoment.minutes((Math.round(targetMoment.minutes() / options.stepping) * options.stepping) % 60).seconds(0);
718
+ }
719
+
720
+ if (isValid(targetMoment)) {
721
+ date = targetMoment;
722
+ viewDate = date.clone();
723
+ input.val(date.format(actualFormat));
724
+ element.data('date', date.format(actualFormat));
725
+ update();
726
+ unset = false;
727
+ notifyEvent({
728
+ type: 'dp.change',
729
+ date: date.clone(),
730
+ oldDate: oldDate
731
+ });
732
+ } else {
733
+ if (!options.keepInvalid) {
734
+ input.val(unset ? '' : date.format(actualFormat));
735
+ }
736
+ notifyEvent({
737
+ type: 'dp.error',
738
+ date: targetMoment
739
+ });
740
+ }
741
+ },
742
+
743
+ hide = function () {
744
+ var transitioning = false;
745
+ if (!widget) {
746
+ return picker;
747
+ }
748
+ // Ignore event if in the middle of a picker transition
749
+ widget.find('.collapse').each(function () {
750
+ var collapseData = $(this).data('collapse');
751
+ if (collapseData && collapseData.transitioning) {
752
+ transitioning = true;
753
+ return false;
754
+ }
755
+ return true;
756
+ });
757
+ if (transitioning) {
758
+ return picker;
759
+ }
760
+ if (component && component.hasClass('btn')) {
761
+ component.toggleClass('active');
762
+ }
763
+ widget.hide();
764
+
765
+ $(window).off('resize', place);
766
+ widget.off('click', '[data-action]');
767
+ widget.off('mousedown', false);
768
+
769
+ widget.remove();
770
+ widget = false;
771
+
772
+ notifyEvent({
773
+ type: 'dp.hide',
774
+ date: date.clone()
775
+ });
776
+ return picker;
777
+ },
778
+
779
+ clear = function () {
780
+ setValue(null);
781
+ },
782
+
783
+ /********************************************************************************
784
+ *
785
+ * Widget UI interaction functions
786
+ *
787
+ ********************************************************************************/
788
+ actions = {
789
+ next: function () {
790
+ viewDate.add(datePickerModes[currentViewMode].navStep, datePickerModes[currentViewMode].navFnc);
791
+ fillDate();
792
+ },
793
+
794
+ previous: function () {
795
+ viewDate.subtract(datePickerModes[currentViewMode].navStep, datePickerModes[currentViewMode].navFnc);
796
+ fillDate();
797
+ },
798
+
799
+ pickerSwitch: function () {
800
+ showMode(1);
801
+ },
802
+
803
+ selectMonth: function (e) {
804
+ var month = $(e.target).closest('tbody').find('span').index($(e.target));
805
+ viewDate.month(month);
806
+ if (currentViewMode === minViewModeNumber) {
807
+ setValue(date.clone().year(viewDate.year()).month(viewDate.month()));
808
+ if (!options.inline) {
809
+ hide();
810
+ }
811
+ } else {
812
+ showMode(-1);
813
+ fillDate();
814
+ }
815
+ },
816
+
817
+ selectYear: function (e) {
818
+ var year = parseInt($(e.target).text(), 10) || 0;
819
+ viewDate.year(year);
820
+ if (currentViewMode === minViewModeNumber) {
821
+ setValue(date.clone().year(viewDate.year()));
822
+ if (!options.inline) {
823
+ hide();
824
+ }
825
+ } else {
826
+ showMode(-1);
827
+ fillDate();
828
+ }
829
+ },
830
+
831
+ selectDay: function (e) {
832
+ var day = viewDate.clone();
833
+ if ($(e.target).is('.old')) {
834
+ day.subtract(1, 'M');
835
+ }
836
+ if ($(e.target).is('.new')) {
837
+ day.add(1, 'M');
838
+ }
839
+ setValue(day.date(parseInt($(e.target).text(), 10)));
840
+ if (!hasTime() && !options.keepOpen && !options.inline) {
841
+ hide();
842
+ }
843
+ },
844
+
845
+ incrementHours: function () {
846
+ setValue(date.clone().add(1, 'h'));
847
+ },
848
+
849
+ incrementMinutes: function () {
850
+ setValue(date.clone().add(options.stepping, 'm'));
851
+ },
852
+
853
+ incrementSeconds: function () {
854
+ setValue(date.clone().add(1, 's'));
855
+ },
856
+
857
+ decrementHours: function () {
858
+ setValue(date.clone().subtract(1, 'h'));
859
+ },
860
+
861
+ decrementMinutes: function () {
862
+ setValue(date.clone().subtract(options.stepping, 'm'));
863
+ },
864
+
865
+ decrementSeconds: function () {
866
+ setValue(date.clone().subtract(1, 's'));
867
+ },
868
+
869
+ togglePeriod: function () {
870
+ setValue(date.clone().add((date.hours() >= 12) ? -12 : 12, 'h'));
871
+ },
872
+
873
+ togglePicker: function (e) {
874
+ var $this = $(e.target),
875
+ $parent = $this.closest('ul'),
876
+ expanded = $parent.find('.in'),
877
+ closed = $parent.find('.collapse:not(.in)'),
878
+ collapseData;
879
+
880
+ if (expanded && expanded.length) {
881
+ collapseData = expanded.data('collapse');
882
+ if (collapseData && collapseData.transitioning) {
883
+ return;
884
+ }
885
+ if (expanded.collapse) { // if collapse plugin is available through bootstrap.js then use it
886
+ expanded.collapse('hide');
887
+ closed.collapse('show');
888
+ } else { // otherwise just toggle in class on the two views
889
+ expanded.removeClass('in');
890
+ closed.addClass('in');
891
+ }
892
+ if ($this.is('span')) {
893
+ $this.toggleClass(options.icons.time + ' ' + options.icons.date);
894
+ } else {
895
+ $this.find('span').toggleClass(options.icons.time + ' ' + options.icons.date);
896
+ }
897
+
898
+ // NOTE: uncomment if toggled state will be restored in show()
899
+ //if (component) {
900
+ // component.find('span').toggleClass(options.icons.time + ' ' + options.icons.date);
901
+ //}
902
+ }
903
+ },
904
+
905
+ showPicker: function () {
906
+ widget.find('.timepicker > div:not(.timepicker-picker)').hide();
907
+ widget.find('.timepicker .timepicker-picker').show();
908
+ },
909
+
910
+ showHours: function () {
911
+ widget.find('.timepicker .timepicker-picker').hide();
912
+ widget.find('.timepicker .timepicker-hours').show();
913
+ },
914
+
915
+ showMinutes: function () {
916
+ widget.find('.timepicker .timepicker-picker').hide();
917
+ widget.find('.timepicker .timepicker-minutes').show();
918
+ },
919
+
920
+ showSeconds: function () {
921
+ widget.find('.timepicker .timepicker-picker').hide();
922
+ widget.find('.timepicker .timepicker-seconds').show();
923
+ },
924
+
925
+ selectHour: function (e) {
926
+ var hour = parseInt($(e.target).text(), 10);
927
+
928
+ if (!use24Hours) {
929
+ if (date.hours() >= 12) {
930
+ if (hour !== 12) {
931
+ hour += 12;
932
+ }
933
+ } else {
934
+ if (hour === 12) {
935
+ hour = 0;
936
+ }
937
+ }
938
+ }
939
+ setValue(date.clone().hours(hour));
940
+ actions.showPicker.call(picker);
941
+ },
942
+
943
+ selectMinute: function (e) {
944
+ setValue(date.clone().minutes(parseInt($(e.target).text(), 10)));
945
+ actions.showPicker.call(picker);
946
+ },
947
+
948
+ selectSecond: function (e) {
949
+ setValue(date.clone().seconds(parseInt($(e.target).text(), 10)));
950
+ actions.showPicker.call(picker);
951
+ },
952
+
953
+ clear: clear,
954
+
955
+ today: function () {
956
+ setValue(moment());
957
+ },
958
+
959
+ close: hide
960
+ },
961
+
962
+ doAction = function (e) {
963
+ if ($(e.currentTarget).is('.disabled')) {
964
+ return false;
965
+ }
966
+ actions[$(e.currentTarget).data('action')].apply(picker, arguments);
967
+ return false;
968
+ },
969
+
970
+ show = function () {
971
+ var currentMoment,
972
+ useCurrentGranularity = {
973
+ 'year': function (m) {
974
+ return m.month(0).date(1).hours(0).seconds(0).minutes(0);
975
+ },
976
+ 'month': function (m) {
977
+ return m.date(1).hours(0).seconds(0).minutes(0);
978
+ },
979
+ 'day': function (m) {
980
+ return m.hours(0).seconds(0).minutes(0);
981
+ },
982
+ 'hour': function (m) {
983
+ return m.seconds(0).minutes(0);
984
+ },
985
+ 'minute': function (m) {
986
+ return m.seconds(0);
987
+ }
988
+ };
989
+
990
+ if (input.prop('disabled') || (!options.ignoreReadonly && input.prop('readonly')) || widget) {
991
+ return picker;
992
+ }
993
+ if (options.useCurrent && unset && ((input.is('input') && input.val().trim().length === 0) || options.inline)) {
994
+ currentMoment = moment();
995
+ if (typeof options.useCurrent === 'string') {
996
+ currentMoment = useCurrentGranularity[options.useCurrent](currentMoment);
997
+ }
998
+ setValue(currentMoment);
999
+ }
1000
+
1001
+ widget = getTemplate();
1002
+
1003
+ fillDow();
1004
+ fillMonths();
1005
+
1006
+ widget.find('.timepicker-hours').hide();
1007
+ widget.find('.timepicker-minutes').hide();
1008
+ widget.find('.timepicker-seconds').hide();
1009
+
1010
+ update();
1011
+ showMode();
1012
+
1013
+ $(window).on('resize', place);
1014
+ widget.on('click', '[data-action]', doAction); // this handles clicks on the widget
1015
+ widget.on('mousedown', false);
1016
+
1017
+ if (component && component.hasClass('btn')) {
1018
+ component.toggleClass('active');
1019
+ }
1020
+ widget.show();
1021
+ place();
1022
+
1023
+ if (!input.is(':focus')) {
1024
+ input.focus();
1025
+ }
1026
+
1027
+ notifyEvent({
1028
+ type: 'dp.show'
1029
+ });
1030
+ return picker;
1031
+ },
1032
+
1033
+ toggle = function () {
1034
+ return (widget ? hide() : show());
1035
+ },
1036
+
1037
+ parseInputDate = function (inputDate) {
1038
+ if (moment.isMoment(inputDate) || inputDate instanceof Date) {
1039
+ inputDate = moment(inputDate);
1040
+ } else {
1041
+ inputDate = moment(inputDate, parseFormats, options.useStrict);
1042
+ }
1043
+ inputDate.locale(options.locale);
1044
+ return inputDate;
1045
+ },
1046
+
1047
+ keydown = function (e) {
1048
+ //if (e.keyCode === 27 && widget) { // allow escape to hide picker
1049
+ // hide();
1050
+ // return false;
1051
+ //}
1052
+ //if (e.keyCode === 40 && !widget) { // allow down to show picker
1053
+ // show();
1054
+ // e.preventDefault();
1055
+ //}
1056
+ //return true;
1057
+
1058
+ var handler = null,
1059
+ index,
1060
+ index2,
1061
+ pressedKeys = [],
1062
+ pressedModifiers = {},
1063
+ currentKey = e.which,
1064
+ keyBindKeys,
1065
+ allModifiersPressed,
1066
+ pressed = 'p';
1067
+
1068
+ keyState[currentKey] = pressed;
1069
+
1070
+ for (index in keyState) {
1071
+ if (keyState.hasOwnProperty(index) && keyState[index] === pressed) {
1072
+ pressedKeys.push(index);
1073
+ if (parseInt(index, 10) !== currentKey) {
1074
+ pressedModifiers[index] = true;
1075
+ }
1076
+ }
1077
+ }
1078
+
1079
+ for (index in options.keyBinds) {
1080
+ if (options.keyBinds.hasOwnProperty(index) && typeof (options.keyBinds[index]) === 'function') {
1081
+ keyBindKeys = index.split(' ');
1082
+ if (keyBindKeys.length === pressedKeys.length && keyMap[currentKey] === keyBindKeys[keyBindKeys.length - 1]) {
1083
+ allModifiersPressed = true;
1084
+ for (index2 = keyBindKeys.length - 2; index2 >= 0; index2--) {
1085
+ if (!(keyMap[keyBindKeys[index2]] in pressedModifiers)) {
1086
+ allModifiersPressed = false;
1087
+ break;
1088
+ }
1089
+ }
1090
+ if (allModifiersPressed) {
1091
+ handler = options.keyBinds[index];
1092
+ break;
1093
+ }
1094
+ }
1095
+ }
1096
+ }
1097
+
1098
+ if (handler) {
1099
+ handler.call(picker, widget);
1100
+ e.stopPropagation();
1101
+ e.preventDefault();
1102
+ }
1103
+ },
1104
+
1105
+ keyup = function (e) {
1106
+ keyState[e.which] = 'r';
1107
+ e.stopPropagation();
1108
+ e.preventDefault();
1109
+ },
1110
+
1111
+ change = function (e) {
1112
+ var val = $(e.target).val().trim(),
1113
+ parsedDate = val ? parseInputDate(val) : null;
1114
+ setValue(parsedDate);
1115
+ e.stopImmediatePropagation();
1116
+ return false;
1117
+ },
1118
+
1119
+ attachDatePickerElementEvents = function () {
1120
+ input.on({
1121
+ 'change': change,
1122
+ 'blur': options.debug ? '' : hide,
1123
+ 'keydown': keydown,
1124
+ 'keyup': keyup
1125
+ });
1126
+
1127
+ if (element.is('input')) {
1128
+ input.on({
1129
+ 'focus': show
1130
+ });
1131
+ } else if (component) {
1132
+ component.on('click', toggle);
1133
+ component.on('mousedown', false);
1134
+ }
1135
+ },
1136
+
1137
+ detachDatePickerElementEvents = function () {
1138
+ input.off({
1139
+ 'change': change,
1140
+ 'blur': hide,
1141
+ 'keydown': keydown,
1142
+ 'keyup': keyup
1143
+ });
1144
+
1145
+ if (element.is('input')) {
1146
+ input.off({
1147
+ 'focus': show
1148
+ });
1149
+ } else if (component) {
1150
+ component.off('click', toggle);
1151
+ component.off('mousedown', false);
1152
+ }
1153
+ },
1154
+
1155
+ indexGivenDates = function (givenDatesArray) {
1156
+ // Store given enabledDates and disabledDates as keys.
1157
+ // This way we can check their existence in O(1) time instead of looping through whole array.
1158
+ // (for example: options.enabledDates['2014-02-27'] === true)
1159
+ var givenDatesIndexed = {};
1160
+ $.each(givenDatesArray, function () {
1161
+ var dDate = parseInputDate(this);
1162
+ if (dDate.isValid()) {
1163
+ givenDatesIndexed[dDate.format('YYYY-MM-DD')] = true;
1164
+ }
1165
+ });
1166
+ return (Object.keys(givenDatesIndexed).length) ? givenDatesIndexed : false;
1167
+ },
1168
+
1169
+ initFormatting = function () {
1170
+ var format = options.format || 'L LT';
1171
+
1172
+ actualFormat = format.replace(/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, function (formatInput) {
1173
+ var newinput = date.localeData().longDateFormat(formatInput) || formatInput;
1174
+ return newinput.replace(/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, function (formatInput2) { //temp fix for #740
1175
+ return date.localeData().longDateFormat(formatInput2) || formatInput2;
1176
+ });
1177
+ });
1178
+
1179
+
1180
+ parseFormats = options.extraFormats ? options.extraFormats.slice() : [];
1181
+ if (parseFormats.indexOf(format) < 0 && parseFormats.indexOf(actualFormat) < 0) {
1182
+ parseFormats.push(actualFormat);
1183
+ }
1184
+
1185
+ use24Hours = (actualFormat.toLowerCase().indexOf('a') < 1 && actualFormat.indexOf('h') < 1);
1186
+
1187
+ if (isEnabled('y')) {
1188
+ minViewModeNumber = 2;
1189
+ }
1190
+ if (isEnabled('M')) {
1191
+ minViewModeNumber = 1;
1192
+ }
1193
+ if (isEnabled('d')) {
1194
+ minViewModeNumber = 0;
1195
+ }
1196
+
1197
+ currentViewMode = Math.max(minViewModeNumber, currentViewMode);
1198
+
1199
+ if (!unset) {
1200
+ setValue(date);
1201
+ }
1202
+ };
1203
+
1204
+ /********************************************************************************
1205
+ *
1206
+ * Public API functions
1207
+ * =====================
1208
+ *
1209
+ * Important: Do not expose direct references to private objects or the options
1210
+ * object to the outer world. Always return a clone when returning values or make
1211
+ * a clone when setting a private variable.
1212
+ *
1213
+ ********************************************************************************/
1214
+ picker.destroy = function () {
1215
+ hide();
1216
+ detachDatePickerElementEvents();
1217
+ element.removeData('DateTimePicker');
1218
+ element.removeData('date');
1219
+ };
1220
+
1221
+ picker.toggle = toggle;
1222
+
1223
+ picker.show = show;
1224
+
1225
+ picker.hide = hide;
1226
+
1227
+ picker.disable = function () {
1228
+ hide();
1229
+ if (component && component.hasClass('btn')) {
1230
+ component.addClass('disabled');
1231
+ }
1232
+ input.prop('disabled', true);
1233
+ return picker;
1234
+ };
1235
+
1236
+ picker.enable = function () {
1237
+ if (component && component.hasClass('btn')) {
1238
+ component.removeClass('disabled');
1239
+ }
1240
+ input.prop('disabled', false);
1241
+ return picker;
1242
+ };
1243
+
1244
+ picker.ignoreReadonly = function (ignoreReadonly) {
1245
+ if (arguments.length === 0) {
1246
+ return options.ignoreReadonly;
1247
+ }
1248
+ if (typeof ignoreReadonly !== 'boolean') {
1249
+ throw new TypeError('ignoreReadonly () expects a boolean parameter');
1250
+ }
1251
+ options.ignoreReadonly = ignoreReadonly;
1252
+ return picker;
1253
+ };
1254
+
1255
+ picker.options = function (newOptions) {
1256
+ if (arguments.length === 0) {
1257
+ return $.extend(true, {}, options);
1258
+ }
1259
+
1260
+ if (!(newOptions instanceof Object)) {
1261
+ throw new TypeError('options() options parameter should be an object');
1262
+ }
1263
+ $.extend(true, options, newOptions);
1264
+ $.each(options, function (key, value) {
1265
+ if (picker[key] !== undefined) {
1266
+ picker[key](value);
1267
+ } else {
1268
+ throw new TypeError('option ' + key + ' is not recognized!');
1269
+ }
1270
+ });
1271
+ return picker;
1272
+ };
1273
+
1274
+ picker.date = function (newDate) {
1275
+ if (arguments.length === 0) {
1276
+ if (unset) {
1277
+ return null;
1278
+ }
1279
+ return date.clone();
1280
+ }
1281
+
1282
+ if (newDate !== null && typeof newDate !== 'string' && !moment.isMoment(newDate) && !(newDate instanceof Date)) {
1283
+ throw new TypeError('date() parameter must be one of [null, string, moment or Date]');
1284
+ }
1285
+
1286
+ setValue(newDate === null ? null : parseInputDate(newDate));
1287
+ return picker;
1288
+ };
1289
+
1290
+ picker.format = function (newFormat) {
1291
+ if (arguments.length === 0) {
1292
+ return options.format;
1293
+ }
1294
+
1295
+ if ((typeof newFormat !== 'string') && ((typeof newFormat !== 'boolean') || (newFormat !== false))) {
1296
+ throw new TypeError('format() expects a sting or boolean:false parameter ' + newFormat);
1297
+ }
1298
+
1299
+ options.format = newFormat;
1300
+ if (actualFormat) {
1301
+ initFormatting(); // reinit formatting
1302
+ }
1303
+ return picker;
1304
+ };
1305
+
1306
+ picker.dayViewHeaderFormat = function (newFormat) {
1307
+ if (arguments.length === 0) {
1308
+ return options.dayViewHeaderFormat;
1309
+ }
1310
+
1311
+ if (typeof newFormat !== 'string') {
1312
+ throw new TypeError('dayViewHeaderFormat() expects a string parameter');
1313
+ }
1314
+
1315
+ options.dayViewHeaderFormat = newFormat;
1316
+ return picker;
1317
+ };
1318
+
1319
+ picker.extraFormats = function (formats) {
1320
+ if (arguments.length === 0) {
1321
+ return options.extraFormats;
1322
+ }
1323
+
1324
+ if (formats !== false && !(formats instanceof Array)) {
1325
+ throw new TypeError('extraFormats() expects an array or false parameter');
1326
+ }
1327
+
1328
+ options.extraFormats = formats;
1329
+ if (parseFormats) {
1330
+ initFormatting(); // reinit formatting
1331
+ }
1332
+ return picker;
1333
+ };
1334
+
1335
+ picker.disabledDates = function (dates) {
1336
+ if (arguments.length === 0) {
1337
+ return (options.disabledDates ? $.extend({}, options.disabledDates) : options.disabledDates);
1338
+ }
1339
+
1340
+ if (!dates) {
1341
+ options.disabledDates = false;
1342
+ update();
1343
+ return picker;
1344
+ }
1345
+ if (!(dates instanceof Array)) {
1346
+ throw new TypeError('disabledDates() expects an array parameter');
1347
+ }
1348
+ options.disabledDates = indexGivenDates(dates);
1349
+ options.enabledDates = false;
1350
+ update();
1351
+ return picker;
1352
+ };
1353
+
1354
+ picker.enabledDates = function (dates) {
1355
+ if (arguments.length === 0) {
1356
+ return (options.enabledDates ? $.extend({}, options.enabledDates) : options.enabledDates);
1357
+ }
1358
+
1359
+ if (!dates) {
1360
+ options.enabledDates = false;
1361
+ update();
1362
+ return picker;
1363
+ }
1364
+ if (!(dates instanceof Array)) {
1365
+ throw new TypeError('enabledDates() expects an array parameter');
1366
+ }
1367
+ options.enabledDates = indexGivenDates(dates);
1368
+ options.disabledDates = false;
1369
+ update();
1370
+ return picker;
1371
+ };
1372
+
1373
+ picker.daysOfWeekDisabled = function (daysOfWeekDisabled) {
1374
+ if (arguments.length === 0) {
1375
+ return options.daysOfWeekDisabled.splice(0);
1376
+ }
1377
+
1378
+ if (!(daysOfWeekDisabled instanceof Array)) {
1379
+ throw new TypeError('daysOfWeekDisabled() expects an array parameter');
1380
+ }
1381
+ options.daysOfWeekDisabled = daysOfWeekDisabled.reduce(function (previousValue, currentValue) {
1382
+ currentValue = parseInt(currentValue, 10);
1383
+ if (currentValue > 6 || currentValue < 0 || isNaN(currentValue)) {
1384
+ return previousValue;
1385
+ }
1386
+ if (previousValue.indexOf(currentValue) === -1) {
1387
+ previousValue.push(currentValue);
1388
+ }
1389
+ return previousValue;
1390
+ }, []).sort();
1391
+ update();
1392
+ return picker;
1393
+ };
1394
+
1395
+ picker.maxDate = function (maxDate) {
1396
+ if (arguments.length === 0) {
1397
+ return options.maxDate ? options.maxDate.clone() : options.maxDate;
1398
+ }
1399
+
1400
+ if ((typeof maxDate === 'boolean') && maxDate === false) {
1401
+ options.maxDate = false;
1402
+ update();
1403
+ return picker;
1404
+ }
1405
+
1406
+ if (typeof maxDate === 'string') {
1407
+ if (maxDate === 'now' || maxDate === 'moment') {
1408
+ maxDate = moment();
1409
+ }
1410
+ }
1411
+
1412
+ var parsedDate = parseInputDate(maxDate);
1413
+
1414
+ if (!parsedDate.isValid()) {
1415
+ throw new TypeError('maxDate() Could not parse date parameter: ' + maxDate);
1416
+ }
1417
+ if (options.minDate && parsedDate.isBefore(options.minDate)) {
1418
+ throw new TypeError('maxDate() date parameter is before options.minDate: ' + parsedDate.format(actualFormat));
1419
+ }
1420
+ options.maxDate = parsedDate;
1421
+ if (options.maxDate.isBefore(maxDate)) {
1422
+ setValue(options.maxDate);
1423
+ }
1424
+ if (viewDate.isAfter(parsedDate)) {
1425
+ viewDate = parsedDate.clone();
1426
+ }
1427
+ update();
1428
+ return picker;
1429
+ };
1430
+
1431
+ picker.minDate = function (minDate) {
1432
+ if (arguments.length === 0) {
1433
+ return options.minDate ? options.minDate.clone() : options.minDate;
1434
+ }
1435
+
1436
+ if ((typeof minDate === 'boolean') && minDate === false) {
1437
+ options.minDate = false;
1438
+ update();
1439
+ return picker;
1440
+ }
1441
+
1442
+ if (typeof minDate === 'string') {
1443
+ if (minDate === 'now' || minDate === 'moment') {
1444
+ minDate = moment();
1445
+ }
1446
+ }
1447
+
1448
+ var parsedDate = parseInputDate(minDate);
1449
+
1450
+ if (!parsedDate.isValid()) {
1451
+ throw new TypeError('minDate() Could not parse date parameter: ' + minDate);
1452
+ }
1453
+ if (options.maxDate && parsedDate.isAfter(options.maxDate)) {
1454
+ throw new TypeError('minDate() date parameter is after options.maxDate: ' + parsedDate.format(actualFormat));
1455
+ }
1456
+ options.minDate = parsedDate;
1457
+ if (options.minDate.isAfter(minDate)) {
1458
+ setValue(options.minDate);
1459
+ }
1460
+ if (viewDate.isBefore(parsedDate)) {
1461
+ viewDate = parsedDate.clone();
1462
+ }
1463
+ update();
1464
+ return picker;
1465
+ };
1466
+
1467
+ picker.defaultDate = function (defaultDate) {
1468
+ if (arguments.length === 0) {
1469
+ return options.defaultDate ? options.defaultDate.clone() : options.defaultDate;
1470
+ }
1471
+ if (!defaultDate) {
1472
+ options.defaultDate = false;
1473
+ return picker;
1474
+ }
1475
+
1476
+ if (typeof defaultDate === 'string') {
1477
+ if (defaultDate === 'now' || defaultDate === 'moment') {
1478
+ defaultDate = moment();
1479
+ }
1480
+ }
1481
+
1482
+ var parsedDate = parseInputDate(defaultDate);
1483
+ if (!parsedDate.isValid()) {
1484
+ throw new TypeError('defaultDate() Could not parse date parameter: ' + defaultDate);
1485
+ }
1486
+ if (!isValid(parsedDate)) {
1487
+ throw new TypeError('defaultDate() date passed is invalid according to component setup validations');
1488
+ }
1489
+
1490
+ options.defaultDate = parsedDate;
1491
+
1492
+ if (options.defaultDate && input.val().trim() === '' && input.attr('placeholder') === undefined) {
1493
+ setValue(options.defaultDate);
1494
+ }
1495
+ return picker;
1496
+ };
1497
+
1498
+ picker.locale = function (locale) {
1499
+ if (arguments.length === 0) {
1500
+ return options.locale;
1501
+ }
1502
+
1503
+ if (!moment.localeData(locale)) {
1504
+ throw new TypeError('locale() locale ' + locale + ' is not loaded from moment locales!');
1505
+ }
1506
+
1507
+ options.locale = locale;
1508
+ date.locale(options.locale);
1509
+ viewDate.locale(options.locale);
1510
+
1511
+ if (actualFormat) {
1512
+ initFormatting(); // reinit formatting
1513
+ }
1514
+ if (widget) {
1515
+ hide();
1516
+ show();
1517
+ }
1518
+ return picker;
1519
+ };
1520
+
1521
+ picker.stepping = function (stepping) {
1522
+ if (arguments.length === 0) {
1523
+ return options.stepping;
1524
+ }
1525
+
1526
+ stepping = parseInt(stepping, 10);
1527
+ if (isNaN(stepping) || stepping < 1) {
1528
+ stepping = 1;
1529
+ }
1530
+ options.stepping = stepping;
1531
+ return picker;
1532
+ };
1533
+
1534
+ picker.useCurrent = function (useCurrent) {
1535
+ var useCurrentOptions = ['year', 'month', 'day', 'hour', 'minute'];
1536
+ if (arguments.length === 0) {
1537
+ return options.useCurrent;
1538
+ }
1539
+
1540
+ if ((typeof useCurrent !== 'boolean') && (typeof useCurrent !== 'string')) {
1541
+ throw new TypeError('useCurrent() expects a boolean or string parameter');
1542
+ }
1543
+ if (typeof useCurrent === 'string' && useCurrentOptions.indexOf(useCurrent.toLowerCase()) === -1) {
1544
+ throw new TypeError('useCurrent() expects a string parameter of ' + useCurrentOptions.join(', '));
1545
+ }
1546
+ options.useCurrent = useCurrent;
1547
+ return picker;
1548
+ };
1549
+
1550
+ picker.collapse = function (collapse) {
1551
+ if (arguments.length === 0) {
1552
+ return options.collapse;
1553
+ }
1554
+
1555
+ if (typeof collapse !== 'boolean') {
1556
+ throw new TypeError('collapse() expects a boolean parameter');
1557
+ }
1558
+ if (options.collapse === collapse) {
1559
+ return picker;
1560
+ }
1561
+ options.collapse = collapse;
1562
+ if (widget) {
1563
+ hide();
1564
+ show();
1565
+ }
1566
+ return picker;
1567
+ };
1568
+
1569
+ picker.icons = function (icons) {
1570
+ if (arguments.length === 0) {
1571
+ return $.extend({}, options.icons);
1572
+ }
1573
+
1574
+ if (!(icons instanceof Object)) {
1575
+ throw new TypeError('icons() expects parameter to be an Object');
1576
+ }
1577
+ $.extend(options.icons, icons);
1578
+ if (widget) {
1579
+ hide();
1580
+ show();
1581
+ }
1582
+ return picker;
1583
+ };
1584
+
1585
+ picker.useStrict = function (useStrict) {
1586
+ if (arguments.length === 0) {
1587
+ return options.useStrict;
1588
+ }
1589
+
1590
+ if (typeof useStrict !== 'boolean') {
1591
+ throw new TypeError('useStrict() expects a boolean parameter');
1592
+ }
1593
+ options.useStrict = useStrict;
1594
+ return picker;
1595
+ };
1596
+
1597
+ picker.sideBySide = function (sideBySide) {
1598
+ if (arguments.length === 0) {
1599
+ return options.sideBySide;
1600
+ }
1601
+
1602
+ if (typeof sideBySide !== 'boolean') {
1603
+ throw new TypeError('sideBySide() expects a boolean parameter');
1604
+ }
1605
+ options.sideBySide = sideBySide;
1606
+ if (widget) {
1607
+ hide();
1608
+ show();
1609
+ }
1610
+ return picker;
1611
+ };
1612
+
1613
+ picker.viewMode = function (viewMode) {
1614
+ if (arguments.length === 0) {
1615
+ return options.viewMode;
1616
+ }
1617
+
1618
+ if (typeof viewMode !== 'string') {
1619
+ throw new TypeError('viewMode() expects a string parameter');
1620
+ }
1621
+
1622
+ if (viewModes.indexOf(viewMode) === -1) {
1623
+ throw new TypeError('viewMode() parameter must be one of (' + viewModes.join(', ') + ') value');
1624
+ }
1625
+
1626
+ options.viewMode = viewMode;
1627
+ currentViewMode = Math.max(viewModes.indexOf(viewMode), minViewModeNumber);
1628
+
1629
+ showMode();
1630
+ return picker;
1631
+ };
1632
+
1633
+ picker.toolbarPlacement = function (toolbarPlacement) {
1634
+ if (arguments.length === 0) {
1635
+ return options.toolbarPlacement;
1636
+ }
1637
+
1638
+ if (typeof toolbarPlacement !== 'string') {
1639
+ throw new TypeError('toolbarPlacement() expects a string parameter');
1640
+ }
1641
+ if (toolbarPlacements.indexOf(toolbarPlacement) === -1) {
1642
+ throw new TypeError('toolbarPlacement() parameter must be one of (' + toolbarPlacements.join(', ') + ') value');
1643
+ }
1644
+ options.toolbarPlacement = toolbarPlacement;
1645
+
1646
+ if (widget) {
1647
+ hide();
1648
+ show();
1649
+ }
1650
+ return picker;
1651
+ };
1652
+
1653
+ picker.widgetPositioning = function (widgetPositioning) {
1654
+ if (arguments.length === 0) {
1655
+ return $.extend({}, options.widgetPositioning);
1656
+ }
1657
+
1658
+ if (({}).toString.call(widgetPositioning) !== '[object Object]') {
1659
+ throw new TypeError('widgetPositioning() expects an object variable');
1660
+ }
1661
+ if (widgetPositioning.horizontal) {
1662
+ if (typeof widgetPositioning.horizontal !== 'string') {
1663
+ throw new TypeError('widgetPositioning() horizontal variable must be a string');
1664
+ }
1665
+ widgetPositioning.horizontal = widgetPositioning.horizontal.toLowerCase();
1666
+ if (horizontalModes.indexOf(widgetPositioning.horizontal) === -1) {
1667
+ throw new TypeError('widgetPositioning() expects horizontal parameter to be one of (' + horizontalModes.join(', ') + ')');
1668
+ }
1669
+ options.widgetPositioning.horizontal = widgetPositioning.horizontal;
1670
+ }
1671
+ if (widgetPositioning.vertical) {
1672
+ if (typeof widgetPositioning.vertical !== 'string') {
1673
+ throw new TypeError('widgetPositioning() vertical variable must be a string');
1674
+ }
1675
+ widgetPositioning.vertical = widgetPositioning.vertical.toLowerCase();
1676
+ if (verticalModes.indexOf(widgetPositioning.vertical) === -1) {
1677
+ throw new TypeError('widgetPositioning() expects vertical parameter to be one of (' + verticalModes.join(', ') + ')');
1678
+ }
1679
+ options.widgetPositioning.vertical = widgetPositioning.vertical;
1680
+ }
1681
+ update();
1682
+ return picker;
1683
+ };
1684
+
1685
+ picker.calendarWeeks = function (calendarWeeks) {
1686
+ if (arguments.length === 0) {
1687
+ return options.calendarWeeks;
1688
+ }
1689
+
1690
+ if (typeof calendarWeeks !== 'boolean') {
1691
+ throw new TypeError('calendarWeeks() expects parameter to be a boolean value');
1692
+ }
1693
+
1694
+ options.calendarWeeks = calendarWeeks;
1695
+ update();
1696
+ return picker;
1697
+ };
1698
+
1699
+ picker.showTodayButton = function (showTodayButton) {
1700
+ if (arguments.length === 0) {
1701
+ return options.showTodayButton;
1702
+ }
1703
+
1704
+ if (typeof showTodayButton !== 'boolean') {
1705
+ throw new TypeError('showTodayButton() expects a boolean parameter');
1706
+ }
1707
+
1708
+ options.showTodayButton = showTodayButton;
1709
+ if (widget) {
1710
+ hide();
1711
+ show();
1712
+ }
1713
+ return picker;
1714
+ };
1715
+
1716
+ picker.showClear = function (showClear) {
1717
+ if (arguments.length === 0) {
1718
+ return options.showClear;
1719
+ }
1720
+
1721
+ if (typeof showClear !== 'boolean') {
1722
+ throw new TypeError('showClear() expects a boolean parameter');
1723
+ }
1724
+
1725
+ options.showClear = showClear;
1726
+ if (widget) {
1727
+ hide();
1728
+ show();
1729
+ }
1730
+ return picker;
1731
+ };
1732
+
1733
+ picker.widgetParent = function (widgetParent) {
1734
+ if (arguments.length === 0) {
1735
+ return options.widgetParent;
1736
+ }
1737
+
1738
+ if (typeof widgetParent === 'string') {
1739
+ widgetParent = $(widgetParent);
1740
+ }
1741
+
1742
+ if (widgetParent !== null && (typeof widgetParent !== 'string' && !(widgetParent instanceof $))) {
1743
+ throw new TypeError('widgetParent() expects a string or a jQuery object parameter');
1744
+ }
1745
+
1746
+ options.widgetParent = widgetParent;
1747
+ if (widget) {
1748
+ hide();
1749
+ show();
1750
+ }
1751
+ return picker;
1752
+ };
1753
+
1754
+ picker.keepOpen = function (keepOpen) {
1755
+ if (arguments.length === 0) {
1756
+ return options.keepOpen;
1757
+ }
1758
+
1759
+ if (typeof keepOpen !== 'boolean') {
1760
+ throw new TypeError('keepOpen() expects a boolean parameter');
1761
+ }
1762
+
1763
+ options.keepOpen = keepOpen;
1764
+ return picker;
1765
+ };
1766
+
1767
+ picker.inline = function (inline) {
1768
+ if (arguments.length === 0) {
1769
+ return options.inline;
1770
+ }
1771
+
1772
+ if (typeof inline !== 'boolean') {
1773
+ throw new TypeError('inline() expects a boolean parameter');
1774
+ }
1775
+
1776
+ options.inline = inline;
1777
+ return picker;
1778
+ };
1779
+
1780
+ picker.clear = function () {
1781
+ clear();
1782
+ return picker;
1783
+ };
1784
+
1785
+ picker.keyBinds = function (keyBinds) {
1786
+ options.keyBinds = keyBinds;
1787
+ return picker;
1788
+ };
1789
+
1790
+ picker.debug = function (debug) {
1791
+ if (typeof debug !== 'boolean') {
1792
+ throw new TypeError('debug() expects a boolean parameter');
1793
+ }
1794
+
1795
+ options.debug = debug;
1796
+ return picker;
1797
+ };
1798
+
1799
+ picker.showClose = function (showClose) {
1800
+ if (arguments.length === 0) {
1801
+ return options.showClose;
1802
+ }
1803
+
1804
+ if (typeof showClose !== 'boolean') {
1805
+ throw new TypeError('showClose() expects a boolean parameter');
1806
+ }
1807
+
1808
+ options.showClose = showClose;
1809
+ return picker;
1810
+ };
1811
+
1812
+ picker.keepInvalid = function (keepInvalid) {
1813
+ if (arguments.length === 0) {
1814
+ return options.keepInvalid;
1815
+ }
1816
+
1817
+ if (typeof keepInvalid !== 'boolean') {
1818
+ throw new TypeError('keepInvalid() expects a boolean parameter');
1819
+ }
1820
+ options.keepInvalid = keepInvalid;
1821
+ return picker;
1822
+ };
1823
+
1824
+ picker.datepickerInput = function (datepickerInput) {
1825
+ if (arguments.length === 0) {
1826
+ return options.datepickerInput;
1827
+ }
1828
+
1829
+ if (typeof datepickerInput !== 'string') {
1830
+ throw new TypeError('datepickerInput() expects a string parameter');
1831
+ }
1832
+
1833
+ options.datepickerInput = datepickerInput;
1834
+ return picker;
1835
+ };
1836
+
1837
+ // initializing element and component attributes
1838
+ if (element.is('input')) {
1839
+ input = element;
1840
+ } else {
1841
+ input = element.find(options.datepickerInput);
1842
+ if (input.size() === 0) {
1843
+ input = element.find('input');
1844
+ } else if (!input.is('input')) {
1845
+ throw new Error('CSS class "' + options.datepickerInput + '" cannot be applied to non input element');
1846
+ }
1847
+ }
1848
+
1849
+ if (element.hasClass('input-group')) {
1850
+ // in case there is more then one 'input-group-addon' Issue #48
1851
+ if (element.find('.datepickerbutton').size() === 0) {
1852
+ component = element.find('[class^="input-group-"]');
1853
+ } else {
1854
+ component = element.find('.datepickerbutton');
1855
+ }
1856
+ }
1857
+
1858
+ if (!options.inline && !input.is('input')) {
1859
+ throw new Error('Could not initialize DateTimePicker without an input element');
1860
+ }
1861
+
1862
+ $.extend(true, options, dataToOptions());
1863
+
1864
+ picker.options(options);
1865
+
1866
+ initFormatting();
1867
+
1868
+ attachDatePickerElementEvents();
1869
+
1870
+ if (input.prop('disabled')) {
1871
+ picker.disable();
1872
+ }
1873
+ if (input.is('input') && input.val().trim().length !== 0) {
1874
+ setValue(parseInputDate(input.val().trim()));
1875
+ }
1876
+ else if (options.defaultDate && input.attr('placeholder') === undefined) {
1877
+ setValue(options.defaultDate);
1878
+ }
1879
+ if (options.inline) {
1880
+ show();
1881
+ }
1882
+ return picker;
1883
+ };
1884
+
1885
+ /********************************************************************************
1886
+ *
1887
+ * jQuery plugin constructor and defaults object
1888
+ *
1889
+ ********************************************************************************/
1890
+
1891
+ $.fn.datetimepicker = function (options) {
1892
+ return this.each(function () {
1893
+ var $this = $(this);
1894
+ if (!$this.data('DateTimePicker')) {
1895
+ // create a private copy of the defaults object
1896
+ options = $.extend(true, {}, $.fn.datetimepicker.defaults, options);
1897
+ $this.data('DateTimePicker', dateTimePicker($this, options));
1898
+ }
1899
+ });
1900
+ };
1901
+
1902
+ $.fn.datetimepicker.defaults = {
1903
+ format: false,
1904
+ dayViewHeaderFormat: 'MMMM YYYY',
1905
+ extraFormats: false,
1906
+ stepping: 1,
1907
+ minDate: false,
1908
+ maxDate: false,
1909
+ useCurrent: true,
1910
+ collapse: true,
1911
+ locale: moment.locale(),
1912
+ defaultDate: false,
1913
+ disabledDates: false,
1914
+ enabledDates: false,
1915
+ icons: {
1916
+ time: 'glyphicon glyphicon-time',
1917
+ date: 'glyphicon glyphicon-calendar',
1918
+ up: 'glyphicon glyphicon-chevron-up',
1919
+ down: 'glyphicon glyphicon-chevron-down',
1920
+ previous: 'glyphicon glyphicon-chevron-left',
1921
+ next: 'glyphicon glyphicon-chevron-right',
1922
+ today: 'glyphicon glyphicon-screenshot',
1923
+ clear: 'glyphicon glyphicon-trash',
1924
+ close: 'glyphicon glyphicon-remove'
1925
+ },
1926
+ useStrict: false,
1927
+ sideBySide: false,
1928
+ daysOfWeekDisabled: [],
1929
+ calendarWeeks: false,
1930
+ viewMode: 'days',
1931
+ toolbarPlacement: 'default',
1932
+ showTodayButton: false,
1933
+ showClear: false,
1934
+ showClose: false,
1935
+ widgetPositioning: {
1936
+ horizontal: 'auto',
1937
+ vertical: 'auto'
1938
+ },
1939
+ widgetParent: null,
1940
+ ignoreReadonly: false,
1941
+ keepOpen: false,
1942
+ inline: false,
1943
+ keepInvalid: false,
1944
+ datepickerInput: '.datepickerinput',
1945
+ keyBinds: {
1946
+ up: function (widget) {
1947
+ if (!widget) {
1948
+ return;
1949
+ }
1950
+ var d = this.date() || moment();
1951
+ if (widget.find('.datepicker').is(':visible')) {
1952
+ this.date(d.clone().subtract(7, 'd'));
1953
+ } else {
1954
+ this.date(d.clone().add(1, 'm'));
1955
+ }
1956
+ },
1957
+ down: function (widget) {
1958
+ if (!widget) {
1959
+ this.show();
1960
+ return;
1961
+ }
1962
+ var d = this.date() || moment();
1963
+ if (widget.find('.datepicker').is(':visible')) {
1964
+ this.date(d.clone().add(7, 'd'));
1965
+ } else {
1966
+ this.date(d.clone().subtract(1, 'm'));
1967
+ }
1968
+ },
1969
+ 'control up': function (widget) {
1970
+ if (!widget) {
1971
+ return;
1972
+ }
1973
+ var d = this.date() || moment();
1974
+ if (widget.find('.datepicker').is(':visible')) {
1975
+ this.date(d.clone().subtract(1, 'y'));
1976
+ } else {
1977
+ this.date(d.clone().add(1, 'h'));
1978
+ }
1979
+ },
1980
+ 'control down': function (widget) {
1981
+ if (!widget) {
1982
+ return;
1983
+ }
1984
+ var d = this.date() || moment();
1985
+ if (widget.find('.datepicker').is(':visible')) {
1986
+ this.date(d.clone().add(1, 'y'));
1987
+ } else {
1988
+ this.date(d.clone().subtract(1, 'h'));
1989
+ }
1990
+ },
1991
+ left: function (widget) {
1992
+ if (!widget) {
1993
+ return;
1994
+ }
1995
+ var d = this.date() || moment();
1996
+ if (widget.find('.datepicker').is(':visible')) {
1997
+ this.date(d.clone().subtract(1, 'd'));
1998
+ }
1999
+ },
2000
+ right: function (widget) {
2001
+ if (!widget) {
2002
+ return;
2003
+ }
2004
+ var d = this.date() || moment();
2005
+ if (widget.find('.datepicker').is(':visible')) {
2006
+ this.date(d.clone().add(1, 'd'));
2007
+ }
2008
+ },
2009
+ pageUp: function (widget) {
2010
+ if (!widget) {
2011
+ return;
2012
+ }
2013
+ var d = this.date() || moment();
2014
+ if (widget.find('.datepicker').is(':visible')) {
2015
+ this.date(d.clone().subtract(1, 'M'));
2016
+ }
2017
+ },
2018
+ pageDown: function (widget) {
2019
+ if (!widget) {
2020
+ return;
2021
+ }
2022
+ var d = this.date() || moment();
2023
+ if (widget.find('.datepicker').is(':visible')) {
2024
+ this.date(d.clone().add(1, 'M'));
2025
+ }
2026
+ },
2027
+ enter: function () {
2028
+ this.hide();
2029
+ },
2030
+ escape: function () {
2031
+ this.hide();
2032
+ },
2033
+ //tab: function (widget) { //this break the flow of the form. disabling for now
2034
+ // var toggle = widget.find('.picker-switch a[data-action="togglePicker"]');
2035
+ // if(toggle.length > 0) toggle.click();
2036
+ //},
2037
+ 'control space': function (widget) {
2038
+ if (widget.find('.timepicker').is(':visible')) {
2039
+ widget.find('.btn[data-action="togglePeriod"]').click();
2040
+ }
2041
+ },
2042
+ t: function () {
2043
+ this.date(moment());
2044
+ },
2045
+ 'delete': function () {
2046
+ this.clear();
2047
+ }
2048
+ },
2049
+ debug: false
2050
+ };
2051
+ }));