Sha256: 838ba3bf5a2b4d66f3eb73531ef20d031f08bddb59b201dbf9b90cd28ff40bee

Contents?: true

Size: 1.56 KB

Versions: 1

Compression:

Stored size: 1.56 KB

Contents

require 'open_api/config_dsl'
require 'active_support/all'

module OpenApi
  module Config
    include ConfigDSL

    # [REQUIRED] The location where .json doc file will be output.
    cattr_accessor :file_output_path do
      'public/open_api'
    end

    cattr_accessor :generate_doc do
      true
    end

    cattr_accessor :doc_location do
      ['./app/**/*_doc.rb']
    end

    cattr_accessor :rails_routes_file do
      nil
    end

    cattr_accessor :active_record_base do
      nil
    end

    # Everything about OAS3 is on https://github.com/OAI/OpenAPI-Specification/blob/OpenAPI.next/versions/3.0.0.md
    # Getting started: https://swagger.io/docs/specification/basic-structure/
    cattr_accessor :open_api_docs do
      {
      #     # [REQUIRED] At least one doc.
      #     zero_rails: {
      #         # [REQUIRED] ZRO will scan all the descendants of the root_controller, and then generate their docs.
      #         root_controller: ApplicationController,
      #
      #         # [REQUIRED] Info Object: The info section contains API information
      #         info: {
      #             # [REQUIRED] The title of the application.
      #             title: 'Zero Rails Apis',
      #             # [REQUIRED] The version of the OpenAPI document
      #             # (which is distinct from the OpenAPI Specification version or the API implementation version).
      #             version: '0.0.1'
      #         }
      #     }
      }
    end

    cattr_accessor :dft_file_format do
      'binary'
    end

    def self.docs
      open_api_docs
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
zero-rails_openapi-1.5.1 lib/open_api/config.rb