Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Add updated build

  • Loading branch information...
commit 7654c78127e6512b01cba5e348ed6e4fafd9dcf9 1 parent 5e8cf5d
Penn Su authored
Showing with 23,628 additions and 324 deletions.
  1. +1 −1  platforms/android/CordovaLib/ant-build/build.prop
  2. BIN  platforms/android/ant-build/HelloCordova-debug-unaligned.apk
  3. BIN  platforms/android/ant-build/HelloCordova-debug.apk
  4. BIN  platforms/android/ant-build/HelloCordova.ap_
  5. +1,106 −0 platforms/android/ant-build/HelloCordova.ap_.d
  6. +1 −1  platforms/android/ant-build/build.prop
  7. +13 −5 platforms/android/assets/www/css/main.css
  8. +4 −0 platforms/android/assets/www/index.html
  9. +5 −5 platforms/android/assets/www/lib/angular-animate/.bower.json
  10. +1 −1  platforms/android/assets/www/lib/angular-animate/angular-animate.js
  11. +1 −1  platforms/android/assets/www/lib/angular-animate/angular-animate.min.js
  12. +2 −2 platforms/android/assets/www/lib/angular-animate/bower.json
  13. +5 −5 platforms/android/assets/www/lib/angular-sanitize/.bower.json
  14. +1 −1  platforms/android/assets/www/lib/angular-sanitize/angular-sanitize.js
  15. +1 −1  platforms/android/assets/www/lib/angular-sanitize/angular-sanitize.min.js
  16. +2 −2 platforms/android/assets/www/lib/angular-sanitize/bower.json
  17. +5 −5 platforms/android/assets/www/lib/angular/.bower.json
  18. +142 −82 platforms/android/assets/www/lib/angular/angular.js
  19. +209 −208 platforms/android/assets/www/lib/angular/angular.min.js
  20. BIN  platforms/android/assets/www/lib/angular/angular.min.js.gzip
  21. +3 −3 platforms/android/assets/www/lib/angular/angular.min.js.map
  22. +1 −1  platforms/android/assets/www/lib/angular/bower.json
  23. +15 −0 platforms/android/assets/www/lib/context-free-parser/.bower.json
  24. +4 −0 platforms/android/assets/www/lib/context-free-parser/README.md
  25. +6 −0 platforms/android/assets/www/lib/context-free-parser/bower.json
  26. +40 −0 platforms/android/assets/www/lib/context-free-parser/context-free-parser.html
  27. +105 −0 platforms/android/assets/www/lib/context-free-parser/context-free-parser.js
  28. +25 −0 platforms/android/assets/www/lib/context-free-parser/demo.html
  29. +23 −0 platforms/android/assets/www/lib/context-free-parser/index.html
  30. +17 −0 platforms/android/assets/www/lib/core-ajax/.bower.json
  31. +4 −0 platforms/android/assets/www/lib/core-ajax/README.md
  32. +7 −0 platforms/android/assets/www/lib/core-ajax/bower.json
  33. +320 −0 platforms/android/assets/www/lib/core-ajax/core-ajax.html
  34. +115 −0 platforms/android/assets/www/lib/core-ajax/core-xhr.html
  35. +43 −0 platforms/android/assets/www/lib/core-ajax/demo.html
  36. +23 −0 platforms/android/assets/www/lib/core-ajax/index.html
  37. +19 −0 platforms/android/assets/www/lib/core-animated-pages/.bower.json
  38. +4 −0 platforms/android/assets/www/lib/core-animated-pages/README.md
  39. +9 −0 platforms/android/assets/www/lib/core-animated-pages/bower.json
  40. +18 −0 platforms/android/assets/www/lib/core-animated-pages/core-animated-pages.css
  41. +414 −0 platforms/android/assets/www/lib/core-animated-pages/core-animated-pages.html
  42. +14 −0 platforms/android/assets/www/lib/core-animated-pages/demo.html
  43. +104 −0 platforms/android/assets/www/lib/core-animated-pages/demos/grid.html
  44. +117 −0 platforms/android/assets/www/lib/core-animated-pages/demos/list.html
  45. +173 −0 platforms/android/assets/www/lib/core-animated-pages/demos/music.html
  46. +104 −0 platforms/android/assets/www/lib/core-animated-pages/demos/nested-animated-pages.html
  47. +103 −0 platforms/android/assets/www/lib/core-animated-pages/demos/nested.html
  48. +247 −0 platforms/android/assets/www/lib/core-animated-pages/demos/news.html
  49. BIN  platforms/android/assets/www/lib/core-animated-pages/demos/quiz1-intro.png
  50. +254 −0 platforms/android/assets/www/lib/core-animated-pages/demos/quiz1.html
  51. +133 −0 platforms/android/assets/www/lib/core-animated-pages/demos/shadow.html
  52. +89 −0 platforms/android/assets/www/lib/core-animated-pages/demos/simple.html
  53. +23 −0 platforms/android/assets/www/lib/core-animated-pages/index.html
  54. +29 −0 platforms/android/assets/www/lib/core-animated-pages/metadata.html
  55. +138 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/cascade-transition.html
  56. +174 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/core-transition-pages.html
  57. +173 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/cross-fade.html
  58. +12 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/hero-transition.css
  59. +267 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/hero-transition.html
  60. +58 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/list-cascade.html
  61. +37 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/scale-up.html
  62. +55 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/slide-down.html
  63. +31 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/slide-from-bottom.html
  64. +35 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/slide-from-right.html
  65. +82 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/slide-up.html
  66. +101 −0 platforms/android/assets/www/lib/core-animated-pages/transitions/tile-cascade.html
  67. +18 −0 platforms/android/assets/www/lib/core-animation/.bower.json
  68. +4 −0 platforms/android/assets/www/lib/core-animation/README.md
  69. +8 −0 platforms/android/assets/www/lib/core-animation/bower.json
  70. +169 −0 platforms/android/assets/www/lib/core-animation/core-animation-group.html
  71. +524 −0 platforms/android/assets/www/lib/core-animation/core-animation.html
  72. +140 −0 platforms/android/assets/www/lib/core-animation/demo.html
  73. +23 −0 platforms/android/assets/www/lib/core-animation/index.html
  74. +1 −0  platforms/android/assets/www/lib/core-animation/web-animations.html
  75. +17 −0 platforms/android/assets/www/lib/core-collapse/.bower.json
  76. +4 −0 platforms/android/assets/www/lib/core-collapse/README.md
  77. +7 −0 platforms/android/assets/www/lib/core-collapse/bower.json
  78. +16 −0 platforms/android/assets/www/lib/core-collapse/core-collapse.css
  79. +250 −0 platforms/android/assets/www/lib/core-collapse/core-collapse.html
  80. +84 −0 platforms/android/assets/www/lib/core-collapse/demo.html
  81. +23 −0 platforms/android/assets/www/lib/core-collapse/index.html
  82. +18 −0 platforms/android/assets/www/lib/core-component-page/.bower.json
  83. +6 −0 platforms/android/assets/www/lib/core-component-page/README.md
  84. BIN  platforms/android/assets/www/lib/core-component-page/bowager-logo.png
  85. +8 −0 platforms/android/assets/www/lib/core-component-page/bower.json
  86. +5,797 −0 platforms/android/assets/www/lib/core-component-page/core-component-page.html
  87. +23 −0 platforms/android/assets/www/lib/core-component-page/demo.html
  88. +23 −0 platforms/android/assets/www/lib/core-component-page/index.html
  89. +27 −0 platforms/android/assets/www/lib/core-doc-viewer/.bower.json
  90. +4 −0 platforms/android/assets/www/lib/core-doc-viewer/README.md
  91. +17 −0 platforms/android/assets/www/lib/core-doc-viewer/bower.json
  92. +178 −0 platforms/android/assets/www/lib/core-doc-viewer/core-doc-viewer.html
  93. +37 −0 platforms/android/assets/www/lib/core-doc-viewer/demo.html
  94. +182 −0 platforms/android/assets/www/lib/core-doc-viewer/elements/core-doc-page.css
  95. +157 −0 platforms/android/assets/www/lib/core-doc-viewer/elements/core-doc-page.html
  96. +17 −0 platforms/android/assets/www/lib/core-doc-viewer/elements/core-doc-toc.css
  97. +59 −0 platforms/android/assets/www/lib/core-doc-viewer/elements/core-doc-toc.html
  98. +23 −0 platforms/android/assets/www/lib/core-doc-viewer/index.html
  99. +17 −0 platforms/android/assets/www/lib/core-docs/.bower.json
  100. +4 −0 platforms/android/assets/www/lib/core-docs/README.md
  101. +7 −0 platforms/android/assets/www/lib/core-docs/bower.json
  102. +71 −0 platforms/android/assets/www/lib/core-docs/index.html
  103. +13 −0 platforms/android/assets/www/lib/core-drag-drop/.bower.json
  104. +111 −0 platforms/android/assets/www/lib/core-drag-drop/core-drag-drop.html
  105. +93 −0 platforms/android/assets/www/lib/core-drag-drop/demo.html
  106. +23 −0 platforms/android/assets/www/lib/core-drag-drop/index.html
  107. +18 −0 platforms/android/assets/www/lib/core-drawer-panel/.bower.json
  108. +4 −0 platforms/android/assets/www/lib/core-drawer-panel/README.md
  109. +8 −0 platforms/android/assets/www/lib/core-drawer-panel/bower.json
  110. +162 −0 platforms/android/assets/www/lib/core-drawer-panel/core-drawer-panel.css
  111. +150 −0 platforms/android/assets/www/lib/core-drawer-panel/core-drawer-panel.html
  112. +73 −0 platforms/android/assets/www/lib/core-drawer-panel/demo.html
  113. +23 −0 platforms/android/assets/www/lib/core-drawer-panel/index.html
  114. +28 −0 platforms/android/assets/www/lib/core-drawer-panel/metadata.html
  115. +56 −0 platforms/android/assets/www/lib/core-elements/.bower.json
  116. +4 −0 platforms/android/assets/www/lib/core-elements/README.md
  117. +46 −0 platforms/android/assets/www/lib/core-elements/bower.json
  118. +55 −0 platforms/android/assets/www/lib/core-elements/core-elements.html
  119. +103 −0 platforms/android/assets/www/lib/core-elements/demo.html
  120. +23 −0 platforms/android/assets/www/lib/core-elements/index.html
  121. +20 −0 platforms/android/assets/www/lib/core-elements/metadata.html
  122. +17 −0 platforms/android/assets/www/lib/core-field/.bower.json
  123. +4 −0 platforms/android/assets/www/lib/core-field/README.md
  124. +7 −0 platforms/android/assets/www/lib/core-field/bower.json
  125. +38 −0 platforms/android/assets/www/lib/core-field/core-field.css
  126. +35 −0 platforms/android/assets/www/lib/core-field/core-field.html
  127. +58 −0 platforms/android/assets/www/lib/core-field/demo.html
  128. +23 −0 platforms/android/assets/www/lib/core-field/index.html
  129. +17 −0 platforms/android/assets/www/lib/core-field/metadata.html
  130. +17 −0 platforms/android/assets/www/lib/core-header-panel/.bower.json
  131. +4 −0 platforms/android/assets/www/lib/core-header-panel/README.md
  132. +7 −0 platforms/android/assets/www/lib/core-header-panel/bower.json
  133. +75 −0 platforms/android/assets/www/lib/core-header-panel/core-header-panel.css
  134. +197 −0 platforms/android/assets/www/lib/core-header-panel/core-header-panel.html
  135. +100 −0 platforms/android/assets/www/lib/core-header-panel/demo.html
  136. +23 −0 platforms/android/assets/www/lib/core-header-panel/index.html
  137. +28 −0 platforms/android/assets/www/lib/core-header-panel/metadata.html
  138. +17 −0 platforms/android/assets/www/lib/core-icon-button/.bower.json
  139. +4 −0 platforms/android/assets/www/lib/core-icon-button/README.md
  140. +7 −0 platforms/android/assets/www/lib/core-icon-button/bower.json
  141. +70 −0 platforms/android/assets/www/lib/core-icon-button/core-icon-button.css
  142. +84 −0 platforms/android/assets/www/lib/core-icon-button/core-icon-button.html
  143. +51 −0 platforms/android/assets/www/lib/core-icon-button/demo.html
  144. +23 −0 platforms/android/assets/www/lib/core-icon-button/index.html
  145. +11 −0 platforms/android/assets/www/lib/core-icon-button/metadata.html
  146. +18 −0 platforms/android/assets/www/lib/core-icon/.bower.json
  147. +4 −0 platforms/android/assets/www/lib/core-icon/README.md
  148. +8 −0 platforms/android/assets/www/lib/core-icon/bower.json
  149. +25 −0 platforms/android/assets/www/lib/core-icon/core-icon.css
  150. +125 −0 platforms/android/assets/www/lib/core-icon/core-icon.html
  151. +44 −0 platforms/android/assets/www/lib/core-icon/demo.html
  152. +23 −0 platforms/android/assets/www/lib/core-icon/index.html
  153. +12 −0 platforms/android/assets/www/lib/core-icon/metadata.html
  154. +19 −0 platforms/android/assets/www/lib/core-icons/.bower.json
  155. +4 −0 platforms/android/assets/www/lib/core-icons/README.md
  156. +9 −0 platforms/android/assets/www/lib/core-icons/bower.json
  157. +14 −0 platforms/android/assets/www/lib/core-icons/core-icons.html
  158. +95 −0 platforms/android/assets/www/lib/core-icons/demo.html
  159. +45 −0 platforms/android/assets/www/lib/core-icons/iconsets/av-icons.html
  160. +38 −0 platforms/android/assets/www/lib/core-icons/iconsets/communication-icons.html
  161. +54 −0 platforms/android/assets/www/lib/core-icons/iconsets/device-icons.html
  162. +45 −0 platforms/android/assets/www/lib/core-icons/iconsets/hardware-icons.html
  163. +192 −0 platforms/android/assets/www/lib/core-icons/iconsets/icons.html
  164. +51 −0 platforms/android/assets/www/lib/core-icons/iconsets/image-icons.html
  165. +33 −0 platforms/android/assets/www/lib/core-icons/iconsets/maps-icons.html
  166. +53 −0 platforms/android/assets/www/lib/core-icons/iconsets/notification-icons.html
  167. +18 −0 platforms/android/assets/www/lib/core-icons/iconsets/png-icons.html
  168. +50 −0 platforms/android/assets/www/lib/core-icons/iconsets/social-icons.html
  169. +22 −0 platforms/android/assets/www/lib/core-icons/index.html
  170. +18 −0 platforms/android/assets/www/lib/core-iconset-svg/.bower.json
  171. +4 −0 platforms/android/assets/www/lib/core-iconset-svg/README.md
  172. +8 −0 platforms/android/assets/www/lib/core-iconset-svg/bower.json
  173. +170 −0 platforms/android/assets/www/lib/core-iconset-svg/core-iconset-svg.html
  174. +108 −0 platforms/android/assets/www/lib/core-iconset-svg/demo.html
  175. +22 −0 platforms/android/assets/www/lib/core-iconset-svg/index.html
  176. +67 −0 platforms/android/assets/www/lib/core-iconset-svg/svg-sample-icons.html
  177. +18 −0 platforms/android/assets/www/lib/core-iconset/.bower.json
  178. +4 −0 platforms/android/assets/www/lib/core-iconset/README.md
  179. +8 −0 platforms/android/assets/www/lib/core-iconset/bower.json
  180. +236 −0 platforms/android/assets/www/lib/core-iconset/core-iconset.html
  181. +95 −0 platforms/android/assets/www/lib/core-iconset/demo.html
  182. +23 −0 platforms/android/assets/www/lib/core-iconset/index.html
  183. BIN  platforms/android/assets/www/lib/core-iconset/my-icons.png
  184. +16 −0 platforms/android/assets/www/lib/core-input/.bower.json
  185. +2 −0  platforms/android/assets/www/lib/core-input/README.md
  186. +6 −0 platforms/android/assets/www/lib/core-input/bower.json
  187. +35 −0 platforms/android/assets/www/lib/core-input/core-input.css
  188. +313 −0 platforms/android/assets/www/lib/core-input/core-input.html
  189. +93 −0 platforms/android/assets/www/lib/core-input/demo.html
  190. +22 −0 platforms/android/assets/www/lib/core-input/index.html
  191. +11 −0 platforms/android/assets/www/lib/core-input/metadata.html
  192. +18 −0 platforms/android/assets/www/lib/core-item/.bower.json
  193. +4 −0 platforms/android/assets/www/lib/core-item/README.md
  194. +8 −0 platforms/android/assets/www/lib/core-item/bower.json
  195. +31 −0 platforms/android/assets/www/lib/core-item/core-item.css
  196. +72 −0 platforms/android/assets/www/lib/core-item/core-item.html
  197. +60 −0 platforms/android/assets/www/lib/core-item/demo.html
  198. +23 −0 platforms/android/assets/www/lib/core-item/index.html
  199. +15 −0 platforms/android/assets/www/lib/core-item/metadata.html
  200. +17 −0 platforms/android/assets/www/lib/core-layout-grid/.bower.json
  201. +4 −0 platforms/android/assets/www/lib/core-layout-grid/README.md
  202. +7 −0 platforms/android/assets/www/lib/core-layout-grid/bower.json
  203. +350 −0 platforms/android/assets/www/lib/core-layout-grid/core-layout-grid.html
  204. +107 −0 platforms/android/assets/www/lib/core-layout-grid/demo.html
  205. +23 −0 platforms/android/assets/www/lib/core-layout-grid/index.html
  206. +13 −0 platforms/android/assets/www/lib/core-layout-grid/metadata.html
  207. +17 −0 platforms/android/assets/www/lib/core-layout-trbl/.bower.json
  208. +4 −0 platforms/android/assets/www/lib/core-layout-trbl/README.md
  209. +7 −0 platforms/android/assets/www/lib/core-layout-trbl/bower.json
  210. +269 −0 platforms/android/assets/www/lib/core-layout-trbl/core-layout-trbl.html
  211. +181 −0 platforms/android/assets/www/lib/core-layout-trbl/core-slide.html
  212. +58 −0 platforms/android/assets/www/lib/core-layout-trbl/demo.html
  213. +23 −0 platforms/android/assets/www/lib/core-layout-trbl/index.html
  214. +17 −0 platforms/android/assets/www/lib/core-layout/.bower.json
  215. +4 −0 platforms/android/assets/www/lib/core-layout/README.md
  216. +8 −0 platforms/android/assets/www/lib/core-layout/bower.json
  217. +106 −0 platforms/android/assets/www/lib/core-layout/core-layout-host.css
  218. +216 −0 platforms/android/assets/www/lib/core-layout/core-layout.css
  219. +288 −0 platforms/android/assets/www/lib/core-layout/core-layout.html
  220. +31 −0 platforms/android/assets/www/lib/core-layout/demo-body.html
  221. +83 −0 platforms/android/assets/www/lib/core-layout/demo-css.html
  222. +87 −0 platforms/android/assets/www/lib/core-layout/demo-parent.html
  223. +82 −0 platforms/android/assets/www/lib/core-layout/demo.html
  224. +23 −0 platforms/android/assets/www/lib/core-layout/index.html
  225. +15 −0 platforms/android/assets/www/lib/core-layout/metadata.html
  226. +18 −0 platforms/android/assets/www/lib/core-list/.bower.json
  227. +4 −0 platforms/android/assets/www/lib/core-list/README.md
  228. +8 −0 platforms/android/assets/www/lib/core-list/bower.json
  229. +20 −0 platforms/android/assets/www/lib/core-list/core-list.css
  230. +403 −0 platforms/android/assets/www/lib/core-list/core-list.html
  231. +178 −0 platforms/android/assets/www/lib/core-list/demo-divider.html
  232. +154 −0 platforms/android/assets/www/lib/core-list/demo.html
  233. BIN  platforms/android/assets/www/lib/core-list/images/0.png
  234. BIN  platforms/android/assets/www/lib/core-list/images/1.png
  235. BIN  platforms/android/assets/www/lib/core-list/images/2.png
  236. BIN  platforms/android/assets/www/lib/core-list/images/3.png
  237. +22 −0 platforms/android/assets/www/lib/core-list/index.html
  238. +17 −0 platforms/android/assets/www/lib/core-localstorage/.bower.json
  239. +4 −0 platforms/android/assets/www/lib/core-localstorage/README.md
  240. +7 −0 platforms/android/assets/www/lib/core-localstorage/bower.json
  241. +128 −0 platforms/android/assets/www/lib/core-localstorage/core-localstorage.html
  242. +41 −0 platforms/android/assets/www/lib/core-localstorage/demo.html
  243. +23 −0 platforms/android/assets/www/lib/core-localstorage/index.html
  244. +17 −0 platforms/android/assets/www/lib/core-media-query/.bower.json
  245. +4 −0 platforms/android/assets/www/lib/core-media-query/README.md
  246. +7 −0 platforms/android/assets/www/lib/core-media-query/bower.json
  247. +87 −0 platforms/android/assets/www/lib/core-media-query/core-media-query.html
  248. +44 −0 platforms/android/assets/www/lib/core-media-query/demo.html
  249. +23 −0 platforms/android/assets/www/lib/core-media-query/index.html
  250. +21 −0 platforms/android/assets/www/lib/core-menu-button/.bower.json
  251. +2 −0  platforms/android/assets/www/lib/core-menu-button/README.md
  252. +11 −0 platforms/android/assets/www/lib/core-menu-button/bower.json
  253. +10 −0 platforms/android/assets/www/lib/core-menu-button/core-menu-button.css
  254. +137 −0 platforms/android/assets/www/lib/core-menu-button/core-menu-button.html
  255. +71 −0 platforms/android/assets/www/lib/core-menu-button/demo.html
  256. +23 −0 platforms/android/assets/www/lib/core-menu-button/index.html
  257. +17 −0 platforms/android/assets/www/lib/core-menu-button/metadata.html
  258. +19 −0 platforms/android/assets/www/lib/core-menu/.bower.json
  259. +4 −0 platforms/android/assets/www/lib/core-menu/README.md
  260. +9 −0 platforms/android/assets/www/lib/core-menu/bower.json
  261. +18 −0 platforms/android/assets/www/lib/core-menu/core-menu.css
  262. +62 −0 platforms/android/assets/www/lib/core-menu/core-menu.html
  263. +29 −0 platforms/android/assets/www/lib/core-menu/core-submenu.css
  264. +106 −0 platforms/android/assets/www/lib/core-menu/core-submenu.html
  265. +101 −0 platforms/android/assets/www/lib/core-menu/demo.html
  266. +23 −0 platforms/android/assets/www/lib/core-menu/index.html
  267. +55 −0 platforms/android/assets/www/lib/core-menu/metadata.html
  268. +17 −0 platforms/android/assets/www/lib/core-meta/.bower.json
  269. +4 −0 platforms/android/assets/www/lib/core-meta/README.md
  270. +7 −0 platforms/android/assets/www/lib/core-meta/bower.json
  271. +145 −0 platforms/android/assets/www/lib/core-meta/core-meta.html
  272. +58 −0 platforms/android/assets/www/lib/core-meta/demo.html
  273. +23 −0 platforms/android/assets/www/lib/core-meta/index.html
  274. +18 −0 platforms/android/assets/www/lib/core-overlay/.bower.json
  275. +4 −0 platforms/android/assets/www/lib/core-overlay/README.md
  276. +8 −0 platforms/android/assets/www/lib/core-overlay/bower.json
  277. +19 −0 platforms/android/assets/www/lib/core-overlay/core-key-helper.html
  278. +112 −0 platforms/android/assets/www/lib/core-overlay/core-overlay-layer.html
  279. +662 −0 platforms/android/assets/www/lib/core-overlay/core-overlay.html
  280. +145 −0 platforms/android/assets/www/lib/core-overlay/demo.html
  281. +23 −0 platforms/android/assets/www/lib/core-overlay/index.html
  282. +17 −0 platforms/android/assets/www/lib/core-pages/.bower.json
  283. +4 −0 platforms/android/assets/www/lib/core-pages/README.md
  284. +7 −0 platforms/android/assets/www/lib/core-pages/bower.json
  285. +30 −0 platforms/android/assets/www/lib/core-pages/core-pages.css
  286. +44 −0 platforms/android/assets/www/lib/core-pages/core-pages.html
  287. +130 −0 platforms/android/assets/www/lib/core-pages/demo.html
  288. +23 −0 platforms/android/assets/www/lib/core-pages/index.html
  289. +16 −0 platforms/android/assets/www/lib/core-pages/metadata.html
  290. +17 −0 platforms/android/assets/www/lib/core-range/.bower.json
  291. +2 −0  platforms/android/assets/www/lib/core-range/README.md
  292. +7 −0 platforms/android/assets/www/lib/core-range/bower.json
  293. +108 −0 platforms/android/assets/www/lib/core-range/core-range.html
  294. +55 −0 platforms/android/assets/www/lib/core-range/demo.html
  295. +22 −0 platforms/android/assets/www/lib/core-range/index.html
  296. +20 −0 platforms/android/assets/www/lib/core-scaffold/.bower.json
  297. +4 −0 platforms/android/assets/www/lib/core-scaffold/README.md
  298. +10 −0 platforms/android/assets/www/lib/core-scaffold/bower.json
  299. +147 −0 platforms/android/assets/www/lib/core-scaffold/core-scaffold.html
  300. +82 −0 platforms/android/assets/www/lib/core-scaffold/demo.html
