try_api 0.0.18 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (235) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/try_api/application.js.coffee +9 -37
  3. data/app/assets/javascripts/try_api/param.directive.js.coffee +4 -4
  4. data/app/assets/javascripts/try_api/url.directive.js.coffee +10 -3
  5. data/app/assets/stylesheets/try_api/application.css.sass +20 -10
  6. data/app/models/try_api/base.rb +54 -10
  7. data/app/models/try_api/config_parser.rb +1 -6
  8. data/app/models/try_api/example_response.rb +10 -9
  9. data/app/models/try_api/header.rb +0 -10
  10. data/app/models/try_api/menu_item.rb +1 -18
  11. data/app/models/try_api/method.rb +4 -47
  12. data/app/models/try_api/parameter.rb +1 -22
  13. data/app/models/try_api/project.rb +1 -17
  14. data/app/views/layouts/try_api/application.html.erb +10 -2
  15. data/app/views/try_api/pages/index.html +4 -5
  16. data/lib/generators/try_api/install_generator.rb +1 -13
  17. data/lib/generators/try_api/templates/try_api/base.yml +141 -0
  18. data/lib/generators/try_api/templates/try_api/variables.yml +5 -0
  19. data/lib/try_api/version.rb +1 -1
  20. metadata +4 -217
  21. data/app/assets/javascripts/try_api/bower_components/angular-bootstrap/README.md +0 -120
  22. data/app/assets/javascripts/try_api/bower_components/angular-bootstrap/bower.json +0 -19
  23. data/app/assets/javascripts/try_api/bower_components/angular-bootstrap/index.js +0 -2
  24. data/app/assets/javascripts/try_api/bower_components/angular-bootstrap/package.json +0 -23
  25. data/app/assets/javascripts/try_api/bower_components/angular-bootstrap/ui-bootstrap-csp.css +0 -115
  26. data/app/assets/javascripts/try_api/bower_components/angular-bootstrap/ui-bootstrap-tpls.js +0 -7476
  27. data/app/assets/javascripts/try_api/bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js +0 -10
  28. data/app/assets/javascripts/try_api/bower_components/angular-bootstrap/ui-bootstrap.js +0 -7109
  29. data/app/assets/javascripts/try_api/bower_components/angular-bootstrap/ui-bootstrap.min.js +0 -10
  30. data/app/assets/javascripts/try_api/bower_components/angular-highlightjs/LICENSE.txt +0 -20
  31. data/app/assets/javascripts/try_api/bower_components/angular-highlightjs/README.md +0 -186
  32. data/app/assets/javascripts/try_api/bower_components/angular-highlightjs/angular-highlightjs.js +0 -520
  33. data/app/assets/javascripts/try_api/bower_components/angular-highlightjs/angular-highlightjs.min.js +0 -6
  34. data/app/assets/javascripts/try_api/bower_components/angular-highlightjs/bower.json +0 -22
  35. data/app/assets/javascripts/try_api/bower_components/angular-highlightjs/build/angular-highlightjs.js +0 -520
  36. data/app/assets/javascripts/try_api/bower_components/angular-highlightjs/build/angular-highlightjs.min.js +0 -6
  37. data/app/assets/javascripts/try_api/bower_components/angular-highlightjs/src/angular-highlightjs.js +0 -501
  38. data/app/assets/javascripts/try_api/bower_components/angular-ladda/CHANGELOG.md +0 -71
  39. data/app/assets/javascripts/try_api/bower_components/angular-ladda/LICENSE.txt +0 -22
  40. data/app/assets/javascripts/try_api/bower_components/angular-ladda/README.md +0 -203
  41. data/app/assets/javascripts/try_api/bower_components/angular-ladda/bower.json +0 -36
  42. data/app/assets/javascripts/try_api/bower_components/angular-ladda/dist/angular-ladda.js +0 -99
  43. data/app/assets/javascripts/try_api/bower_components/angular-ladda/dist/angular-ladda.min.js +0 -2
  44. data/app/assets/javascripts/try_api/bower_components/angular-ladda/package.json +0 -51
  45. data/app/assets/javascripts/try_api/bower_components/angular-ladda/src/angular-ladda.js +0 -98
  46. data/app/assets/javascripts/try_api/bower_components/angular/LICENSE.md +0 -21
  47. data/app/assets/javascripts/try_api/bower_components/angular/README.md +0 -64
  48. data/app/assets/javascripts/try_api/bower_components/angular/angular-csp.css +0 -21
  49. data/app/assets/javascripts/try_api/bower_components/angular/angular.js +0 -31768
  50. data/app/assets/javascripts/try_api/bower_components/angular/angular.min.js +0 -318
  51. data/app/assets/javascripts/try_api/bower_components/angular/bower.json +0 -9
  52. data/app/assets/javascripts/try_api/bower_components/angular/index.js +0 -2
  53. data/app/assets/javascripts/try_api/bower_components/angular/package.json +0 -25
  54. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/README.md +0 -25
  55. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/bower.json +0 -27
  56. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/css/font-awesome.css +0 -2199
  57. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/css/font-awesome.min.css +0 -4
  58. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/fonts/FontAwesome.otf +0 -0
  59. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/fonts/fontawesome-webfont.eot +0 -0
  60. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/fonts/fontawesome-webfont.svg +0 -685
  61. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/fonts/fontawesome-webfont.ttf +0 -0
  62. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/fonts/fontawesome-webfont.woff +0 -0
  63. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/fonts/fontawesome-webfont.woff2 +0 -0
  64. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/animated.less +0 -34
  65. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/bordered-pulled.less +0 -25
  66. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/core.less +0 -12
  67. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/fixed-width.less +0 -6
  68. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/font-awesome.less +0 -18
  69. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/icons.less +0 -733
  70. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/larger.less +0 -13
  71. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/list.less +0 -19
  72. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/mixins.less +0 -60
  73. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/path.less +0 -15
  74. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/rotated-flipped.less +0 -20
  75. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/screen-reader.less +0 -5
  76. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/stacked.less +0 -20
  77. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/less/variables.less +0 -744
  78. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/package.json +0 -14
  79. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_animated.scss +0 -34
  80. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_bordered-pulled.scss +0 -25
  81. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_core.scss +0 -12
  82. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_fixed-width.scss +0 -6
  83. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_icons.scss +0 -733
  84. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_larger.scss +0 -13
  85. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_list.scss +0 -19
  86. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_mixins.scss +0 -60
  87. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_path.scss +0 -15
  88. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_rotated-flipped.scss +0 -20
  89. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_screen-reader.scss +0 -5
  90. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_stacked.scss +0 -20
  91. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/_variables.scss +0 -744
  92. data/app/assets/javascripts/try_api/bower_components/components-font-awesome/scss/font-awesome.scss +0 -18
  93. data/app/assets/javascripts/try_api/bower_components/highlightjs/LICENSE.txt +0 -24
  94. data/app/assets/javascripts/try_api/bower_components/highlightjs/README.md +0 -12
  95. data/app/assets/javascripts/try_api/bower_components/highlightjs/bower.json +0 -14
  96. data/app/assets/javascripts/try_api/bower_components/highlightjs/component.json +0 -12
  97. data/app/assets/javascripts/try_api/bower_components/highlightjs/composer.json +0 -26
  98. data/app/assets/javascripts/try_api/bower_components/highlightjs/highlight.pack.js +0 -15387
  99. data/app/assets/javascripts/try_api/bower_components/highlightjs/highlight.pack.min.js +0 -13
  100. data/app/assets/javascripts/try_api/bower_components/highlightjs/package.json +0 -8
  101. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/agate.css +0 -108
  102. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/androidstudio.css +0 -66
  103. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/arduino-light.css +0 -88
  104. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/arta.css +0 -73
  105. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/ascetic.css +0 -45
  106. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-cave-dark.css +0 -83
  107. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-cave-light.css +0 -85
  108. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-cave.dark.css +0 -113
  109. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-cave.light.css +0 -113
  110. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-dune-dark.css +0 -69
  111. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-dune-light.css +0 -69
  112. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-dune.dark.css +0 -94
  113. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-dune.light.css +0 -94
  114. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-estuary-dark.css +0 -84
  115. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-estuary-light.css +0 -84
  116. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-estuary.dark.css +0 -113
  117. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-estuary.light.css +0 -113
  118. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-forest-dark.css +0 -69
  119. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-forest-light.css +0 -69
  120. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-forest.dark.css +0 -94
  121. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-forest.light.css +0 -94
  122. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-heath-dark.css +0 -69
  123. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-heath-light.css +0 -69
  124. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-heath.dark.css +0 -94
  125. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-heath.light.css +0 -94
  126. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-lakeside-dark.css +0 -69
  127. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-lakeside-light.css +0 -69
  128. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-lakeside.dark.css +0 -94
  129. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-lakeside.light.css +0 -94
  130. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-plateau-dark.css +0 -84
  131. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-plateau-light.css +0 -84
  132. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-plateau.dark.css +0 -113
  133. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-plateau.light.css +0 -113
  134. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-savanna-dark.css +0 -84
  135. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-savanna-light.css +0 -84
  136. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-savanna.dark.css +0 -113
  137. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-savanna.light.css +0 -113
  138. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-seaside-dark.css +0 -69
  139. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-seaside-light.css +0 -69
  140. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-seaside.dark.css +0 -94
  141. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-seaside.light.css +0 -94
  142. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-sulphurpool-dark.css +0 -69
  143. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-sulphurpool-light.css +0 -69
  144. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-sulphurpool.dark.css +0 -94
  145. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atelier-sulphurpool.light.css +0 -94
  146. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atom-one-dark.css +0 -95
  147. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/atom-one-light.css +0 -95
  148. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/brown-paper.css +0 -64
  149. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/brown-papersq.png +0 -0
  150. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/brown_paper.css +0 -103
  151. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/brown_papersq.png +0 -0
  152. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/codepen-embed.css +0 -60
  153. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/color-brewer.css +0 -71
  154. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/darcula.css +0 -77
  155. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/dark.css +0 -63
  156. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/darkula.css +0 -6
  157. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/default.css +0 -99
  158. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/docco.css +0 -97
  159. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/dracula.css +0 -76
  160. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/far.css +0 -71
  161. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/foundation.css +0 -88
  162. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/github-gist.css +0 -71
  163. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/github.css +0 -99
  164. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/googlecode.css +0 -89
  165. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/grayscale.css +0 -101
  166. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/gruvbox-dark.css +0 -108
  167. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/gruvbox-light.css +0 -108
  168. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/hopscotch.css +0 -83
  169. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/hybrid.css +0 -102
  170. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/idea.css +0 -97
  171. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/ir-black.css +0 -73
  172. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/ir_black.css +0 -106
  173. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/kimbie.dark.css +0 -74
  174. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/kimbie.light.css +0 -74
  175. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/magula.css +0 -70
  176. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/mono-blue.css +0 -59
  177. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/monokai-sublime.css +0 -83
  178. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/monokai.css +0 -70
  179. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/monokai_sublime.css +0 -154
  180. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/obsidian.css +0 -88
  181. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/ocean.css +0 -74
  182. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/paraiso-dark.css +0 -72
  183. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/paraiso-light.css +0 -72
  184. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/paraiso.dark.css +0 -96
  185. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/paraiso.light.css +0 -96
  186. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/pojoaque.css +0 -83
  187. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/pojoaque.jpg +0 -0
  188. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/purebasic.css +0 -96
  189. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/qtcreator_dark.css +0 -83
  190. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/qtcreator_light.css +0 -83
  191. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/railscasts.css +0 -106
  192. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/rainbow.css +0 -85
  193. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/school-book.css +0 -72
  194. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/school-book.png +0 -0
  195. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/school_book.css +0 -111
  196. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/school_book.png +0 -0
  197. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/solarized-dark.css +0 -84
  198. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/solarized-light.css +0 -84
  199. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/solarized_dark.css +0 -107
  200. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/solarized_light.css +0 -107
  201. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/sunburst.css +0 -102
  202. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/tomorrow-night-blue.css +0 -75
  203. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/tomorrow-night-bright.css +0 -74
  204. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/tomorrow-night-eighties.css +0 -74
  205. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/tomorrow-night.css +0 -75
  206. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/tomorrow.css +0 -72
  207. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/vs.css +0 -68
  208. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/xcode.css +0 -93
  209. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/xt256.css +0 -92
  210. data/app/assets/javascripts/try_api/bower_components/highlightjs/styles/zenburn.css +0 -80
  211. data/app/assets/javascripts/try_api/bower_components/ladda/Gruntfile.js +0 -114
  212. data/app/assets/javascripts/try_api/bower_components/ladda/LICENSE.txt +0 -19
  213. data/app/assets/javascripts/try_api/bower_components/ladda/README.md +0 -142
  214. data/app/assets/javascripts/try_api/bower_components/ladda/bower.json +0 -14
  215. data/app/assets/javascripts/try_api/bower_components/ladda/css/demo.css +0 -60
  216. data/app/assets/javascripts/try_api/bower_components/ladda/css/ladda-themed.scss +0 -81
  217. data/app/assets/javascripts/try_api/bower_components/ladda/css/ladda.scss +0 -486
  218. data/app/assets/javascripts/try_api/bower_components/ladda/dist/ladda-themeless.min.css +0 -7
  219. data/app/assets/javascripts/try_api/bower_components/ladda/dist/ladda.jquery.min.js +0 -8
  220. data/app/assets/javascripts/try_api/bower_components/ladda/dist/ladda.min.css +0 -9
  221. data/app/assets/javascripts/try_api/bower_components/ladda/dist/ladda.min.js +0 -8
  222. data/app/assets/javascripts/try_api/bower_components/ladda/dist/spin.min.js +0 -1
  223. data/app/assets/javascripts/try_api/bower_components/ladda/index.html +0 -185
  224. data/app/assets/javascripts/try_api/bower_components/ladda/js/ladda.jquery.js +0 -46
  225. data/app/assets/javascripts/try_api/bower_components/ladda/js/ladda.js +0 -459
  226. data/app/assets/javascripts/try_api/bower_components/ladda/js/spin.js +0 -354
  227. data/app/assets/javascripts/try_api/bower_components/ladda/test/bootstrap.html +0 -6302
  228. data/app/assets/javascripts/try_api/bower_components/ladda/test/bootstrap.jquery.html +0 -6306
  229. data/app/assets/javascripts/try_api/bower_components/ladda/test/form.html +0 -38
  230. data/app/assets/javascripts/try_api/bower_components/spin.js/LICENSE.txt +0 -21
  231. data/app/assets/javascripts/try_api/bower_components/spin.js/README.md +0 -21
  232. data/app/assets/javascripts/try_api/bower_components/spin.js/bower.json +0 -18
  233. data/app/assets/javascripts/try_api/bower_components/spin.js/jquery.spin.js +0 -80
  234. data/app/assets/javascripts/try_api/bower_components/spin.js/spin.js +0 -337
  235. data/lib/generators/try_api/templates/config/try_api.yml +0 -344
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c2ecbc0b9fe2f833f16c373593fd4b7d3082d30e
4
- data.tar.gz: ae4f6997359ec3c60ffbdb2f4dc882ae8452a567
3
+ metadata.gz: f1be98ca7c3fedb211242e6cddd502f43e8652a4
4
+ data.tar.gz: cee90258aeafce44cd621d57c568732ccc1f4fde
5
5
  SHA512:
