angular-gem 1.1.4 → 1.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (619) hide show
  1. data/CHANGELOG.md +4 -0
  2. data/README.md +4 -0
  3. data/Rakefile +2 -83
  4. data/lib/angular-gem/version.rb +1 -1
  5. data/lib/tasks/copy.rake +76 -0
  6. data/lib/tasks/tag.rake +42 -0
  7. data/test/dummy/log/test.log +1 -0
  8. data/test/dummy/tmp/cache/assets/D65/250/sprockets%2F54a960d46bb0b354e8bd46fa03f5e0e4 +0 -0
  9. data/test/dummy/tmp/cache/assets/D6A/FB0/sprockets%2F92721e9941b77adcfdfba3d060622de2 +0 -0
  10. data/test/dummy/tmp/cache/assets/E07/040/sprockets%2Ff55b8ce9d0f28ce36b768a1c7aeb2ef3 +0 -0
  11. data/vendor/assets/javascripts/1.0.7/angular-1.0.7.js +14847 -0
  12. data/vendor/assets/javascripts/1.0.7/angular-bootstrap-1.0.7.js +175 -0
  13. data/vendor/assets/javascripts/1.0.7/angular-bootstrap-prettify-1.0.7.js +1835 -0
  14. data/vendor/assets/javascripts/1.0.7/angular-cookies-1.0.7.js +185 -0
  15. data/vendor/assets/javascripts/1.0.7/angular-loader-1.0.7.js +277 -0
  16. data/vendor/assets/javascripts/1.0.7/angular-mocks-1.0.7.js +1788 -0
  17. data/vendor/assets/javascripts/1.0.7/angular-resource-1.0.7.js +457 -0
  18. data/vendor/assets/javascripts/1.0.7/angular-sanitize-1.0.7.js +537 -0
  19. data/vendor/assets/javascripts/1.0.7/angular-scenario-1.0.7.js +26310 -0
  20. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_af-na.js +98 -0
  21. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_af-za.js +98 -0
  22. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_af.js +98 -0
  23. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_am-et.js +98 -0
  24. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_am.js +98 -0
  25. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-001.js +98 -0
  26. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-ae.js +98 -0
  27. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-bh.js +98 -0
  28. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-dz.js +98 -0
  29. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-eg.js +98 -0
  30. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-iq.js +98 -0
  31. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-jo.js +98 -0
  32. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-kw.js +98 -0
  33. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-lb.js +98 -0
  34. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-ly.js +98 -0
  35. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-ma.js +98 -0
  36. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-om.js +98 -0
  37. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-qa.js +98 -0
  38. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-sa.js +98 -0
  39. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-sd.js +98 -0
  40. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-sy.js +98 -0
  41. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-tn.js +98 -0
  42. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar-ye.js +98 -0
  43. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ar.js +98 -0
  44. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_bg-bg.js +98 -0
  45. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_bg.js +98 -0
  46. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_bn-bd.js +98 -0
  47. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_bn-in.js +98 -0
  48. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_bn.js +98 -0
  49. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ca-ad.js +98 -0
  50. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ca-es.js +98 -0
  51. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ca.js +98 -0
  52. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_chr.js +4 -0
  53. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_cs-cz.js +98 -0
  54. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_cs.js +98 -0
  55. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_cy.js +4 -0
  56. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_da-dk.js +98 -0
  57. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_da.js +98 -0
  58. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_de-at.js +98 -0
  59. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_de-be.js +98 -0
  60. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_de-ch.js +98 -0
  61. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_de-de.js +98 -0
  62. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_de-li.js +98 -0
  63. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_de-lu.js +98 -0
  64. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_de.js +98 -0
  65. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_el-cy.js +98 -0
  66. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_el-gr.js +98 -0
  67. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_el-polyton.js +4 -0
  68. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_el.js +98 -0
  69. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-as.js +98 -0
  70. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-au.js +98 -0
  71. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-bb.js +98 -0
  72. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-be.js +98 -0
  73. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-bm.js +98 -0
  74. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-bw.js +98 -0
  75. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-bz.js +98 -0
  76. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-ca.js +98 -0
  77. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-dsrt-us.js +98 -0
  78. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-dsrt.js +98 -0
  79. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-fm.js +98 -0
  80. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-gb.js +98 -0
  81. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-gu.js +98 -0
  82. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-gy.js +98 -0
  83. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-hk.js +98 -0
  84. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-ie.js +98 -0
  85. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-in.js +98 -0
  86. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-iso.js +98 -0
  87. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-jm.js +98 -0
  88. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-mh.js +98 -0
  89. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-mp.js +98 -0
  90. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-mt.js +98 -0
  91. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-mu.js +98 -0
  92. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-na.js +98 -0
  93. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-nz.js +98 -0
  94. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-ph.js +98 -0
  95. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-pk.js +98 -0
  96. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-pr.js +98 -0
  97. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-pw.js +98 -0
  98. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-sg.js +98 -0
  99. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-tc.js +98 -0
  100. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-tt.js +98 -0
  101. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-um.js +98 -0
  102. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-us.js +98 -0
  103. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-vg.js +98 -0
  104. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-vi.js +98 -0
  105. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-za.js +98 -0
  106. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-zw.js +98 -0
  107. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en-zz.js +4 -0
  108. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_en.js +98 -0
  109. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-419.js +98 -0
  110. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-ar.js +98 -0
  111. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-bo.js +98 -0
  112. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-cl.js +98 -0
  113. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-co.js +98 -0
  114. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-cr.js +98 -0
  115. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-do.js +98 -0
  116. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-ea.js +98 -0
  117. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-ec.js +98 -0
  118. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-es.js +98 -0
  119. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-gq.js +98 -0
  120. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-gt.js +98 -0
  121. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-hn.js +98 -0
  122. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-ic.js +98 -0
  123. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-mx.js +98 -0
  124. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-ni.js +98 -0
  125. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-pa.js +98 -0
  126. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-pe.js +98 -0
  127. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-pr.js +98 -0
  128. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-py.js +98 -0
  129. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-sv.js +98 -0
  130. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-us.js +98 -0
  131. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-uy.js +98 -0
  132. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es-ve.js +98 -0
  133. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_es.js +98 -0
  134. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_et-ee.js +98 -0
  135. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_et.js +98 -0
  136. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_eu-es.js +98 -0
  137. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_eu.js +98 -0
  138. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fa-af.js +98 -0
  139. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fa-ir.js +98 -0
  140. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fa.js +98 -0
  141. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fi-fi.js +98 -0
  142. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fi.js +98 -0
  143. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fil-ph.js +98 -0
  144. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fil.js +98 -0
  145. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-be.js +98 -0
  146. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-bf.js +98 -0
  147. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-bi.js +98 -0
  148. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-bj.js +98 -0
  149. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-bl.js +98 -0
  150. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-ca.js +98 -0
  151. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-cd.js +98 -0
  152. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-cf.js +98 -0
  153. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-cg.js +98 -0
  154. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-ch.js +98 -0
  155. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-ci.js +98 -0
  156. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-cm.js +98 -0
  157. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-dj.js +98 -0
  158. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-fr.js +98 -0
  159. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-ga.js +98 -0
  160. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-gf.js +98 -0
  161. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-gn.js +98 -0
  162. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-gp.js +98 -0
  163. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-gq.js +98 -0
  164. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-km.js +98 -0
  165. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-lu.js +98 -0
  166. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-mc.js +98 -0
  167. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-mf.js +98 -0
  168. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-mg.js +98 -0
  169. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-ml.js +98 -0
  170. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-mq.js +98 -0
  171. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-ne.js +98 -0
  172. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-re.js +98 -0
  173. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-rw.js +98 -0
  174. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-sn.js +98 -0
  175. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-td.js +98 -0
  176. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-tg.js +98 -0
  177. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr-yt.js +98 -0
  178. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_fr.js +98 -0
  179. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_gl-es.js +98 -0
  180. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_gl.js +98 -0
  181. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_gsw-ch.js +98 -0
  182. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_gsw.js +98 -0
  183. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_gu-in.js +98 -0
  184. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_gu.js +98 -0
  185. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_haw.js +4 -0
  186. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_he-il.js +98 -0
  187. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_he.js +98 -0
  188. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_hi-in.js +98 -0
  189. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_hi.js +98 -0
  190. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_hr-hr.js +98 -0
  191. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_hr.js +98 -0
  192. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_hu-hu.js +98 -0
  193. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_hu.js +98 -0
  194. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_id-id.js +98 -0
  195. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_id.js +98 -0
  196. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_in.js +98 -0
  197. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_is-is.js +98 -0
  198. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_is.js +98 -0
  199. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_it-ch.js +98 -0
  200. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_it-it.js +98 -0
  201. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_it-sm.js +98 -0
  202. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_it.js +98 -0
  203. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_iw.js +98 -0
  204. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ja-jp.js +98 -0
  205. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ja.js +98 -0
  206. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_kn-in.js +98 -0
  207. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_kn.js +98 -0
  208. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ko-kr.js +98 -0
  209. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ko.js +98 -0
  210. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ln-cd.js +98 -0
  211. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ln-cg.js +98 -0
  212. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ln.js +98 -0
  213. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_lt-lt.js +98 -0
  214. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_lt.js +98 -0
  215. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_lv-lv.js +98 -0
  216. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_lv.js +98 -0
  217. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ml-in.js +98 -0
  218. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ml.js +98 -0
  219. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_mo.js +4 -0
  220. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_mr-in.js +98 -0
  221. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_mr.js +98 -0
  222. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ms-bn.js +98 -0
  223. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ms-my.js +98 -0
  224. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ms.js +98 -0
  225. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_mt-mt.js +98 -0
  226. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_mt.js +98 -0
  227. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_nl-aw.js +98 -0
  228. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_nl-be.js +98 -0
  229. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_nl-cw.js +98 -0
  230. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_nl-nl.js +98 -0
  231. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_nl-sx.js +98 -0
  232. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_nl.js +98 -0
  233. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_no.js +98 -0
  234. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_or-in.js +98 -0
  235. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_or.js +98 -0
  236. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_pl-pl.js +98 -0
  237. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_pl.js +98 -0
  238. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_pt-ao.js +98 -0
  239. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_pt-br.js +98 -0
  240. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_pt-gw.js +98 -0
  241. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_pt-mz.js +98 -0
  242. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_pt-pt.js +98 -0
  243. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_pt-st.js +98 -0
  244. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_pt.js +98 -0
  245. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ro-md.js +98 -0
  246. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ro-ro.js +98 -0
  247. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ro.js +98 -0
  248. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ru-md.js +98 -0
  249. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ru-ru.js +98 -0
  250. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ru-ua.js +98 -0
  251. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ru.js +98 -0
  252. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sk-sk.js +98 -0
  253. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sk.js +98 -0
  254. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sl-si.js +98 -0
  255. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sl.js +98 -0
  256. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sq-al.js +98 -0
  257. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sq.js +98 -0
  258. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr-cyrl-ba.js +98 -0
  259. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr-cyrl-me.js +98 -0
  260. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr-cyrl-rs.js +98 -0
  261. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr-cyrl.js +98 -0
  262. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr-latn-ba.js +98 -0
  263. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr-latn-me.js +98 -0
  264. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr-latn-rs.js +98 -0
  265. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr-latn.js +98 -0
  266. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr-rs.js +4 -0
  267. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sr.js +98 -0
  268. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sv-fi.js +98 -0
  269. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sv-se.js +98 -0
  270. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sv.js +98 -0
  271. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sw-ke.js +98 -0
  272. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sw-tz.js +98 -0
  273. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_sw.js +98 -0
  274. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ta-in.js +98 -0
  275. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ta-lk.js +98 -0
  276. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ta.js +98 -0
  277. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_te-in.js +98 -0
  278. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_te.js +98 -0
  279. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_th-th.js +98 -0
  280. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_th.js +98 -0
  281. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_tl-ph.js +4 -0
  282. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_tl.js +98 -0
  283. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_tr-tr.js +98 -0
  284. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_tr.js +98 -0
  285. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_uk-ua.js +98 -0
  286. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_uk.js +98 -0
  287. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ur-in.js +98 -0
  288. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ur-pk.js +98 -0
  289. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_ur.js +98 -0
  290. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_vi-vn.js +98 -0
  291. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_vi.js +98 -0
  292. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-cn.js +98 -0
  293. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hans-cn.js +98 -0
  294. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hans-hk.js +98 -0
  295. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hans-mo.js +98 -0
  296. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hans-sg.js +98 -0
  297. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hans.js +98 -0
  298. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hant-hk.js +98 -0
  299. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hant-mo.js +98 -0
  300. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hant-tw.js +98 -0
  301. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hant.js +98 -0
  302. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-hk.js +98 -0
  303. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh-tw.js +98 -0
  304. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zh.js +98 -0
  305. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zu-za.js +98 -0
  306. data/vendor/assets/javascripts/1.0.7/i18n/angular-locale_zu.js +98 -0
  307. data/vendor/assets/javascripts/1.1.5/angular-1.1.5.js +16876 -0
  308. data/vendor/assets/javascripts/1.1.5/angular-cookies-1.1.5.js +185 -0
  309. data/vendor/assets/javascripts/1.1.5/angular-loader-1.1.5.js +304 -0
  310. data/vendor/assets/javascripts/1.1.5/angular-mobile-1.1.5.js +460 -0
  311. data/vendor/assets/javascripts/1.1.5/angular-mocks-1.1.5.js +1886 -0
  312. data/vendor/assets/javascripts/1.1.5/angular-resource-1.1.5.js +537 -0
  313. data/vendor/assets/javascripts/1.1.5/angular-sanitize-1.1.5.js +558 -0
  314. data/vendor/assets/javascripts/1.1.5/angular-scenario-1.1.5.js +28463 -0
  315. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_af-na.js +98 -0
  316. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_af-za.js +98 -0
  317. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_af.js +98 -0
  318. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_am-et.js +98 -0
  319. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_am.js +98 -0
  320. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-001.js +98 -0
  321. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-ae.js +98 -0
  322. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-bh.js +98 -0
  323. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-dz.js +98 -0
  324. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-eg.js +98 -0
  325. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-iq.js +98 -0
  326. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-jo.js +98 -0
  327. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-kw.js +98 -0
  328. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-lb.js +98 -0
  329. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-ly.js +98 -0
  330. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-ma.js +98 -0
  331. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-om.js +98 -0
  332. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-qa.js +98 -0
  333. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-sa.js +98 -0
  334. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-sd.js +98 -0
  335. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-sy.js +98 -0
  336. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-tn.js +98 -0
  337. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar-ye.js +98 -0
  338. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ar.js +98 -0
  339. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_bg-bg.js +98 -0
  340. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_bg.js +98 -0
  341. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_bn-bd.js +98 -0
  342. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_bn-in.js +98 -0
  343. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_bn.js +98 -0
  344. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ca-ad.js +98 -0
  345. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ca-es.js +98 -0
  346. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ca.js +98 -0
  347. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_chr.js +4 -0
  348. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_cs-cz.js +98 -0
  349. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_cs.js +98 -0
  350. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_cy.js +4 -0
  351. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_da-dk.js +98 -0
  352. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_da.js +98 -0
  353. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_de-at.js +98 -0
  354. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_de-be.js +98 -0
  355. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_de-ch.js +98 -0
  356. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_de-de.js +98 -0
  357. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_de-li.js +98 -0
  358. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_de-lu.js +98 -0
  359. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_de.js +98 -0
  360. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_el-cy.js +98 -0
  361. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_el-gr.js +98 -0
  362. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_el-polyton.js +4 -0
  363. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_el.js +98 -0
  364. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-as.js +98 -0
  365. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-au.js +98 -0
  366. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-bb.js +98 -0
  367. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-be.js +98 -0
  368. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-bm.js +98 -0
  369. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-bw.js +98 -0
  370. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-bz.js +98 -0
  371. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-ca.js +98 -0
  372. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-dsrt-us.js +98 -0
  373. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-dsrt.js +98 -0
  374. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-fm.js +98 -0
  375. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-gb.js +98 -0
  376. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-gu.js +98 -0
  377. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-gy.js +98 -0
  378. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-hk.js +98 -0
  379. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-ie.js +98 -0
  380. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-in.js +98 -0
  381. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-iso.js +98 -0
  382. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-jm.js +98 -0
  383. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-mh.js +98 -0
  384. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-mp.js +98 -0
  385. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-mt.js +98 -0
  386. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-mu.js +98 -0
  387. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-na.js +98 -0
  388. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-nz.js +98 -0
  389. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-ph.js +98 -0
  390. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-pk.js +98 -0
  391. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-pr.js +98 -0
  392. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-pw.js +98 -0
  393. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-sg.js +98 -0
  394. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-tc.js +98 -0
  395. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-tt.js +98 -0
  396. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-um.js +98 -0
  397. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-us.js +98 -0
  398. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-vg.js +98 -0
  399. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-vi.js +98 -0
  400. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-za.js +98 -0
  401. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-zw.js +98 -0
  402. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en-zz.js +4 -0
  403. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_en.js +98 -0
  404. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-419.js +98 -0
  405. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-ar.js +98 -0
  406. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-bo.js +98 -0
  407. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-cl.js +98 -0
  408. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-co.js +98 -0
  409. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-cr.js +98 -0
  410. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-do.js +98 -0
  411. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-ea.js +98 -0
  412. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-ec.js +98 -0
  413. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-es.js +98 -0
  414. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-gq.js +98 -0
  415. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-gt.js +98 -0
  416. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-hn.js +98 -0
  417. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-ic.js +98 -0
  418. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-mx.js +98 -0
  419. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-ni.js +98 -0
  420. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-pa.js +98 -0
  421. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-pe.js +98 -0
  422. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-pr.js +98 -0
  423. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-py.js +98 -0
  424. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-sv.js +98 -0
  425. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-us.js +98 -0
  426. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-uy.js +98 -0
  427. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es-ve.js +98 -0
  428. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_es.js +98 -0
  429. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_et-ee.js +98 -0
  430. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_et.js +98 -0
  431. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_eu-es.js +98 -0
  432. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_eu.js +98 -0
  433. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fa-af.js +98 -0
  434. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fa-ir.js +98 -0
  435. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fa.js +98 -0
  436. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fi-fi.js +98 -0
  437. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fi.js +98 -0
  438. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fil-ph.js +98 -0
  439. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fil.js +98 -0
  440. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-be.js +98 -0
  441. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-bf.js +98 -0
  442. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-bi.js +98 -0
  443. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-bj.js +98 -0
  444. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-bl.js +98 -0
  445. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-ca.js +98 -0
  446. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-cd.js +98 -0
  447. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-cf.js +98 -0
  448. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-cg.js +98 -0
  449. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-ch.js +98 -0
  450. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-ci.js +98 -0
  451. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-cm.js +98 -0
  452. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-dj.js +98 -0
  453. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-fr.js +98 -0
  454. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-ga.js +98 -0
  455. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-gf.js +98 -0
  456. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-gn.js +98 -0
  457. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-gp.js +98 -0
  458. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-gq.js +98 -0
  459. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-km.js +98 -0
  460. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-lu.js +98 -0
  461. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-mc.js +98 -0
  462. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-mf.js +98 -0
  463. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-mg.js +98 -0
  464. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-ml.js +98 -0
  465. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-mq.js +98 -0
  466. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-ne.js +98 -0
  467. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-re.js +98 -0
  468. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-rw.js +98 -0
  469. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-sn.js +98 -0
  470. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-td.js +98 -0
  471. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-tg.js +98 -0
  472. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr-yt.js +98 -0
  473. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_fr.js +98 -0
  474. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_gl-es.js +98 -0
  475. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_gl.js +98 -0
  476. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_gsw-ch.js +98 -0
  477. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_gsw.js +98 -0
  478. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_gu-in.js +98 -0
  479. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_gu.js +98 -0
  480. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_haw.js +4 -0
  481. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_he-il.js +98 -0
  482. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_he.js +98 -0
  483. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_hi-in.js +98 -0
  484. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_hi.js +98 -0
  485. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_hr-hr.js +98 -0
  486. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_hr.js +98 -0
  487. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_hu-hu.js +98 -0
  488. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_hu.js +98 -0
  489. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_id-id.js +98 -0
  490. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_id.js +98 -0
  491. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_in.js +98 -0
  492. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_is-is.js +98 -0
  493. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_is.js +98 -0
  494. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_it-ch.js +98 -0
  495. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_it-it.js +98 -0
  496. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_it-sm.js +98 -0
  497. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_it.js +98 -0
  498. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_iw.js +98 -0
  499. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ja-jp.js +98 -0
  500. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ja.js +98 -0
  501. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_kn-in.js +98 -0
  502. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_kn.js +98 -0
  503. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ko-kr.js +98 -0
  504. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ko.js +98 -0
  505. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ln-cd.js +98 -0
  506. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ln-cg.js +98 -0
  507. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ln.js +98 -0
  508. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_lt-lt.js +98 -0
  509. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_lt.js +98 -0
  510. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_lv-lv.js +98 -0
  511. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_lv.js +98 -0
  512. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ml-in.js +98 -0
  513. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ml.js +98 -0
  514. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_mo.js +4 -0
  515. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_mr-in.js +98 -0
  516. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_mr.js +98 -0
  517. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ms-bn.js +98 -0
  518. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ms-my.js +98 -0
  519. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ms.js +98 -0
  520. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_mt-mt.js +98 -0
  521. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_mt.js +98 -0
  522. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_nl-aw.js +98 -0
  523. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_nl-be.js +98 -0
  524. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_nl-cw.js +98 -0
  525. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_nl-nl.js +98 -0
  526. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_nl-sx.js +98 -0
  527. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_nl.js +98 -0
  528. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_no.js +98 -0
  529. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_or-in.js +98 -0
  530. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_or.js +98 -0
  531. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_pl-pl.js +98 -0
  532. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_pl.js +98 -0
  533. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_pt-ao.js +98 -0
  534. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_pt-br.js +98 -0
  535. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_pt-gw.js +98 -0
  536. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_pt-mz.js +98 -0
  537. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_pt-pt.js +98 -0
  538. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_pt-st.js +98 -0
  539. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_pt.js +98 -0
  540. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ro-md.js +98 -0
  541. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ro-ro.js +98 -0
  542. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ro.js +98 -0
  543. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ru-md.js +98 -0
  544. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ru-ru.js +98 -0
  545. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ru-ua.js +98 -0
  546. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ru.js +98 -0
  547. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sk-sk.js +98 -0
  548. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sk.js +98 -0
  549. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sl-si.js +98 -0
  550. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sl.js +98 -0
  551. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sq-al.js +98 -0
  552. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sq.js +98 -0
  553. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr-cyrl-ba.js +98 -0
  554. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr-cyrl-me.js +98 -0
  555. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr-cyrl-rs.js +98 -0
  556. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr-cyrl.js +98 -0
  557. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr-latn-ba.js +98 -0
  558. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr-latn-me.js +98 -0
  559. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr-latn-rs.js +98 -0
  560. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr-latn.js +98 -0
  561. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr-rs.js +4 -0
  562. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sr.js +98 -0
  563. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sv-fi.js +98 -0
  564. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sv-se.js +98 -0
  565. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sv.js +98 -0
  566. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sw-ke.js +98 -0
  567. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sw-tz.js +98 -0
  568. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_sw.js +98 -0
  569. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ta-in.js +98 -0
  570. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ta-lk.js +98 -0
  571. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ta.js +98 -0
  572. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_te-in.js +98 -0
  573. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_te.js +98 -0
  574. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_th-th.js +98 -0
  575. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_th.js +98 -0
  576. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_tl-ph.js +4 -0
  577. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_tl.js +98 -0
  578. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_tr-tr.js +98 -0
  579. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_tr.js +98 -0
  580. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_uk-ua.js +98 -0
  581. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_uk.js +98 -0
  582. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ur-in.js +98 -0
  583. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ur-pk.js +98 -0
  584. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_ur.js +98 -0
  585. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_vi-vn.js +98 -0
  586. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_vi.js +98 -0
  587. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-cn.js +98 -0
  588. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hans-cn.js +98 -0
  589. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hans-hk.js +98 -0
  590. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hans-mo.js +98 -0
  591. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hans-sg.js +98 -0
  592. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hans.js +98 -0
  593. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hant-hk.js +98 -0
  594. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hant-mo.js +98 -0
  595. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hant-tw.js +98 -0
  596. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hant.js +98 -0
  597. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-hk.js +98 -0
  598. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh-tw.js +98 -0
  599. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zh.js +98 -0
  600. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zu-za.js +98 -0
  601. data/vendor/assets/javascripts/1.1.5/i18n/angular-locale_zu.js +98 -0
  602. data/vendor/assets/javascripts/angular-bootstrap-prettify.js +1835 -0
  603. data/vendor/assets/javascripts/angular-bootstrap.js +175 -0
  604. data/vendor/assets/javascripts/angular-cookies-unstable.js +185 -0
  605. data/vendor/assets/javascripts/angular-cookies.js +185 -0
  606. data/vendor/assets/javascripts/angular-loader-unstable.js +304 -0
  607. data/vendor/assets/javascripts/angular-loader.js +277 -0
  608. data/vendor/assets/javascripts/angular-mobile-unstable.js +460 -0
  609. data/vendor/assets/javascripts/angular-mocks-unstable.js +1886 -0
  610. data/vendor/assets/javascripts/angular-mocks.js +1788 -0
  611. data/vendor/assets/javascripts/angular-resource-unstable.js +25 -9
  612. data/vendor/assets/javascripts/angular-resource.js +1 -1
  613. data/vendor/assets/javascripts/angular-sanitize-unstable.js +1 -1
  614. data/vendor/assets/javascripts/angular-sanitize.js +1 -1
  615. data/vendor/assets/javascripts/angular-scenario-unstable.js +28463 -0
  616. data/vendor/assets/javascripts/angular-scenario.js +26310 -0
  617. data/vendor/assets/javascripts/angular-unstable.js +1229 -667
  618. data/vendor/assets/javascripts/angular.js +276 -189
  619. metadata +606 -2
@@ -0,0 +1,460 @@
1
+ /**
2
+ * @license AngularJS v1.1.5
3
+ * (c) 2010-2012 Google, Inc. http://angularjs.org
4
+ * License: MIT
5
+ */
6
+ (function(window, angular, undefined) {
7
+ 'use strict';
8
+
9
+ /**
10
+ * @ngdoc overview
11
+ * @name ngMobile
12
+ * @description
13
+ * Touch events and other mobile helpers.
14
+ * Based on jQuery Mobile touch event handling (jquerymobile.com)
15
+ */
16
+
17
+ // define ngMobile module
18
+ var ngMobile = angular.module('ngMobile', []);
19
+
20
+ /**
21
+ * @ngdoc directive
22
+ * @name ngMobile.directive:ngClick
23
+ *
24
+ * @description
25
+ * A more powerful replacement for the default ngClick designed to be used on touchscreen
26
+ * devices. Most mobile browsers wait about 300ms after a tap-and-release before sending
27
+ * the click event. This version handles them immediately, and then prevents the
28
+ * following click event from propagating.
29
+ *
30
+ * This directive can fall back to using an ordinary click event, and so works on desktop
31
+ * browsers as well as mobile.
32
+ *
33
+ * This directive also sets the CSS class `ng-click-active` while the element is being held
34
+ * down (by a mouse click or touch) so you can restyle the depressed element if you wish.
35
+ *
36
+ * @element ANY
37
+ * @param {expression} ngClick {@link guide/expression Expression} to evaluate
38
+ * upon tap. (Event object is available as `$event`)
39
+ *
40
+ * @example
41
+ <doc:example>
42
+ <doc:source>
43
+ <button ng-click="count = count + 1" ng-init="count=0">
44
+ Increment
45
+ </button>
46
+ count: {{ count }}
47
+ </doc:source>
48
+ </doc:example>
49
+ */
50
+
51
+ ngMobile.config(['$provide', function($provide) {
52
+ $provide.decorator('ngClickDirective', ['$delegate', function($delegate) {
53
+ // drop the default ngClick directive
54
+ $delegate.shift();
55
+ return $delegate;
56
+ }]);
57
+ }]);
58
+
59
+ ngMobile.directive('ngClick', ['$parse', '$timeout', '$rootElement',
60
+ function($parse, $timeout, $rootElement) {
61
+ var TAP_DURATION = 750; // Shorter than 750ms is a tap, longer is a taphold or drag.
62
+ var MOVE_TOLERANCE = 12; // 12px seems to work in most mobile browsers.
63
+ var PREVENT_DURATION = 2500; // 2.5 seconds maximum from preventGhostClick call to click
64
+ var CLICKBUSTER_THRESHOLD = 25; // 25 pixels in any dimension is the limit for busting clicks.
65
+
66
+ var ACTIVE_CLASS_NAME = 'ng-click-active';
67
+ var lastPreventedTime;
68
+ var touchCoordinates;
69
+
70
+
71
+ // TAP EVENTS AND GHOST CLICKS
72
+ //
73
+ // Why tap events?
74
+ // Mobile browsers detect a tap, then wait a moment (usually ~300ms) to see if you're
75
+ // double-tapping, and then fire a click event.
76
+ //
77
+ // This delay sucks and makes mobile apps feel unresponsive.
78
+ // So we detect touchstart, touchmove, touchcancel and touchend ourselves and determine when
79
+ // the user has tapped on something.
80
+ //
81
+ // What happens when the browser then generates a click event?
82
+ // The browser, of course, also detects the tap and fires a click after a delay. This results in
83
+ // tapping/clicking twice. So we do "clickbusting" to prevent it.
84
+ //
85
+ // How does it work?
86
+ // We attach global touchstart and click handlers, that run during the capture (early) phase.
87
+ // So the sequence for a tap is:
88
+ // - global touchstart: Sets an "allowable region" at the point touched.
89
+ // - element's touchstart: Starts a touch
90
+ // (- touchmove or touchcancel ends the touch, no click follows)
91
+ // - element's touchend: Determines if the tap is valid (didn't move too far away, didn't hold
92
+ // too long) and fires the user's tap handler. The touchend also calls preventGhostClick().
93
+ // - preventGhostClick() removes the allowable region the global touchstart created.
94
+ // - The browser generates a click event.
95
+ // - The global click handler catches the click, and checks whether it was in an allowable region.
96
+ // - If preventGhostClick was called, the region will have been removed, the click is busted.
97
+ // - If the region is still there, the click proceeds normally. Therefore clicks on links and
98
+ // other elements without ngTap on them work normally.
99
+ //
100
+ // This is an ugly, terrible hack!
101
+ // Yeah, tell me about it. The alternatives are using the slow click events, or making our users
102
+ // deal with the ghost clicks, so I consider this the least of evils. Fortunately Angular
103
+ // encapsulates this ugly logic away from the user.
104
+ //
105
+ // Why not just put click handlers on the element?
106
+ // We do that too, just to be sure. The problem is that the tap event might have caused the DOM
107
+ // to change, so that the click fires in the same position but something else is there now. So
108
+ // the handlers are global and care only about coordinates and not elements.
109
+
110
+ // Checks if the coordinates are close enough to be within the region.
111
+ function hit(x1, y1, x2, y2) {
112
+ return Math.abs(x1 - x2) < CLICKBUSTER_THRESHOLD && Math.abs(y1 - y2) < CLICKBUSTER_THRESHOLD;
113
+ }
114
+
115
+ // Checks a list of allowable regions against a click location.
116
+ // Returns true if the click should be allowed.
117
+ // Splices out the allowable region from the list after it has been used.
118
+ function checkAllowableRegions(touchCoordinates, x, y) {
119
+ for (var i = 0; i < touchCoordinates.length; i += 2) {
120
+ if (hit(touchCoordinates[i], touchCoordinates[i+1], x, y)) {
121
+ touchCoordinates.splice(i, i + 2);
122
+ return true; // allowable region
123
+ }
124
+ }
125
+ return false; // No allowable region; bust it.
126
+ }
127
+
128
+ // Global click handler that prevents the click if it's in a bustable zone and preventGhostClick
129
+ // was called recently.
130
+ function onClick(event) {
131
+ if (Date.now() - lastPreventedTime > PREVENT_DURATION) {
132
+ return; // Too old.
133
+ }
134
+
135
+ var touches = event.touches && event.touches.length ? event.touches : [event];
136
+ var x = touches[0].clientX;
137
+ var y = touches[0].clientY;
138
+ // Work around desktop Webkit quirk where clicking a label will fire two clicks (on the label
139
+ // and on the input element). Depending on the exact browser, this second click we don't want
140
+ // to bust has either (0,0) or negative coordinates.
141
+ if (x < 1 && y < 1) {
142
+ return; // offscreen
143
+ }
144
+
145
+ // Look for an allowable region containing this click.
146
+ // If we find one, that means it was created by touchstart and not removed by
147
+ // preventGhostClick, so we don't bust it.
148
+ if (checkAllowableRegions(touchCoordinates, x, y)) {
149
+ return;
150
+ }
151
+
152
+ // If we didn't find an allowable region, bust the click.
153
+ event.stopPropagation();
154
+ event.preventDefault();
155
+ }
156
+
157
+
158
+ // Global touchstart handler that creates an allowable region for a click event.
159
+ // This allowable region can be removed by preventGhostClick if we want to bust it.
160
+ function onTouchStart(event) {
161
+ var touches = event.touches && event.touches.length ? event.touches : [event];
162
+ var x = touches[0].clientX;
163
+ var y = touches[0].clientY;
164
+ touchCoordinates.push(x, y);
165
+
166
+ $timeout(function() {
167
+ // Remove the allowable region.
168
+ for (var i = 0; i < touchCoordinates.length; i += 2) {
169
+ if (touchCoordinates[i] == x && touchCoordinates[i+1] == y) {
170
+ touchCoordinates.splice(i, i + 2);
171
+ return;
172
+ }
173
+ }
174
+ }, PREVENT_DURATION, false);
175
+ }
176
+
177
+ // On the first call, attaches some event handlers. Then whenever it gets called, it creates a
178
+ // zone around the touchstart where clicks will get busted.
179
+ function preventGhostClick(x, y) {
180
+ if (!touchCoordinates) {
181
+ $rootElement[0].addEventListener('click', onClick, true);
182
+ $rootElement[0].addEventListener('touchstart', onTouchStart, true);
183
+ touchCoordinates = [];
184
+ }
185
+
186
+ lastPreventedTime = Date.now();
187
+
188
+ checkAllowableRegions(touchCoordinates, x, y);
189
+ }
190
+
191
+ // Actual linking function.
192
+ return function(scope, element, attr) {
193
+ var clickHandler = $parse(attr.ngClick),
194
+ tapping = false,
195
+ tapElement, // Used to blur the element after a tap.
196
+ startTime, // Used to check if the tap was held too long.
197
+ touchStartX,
198
+ touchStartY;
199
+
200
+ function resetState() {
201
+ tapping = false;
202
+ element.removeClass(ACTIVE_CLASS_NAME);
203
+ }
204
+
205
+ element.bind('touchstart', function(event) {
206
+ tapping = true;
207
+ tapElement = event.target ? event.target : event.srcElement; // IE uses srcElement.
208
+ // Hack for Safari, which can target text nodes instead of containers.
209
+ if(tapElement.nodeType == 3) {
210
+ tapElement = tapElement.parentNode;
211
+ }
212
+
213
+ element.addClass(ACTIVE_CLASS_NAME);
214
+
215
+ startTime = Date.now();
216
+
217
+ var touches = event.touches && event.touches.length ? event.touches : [event];
218
+ var e = touches[0].originalEvent || touches[0];
219
+ touchStartX = e.clientX;
220
+ touchStartY = e.clientY;
221
+ });
222
+
223
+ element.bind('touchmove', function(event) {
224
+ resetState();
225
+ });
226
+
227
+ element.bind('touchcancel', function(event) {
228
+ resetState();
229
+ });
230
+
231
+ element.bind('touchend', function(event) {
232
+ var diff = Date.now() - startTime;
233
+
234
+ var touches = (event.changedTouches && event.changedTouches.length) ? event.changedTouches :
235
+ ((event.touches && event.touches.length) ? event.touches : [event]);
236
+ var e = touches[0].originalEvent || touches[0];
237
+ var x = e.clientX;
238
+ var y = e.clientY;
239
+ var dist = Math.sqrt( Math.pow(x - touchStartX, 2) + Math.pow(y - touchStartY, 2) );
240
+
241
+ if (tapping && diff < TAP_DURATION && dist < MOVE_TOLERANCE) {
242
+ // Call preventGhostClick so the clickbuster will catch the corresponding click.
243
+ preventGhostClick(x, y);
244
+
245
+ // Blur the focused element (the button, probably) before firing the callback.
246
+ // This doesn't work perfectly on Android Chrome, but seems to work elsewhere.
247
+ // I couldn't get anything to work reliably on Android Chrome.
248
+ if (tapElement) {
249
+ tapElement.blur();
250
+ }
251
+
252
+ scope.$apply(function() {
253
+ // TODO(braden): This is sending the touchend, not a tap or click. Is that kosher?
254
+ clickHandler(scope, {$event: event});
255
+ });
256
+ }
257
+
258
+ resetState();
259
+ });
260
+
261
+ // Hack for iOS Safari's benefit. It goes searching for onclick handlers and is liable to click
262
+ // something else nearby.
263
+ element.onclick = function(event) { };
264
+
265
+ // Fallback click handler.
266
+ // Busted clicks don't get this far, and adding this handler allows ng-tap to be used on
267
+ // desktop as well, to allow more portable sites.
268
+ element.bind('click', function(event) {
269
+ scope.$apply(function() {
270
+ clickHandler(scope, {$event: event});
271
+ });
272
+ });
273
+
274
+ element.bind('mousedown', function(event) {
275
+ element.addClass(ACTIVE_CLASS_NAME);
276
+ });
277
+
278
+ element.bind('mousemove mouseup', function(event) {
279
+ element.removeClass(ACTIVE_CLASS_NAME);
280
+ });
281
+
282
+ };
283
+ }]);
284
+
285
+ /**
286
+ * @ngdoc directive
287
+ * @name ngMobile.directive:ngSwipeLeft
288
+ *
289
+ * @description
290
+ * Specify custom behavior when an element is swiped to the left on a touchscreen device.
291
+ * A leftward swipe is a quick, right-to-left slide of the finger.
292
+ * Though ngSwipeLeft is designed for touch-based devices, it will work with a mouse click and drag too.
293
+ *
294
+ * @element ANY
295
+ * @param {expression} ngSwipeLeft {@link guide/expression Expression} to evaluate
296
+ * upon left swipe. (Event object is available as `$event`)
297
+ *
298
+ * @example
299
+ <doc:example>
300
+ <doc:source>
301
+ <div ng-show="!showActions" ng-swipe-left="showActions = true">
302
+ Some list content, like an email in the inbox
303
+ </div>
304
+ <div ng-show="showActions" ng-swipe-right="showActions = false">
305
+ <button ng-click="reply()">Reply</button>
306
+ <button ng-click="delete()">Delete</button>
307
+ </div>
308
+ </doc:source>
309
+ </doc:example>
310
+ */
311
+
312
+ /**
313
+ * @ngdoc directive
314
+ * @name ngMobile.directive:ngSwipeRight
315
+ *
316
+ * @description
317
+ * Specify custom behavior when an element is swiped to the right on a touchscreen device.
318
+ * A rightward swipe is a quick, left-to-right slide of the finger.
319
+ * Though ngSwipeRight is designed for touch-based devices, it will work with a mouse click and drag too.
320
+ *
321
+ * @element ANY
322
+ * @param {expression} ngSwipeRight {@link guide/expression Expression} to evaluate
323
+ * upon right swipe. (Event object is available as `$event`)
324
+ *
325
+ * @example
326
+ <doc:example>
327
+ <doc:source>
328
+ <div ng-show="!showActions" ng-swipe-left="showActions = true">
329
+ Some list content, like an email in the inbox
330
+ </div>
331
+ <div ng-show="showActions" ng-swipe-right="showActions = false">
332
+ <button ng-click="reply()">Reply</button>
333
+ <button ng-click="delete()">Delete</button>
334
+ </div>
335
+ </doc:source>
336
+ </doc:example>
337
+ */
338
+
339
+ function makeSwipeDirective(directiveName, direction) {
340
+ ngMobile.directive(directiveName, ['$parse', function($parse) {
341
+ // The maximum vertical delta for a swipe should be less than 75px.
342
+ var MAX_VERTICAL_DISTANCE = 75;
343
+ // Vertical distance should not be more than a fraction of the horizontal distance.
344
+ var MAX_VERTICAL_RATIO = 0.3;
345
+ // At least a 30px lateral motion is necessary for a swipe.
346
+ var MIN_HORIZONTAL_DISTANCE = 30;
347
+ // The total distance in any direction before we make the call on swipe vs. scroll.
348
+ var MOVE_BUFFER_RADIUS = 10;
349
+
350
+ function getCoordinates(event) {
351
+ var touches = event.touches && event.touches.length ? event.touches : [event];
352
+ var e = (event.changedTouches && event.changedTouches[0]) ||
353
+ (event.originalEvent && event.originalEvent.changedTouches &&
354
+ event.originalEvent.changedTouches[0]) ||
355
+ touches[0].originalEvent || touches[0];
356
+
357
+ return {
358
+ x: e.clientX,
359
+ y: e.clientY
360
+ };
361
+ }
362
+
363
+ return function(scope, element, attr) {
364
+ var swipeHandler = $parse(attr[directiveName]);
365
+ var startCoords, valid;
366
+ var totalX, totalY;
367
+ var lastX, lastY;
368
+
369
+ function validSwipe(event) {
370
+ // Check that it's within the coordinates.
371
+ // Absolute vertical distance must be within tolerances.
372
+ // Horizontal distance, we take the current X - the starting X.
373
+ // This is negative for leftward swipes and positive for rightward swipes.
374
+ // After multiplying by the direction (-1 for left, +1 for right), legal swipes
375
+ // (ie. same direction as the directive wants) will have a positive delta and
376
+ // illegal ones a negative delta.
377
+ // Therefore this delta must be positive, and larger than the minimum.
378
+ if (!startCoords) return false;
379
+ var coords = getCoordinates(event);
380
+ var deltaY = Math.abs(coords.y - startCoords.y);
381
+ var deltaX = (coords.x - startCoords.x) * direction;
382
+ return valid && // Short circuit for already-invalidated swipes.
383
+ deltaY < MAX_VERTICAL_DISTANCE &&
384
+ deltaX > 0 &&
385
+ deltaX > MIN_HORIZONTAL_DISTANCE &&
386
+ deltaY / deltaX < MAX_VERTICAL_RATIO;
387
+ }
388
+
389
+ element.bind('touchstart mousedown', function(event) {
390
+ startCoords = getCoordinates(event);
391
+ valid = true;
392
+ totalX = 0;
393
+ totalY = 0;
394
+ lastX = startCoords.x;
395
+ lastY = startCoords.y;
396
+ });
397
+
398
+ element.bind('touchcancel', function(event) {
399
+ valid = false;
400
+ });
401
+
402
+ element.bind('touchmove mousemove', function(event) {
403
+ if (!valid) return;
404
+
405
+ // Android will send a touchcancel if it thinks we're starting to scroll.
406
+ // So when the total distance (+ or - or both) exceeds 10px in either direction,
407
+ // we either:
408
+ // - On totalX > totalY, we send preventDefault() and treat this as a swipe.
409
+ // - On totalY > totalX, we let the browser handle it as a scroll.
410
+
411
+ // Invalidate a touch while it's in progress if it strays too far away vertically.
412
+ // We don't want a scroll down and back up while drifting sideways to be a swipe just
413
+ // because you happened to end up vertically close in the end.
414
+ if (!startCoords) return;
415
+ var coords = getCoordinates(event);
416
+
417
+ if (Math.abs(coords.y - startCoords.y) > MAX_VERTICAL_DISTANCE) {
418
+ valid = false;
419
+ return;
420
+ }
421
+
422
+ totalX += Math.abs(coords.x - lastX);
423
+ totalY += Math.abs(coords.y - lastY);
424
+
425
+ lastX = coords.x;
426
+ lastY = coords.y;
427
+
428
+ if (totalX < MOVE_BUFFER_RADIUS && totalY < MOVE_BUFFER_RADIUS) {
429
+ return;
430
+ }
431
+
432
+ // One of totalX or totalY has exceeded the buffer, so decide on swipe vs. scroll.
433
+ if (totalY > totalX) {
434
+ valid = false;
435
+ return;
436
+ } else {
437
+ event.preventDefault();
438
+ }
439
+ });
440
+
441
+ element.bind('touchend mouseup', function(event) {
442
+ if (validSwipe(event)) {
443
+ // Prevent this swipe from bubbling up to any other elements with ngSwipes.
444
+ event.stopPropagation();
445
+ scope.$apply(function() {
446
+ swipeHandler(scope, {$event:event});
447
+ });
448
+ }
449
+ });
450
+ };
451
+ }]);
452
+ }
453
+
454
+ // Left is negative X-coordinate, right is positive.
455
+ makeSwipeDirective('ngSwipeLeft', -1);
456
+ makeSwipeDirective('ngSwipeRight', 1);
457
+
458
+
459
+
460
+ })(window, window.angular);