phlex-rails 1.1.2 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Appraisals +4 -6
- data/Gemfile +3 -5
- data/lib/generators/phlex/component/USAGE +1 -1
- data/lib/generators/phlex/component/templates/component.rb.erb +1 -1
- data/lib/generators/phlex/install/install_generator.rb +1 -2
- data/lib/generators/phlex/install/templates/application_layout.rb +1 -1
- data/lib/generators/phlex/view/templates/view.rb.erb +1 -1
- data/lib/phlex/rails/csv.rb +16 -0
- data/lib/phlex/rails/fragment_finder.rb +28 -0
- data/lib/phlex/rails/helper_macros.rb +11 -31
- data/lib/phlex/rails/helpers/action_cable_meta_tag.rb +11 -0
- data/lib/phlex/rails/helpers/action_name.rb +10 -0
- data/lib/phlex/rails/helpers/asset_path.rb +15 -0
- data/lib/phlex/rails/helpers/asset_url.rb +8 -0
- data/lib/phlex/rails/helpers/audio_path.rb +8 -0
- data/lib/phlex/rails/helpers/audio_tag.rb +9 -0
- data/lib/phlex/rails/helpers/audio_url.rb +8 -0
- data/lib/phlex/rails/helpers/auto_discovery_link_tag.rb +9 -0
- data/lib/phlex/rails/helpers/build_tag_values.rb +8 -0
- data/lib/phlex/rails/helpers/button_tag.rb +9 -0
- data/lib/phlex/rails/helpers/button_to.rb +9 -0
- data/lib/phlex/rails/helpers/check_box.rb +9 -0
- data/lib/phlex/rails/helpers/check_box_tag.rb +9 -0
- data/lib/phlex/rails/helpers/class_names.rb +8 -0
- data/lib/phlex/rails/helpers/collection_check_boxes.rb +10 -0
- data/lib/phlex/rails/helpers/collection_radio_buttons.rb +10 -0
- data/lib/phlex/rails/helpers/collection_select.rb +9 -0
- data/lib/phlex/rails/helpers/color_field.rb +9 -0
- data/lib/phlex/rails/helpers/color_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/compute_asset_extname.rb +8 -0
- data/lib/phlex/rails/helpers/compute_asset_host.rb +8 -0
- data/lib/phlex/rails/helpers/compute_asset_path.rb +8 -0
- data/lib/phlex/rails/helpers/content_for.rb +11 -0
- data/lib/phlex/rails/helpers/content_tag.rb +9 -0
- data/lib/phlex/rails/helpers/controller_name.rb +8 -0
- data/lib/phlex/rails/helpers/controller_path.rb +8 -0
- data/lib/phlex/rails/helpers/csp_meta_tag.rb +9 -0
- data/lib/phlex/rails/helpers/csrf_meta_tags.rb +9 -0
- data/lib/phlex/rails/helpers/current_cycle.rb +8 -0
- data/lib/phlex/rails/helpers/current_page.rb +8 -0
- data/lib/phlex/rails/helpers/cycle.rb +8 -0
- data/lib/phlex/rails/helpers/date_field.rb +9 -0
- data/lib/phlex/rails/helpers/date_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/date_select.rb +9 -0
- data/lib/phlex/rails/helpers/datetime_field.rb +9 -0
- data/lib/phlex/rails/helpers/datetime_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/datetime_local_field.rb +9 -0
- data/lib/phlex/rails/helpers/datetime_local_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/datetime_select.rb +9 -0
- data/lib/phlex/rails/helpers/debug.rb +9 -0
- data/lib/phlex/rails/helpers/default_url_options.rb +8 -0
- data/lib/phlex/rails/helpers/distance_of_time_in_words.rb +8 -0
- data/lib/phlex/rails/helpers/distance_of_time_in_words_to_now.rb +8 -0
- data/lib/phlex/rails/helpers/dom_class.rb +8 -0
- data/lib/phlex/rails/helpers/dom_id.rb +8 -0
- data/lib/phlex/rails/helpers/email_field.rb +9 -0
- data/lib/phlex/rails/helpers/email_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/error_message.rb +8 -0
- data/lib/phlex/rails/helpers/error_wrapping.rb +9 -0
- data/lib/phlex/rails/helpers/escape_once.rb +8 -0
- data/lib/phlex/rails/helpers/excerpt.rb +8 -0
- data/lib/phlex/rails/helpers/favicon_link_tag.rb +9 -0
- data/lib/phlex/rails/helpers/field_id.rb +8 -0
- data/lib/phlex/rails/helpers/field_name.rb +8 -0
- data/lib/phlex/rails/helpers/field_set_tag.rb +9 -0
- data/lib/phlex/rails/helpers/fields.rb +10 -0
- data/lib/phlex/rails/helpers/fields_for.rb +10 -0
- data/lib/phlex/rails/helpers/file_field.rb +9 -0
- data/lib/phlex/rails/helpers/file_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/flash.rb +8 -0
- data/lib/phlex/rails/helpers/font_path.rb +8 -0
- data/lib/phlex/rails/helpers/font_url.rb +8 -0
- data/lib/phlex/rails/helpers/form_for.rb +10 -0
- data/lib/phlex/rails/helpers/form_tag.rb +9 -0
- data/lib/phlex/rails/helpers/form_with.rb +10 -0
- data/lib/phlex/rails/helpers/grouped_collection_select.rb +9 -0
- data/lib/phlex/rails/helpers/grouped_options_for_select.rb +9 -0
- data/lib/phlex/rails/helpers/hidden_field.rb +9 -0
- data/lib/phlex/rails/helpers/hidden_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/highlight.rb +9 -0
- data/lib/phlex/rails/helpers/image_path.rb +8 -0
- data/lib/phlex/rails/helpers/image_submit_tag.rb +9 -0
- data/lib/phlex/rails/helpers/image_tag.rb +9 -0
- data/lib/phlex/rails/helpers/image_url.rb +8 -0
- data/lib/phlex/rails/helpers/javascript_import_module_tag.rb +9 -0
- data/lib/phlex/rails/helpers/javascript_importmap_tags.rb +9 -0
- data/lib/phlex/rails/helpers/javascript_include_tag.rb +9 -0
- data/lib/phlex/rails/helpers/javascript_path.rb +8 -0
- data/lib/phlex/rails/helpers/javascript_tag.rb +9 -0
- data/lib/phlex/rails/helpers/javascript_url.rb +8 -0
- data/lib/phlex/rails/helpers/l.rb +8 -0
- data/lib/phlex/rails/helpers/label.rb +8 -0
- data/lib/phlex/rails/helpers/label_tag.rb +9 -0
- data/lib/phlex/rails/helpers/link_to.rb +9 -0
- data/lib/phlex/rails/helpers/link_to_if.rb +9 -0
- data/lib/phlex/rails/helpers/link_to_unless.rb +9 -0
- data/lib/phlex/rails/helpers/link_to_unless_current.rb +9 -0
- data/lib/phlex/rails/helpers/localize.rb +8 -0
- data/lib/phlex/rails/helpers/mail_to.rb +9 -0
- data/lib/phlex/rails/helpers/month_field.rb +9 -0
- data/lib/phlex/rails/helpers/month_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/number_field.rb +9 -0
- data/lib/phlex/rails/helpers/number_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/number_to_currency.rb +8 -0
- data/lib/phlex/rails/helpers/number_to_human.rb +8 -0
- data/lib/phlex/rails/helpers/number_to_human_size.rb +8 -0
- data/lib/phlex/rails/helpers/number_to_percentage.rb +8 -0
- data/lib/phlex/rails/helpers/number_to_phone.rb +8 -0
- data/lib/phlex/rails/helpers/number_with_delimiter.rb +8 -0
- data/lib/phlex/rails/helpers/number_with_precision.rb +8 -0
- data/lib/phlex/rails/helpers/object.rb +8 -0
- data/lib/phlex/rails/helpers/option_groups_from_collection_for_select.rb +9 -0
- data/lib/phlex/rails/helpers/options_for_select.rb +9 -0
- data/lib/phlex/rails/helpers/options_from_collection_for_select.rb +9 -0
- data/lib/phlex/rails/helpers/password_field.rb +9 -0
- data/lib/phlex/rails/helpers/password_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/path_to_asset.rb +8 -0
- data/lib/phlex/rails/helpers/path_to_audio.rb +8 -0
- data/lib/phlex/rails/helpers/path_to_font.rb +8 -0
- data/lib/phlex/rails/helpers/path_to_image.rb +8 -0
- data/lib/phlex/rails/helpers/path_to_javascript.rb +8 -0
- data/lib/phlex/rails/helpers/path_to_stylesheet.rb +8 -0
- data/lib/phlex/rails/helpers/path_to_video.rb +8 -0
- data/lib/phlex/rails/helpers/phone_field.rb +9 -0
- data/lib/phlex/rails/helpers/phone_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/phone_to.rb +9 -0
- data/lib/phlex/rails/helpers/pluralize.rb +9 -0
- data/lib/phlex/rails/helpers/preload_link_tag.rb +9 -0
- data/lib/phlex/rails/helpers/provide.rb +8 -0
- data/lib/phlex/rails/helpers/public_compute_asset_path.rb +8 -0
- data/lib/phlex/rails/helpers/radio_button.rb +9 -0
- data/lib/phlex/rails/helpers/radio_button_tag.rb +9 -0
- data/lib/phlex/rails/helpers/range_field.rb +9 -0
- data/lib/phlex/rails/helpers/range_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/request.rb +8 -0
- data/lib/phlex/rails/helpers/reset_cycle.rb +8 -0
- data/lib/phlex/rails/helpers/rich_text_area.rb +9 -0
- data/lib/phlex/rails/helpers/sanitize.rb +8 -0
- data/lib/phlex/rails/helpers/sanitize_css.rb +8 -0
- data/lib/phlex/rails/helpers/search_field.rb +9 -0
- data/lib/phlex/rails/helpers/search_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/select.rb +9 -0
- data/lib/phlex/rails/helpers/select_date.rb +9 -0
- data/lib/phlex/rails/helpers/select_datetime.rb +9 -0
- data/lib/phlex/rails/helpers/select_day.rb +9 -0
- data/lib/phlex/rails/helpers/select_hour.rb +9 -0
- data/lib/phlex/rails/helpers/select_minute.rb +9 -0
- data/lib/phlex/rails/helpers/select_month.rb +9 -0
- data/lib/phlex/rails/helpers/select_second.rb +9 -0
- data/lib/phlex/rails/helpers/select_tag.rb +9 -0
- data/lib/phlex/rails/helpers/select_time.rb +9 -0
- data/lib/phlex/rails/helpers/select_year.rb +9 -0
- data/lib/phlex/rails/helpers/simple_format.rb +9 -0
- data/lib/phlex/rails/helpers/sms_to.rb +9 -0
- data/lib/phlex/rails/helpers/strip_links.rb +8 -0
- data/lib/phlex/rails/helpers/strip_tags.rb +8 -0
- data/lib/phlex/rails/helpers/stylesheet_link_tag.rb +9 -0
- data/lib/phlex/rails/helpers/stylesheet_path.rb +8 -0
- data/lib/phlex/rails/helpers/stylesheet_url.rb +8 -0
- data/lib/phlex/rails/helpers/submit_tag.rb +9 -0
- data/lib/phlex/rails/helpers/t.rb +3 -0
- data/lib/phlex/rails/helpers/telephone_field.rb +9 -0
- data/lib/phlex/rails/helpers/telephone_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/text_area.rb +9 -0
- data/lib/phlex/rails/helpers/text_area_tag.rb +9 -0
- data/lib/phlex/rails/helpers/text_field.rb +9 -0
- data/lib/phlex/rails/helpers/text_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/time_ago_in_words.rb +8 -0
- data/lib/phlex/rails/helpers/time_field.rb +9 -0
- data/lib/phlex/rails/helpers/time_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/time_select.rb +9 -0
- data/lib/phlex/rails/helpers/time_tag.rb +9 -0
- data/lib/phlex/rails/helpers/time_zone_options_for_select.rb +9 -0
- data/lib/phlex/rails/helpers/time_zone_select.rb +9 -0
- data/lib/phlex/rails/helpers/token_list.rb +8 -0
- data/lib/phlex/rails/helpers/translate.rb +25 -0
- data/lib/phlex/rails/helpers/truncate.rb +8 -0
- data/lib/phlex/rails/helpers/turbo_frame_tag.rb +8 -0
- data/lib/phlex/rails/helpers/turbo_include_tags.rb +8 -0
- data/lib/phlex/rails/helpers/turbo_refresh_method_tag.rb +8 -0
- data/lib/phlex/rails/helpers/turbo_refresh_scroll_tag.rb +8 -0
- data/lib/phlex/rails/helpers/turbo_refreshes_with.rb +9 -0
- data/lib/phlex/rails/helpers/turbo_stream_from.rb +8 -0
- data/lib/phlex/rails/helpers/url_field.rb +9 -0
- data/lib/phlex/rails/helpers/url_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/url_for.rb +8 -0
- data/lib/phlex/rails/helpers/url_options.rb +8 -0
- data/lib/phlex/rails/helpers/url_to_asset.rb +8 -0
- data/lib/phlex/rails/helpers/url_to_audio.rb +8 -0
- data/lib/phlex/rails/helpers/url_to_font.rb +8 -0
- data/lib/phlex/rails/helpers/url_to_image.rb +8 -0
- data/lib/phlex/rails/helpers/url_to_javascript.rb +8 -0
- data/lib/phlex/rails/helpers/url_to_stylesheet.rb +8 -0
- data/lib/phlex/rails/helpers/url_to_video.rb +8 -0
- data/lib/phlex/rails/helpers/utf8_enforcer_tag.rb +9 -0
- data/lib/phlex/rails/helpers/video_path.rb +8 -0
- data/lib/phlex/rails/helpers/video_tag.rb +9 -0
- data/lib/phlex/rails/helpers/video_url.rb +8 -0
- data/lib/phlex/rails/helpers/week_field.rb +9 -0
- data/lib/phlex/rails/helpers/week_field_tag.rb +9 -0
- data/lib/phlex/rails/helpers/weekday_options_for_select.rb +9 -0
- data/lib/phlex/rails/helpers/weekday_select.rb +9 -0
- data/lib/phlex/rails/helpers/with_output_buffer.rb +9 -0
- data/lib/phlex/rails/helpers/word_wrap.rb +8 -0
- data/lib/phlex/rails/helpers.rb +243 -1458
- data/lib/phlex/rails/html/method_missing.rb +13 -0
- data/lib/phlex/rails/html.rb +11 -0
- data/lib/phlex/rails/layout.rb +33 -22
- data/lib/phlex/rails/{sgml/overrides.rb → sgml.rb} +26 -15
- data/lib/phlex/rails/streaming.rb +95 -7
- data/lib/phlex/rails/version.rb +1 -1
- data/lib/phlex/rails.rb +25 -22
- metadata +202 -29
- data/CONTRIBUTING.md +0 -23
- data/lib/generators/phlex/controller/USAGE +0 -10
- data/lib/generators/phlex/controller/controller_generator.rb +0 -74
- data/lib/generators/phlex/controller/templates/controller.rb.erb +0 -14
- data/lib/generators/phlex/controller/templates/view.rb.erb +0 -9
- data/lib/generators/rspec/view/templates/view_spec.rb.erb +0 -10
- data/lib/generators/rspec/view/view_generator.rb +0 -14
- data/lib/generators/test_unit/templates/view_test.rb.erb +0 -15
- data/lib/generators/test_unit/view_generator.rb +0 -12
- data/lib/phlex/rails/html/format.rb +0 -8
- data/lib/phlex/rails/sgml/class_methods.rb +0 -13
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Phlex::Rails::Helpers::Translate
|
4
|
+
module ClassMethods
|
5
|
+
def translation_path
|
6
|
+
@translation_path ||= name&.dup.tap do |n|
|
7
|
+
n.gsub!("::", ".")
|
8
|
+
n.gsub!(/([a-z])([A-Z])/, '\1_\2')
|
9
|
+
n.downcase!
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.included(base)
|
15
|
+
base.extend(ClassMethods)
|
16
|
+
end
|
17
|
+
|
18
|
+
def translate(key, **options)
|
19
|
+
key = "#{self.class.translation_path}#{key}" if key.start_with?(".")
|
20
|
+
|
21
|
+
helpers.t(key, **options)
|
22
|
+
end
|
23
|
+
|
24
|
+
alias_method :t, :translate
|
25
|
+
end
|