6
- metadata.gz: 4673b1f0d0df87785799af919b2a7982038b6313ec6489096992e6bb426408c2b18285d57ceda82c34d355cd4051ca29e36a050a33529c8c760d6f97ec88ef91
7
- data.tar.gz: 282f6fdbdcefcdb69b3ef7eaec7ce7649bb247f517b5376771e3a0c1b2f3542c4b07a90051328f14c029c5301c14e1e3207e448cfffea8ef06a05e50783fc847
6
+ metadata.gz: 4557d9706bf50eccc771b4106fe81cc16d1fe360057e8dc6bee7b955d8a85e0e9b1311ed4a0d55b98b4a1ed8495cefff5231948e7239c01c1fce9924e4b34288
7
+ data.tar.gz: 511ff5f84d86367023a7f5cde72ad5e3fe0b779c5f3cccdb205a3ba37f999593a99f8228e2cbd80a5f94e4218c5ea355edcd274283260a10fd9af54b157a6086
@@ -1,10 +1,3 @@
1
- #= require try_api/bower_components/highlightjs/highlight.pack.min.js
2
- #= require try_api/bower_components/angular-bootstrap/ui-bootstrap.js
3
- #= require try_api/bower_components/angular-bootstrap/ui-bootstrap-tpls.js
4
- #= require try_api/bower_components/angular-highlightjs/angular-highlightjs.min.js
5
- #= require try_api/bower_components/ladda/dist/spin.min.js
6
- #= require try_api/bower_components/ladda/dist/ladda.min.js
7
- #= require try_api/bower_components/angular-ladda/dist/angular-ladda.min.js
8
1
  #= require try_api/params.directive
