mirror of
https://github.com/mastodon/mastodon.git
synced 2026-08-06 18:37:32 -05:00
26 lines
586 B
Ruby
26 lines
586 B
Ruby
# frozen_string_literal: true
|
|
|
|
require 'rack/proxy'
|
|
|
|
module Vite
|
|
# Simple proxy that redirects asset requests to the running Vite dev server
|
|
class Proxy < Rack::Proxy
|
|
attr_reader :config, :dev_server
|
|
|
|
def initialize(app, config:, dev_server:, **)
|
|
@config = config
|
|
@dev_server = dev_server
|
|
|
|
super(app, backend: config.backend, ssl_verify_none: !config.https?, **)
|
|
end
|
|
|
|
def perform_request(env)
|
|
if dev_server.running? && env['PATH_INFO'].start_with?(config.base_path)
|
|
super
|
|
else
|
|
@app.call(env)
|
|
end
|
|
end
|
|
end
|
|
end
|