ooze-parser 0.1.10 → 0.1.12
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 +4 -4
- data/.gitignore +22 -0
- data/.rubocop.yml +102 -0
- data/.ruby-version +1 -0
- data/.yardopts +10 -0
- data/README.md +23 -0
- data/lib/ooz/base/evolution.rb +2 -1
- data/lib/ooz/base/field/actions_list.rb +10 -0
- data/lib/ooz/base/field/checklist.rb +3 -2
- data/lib/ooz/base/field/contractor_entities.rb +15 -0
- data/lib/ooz/base/field/cross_reference.rb +3 -2
- data/lib/ooz/base/field/date.rb +4 -3
- data/lib/ooz/base/field/file.rb +3 -2
- data/lib/ooz/base/field/gauge.rb +3 -2
- data/lib/ooz/base/field/geo.rb +10 -0
- data/lib/ooz/base/field/image_gallery.rb +3 -2
- data/lib/ooz/base/field/mailbox.rb +10 -0
- data/lib/ooz/base/field/people.rb +5 -3
- data/lib/ooz/base/field/select.rb +18 -13
- data/lib/ooz/base/field.rb +30 -13
- data/lib/ooz/base/field_factory.rb +9 -3
- data/lib/ooz/base/force.rb +3 -3
- data/lib/ooz/base/genome.rb +14 -0
- data/lib/ooz/base/model.rb +16 -9
- data/lib/ooz/base/model_factory.rb +15 -11
- data/lib/ooz/base/ooze.rb +21 -9
- data/lib/ooz/base/stage/task/action_factory.rb +5 -2
- data/lib/ooz/base/stage/task/scheduled_callback.rb +2 -1
- data/lib/ooz/base/stage/task/strategy/direct.rb +1 -1
- data/lib/ooz/base/stage/task/strategy/editable.rb +1 -1
- data/lib/ooz/base/stage/task/strategy/prior.rb +1 -1
- data/lib/ooz/base/stage/task/strategy/prior_supervisor.rb +1 -1
- data/lib/ooz/base/stage/task/strategy.rb +9 -9
- data/lib/ooz/base/stage/task/strategy_factory.rb +8 -2
- data/lib/ooz/base/stage/task.rb +12 -11
- data/lib/ooz/base/stage.rb +4 -2
- data/lib/ooz/base.rb +1 -0
- data/lib/ooz/common/base_class.rb +15 -9
- data/lib/ooz/common/base_factory.rb +0 -3
- data/lib/ooz/common/base_model.rb +13 -8
- data/lib/ooz/common/hash_diff.rb +6 -4
- data/lib/ooz/model/evolution.rb +1 -2
- data/lib/ooz/model/field/actions_list.rb +15 -0
- data/lib/ooz/model/field/checklist/item.rb +5 -0
- data/lib/ooz/model/field/checklist.rb +7 -1
- data/lib/ooz/model/field/contractor_entities.rb +14 -0
- data/lib/ooz/model/field/cross_reference.rb +5 -0
- data/lib/ooz/model/field/date.rb +5 -0
- data/lib/ooz/model/field/file.rb +7 -1
- data/lib/ooz/model/field/gauge.rb +6 -0
- data/lib/ooz/model/field/geo.rb +15 -0
- data/lib/ooz/model/field/image_gallery.rb +7 -1
- data/lib/ooz/model/field/mailbox.rb +14 -0
- data/lib/ooz/model/field/number.rb +5 -0
- data/lib/ooz/model/field/people.rb +5 -0
- data/lib/ooz/model/field/plain_text.rb +5 -0
- data/lib/ooz/model/field/rich_text.rb +5 -0
- data/lib/ooz/model/field/select/option.rb +5 -0
- data/lib/ooz/model/field/select.rb +7 -1
- data/lib/ooz/model/field.rb +24 -14
- data/lib/ooz/model/field_factory.rb +1 -1
- data/lib/ooz/model/ooze.rb +48 -17
- data/lib/ooz/model/section.rb +1 -3
- data/lib/ooz/model/stage.rb +10 -2
- data/lib/ooz/version.rb +1 -1
- data/lib/ooze-parser.rb +1 -0
- data/ooze-parser.gemspec +18 -17
- metadata +22 -8
@@ -7,14 +7,20 @@ module Ooz
|
|
7
7
|
end
|
8
8
|
end
|
9
9
|
|
10
|
-
require_relative
|
10
|
+
require_relative 'select/option'
|
11
11
|
|
12
12
|
module Ooz
|
13
13
|
module Model
|
14
14
|
class Field
|
15
15
|
class Select
|
16
16
|
overridable_const :select_option, Model::Field::Select::Option
|
17
|
+
|
17
18
|
include Methods
|
19
|
+
|
20
|
+
def clear
|
21
|
+
options.each(&:clear)
|
22
|
+
super
|
23
|
+
end
|
18
24
|
end
|
19
25
|
end
|
20
26
|
end
|
data/lib/ooz/model/field.rb
CHANGED
@@ -3,6 +3,8 @@ module Ooz
|
|
3
3
|
class Field < Base::Field
|
4
4
|
module Methods
|
5
5
|
def self.included(base)
|
6
|
+
super
|
7
|
+
|
6
8
|
base.send(:include, InstanceMethods)
|
7
9
|
end
|
8
10
|
|
@@ -18,25 +20,33 @@ module Ooz
|
|
18
20
|
def stages
|
19
21
|
section.stages
|
20
22
|
end
|
23
|
+
|
24
|
+
def clear
|
25
|
+
self.content_translations = {}
|
26
|
+
self
|
27
|
+
end
|
21
28
|
end
|
22
29
|
end
|
23
30
|
|
24
31
|
include Methods
|
25
|
-
|
26
32
|
end
|
27
33
|
end
|
28
34
|
end
|
29
35
|
|
30
|
-
require_relative
|
31
|
-
require_relative
|
32
|
-
require_relative
|
33
|
-
require_relative
|
34
|
-
require_relative
|
35
|
-
require_relative
|
36
|
-
require_relative
|
37
|
-
require_relative
|
38
|
-
require_relative
|
39
|
-
require_relative
|
40
|
-
require_relative
|
41
|
-
require_relative
|
42
|
-
require_relative
|
36
|
+
require_relative 'field/undefined'
|
37
|
+
require_relative 'field/select'
|
38
|
+
require_relative 'field/date'
|
39
|
+
require_relative 'field/plain_text'
|
40
|
+
require_relative 'field/rich_text'
|
41
|
+
require_relative 'field/number'
|
42
|
+
require_relative 'field/gauge'
|
43
|
+
require_relative 'field/people'
|
44
|
+
require_relative 'field/tag_field'
|
45
|
+
require_relative 'field/cross_reference'
|
46
|
+
require_relative 'field/file'
|
47
|
+
require_relative 'field/image_gallery'
|
48
|
+
require_relative 'field/checklist'
|
49
|
+
require_relative 'field/contractor_entities'
|
50
|
+
require_relative 'field/geo'
|
51
|
+
require_relative 'field/actions_list'
|
52
|
+
require_relative 'field/mailbox'
|
data/lib/ooz/model/ooze.rb
CHANGED
@@ -7,16 +7,17 @@ module Ooz
|
|
7
7
|
overridable_const :force_class, Model::Force
|
8
8
|
|
9
9
|
def tagged?(tag, search_on: :tags)
|
10
|
-
haystack =
|
10
|
+
haystack = send(search_on)
|
11
11
|
haystack.include?(tag)
|
12
12
|
end
|
13
13
|
|
14
14
|
def stages?
|
15
|
-
evolution && evolution.stages&.length
|
15
|
+
evolution && evolution.stages&.length&.positive?
|
16
16
|
end
|
17
17
|
|
18
18
|
def stages
|
19
|
-
return []
|
19
|
+
return [] unless stages?
|
20
|
+
|
20
21
|
evolution.stages
|
21
22
|
end
|
22
23
|
|
@@ -29,10 +30,8 @@ module Ooz
|
|
29
30
|
stg.flow_node_ids.map do |id|
|
30
31
|
[id, stg]
|
31
32
|
end
|
32
|
-
end.flatten(1).group_by do |
|
33
|
-
|
34
|
-
end.transform_values do |arr_pairs|
|
35
|
-
arr_pairs.map {|pair| pair.last}
|
33
|
+
end.flatten(1).group_by(&:first).transform_values do |arr_pairs|
|
34
|
+
arr_pairs.map(&:last)
|
36
35
|
end
|
37
36
|
end
|
38
37
|
|
@@ -40,7 +39,11 @@ module Ooz
|
|
40
39
|
membranes
|
41
40
|
end
|
42
41
|
|
43
|
-
|
42
|
+
# @note
|
43
|
+
# 1. Usually used with the `label` as `key`.
|
44
|
+
# 2. Where multiple fields are spotted, first will prevail (resolve),
|
45
|
+
# except for `select` fields, that will be merged.
|
46
|
+
def fields_hash(key: '_id', silent: true)
|
44
47
|
fields.group_by do |fld|
|
45
48
|
fld.send(key)
|
46
49
|
end.transform_values do |flds|
|
@@ -49,14 +52,17 @@ module Ooz
|
|
49
52
|
else
|
50
53
|
master = flds.first
|
51
54
|
next master unless master.is_a?(Ooz::Model::Field::Select)
|
52
|
-
|
55
|
+
|
56
|
+
rest = flds[1..]
|
57
|
+
|
53
58
|
rest.each do |fld|
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
+
next unless fld.is_a?(Ooz::Model::Field::Select)
|
60
|
+
|
61
|
+
master.other ||= fld.other
|
62
|
+
master.multiple ||= fld.multiple
|
63
|
+
Ooz::Base::Field::Select.merge_options(master, fld, silent: silent)
|
59
64
|
end
|
65
|
+
|
60
66
|
master
|
61
67
|
end
|
62
68
|
end
|
@@ -85,11 +91,36 @@ module Ooz
|
|
85
91
|
end
|
86
92
|
|
87
93
|
def bindings_by_field
|
88
|
-
bindings.group_by
|
89
|
-
b.reference_id
|
90
|
-
end
|
94
|
+
bindings.group_by(&:reference_id)
|
91
95
|
end
|
92
96
|
|
97
|
+
def clear
|
98
|
+
membranes.each do |mem|
|
99
|
+
next unless mem.respond_to?(:clear)
|
100
|
+
|
101
|
+
mem.clear
|
102
|
+
end
|
103
|
+
|
104
|
+
self.mould_counter = nil
|
105
|
+
self.location_ids = []
|
106
|
+
self.other_tags = []
|
107
|
+
self.auto_selected_locations = []
|
108
|
+
self.location_propagation_store = nil
|
109
|
+
self.geo_coordinates = {}
|
110
|
+
self.creator_id = nil
|
111
|
+
self.creator_name = nil
|
112
|
+
self.permits = []
|
113
|
+
self.forces_timed_out = nil
|
114
|
+
self.update_histories = []
|
115
|
+
self._schedules = []
|
116
|
+
self.cloned_ids_mapping = {}
|
117
|
+
|
118
|
+
return self unless stages?
|
119
|
+
|
120
|
+
stages.each(&:clear)
|
121
|
+
|
122
|
+
self
|
123
|
+
end
|
93
124
|
end
|
94
125
|
end
|
95
126
|
end
|
data/lib/ooz/model/section.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
module Ooz
|
2
2
|
module Model
|
3
3
|
class Section < Base::Section
|
4
|
-
|
5
4
|
def stages
|
6
5
|
ooze.stages_by_section[_id] || []
|
7
6
|
end
|
@@ -11,7 +10,7 @@ module Ooz
|
|
11
10
|
end
|
12
11
|
|
13
12
|
def split?
|
14
|
-
_type ==
|
13
|
+
_type == 'Enzyme::Flow::SplitNode'
|
15
14
|
end
|
16
15
|
|
17
16
|
def compact?
|
@@ -25,7 +24,6 @@ module Ooz
|
|
25
24
|
def fields
|
26
25
|
collect_from(field_ids, ooze.fields_hash)
|
27
26
|
end
|
28
|
-
|
29
27
|
end
|
30
28
|
end
|
31
29
|
end
|
data/lib/ooz/model/stage.rb
CHANGED
@@ -5,14 +5,22 @@ module Ooz
|
|
5
5
|
overridable_const :task_review_class, Model::Stage::Task::Review
|
6
6
|
|
7
7
|
def sections?
|
8
|
-
|
8
|
+
return false unless flow_node_ids
|
9
|
+
|
10
|
+
flow_node_ids.length.positive?
|
9
11
|
end
|
10
12
|
|
11
13
|
def sections
|
12
|
-
return []
|
14
|
+
return [] unless sections?
|
15
|
+
|
13
16
|
collect_from(flow_node_ids, ooze.sections_hash)
|
14
17
|
end
|
15
18
|
|
19
|
+
def clear
|
20
|
+
self.permits = []
|
21
|
+
self.contractor_permits = []
|
22
|
+
self
|
23
|
+
end
|
16
24
|
end
|
17
25
|
end
|
18
26
|
end
|
data/lib/ooz/version.rb
CHANGED
data/lib/ooze-parser.rb
CHANGED
data/ooze-parser.gemspec
CHANGED
@@ -1,26 +1,27 @@
|
|
1
|
-
lib = File.expand_path(
|
1
|
+
lib = File.expand_path('lib', __dir__)
|
2
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
3
|
|
4
|
-
require
|
4
|
+
require './lib/ooz/version'
|
5
5
|
|
6
|
-
Gem::Specification.new do |
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
s.licenses = %w[MIT]
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = 'ooze-parser'
|
8
|
+
spec.version = Ooz::VERSION
|
9
|
+
spec.platform = Gem::Platform::RUBY
|
10
|
+
spec.authors = ['Oscar Segura']
|
11
|
+
spec.email = ['oscar@ecoportal.co.nz']
|
12
|
+
spec.summary = 'ooze-parser to boost data integration and treatment'
|
13
|
+
spec.homepage = 'https://www.ecoportal.com'
|
14
|
+
spec.licenses = %w[MIT]
|
16
15
|
|
17
|
-
|
16
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
17
|
+
|
18
|
+
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
18
19
|
f.match(%r{^(test|spec|features)/})
|
19
20
|
end
|
20
21
|
|
21
|
-
#
|
22
|
-
#
|
23
|
-
|
22
|
+
#spec.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
23
|
+
#spec.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
24
|
+
spec.require_paths = ['lib']
|
24
25
|
|
25
|
-
|
26
|
+
spec.add_development_dependency 'rspec', '~> 3', '>= 3.8'
|
26
27
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ooze-parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.12
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Oscar Segura
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-03-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -30,7 +30,7 @@ dependencies:
|
|
30
30
|
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: '3.8'
|
33
|
-
description:
|
33
|
+
description:
|
34
34
|
email:
|
35
35
|
- oscar@ecoportal.co.nz
|
36
36
|
executables: []
|
@@ -38,20 +38,28 @@ extensions: []
|
|
38
38
|
extra_rdoc_files: []
|
39
39
|
files:
|
40
40
|
- ".gitignore"
|
41
|
+
- ".rubocop.yml"
|
42
|
+
- ".ruby-version"
|
43
|
+
- ".yardopts"
|
41
44
|
- LICENSE
|
45
|
+
- README.md
|
42
46
|
- lib/ooz/base.rb
|
43
47
|
- lib/ooz/base/evolution.rb
|
44
48
|
- lib/ooz/base/field.rb
|
49
|
+
- lib/ooz/base/field/actions_list.rb
|
45
50
|
- lib/ooz/base/field/checklist.rb
|
46
51
|
- lib/ooz/base/field/checklist/item.rb
|
52
|
+
- lib/ooz/base/field/contractor_entities.rb
|
47
53
|
- lib/ooz/base/field/cross_reference.rb
|
48
54
|
- lib/ooz/base/field/date.rb
|
49
55
|
- lib/ooz/base/field/file.rb
|
50
56
|
- lib/ooz/base/field/file/file.rb
|
51
57
|
- lib/ooz/base/field/gauge.rb
|
52
58
|
- lib/ooz/base/field/gauge/stop.rb
|
59
|
+
- lib/ooz/base/field/geo.rb
|
53
60
|
- lib/ooz/base/field/image_gallery.rb
|
54
61
|
- lib/ooz/base/field/image_gallery/image.rb
|
62
|
+
- lib/ooz/base/field/mailbox.rb
|
55
63
|
- lib/ooz/base/field/number.rb
|
56
64
|
- lib/ooz/base/field/people.rb
|
57
65
|
- lib/ooz/base/field/plain_text.rb
|
@@ -63,6 +71,7 @@ files:
|
|
63
71
|
- lib/ooz/base/field_factory.rb
|
64
72
|
- lib/ooz/base/force.rb
|
65
73
|
- lib/ooz/base/force/binding.rb
|
74
|
+
- lib/ooz/base/genome.rb
|
66
75
|
- lib/ooz/base/model.rb
|
67
76
|
- lib/ooz/base/model_factory.rb
|
68
77
|
- lib/ooz/base/ooze.rb
|
@@ -94,16 +103,20 @@ files:
|
|
94
103
|
- lib/ooz/model.rb
|
95
104
|
- lib/ooz/model/evolution.rb
|
96
105
|
- lib/ooz/model/field.rb
|
106
|
+
- lib/ooz/model/field/actions_list.rb
|
97
107
|
- lib/ooz/model/field/checklist.rb
|
98
108
|
- lib/ooz/model/field/checklist/item.rb
|
109
|
+
- lib/ooz/model/field/contractor_entities.rb
|
99
110
|
- lib/ooz/model/field/cross_reference.rb
|
100
111
|
- lib/ooz/model/field/date.rb
|
101
112
|
- lib/ooz/model/field/file.rb
|
102
113
|
- lib/ooz/model/field/file/file.rb
|
103
114
|
- lib/ooz/model/field/gauge.rb
|
104
115
|
- lib/ooz/model/field/gauge/stop.rb
|
116
|
+
- lib/ooz/model/field/geo.rb
|
105
117
|
- lib/ooz/model/field/image_gallery.rb
|
106
118
|
- lib/ooz/model/field/image_gallery/image.rb
|
119
|
+
- lib/ooz/model/field/mailbox.rb
|
107
120
|
- lib/ooz/model/field/number.rb
|
108
121
|
- lib/ooz/model/field/people.rb
|
109
122
|
- lib/ooz/model/field/plain_text.rb
|
@@ -124,8 +137,9 @@ files:
|
|
124
137
|
homepage: https://www.ecoportal.com
|
125
138
|
licenses:
|
126
139
|
- MIT
|
127
|
-
metadata:
|
128
|
-
|
140
|
+
metadata:
|
141
|
+
rubygems_mfa_required: 'true'
|
142
|
+
post_install_message:
|
129
143
|
rdoc_options: []
|
130
144
|
require_paths:
|
131
145
|
- lib
|
@@ -140,8 +154,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
140
154
|
- !ruby/object:Gem::Version
|
141
155
|
version: '0'
|
142
156
|
requirements: []
|
143
|
-
rubygems_version: 3.
|
144
|
-
signing_key:
|
157
|
+
rubygems_version: 3.5.23
|
158
|
+
signing_key:
|
145
159
|
specification_version: 4
|
146
160
|
summary: ooze-parser to boost data integration and treatment
|
147
161
|
test_files: []
|