katalyst-tables 2.1.1 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4c5cc96bc55db7f0cf4c3a22659e6054607640e6d33af939805d4be6ca8f25c1
4
- data.tar.gz: 1661c91c498d7c994afca1cb4a0bfcb69b6e2076a419ae71b138c5ae086e4a0d
3
+ metadata.gz: ddd6b87989959fe3bea80d3d061984ace8fbaa918033ae6d40f1fb41fa752a4f
4
+ data.tar.gz: c1fcff810e0c6e76ae8ae8df7a92f26d0badd1601b6fd091748249eaeebdc262
5
5
  SHA512:
6
- metadata.gz: e6f94b4a381ec3f9e952d594e1525b61b97d17d2d8c42fcc230fa81328303768d174f2778eb3918f681f28d38227cf9f3c83af340e0ea5ecc78857c6dad7c44d
7
- data.tar.gz: 01a7fcf97aea5435986ab2b0357249bfd03bb60bc98fb22769aef88c154520753e9b340fe981edcf74f6bf4d32eafbd45bd318158cf92926fe3162f459928ff7
6
+ metadata.gz: 39a50df893890ed53a0d54acc7ab5d23a0292c9e98ec82b4e6286325713e115d718cfcdaf8caf6c0b2ce211ec20ea514eb53b5dc275dfe04bf253ee00d094aa5
7
+ data.tar.gz: 919db4197193d5c4d2be8ea6c15642ff309819757c32ae6cb99266412029e0d250156220584442d048b97a40bcc9c5cce7660d141ac9fb157d12d8468b6fd268
data/README.md CHANGED
@@ -281,8 +281,8 @@ def index
281
281
  table = Katalyst::Turbo::TableComponent.new(collection:, id: "people")
282
282
 
283
283
  respond_to do |format|
284
+ format.turbo_stream { render table } if self_referred?
284
285
  format.html { render locals: { table: table } }
285
- format.turbo_stream { render table }
286
286
  end
287
287
  end
288
288
  ```
@@ -47,10 +47,10 @@ module Katalyst
47
47
  component_class.alias_method(:vc_render_template_for, :render_template_for)
48
48
  component_class.class_eval <<-RUBY, __FILE__, __LINE__ + 1
49
49
  def render_template_for(variant = nil)
50
- return vc_render_template_for(variant) unless turbo?
51
- controller.respond_to do |format|
52
- format.html { vc_render_template_for(variant) }
53
- format.turbo_stream { turbo_stream.replace(id, vc_render_template_for(variant)) }
50
+ if turbo? && response.media_type.eql?("text/vnd.turbo-stream.html")
51
+ turbo_stream.replace(id, vc_render_template_for(variant))
52
+ else
53
+ vc_render_template_for(variant)
54
54
  end
55
55
  end
56
56
  RUBY
@@ -3,7 +3,9 @@
3
3
  module Katalyst
4
4
  module Tables
5
5
  class PagyNavComponent < ViewComponent::Base # :nodoc:
6
- include Pagy::Frontend
6
+ # Pagy is not a required gem unless you're using pagination
7
+ # Expect to see NoMethodError failures if pagy is not available
8
+ "Pagy::Frontend".safe_constantize&.tap { |pagy| include(pagy) }
7
9
 
8
10
  attr_reader :pagy_options
9
11
 
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "pagy/backend"
4
-
5
3
  module Katalyst
6
4
  module Tables
7
5
  module Collection
@@ -41,7 +39,9 @@ module Katalyst
41
39
  end
42
40
 
43
41
  class Paginate # :nodoc:
44
- include Pagy::Backend
42
+ # Pagy is not a required gem unless you're using pagination
43
+ # Expect to see NoMethodError failures if pagy is not available
44
+ "Pagy::Backend".safe_constantize&.tap { |pagy| include(pagy) }
45
45
 
46
46
  def initialize(app)
47
47
  @app = app
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "pagy/backend"
4
-
5
3
  module Katalyst
6
4
  module Tables
7
5
  module Collection
@@ -27,6 +27,11 @@ module Katalyst
27
27
  .apply(collection)
28
28
  end
29
29
 
30
+ def self_referred?
31
+ request.referer.present? && URI.parse(request.referer).path == request.path
32
+ end
33
+ alias self_refered? self_referred?
34
+
30
35
  included do
31
36
  class_attribute :_default_table_component, instance_accessor: false
32
37
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Katalyst
4
4
  module Tables
5
- VERSION = "2.1.1"
5
+ VERSION = "2.1.2"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: katalyst-tables
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 2.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Katalyst Interactive