module Pagy::TrimExtra
def pagy_link_proc(pagy, link_extra: '')
Override the original pagy_link_proc.
def pagy_link_proc(pagy, link_extra: '') link_proc = super(pagy, link_extra: link_extra) return link_proc unless pagy.vars[:trim_extra] lambda do |page, text = pagy.label_for(page), extra = ''| link = +link_proc.call(page, text, extra) return link unless page.to_s == '1' pagy_trim(pagy, link) end end
def pagy_trim(pagy, link)
def pagy_trim(pagy, link) link.sub!(/(\?|&)#{pagy.vars[:page_param]}=1\b(?!&)|\b#{pagy.vars[:page_param]}=1&/, '') end