comee_core 0.1.28 → 0.1.29

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4584d0f6f728f6ab957e59500e8a8af4564e0922558df83cb7562e9d9b094603
4
- data.tar.gz: 5404312320bbcf4d482e5261a6c960dc1418d1e9051c1cfa810419cd872fef7b
3
+ metadata.gz: 589381bfd5e0931074d18a87c8559e42edb1b3eb07adf97603609ce29f4f50a1
4
+ data.tar.gz: 05bee510e99019aab8d77cdec3b04a4c46e5942f659c1408cb313f9c52ede5d4
5
5
  SHA512:
6
- metadata.gz: 86745d97fac73d6fc66de542291014f4c1b6b57fb61bac5c8c31f523b7be03728b3109fad94750100ad40c6cbdca0305e448baaa5d399c52208ddb14ff2921a0
7
- data.tar.gz: d4013f260e88c21628dc3eb1434718e949f3132e77b77d1daa58554fe6f33339da882772c43e6f6efc45d5d07230b0255b08b4fffa96cf7a91a179b0f6f6ab9c
6
+ metadata.gz: cec0657364d59286b622ab05ab5604a2ed2c516b1ea1696127251e773e46c3baf957459f3b6b6e78768ea7c631fe5a845e055527926546ada1530dfb22e58e34
7
+ data.tar.gz: 86d63cae7ea2efafb19dbd28950d2a1d5ed1e6c05af0ca4a2a4e6f21296d85208f2173f4844e9887180825480ef1c3dec603a3c60207c0530844d05b1e8246d8
@@ -1,6 +1,7 @@
1
1
  module Comee
2
2
  module Core
3
3
  class ApplicationController < ActionController::API
4
+ include Comee::Core::Pagination
4
5
  before_action :authenticate
5
6
 
6
7
  def current_user
@@ -0,0 +1,35 @@
1
+ module Comee
2
+ module Core
3
+ module Pagination
4
+ extend ActiveSupport::Concern
5
+
6
+ def default_per_page
7
+ 25
8
+ end
9
+
10
+ def page_no
11
+ params[:page]&.to_i || 1
12
+ end
13
+
14
+ def per_page
15
+ params[:per_page]&.to_i || default_per_page
16
+ end
17
+
18
+ def paginate_offset
19
+ (page_no - 1) * per_page
20
+ end
21
+
22
+ def order_by
23
+ params.fetch(:order_by, :id)
24
+ end
25
+
26
+ def order_direction
27
+ params.fetch(:order_direction, :asc)
28
+ end
29
+
30
+ def paginate
31
+ ->(it) { it.limit(per_page).offset(paginate_offset).order("#{order_by}": order_direction) }
32
+ end
33
+ end
34
+ end
35
+ end
@@ -1,5 +1,5 @@
1
1
  module Comee
2
2
  module Core
3
- VERSION = "0.1.28".freeze
3
+ VERSION = "0.1.29".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: comee_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.28
4
+ version: 0.1.29
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henock L.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-28 00:00:00.000000000 Z
11
+ date: 2023-11-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: active_model_serializers
@@ -243,6 +243,7 @@ files:
243
243
  - app/controllers/comee/core/units_controller.rb
244
244
  - app/controllers/comee/core/users_controller.rb
245
245
  - app/controllers/concerns/comee/core/common.rb
246
+ - app/controllers/concerns/comee/core/pagination.rb
246
247
  - app/jobs/comee_core/application_job.rb
247
248
  - app/mailers/comee/core/application_mailer.rb
248
249
  - app/mailers/comee/core/supplier_mailer.rb