rao-service_chain 0.0.35.pre → 0.0.36.pre
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a484aa3db5835d220e458a08a54de6e6566f022827584726849d886a5af62564
|
4
|
+
data.tar.gz: 3ff63bd8df3c8488d6d66ed7466ab4281911fb466f6701f184a7d3b28827ace3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3f517402d68b47f6e06ad4638abceec5dfe2e5294b51c9ead78311c103951a6e26b8af0b4a5dc4d8588e667d75f43602d687979be93b9638445979a3f1f5933c
|
7
|
+
data.tar.gz: 499bfbbc30874d793a892005039de3ae0fba012dc467cfb14c036fd3a4d8c65810219b9ac31da8c516d831e20f7bae7ff578fe0c96c5f547f35fd81d6c6daf4f
|
@@ -23,7 +23,11 @@ module Rao
|
|
23
23
|
raise "Child class responsiblity"
|
24
24
|
end
|
25
25
|
|
26
|
-
def
|
26
|
+
def step_index(step)
|
27
|
+
self.steps.map(&:service).index(step.try(:service))
|
28
|
+
end
|
29
|
+
|
30
|
+
def actual_step_index
|
27
31
|
self.steps.map(&:service).index(self.actual_step.try(:service))
|
28
32
|
end
|
29
33
|
|
@@ -45,12 +49,23 @@ module Rao
|
|
45
49
|
self.steps[self.actual_step_index - 1]
|
46
50
|
end
|
47
51
|
|
52
|
+
def previous_steps
|
53
|
+
return [] if self.actual_step_index.nil?
|
54
|
+
return [] if self.actual_step_index == 0
|
55
|
+
self.steps[0..(self.actual_step_index - 1)]
|
56
|
+
end
|
57
|
+
|
48
58
|
def next_step
|
49
59
|
return nil if self.actual_step_index.nil?
|
50
60
|
return nil if self.actual_step_index + 1 >= self.step_count
|
51
61
|
self.steps[self.actual_step_index + 1]
|
52
62
|
end
|
53
63
|
|
64
|
+
def next_steps
|
65
|
+
return [] if self.actual_step_index.nil?
|
66
|
+
self.steps[(self.actual_step_index + 1)..-1]
|
67
|
+
end
|
68
|
+
|
54
69
|
def next_step?
|
55
70
|
!!next_step
|
56
71
|
end
|
@@ -69,10 +84,10 @@ module Rao
|
|
69
84
|
end
|
70
85
|
|
71
86
|
def to_hash(context = nil)
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
87
|
+
{
|
88
|
+
actual_step: self.actual_step.to_hash(context),
|
89
|
+
steps: self.steps.map { |s| s.to_hash(context) }
|
90
|
+
}
|
76
91
|
end
|
77
92
|
|
78
93
|
def completed_steps
|
@@ -83,6 +98,18 @@ module Rao
|
|
83
98
|
self.steps.collect { |s| s.pending? ? s : nil }.compact
|
84
99
|
end
|
85
100
|
|
101
|
+
def before_actual?(step)
|
102
|
+
return false if self.actual_step.nil?
|
103
|
+
return false if (si = step_index(wrap(step))).nil?
|
104
|
+
self.actual_step_index > si
|
105
|
+
end
|
106
|
+
|
107
|
+
def after_actual?(step)
|
108
|
+
return false if self.actual_step.nil?
|
109
|
+
return false if (si = step_index(wrap(step))).nil?
|
110
|
+
self.actual_step_index < si
|
111
|
+
end
|
112
|
+
|
86
113
|
private
|
87
114
|
|
88
115
|
def wrap(service, options = {})
|
@@ -19,9 +19,17 @@ module Rao
|
|
19
19
|
# = service_chain_helper(self).render_progress(@service_chain)
|
20
20
|
#
|
21
21
|
def render_progress(service_chain, options = {})
|
22
|
-
|
22
|
+
return if service_chain.nil?
|
23
|
+
|
24
|
+
options.reverse_merge!(
|
25
|
+
theme: :bootstrap4,
|
26
|
+
link_next_steps: true,
|
27
|
+
link_actual_step: false,
|
28
|
+
link_previous_steps: true
|
29
|
+
)
|
23
30
|
theme = options.delete(:theme)
|
24
|
-
|
31
|
+
|
32
|
+
c.render partial: "rao/service_chain/application_view_helper/render_progress/#{theme}", locals: { service_chain: service_chain, options: options }
|
25
33
|
end
|
26
34
|
end
|
27
35
|
end
|
data/app/views/rao/service_chain/application_view_helper/render_progress/_bootstrap4.html.haml
CHANGED
@@ -7,7 +7,11 @@
|
|
7
7
|
- if step.actual?
|
8
8
|
%span.wizard-step-marker.rounded-circle.bg-primary.text-white
|
9
9
|
%i.fas.fa-play
|
10
|
-
|
10
|
+
%span.wizard-step-label
|
11
|
+
- if options[:link_actual_step]
|
12
|
+
= link_to(step.label, step.url(self))
|
13
|
+
- else
|
14
|
+
= step.label
|
11
15
|
- else
|
12
16
|
- if step.completed?
|
13
17
|
%span.wizard-step-marker.rounded-circle.bg-success.text-white
|
@@ -15,4 +19,8 @@
|
|
15
19
|
- else
|
16
20
|
%span.wizard-step-marker.rounded-circle.bg-secondary.text-white
|
17
21
|
%i.fas.fa-circle
|
18
|
-
|
22
|
+
%span.wizard-step-label
|
23
|
+
- if (service_chain.before_actual?(step) && options[:link_previous_steps]) || (service_chain.after_actual?(step) && options[:link_next_steps])
|
24
|
+
= link_to(step.label, step.url(self))
|
25
|
+
- else
|
26
|
+
= step.label
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rao-service_chain
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.36.pre
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Roberto Vasquez Angel
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-12-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|