statesman-multi_state 0.2.2 → 0.2.5

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: 97dc94e4e800c1b91c2204e074e5928c3d318209aae91334bf92969b837c8630
4
- data.tar.gz: 7944ffe74d05497c0661cfbb1490f7b88d4ad72a3925c1bf9cd93b934e0a6753
3
+ metadata.gz: 72d09a68d4f64028e6376bee25b22a22d0e1bd299fde5e49f74adc9220cb034b
4
+ data.tar.gz: 7682734dee3c90329c5a630116f8682ad7824bc3164b3c55ae472d2e71ef9b77
5
5
  SHA512:
6
- metadata.gz: ed8b84f4a8ad5b85dc909c9ff128939f50a94f1a4fb51ff8054ffa6346d59fef1ef760482d67e48263aca911196cfcdf19be78fe5efd34f37156da0b472a82b3
7
- data.tar.gz: 424f636e766eabeb2480e791e5a647370dcd56f1618d449c6ba75c6adfcacc9b7005f2f29dbfd31393454bf3e96e81c881d9663dea047428471d66580a9c9b8f
6
+ metadata.gz: e3ad119c6bea29649e78fee1b6a295b7a5fab795ec860c3741d3722c58e2284612541d627c78b0ec645937175cf64378b0aaadaeea51be1d0a2ef0fb4126278f
7
+ data.tar.gz: 438244f9e6f1b1775d47653ef29708335661968b8e3dae317df452094ce0ec8c743d976eeb22e752bedc137bd836ef406f89b90fc8b0c85c09522d53421e46f5
@@ -11,7 +11,7 @@ module Statesman
11
11
  class_methods do
12
12
  def has_one_state_machine(field_name, state_machine_klass:, transition_klass:,
13
13
  transition_name: transition_klass.to_s.demodulize.underscore.pluralize.to_sym, virtual_attribute_name: "#{field_name}_state_form",
14
- transition_foreign_key: nil)
14
+ transition_foreign_key: nil, initial_transition: true)
15
15
  state_machine_name = "#{field_name}_state_machine"
16
16
 
17
17
  # To handle STI, this needs to be done to get the base klass
@@ -44,7 +44,8 @@ module Statesman
44
44
  instance_variable_set(key, #{state_machine_klass}.new(
45
45
  self,
46
46
  transition_class: #{transition_klass},
47
- association_name: "#{transition_name}"
47
+ association_name: "#{transition_name}",
48
+ initial_transition: "#{initial_transition}"
48
49
  ))
49
50
  end
50
51
 
@@ -83,9 +84,10 @@ module Statesman
83
84
  if defined?(super)
84
85
  super
85
86
  else
86
- save
87
- @registered_callbacks.each(&:call)
88
- @registered_callbacks = []
87
+ save.tap do
88
+ @registered_callbacks.each(&:call)
89
+ @registered_callbacks = []
90
+ end
89
91
  end
90
92
  end
91
93
  METHOD
@@ -98,7 +100,7 @@ module Statesman
98
100
  nil,
99
101
  { state_machine_klass: state_machine_klass, transition_klass: transition_klass,
100
102
  transition_name: transition_name, virtual_attribute_name: virtual_attribute_name,
101
- transition_foreign_key: transition_foreign_key },
103
+ transition_foreign_key: transition_foreign_key, initial_transition: initial_transition },
102
104
  self
103
105
  )
104
106
 
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Statesman
4
4
  module MultiState
5
- VERSION = '0.2.2'
5
+ VERSION = '0.2.5'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: statesman-multi_state
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chedli Bourguiba
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2023-10-17 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: rails
@@ -63,7 +62,6 @@ metadata:
63
62
  homepage_uri: https://github.com/chaadow/statesman-multi_state
64
63
  source_code_uri: https://github.com/chaadow/statesman-multi_state
65
64
  changelog_uri: https://github.com/chaadow/statesman-multi_state/blob/master/CHANGELOG.md
66
- post_install_message:
67
65
  rdoc_options: []
68
66
  require_paths:
69
67
  - lib
@@ -78,8 +76,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
78
76
  - !ruby/object:Gem::Version
79
77
  version: '0'
80
78
  requirements: []
81
- rubygems_version: 3.4.10
82
- signing_key:
79
+ rubygems_version: 3.6.7
83
80
  specification_version: 4
84
81
  summary: Rails/Statesman plugin that handle multiple state machines on the same model
85
82
  through `has_one_state_machine` ActiveRecord macro