Websites/config/routes/oceanic_ws_routes.rb
2024-05-02 22:04:43 -05:00

40 lines
1.2 KiB
Ruby

# frozen_string_literal: true
module OceanicWsRoutes
DOMAIN = "oceanic.ws"
DOCS = "docs"
DOCS_DOMAIN = "#{DOCS}.#{DOMAIN}".freeze
GITHUB = "github"
GITHUB_DOMAIN = "#{GITHUB}.#{DOMAIN}".freeze
def self.extended(router)
router.instance_exec do
namespace(:oceanic_ws, path: "") do
constraints(DomainConstraint.new(DOMAIN)) do
namespace(:home, path: "") do
get(:manifest, constraints: { format: "json" })
get(:browserconfig, constraints: { format: "xml" })
end
root(to: "home#index")
end
constraints(DomainConstraint.new(DOMAIN, DOCS)) do
namespace(:docs, path: "") do
get("/latest(*other)", action: :latest, as: :latest)
get(:json, constraints: { format: "json" })
get(:manifest, constraints: { format: "json" })
get(:browserconfig, constraints: { format: "xml" })
end
root(to: "docs#index", as: :docs_root)
end
constraints(DomainConstraint.new(DOMAIN, GITHUB)) do
resource(:github_webhooks, path: "", only: :create, defaults: { format: "json" })
end
end
end
end
end