Sha256: bcc3b601c08f3d7a0f8b146fec28893e6682772f5ec7610151a9cc6bfafa2aa0
Contents?: true
Size: 836 Bytes
Versions: 5
Compression:
Stored size: 836 Bytes
Contents
# See the Pagy documentation: https://ddnexus.github.io/pagy/extras/trim # frozen_string_literal: true class Pagy VARS[:enable_trim_extra] = true module UseTrimExtra def pagy_link_proc(pagy, deprecated_link_extra=nil, link_extra: '') link_extra = Pagy.deprecated_arg(:link_extra, deprecated_link_extra, :link_extra, link_extra) if deprecated_link_extra link_proc = super(pagy, link_extra: link_extra) return link_proc unless pagy.vars[:enable_trim_extra] lambda do |num, text=num, extra=''| link = +link_proc.call(num, text, extra) return link unless num == 1 pagy_trim(pagy, link) end end def pagy_trim(pagy, link) link.sub!(/[?&]#{pagy.vars[:page_param]}=1\b(?!&)|\b#{pagy.vars[:page_param]}=1&/, '') end end Frontend.prepend UseTrimExtra end
Version data entries
5 entries across 5 versions & 2 rubygems