module JSONAPI::Resources::ModelClassHelpers

def model_class

def model_class
  return @model_class if defined?(@model_class) && @model_class
  resolve_model_class_name.constantize
end

def records

def records
  model_class.all
end

def reflection_model_class

def reflection_model_class
  model_class
rescue StandardError
  safe_model_class
end

def resource_for_model(model_class)

def resource_for_model(model_class)
  "#{model_class.name}Resource".safe_constantize
rescue NameError
  nil
end

def safe_model_class

def safe_model_class
  return nil unless respond_to?(:name) && name && defined?(ActiveSupport)
  resolve_model_class_name&.safe_constantize
rescue NoMethodError
  nil
end