Class: GraphqlAllConnectionsGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- GraphqlAllConnectionsGenerator
- Defined in:
- lib/generators/graphql_all_connections/graphql_all_connections_generator.rb
Instance Method Summary collapse
Instance Method Details
#generate ⇒ Object
3 4 5 6 7 8 |
# File 'lib/generators/graphql_all_connections/graphql_all_connections_generator.rb', line 3 def generate Graphql::Rails::Api::Config.query_resources.each do |resource| dir = "app/graphql/#{resource.pluralize}" generate_connection(dir, resource) if Dir.exist?(dir) end end |
#generate_connection(dir, resource) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/generators/graphql_all_connections/graphql_all_connections_generator.rb', line 10 def generate_connection(dir, resource) FileUtils.mkdir_p(dir) unless File.directory?(dir) File.write( "#{dir}/connection.rb", <<~STRING #{resource.pluralize.camelize}::Connection = #{resource.pluralize.camelize}::Type.define_connection do name '#{resource.camelize}Connection' field :total_count, types.Int do resolve ->(obj, _, _) { obj.nodes.count } end end STRING ) end |