praxis 0.16.1 → 0.17.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rspec +0 -1
- data/.ruby-version +1 -1
- data/.travis.yml +2 -1
- data/CHANGELOG.md +41 -0
- data/CONTRIBUTING.md +3 -0
- data/lib/api_browser/Gruntfile.js +20 -4
- data/lib/api_browser/app/bower_components/angular-mocks/.bower.json +6 -6
- data/lib/api_browser/app/bower_components/angular-mocks/README.md +11 -5
- data/lib/api_browser/app/bower_components/angular-mocks/angular-mocks.js +475 -216
- data/lib/api_browser/app/bower_components/angular-mocks/bower.json +2 -2
- data/lib/api_browser/app/bower_components/angular-mocks/ngAnimateMock.js +2 -0
- data/lib/api_browser/app/bower_components/angular-mocks/ngMock.js +2 -0
- data/lib/api_browser/app/bower_components/angular-mocks/ngMockE2E.js +2 -0
- data/lib/api_browser/app/bower_components/angular-mocks/package.json +1 -1
- data/lib/api_browser/app/bower_components/angular-sanitize/.bower.json +8 -8
- data/lib/api_browser/app/bower_components/angular-sanitize/README.md +19 -5
- data/lib/api_browser/app/bower_components/angular-sanitize/angular-sanitize.js +186 -127
- data/lib/api_browser/app/bower_components/angular-sanitize/angular-sanitize.min.js +12 -10
- data/lib/api_browser/app/bower_components/angular-sanitize/angular-sanitize.min.js.map +3 -3
- data/lib/api_browser/app/bower_components/angular-sanitize/bower.json +3 -2
- data/lib/api_browser/app/bower_components/angular-sanitize/index.js +2 -0
- data/lib/api_browser/app/bower_components/angular-sanitize/package.json +26 -0
- data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/.bower.json +15 -8
- data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/bower.json +11 -3
- data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap-csp.css +6 -0
- data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap-tpls.js +1177 -453
- data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap-tpls.min.js +4 -4
- data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap.js +1066 -404
- data/lib/api_browser/app/bower_components/angular-ui-bootstrap-bower/ui-bootstrap.min.js +3 -3
- data/lib/api_browser/app/bower_components/angular-ui-router/.bower.json +5 -6
- data/lib/api_browser/app/bower_components/angular-ui-router/CHANGELOG.md +208 -3
- data/lib/api_browser/app/bower_components/angular-ui-router/CONTRIBUTING.md +65 -0
- data/lib/api_browser/app/bower_components/angular-ui-router/LICENSE +1 -1
- data/lib/api_browser/app/bower_components/angular-ui-router/README.md +36 -71
- data/lib/api_browser/app/bower_components/angular-ui-router/api/angular-ui-router.d.ts +126 -0
- data/lib/api_browser/app/bower_components/angular-ui-router/bower.json +1 -1
- data/lib/api_browser/app/bower_components/angular-ui-router/release/angular-ui-router.js +1902 -755
- data/lib/api_browser/app/bower_components/angular-ui-router/release/angular-ui-router.min.js +2 -2
- data/lib/api_browser/app/bower_components/angular-ui-router/src/common.js +69 -23
- data/lib/api_browser/app/bower_components/angular-ui-router/src/resolve.js +15 -5
- data/lib/api_browser/app/bower_components/angular-ui-router/src/state.js +556 -295
- data/lib/api_browser/app/bower_components/angular-ui-router/src/stateDirectives.js +101 -42
- data/lib/api_browser/app/bower_components/angular-ui-router/src/stateFilters.js +6 -2
- data/lib/api_browser/app/bower_components/angular-ui-router/src/templateFactory.js +2 -2
- data/lib/api_browser/app/bower_components/angular-ui-router/src/urlMatcherFactory.js +822 -97
- data/lib/api_browser/app/bower_components/angular-ui-router/src/urlRouter.js +274 -120
- data/lib/api_browser/app/bower_components/angular-ui-router/src/viewDirective.js +33 -20
- data/lib/api_browser/app/bower_components/angular-ui-router/src/viewScroll.js +1 -1
- data/lib/api_browser/app/bower_components/angular/.bower.json +5 -5
- data/lib/api_browser/app/bower_components/angular/README.md +2 -5
- data/lib/api_browser/app/bower_components/angular/angular-csp.css +5 -8
- data/lib/api_browser/app/bower_components/angular/angular.js +12975 -6996
- data/lib/api_browser/app/bower_components/angular/angular.min.js +285 -213
- data/lib/api_browser/app/bower_components/angular/angular.min.js.gzip +0 -0
- data/lib/api_browser/app/bower_components/angular/angular.min.js.map +3 -3
- data/lib/api_browser/app/bower_components/angular/bower.json +1 -1
- data/lib/api_browser/app/bower_components/angular/index.js +2 -0
- data/lib/api_browser/app/bower_components/angular/package.json +2 -2
- data/lib/api_browser/app/bower_components/bootstrap-sass/.bower.json +31 -16
- data/lib/api_browser/app/bower_components/bootstrap-sass/CHANGELOG.md +108 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/CONTRIBUTING.md +55 -37
- data/lib/api_browser/app/bower_components/bootstrap-sass/README.md +147 -206
- data/lib/api_browser/app/bower_components/bootstrap-sass/bower.json +19 -8
- data/lib/api_browser/app/bower_components/bootstrap-sass/{dist/fonts → vendor/assets/fonts/bootstrap}/glyphicons-halflings-regular.eot +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{dist/fonts → vendor/assets/fonts/bootstrap}/glyphicons-halflings-regular.svg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{dist/fonts → vendor/assets/fonts/bootstrap}/glyphicons-halflings-regular.ttf +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{dist/fonts → vendor/assets/fonts/bootstrap}/glyphicons-halflings-regular.woff +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/vendor/assets/javascripts/bootstrap.js +12 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/affix.js +1 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/alert.js +1 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/button.js +11 -5
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/carousel.js +5 -5
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/collapse.js +1 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/dropdown.js +5 -5
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/modal.js +1 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/popover.js +1 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/scrollspy.js +2 -2
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/tab.js +1 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/tooltip.js +1 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/{js → vendor/assets/javascripts/bootstrap}/transition.js +1 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/vendor/assets/stylesheets/bootstrap.scss +1 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_alerts.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_badges.scss +6 -6
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_breadcrumbs.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_button-groups.scss +7 -33
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_buttons.scss +2 -5
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_carousel.scss +1 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_close.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_code.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_component-animations.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_dropdowns.scss +3 -8
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_forms.scss +11 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_glyphicons.scss +5 -5
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_grid.scss +12 -26
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_input-groups.scss +1 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_jumbotron.scss +8 -2
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_labels.scss +6 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_list-group.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_media.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_mixins.scss +38 -51
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_modals.scss +2 -5
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_navbar.scss +41 -53
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_navs.scss +0 -20
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_normalize.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_pager.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_pagination.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_panels.scss +11 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_popovers.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_print.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_progress-bars.scss +0 -12
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_responsive-utilities.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_scaffolding.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_tables.scss +5 -18
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_theme.scss +2 -2
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_thumbnails.scss +9 -3
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_tooltip.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_type.scss +54 -52
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_utilities.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_variables.scss +20 -11
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/_wells.scss +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/{lib → vendor/assets/stylesheets/bootstrap}/bootstrap.scss +0 -0
- data/lib/api_browser/app/bower_components/lodash/.bower.json +9 -13
- data/lib/api_browser/app/bower_components/lodash/LICENSE.txt +3 -3
- data/lib/api_browser/app/bower_components/lodash/bower.json +4 -7
- data/lib/api_browser/app/bower_components/lodash/lodash.js +12235 -0
- data/lib/api_browser/app/bower_components/lodash/lodash.min.js +98 -0
- data/lib/api_browser/app/index.html +0 -1
- data/lib/api_browser/app/js/app.js +2 -5
- data/lib/api_browser/app/js/controllers/action.js +21 -37
- data/lib/api_browser/app/js/controllers/controller.js +23 -1
- data/lib/api_browser/app/js/controllers/menu.js +46 -14
- data/lib/api_browser/app/js/controllers/type.js +2 -9
- data/lib/api_browser/app/js/directives/attribute_description.js +15 -5
- data/lib/api_browser/app/js/directives/attribute_table.js +6 -6
- data/lib/api_browser/app/js/directives/fixed_if_fits.js +20 -0
- data/lib/api_browser/app/js/directives/no_container.js +6 -6
- data/lib/api_browser/app/js/directives/type_placeholder.js +21 -0
- data/lib/api_browser/app/js/factories/Configuration.js +13 -0
- data/lib/api_browser/app/js/factories/Documentation.js +0 -3
- data/lib/api_browser/app/js/factories/normalize_attributes.js +19 -0
- data/lib/api_browser/app/js/factories/template_for.js +113 -0
- data/lib/api_browser/app/sass/modules/_body.scss +26 -4
- data/lib/api_browser/app/sass/modules/_sidebar.scss +68 -1
- data/lib/api_browser/app/sass/praxis.scss +1 -5
- data/lib/api_browser/app/sass/variables/_bootstrap-variables.scss +13 -4
- data/lib/api_browser/app/views/action.html +13 -17
- data/lib/api_browser/app/views/controller.html +32 -4
- data/lib/api_browser/app/views/directives/attribute_description.html +1 -1
- data/lib/api_browser/app/views/directives/attribute_description/{_default.html → default.html} +0 -0
- data/lib/api_browser/app/views/directives/attribute_description/example.html +13 -0
- data/lib/api_browser/app/views/directives/attribute_description/headers.html +8 -0
- data/lib/api_browser/app/views/directives/attribute_description/member_options.html +4 -0
- data/lib/api_browser/app/views/directives/attribute_description/values.html +14 -0
- data/lib/api_browser/app/views/directives/attribute_table.html +2 -2
- data/lib/api_browser/app/views/home.html +1 -3
- data/lib/api_browser/app/views/layout.html +3 -36
- data/lib/api_browser/app/views/menu.html +45 -0
- data/lib/api_browser/app/views/navbar.html +1 -1
- data/lib/api_browser/app/views/type.html +2 -2
- data/lib/api_browser/app/views/type/{_details.html → details.html} +6 -6
- data/lib/api_browser/app/views/types/embedded/default.html +10 -0
- data/lib/api_browser/app/views/types/embedded/links.html +11 -0
- data/lib/api_browser/app/views/types/embedded/struct.html +2 -0
- data/lib/api_browser/app/views/types/label/link.html +1 -0
- data/lib/api_browser/app/views/types/label/primitive.html +1 -0
- data/lib/api_browser/app/views/types/label/primitive_collection.html +1 -0
- data/lib/api_browser/app/views/types/label/type.html +1 -0
- data/lib/api_browser/app/views/types/label/type_collection.html +1 -0
- data/lib/api_browser/app/views/{directives/request_body/_default.html → types/standalone/default.html} +1 -1
- data/lib/api_browser/app/views/types/standalone/struct.html +1 -0
- data/lib/api_browser/bower.json +9 -9
- data/lib/api_browser/package.json +1 -1
- data/lib/praxis.rb +10 -4
- data/lib/praxis/action_definition.rb +16 -4
- data/lib/praxis/action_definition/headers_dsl_compiler.rb +5 -2
- data/lib/praxis/api_definition.rb +3 -1
- data/lib/praxis/api_general_info.rb +49 -5
- data/lib/praxis/application.rb +12 -4
- data/lib/praxis/bootloader.rb +1 -0
- data/lib/praxis/bootloader_stages/environment.rb +2 -0
- data/lib/praxis/bootloader_stages/routing.rb +1 -1
- data/lib/praxis/bootloader_stages/subgroup_loader.rb +1 -0
- data/lib/praxis/exceptions/validation.rb +7 -0
- data/lib/praxis/handlers/plain.rb +16 -0
- data/lib/praxis/handlers/xml.rb +4 -4
- data/lib/praxis/links.rb +13 -3
- data/lib/praxis/media_type_identifier.rb +3 -0
- data/lib/praxis/multipart/parser.rb +41 -48
- data/lib/praxis/multipart/part.rb +196 -3
- data/lib/praxis/request.rb +14 -11
- data/lib/praxis/request_stages/request_stage.rb +4 -0
- data/lib/praxis/request_stages/response.rb +10 -9
- data/lib/praxis/request_stages/validate.rb +1 -7
- data/lib/praxis/request_stages/validate_params_and_headers.rb +30 -5
- data/lib/praxis/request_stages/validate_payload.rb +14 -5
- data/lib/praxis/resource_definition.rb +117 -15
- data/lib/praxis/response.rb +6 -5
- data/lib/praxis/response_definition.rb +51 -5
- data/lib/praxis/responses/http.rb +5 -0
- data/lib/praxis/responses/multipart_ok.rb +51 -0
- data/lib/praxis/responses/validation_error.rb +7 -7
- data/lib/praxis/restful_doc_generator.rb +9 -4
- data/lib/praxis/route.rb +3 -2
- data/lib/praxis/router.rb +26 -16
- data/lib/praxis/router/rack.rb +51 -0
- data/lib/praxis/router/simple.rb +146 -0
- data/lib/praxis/routing_config.rb +2 -2
- data/lib/praxis/trait.rb +1 -1
- data/lib/praxis/types/fuzzy_hash.rb +49 -0
- data/lib/praxis/types/media_type_common.rb +1 -1
- data/lib/praxis/types/multipart.rb +47 -12
- data/lib/praxis/types/multipart_array.rb +320 -0
- data/lib/praxis/types/multipart_array/part_definition.rb +52 -0
- data/lib/praxis/validation_handler.rb +10 -0
- data/lib/praxis/version.rb +2 -2
- data/praxis.gemspec +3 -3
- data/spec/api_browser/directives/type_placeholder_spec.js +134 -0
- data/spec/api_browser/factories/normalize_attributes_spec.js +97 -0
- data/spec/api_browser/factories/template_for_spec.js +67 -0
- data/spec/functional_spec.rb +111 -45
- data/spec/praxis/action_definition_spec.rb +31 -7
- data/spec/praxis/api_definition_spec.rb +2 -2
- data/spec/praxis/api_general_info_spec.rb +25 -0
- data/spec/praxis/application_spec.rb +24 -11
- data/spec/praxis/handlers/xml_spec.rb +55 -33
- data/spec/praxis/links_spec.rb +18 -1
- data/spec/praxis/media_type_collection_spec.rb +1 -1
- data/spec/praxis/media_type_spec.rb +2 -2
- data/spec/praxis/multipart/parser_spec.rb +21 -13
- data/spec/praxis/plugins/praxis_mapper_plugin_spec.rb +1 -1
- data/spec/praxis/request_spec.rb +52 -24
- data/spec/praxis/{request_stages_action_spec.rb → request_stages/action_spec.rb} +1 -1
- data/spec/praxis/{request_stage_spec.rb → request_stages/request_stage_spec.rb} +0 -0
- data/spec/praxis/{request_stages_validate_spec.rb → request_stages/validate_spec.rb} +1 -1
- data/spec/praxis/resource_definition_spec.rb +30 -4
- data/spec/praxis/response_definition_spec.rb +60 -19
- data/spec/praxis/response_spec.rb +2 -2
- data/spec/praxis/responses/validation_error_spec.rb +33 -16
- data/spec/praxis/route_spec.rb +4 -2
- data/spec/praxis/router_spec.rb +28 -12
- data/spec/praxis/routing_config_spec.rb +11 -5
- data/spec/praxis/types/collection_spec.rb +1 -1
- data/spec/praxis/types/fuzzy_hash_spec.rb +20 -0
- data/spec/praxis/types/multipart_array/part_definition_spec.rb +5 -0
- data/spec/praxis/types/multipart_array_spec.rb +334 -0
- data/spec/praxis/types/multipart_spec.rb +14 -5
- data/spec/spec_app/app/controllers/instances.rb +20 -10
- data/spec/spec_app/app/controllers/volumes.rb +8 -4
- data/spec/spec_app/app/responses/bulk_response.rb +0 -6
- data/spec/spec_app/config/environment.rb +13 -0
- data/spec/spec_app/design/api.rb +7 -10
- data/spec/spec_app/design/media_types/instance.rb +3 -1
- data/spec/spec_app/design/resources/instances.rb +50 -41
- data/spec/spec_app/design/resources/volume_snapshots.rb +39 -0
- data/spec/spec_app/design/resources/volumes.rb +11 -6
- data/spec/spec_helper.rb +3 -1
- metadata +125 -218
- data/lib/api_browser/app/bower_components/angular-ui-router/src/compat.js +0 -146
- data/lib/api_browser/app/bower_components/bootstrap-sass/CNAME +0 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/DOCS-LICENSE +0 -319
- data/lib/api_browser/app/bower_components/bootstrap-sass/Gemfile +0 -5
- data/lib/api_browser/app/bower_components/bootstrap-sass/Gemfile.lock +0 -14
- data/lib/api_browser/app/bower_components/bootstrap-sass/Gruntfile.js +0 -244
- data/lib/api_browser/app/bower_components/bootstrap-sass/LICENSE +0 -176
- data/lib/api_browser/app/bower_components/bootstrap-sass/LICENSE-MIT +0 -21
- data/lib/api_browser/app/bower_components/bootstrap-sass/Rakefile +0 -44
- data/lib/api_browser/app/bower_components/bootstrap-sass/_config.yml +0 -25
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/ads.html +0 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/footer.html +0 -34
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/header.html +0 -42
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-about.html +0 -12
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-components.html +0 -137
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-css.html +0 -99
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-customize.html +0 -40
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-getting-started.html +0 -44
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-javascript.html +0 -88
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/nav-main.html +0 -37
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/old-bs-docs.html +0 -8
- data/lib/api_browser/app/bower_components/bootstrap-sass/_includes/social-buttons.html +0 -16
- data/lib/api_browser/app/bower_components/bootstrap-sass/_layouts/default.html +0 -79
- data/lib/api_browser/app/bower_components/bootstrap-sass/_layouts/home.html +0 -47
- data/lib/api_browser/app/bower_components/bootstrap-sass/about.html +0 -93
- data/lib/api_browser/app/bower_components/bootstrap-sass/browserstack.json +0 -37
- data/lib/api_browser/app/bower_components/bootstrap-sass/components.html +0 -3689
- data/lib/api_browser/app/bower_components/bootstrap-sass/composer.json +0 -28
- data/lib/api_browser/app/bower_components/bootstrap-sass/css.html +0 -2674
- data/lib/api_browser/app/bower_components/bootstrap-sass/customize.html +0 -1715
- data/lib/api_browser/app/bower_components/bootstrap-sass/dist/css/bootstrap-theme.css +0 -427
- data/lib/api_browser/app/bower_components/bootstrap-sass/dist/css/bootstrap-theme.min.css +0 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/dist/css/bootstrap.css +0 -6350
- data/lib/api_browser/app/bower_components/bootstrap-sass/dist/css/bootstrap.min.css +0 -1
- data/lib/api_browser/app/bower_components/bootstrap-sass/dist/js/bootstrap.js +0 -2002
- data/lib/api_browser/app/bower_components/bootstrap-sass/dist/js/bootstrap.min.js +0 -9
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/css/docs.css +0 -1195
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/css/pygments-manni.css +0 -66
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/ico/apple-touch-icon-144-precomposed.png +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/ico/favicon.png +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/application.js +0 -103
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/customizer.js +0 -332
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/filesaver.js +0 -169
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/holder.js +0 -404
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/ie8-responsive-file-warning.js +0 -12
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/jszip.js +0 -1467
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/less.js +0 -9
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/raw-files.js +0 -3
- data/lib/api_browser/app/bower_components/bootstrap-sass/docs-assets/js/uglify.js +0 -14
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/carousel/carousel.css +0 -148
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/carousel/index.html +0 -206
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/grid/grid.css +0 -28
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/grid/index.html +0 -148
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/jumbotron-narrow/index.html +0 -82
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/jumbotron-narrow/jumbotron-narrow.css +0 -79
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/jumbotron/index.html +0 -99
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/jumbotron/jumbotron.css +0 -5
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/justified-nav/index.html +0 -83
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/justified-nav/justified-nav.css +0 -88
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar-fixed-top/index.html +0 -91
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar-fixed-top/navbar-fixed-top.css +0 -4
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar-static-top/index.html +0 -92
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar-static-top/navbar-static-top.css +0 -7
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar/index.html +0 -88
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/navbar/navbar.css +0 -8
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/non-responsive/index.html +0 -101
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/non-responsive/non-responsive.css +0 -116
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/offcanvas/index.html +0 -130
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/offcanvas/offcanvas.css +0 -50
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/offcanvas/offcanvas.js +0 -5
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/carousel.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/grid.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/jumbotron-narrow.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/jumbotron.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/justified-nav.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/navbar-fixed.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/navbar-static.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/navbar.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/non-responsive.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/offcanvas.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/sign-in.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/starter-template.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/sticky-footer-navbar.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/sticky-footer.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/screenshots/theme.jpg +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/signin/index.html +0 -50
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/signin/signin.css +0 -40
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/starter-template/index.html +0 -68
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/starter-template/starter-template.css +0 -7
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/sticky-footer-navbar/index.html +0 -91
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/sticky-footer-navbar/sticky-footer-navbar.css +0 -45
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/sticky-footer/index.html +0 -55
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/sticky-footer/sticky-footer.css +0 -38
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/theme/index.html +0 -384
- data/lib/api_browser/app/bower_components/bootstrap-sass/examples/theme/theme.css +0 -14
- data/lib/api_browser/app/bower_components/bootstrap-sass/fonts/glyphicons-halflings-regular.eot +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/fonts/glyphicons-halflings-regular.svg +0 -229
- data/lib/api_browser/app/bower_components/bootstrap-sass/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/fonts/glyphicons-halflings-regular.woff +0 -0
- data/lib/api_browser/app/bower_components/bootstrap-sass/getting-started.html +0 -1021
- data/lib/api_browser/app/bower_components/bootstrap-sass/index.html +0 -16
- data/lib/api_browser/app/bower_components/bootstrap-sass/javascript.html +0 -1983
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/index.html +0 -52
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/affix.js +0 -25
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/alert.js +0 -62
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/button.js +0 -116
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/carousel.js +0 -87
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/collapse.js +0 -164
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/dropdown.js +0 -219
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/modal.js +0 -196
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/phantom.js +0 -69
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/popover.js +0 -133
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/scrollspy.js +0 -37
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/tab.js +0 -86
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/tooltip.js +0 -437
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/unit/transition.js +0 -13
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/vendor/jquery.js +0 -6
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/vendor/qunit.css +0 -232
- data/lib/api_browser/app/bower_components/bootstrap-sass/js/tests/vendor/qunit.js +0 -1510
- data/lib/api_browser/app/bower_components/bootstrap-sass/package.json +0 -40
- data/lib/api_browser/app/bower_components/lodash/dist/lodash.compat.js +0 -7157
- data/lib/api_browser/app/bower_components/lodash/dist/lodash.compat.min.js +0 -61
- data/lib/api_browser/app/bower_components/lodash/dist/lodash.js +0 -6785
- data/lib/api_browser/app/bower_components/lodash/dist/lodash.min.js +0 -56
- data/lib/api_browser/app/bower_components/lodash/dist/lodash.underscore.js +0 -4979
- data/lib/api_browser/app/bower_components/lodash/dist/lodash.underscore.min.js +0 -39
- data/lib/api_browser/app/js/directives/attribute_table_row.js +0 -17
- data/lib/api_browser/app/js/directives/request_body.js +0 -25
- data/lib/api_browser/app/js/directives/request_headers.js +0 -17
- data/lib/api_browser/app/js/directives/request_parameters.js +0 -17
- data/lib/api_browser/app/js/directives/type_label.js +0 -52
- data/lib/api_browser/app/js/factories/PayloadTemplates.js +0 -10
- data/lib/api_browser/app/js/factories/TemplateProvider.js +0 -45
- data/lib/api_browser/app/js/factories/TypeTemplates.js +0 -11
- data/lib/api_browser/app/views/directives/attribute_description/_example.html +0 -13
- data/lib/api_browser/app/views/directives/attribute_description/_headers.html +0 -8
- data/lib/api_browser/app/views/directives/attribute_table_row/_default.html +0 -10
- data/lib/api_browser/app/views/directives/attribute_table_row/_links.html +0 -11
- data/lib/api_browser/app/views/directives/attribute_table_row/_struct.html +0 -2
- data/lib/api_browser/app/views/directives/request_body/_struct.html +0 -1
- data/lib/api_browser/app/views/resource/_actions.html +0 -27
@@ -0,0 +1,21 @@
|
|
1
|
+
/**
|
2
|
+
* This directive replaces itself with a specialised type template based on the
|
3
|
+
* type it is displaying.
|
4
|
+
*/
|
5
|
+
app.directive('typePlaceholder', function(templateFor, $stateParams) {
|
6
|
+
return {
|
7
|
+
restrict: 'EA',
|
8
|
+
scope: {
|
9
|
+
type: '=',
|
10
|
+
template: '@',
|
11
|
+
details: '=?',
|
12
|
+
name: '=?'
|
13
|
+
},
|
14
|
+
link: function(scope, element) {
|
15
|
+
scope.apiVersion = $stateParams.version;
|
16
|
+
templateFor(scope.type, scope.template).then(function(templateFn) {
|
17
|
+
element.replaceWith(templateFn(scope));
|
18
|
+
});
|
19
|
+
}
|
20
|
+
};
|
21
|
+
});
|
@@ -0,0 +1,13 @@
|
|
1
|
+
// Use this to provide settings for the doc browser
|
2
|
+
app.provider('Configuration', function() {
|
3
|
+
this.title = 'API Browser';
|
4
|
+
this.versionLabel = 'API Version';
|
5
|
+
this.expandChildren = true;
|
6
|
+
|
7
|
+
this.$get = function() {
|
8
|
+
return this;
|
9
|
+
};
|
10
|
+
}).run(function(Configuration, $rootScope, $document) {
|
11
|
+
_.extend($rootScope, _.omit(Configuration, '$get'));
|
12
|
+
$document[0].title = Configuration.title;
|
13
|
+
});
|
@@ -8,9 +8,6 @@
|
|
8
8
|
},
|
9
9
|
getType: function(version, name) {
|
10
10
|
return $http.get('api/' + version + '/types/' + name + '.json', { cache: true });
|
11
|
-
},
|
12
|
-
getTemplates: function(version) {
|
13
|
-
return $http.get('api/' + version + '/templates.json', { cache: true });
|
14
11
|
}
|
15
12
|
};
|
16
13
|
});
|
@@ -0,0 +1,19 @@
|
|
1
|
+
app.factory('normalizeAttributes', function() {
|
2
|
+
function normalize(type, attributes, parent) {
|
3
|
+
_.forEach(attributes, function(attribute, name) {
|
4
|
+
var path = parent.concat([name]);
|
5
|
+
var example = JSON.stringify(_.get(type.example, path), null, 2);
|
6
|
+
if (!attribute.options) attribute.options = {};
|
7
|
+
if (example) attribute.options.example = example;
|
8
|
+
if (attribute.values != null) attribute.options.values = attribute.values;
|
9
|
+
if (attribute.default != null) attribute.options.default = attribute.default;
|
10
|
+
if (attribute.type && attribute.type.attributes) {
|
11
|
+
normalize(type, attribute.type.attributes, path);
|
12
|
+
}
|
13
|
+
});
|
14
|
+
}
|
15
|
+
|
16
|
+
return function(type, attributes) {
|
17
|
+
normalize(type, attributes, []);
|
18
|
+
};
|
19
|
+
});
|
@@ -0,0 +1,113 @@
|
|
1
|
+
/**
|
2
|
+
* Allows dynamic UI based on resolvers. You can customise the way templates
|
3
|
+
* work in the doc browser by registering your own template resolver.
|
4
|
+
*
|
5
|
+
* A template resolver is dependency injected function that has several special
|
6
|
+
* arguments that can be injected. These are:
|
7
|
+
*
|
8
|
+
* Name | Type | Description
|
9
|
+
* --------------------|---------|----------------------------------------------
|
10
|
+
* $type | String | The name of a type.
|
11
|
+
* $family | String | The family or group of types this type belongs to.
|
12
|
+
* $typeDefinition | Object | The full definition of the type as available.
|
13
|
+
* $requestedTemplate | String | This is the kind of template that we want. Possible values are: standalone, embedded and label. Embedded templates represent types that are attributes of another type. The template thus should assume that it is being rendered in a table row. Label templates display a human readable name of a type. Standalone templates are used when a type is displayed by itself (i.e. a request payload).
|
14
|
+
*
|
15
|
+
* The type resolver should return either a $compiled template, or a url of a
|
16
|
+
* template or a promise for one of those. In that case the template resolution
|
17
|
+
* procedure will halt and the returned template will be displayed. If `undefined`
|
18
|
+
* is passed, the next resolver will be invoked. A promise for undefined is currently
|
19
|
+
* not supported.
|
20
|
+
*/
|
21
|
+
app.provider('templateFor', function() {
|
22
|
+
|
23
|
+
var resolvers = [];
|
24
|
+
/**
|
25
|
+
* Register a custom template resolver.
|
26
|
+
* @param {function} resolver
|
27
|
+
* A function that returns undefined or a promise for a compiled template or a template url.
|
28
|
+
*/
|
29
|
+
this.register = function(resolver) {
|
30
|
+
resolvers.unshift(resolver);
|
31
|
+
};
|
32
|
+
|
33
|
+
this.register(/*ngInject*/function payloadResolver($family, $requestedTemplate) {
|
34
|
+
if ($requestedTemplate === 'standalone') {
|
35
|
+
switch ($family) {
|
36
|
+
case 'hash':
|
37
|
+
return 'views/types/standalone/struct.html';
|
38
|
+
default:
|
39
|
+
return 'views/types/standalone/default.html';
|
40
|
+
}
|
41
|
+
}
|
42
|
+
});
|
43
|
+
|
44
|
+
this.register(/*ngInject*/function typeResolver($family, $type, $requestedTemplate) {
|
45
|
+
if ($requestedTemplate === 'embedded') {
|
46
|
+
if ($type === 'Links') {
|
47
|
+
return 'views/types/embedded/links.html';
|
48
|
+
}
|
49
|
+
switch ($family) {
|
50
|
+
case 'hash':
|
51
|
+
return 'views/types/embedded/struct.html';
|
52
|
+
default:
|
53
|
+
return 'views/types/embedded/default.html';
|
54
|
+
}
|
55
|
+
}
|
56
|
+
});
|
57
|
+
|
58
|
+
this.register(/*ngInject*/function labelResolver($typeDefinition, $requestedTemplate, primitives) {
|
59
|
+
if ($requestedTemplate === 'label') {
|
60
|
+
if (_.contains(primitives, $typeDefinition.name)) {
|
61
|
+
return 'views/types/label/primitive.html';
|
62
|
+
} else if ( $typeDefinition.member_attribute !== undefined ) {
|
63
|
+
if ( _.contains(primitives, $typeDefinition.member_attribute.type.name)){
|
64
|
+
return 'views/types/label/primitive_collection.html';
|
65
|
+
} else{
|
66
|
+
return 'views/types/label/type_collection.html';
|
67
|
+
}
|
68
|
+
} else if ($typeDefinition.link_to) {
|
69
|
+
return 'views/types/label/link.html';
|
70
|
+
}
|
71
|
+
return 'views/types/label/type.html';
|
72
|
+
}
|
73
|
+
});
|
74
|
+
|
75
|
+
this.$get = function($q, $http, $injector, $compile, $templateCache) {
|
76
|
+
return function(type, templateType) {
|
77
|
+
for (var i = 0; i < resolvers.length; i++) {
|
78
|
+
var result = $injector.invoke(resolvers[i], this, {
|
79
|
+
$type: type.name,
|
80
|
+
$typeDefinition: type,
|
81
|
+
$family: type.family || type.name,
|
82
|
+
$requestedTemplate: templateType
|
83
|
+
});
|
84
|
+
if (result) {
|
85
|
+
return $q.when(result).then(function(template) {
|
86
|
+
if (_.isFunction(template)) {
|
87
|
+
return template;
|
88
|
+
} else if (_.isString(template)) {
|
89
|
+
return $http.get(template, {cache: $templateCache}).then(function(response) {
|
90
|
+
return $compile(response.data);
|
91
|
+
});
|
92
|
+
} else {
|
93
|
+
throw 'Resolver returned an unknown type';
|
94
|
+
}
|
95
|
+
});
|
96
|
+
}
|
97
|
+
}
|
98
|
+
throw 'Template did not match any resolver.';
|
99
|
+
};
|
100
|
+
};
|
101
|
+
})
|
102
|
+
.constant('primitives', [
|
103
|
+
'Boolean',
|
104
|
+
'CSV',
|
105
|
+
'DateTime',
|
106
|
+
'Float',
|
107
|
+
'Hash',
|
108
|
+
'Ids',
|
109
|
+
'Integer',
|
110
|
+
'Object',
|
111
|
+
'String',
|
112
|
+
'Struct'
|
113
|
+
]);
|
@@ -11,8 +11,30 @@ body {
|
|
11
11
|
}
|
12
12
|
|
13
13
|
.content {
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
14
|
+
dl {
|
15
|
+
margin-top: 0;
|
16
|
+
margin-bottom: 0;
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
.verb.get {
|
21
|
+
background: $get-color;
|
22
|
+
}
|
23
|
+
.verb.post {
|
24
|
+
background: $post-color;
|
25
|
+
}
|
26
|
+
.verb.delete {
|
27
|
+
background: $delete-color;
|
28
|
+
}
|
29
|
+
.verb.put {
|
30
|
+
background: $put-color;
|
31
|
+
}
|
32
|
+
.verb.patch {
|
33
|
+
background: $patch-color;
|
34
|
+
}
|
35
|
+
|
36
|
+
.action-divider {
|
37
|
+
border-top: 2px solid darken($hr-border, 4);
|
38
|
+
margin-bottom: 3rem;
|
39
|
+
margin-top: 3rem;
|
18
40
|
}
|
@@ -20,7 +20,74 @@
|
|
20
20
|
}
|
21
21
|
|
22
22
|
.sidebar {
|
23
|
+
.list-group {
|
24
|
+
margin-bottom: 0;
|
25
|
+
margin-top: 0;
|
26
|
+
}
|
23
27
|
.list-group-item {
|
28
|
+
border-width: 1px 0;
|
24
29
|
word-break: break-word;
|
30
|
+
&:first-of-type {
|
31
|
+
border-radius: 0;
|
32
|
+
border-top: 0 none;
|
33
|
+
}
|
34
|
+
&:last-of-type {
|
35
|
+
border-bottom: 0 none;
|
36
|
+
}
|
37
|
+
&.child-resource {
|
38
|
+
padding-left: 2.5em;
|
39
|
+
}
|
40
|
+
&.group-selected {
|
41
|
+
border-left: 2px solid $link-color;
|
42
|
+
}
|
25
43
|
}
|
26
|
-
}
|
44
|
+
}
|
45
|
+
|
46
|
+
.tab-list-group {
|
47
|
+
border: 1px solid $nav-tabs-border-color;
|
48
|
+
border-radius: 3px;
|
49
|
+
margin-top: 1rem;
|
50
|
+
}
|
51
|
+
|
52
|
+
.sidebar {
|
53
|
+
.nav-tabs {
|
54
|
+
border: 1px solid $nav-tabs-border-color;
|
55
|
+
border-width: 0 0 1px 0;
|
56
|
+
li {
|
57
|
+
&:first-of-type {
|
58
|
+
a,
|
59
|
+
a:hover,
|
60
|
+
a:focus {
|
61
|
+
border-left: 0 none;
|
62
|
+
border-radius: 2px 2px 0 0;
|
63
|
+
}
|
64
|
+
}
|
65
|
+
&:last-of-type {
|
66
|
+
a,
|
67
|
+
a:hover,
|
68
|
+
a:focus {
|
69
|
+
border-radius: 2px 2px 0 0;
|
70
|
+
border-right: 0 none;
|
71
|
+
}
|
72
|
+
}
|
73
|
+
a {
|
74
|
+
border-bottom: 0;
|
75
|
+
font-size: 12px;
|
76
|
+
&:hover {
|
77
|
+
background-color: #fff;
|
78
|
+
border-color: transparent;
|
79
|
+
color: $link-hover-color;
|
80
|
+
}
|
81
|
+
}
|
82
|
+
}
|
83
|
+
.active a,
|
84
|
+
.active a:hover,
|
85
|
+
.active a:focus {
|
86
|
+
border-top: 2px solid $link-color;
|
87
|
+
color: $link-color;
|
88
|
+
font-weight: bold;
|
89
|
+
margin-bottom: -1px;
|
90
|
+
}
|
91
|
+
|
92
|
+
}
|
93
|
+
}
|
@@ -5,7 +5,7 @@
|
|
5
5
|
// Bootstrap and Bootstrap variables
|
6
6
|
|
7
7
|
@import "variables/bootstrap-variables";
|
8
|
-
@import "../bower_components/bootstrap-sass/
|
8
|
+
@import "../bower_components/bootstrap-sass/vendor/assets/stylesheets/bootstrap";
|
9
9
|
|
10
10
|
// Modules
|
11
11
|
|
@@ -31,10 +31,6 @@
|
|
31
31
|
color: #aaa;
|
32
32
|
}
|
33
33
|
|
34
|
-
rs-attribute-description dt {
|
35
|
-
text-transform: capitalize;
|
36
|
-
}
|
37
|
-
|
38
34
|
.attribute-table {
|
39
35
|
div[class*='col-'] {
|
40
36
|
padding: $table-cell-padding;
|
@@ -46,10 +46,10 @@ $font-size-base: 13px !default;
|
|
46
46
|
$font-size-large: ceil(($font-size-base * 1.25)) !default; // ~18px
|
47
47
|
$font-size-small: ceil(($font-size-base * 0.85)) !default; // ~12px
|
48
48
|
|
49
|
-
$font-size-h1: floor(($font-size-base * 2.6)) !default; // ~
|
50
|
-
$font-size-h2: floor(($font-size-base * 2.
|
51
|
-
$font-size-h3: ceil(($font-size-base * 1.
|
52
|
-
$font-size-h4: ceil(($font-size-base * 1.
|
49
|
+
$font-size-h1: floor(($font-size-base * 2.6)) !default; // ~33px
|
50
|
+
$font-size-h2: floor(($font-size-base * 2.2)) !default; // ~28px
|
51
|
+
$font-size-h3: ceil(($font-size-base * 1.4)) !default; // ~19px
|
52
|
+
$font-size-h4: ceil(($font-size-base * 1.1)) !default; // ~15px
|
53
53
|
$font-size-h5: $font-size-base !default;
|
54
54
|
$font-size-h6: ceil(($font-size-base * 0.85)) !default; // ~12px
|
55
55
|
|
@@ -763,3 +763,12 @@ $hr-border: $gray-lighter !default;
|
|
763
763
|
|
764
764
|
// horizontal offset for forms and lists.
|
765
765
|
$component-offset-horizontal: 180px !default;
|
766
|
+
|
767
|
+
// Praxis Specific Variables
|
768
|
+
|
769
|
+
// HTTP verbs
|
770
|
+
$get-color: #85c630 !default;
|
771
|
+
$post-color: #8640b5 !default;
|
772
|
+
$put-color: #e88a3c !default;
|
773
|
+
$delete-color: #b8321e !default;
|
774
|
+
$patch-color: #58b587 !default;
|
@@ -1,16 +1,14 @@
|
|
1
|
-
<!-- Action -->
|
2
|
-
|
3
1
|
<div ng-if="error" class="alert alert-danger">
|
4
2
|
<p>The requested action could not be found.</p>
|
5
3
|
</div>
|
6
4
|
<div ng-if="action">
|
7
5
|
<div class="row">
|
8
6
|
<div class="col-lg-12">
|
9
|
-
<
|
7
|
+
<h2>
|
10
8
|
{{ action.name }}
|
11
|
-
</
|
9
|
+
</h2>
|
12
10
|
<p ng-repeat="url in action.urls">
|
13
|
-
{{ url.verb }} {{ url.path }}
|
11
|
+
<span class="label label-default verb" ng-class="url.verb | lowercase">{{ url.verb }}</span> <b>{{ url.path }}</b>
|
14
12
|
</p>
|
15
13
|
<p ng-bind-html="action.description | markdown"></p>
|
16
14
|
</div>
|
@@ -18,33 +16,30 @@
|
|
18
16
|
|
19
17
|
<div class="row" ng-if="action.headers.type.attributes">
|
20
18
|
<div class="col-lg-12">
|
21
|
-
<
|
22
|
-
<
|
23
|
-
<!--<rs-attribute-table attributes="action.headers.type.attributes" show-groups="true"></rs-attribute-table>-->
|
19
|
+
<h3>Request Headers</h3>
|
20
|
+
<type-placeholder details="action.headers.type.attributes" type="action.headers.type" template="standalone"></type-placeholder>
|
24
21
|
</div>
|
25
22
|
</div>
|
26
23
|
|
27
24
|
<div class="row" ng-if="action.params.type.attributes">
|
28
25
|
<div class="col-lg-12">
|
29
|
-
<
|
30
|
-
<
|
31
|
-
<!--<rs-attribute-table attributes="action.params.type.attributes" show-groups="true"></rs-attribute-table>-->
|
26
|
+
<h3>Request Parameters</h3>
|
27
|
+
<type-placeholder details="action.params.type.attributes" type="action.params.type" template="standalone"></type-placeholder>
|
32
28
|
</div>
|
33
29
|
</div>
|
34
30
|
|
35
31
|
<div class="row" ng-if="action.payload.type">
|
36
32
|
<div class="col-lg-12">
|
37
|
-
<
|
38
|
-
<
|
39
|
-
<!--<rs-attribute-table attributes="action.payload.type.attributes" show-groups="true"></rs-attribute-table>-->
|
33
|
+
<h3>Request Body</h3>
|
34
|
+
<type-placeholder type="action.payload.type" template="standalone" details="action.payload.type.attributes"></type-placeholder>
|
40
35
|
</div>
|
41
36
|
</div>
|
42
37
|
|
43
38
|
<div class="row" ng-if="hasResponses()">
|
44
39
|
<div class="col-lg-12">
|
45
|
-
<
|
40
|
+
<h3>Responses</h3>
|
46
41
|
<div class="table-responsive">
|
47
|
-
<table class="table table-striped">
|
42
|
+
<table class="table table-striped table-bordered">
|
48
43
|
<thead>
|
49
44
|
<tr>
|
50
45
|
<th>Code</th>
|
@@ -68,7 +63,7 @@
|
|
68
63
|
{{response.media_type.id || response.media_type.identifier}}
|
69
64
|
</td>
|
70
65
|
<td>
|
71
|
-
<
|
66
|
+
<attribute-description attribute="response"></attribute-description>
|
72
67
|
</td>
|
73
68
|
</tr>
|
74
69
|
</tbody>
|
@@ -77,3 +72,4 @@
|
|
77
72
|
</div>
|
78
73
|
</div>
|
79
74
|
</div>
|
75
|
+
<hr class="action-divider" />
|
@@ -1,5 +1,3 @@
|
|
1
|
-
<!-- Controller -->
|
2
|
-
|
3
1
|
<div ng-if="error" class="alert alert-danger">
|
4
2
|
<p>The requested controller could not be found.</p>
|
5
3
|
</div>
|
@@ -15,10 +13,40 @@
|
|
15
13
|
<div class="row" ng-if="controller.actions.length">
|
16
14
|
<div class="col-lg-12">
|
17
15
|
<h2>Actions</h2>
|
18
|
-
<
|
16
|
+
<div class="table-responsive">
|
17
|
+
<table class="table table-striped table-bordered">
|
18
|
+
<thead>
|
19
|
+
<tr>
|
20
|
+
<th>Name</th>
|
21
|
+
<th>Route</th>
|
22
|
+
<th>Description</th>
|
23
|
+
</tr>
|
24
|
+
</thead>
|
25
|
+
<tbody>
|
26
|
+
<tr ng-repeat="action in controller.actions">
|
27
|
+
<td>
|
28
|
+
<a ui-sref="root.controller.action({action: action.name, controller: controllerName, version: apiVersion})">{{ action.name }}</a>
|
29
|
+
</td>
|
30
|
+
<td>
|
31
|
+
<div ng-repeat="url in action.urls">
|
32
|
+
<div class="label label-default verb" ng-class="url.verb | lowercase">{{ url.verb }}</div>
|
33
|
+
<strong>{{ url.path }}</strong>
|
34
|
+
</div>
|
35
|
+
</td>
|
36
|
+
<td style="font-size: 110%;">
|
37
|
+
<p ng-bind-html="action.description | markdown"></p>
|
38
|
+
</td>
|
39
|
+
</tr>
|
40
|
+
</tbody>
|
41
|
+
</table>
|
42
|
+
</div>
|
19
43
|
</div>
|
20
44
|
</div>
|
21
45
|
<div ng-if="controller.media_type" ng-controller="TypeCtrl">
|
22
|
-
<ng-include src="'views/type/
|
46
|
+
<ng-include src="'views/type/details.html'" />
|
47
|
+
</div>
|
48
|
+
<h1>Actions</h1>
|
49
|
+
<div ng-controller="ActionCtrl" ng-repeat="action in controller.actions">
|
50
|
+
<div id="action-{{action.name}}" ng-include="'views/action.html'"></div>
|
23
51
|
</div>
|
24
52
|
</div>
|