9
2
  #= require try_api/param.directive
10
3
  #= require try_api/paramsarray.directive
@@ -52,31 +45,6 @@ TryApiApp.run [
52
45
  ($http, $rootScope) ->
53
46
  ]
54
47
 
55
- TryApiApp.controller 'HomeController', [
56
- '$scope'
57
- '$timeout'
58
- '$sce'
59
- '$http'
60
- ($scope, $timeout, $sce, $http) ->
61
-
62
- $scope.getStatusCodeClass = (code) ->
63
- switch true
64
- when code >= 200 && code < 300
65
- return 'text-success'
66
- when code >= 300 && code < 400
67
- return 'text-warning'
68
- when code >= 400 && code < 500
69
- return 'text-danger'
70
- when code >= 500
71
- return 'text-danger'
72
- else
73
- return 'text-info'
74
-
75
- $scope.headers = []
76
- $scope.params = []
77
-
78
- ]
79
-
80
48
  TryApiApp.controller 'HomeController', [
81
49
  '$scope'
82
50
  '$timeout'
@@ -105,7 +73,7 @@ TryApiApp.controller 'HomeController', [
105
73
  $scope.global_headers = {}
106
74
  $scope.params = []
107
75
 
108
- $http.get('/developers/projects.json').success (data) ->
76
+ $http.get('/developers/projects.json').success (data) -> # TODO this should depends from app routes
109
77
  $scope.project = data.project
110
78
  $.each $scope.project.menu_items, () ->
111
79
  menu_item = this
@@ -131,20 +99,23 @@ TryApiApp.controller 'HomeController', [
131
99
  header = this
132
100
  headers[header.name] = header.value
133
101
 
102
+ path = $scope.project.host + ':' + $scope.project.port + '/' + method.submit_path
103
+
134
104
  switch method.method.toLowerCase()
135
105
  when 'post'
136
106
  fd = new FormData
107
+ fd.append 'a', 'a' # TODO sending empty array causes EOFError
137
108
 
138
109
  $.each method.parameters, (i) ->
139
110
  $scope.addParameterToForm fd, this
140
111
 
141
- $http.post method.submit_path, fd,
112
+ $http.post path, fd,
142
113
  transformRequest: angular.identity
143
114
  headers: headers
144
115
  .success method.response_handler
145
116
  .error method.response_handler
146
117
  when 'delete'
147
- $http.delete method.submit_path,
118
+ $http.delete path,
148
119
  transformRequest: angular.identity
149
120
  headers: headers
150
121
  .success method.response_handler
@@ -156,18 +127,19 @@ TryApiApp.controller 'HomeController', [
156
127
  parameter = this
157
128
  fd = fd + parameter.name + '=' + (parameter.value || '') + '&'
158
129
 
159
- $http.get method.submit_path + '?' + fd,
130
+ $http.get path + '?' + fd,
160
131
  transformRequest: angular.identity
161
132
  headers: headers
162
133
  .success method.response_handler
163
134
  .error method.response_handler
164
135
  when 'put'
165
136
  fd = new FormData
137
+ fd.append 'a', 'a' # TODO sending empty array causes EOFError
166
138
 
167
139
  $.each method.parameters, (i) ->
168
140
  $scope.addParameterToForm fd, this
169
141
 
170
- $http.put method.submit_path, fd,
142
+ $http.put path, fd,
171
143
  transformRequest: angular.identity
172
144
  headers: headers
173
145
  .success method.response_handler
@@ -22,9 +22,9 @@ angular.module('TryApi').directive 'param', [
22
22
  '</div>' +
23
23
  '<div class="col-md-8" ng-if=\'parameter.type != "array"\'>' +
24
24
  ' <div ng-switch="parameter.type">' +
25
- ' <input ng-switch-when="string" type="text" class="form-control" ng-model="parameter.value" placeholder=\'{{ parameter.required ? "required" : "optional"}}\'>' +
26
- ' <textarea ng-switch-when="text" class="form-control" ng-model="parameter.value" placeholder=\'{{ parameter.required ? "required" : "optional"}}\' style="max-width: 100%" />' +
27
- ' <input ng-switch-when="integer" type="number" class="form-control" ng-model="parameter.value" placeholder=\'{{ parameter.required ? "required" : "optional"}}\'>' +
25
+ ' <input ng-switch-when="string" type="text" ng-model="parameter.value" placeholder=\'{{ parameter.required ? "required" : "optional"}}\'>' +
26
+ ' <textarea ng-switch-when="text" ng-model="parameter.value" placeholder=\'{{ parameter.required ? "required" : "optional"}}\' style="max-width: 100%" />' +
27
+ ' <input ng-switch-when="integer" type="number" ng-model="parameter.value" placeholder=\'{{ parameter.required ? "required" : "optional"}}\'>' +
28
28
  ' <div ng-switch-when="boolean" class="onoffswitch">' +
29
29
  ' <input class="onoffswitch-checkbox" ng-model="parameter.value" type="checkbox" id="{{ unique_id }}-on-off-switch">' +
30
30
  ' <label class="onoffswitch-label" for="{{ unique_id }}-on-off-switch"></label>' +
@@ -32,7 +32,7 @@ angular.module('TryApi').directive 'param', [
32
32
  ' <span class="onoffswitch-switch"></span>' +
33
33
  ' </div>' +
34
34
  ' <div ng-switch-when="image" image=true" ng-model="parameter.value"></div>' +
35
- ' <input ng-switch-default type="text" class="form-control" ng-model="parameter.value" placeholder=\'{{ parameter.required ? "required" : "optional"}}\'>' +
35
+ ' <input ng-switch-default type="text" ng-model="parameter.value" placeholder=\'{{ parameter.required ? "required" : "optional"}}\'>' +
36
36
  ' </div>' +
37
37
  ' <div class="text-muted small" ng-bind-html="getHtml(parameter.description)"></div>' +
38
38
  '</div>' +
@@ -20,10 +20,17 @@ angular.module('TryApi').directive 'url', [
20
20
 
21
21
  scope.$watch 'parts', ->
22
22
  scope.url = scope.parts.map((i)->
23
- i.value
23
+ if i.value == '' then '0' else i.value
24
24
  ).join('/')
25
25
  , true
26
26
 
27
+ scope.inputStyle = (part) ->
28
+ charWidth = 13.3;
29
+ return {
30
+ "width": ((part.value).length + 1) * charWidth + "px",
31
+ "min-width": ((part.placeholder).length) * charWidth + "px"
32
+ }
33
+
27
34
  return {
28
35
  link: link
29
36
  restrict: 'A'
@@ -34,7 +41,7 @@ angular.module('TryApi').directive 'url', [
34
41
  template: '<span ng-repeat="part in parts track by $index">' +
35
42
  '/' +
36
43
  '<span ng-if="!isParameter(part.placeholder)">{{ part.value }}</span>' +
37
- '<input ng-if="isParameter(part.placeholder)" ng-model="part.value" placeholder="{{ part.placeholder }}"/>' +
44
+ '<input ng-if="isParameter(part.placeholder)" ng-model="part.value" class="url-input" ng-style="inputStyle(part)" placeholder="{{ part.placeholder }}" scope="max-width: 90%; font-family:monospace;"/>' +
38
45
  '</span>'
39
46
  }
40
- ]
47
+ ]
@@ -1,14 +1,25 @@
1
- //= require try_api/bower_components/highlightjs/styles/agate.css
2
- //= require try_api/bower_components/angular-bootstrap/ui-bootstrap-csp.css
3
- //= require try_api/bower_components/ladda/dist/ladda.min.css
4
- //= require try_api/bower_components/ladda/dist/ladda-themeless.min.css
5
- //= require try_api/bower_components/components-font-awesome/css/font-awesome.css
6
-
7
1
  body
8
2
  margin: 0
9
3
  background-color: #f3f3f4
10
4
  font-family: Arial, Helvetica, sans-serif
11
5
 
6
+ input, textarea
7
+ border: 0
8
+ border-bottom: 2px solid #19B698
9
+ outline: none
10
+ &:not(.url-input)
11
+ width: 100%
12
+
13
+
14
+ ::-webkit-input-placeholder
15
+ color: #19B698
16
+ ::-moz-placeholder
17
+ color: #19B698
18
+ :-moz-placeholder
19
+ color: #19B698
20
+ :-ms-input-placeholder
21
+ color: #19B698
22
+
12
23
  pre
13
24
  padding: 0
14
25
  margin: 0
@@ -84,8 +95,8 @@ body
84
95
 
85
96
  &-items
86
97
  list-style-type: none
87
- padding: 0
88
98
  font-size: 16px
99
+ padding-bottom: 60px
89
100
  .second-level-menu-items
90
101
  list-style-type: none
91
102
  font-size: 14px
@@ -176,9 +187,8 @@ body
176
187
 
177
188
 
178
189
  .parameter
179
- border-bottom: 1px solid #e8e8e8
180
- padding-bottom: 7px
181
- padding-top: 7px
190
+ padding-bottom: 5px
191
+ padding-top: 5px
182
192
 
183
193
  .nav > li > a
184
194
  padding: 1px 11px
@@ -4,6 +4,7 @@ class FalseClass; include Boolean; end
4
4
 
5
5
  module TryApi
6
6
  class Base
7
+
7
8
  def self.typesafe_accessor(name, type, options={})
8
9
 
9
10
  define_method(name) do
@@ -12,26 +13,44 @@ module TryApi
12
13
 
13
14
  define_method("#{name}=") do |value|
14
15
  if value.is_a?(type) || value.nil?
15
- value = options[:default] if value.nil? && !options[:default].nil?
16
- instance_variable_set("@#{name}", value)
16
+ if options[:items_type].try(:<, TryApi::Base)
17
+
18
+ items = []
19
+ if value.is_a? Array
20
+ value.each do |item|
21
+ item = load_inclusion(item[:include!]) if item[:include!].present?
22
+
23
+ items << options[:items_type].new({ parent: self }.merge(item))
24
+ end
25
+ end
26
+
27
+ instance_variable_set("@#{name}", items)
28
+ else
29
+ value = options[:default] if value.nil? && !options[:default].nil?
30
+ instance_variable_set("@#{name}", value)
31
+ end
17
32
  else
18
33
  raise TryApi::ArgumentError.new
19
34
  end
20
35
  end
21
36
  end
22
37
 
38
+ attr_accessor :id
39
+ typesafe_accessor :parent, TryApi::Base
40
+ @@instances_count = 0
41
+
23
42
  def to_json
24
43
  result = {}
25
44
 
26
45
  self.instance_variables.each do |i|
27
46
  value = self.instance_variable_get(i)
28
47
  if value.instance_of?(Array)
29
- result[i.to_s.gsub('@', '')] = value.map(&:to_json)
48
+ result[i.to_s.delete('@')] = value.map(&:to_json)
30
49
  else
31
- if i == :@project
50
+ if i == :@parent
32
51
 
33
52
  else
34
- result[i.to_s.gsub('@', '')] = value
53
+ result[i.to_s.delete('@')] = value
35
54
  end
36
55
  end
37
56
  end
@@ -40,13 +59,38 @@ module TryApi
40
59
  result.with_indifferent_access
41
60
  end
42
61
 
43
- @@instances_count = 0
44
-
45
- attr_accessor :id
62
+ def project
63
+ self.is_a?(TryApi::Project) ? self : self.parent.try(:project)
64
+ end
46
65
 
47
- def initialize()
48
- super
66
+ def initialize(hash)
49
67
  self.id = @@instances_count += 1
68
+ result_hash = {}
69
+ hash.to_h.each do |k, v|
70
+ if k.to_s == 'include!'
71
+ result_hash.merge! load_inclusion(v)
72
+ else
73
+ result_hash[k] = v
74
+ end
75
+ end
76
+
77
+ result_hash.to_h.each do |k, v|
78
+ v = self.project.variables[v.gsub('var:', '')] if v.is_a?(String) && v.start_with?('var:')
79
+ send("#{k}=", v) if respond_to?("#{k}=")
80
+ end
81
+ end
82
+
83
+ def self.load_inclusion(filename)
84
+ if File.exist?("#{ Rails.root }/config/try_api/#{ filename }.yml")
85
+ hash = YAML.load_file("#{ Rails.root }/config/try_api/#{ filename }.yml")
86
+ hash.with_indifferent_access
87
+ else
88
+ raise ConfigFileNotFound
89
+ end
90
+ end
91
+
92
+ def load_inclusion(filename)
93
+ self.class.load_inclusion filename
50
94
  end
51
95
  end
52
96
  end
@@ -3,12 +3,7 @@ module TryApi
3
3
  class << self
4
4
 
5
5
  def read
6
- if File.exists?("#{ Rails.root }/config/try_api.yml")
7
- hash = YAML.load_file("#{ Rails.root }/config/try_api.yml")
8
- TryApi::Project.parse hash.with_indifferent_access
9
- else
10
- raise ConfigFileNotFound
11
- end
6
+ TryApi::Project.new TryApi::Base.load_inclusion(:base)
12
7
  end
13
8
 
14
9
  end
@@ -3,7 +3,6 @@ module TryApi
3
3
  typesafe_accessor :code, Integer
4
4
  typesafe_accessor :response, String
5
5
  typesafe_accessor :type, String
6
- typesafe_accessor :project, TryApi::Project
7
6
 
8
7
  class << self
9
8
  def parse(hash:, project:)
@@ -19,9 +18,19 @@ module TryApi
19
18
  def descriptions
20
19
  {
21
20
  200 => :success,
21
+ 201 => :created,
22
+ 204 => :no_content,
23
+ 304 => :not_modified,
24
+ 400 => :bad_request,
22
25
  401 => :unauthorized,
26
+ 403 => :forbidden,
27
+ 404 => :not_found,
28
+ 408 => :request_timeout,
23
29
  422 => :unprocessable_entity,
24
30
  500 => :internal_server_error,
31
+ 502 => :bad_gateway,
32
+ 503 => :service_unavailable,
33
+ 504 => :gateway_timeout
25
34
  }
26
35
  end
27
36
  end
@@ -50,13 +59,5 @@ module TryApi
50
59
  def to_json
51
60
  super.merge color: color, description: description, isCollapsed: true
52
61
  end
53
-
54
- def response=(input)
55
- if input['var:']
56
- @response = self.project.variables[input.gsub('var:', '')]
57
- else
58
- @response = input
59
- end
60
- end
61
62
  end
62
63
  end
@@ -3,15 +3,5 @@ module TryApi
3
3
  typesafe_accessor :name, String
4
4
  typesafe_accessor :description, String
5
5
  typesafe_accessor :global, Boolean, default: false
6
-
7
- class << self
8
- def parse(hash)
9
- instance = self.new
10
- instance.name = hash[:name]
11
- instance.global = hash[:global]
12
- instance.description = hash[:description]
13
- instance
14
- end
15
- end
16
6
  end
17
7
  end
@@ -3,23 +3,6 @@ module TryApi
3
3
  typesafe_accessor :title, String
4
4
  typesafe_accessor :html_template, String
5
5
  typesafe_accessor :description, String
6
- typesafe_accessor :methods, Array
7
- typesafe_accessor :project, TryApi::Project
8
-
9
- class << self
10
- def parse(hash:, project:)
11
- instance = self.new
12
- instance.project = project
13
- instance.title = hash[:title]
14
- instance.description = hash[:description]
15
- instance.methods = []
16
- unless hash[:methods].blank?
17
- hash[:methods].each do |second_level_meny_item|
18
- instance.methods << TryApi::Method.parse(project: instance.project, hash: second_level_meny_item)
19
- end
20
- end
21
- instance
22
- end
23
- end
6
+ typesafe_accessor :methods, Array, items_type: TryApi::Method
24
7
  end
25
8
  end
@@ -2,54 +2,11 @@ module TryApi
2
2
  class Method < TryApi::Base
3
3
  typesafe_accessor :title, String
4
4
  typesafe_accessor :description, String
5
- typesafe_accessor :parameters, Array
6
- typesafe_accessor :headers, Array
5
+ typesafe_accessor :parameters, Array, items_type: TryApi::Parameter
6
+ typesafe_accessor :headers, Array, items_type: TryApi::Header
7
7
  typesafe_accessor :path, String
8
8
  typesafe_accessor :method, String
9
- typesafe_accessor :example_responses, Array
10
- typesafe_accessor :project, TryApi::Project
11
-
12
- class << self
13
- def parse(hash:, project:)
14
- return nil if hash.blank?
15
- instance = self.new
16
- instance.project = project
17
- instance.title = hash[:title]
18
- instance.description = hash[:description]
19
- instance.parameters = hash[:parameters]
20
- instance.headers = hash[:headers]
21
- instance.method = hash[:method].try(:upcase)
22
- instance.path = hash[:path]
23
-
24
- instance.example_responses = []
25
- if hash[:example_responses].is_a? Array
26
- hash[:example_responses].each do |example|
27
- instance.example_responses << TryApi::ExampleResponse.parse(hash: example, project: project)
28
- end
29
- else
30
- # TODO raise exception ?
31
- end
32
-
33
- instance.parameters = []
34
- if hash[:parameters].is_a? Array
35
- hash[:parameters].each do |parameter|
36
- instance.parameters << TryApi::Parameter.parse(parameter)
37
- end
38
- else
39
- # TODO raise exception ?
40
- end
41
-
42
- instance.headers = []
43
- if hash[:headers].is_a? Array
44
- hash[:headers].each do |header|
45
- instance.headers << TryApi::Header.parse(header)
46
- end
47
- else
48
- # TODO raise exception ?
49
- end
50
- instance
51
- end
52
- end
9
+ typesafe_accessor :example_responses, Array, items_type: TryApi::ExampleResponse
53
10
 
54
11
  def to_json
55
12
  super.merge local_path: local_path, full_path: full_path
@@ -60,7 +17,7 @@ module TryApi
60
17
  end
61
18
 
62
19
  def local_path
63
- "/#{ project.api_prefix }#{ self.path }"
20
+ "/#{ self.project.api_prefix }#{ self.path }"
64
21
  end
65
22
  end
66
23
  end