# frozen_string_literal: true
require_relative '../../tasks_utils'
namespace :apipie_dsl do
desc 'Generate static documentation json' if ApipieDSL.configuration.rails? task static_json: :environment do |_task, args| ApipieDSL::TasksUtils.with_loaded_documentation do args.with_defaults(version: ApipieDSL.configuration.default_version) out = ENV['OUT'] || File.join(::Rails.root, ApipieDSL.configuration.doc_path, 'dsldoc') ([nil] + ApipieDSL.configuration.languages).each do |lang| doc = ApipieDSL.docs(args[:version], nil, nil, lang) ApipieDSL::TasksUtils.generate_json_page(out, doc, lang) end end end else task :static_json do |_task, args| ApipieDSL.reload_documentation args.with_defaults(version: ApipieDSL.configuration.default_version) out = ENV['OUT'] || File.join(Rake.original_dir, ApipieDSL.configuration.doc_path, 'dsldoc') ([nil] + ApipieDSL.configuration.languages).each do |lang| doc = ApipieDSL.docs(args[:version], nil, nil, lang) ApipieDSL::TasksUtils.generate_json_page(out, doc, lang) end end end
end