praxis 0.16.1 → 0.17.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 (399) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +0 -1
  3. data/.ruby-version +1 -1
  4. data/.travis.yml +2 -1
  5. data/CHANGELOG.md +41 -0
  6. data/CONTRIBUTING.md +3 -0
  7. data/lib/api_browser/Gruntfile.js +20 -4
  8. data/lib/api_browser/app/bower_components/angular-mocks/.bower.json +6 -6
  9. data/lib/api_browser/app/bower_components/angular-mocks/README.md +11 -5
  10. data/lib/api_browser/app/bower_components/angular-mocks/angular-mocks.js +475 -216
  11. data/lib/api_browser/app/bower_components/angular-mocks/bower.json +2 -2
  12. data/lib/api_browser/app/bower_components/angular-mocks/ngAnimateMock.js +2 -0
  13. data/lib/api_browser/app/bower_components/angular-mocks/ngMock.js +2 -0
  14. data/lib/api_browser/app/bower_components/angular-mocks/ngMockE2E.js +2 -0
  15. data/lib/api_browser/app/bower_components/angular-mocks/package.json +1 -1
  16. data/lib/api_browser/app/bower_components/angular-sanitize/.bower.json +8 -8
  17. data/lib/api_browser/app/bower_components/angular-sanitize/README.md +19 -5
  18. data/lib/api_browser/app/bower_components/angular-sanitize/angular-sanitize.js +186 -127
  19. data/lib/api_browser/app/bower_components/angular-sanitize/angular-sanitize.min.js +12 -10
  20. data/lib/api_browser/app/bower_components/angular-sanitize/angular-sanitize.min.js.map +3 -3
  21. data/lib/api_browser/app/bower_components/angular-sanitize/bower.json +3 -2
  22. data/lib/api_browser/app/bower_components/angular-sanitize/index.js +2 -0
  23. data/lib/api_browser/app/bower_components/angular-sanitize/package.json +26 -0
  24. data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/.bower.json +15 -8
  25. data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/bower.json +11 -3
  26. data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap-csp.css +6 -0
  27. data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap-tpls.js +1177 -453
  28. data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap-tpls.min.js +4 -4
  29. data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap.js +1066 -404
  30. data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap.min.js +3 -3
  31. data/lib/api_browser/app/bower_components/angular-ui-router/.bower.json +5 -6
  32. data/lib/api_browser/app/bower_components/angular-ui-router/CHANGELOG.md +208 -3
  33. data/lib/api_browser/app/bower_components/angular-ui-router/CONTRIBUTING.md +65 -0
  34. data/lib/api_browser/app/bower_components/angular-ui-router/LICENSE +1 -1
  35. data/lib/api_browser/app/bower_components/angular-ui-router/README.md +36 -71
  36. data/lib/api_browser/app/bower_components/angular-ui-router/api/angular-ui-router.d.ts +126 -0
  37. data/lib/api_browser/app/bower_components/angular-ui-router/bower.json +1 -1
  38. data/lib/api_browser/app/bower_components/angular-ui-router/release/angular-ui-router.js +1902 -755
  39. data/lib/api_browser/app/bower_components/angular-ui-router/release/angular-ui-router.min.js +2 -2
  40. data/lib/api_browser/app/bower_components/angular-ui-router/src/common.js +69 -23
  41. data/lib/api_browser/app/bower_components/angular-ui-router/src/resolve.js +15 -5
  42. data/lib/api_browser/app/bower_components/angular-ui-router/src/state.js +556 -295
  43. data/lib/api_browser/app/bower_components/angular-ui-router/src/stateDirectives.js +101 -42
  44. data/lib/api_browser/app/bower_components/angular-ui-router/src/stateFilters.js +6 -2
  45. data/lib/api_browser/app/bower_components/angular-ui-router/src/templateFactory.js +2 -2
  46. data/lib/api_browser/app/bower_components/angular-ui-router/src/urlMatcherFactory.js +822 -97
  47. data/lib/api_browser/app/bower_components/angular-ui-router/src/urlRouter.js +274 -120
  48. data/lib/api_browser/app/bower_components/angular-ui-router/src/viewDirective.js +33 -20
  49. data/lib/api_browser/app/bower_components/angular-ui-router/src/viewScroll.js +1 -1
  50. data/lib/api_browser/app/bower_components/angular/.bower.json +5 -5
  51. data/lib/api_browser/app/bower_components/angular/README.md +2 -5
  52. data/lib/api_browser/app/bower_components/angular/angular-csp.css +5 -8
  53. data/lib/api_browser/app/bower_components/angular/angular.js +12975 -6996
  54. data/lib/api_browser/app/bower_components/angular/angular.min.js +285 -213
  55. data/lib/api_browser/app/bower_components/angular/angular.min.js.gzip +0 -0
  56. data/lib/api_browser/app/bower_components/angular/angular.min.js.map +3 -3
  57. data/lib/api_browser/app/bower_components/angular/bower.json +1 -1
  58. data/lib/api_browser/app/bower_components/angular/index.js +2 -0
  59. data/lib/api_browser/app/bower_components/angular/package.json +2 -2
  60. data/lib/api_browser/app/bower_components/bootstrap-sass/.bower.json +31 -16
  61. data/lib/api_browser/app/bower_components/bootstrap-sass/CHANGELOG.md +108 -0
  62. data/lib/api_browser/app/bower_components/bootstrap-sass/CONTRIBUTING.md +55 -37
  63. data/lib/api_browser/app/bower_components/bootstrap-sass/README.md +147 -206
  64. data/lib/api_browser/app/bower_components/bootstrap-sass/bower.json +19 -8
  65. data/lib/api_browser/app/bower_components/bootstrap-sass/{dist/fonts → vendor/assets/fonts/bootstrap}/glyphicons-halflings-regular.eot +0 -0
  66. data/lib/api_browser/app/bower_components/bootstrap-sass/{dist/fonts → vendor/assets/fonts/bootstrap}/glyphicons-halflings-regular.svg +0 -0
  67. data/lib/api_browser/app/bower_components/bootstrap-sass/{dist/fonts → vendor/assets/fonts/bootstrap}/glyphicons-halflings-regular.ttf +0 -0
  68. data/lib/api_browser/app/bower_components/bootstrap-sass/{dist/fonts → vendor/assets/fonts/bootstrap}/glyphicons-halflings-regular.woff +0 -0
  69. data/lib/api_browser/app/bower_components/bootstrap-sass/vendor/assets/javascripts/bootstrap.js +12 -0
  70. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/affix.js +1 -1
  71. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/alert.js +1 -1
  72. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/button.js +11 -5
  73. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/carousel.js +5 -5
  74. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/collapse.js +1 -1
  75. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/dropdown.js +5 -5
  76. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/modal.js +1 -1
  77. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/popover.js +1 -1
  78. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/scrollspy.js +2 -2
  79. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/tab.js +1 -1
  80. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/tooltip.js +1 -1
  81. data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/transition.js +1 -1
  82. data/lib/api_browser/app/bower_components/bootstrap-sass/vendor/assets/stylesheets/bootstrap.scss +1 -0
  83. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_alerts.scss +0 -0
  84. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_badges.scss +6 -6
  85. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_breadcrumbs.scss +0 -0
  86. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_button-groups.scss +7 -33
  87. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_buttons.scss +2 -5
  88. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_carousel.scss +1 -0
  89. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_close.scss +0 -0
  90. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_code.scss +0 -0
  91. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_component-animations.scss +0 -0
  92. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_dropdowns.scss +3 -8
  93. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_forms.scss +11 -0
  94. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_glyphicons.scss +5 -5
  95. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_grid.scss +12 -26
  96. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_input-groups.scss +1 -1
  97. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_jumbotron.scss +8 -2
  98. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_labels.scss +6 -0
  99. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_list-group.scss +0 -0
  100. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_media.scss +0 -0
  101. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_mixins.scss +38 -51
  102. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_modals.scss +2 -5
  103. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_navbar.scss +41 -53
  104. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_navs.scss +0 -20
  105. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_normalize.scss +0 -0
  106. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_pager.scss +0 -0
  107. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_pagination.scss +0 -0
  108. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_panels.scss +11 -1
  109. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_popovers.scss +0 -0
  110. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_print.scss +0 -0
  111. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_progress-bars.scss +0 -12
  112. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_responsive-utilities.scss +0 -0
  113. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_scaffolding.scss +0 -0
  114. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_tables.scss +5 -18
  115. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_theme.scss +2 -2
  116. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_thumbnails.scss +9 -3
  117. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_tooltip.scss +0 -0
  118. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_type.scss +54 -52
  119. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_utilities.scss +0 -0
  120. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_variables.scss +20 -11
  121. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_wells.scss +0 -0
  122. data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/bootstrap.scss +0 -0
  123. data/lib/api_browser/app/bower_components/lodash/.bower.json +9 -13
  124. data/lib/api_browser/app/bower_components/lodash/LICENSE.txt +3 -3
  125. data/lib/api_browser/app/bower_components/lodash/bower.json +4 -7
  126. data/lib/api_browser/app/bower_components/lodash/lodash.js +12235 -0
  127. data/lib/api_browser/app/bower_components/lodash/lodash.min.js +98 -0
  128. data/lib/api_browser/app/index.html +0 -1
  129. data/lib/api_browser/app/js/app.js +2 -5
  130. data/lib/api_browser/app/js/controllers/action.js +21 -37
  131. data/lib/api_browser/app/js/controllers/controller.js +23 -1
  132. data/lib/api_browser/app/js/controllers/menu.js +46 -14
  133. data/lib/api_browser/app/js/controllers/type.js +2 -9
  134. data/lib/api_browser/app/js/directives/attribute_description.js +15 -5
  135. data/lib/api_browser/app/js/directives/attribute_table.js +6 -6
  136. data/lib/api_browser/app/js/directives/fixed_if_fits.js +20 -0
  137. data/lib/api_browser/app/js/directives/no_container.js +6 -6
  138. data/lib/api_browser/app/js/directives/type_placeholder.js +21 -0
  139. data/lib/api_browser/app/js/factories/Configuration.js +13 -0
  140. data/lib/api_browser/app/js/factories/Documentation.js +0 -3
  141. data/lib/api_browser/app/js/factories/normalize_attributes.js +19 -0
  142. data/lib/api_browser/app/js/factories/template_for.js +113 -0
  143. data/lib/api_browser/app/sass/modules/_body.scss +26 -4
  144. data/lib/api_browser/app/sass/modules/_sidebar.scss +68 -1
  145. data/lib/api_browser/app/sass/praxis.scss +1 -5
  146. data/lib/api_browser/app/sass/variables/_bootstrap-variables.scss +13 -4
  147. data/lib/api_browser/app/views/action.html +13 -17
  148. data/lib/api_browser/app/views/controller.html +32 -4
  149. data/lib/api_browser/app/views/directives/attribute_description.html +1 -1
  150. data/lib/api_browser/app/views/directives/attribute_description/{_default.html → default.html} +0 -0
  151. data/lib/api_browser/app/views/directives/attribute_description/example.html +13 -0
  152. data/lib/api_browser/app/views/directives/attribute_description/headers.html +8 -0
  153. data/lib/api_browser/app/views/directives/attribute_description/member_options.html +4 -0
  154. data/lib/api_browser/app/views/directives/attribute_description/values.html +14 -0
  155. data/lib/api_browser/app/views/directives/attribute_table.html +2 -2
  156. data/lib/api_browser/app/views/home.html +1 -3
  157. data/lib/api_browser/app/views/layout.html +3 -36
  158. data/lib/api_browser/app/views/menu.html +45 -0
  159. data/lib/api_browser/app/views/navbar.html +1 -1
  160. data/lib/api_browser/app/views/type.html +2 -2
  161. data/lib/api_browser/app/views/type/{_details.html → details.html} +6 -6
  162. data/lib/api_browser/app/views/types/embedded/default.html +10 -0
  163. data/lib/api_browser/app/views/types/embedded/links.html +11 -0
  164. data/lib/api_browser/app/views/types/embedded/struct.html +2 -0
  165. data/lib/api_browser/app/views/types/label/link.html +1 -0
  166. data/lib/api_browser/app/views/types/label/primitive.html +1 -0
  167. data/lib/api_browser/app/views/types/label/primitive_collection.html +1 -0
  168. data/lib/api_browser/app/views/types/label/type.html +1 -0
  169. data/lib/api_browser/app/views/types/label/type_collection.html +1 -0
  170. data/lib/api_browser/app/views/{directives/request_body/_default.html → types/standalone/default.html} +1 -1
  171. data/lib/api_browser/app/views/types/standalone/struct.html +1 -0
  172. data/lib/api_browser/bower.json +9 -9
  173. data/lib/api_browser/package.json +1 -1
  174. data/lib/praxis.rb +10 -4
  175. data/lib/praxis/action_definition.rb +16 -4
  176. data/lib/praxis/action_definition/headers_dsl_compiler.rb +5 -2
  177. data/lib/praxis/api_definition.rb +3 -1
  178. data/lib/praxis/api_general_info.rb +49 -5
  179. data/lib/praxis/application.rb +12 -4
  180. data/lib/praxis/bootloader.rb +1 -0
  181. data/lib/praxis/bootloader_stages/environment.rb +2 -0
  182. data/lib/praxis/bootloader_stages/routing.rb +1 -1
  183. data/lib/praxis/bootloader_stages/subgroup_loader.rb +1 -0
  184. data/lib/praxis/exceptions/validation.rb +7 -0
  185. data/lib/praxis/handlers/plain.rb +16 -0
  186. data/lib/praxis/handlers/xml.rb +4 -4
  187. data/lib/praxis/links.rb +13 -3
  188. data/lib/praxis/media_type_identifier.rb +3 -0
  189. data/lib/praxis/multipart/parser.rb +41 -48
  190. data/lib/praxis/multipart/part.rb +196 -3
  191. data/lib/praxis/request.rb +14 -11
  192. data/lib/praxis/request_stages/request_stage.rb +4 -0
  193. data/lib/praxis/request_stages/response.rb +10 -9
  194. data/lib/praxis/request_stages/validate.rb +1 -7
  195. data/lib/praxis/request_stages/validate_params_and_headers.rb +30 -5
  196. data/lib/praxis/request_stages/validate_payload.rb +14 -5
  197. data/lib/praxis/resource_definition.rb +117 -15
  198. data/lib/praxis/response.rb +6 -5
  199. data/lib/praxis/response_definition.rb +51 -5
  200. data/lib/praxis/responses/http.rb +5 -0
  201. data/lib/praxis/responses/multipart_ok.rb +51 -0
  202. data/lib/praxis/responses/validation_error.rb +7 -7
  203. data/lib/praxis/restful_doc_generator.rb +9 -4
  204. data/lib/praxis/route.rb +3 -2
  205. data/lib/praxis/router.rb +26 -16
  206. data/lib/praxis/router/rack.rb +51 -0
  207. data/lib/praxis/router/simple.rb +146 -0
  208. data/lib/praxis/routing_config.rb +2 -2
  209. data/lib/praxis/trait.rb +1 -1
  210. data/lib/praxis/types/fuzzy_hash.rb +49 -0
  211. data/lib/praxis/types/media_type_common.rb +1 -1
  212. data/lib/praxis/types/multipart.rb +47 -12
  213. data/lib/praxis/types/multipart_array.rb +320 -0
  214. data/lib/praxis/types/multipart_array/part_definition.rb +52 -0
  215. data/lib/praxis/validation_handler.rb +10 -0
  216. data/lib/praxis/version.rb +2 -2
  217. data/praxis.gemspec +3 -3
  218. data/spec/api_browser/directives/type_placeholder_spec.js +134 -0
  219. data/spec/api_browser/factories/normalize_attributes_spec.js +97 -0
  220. data/spec/api_browser/factories/template_for_spec.js +67 -0
  221. data/spec/functional_spec.rb +111 -45
  222. data/spec/praxis/action_definition_spec.rb +31 -7
  223. data/spec/praxis/api_definition_spec.rb +2 -2
  224. data/spec/praxis/api_general_info_spec.rb +25 -0
  225. data/spec/praxis/application_spec.rb +24 -11
  226. data/spec/praxis/handlers/xml_spec.rb +55 -33
  227. data/spec/praxis/links_spec.rb +18 -1
  228. data/spec/praxis/media_type_collection_spec.rb +1 -1
  229. data/spec/praxis/media_type_spec.rb +2 -2
  230. data/spec/praxis/multipart/parser_spec.rb +21 -13
  231. data/spec/praxis/plugins/praxis_mapper_plugin_spec.rb +1 -1
  232. data/spec/praxis/request_spec.rb +52 -24
  233. data/spec/praxis/{request_stages_action_spec.rb → request_stages/action_spec.rb} +1 -1
  234. data/spec/praxis/{request_stage_spec.rb → request_stages/request_stage_spec.rb} +0 -0
  235. data/spec/praxis/{request_stages_validate_spec.rb → request_stages/validate_spec.rb} +1 -1
  236. data/spec/praxis/resource_definition_spec.rb +30 -4
  237. data/spec/praxis/response_definition_spec.rb +60 -19
  238. data/spec/praxis/response_spec.rb +2 -2
  239. data/spec/praxis/responses/validation_error_spec.rb +33 -16
  240. data/spec/praxis/route_spec.rb +4 -2
  241. data/spec/praxis/router_spec.rb +28 -12
  242. data/spec/praxis/routing_config_spec.rb +11 -5
  243. data/spec/praxis/types/collection_spec.rb +1 -1
  244. data/spec/praxis/types/fuzzy_hash_spec.rb +20 -0
  245. data/spec/praxis/types/multipart_array/part_definition_spec.rb +5 -0
  246. data/spec/praxis/types/multipart_array_spec.rb +334 -0
  247. data/spec/praxis/types/multipart_spec.rb +14 -5
  248. data/spec/spec_app/app/controllers/instances.rb +20 -10
  249. data/spec/spec_app/app/controllers/volumes.rb +8 -4
  250. data/spec/spec_app/app/responses/bulk_response.rb +0 -6
  251. data/spec/spec_app/config/environment.rb +13 -0
  252. data/spec/spec_app/design/api.rb +7 -10
  253. data/spec/spec_app/design/media_types/instance.rb +3 -1
  254. data/spec/spec_app/design/resources/instances.rb +50 -41
  255. data/spec/spec_app/design/resources/volume_snapshots.rb +39 -0
  256. data/spec/spec_app/design/resources/volumes.rb +11 -6
  257. data/spec/spec_helper.rb +3 -1
  258. metadata +125 -218
  259. data/lib/api_browser/app/bower_components/angular-ui-router/src/compat.js +0 -146
  260. data/lib/api_browser/app/bower_components/bootstrap-sass/CNAME +0 -1
  261. data/lib/api_browser/app/bower_components/bootstrap-sass/DOCS-LICENSE +0 -319
  262. data/lib/api_browser/app/bower_components/bootstrap-sass/Gemfile +0 -5
  263. data/lib/api_browser/app/bower_components/bootstrap-sass/Gemfile.lock +0 -14
  264. data/lib/api_browser/app/bower_components/bootstrap-sass/Gruntfile.js +0 -244
  265. data/lib/api_browser/app/bower_components/bootstrap-sass/LICENSE +0 -176
  266. data/lib/api_browser/app/bower_components/bootstrap-sass/LICENSE-MIT +0 -21
  267. data/lib/api_browser/app/bower_components/bootstrap-sass/Rakefile +0 -44
  268. data/lib/api_browser/app/bower_components/bootstrap-sass/_config.yml +0 -25
  269. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/ads.html +0 -1
  270. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/footer.html +0 -34
  271. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/header.html +0 -42
  272. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-about.html +0 -12
  273. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-components.html +0 -137
  274. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-css.html +0 -99
  275. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-customize.html +0 -40
  276. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-getting-started.html +0 -44
  277. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-javascript.html +0 -88
  278. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-main.html +0 -37
  279. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/old-bs-docs.html +0 -8
  280. data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/social-buttons.html +0 -16
  281. data/lib/api_browser/app/bower_components/bootstrap-sass/_layouts/default.html +0 -79
  282. data/lib/api_browser/app/bower_components/bootstrap-sass/_layouts/home.html +0 -47
  283. data/lib/api_browser/app/bower_components/bootstrap-sass/about.html +0 -93
  284. data/lib/api_browser/app/bower_components/bootstrap-sass/browserstack.json +0 -37
  285. data/lib/api_browser/app/bower_components/bootstrap-sass/components.html +0 -3689
  286. data/lib/api_browser/app/bower_components/bootstrap-sass/composer.json +0 -28
  287. data/lib/api_browser/app/bower_components/bootstrap-sass/css.html +0 -2674
  288. data/lib/api_browser/app/bower_components/bootstrap-sass/customize.html +0 -1715
  289. data/lib/api_browser/app/bower_components/bootstrap-sass/dist/css/bootstrap-theme.css +0 -427
  290. data/lib/api_browser/app/bower_components/bootstrap-sass/dist/css/bootstrap-theme.min.css +0 -1
  291. data/lib/api_browser/app/bower_components/bootstrap-sass/dist/css/bootstrap.css +0 -6350
  292. data/lib/api_browser/app/bower_components/bootstrap-sass/dist/css/bootstrap.min.css +0 -1
  293. data/lib/api_browser/app/bower_components/bootstrap-sass/dist/js/bootstrap.js +0 -2002
  294. data/lib/api_browser/app/bower_components/bootstrap-sass/dist/js/bootstrap.min.js +0 -9
  295. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/css/docs.css +0 -1195
  296. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/css/pygments-manni.css +0 -66
  297. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/ico/apple-touch-icon-144-precomposed.png +0 -0
  298. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/ico/favicon.png +0 -0
  299. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/application.js +0 -103
  300. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/customizer.js +0 -332
  301. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/filesaver.js +0 -169
  302. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/holder.js +0 -404
  303. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/ie8-responsive-file-warning.js +0 -12
  304. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/jszip.js +0 -1467
  305. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/less.js +0 -9
  306. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/raw-files.js +0 -3
  307. data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/uglify.js +0 -14
  308. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/carousel/carousel.css +0 -148
  309. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/carousel/index.html +0 -206
  310. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/grid/grid.css +0 -28
  311. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/grid/index.html +0 -148
  312. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/jumbotron-narrow/index.html +0 -82
  313. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/jumbotron-narrow/jumbotron-narrow.css +0 -79
  314. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/jumbotron/index.html +0 -99
  315. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/jumbotron/jumbotron.css +0 -5
  316. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/justified-nav/index.html +0 -83
  317. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/justified-nav/justified-nav.css +0 -88
  318. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar-fixed-top/index.html +0 -91
  319. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar-fixed-top/navbar-fixed-top.css +0 -4
  320. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar-static-top/index.html +0 -92
  321. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar-static-top/navbar-static-top.css +0 -7
  322. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar/index.html +0 -88
  323. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar/navbar.css +0 -8
  324. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/non-responsive/index.html +0 -101
  325. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/non-responsive/non-responsive.css +0 -116
  326. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/offcanvas/index.html +0 -130
  327. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/offcanvas/offcanvas.css +0 -50
  328. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/offcanvas/offcanvas.js +0 -5
  329. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/carousel.jpg +0 -0
  330. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/grid.jpg +0 -0
  331. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/jumbotron-narrow.jpg +0 -0
  332. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/jumbotron.jpg +0 -0
  333. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/justified-nav.jpg +0 -0
  334. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/navbar-fixed.jpg +0 -0
  335. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/navbar-static.jpg +0 -0
  336. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/navbar.jpg +0 -0
  337. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/non-responsive.jpg +0 -0
  338. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/offcanvas.jpg +0 -0
  339. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/sign-in.jpg +0 -0
  340. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/starter-template.jpg +0 -0
  341. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/sticky-footer-navbar.jpg +0 -0
  342. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/sticky-footer.jpg +0 -0
  343. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/theme.jpg +0 -0
  344. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/signin/index.html +0 -50
  345. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/signin/signin.css +0 -40
  346. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/starter-template/index.html +0 -68
  347. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/starter-template/starter-template.css +0 -7
  348. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/sticky-footer-navbar/index.html +0 -91
  349. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/sticky-footer-navbar/sticky-footer-navbar.css +0 -45
  350. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/sticky-footer/index.html +0 -55
  351. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/sticky-footer/sticky-footer.css +0 -38
  352. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/theme/index.html +0 -384
  353. data/lib/api_browser/app/bower_components/bootstrap-sass/examples/theme/theme.css +0 -14
  354. data/lib/api_browser/app/bower_components/bootstrap-sass/fonts/glyphicons-halflings-regular.eot +0 -0
  355. data/lib/api_browser/app/bower_components/bootstrap-sass/fonts/glyphicons-halflings-regular.svg +0 -229
  356. data/lib/api_browser/app/bower_components/bootstrap-sass/fonts/glyphicons-halflings-regular.ttf +0 -0
  357. data/lib/api_browser/app/bower_components/bootstrap-sass/fonts/glyphicons-halflings-regular.woff +0 -0
  358. data/lib/api_browser/app/bower_components/bootstrap-sass/getting-started.html +0 -1021
  359. data/lib/api_browser/app/bower_components/bootstrap-sass/index.html +0 -16
  360. data/lib/api_browser/app/bower_components/bootstrap-sass/javascript.html +0 -1983
  361. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/index.html +0 -52
  362. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/affix.js +0 -25
  363. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/alert.js +0 -62
  364. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/button.js +0 -116
  365. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/carousel.js +0 -87
  366. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/collapse.js +0 -164
  367. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/dropdown.js +0 -219
  368. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/modal.js +0 -196
  369. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/phantom.js +0 -69
  370. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/popover.js +0 -133
  371. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/scrollspy.js +0 -37
  372. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/tab.js +0 -86
  373. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/tooltip.js +0 -437
  374. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/transition.js +0 -13
  375. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/vendor/jquery.js +0 -6
  376. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/vendor/qunit.css +0 -232
  377. data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/vendor/qunit.js +0 -1510
  378. data/lib/api_browser/app/bower_components/bootstrap-sass/package.json +0 -40
  379. data/lib/api_browser/app/bower_components/lodash/dist/lodash.compat.js +0 -7157
  380. data/lib/api_browser/app/bower_components/lodash/dist/lodash.compat.min.js +0 -61
  381. data/lib/api_browser/app/bower_components/lodash/dist/lodash.js +0 -6785
  382. data/lib/api_browser/app/bower_components/lodash/dist/lodash.min.js +0 -56
  383. data/lib/api_browser/app/bower_components/lodash/dist/lodash.underscore.js +0 -4979
  384. data/lib/api_browser/app/bower_components/lodash/dist/lodash.underscore.min.js +0 -39
  385. data/lib/api_browser/app/js/directives/attribute_table_row.js +0 -17
  386. data/lib/api_browser/app/js/directives/request_body.js +0 -25
  387. data/lib/api_browser/app/js/directives/request_headers.js +0 -17
  388. data/lib/api_browser/app/js/directives/request_parameters.js +0 -17
  389. data/lib/api_browser/app/js/directives/type_label.js +0 -52
  390. data/lib/api_browser/app/js/factories/PayloadTemplates.js +0 -10
  391. data/lib/api_browser/app/js/factories/TemplateProvider.js +0 -45
  392. data/lib/api_browser/app/js/factories/TypeTemplates.js +0 -11
  393. data/lib/api_browser/app/views/directives/attribute_description/_example.html +0 -13
  394. data/lib/api_browser/app/views/directives/attribute_description/_headers.html +0 -8
  395. data/lib/api_browser/app/views/directives/attribute_table_row/_default.html +0 -10
  396. data/lib/api_browser/app/views/directives/attribute_table_row/_links.html +0 -11
  397. data/lib/api_browser/app/views/directives/attribute_table_row/_struct.html +0 -2
  398. data/lib/api_browser/app/views/directives/request_body/_struct.html +0 -1
  399. data/lib/api_browser/app/views/resource/_actions.html +0 -27
