lib/pagy.rb in pagy-4.3.0 vs lib/pagy.rb in pagy-4.4.0
- old
+ new
@@ -3,28 +3,29 @@
require 'pathname'
# main class
class Pagy
- VERSION = '4.3.0'
+ VERSION = '4.4.0'
# Root pathname to get the path of Pagy files like templates or dictionaries
def self.root
@root ||= Pathname.new(__dir__).freeze
end
# default vars
VARS = { page: 1, items: 20, outset: 0, size: [1, 4, 4, 1], page_param: :page, # rubocop:disable Style/MutableConstant
- params: {}, anchor: '', link_extra: '', i18n_key: 'pagy.item_name', cycle: false }
+ params: {}, fragment: '', link_extra: '', i18n_key: 'pagy.item_name', cycle: false }
attr_reader :count, :page, :items, :vars, :pages, :last, :offset, :from, :to, :prev, :next
INSTANCE_VARS_MIN = { count: 0, items: 1, page: 1, outset: 0 }.freeze
# Merge and validate the options, do some simple arithmetic and set the instance variables
def initialize(vars)
- @vars = VARS.merge( vars.delete_if{|_,v| v.nil? || v == '' } )
+ @vars = VARS.merge( vars.delete_if{|k,v| VARS.key?(k) && (v.nil? || v == '') } )
+ @vars[:fragment] = deprecated_var(:anchor, @vars[:anchor], :fragment, @vars[:fragment]) if @vars[:anchor]
INSTANCE_VARS_MIN.each do |name,min|
raise VariableError.new(self), "expected :#{name} >= #{min}; got #{@vars[name].inspect}" \
unless @vars[name] && instance_variable_set(:"@#{name}", @vars[name].to_i) >= min
end
@@ -67,8 +68,9 @@
series
end
end
+require 'pagy/deprecation'
require 'pagy/backend'
require 'pagy/frontend'
require 'pagy/exceptions'