Sorry, we could not display the entire diff because too many files (2,185) changed.
2  platforms/android/CordovaLib/ant-build/build.prop
View
@@ -1,5 +1,5 @@
#Last build type
-#Wed, 09 Jul 2014 20:58:20 -0700
+#Mon, 14 Jul 2014 01:09:51 -0700
build.last.target=debug
BIN  platforms/android/ant-build/HelloCordova-debug-unaligned.apk
View
Binary file not shown
BIN  platforms/android/ant-build/HelloCordova-debug.apk
View
Binary file not shown
BIN  platforms/android/ant-build/HelloCordova.ap_
View
Binary file not shown
1,106 platforms/android/ant-build/HelloCordova.ap_.d
View
1,106 additions, 0 deletions not shown
2  platforms/android/ant-build/build.prop
View
@@ -1,5 +1,5 @@
#Last build type
-#Wed, 09 Jul 2014 20:58:28 -0700
+#Mon, 14 Jul 2014 01:10:06 -0700
build.last.target=debug
18 platforms/android/assets/www/css/main.css
View
@@ -91,7 +91,7 @@ input.MessageBox {
}
/* Empty. Add your own CSS if you like */
.background {
- background-color: #FFCC00;
+ background-color: #3F51B5;
}
.chatWrapper {
padding-right: 15px;
@@ -113,8 +113,7 @@ input.MessageBox {
.noti_bubble {
position: absolute;
- top: 1px;
- right: -3px;
+ top: 10px;
line-height: 19px;
background-color: rgba(255, 186, 0, 0.91);
color: white;
@@ -316,8 +315,17 @@ a.nameofPerson {
position: relative;
cursor: pointer;
float:right;
- margin-top:15%;
- margin-right:-1%;
+ margin-top:20%;
+ margin-right:-5%;
+ z-index: 10000;
}
+/*Hamburger menu icon */
+paper-icon-button {
+ z-index: 1000;
+}
+
+paper-input {
+ margin-bottom: -25px;
+}
4 platforms/android/assets/www/index.html
View
@@ -20,6 +20,10 @@
<script src="lib/firebase-simple-login/firebase-simple-login.js"></script>
<script src="lib/angularfire/angularfire.js"></script>
<script src="lib/moment/moment.js"></script>
+ <script src="lib/platform/platform.js"></script>
+
+ <link rel="import" href="lib/core-elements/core-elements.html">
+ <link rel="import" href="lib/paper-elements/paper-elements.html">
<!-- cordova script (this will be a 404 during development) -->
<script src="cordova.js"></script>
10 platforms/android/assets/www/lib/angular-animate/.bower.json
View
@@ -1,16 +1,16 @@
{
"name": "angular-animate",
- "version": "1.2.18",
+ "version": "1.2.19",
"main": "./angular-animate.js",
"dependencies": {
- "angular": "1.2.18"
+ "angular": "1.2.19"
},
"homepage": "https://github.com/angular/bower-angular-animate",
- "_release": "1.2.18",
+ "_release": "1.2.19",
"_resolution": {
"type": "version",
- "tag": "v1.2.18",
- "commit": "cd5a97b990643e831802256cbfd3c39f0372fd3b"
+ "tag": "v1.2.19",
+ "commit": "d9347fd5a2424d116de0b6f60634dd7db998abb5"
},
"_source": "git://github.com/angular/bower-angular-animate.git",
"_target": "~1.2.17",
2  platforms/android/assets/www/lib/angular-animate/angular-animate.js
View
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.2.18
+ * @license AngularJS v1.2.19
* (c) 2010-2014 Google, Inc. http://angularjs.org
* License: MIT
*/
2  platforms/android/assets/www/lib/angular-animate/angular-animate.min.js
View
@@ -1,5 +1,5 @@
/*
- AngularJS v1.2.18
+ AngularJS v1.2.19
(c) 2010-2014 Google, Inc. http://angularjs.org
License: MIT
*/
4 platforms/android/assets/www/lib/angular-animate/bower.json
View
@@ -1,8 +1,8 @@
{
"name": "angular-animate",
- "version": "1.2.18",
+ "version": "1.2.19",
"main": "./angular-animate.js",
"dependencies": {
- "angular": "1.2.18"
+ "angular": "1.2.19"
}
}
10 platforms/android/assets/www/lib/angular-sanitize/.bower.json
View
@@ -1,16 +1,16 @@
{
"name": "angular-sanitize",
- "version": "1.2.18",
+ "version": "1.2.19",
"main": "./angular-sanitize.js",
"dependencies": {
- "angular": "1.2.18"
+ "angular": "1.2.19"
},
"homepage": "https://github.com/angular/bower-angular-sanitize",
- "_release": "1.2.18",
+ "_release": "1.2.19",
"_resolution": {
"type": "version",
- "tag": "v1.2.18",
- "commit": "8b012cfe691a5e7bc95de08e764595f7dc7ee223"
+ "tag": "v1.2.19",
+ "commit": "47d0c2ebf176af4a9318192b95f71807d492a148"
},
"_source": "git://github.com/angular/bower-angular-sanitize.git",
"_target": "~1.2.17",
2  platforms/android/assets/www/lib/angular-sanitize/angular-sanitize.js
View
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.2.18
+ * @license AngularJS v1.2.19
* (c) 2010-2014 Google, Inc. http://angularjs.org
* License: MIT
*/
2  platforms/android/assets/www/lib/angular-sanitize/angular-sanitize.min.js
View
@@ -1,5 +1,5 @@
/*
- AngularJS v1.2.18
+ AngularJS v1.2.19
(c) 2010-2014 Google, Inc. http://angularjs.org
License: MIT
*/
4 platforms/android/assets/www/lib/angular-sanitize/bower.json
View
@@ -1,8 +1,8 @@
{
"name": "angular-sanitize",
- "version": "1.2.18",
+ "version": "1.2.19",
"main": "./angular-sanitize.js",
"dependencies": {
- "angular": "1.2.18"
+ "angular": "1.2.19"
}
}
10 platforms/android/assets/www/lib/angular/.bower.json
View
@@ -1,16 +1,16 @@
{
"name": "angular",
- "version": "1.2.18",
+ "version": "1.2.19",
"main": "./angular.js",
"dependencies": {},
"homepage": "https://github.com/angular/bower-angular",
- "_release": "1.2.18",
+ "_release": "1.2.19",
"_resolution": {
"type": "version",
- "tag": "v1.2.18",
- "commit": "0ca814f33e56902d1500e4d5a6742d09f089b3af"
+ "tag": "v1.2.19",
+ "commit": "2e1f8c4614d514b2e522c996d24f05a823b46936"
},
"_source": "git://github.com/angular/bower-angular.git",
- "_target": "~1.2.17",
+ "_target": ">= 1.0.8",
"_originalSource": "angular"
}
224 platforms/android/assets/www/lib/angular/angular.js
View
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.2.18
+ * @license AngularJS v1.2.19
* (c) 2010-2014 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -68,7 +68,7 @@ function minErr(module) {
return match;
});
- message = message + '\nhttp://errors.angularjs.org/1.2.18/' +
+ message = message + '\nhttp://errors.angularjs.org/1.2.19/' +
(module ? module + '/' : '') + code;
for (i = 2; i < arguments.length; i++) {
message = message + (i == 2 ? '?' : '&') + 'p' + (i-2) + '=' +
@@ -92,6 +92,7 @@ function minErr(module) {
-angularModule,
-nodeName_,
-uid,
+ -VALIDITY_STATE_PROPERTY,
-lowercase,
-uppercase,
@@ -181,6 +182,10 @@ function minErr(module) {
* <div doc-module-components="ng"></div>
*/
+// The name of a form control's ValidityState property.
+// This is used so that it's possible for internal tests to create mock ValidityStates.
+var VALIDITY_STATE_PROPERTY = 'validity';
+
/**
* @ngdoc function
* @name angular.lowercase
@@ -1353,7 +1358,7 @@ function angularInit(element, bootstrap) {
*
* Angular will detect if it has been loaded into the browser more than once and only allow the
* first loaded script to be bootstrapped and will report a warning to the browser console for
- * each of the subsequent scripts. This prevents strange results in applications, where otherwise
+ * each of the subsequent scripts. This prevents strange results in applications, where otherwise
* multiple instances of Angular try to work on the DOM.
*
* <example name="multi-bootstrap" module="multi-bootstrap">
@@ -1483,7 +1488,7 @@ function assertArgFn(arg, name, acceptArrayAnnotation) {
}
assertArg(isFunction(arg), name, 'not a function, got ' +
- (arg && typeof arg == 'object' ? arg.constructor.name || 'Object' : typeof arg));
+ (arg && typeof arg === 'object' ? arg.constructor.name || 'Object' : typeof arg));
return arg;
}
@@ -1953,11 +1958,11 @@ function setupModuleLoader(window) {
* - `codeName` – `{string}` – Code name of the release, such as "jiggling-armfat".
*/
var version = {
- full: '1.2.18', // all of these placeholder strings will be replaced by grunt's
+ full: '1.2.19', // all of these placeholder strings will be replaced by grunt's
major: 1, // package task
minor: 2,
- dot: 18,
- codeName: 'ear-extendability'
+ dot: 19,
+ codeName: 'precognitive-flashbacks'
};
@@ -2179,8 +2184,9 @@ function publishExternalAPI(angular){
* @returns {Object} jQuery object.
*/
+JQLite.expando = 'ng339';
+
var jqCache = JQLite.cache = {},
- jqName = JQLite.expando = 'ng' + new Date().getTime(),
jqId = 1,
addEventListenerFn = (window.document.addEventListener
? function(element, type, fn) {element.addEventListener(type, fn, false);}
@@ -2390,7 +2396,7 @@ function jqLiteOff(element, type, fn, unsupported) {
}
function jqLiteRemoveData(element, name) {
- var expandoId = element[jqName],
+ var expandoId = element.ng339,
expandoStore = jqCache[expandoId];
if (expandoStore) {
@@ -2404,17 +2410,17 @@ function jqLiteRemoveData(element, name) {
jqLiteOff(element);
}
delete jqCache[expandoId];
- element[jqName] = undefined; // ie does not allow deletion of attributes on elements.
+ element.ng339 = undefined; // don't delete DOM expandos. IE and Chrome don't like it
}
}
function jqLiteExpandoStore(element, key, value) {
- var expandoId = element[jqName],
+ var expandoId = element.ng339,
expandoStore = jqCache[expandoId || -1];
if (isDefined(value)) {
if (!expandoStore) {
- element[jqName] = expandoId = jqNextId();
+ element.ng339 = expandoId = jqNextId();
expandoStore = jqCache[expandoId] = {};
}
expandoStore[key] = value;
@@ -3081,16 +3087,16 @@ forEach({
* @returns {string} hash string such that the same input will have the same hash string.
* The resulting string key is in 'type:hashKey' format.
*/
-function hashKey(obj) {
+function hashKey(obj, nextUidFn) {
var objType = typeof obj,
key;
- if (objType == 'object' && obj !== null) {
+ if (objType == 'function' || (objType == 'object' && obj !== null)) {
if (typeof (key = obj.$$hashKey) == 'function') {
// must invoke on object to keep the right this
key = obj.$$hashKey();
} else if (key === undefined) {
- key = obj.$$hashKey = nextUid();
+ key = obj.$$hashKey = (nextUidFn || nextUid)();
}
} else {
key = obj;
@@ -3102,7 +3108,13 @@ function hashKey(obj) {
/**
* HashMap which can use objects as keys
*/
-function HashMap(array){
+function HashMap(array, isolatedUid) {
+ if (isolatedUid) {
+ var uid = 0;
+ this.nextUid = function() {
+ return ++uid;
+ };
+ }
forEach(array, this.put, this);
}
HashMap.prototype = {
@@ -3112,7 +3124,7 @@ HashMap.prototype = {
* @param value value to store can be any type
*/
put: function(key, value) {
- this[hashKey(key)] = value;
+ this[hashKey(key, this.nextUid)] = value;
},
/**
@@ -3120,7 +3132,7 @@ HashMap.prototype = {
* @returns {Object} the value for the key
*/
get: function(key) {
- return this[hashKey(key)];
+ return this[hashKey(key, this.nextUid)];
},
/**
@@ -3128,7 +3140,7 @@ HashMap.prototype = {
* @param key
*/
remove: function(key) {
- var value = this[key = hashKey(key)];
+ var value = this[key = hashKey(key, this.nextUid)];
delete this[key];
return value;
}
@@ -3206,7 +3218,7 @@ function annotate(fn) {
argDecl,
last;
- if (typeof fn == 'function') {
+ if (typeof fn === 'function') {
if (!($inject = fn.$inject)) {
$inject = [];
if (fn.length) {
@@ -3419,7 +3431,7 @@ function annotate(fn) {
/**
- * @ngdoc object
+ * @ngdoc service
* @name $provide
*
* @description
@@ -3725,7 +3737,7 @@ function createInjector(modulesToLoad) {
var INSTANTIATING = {},
providerSuffix = 'Provider',
path = [],
- loadedModules = new HashMap(),
+ loadedModules = new HashMap([], true),
providerCache = {
$provide: {
provider: supportObject(provider),
@@ -3896,8 +3908,7 @@ function createInjector(modulesToLoad) {
: getService(key)
);
}
- if (!fn.$inject) {
- // this means that we must be an array.
+ if (isArray(fn)) {
fn = fn[length];
}
@@ -6078,7 +6089,7 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
directiveNormalize(nodeName_(node).toLowerCase()), 'E', maxPriority, ignoreDirective);
// iterate over the attributes
- for (var attr, name, nName, ngAttrName, value, nAttrs = node.attributes,
+ for (var attr, name, nName, ngAttrName, value, isNgAttr, nAttrs = node.attributes,
j = 0, jj = nAttrs && nAttrs.length; j < jj; j++) {
var attrStartName = false;
var attrEndName = false;
@@ -6086,9 +6097,11 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
attr = nAttrs[j];
if (!msie || msie >= 8 || attr.specified) {
name = attr.name;
+ value = trim(attr.value);
+
// support ngAttr attribute binding
ngAttrName = directiveNormalize(name);
- if (NG_ATTR_BINDING.test(ngAttrName)) {
+ if (isNgAttr = NG_ATTR_BINDING.test(ngAttrName)) {
name = snake_case(ngAttrName.substr(6), '-');
}
@@ -6101,9 +6114,11 @@ function $CompileProvider($provide, $$sanitizeUriProvider) {
nName = directiveNormalize(name.toLowerCase());
attrsMap[nName] = name;
- attrs[nName] = value = trim(attr.value);
- if (getBooleanAttrName(node, nName)) {
- attrs[nName] = true; // presence means true
+ if (isNgAttr || !attrs.hasOwnProperty(nName)) {
+ attrs[nName] = value;
+ if (getBooleanAttrName(node, nName)) {
+ attrs[nName] = true; // presence means true
+ }
}
addAttrInterpolateDirective(node, directives, value, nName);
addDirective(directives, nName, 'A', maxPriority, ignoreDirective, attrStartName,
@@ -7201,7 +7216,7 @@ function $ControllerProvider() {
instance = $injector.instantiate(expression, locals);
if (identifier) {
- if (!(locals && typeof locals.$scope == 'object')) {
+ if (!(locals && typeof locals.$scope === 'object')) {
throw minErr('$controller')('noscp',
"Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",
constructor || expression.name, identifier);
@@ -8403,7 +8418,8 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
// Safari respectively.
if (xhr && xhr.readyState == 4) {
var responseHeaders = null,
- response = null;
+ response = null,
+ statusText = '';
if(status !== ABORTED) {
responseHeaders = xhr.getAllResponseHeaders();
@@ -8413,11 +8429,17 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
response = ('response' in xhr) ? xhr.response : xhr.responseText;
}
+ // Accessing statusText on an aborted xhr object will
+ // throw an 'c00c023f error' in IE9 and lower, don't touch it.
+ if (!(status === ABORTED && msie < 10)) {
+ statusText = xhr.statusText;
+ }
+
completeRequest(callback,
status || xhr.status,
response,
responseHeaders,
- xhr.statusText || '');
+ statusText);
}
};
@@ -8951,7 +8973,7 @@ function $IntervalProvider() {
interval.cancel = function(promise) {
if (promise && promise.$$intervalId in intervals) {
intervals[promise.$$intervalId].reject('canceled');
- clearInterval(promise.$$intervalId);
+ $window.clearInterval(promise.$$intervalId);
delete intervals[promise.$$intervalId];
return true;
}
@@ -9585,7 +9607,7 @@ function $LocationProvider(){
html5Mode = false;
/**
- * @ngdoc property
+ * @ngdoc method
* @name $locationProvider#hashPrefix
* @description
* @param {string=} prefix Prefix for hash part (containing path and search)
@@ -9601,7 +9623,7 @@ function $LocationProvider(){
};
/**
- * @ngdoc property
+ * @ngdoc method
* @name $locationProvider#html5Mode
* @description
* @param {boolean=} mode Use HTML5 strategy if available.
@@ -9959,14 +9981,7 @@ var promiseWarning;
//
// As an example, consider the following Angular expression:
//
-// {}.toString.constructor(alert("evil JS code"))
-//
-// We want to prevent this type of access. For the sake of performance, during the lexing phase we
-// disallow any "dotted" access to any member named "constructor".
-//
-// For reflective calls (a[b]) we check that the value of the lookup is not the Function constructor
-// while evaluating the expression, which is a stronger but more expensive test. Since reflective
-// calls are expensive anyway, this is not such a big deal compared to static dereferencing.
+// {}.toString.constructor('alert("evil JS code")')
//
// This sandboxing technique is not perfect and doesn't aim to be. The goal is to prevent exploits
// against the expression language, but not to prevent exploits that were enabled by exposing
@@ -9974,17 +9989,19 @@ var promiseWarning;
// practice and therefore we are not even trying to protect against interaction with an object
// explicitly exposed in this way.
//
-// A developer could foil the name check by aliasing the Function constructor under a different
-// name on the scope.
-//
// In general, it is not possible to access a Window object from an angular expression unless a
// window or some DOM object that has a reference to window is published onto a Scope.
+// Similarly we prevent invocations of function known to be dangerous, as well as assignments to
+// native objects.
+
function ensureSafeMemberName(name, fullExpression) {
- if (name === "constructor") {
+ if (name === "__defineGetter__" || name === "__defineSetter__"
+ || name === "__lookupGetter__" || name === "__lookupSetter__"
+ || name === "__proto__") {
throw $parseMinErr('isecfld',
- 'Referencing "constructor" field in Angular expressions is disallowed! Expression: {0}',
- fullExpression);
+ 'Attempting to access a disallowed field in Angular expressions! '
+ +'Expression: {0}', fullExpression);
}
return name;
}
@@ -10006,11 +10023,34 @@ function ensureSafeObject(obj, fullExpression) {
throw $parseMinErr('isecdom',
'Referencing DOM nodes in Angular expressions is disallowed! Expression: {0}',
fullExpression);
+ } else if (// block Object so that we can't get hold of dangerous Object.* methods
+ obj === Object) {
+ throw $parseMinErr('isecobj',
+ 'Referencing Object in Angular expressions is disallowed! Expression: {0}',
+ fullExpression);
}
}
return obj;
}
+var CALL = Function.prototype.call;
+var APPLY = Function.prototype.apply;
+var BIND = Function.prototype.bind;
+
+function ensureSafeFunction(obj, fullExpression) {
+ if (obj) {
+ if (obj.constructor === obj) {
+ throw $parseMinErr('isecfn',
+ 'Referencing Function in Angular expressions is disallowed! Expression: {0}',
+ fullExpression);
+ } else if (obj === CALL || obj === APPLY || (BIND && obj === BIND)) {
+ throw $parseMinErr('isecff',
+ 'Referencing call, apply or bind in Angular expressions is disallowed! Expression: {0}',
+ fullExpression);
+ }
+ }
+}
+
var OPERATORS = {
/* jshint bitwise : false */
'null':function(){return null;},
@@ -10645,6 +10685,7 @@ Parser.prototype = {
i = indexFn(self, locals),
v, p;
+ ensureSafeMemberName(i, parser.text);
if (!o) return undefined;
v = ensureSafeObject(o[i], parser.text);
if (v && v.then && parser.options.unwrapPromises) {
@@ -10687,7 +10728,7 @@ Parser.prototype = {
var fnPtr = fn(scope, locals, context) || noop;
ensureSafeObject(context, parser.text);
- ensureSafeObject(fnPtr, parser.text);
+ ensureSafeFunction(fnPtr, parser.text);
// IE stupidity! (IE doesn't have apply for some native functions)
var v = fnPtr.apply
@@ -10796,6 +10837,8 @@ function setter(obj, path, setValue, fullExp, options) {
}
}
key = ensureSafeMemberName(element.shift(), fullExp);
+ ensureSafeObject(obj, fullExp);
+ ensureSafeObject(obj[key], fullExp);
obj[key] = setValue;
return setValue;
}
@@ -11215,17 +11258,13 @@ function $ParseProvider() {
* var deferred = $q.defer();
*
* setTimeout(function() {
- * // since this fn executes async in a future turn of the event loop, we need to wrap
- * // our code into an $apply call so that the model changes are properly observed.
- * scope.$apply(function() {
- * deferred.notify('About to greet ' + name + '.');
- *
- * if (okToGreet(name)) {
- * deferred.resolve('Hello, ' + name + '!');
- * } else {
- * deferred.reject('Greeting ' + name + ' is not allowed.');
- * }
- * });
+ * deferred.notify('About to greet ' + name + '.');
+ *
+ * if (okToGreet(name)) {
+ * deferred.resolve('Hello, ' + name + '!');
+ * } else {
+ * deferred.reject('Greeting ' + name + ' is not allowed.');
+ * }
* }, 1000);
*
* return deferred.promise;
@@ -12387,7 +12426,7 @@ function $RootScopeProvider(){
if ((value = watch.get(current)) !== (last = watch.last) &&
!(watch.eq
? equals(value, last)
- : (typeof value == 'number' && typeof last == 'number'
+ : (typeof value === 'number' && typeof last === 'number'
&& isNaN(value) && isNaN(last)))) {
dirty = true;
lastDirtyWatch = watch;
@@ -13732,7 +13771,7 @@ function $SceProvider() {
/**
* @ngdoc method
- * @name $sce#parse
+ * @name $sce#parseAs
*
* @description
* Converts Angular {@link guide/expression expression} into a function. This is like {@link
@@ -14688,7 +14727,7 @@ function filterFilter() {
// jshint +W086
for (var key in expression) {
(function(path) {
- if (typeof expression[path] == 'undefined') return;
+ if (typeof expression[path] === 'undefined') return;
predicates.push(function(value) {
return search(path == '$' ? value : (value && value[path]), expression[path]);
});
@@ -14843,6 +14882,7 @@ function formatNumber(number, pattern, groupSep, decimalSep, fractionSize) {
var match = numStr.match(/([\d\.]+)e(-?)(\d+)/);
if (match && match[2] == '-' && match[3] > fractionSize + 1) {
numStr = '0';
+ number = 0;
} else {
formatedText = numStr;
hasExponent = true;
@@ -14857,8 +14897,11 @@ function formatNumber(number, pattern, groupSep, decimalSep, fractionSize) {
fractionSize = Math.min(Math.max(pattern.minFrac, fractionLen), pattern.maxFrac);
}
- var pow = Math.pow(10, fractionSize + 1);
- number = Math.floor(number * pow + 5) / pow;
+ // safely round numbers in JS without hitting imprecisions of floating-point arithmetics
+ // inspired by:
+ // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/round
+ number = +(Math.round(+(number.toString() + 'e' + fractionSize)).toString() + 'e' + -fractionSize);
+
var fraction = ('' + number).split(DECIMAL_SEP);
var whole = fraction[0];
fraction = fraction[1] || '';
@@ -16360,7 +16403,7 @@ var ngFormDirective = formDirectiveFactory(true);
*/
var URL_REGEXP = /^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/;
-var EMAIL_REGEXP = /^[a-z0-9!#$%&'*+/=?^_`{|}~.-]+@[a-z0-9-]+(\.[a-z0-9-]+)*$/i;
+var EMAIL_REGEXP = /^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9-]+(\.[a-z0-9-]+)*$/i;
var NUMBER_REGEXP = /^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/;
var inputType = {
@@ -16786,15 +16829,29 @@ function validate(ctrl, validatorName, validity, value){
return validity ? value : undefined;
}
+function testFlags(validity, flags) {
+ var i, flag;
+ if (flags) {
+ for (i=0; i<flags.length; ++i) {
+ flag = flags[i];
+ if (validity[flag]) {
+ return true;
+ }
+ }
+ }
+ return false;
+}
-function addNativeHtml5Validators(ctrl, validatorName, element) {
- var validity = element.prop('validity');
+// Pass validity so that behaviour can be mocked easier.
+function addNativeHtml5Validators(ctrl, validatorName, badFlags, ignoreFlags, validity) {
if (isObject(validity)) {
+ ctrl.$$hasNativeValidators = true;
var validator = function(value) {
// Don't overwrite previous validation, don't consider valueMissing to apply (ng-required can
// perform the required validation)
- if (!ctrl.$error[validatorName] && (validity.badInput || validity.customError ||
- validity.typeMismatch) && !validity.valueMissing) {
+ if (!ctrl.$error[validatorName] &&
+ !testFlags(validity, ignoreFlags) &&
+ testFlags(validity, badFlags)) {
ctrl.$setValidity(validatorName, false);
return;
}
@@ -16805,8 +16862,9 @@ function addNativeHtml5Validators(ctrl, validatorName, element) {
}
function textInputType(scope, element, attr, ctrl, $sniffer, $browser) {
- var validity = element.prop('validity');
+ var validity = element.prop(VALIDITY_STATE_PROPERTY);
var placeholder = element[0].placeholder, noevent = {};
+ ctrl.$$validityState = validity;
// In composition mode, users are still inputing intermediate text buffer,
// hold the listener until composition is done.
@@ -16844,11 +16902,11 @@ function textInputType(scope, element, attr, ctrl, $sniffer, $browser) {
value = trim(value);
}
- if (ctrl.$viewValue !== value ||
- // If the value is still empty/falsy, and there is no `required` error, run validators
- // again. This enables HTML5 constraint validation errors to affect Angular validation
- // even when the first character entered causes an error.
- (validity && value === '' && !validity.valueMissing)) {
+ // If a control is suffering from bad input, browsers discard its value, so it may be
+ // necessary to revalidate even if the control's value is the same empty value twice in
+ // a row.
+ var revalidate = validity && ctrl.$$hasNativeValidators;
+ if (ctrl.$viewValue !== value || (value === '' && revalidate)) {
if (scope.$$phase) {
ctrl.$setViewValue(value);
} else {
@@ -16954,6 +17012,8 @@ function textInputType(scope, element, attr, ctrl, $sniffer, $browser) {
}
}
+var numberBadFlags = ['badInput'];
+
function numberInputType(scope, element, attr, ctrl, $sniffer, $browser) {
textInputType(scope, element, attr, ctrl, $sniffer, $browser);
@@ -16968,7 +17028,7 @@ function numberInputType(scope, element, attr, ctrl, $sniffer, $browser) {
}
});
- addNativeHtml5Validators(ctrl, 'number', element);
+ addNativeHtml5Validators(ctrl, 'number', numberBadFlags, null, ctrl.$$validityState);
ctrl.$formatters.push(function(value) {
return ctrl.$isEmpty(value) ? '' : '' + value;
@@ -17450,7 +17510,7 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
* This method should be called by validators - i.e. the parser or formatter functions.
*
* @param {string} validationErrorKey Name of the validator. the `validationErrorKey` will assign
- * to `$error[validationErrorKey]=isValid` so that it is available for data-binding.
+ * to `$error[validationErrorKey]=!isValid` so that it is available for data-binding.
* The `validationErrorKey` should be in camelCase and will get converted into dash-case
* for class name. Example: `myError` will result in `ng-valid-my-error` and `ng-invalid-my-error`
* class and can be bound to as `{{someForm.someControl.$error.myError}}` .
@@ -19834,7 +19894,7 @@ var ngNonBindableDirective = ngDirective({ terminal: true, priority: 1000 });
* When one person, perhaps John, views the document, "John is viewing" will be shown.
* When three people view the document, no explicit number rule is found, so
* an offset of 2 is taken off 3, and Angular uses 1 to decide the plural category.
- * In this case, plural category 'one' is matched and "John, Marry and one other person are viewing"
+ * In this case, plural category 'one' is matched and "John, Mary and one other person are viewing"
* is shown.
*
* Note that when you specify offsets, you must provide explicit number rules for
@@ -20716,7 +20776,7 @@ var ngHideDirective = ['$animate', function($animate) {
<file name="protractor.js" type="protractor">
var colorSpan = element(by.css('span'));
- iit('should check ng-style', function() {
+ it('should check ng-style', function() {
expect(colorSpan.getCssValue('color')).toBe('rgba(0, 0, 0, 1)');
element(by.css('input[value=\'set color\']')).click();
expect(colorSpan.getCssValue('color')).toBe('rgba(255, 0, 0, 1)');
@@ -21609,7 +21669,7 @@ var selectDirective = ['$compile', '$parse', function($compile, $parse) {
// rather then the element.
(element = optionTemplate.clone())
.val(option.id)
- .attr('selected', option.selected)
+ .prop('selected', option.selected)
.text(option.label);
}
417 platforms/android/assets/www/lib/angular/angular.min.js
View
209 additions, 208 deletions not shown
BIN  platforms/android/assets/www/lib/angular/angular.min.js.gzip
View
Binary file not shown
6 platforms/android/assets/www/lib/angular/angular.min.js.map
View
3 additions, 3 deletions not shown
2  platforms/android/assets/www/lib/angular/bower.json
View
@@ -1,6 +1,6 @@
{
"name": "angular",
- "version": "1.2.18",
+ "version": "1.2.19",
"main": "./angular.js",
"dependencies": {
}
15 platforms/android/assets/www/lib/context-free-parser/.bower.json
View
@@ -0,0 +1,15 @@
+{
+ "name": "context-free-parser",
+ "private": true,
+ "dependencies": {},
+ "homepage": "https://github.com/Polymer/context-free-parser",
+ "_release": "ffc44a4e3e",
+ "_resolution": {
+ "type": "branch",
+ "branch": "master",
+ "commit": "ffc44a4e3ee4aa504ac531c663e66b68b11a9902"
+ },
+ "_source": "git://github.com/Polymer/context-free-parser.git",
+ "_target": "master",
+ "_originalSource": "Polymer/context-free-parser"
+}
4 platforms/android/assets/www/lib/context-free-parser/README.md
View
@@ -0,0 +1,4 @@
+context-free-parser
+===================
+
+See the [component landing page](http://polymer.github.io/context-free-parser) for more information.
6 platforms/android/assets/www/lib/context-free-parser/bower.json
View
@@ -0,0 +1,6 @@
+{
+ "name": "context-free-parser",
+ "private": true,
+ "dependencies": {
+ }
+}
40 platforms/android/assets/www/lib/context-free-parser/context-free-parser.html
View
@@ -0,0 +1,40 @@
+<script src="context-free-parser.js"></script>
+<link rel="import" href="../core-ajax/core-ajax.html">
+
+<!--
+Scrapes source documentation data from input text or url.
+
+@class context-free-parser
+-->
+<polymer-element name="context-free-parser" attributes="url text data">
+<template>
+
+ <core-ajax url="{{url}}" response="{{text}}" auto></core-ajax>
+
+</template>
+<script>
+
+ Polymer('context-free-parser', {
+
+ text: null,
+
+ textChanged: function() {
+ if (this.text) {
+ var entities = ContextFreeParser.parse(this.text);
+ if (!entities || entities.length === 0) {
+ entities = [
+ {name: this.url.split('/').pop(), description: '**Undocumented**'}
+ ];
+ }
+ this.data = { classes: entities };
+ }
+ },
+
+ dataChanged: function() {
+ this.fire('data-ready');
+ }
+
+ });
+
+</script>
+</polymer-element>
105 platforms/android/assets/www/lib/context-free-parser/context-free-parser.js
View
@@ -0,0 +1,105 @@
+(function(scope) {
+
+ var ContextFreeParser = {
+ parse: function(text) {
+ var top = {};
+ var entities = [];
+ var current = top;
+ var subCurrent = {};
+
+ var scriptDocCommentClause = '\\/\\*\\*([\\s\\S]*?)\\*\\/';
+ var htmlDocCommentClause = '<!--([\\s\\S]*?)-->';
+
+ // matches text between /** and */ inclusive and <!-- and --> inclusive
+ var docCommentRegex = new RegExp(scriptDocCommentClause + '|' + htmlDocCommentClause, 'g');
+
+ // acquire all script doc comments
+ var docComments = text.match(docCommentRegex) || [];
+
+ // each match represents a single block of doc comments
+ docComments.forEach(function(m) {
+ // unify line ends, remove all comment characters, split into individual lines
+ var lines = m.replace(/\r\n/g, '\n').replace(/^\s*\/\*\*|^\s*\*\/|^\s*\* ?|^\s*\<\!-\-|^s*\-\-\>/gm, '').split('\n');
+
+ // pragmas (@-rules) must occur on a line by themselves
+ var pragmas = [];
+ // filter lines whose first non-whitespace character is @ into the pragma list
+ // (and out of the `lines` array)
+ lines = lines.filter(function(l) {
+ var m = l.match(/\s*@([\w-]*) (.*)/);
+ if (!m) {
+ return true;
+ }
+ pragmas.push(m);
+ });
+
+ // collect all other text into a single block
+ var code = lines.join('\n');
+
+ // process pragmas
+ pragmas.forEach(function(m) {
+ var pragma = m[1], content = m[2];
+ switch (pragma) {
+
+ // currently all entities are either @class or @element
+ case 'class':
+ case 'element':
+ current = {
+ name: content,
+ description: code
+ };
+ entities.push(current);
+ break;
+
+ // an entity may have these describable sub-features
+ case 'attribute':
+ case 'property':
+ case 'method':
+ case 'event':
+ subCurrent = {
+ name: content,
+ description: code
+ };
+ var label = pragma == 'property' ? 'properties' : pragma + 's';
+ makePragma(current, label, subCurrent);
+ break;
+
+ // sub-feature pragmas
+ case 'default':
+ case 'type':
+ subCurrent[pragma] = content;
+ break;
+
+ // everything else
+ default:
+ current[pragma] = content;
+ break;
+ }
+ });
+
+ // utility function, yay hoisting
+ function makePragma(object, pragma, content) {
+ var p$ = object;
+ var p = p$[pragma];
+ if (!p) {
+ p$[pragma] = p = [];
+ }
+ p.push(content);
+ }
+
+ });
+
+ if (entities.length === 0) {
+ entities.push({name: 'Entity', description: '**Undocumented**'});
+ }
+ return entities;
+ }
+ };
+
+ if (typeof module !== 'undefined' && module.exports) {
+ module.exports = ContextFreeParser;
+ } else {
+ scope.ContextFreeParser = ContextFreeParser;
+ }
+
+})(this);
25 platforms/android/assets/www/lib/context-free-parser/demo.html
View
@@ -0,0 +1,25 @@
+<!doctype html>
+<html>
+<head>
+
+ <title>context-free-parser</title>
+
+ <script src="../platform/platform.js"></script>
+
+ <link rel="import" href="context-free-parser.html">
+
+</head>
+
+<body unresolved>
+
+ <context-free-parser url="../core-ajax/core-ajax.html"></context-free-parser>
+
+ <script>
+ addEventListener('data-ready', function(event) {
+ console.dir(event.target.data);
+ });
+ </script>
+
+</body>
+
+</html>
23 platforms/android/assets/www/lib/context-free-parser/index.html
View
@@ -0,0 +1,23 @@
+<!doctype html>
+<!--
+Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE
+The complete set of authors may be found at http://polymer.github.io/AUTHORS
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS
+Code distributed by Google as part of the polymer project is also
+subject to an additional IP rights grant found at http://polymer.github.io/PATENTS
+-->
+<html>
+<head>
+
+ <script src="../platform/platform.js"></script>
+ <link rel="import" href="../polymer/polymer.html">
+ <link rel="import" href="../core-component-page/core-component-page.html">
+
+</head>
+<body unresolved>
+
+ <core-component-page></core-component-page>
+
+</body>
+</html>
17 platforms/android/assets/www/lib/core-ajax/.bower.json
View
@@ -0,0 +1,17 @@
+{
+ "name": "core-ajax",
+ "private": true,
+ "dependencies": {
+ "polymer": "Polymer/polymer#master"
+ },
+ "homepage": "https://github.com/Polymer/core-ajax",
+ "_release": "aa874e674c",
+ "_resolution": {
+ "type": "branch",
+ "branch": "master",
+ "commit": "aa874e674c22739ce8f342aeb36149a1fe634a9e"
+ },
+ "_source": "git://github.com/Polymer/core-ajax.git",
+ "_target": "master",
+ "_originalSource": "Polymer/core-ajax"
+}
4 platforms/android/assets/www/lib/core-ajax/README.md
View
@@ -0,0 +1,4 @@
+core-ajax
+=========
+
+See the [component page](http://polymer-project.org/docs/elements/core-elements.html#core-ajax) for more information.
7 platforms/android/assets/www/lib/core-ajax/bower.json
View
@@ -0,0 +1,7 @@
+{
+ "name": "core-ajax",
+ "private": true,
+ "dependencies": {
+ "polymer": "Polymer/polymer#master"
+ }
+}
320 platforms/android/assets/www/lib/core-ajax/core-ajax.html
View
@@ -0,0 +1,320 @@
+<!--
+Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
+The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
+Code distributed by Google as part of the polymer project is also
+subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
+-->
+
+<!--
+@group Polymer Core Elements
+
+The `core-ajax` element exposes `XMLHttpRequest` functionality.
+
+ <core-ajax
+ auto
+ url="http://gdata.youtube.com/feeds/api/videos/"
+ params='{"alt":"json", "q":"chrome"}'
+ handleAs="json"
+ on-core-response="{{handleResponse}}"></core-ajax>
+
+With `auto` set to `true`, the element performs a request whenever
+its `url` or `params` properties are changed.
+
+Note: The `params` attribute must be double quoted JSON.
+
+You can trigger a request explicitly by calling `go` on the
+element.
+
+@element core-ajax
+@status beta
+@homepage github.io
+-->
+<link rel="import" href="core-xhr.html">
+<polymer-element name="core-ajax" attributes="url handleAs auto params response method headers body contentType withCredentials">
+<script>
+
+ Polymer('core-ajax', {
+ /**
+ * Fired when a response is received.
+ *
+ * @event core-response
+ */
+
+ /**
+ * Fired when an error is received.
+ *
+ * @event core-error
+ */
+
+ /**
+ * Fired whenever a response or an error is received.
+ *
+ * @event core-complete
+ */
+
+ /**
+ * The URL target of the request.
+ *
+ * @attribute url
+ * @type string
+ * @default ''
+ */
+ url: '',
+
+ /**
+ * Specifies what data to store in the `response` property, and
+ * to deliver as `event.response` in `response` events.
+ *
+ * One of:
+ *
+ * `text`: uses `XHR.responseText`.
+ *
+ * `xml`: uses `XHR.responseXML`.
+ *
+ * `json`: uses `XHR.responseText` parsed as JSON.
+ *
+ * `arraybuffer`: uses `XHR.response`.
+ *
+ * `blob`: uses `XHR.response`.
+ *
+ * `document`: uses `XHR.response`.
+ *
+ * @attribute handleAs
+ * @type string
+ * @default 'text'
+ */
+ handleAs: '',
+
+ /**
+ * If true, automatically performs an Ajax request when either `url` or `params` changes.
+ *
+ * @attribute auto
+ * @type boolean
+ * @default false
+ */
+ auto: false,
+
+ /**
+ * Parameters to send to the specified URL, as JSON.
+ *
+ * @attribute params
+ * @type string (JSON)
+ * @default ''
+ */
+ params: '',
+
+ /**
+ * Returns the response object.
+ *
+ * @attribute response
+ * @type Object
+ * @default null
+ */
+ response: null,
+
+ /**
+ * The HTTP method to use such as 'GET', 'POST', 'PUT', or 'DELETE'.
+ * Default is 'GET'.
+ *
+ * @attribute method
+ * @type string
+ * @default ''
+ */
+ method: '',
+
+ /**
+ * HTTP request headers to send.
+ *
+ * Example:
+ *
+ * <core-ajax
+ * auto
+ * url="http://somesite.com"
+ * headers='{"X-Requested-With": "XMLHttpRequest"}'
+ * handleAs="json"
+ * on-core-response="{{handleResponse}}"></core-ajax>
+ *
+ * @attribute headers
+ * @type Object
+ * @default null
+ */
+ headers: null,
+
+ /**
+ * Optional raw body content to send when method === "POST".
+ *
+ * Example:
+ *
+ * <core-ajax method="POST" auto url="http://somesite.com"
+ * body='{"foo":1, "bar":2}'>
+ * </core-ajax>
+ *
+ * @attribute body
+ * @type Object
+ * @default null
+ */
+ body: null,
+
+ /**
+ * Content type to use when sending data.
+ *
+ * @attribute contentType
+ * @type string
+ * @default 'application/x-www-form-urlencoded'
+ */
+ contentType: 'application/x-www-form-urlencoded',
+
+ /**
+ * Set the withCredentials flag on the request.
+ *
+ * @attribute withCredentials
+ * @type boolean
+ * @default false
+ */
+ withCredentials: false,
+
+ /**
+ * Additional properties to send to core-xhr.
+ *
+ * Can be set to an object containing default properties
+ * to send as arguments to the `core-xhr.request()` method
+ * which implements the low-level communication.
+ *
+ * @property xhrArgs
+ * @type Object
+ * @default null
+ */
+ xhrArgs: null,
+
+ ready: function() {
+ this.xhr = document.createElement('core-xhr');
+ },
+
+ receive: function(response, xhr) {
+ if (this.isSuccess(xhr)) {
+ this.processResponse(xhr);
+ } else {
+ this.error(xhr);
+ }
+ this.complete(xhr);
+ },
+
+ isSuccess: function(xhr) {
+ var status = xhr.status || 0;
+ return !status || (status >= 200 && status < 300);
+ },
+
+ processResponse: function(xhr) {
+ var response = this.evalResponse(xhr);
+ this.response = response;
+ this.fire('core-response', {response: response, xhr: xhr});
+ },
+
+ error: function(xhr) {
+ var response = xhr.status + ': ' + xhr.responseText;
+ this.fire('core-error', {response: response, xhr: xhr});
+ },
+
+ complete: function(xhr) {
+ this.fire('core-complete', {response: xhr.status, xhr: xhr});
+ },
+
+ evalResponse: function(xhr) {
+ return this[(this.handleAs || 'text') + 'Handler'](xhr);
+ },
+
+ xmlHandler: function(xhr) {
+ return xhr.responseXML;
+ },
+
+ textHandler: function(xhr) {
+ return xhr.responseText;
+ },
+
+ jsonHandler: function(xhr) {
+ var r = xhr.responseText;
+ try {
+ return JSON.parse(r);
+ } catch (x) {
+ return r;
+ }
+ },
+
+ documentHandler: function(xhr) {
+ return xhr.response;
+ },
+
+ blobHandler: function(xhr) {
+ return xhr.response;
+ },
+
+ arraybufferHandler: function(xhr) {
+ return xhr.response;
+ },
+
+ urlChanged: function() {
+ if (!this.handleAs) {
+ var ext = String(this.url).split('.').pop();
+ switch (ext) {
+ case 'json':
+ this.handleAs = 'json';
+ break;
+ }
+ }
+ this.autoGo();
+ },
+
+ paramsChanged: function() {
+ this.autoGo();
+ },
+
+ autoChanged: function() {
+ this.autoGo();
+ },
+
+ // TODO(sorvell): multiple side-effects could call autoGo
+ // during one micro-task, use a job to have only one action
+ // occur
+ autoGo: function() {
+ if (this.auto) {
+ this.goJob = this.job(this.goJob, this.go, 0);
+ }
+ },
+
+ /**
+ * Performs an Ajax request to the specified URL.
+ *
+ * @method go
+ */
+ go: function() {
+ var args = this.xhrArgs || {};
+ // TODO(sjmiles): we may want XHR to default to POST if body is set
+ args.body = this.body || args.body;
+ args.params = this.params || args.params;
+ if (args.params && typeof(args.params) == 'string') {
+ args.params = JSON.parse(args.params);
+ }
+ args.headers = this.headers || args.headers || {};
+ if (args.headers && typeof(args.headers) == 'string') {
+ args.headers = JSON.parse(args.headers);
+ }
+ if (this.contentType) {
+ args.headers['content-type'] = this.contentType;
+ }
+ if (this.handleAs === 'arraybuffer' || this.handleAs === 'blob' ||
+ this.handleAs === 'document') {
+ args.responseType = this.handleAs;
+ }
+ args.withCredentials = this.withCredentials;
+ args.callback = this.receive.bind(this);
+ args.url = this.url;
+ args.method = this.method;
+ return args.url && this.xhr.request(args);
+ }
+
+ });
+
+</script>
+</polymer-element>
115 platforms/android/assets/www/lib/core-ajax/core-xhr.html
View
@@ -0,0 +1,115 @@
+<!--
+Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
+The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
+Code distributed by Google as part of the polymer project is also
+subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
+-->
+<!--
+/**
+ * @group Polymer Core Elements
+ *
+ * core-xhr can be used to perform XMLHttpRequests.
+ *
+ * <core-xhr id="xhr"></core-xhr>
+ * ...
+ * this.$.xhr.request({url: url, params: params, callback: callback});
+ *
+ * @element core-xhr
+ */
+-->
+
+<link rel="import" href="../polymer/polymer.html">
+
+<polymer-element name="core-xhr" hidden>
+
+ <script>
+
+ Polymer('core-xhr', {
+
+ /**
+ * Sends a HTTP request to the server and returns the XHR object.
+ *
+ * @method request
+ * @param {Object} inOptions
+ * @param {String} inOptions.url The url to which the request is sent.
+ * @param {String} inOptions.method The HTTP method to use, default is GET.
+ * @param {boolean} inOptions.sync By default, all requests are sent asynchronously. To send synchronous requests, set to true.
+ * @param {Object} inOptions.params Data to be sent to the server.
+ * @param {Object} inOptions.body The content for the request body for POST method.
+ * @param {Object} inOptions.headers HTTP request headers.
+ * @param {String} inOptions.responseType The response type. Default is 'text'.
+ * @param {boolean} inOptions.withCredentials Whether or not to send credentials on the request. Default is false.
+ * @param {Object} inOptions.callback Called when request is completed.
+ * @returns {Object} XHR object.
+ */
+ request: function(options) {
+ var xhr = new XMLHttpRequest();
+ var url = options.url;
+ var method = options.method || 'GET';
+ var async = !options.sync;
+ //
+ var params = this.toQueryString(options.params);
+ if (params && method == 'GET') {
+ url += (url.indexOf('?') > 0 ? '&' : '?') + params;
+ }
+ var xhrParams = this.isBodyMethod(method) ? (options.body || params) : null;
+ //
+ xhr.open(method, url, async);
+ if (options.responseType) {
+ xhr.responseType = options.responseType;
+ }
+ if (options.withCredentials) {
+ xhr.withCredentials = true;
+ }
+ this.makeReadyStateHandler(xhr, options.callback);
+ this.setRequestHeaders(xhr, options.headers);
+ xhr.send(xhrParams);
+ if (!async) {
+ xhr.onreadystatechange(xhr);
+ }
+ return xhr;
+ },
+
+ toQueryString: function(params) {
+ var r = [];
+ for (var n in params) {
+ var v = params[n];
+ n = encodeURIComponent(n);
+ r.push(v == null ? n : (n + '=' + encodeURIComponent(v)));
+ }
+ return r.join('&');
+ },
+
+ isBodyMethod: function(method) {
+ return this.bodyMethods[(method || '').toUpperCase()];
+ },
+
+ bodyMethods: {
+ POST: 1,
+ PUT: 1,
+ DELETE: 1
+ },
+
+ makeReadyStateHandler: function(xhr, callback) {
+ xhr.onreadystatechange = function() {
+ if (xhr.readyState == 4) {
+ callback && callback.call(null, xhr.response, xhr);
+ }
+ };
+ },
+
+ setRequestHeaders: function(xhr, headers) {
+ if (headers) {
+ for (var name in headers) {
+ xhr.setRequestHeader(name, headers[name]);
+ }
+ }
+ }
+
+ });
+
+ </script>
+
+</polymer-element>
43 platforms/android/assets/www/lib/core-ajax/demo.html
View
@@ -0,0 +1,43 @@
+<!doctype html>
+<!--
+Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
+The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
+Code distributed by Google as part of the polymer project is also
+subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
+-->
+<html>
+<head>
+
+ <title>core-ajax</title>
+
+ <script src="../platform/platform.js"></script>
+ <link rel="import" href="core-ajax.html">
+
+</head>
+<body>
+
+ <core-ajax auto url="http://gdata.youtube.com/feeds/api/videos/"
+ params='{"alt":"json", "q":"chrome"}'
+ handleAs="json"></core-ajax>
+
+ <template repeat="{{response.feed.entry}}">
+ <div>{{title.$t}}</div>
+ </template>
+
+ <script>
+ document.addEventListener('polymer-ready', function() {
+ var ajax = document.querySelector("core-ajax");
+ ajax.addEventListener("core-response",
+ function(e) {
+ document.querySelector('template').model = {
+ response: e.detail.response
+ };
+ }
+ );
+ });
+ </script>
+
+</body>
+</html>
23 platforms/android/assets/www/lib/core-ajax/index.html
View
@@ -0,0 +1,23 @@
+<!doctype html>
+<!--
+Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE
+The complete set of authors may be found at http://polymer.github.io/AUTHORS
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS
+Code distributed by Google as part of the polymer project is also
+subject to an additional IP rights grant found at http://polymer.github.io/PATENTS
+-->
+<html>
+<head>
+
+ <script src="../platform/platform.js"></script>
+ <link rel="import" href="../polymer/polymer.html">
+ <link rel="import" href="../core-component-page/core-component-page.html">
+
+</head>
+<body unresolved>
+
+ <core-component-page></core-component-page>
+
+</body>
+</html>
19 platforms/android/assets/www/lib/core-animated-pages/.bower.json
View
@@ -0,0 +1,19 @@
+{
+ "name": "core-animated-pages",
+ "private": true,
+ "dependencies": {
+ "polymer": "Polymer/polymer#master",
+ "core-selector": "Polymer/core-selector#master",
+ "core-transition": "Polymer/core-transition#master"
+ },
+ "homepage": "https://github.com/Polymer/core-animated-pages",
+ "_release": "60d77adedb",
+ "_resolution": {
+ "type": "branch",
+ "branch": "master",
+ "commit": "60d77adedbcd28be1b5ee92f7b5305672d87af73"
+ },
+ "_source": "git://github.com/Polymer/core-animated-pages.git",
+ "_target": "master",
+ "_originalSource": "Polymer/core-animated-pages"
+}
4 platforms/android/assets/www/lib/core-animated-pages/README.md
View
@@ -0,0 +1,4 @@
+core-animated-pages
+===================
+
+See the [component page](http://polymer-project.org/docs/elements/core-elements.html#core-animated-pages) for more information.
9 platforms/android/assets/www/lib/core-animated-pages/bower.json
View
@@ -0,0 +1,9 @@
+{
+ "name": "core-animated-pages",
+ "private": true,
+ "dependencies": {
+ "polymer": "Polymer/polymer#master",
+ "core-selector": "Polymer/core-selector#master",
+ "core-transition": "Polymer/core-transition#master"
+ }
+}
18 platforms/android/assets/www/lib/core-animated-pages/core-animated-pages.css
View
@@ -0,0 +1,18 @@
+:host {
+ display: block;
+ position: relative;
+}
+
+polyfill-next-selector { content: ':host > *'; }
+::content > * {
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;