@@ -1,146 +0,0 @@
1
- /*
2
- * @ngdoc object
3
- * @name ui.router.compat.$routeProvider
4
- *
5
- * @requires ui.router.state.$stateProvider
6
- * @requires ui.router.router.$urlRouterProvider
7
- *
8
- * @description
9
- * `$routeProvider` of the `ui.router.compat` module overwrites the existing
10
- * `routeProvider` from the core. This is done to provide compatibility between
11
- * the UI Router and the core router.
12
- *
13
- * It also provides a `when()` method to register routes that map to certain urls.
14
- * Behind the scenes it actually delegates either to
15
- * {@link ui.router.router.$urlRouterProvider $urlRouterProvider} or to the
16
- * {@link ui.router.state.$stateProvider $stateProvider} to postprocess the given
17
- * router definition object.
18
- */
19
- $RouteProvider.$inject = ['$stateProvider', '$urlRouterProvider'];
20
- function $RouteProvider( $stateProvider, $urlRouterProvider) {
21
-
22
- var routes = [];
23
-
24
- onEnterRoute.$inject = ['$$state'];
25
- function onEnterRoute( $$state) {
26
- /*jshint validthis: true */
27
- this.locals = $$state.locals.globals;
28
- this.params = this.locals.$stateParams;
29
- }
30
-
31
- function onExitRoute() {
32
- /*jshint validthis: true */
33
- this.locals = null;
34
- this.params = null;
35
- }
36
-
37
- this.when = when;
38
- /*
39
- * @ngdoc function
40
- * @name ui.router.compat.$routeProvider#when
41
- * @methodOf ui.router.compat.$routeProvider
42
- *
43
- * @description
44
- * Registers a route with a given route definition object. The route definition
45
- * object has the same interface the angular core route definition object has.
46
- *
47
- * @example
48
- * <pre>
49
- * var app = angular.module('app', ['ui.router.compat']);
50
- *
51
- * app.config(function ($routeProvider) {
52
- * $routeProvider.when('home', {
53
- * controller: function () { ... },
54
- * templateUrl: 'path/to/template'
55
- * });
56
- * });
57
- * </pre>
58
- *
59
- * @param {string} url URL as string
60
- * @param {object} route Route definition object
61
- *
62
- * @return {object} $routeProvider - $routeProvider instance
63
- */
64
- function when(url, route) {
65
- /*jshint validthis: true */
66
- if (route.redirectTo != null) {
67
- // Redirect, configure directly on $urlRouterProvider
68
- var redirect = route.redirectTo, handler;
69
- if (isString(redirect)) {
70
- handler = redirect; // leave $urlRouterProvider to handle
71
- } else if (isFunction(redirect)) {
72
- // Adapt to $urlRouterProvider API
73
- handler = function (params, $location) {
74
- return redirect(params, $location.path(), $location.search());
75
- };
76
- } else {
77
- throw new Error("Invalid 'redirectTo' in when()");
78
- }
79
- $urlRouterProvider.when(url, handler);
80
- } else {
81
- // Regular route, configure as state
82
- $stateProvider.state(inherit(route, {
83
- parent: null,
84
- name: 'route:' + encodeURIComponent(url),
85
- url: url,
86
- onEnter: onEnterRoute,
87
- onExit: onExitRoute
88
- }));
89
- }
90
- routes.push(route);
91
- return this;
92
- }
93
-
94
- /*
95
- * @ngdoc object
96
- * @name ui.router.compat.$route
97
- *
98
- * @requires ui.router.state.$state
99
- * @requires $rootScope
100
- * @requires $routeParams
101
- *
102
- * @property {object} routes - Array of registered routes.
103
- * @property {object} params - Current route params as object.
104
- * @property {string} current - Name of the current route.
105
- *
106
- * @description
107
- * The `$route` service provides interfaces to access defined routes. It also let's
108
- * you access route params through `$routeParams` service, so you have fully
109
- * control over all the stuff you would actually get from angular's core `$route`
110
- * service.
111
- */
112
- this.$get = $get;
113
- $get.$inject = ['$state', '$rootScope', '$routeParams'];
114
- function $get( $state, $rootScope, $routeParams) {
115
-
116
- var $route = {
117
- routes: routes,
118
- params: $routeParams,
119
- current: undefined
120
- };
121
-
122
- function stateAsRoute(state) {
123
- return (state.name !== '') ? state : undefined;
124
- }
125
-
126
- $rootScope.$on('$stateChangeStart', function (ev, to, toParams, from, fromParams) {
127
- $rootScope.$broadcast('$routeChangeStart', stateAsRoute(to), stateAsRoute(from));
128
- });
129
-
130
- $rootScope.$on('$stateChangeSuccess', function (ev, to, toParams, from, fromParams) {
131
- $route.current = stateAsRoute(to);
132
- $rootScope.$broadcast('$routeChangeSuccess', stateAsRoute(to), stateAsRoute(from));
133
- copy(toParams, $route.params);
134
- });
135
-
136
- $rootScope.$on('$stateChangeError', function (ev, to, toParams, from, fromParams, error) {
137
- $rootScope.$broadcast('$routeChangeError', stateAsRoute(to), stateAsRoute(from), error);
138
- });
139
-
140
- return $route;
141
- }
142
- }
143
-
144
- angular.module('ui.router.compat')
145
- .provider('$route', $RouteProvider)
146
- .directive('ngView', $ViewDirective);
@@ -1 +0,0 @@
1
- getbootstrap.com
@@ -1,319 +0,0 @@
1
- Creative Commons Legal Code
2
-
3
- Attribution 3.0 Unported
4
-
5
- CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
6
- LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN
7
- ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
8
- INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
9
- REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR
10
- DAMAGES RESULTING FROM ITS USE.
11
-
12
- License
13
-
14
- THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
15
- COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
16
- COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
17
- AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
18
-
19
- BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
20
- TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
21
- BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
22
- CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
23
- CONDITIONS.
24
-
25
- 1. Definitions
26
-
27
- a. "Adaptation" means a work based upon the Work, or upon the Work and
28
- other pre-existing works, such as a translation, adaptation,
29
- derivative work, arrangement of music or other alterations of a
30
- literary or artistic work, or phonogram or performance and includes
31
- cinematographic adaptations or any other form in which the Work may be
32
- recast, transformed, or adapted including in any form recognizably
33
- derived from the original, except that a work that constitutes a
34
- Collection will not be considered an Adaptation for the purpose of
35
- this License. For the avoidance of doubt, where the Work is a musical
36
- work, performance or phonogram, the synchronization of the Work in
37
- timed-relation with a moving image ("synching") will be considered an
38
- Adaptation for the purpose of this License.
39
- b. "Collection" means a collection of literary or artistic works, such as
40
- encyclopedias and anthologies, or performances, phonograms or
41
- broadcasts, or other works or subject matter other than works listed
42
- in Section 1(f) below, which, by reason of the selection and
43
- arrangement of their contents, constitute intellectual creations, in
44
- which the Work is included in its entirety in unmodified form along
45
- with one or more other contributions, each constituting separate and
46
- independent works in themselves, which together are assembled into a
47
- collective whole. A work that constitutes a Collection will not be
48
- considered an Adaptation (as defined above) for the purposes of this
49
- License.
50
- c. "Distribute" means to make available to the public the original and
51
- copies of the Work or Adaptation, as appropriate, through sale or
52
- other transfer of ownership.
53
- d. "Licensor" means the individual, individuals, entity or entities that
54
- offer(s) the Work under the terms of this License.
55
- e. "Original Author" means, in the case of a literary or artistic work,
56
- the individual, individuals, entity or entities who created the Work
57
- or if no individual or entity can be identified, the publisher; and in
58
- addition (i) in the case of a performance the actors, singers,
59
- musicians, dancers, and other persons who act, sing, deliver, declaim,
60
- play in, interpret or otherwise perform literary or artistic works or
61
- expressions of folklore; (ii) in the case of a phonogram the producer
62
- being the person or legal entity who first fixes the sounds of a
63
- performance or other sounds; and, (iii) in the case of broadcasts, the
64
- organization that transmits the broadcast.
65
- f. "Work" means the literary and/or artistic work offered under the terms
66
- of this License including without limitation any production in the
67
- literary, scientific and artistic domain, whatever may be the mode or
68
- form of its expression including digital form, such as a book,
69
- pamphlet and other writing; a lecture, address, sermon or other work
70
- of the same nature; a dramatic or dramatico-musical work; a
71
- choreographic work or entertainment in dumb show; a musical
72
- composition with or without words; a cinematographic work to which are
73
- assimilated works expressed by a process analogous to cinematography;
74
- a work of drawing, painting, architecture, sculpture, engraving or
75
- lithography; a photographic work to which are assimilated works
76
- expressed by a process analogous to photography; a work of applied
77
- art; an illustration, map, plan, sketch or three-dimensional work
78
- relative to geography, topography, architecture or science; a
79
- performance; a broadcast; a phonogram; a compilation of data to the
80
- extent it is protected as a copyrightable work; or a work performed by
81
- a variety or circus performer to the extent it is not otherwise
82
- considered a literary or artistic work.
83
- g. "You" means an individual or entity exercising rights under this
84
- License who has not previously violated the terms of this License with
85
- respect to the Work, or who has received express permission from the
86
- Licensor to exercise rights under this License despite a previous
87
- violation.
88
- h. "Publicly Perform" means to perform public recitations of the Work and
89
- to communicate to the public those public recitations, by any means or
90
- process, including by wire or wireless means or public digital
91
- performances; to make available to the public Works in such a way that
92
- members of the public may access these Works from a place and at a
93
- place individually chosen by them; to perform the Work to the public
94
- by any means or process and the communication to the public of the
95
- performances of the Work, including by public digital performance; to
96
- broadcast and rebroadcast the Work by any means including signs,
97
- sounds or images.
98
- i. "Reproduce" means to make copies of the Work by any means including
99
- without limitation by sound or visual recordings and the right of
100
- fixation and reproducing fixations of the Work, including storage of a
101
- protected performance or phonogram in digital form or other electronic
102
- medium.
103
-
104
- 2. Fair Dealing Rights. Nothing in this License is intended to reduce,
105
- limit, or restrict any uses free from copyright or rights arising from
106
- limitations or exceptions that are provided for in connection with the
107
- copyright protection under copyright law or other applicable laws.
108
-
109
- 3. License Grant. Subject to the terms and conditions of this License,
110
- Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
111
- perpetual (for the duration of the applicable copyright) license to
112
- exercise the rights in the Work as stated below:
113
-
114
- a. to Reproduce the Work, to incorporate the Work into one or more
115
- Collections, and to Reproduce the Work as incorporated in the
116
- Collections;
117
- b. to create and Reproduce Adaptations provided that any such Adaptation,
118
- including any translation in any medium, takes reasonable steps to
119
- clearly label, demarcate or otherwise identify that changes were made
120
- to the original Work. For example, a translation could be marked "The
121
- original work was translated from English to Spanish," or a
122
- modification could indicate "The original work has been modified.";
123
- c. to Distribute and Publicly Perform the Work including as incorporated
124
- in Collections; and,
125
- d. to Distribute and Publicly Perform Adaptations.
126
- e. For the avoidance of doubt:
127
-
128
- i. Non-waivable Compulsory License Schemes. In those jurisdictions in
129
- which the right to collect royalties through any statutory or
130
- compulsory licensing scheme cannot be waived, the Licensor
131
- reserves the exclusive right to collect such royalties for any
132
- exercise by You of the rights granted under this License;
133
- ii. Waivable Compulsory License Schemes. In those jurisdictions in
134
- which the right to collect royalties through any statutory or
135
- compulsory licensing scheme can be waived, the Licensor waives the
136
- exclusive right to collect such royalties for any exercise by You
137
- of the rights granted under this License; and,
138
- iii. Voluntary License Schemes. The Licensor waives the right to
139
- collect royalties, whether individually or, in the event that the
140
- Licensor is a member of a collecting society that administers
141
- voluntary licensing schemes, via that society, from any exercise
142
- by You of the rights granted under this License.
143
-
144
- The above rights may be exercised in all media and formats whether now
145
- known or hereafter devised. The above rights include the right to make
146
- such modifications as are technically necessary to exercise the rights in
147
- other media and formats. Subject to Section 8(f), all rights not expressly
148
- granted by Licensor are hereby reserved.
149
-
150
- 4. Restrictions. The license granted in Section 3 above is expressly made
151
- subject to and limited by the following restrictions:
152
-
153
- a. You may Distribute or Publicly Perform the Work only under the terms
154
- of this License. You must include a copy of, or the Uniform Resource
155
- Identifier (URI) for, this License with every copy of the Work You
156
- Distribute or Publicly Perform. You may not offer or impose any terms
157
- on the Work that restrict the terms of this License or the ability of
158
- the recipient of the Work to exercise the rights granted to that
159
- recipient under the terms of the License. You may not sublicense the
160
- Work. You must keep intact all notices that refer to this License and
161
- to the disclaimer of warranties with every copy of the Work You
162
- Distribute or Publicly Perform. When You Distribute or Publicly
163
- Perform the Work, You may not impose any effective technological
164
- measures on the Work that restrict the ability of a recipient of the
165
- Work from You to exercise the rights granted to that recipient under
166
- the terms of the License. This Section 4(a) applies to the Work as
167
- incorporated in a Collection, but this does not require the Collection
168
- apart from the Work itself to be made subject to the terms of this
169
- License. If You create a Collection, upon notice from any Licensor You
170
- must, to the extent practicable, remove from the Collection any credit
171
- as required by Section 4(b), as requested. If You create an
172
- Adaptation, upon notice from any Licensor You must, to the extent
173
- practicable, remove from the Adaptation any credit as required by
174
- Section 4(b), as requested.
175
- b. If You Distribute, or Publicly Perform the Work or any Adaptations or
176
- Collections, You must, unless a request has been made pursuant to
177
- Section 4(a), keep intact all copyright notices for the Work and
178
- provide, reasonable to the medium or means You are utilizing: (i) the
179
- name of the Original Author (or pseudonym, if applicable) if supplied,
180
- and/or if the Original Author and/or Licensor designate another party
181
- or parties (e.g., a sponsor institute, publishing entity, journal) for
182
- attribution ("Attribution Parties") in Licensor's copyright notice,
183
- terms of service or by other reasonable means, the name of such party
184
- or parties; (ii) the title of the Work if supplied; (iii) to the
185
- extent reasonably practicable, the URI, if any, that Licensor
186
- specifies to be associated with the Work, unless such URI does not
187
- refer to the copyright notice or licensing information for the Work;
188
- and (iv) , consistent with Section 3(b), in the case of an Adaptation,
189
- a credit identifying the use of the Work in the Adaptation (e.g.,
190
- "French translation of the Work by Original Author," or "Screenplay
191
- based on original Work by Original Author"). The credit required by
192
- this Section 4 (b) may be implemented in any reasonable manner;
193
- provided, however, that in the case of a Adaptation or Collection, at
194
- a minimum such credit will appear, if a credit for all contributing
195
- authors of the Adaptation or Collection appears, then as part of these
196
- credits and in a manner at least as prominent as the credits for the
197
- other contributing authors. For the avoidance of doubt, You may only
198
- use the credit required by this Section for the purpose of attribution
199
- in the manner set out above and, by exercising Your rights under this
200
- License, You may not implicitly or explicitly assert or imply any
201
- connection with, sponsorship or endorsement by the Original Author,
202
- Licensor and/or Attribution Parties, as appropriate, of You or Your
203
- use of the Work, without the separate, express prior written
204
- permission of the Original Author, Licensor and/or Attribution
205
- Parties.
206
- c. Except as otherwise agreed in writing by the Licensor or as may be
207
- otherwise permitted by applicable law, if You Reproduce, Distribute or
208
- Publicly Perform the Work either by itself or as part of any
209
- Adaptations or Collections, You must not distort, mutilate, modify or
210
- take other derogatory action in relation to the Work which would be
211
- prejudicial to the Original Author's honor or reputation. Licensor
212
- agrees that in those jurisdictions (e.g. Japan), in which any exercise
213
- of the right granted in Section 3(b) of this License (the right to
214
- make Adaptations) would be deemed to be a distortion, mutilation,
215
- modification or other derogatory action prejudicial to the Original
216
- Author's honor and reputation, the Licensor will waive or not assert,
217
- as appropriate, this Section, to the fullest extent permitted by the
218
- applicable national law, to enable You to reasonably exercise Your
219
- right under Section 3(b) of this License (right to make Adaptations)
220
- but not otherwise.
221
-
222
- 5. Representations, Warranties and Disclaimer
223
-
224
- UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
225
- OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
226
- KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
227
- INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
228
- FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
229
- LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
230
- WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION
231
- OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
232
-
233
- 6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE
234
- LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR
235
- ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES
236
- ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS
237
- BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
238
-
239
- 7. Termination
240
-
241
- a. This License and the rights granted hereunder will terminate
242
- automatically upon any breach by You of the terms of this License.
243
- Individuals or entities who have received Adaptations or Collections
244
- from You under this License, however, will not have their licenses
245
- terminated provided such individuals or entities remain in full
246
- compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
247
- survive any termination of this License.
248
- b. Subject to the above terms and conditions, the license granted here is
249
- perpetual (for the duration of the applicable copyright in the Work).
250
- Notwithstanding the above, Licensor reserves the right to release the
251
- Work under different license terms or to stop distributing the Work at
252
- any time; provided, however that any such election will not serve to
253
- withdraw this License (or any other license that has been, or is
254
- required to be, granted under the terms of this License), and this
255
- License will continue in full force and effect unless terminated as
256
- stated above.
257
-
258
- 8. Miscellaneous
259
-
260
- a. Each time You Distribute or Publicly Perform the Work or a Collection,
261
- the Licensor offers to the recipient a license to the Work on the same
262
- terms and conditions as the license granted to You under this License.
263
- b. Each time You Distribute or Publicly Perform an Adaptation, Licensor
264
- offers to the recipient a license to the original Work on the same
265
- terms and conditions as the license granted to You under this License.
266
- c. If any provision of this License is invalid or unenforceable under
267
- applicable law, it shall not affect the validity or enforceability of
268
- the remainder of the terms of this License, and without further action
269
- by the parties to this agreement, such provision shall be reformed to
270
- the minimum extent necessary to make such provision valid and
271
- enforceable.
272
- d. No term or provision of this License shall be deemed waived and no
273
- breach consented to unless such waiver or consent shall be in writing
274
- and signed by the party to be charged with such waiver or consent.
275
- e. This License constitutes the entire agreement between the parties with
276
- respect to the Work licensed here. There are no understandings,
277
- agreements or representations with respect to the Work not specified
278
- here. Licensor shall not be bound by any additional provisions that
279
- may appear in any communication from You. This License may not be
280
- modified without the mutual written agreement of the Licensor and You.
281
- f. The rights granted under, and the subject matter referenced, in this
282
- License were drafted utilizing the terminology of the Berne Convention
283
- for the Protection of Literary and Artistic Works (as amended on
284
- September 28, 1979), the Rome Convention of 1961, the WIPO Copyright
285
- Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996
286
- and the Universal Copyright Convention (as revised on July 24, 1971).
287
- These rights and subject matter take effect in the relevant
288
- jurisdiction in which the License terms are sought to be enforced
289
- according to the corresponding provisions of the implementation of
290
- those treaty provisions in the applicable national law. If the
291
- standard suite of rights granted under applicable copyright law
292
- includes additional rights not granted under this License, such
293
- additional rights are deemed to be included in the License; this
294
- License is not intended to restrict the license of any rights under
295
- applicable law.
296
-
297
-
298
- Creative Commons Notice
299
-
300
- Creative Commons is not a party to this License, and makes no warranty
301
- whatsoever in connection with the Work. Creative Commons will not be
302
- liable to You or any party on any legal theory for any damages
303
- whatsoever, including without limitation any general, special,
304
- incidental or consequential damages arising in connection to this
305
- license. Notwithstanding the foregoing two (2) sentences, if Creative
306
- Commons has expressly identified itself as the Licensor hereunder, it
307
- shall have all rights and obligations of Licensor.
308
-
309
- Except for the limited purpose of indicating to the public that the
310
- Work is licensed under the CCPL, Creative Commons does not authorize
311
- the use by either party of the trademark "Creative Commons" or any
312
- related trademark or logo of Creative Commons without the prior
313
- written consent of Creative Commons. Any permitted use will be in
314
- compliance with Creative Commons' then-current trademark usage
315
- guidelines, as may be published on its website or otherwise made
316
- available upon request from time to time. For the avoidance of doubt,
317
- this trademark restriction does not form part of this License.
318
-
319
- Creative Commons may be contacted at http://creativecommons.org/.