active_brainz 0.2.0 → 0.2.1

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: 0a1e585d51875bf9beedf59eeb0613f3975a129b56f2c83f37361a7280fe0246
4
- data.tar.gz: 4992719023292e5e2c0cbfd0a285438ef9c1e1e49f29578c189c7c28a41e5eae
3
+ metadata.gz: 67d98d8ec1ac6e3ddd67e259058124aba66651c0fe6f9af1ecd8f6415ff74e15
4
+ data.tar.gz: d47f5ff93d6052e541e2d68d5bc7d213251c9477ac4700750b63d186ea1ec960
5
5
  SHA512:
6
- metadata.gz: 493edeae2350c68c9b0ebe59eac8b1d96c3045ad5bf87be2d46b5d49b67736f6a0134cd9587ce5b6a358625910d4ccb4e1dd39a5cf08ec0bba207906ed3b2dd3
7
- data.tar.gz: 13f0cc6c665d3ea16cb619224e8c9e136f658e440d14b1571b608f4251df2aacac36a88a03bd12376c225b4e75418876715059ef8cab7d26b12f1262be9a7343
6
+ metadata.gz: 29057cb9e1b3c2314d4ab58a8dceb63ab02e6952f6539d4739d78e1ba8176049e3e885954c196d218316cbad568a61d44b54a51fbe6ff3e34defb55587468fb8
7
+ data.tar.gz: 65b1e4e8a09130520da1dc5ff20d8dfafdfb9ccbab0ec192ae30ca3348b4b6e718a5b6e122d4c01388004eccf10b7b65d9a581811c406027501010fee336ffdd
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ActiveBrainz
4
+ module HasBeginEndDate
5
+ extend ActiveSupport::Concern
6
+
7
+ included do
8
+ attribute :begin_date_year, :integer
9
+ attribute :begin_date_month, :integer
10
+ attribute :begin_date_day, :integer
11
+
12
+ attribute :end_date_year, :integer
13
+ attribute :end_date_month, :integer
14
+ attribute :end_date_day, :integer
15
+
16
+ attribute :ended, :boolean
17
+
18
+ def begin_date
19
+ @begin_date ||= Date.new(*[begin_date_year, begin_date_month, begin_date_day].compact) if begin_date_year
20
+ end
21
+
22
+ def end_date
23
+ @end_date ||= Date.new(*[end_date_year, end_date_month, end_date_day].compact) if end_date_year
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ActiveBrainz
4
+ module HasGID
5
+ extend ActiveSupport::Concern
6
+
7
+ included do
8
+ attribute :gid
9
+
10
+ validates :gid,
11
+ presence: true,
12
+ uniqueness: true
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ActiveBrainz
4
+ module HasParentChildren
5
+ extend ActiveSupport::Concern
6
+
7
+ included do
8
+ has_many :children,
9
+ class_name: name.demodulize,
10
+ foreign_key: "parent"
11
+
12
+ belongs_to :parent,
13
+ class_name: name.demodulize,
14
+ foreign_key: "parent",
15
+ optional: true
16
+
17
+ attribute :child_order, :integer
18
+ end
19
+ end
20
+ end
@@ -6,7 +6,7 @@ module ActiveBrainz
6
6
  module Version
7
7
  MAJOR = 0
8
8
  MINOR = 2
9
- PATCH = 0
9
+ PATCH = 1
10
10
  PRE = nil
11
11
 
12
12
  VERSION = [MAJOR, MINOR, PATCH].compact.join(".")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_brainz
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Dejonckheere
@@ -316,6 +316,9 @@ files:
316
316
  - README.md
317
317
  - config/inflections.rb
318
318
  - lib/active_brainz.rb
319
+ - lib/active_brainz/concerns/has_begin_end_date.rb
320
+ - lib/active_brainz/concerns/has_gid.rb
321
+ - lib/active_brainz/concerns/has_parent_children.rb
319
322
  - lib/active_brainz/models/area/area.rb
320
323
  - lib/active_brainz/models/area/area_type.rb
321
324
  - lib/active_brainz/models/artist/artist.rb