- 11944e4: Fix typo in class name (#122)
- 40ef36d: travis badge links to branches
- 78141a3: Improve default German translation (#120)
- c0fe0df: minor typo corrections (#119)
- fixed responsive javascript error
- 332c6a2: fix for responsive javascript error in slow loading pages (#115)
- fixed issue with items extra rendered after pagy_nav
- 3ead159: fix for temp items variable in items extra ( #117)
- Added Dutch locale
- Refactoring of plurals
- Javascript refactoring: fixes and improvements
- 70796d3: Add Dutch language (#116)Added Dutch dictionary
- b112f30: plurals.rb:
- added frozen variables
- added explicit 'zero' for :zero_one_few_may_other
- added :pl pluralization (#111)
- added README.md
- 6cf86af: added docs notes
- b05db4e: added optional target element to Pagy.init for AJAX support
- e35a9ae: refactoring of default element ids for helpers and deprecation:
- default ids are now constant also in different processes and compliant also with oder HTML versions
- simpler deprecation code
- cef823c: pagy.js responsive refactoring (#115):
- moved handling of window event listeners into the responsive function
- added resize delay to Pagy.responsive
- a64a8bd: fix for items test
- e9ab4a1: renamed argument items > fetched; removed redundant assignation
- Improved efficiency for count in backend and extras
- 01178cb: replaced enumerable #count for #size (suggested in #112)
- 0723228: count (and page) in *get_variables methods are set only when nil (alternative implementation of #112)
- Deprecation of frontend helpers (see Deprecations)
- Internal refactoring of javascript
- added
support
extra for features like: incremental, infinite, auto-scroll pagination
- 2bdb1e5: added support extra
- 055af34: added :cycle variable to Pagy
- c1680ec: add JSON/javascript deprecations
- 263c12d: better internal javascript naming
- 910facc: updated tests
- 6e8cde8: refactoring of json tags:
- single "pagy-json" class for all json tags
- removed prefix used for all pagy element ids
- extracted pagy_json_tag from frontend extras
- 98ce8e7: automatic ids based on hash must be strings
- cd8256e: added DEPRECATIONS file
- 6e3e1e4: deprecated and renamed navs helpers in code, tests and docs; renamed navs extension as plain; added :pagy_plain_nav alias of :pagy_nav
- 4bc72af: deprecated and renamed semantic navs in code, tests and docs
- a9c3822: deprecated and renamed materialize navs in code, tests and docs
- 5481f40: renamed foundation templates and updated docs
- f984f83: deprecated and renamed foundation navs in code, tests and docs
- 95045c3: renamed bulma templates and updated docs
- dbad41a: deprecated and renamed bulma navs in code, tests and docs
- e4f859f: renamed bootstrap templates and updated docs
- 35078ab: deprecated and renamed bootstrap navs in code, tests and docs
- 04ec860: added Pagy.deprecate method
- added
Pagy::Countless
support subclass - added
countless
extra integrated with the other extras
- fa547ad: reworded the doc notice about :pagy_countless_get_items returning an Array; fix typo in comment
- 8368a99: Synopsys > Synopsis
- 1b8a080: a few fixes for the countless tests
- 0bf2f46: Typo fix
- 2f93227: Test coverage for
Pagy::Countless
(#108) - c2a25b6: Add some tests for Countless extra (#108)
- 04fa7a2: added countless support to the items extra
- f272faf: added countless support to the overflow extra
- 7b25165: added countless sub-class and extra code
- 37cf51a: series can return an empty array if size is empty
- 7bf9d14: fix for a few missing lines in the extras docs
- The "Out Of Range" concept has been redefined as "Overflow" resulting in a few renaming. Since there are no changes in the logic, you can update by just searching and replacing (if present) a few string in your code:
"/out_of_range"
>"/overflow"
"OutOfRangeError"
>"OverflowError"
":out_of_range_mode"
>":overflow"
"out_of_range?
>"overflow?"
- 431e4db: redefined the "Out Of Range" concept as "Overflow" (#103):
- files: out_of_range* > overflow*
- extra name: out_of_range > overflow
- error class: OutOfRangeError > OverflowError
- module: OutOfRange > Overflow
- VARS: :out_of_range_mode > :overflow
- instance variable: @out_of_range > @overflow
- method: out_of_range? > overflow?
- a0b411a: added README note about semantic versioning
- e8a2251: fix for ArgumentError feedback in Pagy constructor should show the originally passed offending value (#104)
- Added German locale
- Added Norwegian locale
- 59064c2: Added Norwegian locale (#100)
- Added Elasticsearch Rails extra
- e0acbf6: fix for robocop offenses (#96)
- d082729: Added Elasticsearch Rails extra (#96)
- dd0575a: fix doc typo
- d3510a7: updated comments in plurals.rb
- 5ed458a: added README disclaimer
- 02b0a74: Update link to Semantic-UI pagination
- I18n refactoring
- Compact helpers and item selectors have been refactored: you should update your overridden helpers accordingly
- The i18n structure has changed, update your custom i18n locale file
- bab3bf8: Merge pull request #93 from ddnexus/i18n
- f8017c3: updated config/pagy.rb
- c461885: added ru plural proc
- 5680628: fix for wrong indentation in zh-cn
- 6998932: pagy.yml properly split into separate locale files
- e3048f2: improvements for ja tr and zh-cn
- c1aec4c: removed marginal pagy.nav.current key used only by foundation an fixed consistency in foundation helpers and templates
- 15e413b: refactoring of the composition of i18n strings for compact helpers and items selector
- added Japanese, Brazilian and Indonesian translations
- 67f1bb9: reordered translations
- 4ab3438: adding pt-br translation (#87)
- d1f8674: alpha-ordered translations
- 0311c85: Added Indonesian locale (#91)
- ce68624: add japanese translation (#89)
- 5e4f93d: corrected chinese translation (#88)
- 26654d4: updated README
- added Chinese locale
- added Russian locale
- 099731b: small improvement in i18n docs
- ef77ae2: Added ru translation (#84)
- d4b49d6: Fixed a typo in spanish locale. (#85)
- a91b72a: small description change for items selector UI
- a62b222: small refactoring of the trim extra
- c23505a: fix for doc typo
- added Spanish locale
- 6d498a1: Added Spanish locale (#82)
- 65db877: general docs improvements
- 5862b3f: updated README
- 6414395: added GoRails screencast link to README
- a8ad399: docs fixes and improvements
- 435e849: updated docs
- added Semantic extra
- b65a905: fix for page_link string and conflicts, added compact and responsive navs tests and docs (#73)
- f147cca: Semantic UI nav helper (#73)
- 429ac14: updated pagy.js requirements info
- The extras dir has been reorganized:
- the helpers in the
compact
andresponsive
extras have been integrated into the respective frontend extras (bootstrap
,bulma
,foundation
,materialize
andnavs
), so thecompact
andresponsive
extras are gone. You should remove them from the pagy.rb initializer, eventually adding thenavs
extra if you use its plain helpers. - The
templates
andjavascripts
dirs have been moved tolib
. If you use rails and thepagy.js
you should update theassets.paths
in the pagy.rb initializer.
- the helpers in the
- added Foundation extra
- ba7d046: added fixes and improvements for foundation extra:
- d78f85d: Foundation extra (#79)
- 13f37a0: restyling of extras in README, docs and initializer example
- added Searchkick extra
- 6143f5f: docs fixes
- 5227bd1: added searchkick references in docs, README and inititalizer example (#75)
- b9acf0c: Searchkick extra (#75)
- small bugs and compatibility fixes
- 1436833: added Post and Tutorials links and Credits section
- 4e400c6: items are adjusted only for non-empty pages (avoid sequel error for limit 0)
- 3abcc11: fix for sinatra: page_param must be converted to string
- ad8c311: fix for trim extra missing when current page=1
- 6f774d7: added missing doc menu for trim extra
- 5f6de56: added a few tests for the trim extra
- Added Trim extra
- Added Materialize extra
- b0e959b: added stars github button to docs
- 1dd38c9: added materialize extra (#44)
- 30c1a57: updated docs
- Improvements and fixes for the out_of_range extra
- 419af23: better comments and error message for unknown out_of_range_mode variable
- 48fa056: use case (#71)
- 36761a8: fix :last_page mode in out_of_range extra (#70)
- 5958dc5: out_of_range extra improvements (#68)
- 7177cd9: added note about the out_of_range exta to the README
- Added Out Of Range extra
- c52db2a: added out_of_range extra (#68)
- 37119ee: fixes for bulma extra in initializer_example.rb and docs
- 05729f6: removed redundant condition in Pagy initialize
- 2e75247: small fixes in CHANGELOG
- 3d732dd: docs for empty page OutOfRangeError (#69)
- a3be52e: Fixed screenshot name for compact bulma extra (#67)
- Added Bulma extra
- Added Turkish language in pagy dictionary
- Improved consistence and compatibility in extras
- 8fc91df: fix for "area" typos in bulma extra (#62) and consistency improvement across responsive helpers
- bb0060f: fix for window event listeners persisted by turbolinks (#64)
- d759f91: Bulma extra (#62)
- 9f09837: Fixed typo in some extras usage (#63)
- 2ce572a: Added Turkish locales (#58)
- dd361e1: replaced Array.from in pagy.js for extended compatibility
- bb1243d: fix typos
- da34b94: fix typo (#61)
- cdab354: added better I18n comments in initializer_example.rb
- 76fc273: used merge! in place of **
- All tests has been converted to the spec syntax
- b14f446: converted tests to spec syntax
- 0422568: cleanup of i81n plurals in code and docs
- 5a2db16: added a few missing references to docs
- 6028980: enabled rubocop Naming/UncommunicativeMethodParamName
- 1de470b: small improvements and fixes for docs
- 228109e: fix for typos
- 0a1ed94: updated initializer_example.rb
- The
pagy_nav_bootstrap_compact
andpagy_nav_boostrap_responsive
helpers have been renamed aspagy_nav_compact_bootstrap
andpagy_nav_responsive_bootstrap
to keep the consistency with the extras structure (and support the consistency of future framework additions). Please, rename them accordingly. - The
Pagy::Frontend::I18N.load_file
has been renamed asPagy::Frontend::I18N.load
and expects a hash as the argument. See the I18n doc. - The seldom used
Pagy::Frontend::I18N[plurals]
has been renamed asPagy::Frontend::I18N[plural]
. See the I18n doc. - Please, update your initializer file to the new initializer_example.rb
- 826798b: refactoring of I18N constant: added support for multiple static languages and plural rules
- b78b71e: better naming of json classes
- ea7c22b: breaking change for compact and responsive extras: renaming of pagy_nav_bootstrap_* helpers to pagy_nav_*_bootstrap, consistent with extras structure
- 7d1a573: internal consistency renaming of local/test variables; minor fixes and improvements
- 8ca5013: doc improvements
- 99081ee: small performance improvement for #51 and updated doc
- 5863ceb: add support for counting grouped collections (#51)
- The javascript used by the
compact
,items
andresponsive
extras has been refactored in order to avoid any usafe-inline vulnerability. The javascript files have been replaced by one shared file, and require to set an event listener or run a function on window load. See the commit below and the javascript doc for details.
- 50e304b: javascript refactoring in order to avoid any usafe-inline vulnerability (#52):
- removed inline scripts from all extras
- one single pagy.js file shared among all the extras
- the Pagy.init function should be executed at document load
- updated tests and docs
- 32d0afc: doc fix: UI selector > selector UI
- 100% test coverage for core code and extras
- c11dfcc: updated README
- f8728e7: added responsive extra tests
- 14ea356: added compact extra tests
- 2ac743c: added bootstrap extra test
- 159b65e: added i18n extra tests
- 4449c95: normalization of indentation and empty lines
- 9afa9d9: Default Frozen Strings for Ruby Files (#49)
- 036c87f: Fix typo in :page_param configuration (#48)
- Improved the Pagy::OutOfRangeError exception, now storing the failed Pagy object
- 9817659: improved OutOfRangeError exception (storing the failed Pagy object)
- 7195229: a few minor consistency fixes for the initializer_example.rb
- 00cd5bb: Fix typo (#45)
- 8b3a733: fix for header level in README
- Improvements for compact extra
- Refactoring of test structure and tasks
- Added items extra: Allow the client to request a custom number of items per page with an optional selector UI
- 45dd700: added array extra tests
- 623ce9e: Added items extra and tests
- 5902e8a: passed instance variables are not deleted from the vars hash
- e2efb89: refactoring of test structure
- 1cc335b: documentation updates
- 42ba053: improved pagy-compact.js
- 8c20fa2: Enable support for return key inside Pagy compact input (#43)
- d4b751c: Documentation updates
- 9f0dec9: fix for broken links in docs
- c41e823: additions and normalization of documentation and comments
- 38f9a49: fix for broken links in readme
- 0db9125: minor documentation improvements
- 8a0a5a8: broader parallel assignment in methods (improved performance)
- 18baa8b: small optimization (used a few less objects)
- 1d16e3d: documentation additions
- 62c420d: updated doc and charts
- Fix for I18n exception on startup
- 31b815d: fix for I18n exception on startup (#41)
- Improved readability and memory allocation
- All the core methods are tested
- Better documentation
- c25493a: added backend tests
- 48dbe17: docs small fixes and improvements
- 5e9b7d4: add Pagy::VARS[:item_path] empty default
- ce8d09a: add Pagy::VARS[:anchor] empty default
- 8789edd: improve readability of pagy_link_proc (#40):
- remove conditions to avoid extra spaces inside the html tags
- add Pagy::VARS[:link_extra] empty default
- 2f0d384: docs additions
- Refactoring of
I18N
to fix #39
Pagy::I18N
has been moved toPagy::Frontend::I18N
: you should update the initializer in case you set any of thePagy::I18N
variable. Read I18n for details.
- d85791e: Refactoring I18N to fix #39:
- moved I18N from Pagy to Pagy::Frontend - I18N_DATA moved to Pagy::Frontend::I18N[:data]
- I18N[:file] removed
- added I18N.load_file method
- updated initializer and doc
- 504b943: added missing tests to frontend_test.rb
- 6168df3: use actionable code coverage (#29)
- Fix for PostgreSQL:
collection.count(:all)
- 8a204dc: fix for count in Pagy::Backend (#36)
- 29ed221: added test_check_variable_defaults
- 1263540: indentation fixes for tests
- a927d57: improve testability by sorting tests into files that mirror lib + group by method (#37)
- 5a5178b: docs markdown normalization and README editing
- 11fbc49: examples was using responsive instead of i18n (#35)
- b9517d3: docs small fixes and improvements
- 8bc6900: fix for typos and omissions in initializer_example.rb
- a09558e: avoid uncoverable code by not using gemspec in Gemfile (#33)
- a585fe6: clean up gemspec (#32)
- ae48f13: test on all supported ruby versions and split out rubocop (#30)
- Added
:params
and:anchor
variables to control the generation of arbitrary URLs per pagy instance
- d185461: added :params and :anchor variables to control the generation of arbitrary URLs per pagy instance
- 62fd6c8: better forward improvements with pagy_url_for receiving the pagy instance instead of the single pagy_param
- 748de0d: readme and changelog improvement
- Added an initializer_example.rb that you can use as an easy template for Pagy configuration
- Integrated extras from
pagy-extras
gem into Pagy, now optionally required in the initializer - Refactored I18n: simpler code and simpler configuration now based on the
I18n
extra - Reorganized documentation and added a few more how-to topics
- Added the
:page_param
variable used to get the page number from and create the URL for the page links
- Extras are now integrated in Pagy. The
pagy-extras
gem has been discontinued: you should remove it and update your code as indicated here - Pagy I18n has been refactored and it's simpler to use. The main change is that the
Pagy::I18N[:gem]
variable has been removed, so if you want to use theI18n
gem in place of the internal Pagy implementation you need just torequire 'pagy/extra/i18n'
in your initializer. (see the I18n doc) pagy_url_for
now requires the pagy argument and it's called with 2 params: if you have overridden it, you should add the extra param.pagy_get_vars
now requires the vars argument and it's called with 2 params: if you have overridden it, you should add the extra param.pagy_array_get_vars
now requires the vars argument and it's called with 2 params: if you have overridden it, you should add the extra param.
- 3e2ad90: added CHANGELOG.md with the latest few versions (#23)
- f42811d: implemented :page_param (#20)
- 9040593: added doc about skipping single pages navs
- 605169a: added initializer_example.rb
- daa2c1b: I18n refactoring:
- simplified the pagy_t definition
- simplified the configuration of I18n now using the I18n extra to override the pagy_t
- modules are now required and not autoloaded
- updated doc
- 9b0d420: style cleanup (#24)
- dbc5a05: Add prev/next links to compact Bootstrap nav and improve HTML semantics (#21)
- f764cc1: refactoring extras:
- moved pagy-extra files into the extras dir - moved the templates dir into the extras dir
- updated the documentation
- befe92d: Fixes Travis Badge (#25)
- 3862d26: Travis (#22)
- 7050ee0: basic rubocop setup (#18)
- 7aee689: small docs improvements
- 92260b5: docs and comments refactoring, also updated for pagy-extras v0.2.0
- 46f235e: Remove a couple of Range allocations (#10)
- 39c5470: Only use and/or keywords for control flow (#12)
- 26bb29c: fix for last page items adjusted to 0 (#3)
- 860c579: small improvement: to_i called only once in core variables set
- b18f254: Merge pull request #5 from artinboghosian/patch-1
- 03d6ee8: Update README.md
- 358a806: a couple of links added to the doc
- fac1f34: docs small fixes and improvements
- e480d04: better handling of blank core variables
- b56ef9e: docs fixes and improvements
- 987be15: I18N[:plurals] proc uses symbols and returns a frozen string
- 6ea7a48: changes for PR #2: - use of local variable zero_one instead of constant I18N_PLURALS - VARS cannot be frozen
- fb8975b: Freeze class immutable constant variable at first
- ec8e268: created pagy-extras gem:
- moved pagy_nav_bootstrap method and templates
- updated docs files (fixes and use of relative links)
- facc4c3: unescaped notation for all erb usage
- 26c068f: moved require yaml in Frontend
- f5782d8: added css classes to pagy helper navs
- cee02c6: helper tags are strings
- 4788c3c: grouped the variables :initial, :before, :after and :final into one single :size array; #series can work with different sizes
- e610b82: minor docs fixes