class Middleman::CoreExtensions::Routing

def page(path, opts={})

def page(path, opts={})
  options = opts.dup
  # Default layout
  metadata = {
    options: options,
    locals: options.delete(:locals) || {},
    page: options.delete(:data) || {}
  }
  if path.is_a?(String) && !path.include?('*')
    # Normalize path
    path = Middleman::Util.normalize_path(path)
    if path.end_with?('/') || app.files.by_type(:source).watchers.any? { |w| (w.directory + Pathname(path)).directory? }
      path = File.join(path, @app.config[:index_file])
    end
  end
  path = '/' + Util.strip_leading_slash(path) if path.is_a?(String)
  @page_configs << PageDescriptor.new(path, metadata)
end