act_as_fire_record_beta 0.0.8 → 0.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c76e43b19f1342e88e1b20294590913587ac006c208181fa517c99f1023f1d00
4
- data.tar.gz: 14f4ae4b3496befa9569837c0fa99fa902eb4b12d9c720a73ecf846913ef5ad1
3
+ metadata.gz: 77d8ac84675d8ec650cb51876c7ba1517a403ea82f050827bd1974d75138bc31
4
+ data.tar.gz: aca93cb508bf0ec6703c362ac5b9331ef940fd7fac61e766b1d57c27bfbbceec
5
5
  SHA512:
6
- metadata.gz: 888b6e53584137db8793d626f8afd323474cd27473179a95c5253280cbf1ad21ecca33bd166f404821303a98aa6c8b69c4ac49f245e3e4e994d43a1dbbb55342
7
- data.tar.gz: 9c0716e6bb104a0a526cd1e56229031a4f472c1ef1b0352a29e7e5e1126ff0b9af7720f09796c704b8f82aac2258d0822c98b45ae842dc31eade33c2a97c8509
6
+ metadata.gz: 295b47d79ef485aff5b03190f77d79b1de8b3abec2b80fbd6fe9fd8975efe0175d50f4927c94c1273441f8b81f8f894d858acb52cf1d44533318930cab95d037
7
+ data.tar.gz: 90818791ea217adb7f026f00342302604a4de97bcf195f8e8f3a635c851fd4ab2f5bcb202d210878e8a583db8cd07d32b99dd43838714cc3b0ddd1faa2109a3a
data/README.md CHANGED
@@ -68,13 +68,13 @@ Finder examples:
68
68
  ```ruby
69
69
  book = Book.find_by(title: 'An Awesome Book')
70
70
 
71
- books = Book.all.get_records
71
+ books = Book.all
72
72
 
73
- books = Book.order(:title).get_records
74
- books = Book.order(:title, :desc).get_records
73
+ books = Book.order(:title)
74
+ books = Book.order(:title, :desc)
75
75
 
76
- books = Book.where(:page, :>=, 200).get_records
77
- books = Book.where(:page, :>=, 200).order(:page).get_records
76
+ books = Book.where(:page, :>=, 200)
77
+ books = Book.where(:page, :>=, 200).order(:page)
78
78
  ```
79
79
 
80
80
  Please refer test codes for other APIs.
@@ -88,6 +88,10 @@ As of now, Japanese document is only available.
88
88
 
89
89
  [README-ja.md](https://github.com/JunichiIto/act_as_fire_record_beta/blob/main/README-ja.md)
90
90
 
91
+ Google translate might help you.
92
+
93
+ [Auto-translated README-ja.md](https://github-com.translate.goog/JunichiIto/act_as_fire_record_beta/blob/main/README-ja.md?_x_tr_sl=ja&_x_tr_tl=en&_x_tr_hl=ja&_x_tr_pto=wapp)
94
+
91
95
  ## Contributing
92
96
  Contribution directions go here.
93
97
 
@@ -2,20 +2,45 @@ module Google
2
2
  module Cloud
3
3
  module Firestore
4
4
  class Query
5
- def get_records(limit: nil)
6
- scope = limit ? limit(limit) : self
7
- scope.get.map do |data|
8
- fire_record_class.to_instance(data)
5
+ include Enumerable
6
+
7
+ def method_missing(sym, *args)
8
+ if respond_to_missing?(sym, false)
9
+ self.to_a.send(sym, *args)
10
+ else
11
+ super
12
+ end
13
+ end
14
+
15
+ def respond_to_missing?(sym, _include_private)
16
+ [].respond_to?(sym) ? true : super
17
+ end
18
+
19
+ def each(&b)
20
+ records = get.map do |data|
21
+ record = fire_record_class.to_instance(data)
22
+ b.call(record) if b
23
+ record
9
24
  end
25
+ b ? records : records.each
26
+ end
27
+
28
+ def inspect
29
+ entries = self.to_a.map(&:inspect)
30
+ "#<#{self.class.name} [#{entries.join(', ')}]>"
31
+ end
32
+
33
+ def pretty_print(q)
34
+ q.pp(self.to_a)
10
35
  end
11
36
 
12
37
  def destroy_all
13
- doc_refs = get_records.map(&:doc_ref)
38
+ doc_refs = self.map(&:doc_ref)
14
39
  fire_record_class.delete_in_batch(doc_refs)
15
40
  end
16
41
 
17
42
  def first(limit = 1)
18
- records = get_records(limit: limit)
43
+ records = limit(limit)
19
44
  limit == 1 ? records[0] : records
20
45
  end
21
46
 
@@ -1,3 +1,3 @@
1
1
  module ActAsFireRecordBeta
2
- VERSION = "0.0.8"
2
+ VERSION = "0.0.10"
3
3
  end
@@ -81,8 +81,11 @@ module ActAsFireRecordBeta
81
81
  end
82
82
 
83
83
  def first(limit = 1)
84
- records = col.get_records(limit: limit)
85
- limit == 1 ? records[0] : records
84
+ all.first(limit)
85
+ end
86
+
87
+ def count
88
+ all.count
86
89
  end
87
90
 
88
91
  def create(params)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: act_as_fire_record_beta
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Junichi Ito
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-23 00:00:00.000000000 Z
11
+ date: 2022-12-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails