try_api 0.0.18 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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