qiita-elasticsearch 0.12.2 → 0.13.0

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
  SHA1:
3
- metadata.gz: b0e8c3be6ee1a75216c518ded54d466262e988a5
4
- data.tar.gz: 0f37da7110244b6ae1532998f0fffbf77aa6b075
3
+ metadata.gz: 679823f4145624653fd94e7765f6707ad1e225c8
4
+ data.tar.gz: 4710f39ec9aaabca981871c4f64e48b5c3621a9b
5
5
  SHA512:
6
- metadata.gz: 4b75b6a88b6a1eb1f787513b3fc58eef95db5e612e24fc9753ab6a88063a43133a6ee8d874b1a151e26423c76b8e02424430cfe4b648b599f12976f821a25819
7
- data.tar.gz: 48854b52b9f7d0028827725118dbd93af347059f2ecc47db3a9276efca60c052521a4465c52cb94498ed7f0bdd1ab0e72f600eba90d88bbf91b4a4dfff93e599
6
+ metadata.gz: 8ebc041790fb3001ab215b9ac6333bfe7f465b65616ed2175db49de74ba611ebb8f1b0fa275f65fe30faf030c96a82f3b454b9841095175c03be577a017a71a2
7
+ data.tar.gz: 20f4e0bb4bbda2e9a9b83938bec952e91a1bc3510c4663e7db4e746a6a5f7e6478ff8312a180a62fba8ca2065d3d260922ffcf10afc8398695ee629f306a2532
@@ -1,3 +1,6 @@
1
+ ## 0.13.0
2
+ - Improve `created:...` and `updated:` tokens
3
+
1
4
  ## 0.12.2
2
5
  - Change Query#sort_term behavior on unknown sort token
3
6
 
@@ -21,6 +21,11 @@ module Qiita
21
21
  )?
22
22
  \z/x
23
23
 
24
+ FIELD_NAMES_TABLE = {
25
+ "created" => "created_at",
26
+ "updated" => "updated_at",
27
+ }
28
+
24
29
  attr_writer :time_zone
25
30
 
26
31
  # @return [Hash]
@@ -30,7 +35,7 @@ module Qiita
30
35
  if range_parameter
31
36
  {
32
37
  "range" => {
33
- @field_name => {
38
+ converted_field_name => {
34
39
  range_parameter => range_query,
35
40
  "time_zone" => @time_zone,
36
41
  }.reject do |key, value|
@@ -41,7 +46,7 @@ module Qiita
41
46
  else
42
47
  {
43
48
  "range" => {
44
- @field_name => {
49
+ converted_field_name => {
45
50
  "gte" => beginning_of_range.to_s,
46
51
  "lt" => end_of_range.to_s,
47
52
  "time_zone" => @time_zone,
@@ -71,6 +76,12 @@ module Qiita
71
76
  end
72
77
  end
73
78
 
79
+ # e.g. created:2000-01-01 -> created_at
80
+ # @return [String]
81
+ def converted_field_name
82
+ FIELD_NAMES_TABLE[@field_name] || @field_name
83
+ end
84
+
74
85
  def date_match
75
86
  @date_match ||= DATE_PATTERN.match(range_query || @term)
76
87
  end
@@ -12,7 +12,8 @@ module Qiita
12
12
  DEFAULT_FILTERABLE_FIELDS = []
13
13
  DEFAULT_HIERARCHAL_FIELDS = []
14
14
  DEFAULT_INT_FIELDS = []
15
- EXTRA_FILTERABLE_FIELDS = %w(is sort)
15
+ EXTRA_DATE_FIELDS = %w(created updated)
16
+ EXTRA_FILTERABLE_FIELDS = %w(created is sort updated)
16
17
 
17
18
  TOKEN_PATTERN = /
18
19
  (?<token_string>
@@ -69,7 +70,7 @@ module Qiita
69
70
  private
70
71
 
71
72
  def date_fields
72
- @date_fields || DEFAULT_DATE_FIELDS
73
+ (@date_fields || DEFAULT_DATE_FIELDS) | EXTRA_DATE_FIELDS
73
74
  end
74
75
 
75
76
  def downcased_fields
@@ -1,5 +1,5 @@
1
1
  module Qiita
2
2
  module Elasticsearch
3
- VERSION = "0.12.2"
3
+ VERSION = "0.13.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qiita-elasticsearch
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.2
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryo Nakamura
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-13 00:00:00.000000000 Z
11
+ date: 2015-05-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport