Skip to content

Commit 8cc5407

Browse files
authored
Remove Zeitwerk loader (#159)
* Remove Zeitwerk loader * Update spec_helper.rb
1 parent 395f43d commit 8cc5407

File tree

9 files changed

+45
-52
lines changed

9 files changed

+45
-52
lines changed

lib/phlex/rails.rb

Lines changed: 18 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,31 @@
11
# frozen_string_literal: true
22

3-
require "zeitwerk"
43
require "phlex"
54
require "phlex/rails/engine"
65

76
module Phlex
87
module Rails
9-
Loader = Zeitwerk::Loader.new.tap do |loader|
10-
loader.push_dir("#{__dir__}/rails", namespace: Phlex::Rails)
11-
loader.inflector = Zeitwerk::GemInflector.new(__FILE__)
12-
loader.inflector.inflect(
13-
"html" => "HTML",
14-
"sgml" => "SGML"
15-
)
16-
loader.setup
17-
end
8+
autoload :Buffered, "phlex/rails/buffered"
9+
autoload :BufferedCheckboxBuilder, "phlex/rails/buffered_checkbox_builder"
10+
autoload :BufferedFormBuilder, "phlex/rails/buffered_form_builder"
11+
autoload :BufferedLabelBuilder, "phlex/rails/buffered_label_builder"
12+
autoload :BufferedRadioButtonBuilder, "phlex/rails/buffered_radio_button_builder"
13+
autoload :HelperMacros, "phlex/rails/helper_macros"
14+
autoload :CSV, "phlex/rails/csv"
15+
autoload :SGML, "phlex/rails/sgml"
16+
autoload :HTML, "phlex/rails/html"
17+
autoload :UnbufferedOverrides, "phlex/rails/unbuffered_overrides"
18+
autoload :Helpers, "phlex/rails/helpers"
19+
autoload :Layout, "phlex/rails/layout"
1820
end
1921

20-
class CSV
21-
prepend Phlex::Rails::CSV::Overrides
22-
end
22+
CSV.prepend Phlex::Rails::CSV::Overrides
2323

24-
class SGML
25-
extend Phlex::Rails::SGML::ClassMethods
24+
SGML.extend Phlex::Rails::SGML::ClassMethods
25+
SGML.prepend Phlex::Rails::SGML::Overrides
2626

27-
prepend Phlex::Rails::SGML::Overrides
28-
end
27+
HTML.extend Phlex::Rails::HTML::Format
28+
HTML.include Phlex::Rails::HTML::Format
2929

30-
# @api private
31-
class HTML
32-
extend Phlex::Rails::HTML::Format
33-
include Phlex::Rails::HTML::Format
34-
end
35-
36-
# @api private
37-
class Unbuffered
38-
prepend ::Phlex::Rails::UnbufferedOverrides
39-
end
30+
Unbuffered.prepend Phlex::Rails::UnbufferedOverrides
4031
end

lib/phlex/rails/helpers.rb

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
# frozen_string_literal: true
22

33
module Phlex::Rails::Helpers
4+
autoload :Tag, "phlex/rails/helpers/tag"
5+
autoload :Routes, "phlex/rails/helpers/routes"
6+
autoload :TurboStream, "phlex/rails/helpers/turbo_stream"
7+
48
module ActionCableMetaTag
59
extend Phlex::Rails::HelperMacros
610

@@ -960,6 +964,13 @@ module RangeFieldTag
960964
define_output_helper :range_field_tag
961965
end
962966

967+
module Request
968+
extend Phlex::Rails::HelperMacros
969+
970+
# @!method request(...)
971+
define_value_helper :request
972+
end
973+
963974
module ResetCycle
964975
extend Phlex::Rails::HelperMacros
965976

lib/phlex/rails/html.rb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# frozen_string_literal: true
2+
3+
module Phlex::Rails::HTML
4+
module Format
5+
def format
6+
:html
7+
end
8+
end
9+
end

lib/phlex/rails/html/format.rb

Lines changed: 0 additions & 8 deletions
This file was deleted.
Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,12 @@
33
module Phlex
44
module Rails
55
module SGML
6+
module ClassMethods
7+
def render_in(...)
8+
new.render_in(...)
9+
end
10+
end
11+
612
module Overrides
713
def helpers
814
if defined?(ViewComponent::Base) && @_view_context.is_a?(ViewComponent::Base)
@@ -32,7 +38,7 @@ def render(*args, **kwargs, &block)
3238

3339
def render_in(view_context, &block)
3440
fragments = if (fragment_header = view_context.request.headers["X-Fragment"])
35-
fragment_header.split(" ")
41+
fragment_header.split
3642
elsif (turbo_frame = view_context.request.headers["Turbo-Frame"])
3743
[turbo_frame]
3844
end

lib/phlex/rails/sgml/class_methods.rb

Lines changed: 0 additions & 13 deletions
This file was deleted.

phlex-rails.gemspec

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Gem::Specification.new do |spec|
3030

3131
spec.add_dependency "phlex", "~> 1.10"
3232
spec.add_dependency "railties", ">= 6.1", "< 8"
33-
spec.add_dependency "zeitwerk", "~> 2.6"
3433

3534
spec.metadata["rubygems_mfa_required"] = "true"
3635
end

spec/spec_helper.rb

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,3 @@
1717
RSpec.configure do |config|
1818
config.use_transactional_fixtures = true
1919
end
20-
21-
Zeitwerk::Loader.eager_load_all

0 commit comments

Comments
 (0)