class Avo::Plugin

def engine

def engine
  "#{namespace}::Engine".safe_constantize
end

def gemspec

def gemspec
  return if engine.blank?
  gemspec_path = Dir["#{engine.root}/*.gemspec"].first
  Gem::Specification::load(gemspec_path)
end

def initialize(*, **, &block)

def initialize(*, **, &block)
end

def name

def name
  return gemspec.name if gemspec.present?
  self.to_s.split("::").first
end

def namespace

def namespace
  modules = to_s.split("::")
  modules.pop
  modules.join("::")
end

def version

def version
  "#{namespace}::VERSION".safe_constantize
end