Sha256: 1d8119445520f8a38bac3c85ad9bc484df58d7624ea8e12ba98337609b54bfa0

Contents?: true

Size: 974 Bytes

Versions: 82

Compression:

Stored size: 974 Bytes

Contents

# frozen_string_literal: true

require "graphql"
require "graphiql/rails"
require "rack/cors"
require "sprockets/es6"

module Decidim
  module Api
    # Mountable engine that exposes a side-wide API for Decidim.
    class Engine < ::Rails::Engine
      isolate_namespace Decidim::Api

      initializer "decidim_api.assets" do |app|
        app.config.assets.precompile += %w(decidim_api_manifest.js)
      end

      initializer "decidim-api.middleware" do |app|
        app.config.middleware.insert_before 0, Rack::Cors do
          allow do
            origins "*"
            resource "*", headers: :any, methods: [:get, :post, :options]
          end
        end
      end

      initializer "decidim-api.graphiql" do
        GraphiQL::Rails.config.tap do |config|
          config.query_params = true
          config.initial_query = File.read(
            File.join(__dir__, "graphiql-initial-query.txt")
          ).html_safe
        end
      end
    end
  end
end

Version data entries

82 entries across 82 versions & 2 rubygems

Version Path
decidim-api-0.20.1 lib/decidim/api/engine.rb
decidim-api-0.20.0 lib/decidim/api/engine.rb
decidim-api-0.19.1 lib/decidim/api/engine.rb
decidim-api-0.18.1 lib/decidim/api/engine.rb
decidim-api-0.19.0 lib/decidim/api/engine.rb
decidim-api-0.17.2 lib/decidim/api/engine.rb
decidim-api-0.18.0 lib/decidim/api/engine.rb
decidim-api-0.17.1 lib/decidim/api/engine.rb
decidim-api-0.16.1 lib/decidim/api/engine.rb
decidim-api-0.17.0 lib/decidim/api/engine.rb
decidim-api-0.16.0 lib/decidim/api/engine.rb
decidim-api-0.15.2 lib/decidim/api/engine.rb
decidim-api-0.15.1 lib/decidim/api/engine.rb
decidim-api-0.15.0 lib/decidim/api/engine.rb
decidim-api-0.14.4 lib/decidim/api/engine.rb
decidim-api-0.14.3 lib/decidim/api/engine.rb
decidim-api-0.14.2 lib/decidim/api/engine.rb
decidim-api-0.14.1 lib/decidim/api/engine.rb
decidim-api-0.13.1 lib/decidim/api/engine.rb
decidim-api-0.12.2 lib/decidim/api/engine.rb