ecoportal-api-v2 1.1.8 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.md CHANGED
@@ -1,694 +1,803 @@
1
1
  # Change Log
2
+
2
3
  All notable changes to this project will be documented in this file.
3
4
 
5
+ ## [2.0.0] - 2024-08-01
6
+
7
+ ### Added
8
+
9
+ - File upload to S3 and register it to ecoPortal
10
+ - `Ecoportal::API::Common::Content::DoubleModel`
11
+ - Allow update on `external_id`
12
+
13
+ ### Changed
14
+
15
+ - require `ruby 3`
16
+
17
+ ### Fixed
18
+
4
19
  ## [1.1.8] - 2024-03-23
5
20
 
6
21
  ### Changed
7
- - A lot of code tidy up
22
+
23
+ - A lot of code tidy up
8
24
 
9
25
  ### Fixed
10
- - `Ecoportal::API::Common::Conent::CollectionModel`
11
- - correct `item` `klass` resolution
26
+
27
+ - `Ecoportal::API::Common::Conent::CollectionModel`
28
+ - correct `item` `klass` resolution
12
29
 
13
30
  ## [1.1.7] - 2024-03-13
14
31
 
15
32
  ### Added
16
- - `Ecoportal::API::Common::Concerns::Benchmarkable`
17
- - `Ecoportal::API::Common::Conent::CollectionModel`
18
- - added ability to define **default** value for `read_only`
33
+
34
+ - `Ecoportal::API::Common::Concerns::Benchmarkable`
35
+ - `Ecoportal::API::Common::Conent::CollectionModel`
36
+ - added ability to define **default** value for `read_only`
19
37
 
20
38
  ### Fixed
21
- - `Ecoportal::API::Common::Content::CollectionModel` tidied up item `klass` scoping
22
- - **added** some benchmarking too
23
- - memoize `@_items`
39
+
40
+ - `Ecoportal::API::Common::Content::CollectionModel` tidied up item `klass` scoping
41
+ - **added** some benchmarking too
42
+ - memoize `@_items`
24
43
 
25
44
  ## [1.1.6] - 2024-02-29
26
45
 
27
46
  ### Added
28
- - A bit of **specs** on object retrieval for `Ecoportal::API::Common::Conent::CollectionModel`
29
- - `Ecoportal::API::Registers::PageResult` exposed `membranes`
30
- - with new object `Ecoportal::API::Registers::PageResult::MembraneDroplet`
47
+
48
+ - A bit of **specs** on object retrieval for `Ecoportal::API::Common::Conent::CollectionModel`
49
+ - `Ecoportal::API::Registers::PageResult` exposed `membranes`
50
+ - with new object `Ecoportal::API::Registers::PageResult::MembraneDroplet`
31
51
 
32
52
  ### Fixed
33
- - `Ecoportal::API::Common::Conent::CollectionModel`
53
+
54
+ - `Ecoportal::API::Common::Conent::CollectionModel`
34
55
 
35
56
  ## [1.1.5] - 2024-02-03
36
57
 
37
58
  ### Changed
38
- - Upgrade gem dependencies
59
+
60
+ - Upgrade gem dependencies
39
61
 
40
62
  ## [1.1.4] - 2024-02-01
41
63
 
42
64
  ### Added
43
- - Support for new fields
44
- - `Ecoportal::API::V2::Page::Component::ActionsField`
45
- - `Ecoportal::API::V2::Page::Component::MailboxField`
65
+
66
+ - Support for new fields
67
+ - `Ecoportal::API::V2::Page::Component::ActionsField`
68
+ - `Ecoportal::API::V2::Page::Component::MailboxField`
46
69
 
47
70
  ## [1.1.3] - 2023-06-28
48
71
 
49
72
  ### Added
50
- - `Ecoportal::API::V2::Page::Component::ContractorEntitiesField`
51
- - Added support for contractor entities fields.
73
+
74
+ - `Ecoportal::API::V2::Page::Component::ContractorEntitiesField`
75
+ - Added support for contractor entities fields.
52
76
 
53
77
  ## [1.1.2] - 2023-04-17
54
78
 
55
79
  ### Changed
56
- - Require ruby version `2.7.2`
57
- - Soften max version on **gem** dependencies
58
- - Upgrade core `ecoportal-api` gem
80
+
81
+ - Require ruby version `2.7.2`
82
+ - Soften max version on **gem** dependencies
83
+ - Upgrade core `ecoportal-api` gem
59
84
 
60
85
  ### Fixed
61
- - `Ecoportal::API::Common::Content::DoubleModel` was not copying `doc` at root level
86
+
87
+ - `Ecoportal::API::Common::Content::DoubleModel` was not copying `doc` at root level
62
88
 
63
89
  ## [1.1.1] - 2023-03-09
64
90
 
65
91
  ### Added
92
+
66
93
  ### Changed
67
- - upgraded core gem `ecoportal-api`
94
+
95
+ - upgraded core gem `ecoportal-api`
68
96
 
69
97
  ### Fixed
70
98
 
71
99
  ## [1.0.1] - 2023-02-24
72
100
 
73
101
  ### Added
74
- - Allowed `read_only` mode to support `emdeds_many` with item class without `method_key`
75
- - `Ecoportal::API::Common::Content::DoubleModel`
76
- - `Ecoportal::API::Common::Content::CollectionModel`
77
- - `Ecoportal::API::Common::Content::ArrayModel`
102
+
103
+ - Allowed `read_only` mode to support `emdeds_many` with item class without `method_key`
104
+ - `Ecoportal::API::Common::Content::DoubleModel`
105
+ - `Ecoportal::API::Common::Content::CollectionModel`
106
+ - `Ecoportal::API::Common::Content::ArrayModel`
78
107
 
79
108
  ### Changed
80
- - It is a risky change (so treated as a **braking change**)
109
+
110
+ - It is a risky change (so treated as a **braking change**)
81
111
 
82
112
  ## [0.9.7] - 2022-11-29
83
113
 
84
114
  ### Added
85
- - `Ecoportal::API::V2::Page::Component::ReferenceField` added methods `#delete` and `#clear`
115
+
116
+ - `Ecoportal::API::V2::Page::Component::ReferenceField` added methods `#delete` and `#clear`
86
117
 
87
118
  ### Changed
88
- - `Ecoportal::API::V2::Page::Component::ReferenceField#add`
89
- - be able to add multiple references
90
- - prevent double-ups, just in case the server doesn't handle this
119
+
120
+ - `Ecoportal::API::V2::Page::Component::ReferenceField#add`
121
+ - be able to add multiple references
122
+ - prevent double-ups, just in case the server doesn't handle this
91
123
 
92
124
  ### Fixed
93
- - `Ecoportal::API::V2::Page::Component#bindings`
125
+
126
+ - `Ecoportal::API::V2::Page::Component#bindings`
94
127
 
95
128
  ## [0.9.6] - 2022-11-18
96
129
 
97
130
  ### Added
98
- - `Ecoportal::API::V2::Page::Stage#components`
99
- - `Ecoportal::API::V2::Page::Component#replace`
100
- - `Ecoportal::API::V2::Page::Force::Binding#replace`
131
+
132
+ - `Ecoportal::API::V2::Page::Stage#components`
133
+ - `Ecoportal::API::V2::Page::Component#replace`
134
+ - `Ecoportal::API::V2::Page::Force::Binding#replace`
101
135
 
102
136
  ### Fixed
103
- - `Ecoportal::API::V2::Page::Component#bindings`
137
+
138
+ - `Ecoportal::API::V2::Page::Component#bindings`
104
139
 
105
140
  ## [0.9.5] - 2022-11-17
106
141
 
107
142
  ### Fixed
108
- - `Ecoportal::API::V2::Page::Component::ImagesField#empty?` missed to add this one.
143
+
144
+ - `Ecoportal::API::V2::Page::Component::ImagesField#empty?` missed to add this one.
109
145
 
110
146
  ## [0.9.4] - 2022-11-15
111
147
 
112
148
  ### Added
113
- - `Ecoportal::API::V2::Page::Component::ImagesField#add_image`
114
- - `empty?` method to components
149
+
150
+ - `Ecoportal::API::V2::Page::Component::ImagesField#add_image`
151
+ - `empty?` method to components
115
152
 
116
153
  ## [0.9.3] - 2022-10-11
117
154
 
118
155
  ### Added
119
- - `Ecoportal::API::V2::Page` **methods** `#mark_as_submit` and `#mark_as_sign_off`
156
+
157
+ - `Ecoportal::API::V2::Page` **methods** `#mark_as_submit` and `#mark_as_sign_off`
120
158
 
121
159
  ### Changed
122
- - `Ecoportal::API::V2::Pages#get_new`, to return an object of class `Ecoportal::API::V2::Pages::PageStage`
160
+
161
+ - `Ecoportal::API::V2::Pages#get_new`, to return an object of class `Ecoportal::API::V2::Pages::PageStage`
123
162
 
124
163
  ### Fixed
125
- - Remove debugging message
164
+
165
+ - Remove debugging message
126
166
 
127
167
  ## [0.9.2] - 2022-09-29
128
168
 
129
169
  ### Added
130
- - `Ecoportal::API::V2::Page::Component::SelectionOption#delete!`
131
- - `Ecoportal::API::V2::Page::Component#delete!`
132
- - `Ecoportal::API::V2::Page::Component#move` to move to another section or side of the same
133
- - `Ecoportal::API::V2::Page::Component#unattach!` to detach the component from any section
134
- - `Ecoportal::API::V2::Page::Component::SelectionOption#delete!`
135
- - `Ecoportal::API::V2::Page::Component::Binding#delete!`
136
- - `Ecoportal::API::V2::Page::Section#remove_component!` to simplify the removal of a field from the section
170
+
171
+ - `Ecoportal::API::V2::Page::Component::SelectionOption#delete!`
172
+ - `Ecoportal::API::V2::Page::Component#delete!`
173
+ - `Ecoportal::API::V2::Page::Component#move` to move to another section or side of the same
174
+ - `Ecoportal::API::V2::Page::Component#unattach!` to detach the component from any section
175
+ - `Ecoportal::API::V2::Page::Component::SelectionOption#delete!`
176
+ - `Ecoportal::API::V2::Page::Component::Binding#delete!`
177
+ - `Ecoportal::API::V2::Page::Section#remove_component!` to simplify the removal of a field from the section
137
178
 
138
179
  ### Changed
139
- - `Ecoportal::API::V2::Page::Component::SelectionField#options`
140
- - **added** and moved logics to `Ecoportal::API::V2::Page::Component::SelectionOptions`
141
- - `Ecoportal::API::V2::Page::Component::SelectionOption#name` to return `#value` when it's empty
180
+
181
+ - `Ecoportal::API::V2::Page::Component::SelectionField#options`
182
+ - **added** and moved logics to `Ecoportal::API::V2::Page::Component::SelectionOptions`
183
+ - `Ecoportal::API::V2::Page::Component::SelectionOption#name` to return `#value` when it's empty
142
184
 
143
185
  ### Fixed
144
- - Remove debugging message
186
+
187
+ - Remove debugging message
145
188
 
146
189
  ## [0.9.1] - 2022-09-26
147
190
 
148
191
  ### Added
149
- - `Ecoportal::API::V2::Page::Force::Helper`
192
+
193
+ - `Ecoportal::API::V2::Page::Force::Helper`
150
194
 
151
195
  ### Changed
152
- - `Ecoportal::API::V2::Page::Force`, logic around `helpers` (remote forces)
153
- - **breaking change**: `script` is not writable anymore. You should use `custom_script` instead.
196
+
197
+ - `Ecoportal::API::V2::Page::Force`, logic around `helpers` (remote forces)
198
+ - **breaking change**: `script` is not writable anymore. You should use `custom_script` instead.
154
199
 
155
200
  ## [0.8.33] - 2022-09-23
156
201
 
157
202
  ### Changed
158
- - `Ecoportal::API::Common::Content::DoubleModel#embeds_many`: added new_class name collision prevention
203
+
204
+ - `Ecoportal::API::Common::Content::DoubleModel#embeds_many`: added new_class name collision prevention
159
205
 
160
206
  ### Fixed
161
- - `Ecoportal::API::Common::ClassHelpers.new_class`: should accept `name` parameter to be a class itself
162
207
 
208
+ - `Ecoportal::API::Common::ClassHelpers.new_class`: should accept `name` parameter to be a class itself
163
209
 
164
210
  ## [0.8.32] - 2022-09-19
165
211
 
166
212
  ### Added
167
- - `Ecoportal::API::V2::Pages::PageCreateResponse` to wrap the response on creation
213
+
214
+ - `Ecoportal::API::V2::Pages::PageCreateResponse` to wrap the response on creation
168
215
 
169
216
  ### Changed
170
- - `Ecoportal::API::V2::Pages#create` to rather return a `PageCreateResponse`
217
+
218
+ - `Ecoportal::API::V2::Pages#create` to rather return a `PageCreateResponse`
171
219
 
172
220
  ### Fixed
173
- - `Ecoportal::API::V2::Pages#create` to make sure new page with no changes can be created.
174
221
 
222
+ - `Ecoportal::API::V2::Pages#create` to make sure new page with no changes can be created.
175
223
 
176
224
  ## [0.8.31] - 2022-09-15
177
225
 
178
226
  ### Added
179
- - `Ecoportal::API::Common::Content::ClassHelpers.uid` to generate a random uid
227
+
228
+ - `Ecoportal::API::Common::Content::ClassHelpers.uid` to generate a random uid
180
229
 
181
230
  ### Changed
182
- - added **inheritable attributes** to
183
- - `Ecoportal::API::Common::Content::ArrayModel` (:order_matteres, :uniq)
184
- - `Ecoportal::API::Common::Content::CollectionModel` (klass, :order_matters, :order_key, :items_key, :new_item)
185
- - `Ecoportal::API::Common::Content::DoubleModel` (:key)
186
- - moved `SecureRandom` dependency to `Ecoportal::API::Common::Content::ClassHelpers`
231
+
232
+ - added **inheritable attributes** to
233
+ - `Ecoportal::API::Common::Content::ArrayModel` (:order_matteres, :uniq)
234
+ - `Ecoportal::API::Common::Content::CollectionModel` (klass, :order_matters, :order_key, :items_key, :new_item)
235
+ - `Ecoportal::API::Common::Content::DoubleModel` (:key)
236
+ - moved `SecureRandom` dependency to `Ecoportal::API::Common::Content::ClassHelpers`
187
237
 
188
238
  ### Fixed
189
- - `Ecoportal::API::V2::Page::Component::SelectionOption#numeric!` fix conversion
190
- - `Ecoportal::API::Common::Content::ClassHelpers`, `new_class`
191
- - **Added** parameter `namespace` (default: the class `inherits` parameter): it's purpose is to define the namespace where the new class will sit
192
- - **Fixed** also the namespace where the new class constant will sit (it was using always the source class `self`)
193
- - **Improved** `name` parameter to have a default value that is randomized. This is useful when we just want to do something like `SomeClass.new_class`, where the name of the new class doesn't really matter.
194
- - **Fixed** lost reference of class resolvers when using `embeds_many`
195
- - `Ecoportal::API::Common::Content::ClassHelpers`, `resolve_class` accepts now a `Hash` with `key` referrer class, and `value` any of the previously accepted ones (i.e. `Symbol` or `String`). To this purpose, `source_class` parameter has been added.
196
- - This has been natively wrapped in `Ecoportal::API::Common::Content::DoubleModel.embeds_many`, as it naturally shares the `class_resolver` with a third party class that loses the reference.
239
+
240
+ - `Ecoportal::API::V2::Page::Component::SelectionOption#numeric!` fix conversion
241
+ - `Ecoportal::API::Common::Content::ClassHelpers`, `new_class`
242
+ - **Added** parameter `namespace` (default: the class `inherits` parameter): it's purpose is to define the namespace where the new class will sit
243
+ - **Fixed** also the namespace where the new class constant will sit (it was using always the source class `self`)
244
+ - **Improved** `name` parameter to have a default value that is randomized. This is useful when we just want to do something like `SomeClass.new_class`, where the name of the new class doesn't really matter.
245
+ - **Fixed** lost reference of class resolvers when using `embeds_many`
246
+ - `Ecoportal::API::Common::Content::ClassHelpers`, `resolve_class` accepts now a `Hash` with `key` referrer class, and `value` any of the previously accepted ones (i.e. `Symbol` or `String`). To this purpose, `source_class` parameter has been added.
247
+ - This has been natively wrapped in `Ecoportal::API::Common::Content::DoubleModel.embeds_many`, as it naturally shares the `class_resolver` with a third party class that loses the reference.
197
248
 
198
249
  ## [0.8.30] - 2022-07-11
199
250
 
200
251
  ### Added
201
- - `Ecoportal::API::V2::Page::MoultCounter`
202
- - Available on `Ecoportal::API::V2::Pages::PageStage`
203
- - `Ecoportal::API::V2::Page::Component#Law` added support for `LawField` content
204
- - where `Ecoportal::API::V2::Page::Component#LawField` has many of
205
- - `Ecoportal::API::V2::Component` added parameter `any_length:` for
206
- - `#ref` and `#indexable_label` (aiming to enhance data exportability)
252
+
253
+ - `Ecoportal::API::V2::Page::MoultCounter`
254
+ - Available on `Ecoportal::API::V2::Pages::PageStage`
255
+ - `Ecoportal::API::V2::Page::Component#Law` added support for `LawField` content
256
+ - where `Ecoportal::API::V2::Page::Component#LawField` has many of
257
+ - `Ecoportal::API::V2::Component` added parameter `any_length:` for
258
+ - `#ref` and `#indexable_label` (aiming to enhance data exportability)
207
259
 
208
260
  ### Changed
209
- - Reviewed `to_s` method on multiple components, to ensure smooth export
261
+
262
+ - Reviewed `to_s` method on multiple components, to ensure smooth export
210
263
 
211
264
  ### Fixed
212
- - `Ecoportal::API::V2::Pages::PageStage#uid`
213
- - Should check if `mould_conter` exists
214
- - Should return `id` if `mould_counter` does not exist
215
- - **Exports**
216
- - `Ecoportal::API::V2::Pages::Component::PeopleField#to_s`: fix type conversion
217
- - `Ecoportal::API::V2::Pages::Component::DateField#to_s`: make time to work to the local timezone where the client script runs
265
+
266
+ - `Ecoportal::API::V2::Pages::PageStage#uid`
267
+ - Should check if `mould_conter` exists
268
+ - Should return `id` if `mould_counter` does not exist
269
+ - **Exports**
270
+ - `Ecoportal::API::V2::Pages::Component::PeopleField#to_s`: fix type conversion
271
+ - `Ecoportal::API::V2::Pages::Component::DateField#to_s`: make time to work to the local timezone where the client script runs
218
272
 
219
273
  ## [0.8.29] - 2022-07-07
220
274
 
221
275
  ### Added
222
- - `Ecoportal::API::V2::Page::Component::ActionField#permitted_person_schema_ids`
223
- - Integration for the new feature
224
- - `Ecoportal::API::V2::Pages::PageStage#uid` new method for directly rendering the uid
276
+
277
+ - `Ecoportal::API::V2::Page::Component::ActionField#permitted_person_schema_ids`
278
+ - Integration for the new feature
279
+ - `Ecoportal::API::V2::Pages::PageStage#uid` new method for directly rendering the uid
225
280
 
226
281
  ### Changed
227
- - `Ecoportal::API::V2::Page::Component::PeopleField#configure_permits`
228
- - Allow for `can_view` to prevent unnecessary errors
282
+
283
+ - `Ecoportal::API::V2::Page::Component::PeopleField#configure_permits`
284
+ - Allow for `can_view` to prevent unnecessary errors
229
285
 
230
286
  ### Fixed
231
- - `Ecoportal::API::V2::Page::PermissionFlags#configure` fixed typo
287
+
288
+ - `Ecoportal::API::V2::Page::PermissionFlags#configure` fixed typo
232
289
 
233
290
  ## [0.8.28] - 2022-05-31
234
291
 
235
292
  ### Added
236
- - `Ecoportal::API::V2::Page::Component::File` added `label`
237
- - `Ecoportal::API::V2::Page::Component::Image` added `upload_id` and `file_file_name`
293
+
294
+ - `Ecoportal::API::V2::Page::Component::File` added `label`
295
+ - `Ecoportal::API::V2::Page::Component::Image` added `upload_id` and `file_file_name`
238
296
 
239
297
  ## [0.8.27] - 2022-04-25
240
298
 
241
299
  ### Added
242
- - `Ecoportal::API::Common::Content::CollectionModel#clear`
243
- - It calls `#delete!` on each item from an `Array` copy
244
- - `Ecoportal::API::V2::Page::Components#add`
245
- - Now it allows to use a `Hash` _doc_ model to create the `Component`
246
- - `Ecoportal::API::V2::Page::Component::SelectionField` **added** some methods:
247
- - `#numeric?`, `#text?` to check the `data_type` of the _selection options_
248
- - `#switch_type!` to switch the `data_type` between `txt` and `num`
249
- - `#deselect` to mark as `false` the property `selected` of some _selection option_
250
- - `#name` counterpart of `#value`
251
- - `#values` and `#names` they return always an `Array` (no matter if the field is **not** `multiple`)
252
- - `#options_by_value` which returns a `Hash` with all the options by their `value`
253
- - `#options_by_name` which returns a `Hash` with all the options by their `name`
254
- - `Ecoportal::API::V2::Page::Component` **added** some methods:
255
- - `#forces`, `#bindings` and `#bindings?` to check if a _Component_ has bindings in what forces and what those bindings are.
256
- - `Ecoportal::API::V2::Page::Force#bind` to add a _binding_
257
- - `Ecoportal::API::V2::Page::Force::Binding` **added** a couple of methods:
258
- - `#force` to refer to the _Force_ object of a binding
259
- - `#reference` to retrieve the _component_ or _section_ the binding refers to
260
- - `Ecoportal::API::V2::Page::Force::Bindings` **added** some methods:
261
- - `#force` to refer to the _Force_ object of the bindings
262
- - `#by_name` and `#by_reference` to obtain a `Hash` with all the _bindings_
263
- - `#reference?` to check if a _section_ or _component_ have a binding to the _force_
264
- - `#get_by_reference` to retrieve an `Array` with all the _bindings_ to one _section_ or _component_
265
- - `Ecoportal::API::V2::Page::Forces#bindings_by_reference`
266
- - For (script) **optimization** purposes. It gets all the _bindings_ as a `Hash` of _reference_ to `Array<Binding>`
267
- - `Ecoportal::API::V2::Page::Section` **added** some methods:
268
- - `#shared?` to know if the _section_ is shared by multiple stages
269
- - `#bindings` to obtain the _bindings_ of the _section_ in any _force_
270
- - `#forces` all the _forces_ that this _section_ has a _binding_ to
271
- - `#bindings?` whether or not the _section_ has any force _binding_
272
- - `Ecoportal::API::V2::Page::Sections` **added** some methods:
273
- - `#any_shared?` whether or not there are shared sections
274
- - `#move` to **move** the _section_ to some specific position
275
-
276
- ### Changed
277
- - `ecoportal-api` dependency upgrade
278
- - `Ecoportal::API::V2::Page::PermissionFlags#configure`
279
- - Added option to pass a `Hash` with pairs `Symbol`, `Boolean`
280
- - `flags.configure {subscribed: true}`
281
- - `Ecoportal::API::Common::Content::ModelHelpers#same_string?`
282
- - Added parameter `mild:` to compare the strings with only alphabetic characters
283
- - `Ecoportal::API::V2::Page::Component::SelectionField` **added** some methods:
284
- - `#selected` **added** parameters to modify the _returned_ value
285
- - `by_name:` and `by_value:` to return a `Hash`
286
- - `value:` and `name:` which combines respectively with the above, to cast them in the `Hash`
287
- - `Ecoportal::API::V2::Page::Sections#get_by_heading`
288
- - added `mild:` option to allow more flexibility on searches
289
-
290
- ### Fixed
291
- - `Ecoportall::API::Common::Content::DoubleModel#dirty?`
292
- - It was checking that `#as_update` equaled `{}`. Now it also checks on `null` too.
293
- - `Ecoportal::API::V2::Page::Component::SelectionOption#numeric!`
294
- - It was using `to_i` which would return `0` when the source `value` was not numeric.
295
- - Now it uses `Float(value)`, provided that it can throw an exception
296
- - `Ecoportal::API::V2::Pages::Stages#get`
297
- - The _page_ `id` and `stage_id` were used exchanged in the message
298
- - `Ecoportal::API::V2::Page::Forces` fixed the `weight` (position) scoping
299
- - It was not positioning correctly
300
- - `Ecoportal::API::V2::Page::Sections` fixed the `weight` (position) scoping
301
- - It was not positioning correctly
300
+
301
+ - `Ecoportal::API::Common::Content::CollectionModel#clear`
302
+ - It calls `#delete!` on each item from an `Array` copy
303
+ - `Ecoportal::API::V2::Page::Components#add`
304
+ - Now it allows to use a `Hash` _doc_ model to create the `Component`
305
+ - `Ecoportal::API::V2::Page::Component::SelectionField` **added** some methods:
306
+ - `#numeric?`, `#text?` to check the `data_type` of the _selection options_
307
+ - `#switch_type!` to switch the `data_type` between `txt` and `num`
308
+ - `#deselect` to mark as `false` the property `selected` of some _selection option_
309
+ - `#name` counterpart of `#value`
310
+ - `#values` and `#names` they return always an `Array` (no matter if the field is **not** `multiple`)
311
+ - `#options_by_value` which returns a `Hash` with all the options by their `value`
312
+ - `#options_by_name` which returns a `Hash` with all the options by their `name`
313
+ - `Ecoportal::API::V2::Page::Component` **added** some methods:
314
+ - `#forces`, `#bindings` and `#bindings?` to check if a _Component_ has bindings in what forces and what those bindings are.
315
+ - `Ecoportal::API::V2::Page::Force#bind` to add a _binding_
316
+ - `Ecoportal::API::V2::Page::Force::Binding` **added** a couple of methods:
317
+ - `#force` to refer to the _Force_ object of a binding
318
+ - `#reference` to retrieve the _component_ or _section_ the binding refers to
319
+ - `Ecoportal::API::V2::Page::Force::Bindings` **added** some methods:
320
+ - `#force` to refer to the _Force_ object of the bindings
321
+ - `#by_name` and `#by_reference` to obtain a `Hash` with all the _bindings_
322
+ - `#reference?` to check if a _section_ or _component_ have a binding to the _force_
323
+ - `#get_by_reference` to retrieve an `Array` with all the _bindings_ to one _section_ or _component_
324
+ - `Ecoportal::API::V2::Page::Forces#bindings_by_reference`
325
+ - For (script) **optimization** purposes. It gets all the _bindings_ as a `Hash` of _reference_ to `Array<Binding>`
326
+ - `Ecoportal::API::V2::Page::Section` **added** some methods:
327
+ - `#shared?` to know if the _section_ is shared by multiple stages
328
+ - `#bindings` to obtain the _bindings_ of the _section_ in any _force_
329
+ - `#forces` all the _forces_ that this _section_ has a _binding_ to
330
+ - `#bindings?` whether or not the _section_ has any force _binding_
331
+ - `Ecoportal::API::V2::Page::Sections` **added** some methods:
332
+ - `#any_shared?` whether or not there are shared sections
333
+ - `#move` to **move** the _section_ to some specific position
334
+
335
+ ### Changed
336
+
337
+ - `ecoportal-api` dependency upgrade
338
+ - `Ecoportal::API::V2::Page::PermissionFlags#configure`
339
+ - Added option to pass a `Hash` with pairs `Symbol`, `Boolean`
340
+ - `flags.configure {subscribed: true}`
341
+ - `Ecoportal::API::Common::Content::ModelHelpers#same_string?`
342
+ - Added parameter `mild:` to compare the strings with only alphabetic characters
343
+ - `Ecoportal::API::V2::Page::Component::SelectionField` **added** some methods:
344
+ - `#selected` **added** parameters to modify the _returned_ value
345
+ - `by_name:` and `by_value:` to return a `Hash`
346
+ - `value:` and `name:` which combines respectively with the above, to cast them in the `Hash`
347
+ - `Ecoportal::API::V2::Page::Sections#get_by_heading`
348
+ - added `mild:` option to allow more flexibility on searches
349
+
350
+ ### Fixed
351
+
352
+ - `Ecoportall::API::Common::Content::DoubleModel#dirty?`
353
+ - It was checking that `#as_update` equaled `{}`. Now it also checks on `null` too.
354
+ - `Ecoportal::API::V2::Page::Component::SelectionOption#numeric!`
355
+ - It was using `to_i` which would return `0` when the source `value` was not numeric.
356
+ - Now it uses `Float(value)`, provided that it can throw an exception
357
+ - `Ecoportal::API::V2::Pages::Stages#get`
358
+ - The _page_ `id` and `stage_id` were used exchanged in the message
359
+ - `Ecoportal::API::V2::Page::Forces` fixed the `weight` (position) scoping
360
+ - It was not positioning correctly
361
+ - `Ecoportal::API::V2::Page::Sections` fixed the `weight` (position) scoping
362
+ - It was not positioning correctly
302
363
 
303
364
  ## [0.8.26] - 2022-03-25
304
365
 
305
366
  ### Added
306
- `Ecoportal::API::V2::Page::Stage#add_permit`
307
- `Ecoportal::API::V2::Page::Permit.new_doc`
367
+
368
+ `Ecoportal::API::V2::Page::Stage#add_permit`
369
+ `Ecoportal::API::V2::Page::Permit.new_doc`
308
370
 
309
371
  ## [0.8.25] - 2022-02-04
310
372
 
311
373
  ### Added
312
- - `Ecoportal::API::V2::Page::Component::ReferenceField#add` to add new references
374
+
375
+ - `Ecoportal::API::V2::Page::Component::ReferenceField#add` to add new references
313
376
 
314
377
  ### Changed
315
- - `Ecoportal::API::Common::Content::HashDiffPatch#patch_data`
316
- - Added support for model objects with no `patch_ver` (so diffs are calculated as well)
378
+
379
+ - `Ecoportal::API::Common::Content::HashDiffPatch#patch_data`
380
+ - Added support for model objects with no `patch_ver` (so diffs are calculated as well)
317
381
 
318
382
  ## [0.8.24] - 2022-01-05
319
383
 
320
384
  ### Fixed
321
- - `Ecoportal::API::V2::Page#stages?` do not generate an object to this purpose
322
- - `Ecoportal::API::V2::Registers#search` fix typo in print feedback
385
+
386
+ - `Ecoportal::API::V2::Page#stages?` do not generate an object to this purpose
387
+ - `Ecoportal::API::V2::Registers#search` fix typo in print feedback
323
388
 
324
389
  ## [0.8.23] - 2021-12-24
325
390
 
326
391
  ### Added
327
- - `Ecoportal::API::V2::Registers#search` added more feedback on what is going on
392
+
393
+ - `Ecoportal::API::V2::Registers#search` added more feedback on what is going on
328
394
 
329
395
  ## [0.8.22] - 2021-12-23
330
396
 
331
397
  ### Fixed
332
- - `Ecoportal::API::V2::Page::Section#add_component` was not using correctly `before` and `after`
333
- - It was not correctly translating them into the existing component
398
+
399
+ - `Ecoportal::API::V2::Page::Section#add_component` was not using correctly `before` and `after`
400
+ - It was not correctly translating them into the existing component
334
401
 
335
402
  ## [0.8.21] - 2021-12-15
336
403
 
337
404
  ### Added
338
- - To children of `Ecoportal::API::V2::Page::Component` added method `#to_s` (for exporting)
339
- - `Ecoportal::API::V2::Page::Component::ReferenceField`
340
- - added `#references` (the lookup results)
341
- - added `#reference_ids` (the `ids` of the referenced oozes)
405
+
406
+ - To children of `Ecoportal::API::V2::Page::Component` added method `#to_s` (for exporting)
407
+ - `Ecoportal::API::V2::Page::Component::ReferenceField`
408
+ - added `#references` (the lookup results)
409
+ - added `#reference_ids` (the `ids` of the referenced oozes)
342
410
 
343
411
  ### Changed
344
- - Re-exposed `Ecoportal::API::V2::Stages#ordered`
412
+
413
+ - Re-exposed `Ecoportal::API::V2::Stages#ordered`
345
414
 
346
415
  ### Fixed
347
- - `Ecoportal::API::V2::Page::Component::ImagesField#images` typo in `klass`
416
+
417
+ - `Ecoportal::API::V2::Page::Component::ImagesField#images` typo in `klass`
348
418
 
349
419
  ## [0.8.20] - 2021-12-09
350
420
 
351
421
  ### Changed
352
- - `Ecoportal::API::V2::Pages::PageStage#permits` removed
353
- - The reason is that it should be changed using the `Stage#permits` instead
354
- - Upgraded `ecoportal-api` gem dependency
422
+
423
+ - `Ecoportal::API::V2::Pages::PageStage#permits` removed
424
+ - The reason is that it should be changed using the `Stage#permits` instead
425
+ - Upgraded `ecoportal-api` gem dependency
355
426
 
356
427
  ### Fixed
357
- - `Ecoportal::API::V2::Page::Stage#sections` typo
428
+
429
+ - `Ecoportal::API::V2::Page::Stage#sections` typo
358
430
 
359
431
  ## [0.8.19] - 2021-09-29
360
432
 
361
433
  ### Changed
362
- - Moved validation of components multi-section from `PageStage` to `Page`
363
- - Removed validation from `PageStage#as_update`
364
- - This means that the validation will not run natively, but in the client lib
434
+
435
+ - Moved validation of components multi-section from `PageStage` to `Page`
436
+ - Removed validation from `PageStage#as_update`
437
+ - This means that the validation will not run natively, but in the client lib
365
438
 
366
439
  ### Fixed
367
- - `Ecoportal::V2::Page::Stage#section?` fixed typo
368
- - `Ecoportal::V2::Page::Stage`
369
- - `#attached?` added missing code
370
- - `#component?` fixed typo
440
+
441
+ - `Ecoportal::V2::Page::Stage#section?` fixed typo
442
+ - `Ecoportal::V2::Page::Stage`
443
+ - `#attached?` added missing code
444
+ - `#component?` fixed typo
371
445
 
372
446
  ## [0.8.18] - 2021-09-29
373
447
 
374
448
  ### Fixed
375
- - typo in `PageStage#validate`
449
+
450
+ - typo in `PageStage#validate`
376
451
 
377
452
  ## [0.8.17] - 2021-09-29
378
453
 
379
454
  ### Fixed
380
- - Typo in `Section#attached?`
455
+
456
+ - Typo in `Section#attached?`
381
457
 
382
458
  ## [0.8.15] - 2021-09-29
383
459
 
384
460
  ### Fixed
385
- - Typo in `Section#component?`
461
+
462
+ - Typo in `Section#component?`
386
463
 
387
464
  ## [0.8.14] - 2021-09-28
388
465
 
389
466
  ### Added
390
- - `Ecoportal::API::Common::Content::CollectionModel`
391
- - `#_doc_pos` for clarity
392
- - `#include?` to check if an element is present in the collection
393
- - `Ecoportal::API::V2::Page::Stage#section?` check if section belongs to stage
394
- - `Ecoportal::API::V2::Page::Sections`
395
- - `#get_by_id`
396
- - `#unattached` sections that are not attached to any stage
397
- - `Ecoportal::API::V2::Page::Section`
398
- - `#add_component` **added** parameter `before`: to cover case where you want to add it at the beginning
399
- - `#component?` **widened** parameter type
400
- - `#stages` stages where this section is attached
401
- - `attached?` whether or not the section is attached
402
- - `Ecoportal::API::V2::Page::Component`
403
- - `#attached?` whether or not the field is attached to some section
404
- - `#multi_section?` if the field is attached to more than one section :/
405
- - **added** support for `forces`
406
- - `Ecoportal::API::V2::Page::Force`
407
- - `Ecoportal::API::V2::Page::Forces`
408
- - `Ecoportal::API::V2::Page::Force::Binding`
409
- - `Ecoportal::API::V2::Page::Force::Bindings`
410
- - **added** shortcut to `#ooze` throughout all the model
411
- - **validations** in some methods
412
- - `Ecoportal::API::V2::Page::Stage#add_section`: section should be in `ooze.sections`
413
- - `Ecoportal::API::V2::Page::Section#add_component`: component should be in `ooze.components`
414
- - `Ecoportal::API::V2::Page::Force::Bindings#add`:
415
- - section to be in `ooze.sections`
416
- - component to be in `ooze.components`
417
- - `Ecoportal::API::V2::Pages::PageStage#as_update` on page instances, it checks that
418
- - Fields do not belong to more than one section
419
- - Fields belong at least to one section
420
- - Sections belong to at least one stage
421
-
422
- ### Fixed
423
- - `Ecoportal::API::Common::Content::ArrayModel#insert_one` was not inserting when not found. Should insert at least at the end.
467
+
468
+ - `Ecoportal::API::Common::Content::CollectionModel`
469
+ - `#_doc_pos` for clarity
470
+ - `#include?` to check if an element is present in the collection
471
+ - `Ecoportal::API::V2::Page::Stage#section?` check if section belongs to stage
472
+ - `Ecoportal::API::V2::Page::Sections`
473
+ - `#get_by_id`
474
+ - `#unattached` sections that are not attached to any stage
475
+ - `Ecoportal::API::V2::Page::Section`
476
+ - `#add_component` **added** parameter `before`: to cover case where you want to add it at the beginning
477
+ - `#component?` **widened** parameter type
478
+ - `#stages` stages where this section is attached
479
+ - `attached?` whether or not the section is attached
480
+ - `Ecoportal::API::V2::Page::Component`
481
+ - `#attached?` whether or not the field is attached to some section
482
+ - `#multi_section?` if the field is attached to more than one section :/
483
+ - **added** support for `forces`
484
+ - `Ecoportal::API::V2::Page::Force`
485
+ - `Ecoportal::API::V2::Page::Forces`
486
+ - `Ecoportal::API::V2::Page::Force::Binding`
487
+ - `Ecoportal::API::V2::Page::Force::Bindings`
488
+ - **added** shortcut to `#ooze` throughout all the model
489
+ - **validations** in some methods
490
+ - `Ecoportal::API::V2::Page::Stage#add_section`: section should be in `ooze.sections`
491
+ - `Ecoportal::API::V2::Page::Section#add_component`: component should be in `ooze.components`
492
+ - `Ecoportal::API::V2::Page::Force::Bindings#add`:
493
+ - section to be in `ooze.sections`
494
+ - component to be in `ooze.components`
495
+ - `Ecoportal::API::V2::Pages::PageStage#as_update` on page instances, it checks that
496
+ - Fields do not belong to more than one section
497
+ - Fields belong at least to one section
498
+ - Sections belong to at least one stage
499
+
500
+ ### Fixed
501
+
502
+ - `Ecoportal::API::Common::Content::ArrayModel#insert_one` was not inserting when not found. Should insert at least at the end.
424
503
 
425
504
  ## [0.8.13] - 2021-09-03
426
505
 
427
506
  ### Fixed
428
- - `Ecoportal::API::V2::Page::Sections`
429
- - `weight` fixing should only happen on entire page, **not** on stage sections that could change the order of section shared with other stages
430
- - `#scope_weight` was not excluding the section when using `weight` of the last one
431
- - Several classes with `embeds_many` were performing the `ordering` of those elements in the wrong way
432
- - `Ecoportall::API::Common::Content::DoubleModel`
433
- - `#replace_original_doc` had a couple of typos
434
- - `#replace_doc` should only remove the variable referring to the current object and only if `new_doc` is `nil`
435
- - `Ecoportal::API::Common::Content::CollectionModel` on insertion and deletion it was removing instance variable objects.
436
- - There was no need for this approach, as the only necessary thing is to just keep those variable instances up to date in the correct unique access point to do so.
437
- - Aside note: the reason why this was initially designed this way is because there were some difficulties to identify the existing elements in the subjacent model. Once `#passkey` as added, this difficulty could be overcome.
438
- - `Ecoportal::API::Common::Content::ArrayModel` on initialize, default `doc` should be an `Array`
507
+
508
+ - `Ecoportal::API::V2::Page::Sections`
509
+ - `weight` fixing should only happen on entire page, **not** on stage sections that could change the order of section shared with other stages
510
+ - `#scope_weight` was not excluding the section when using `weight` of the last one
511
+ - Several classes with `embeds_many` were performing the `ordering` of those elements in the wrong way
512
+ - `Ecoportall::API::Common::Content::DoubleModel`
513
+ - `#replace_original_doc` had a couple of typos
514
+ - `#replace_doc` should only remove the variable referring to the current object and only if `new_doc` is `nil`
515
+ - `Ecoportal::API::Common::Content::CollectionModel` on insertion and deletion it was removing instance variable objects.
516
+ - There was no need for this approach, as the only necessary thing is to just keep those variable instances up to date in the correct unique access point to do so.
517
+ - Aside note: the reason why this was initially designed this way is because there were some difficulties to identify the existing elements in the subjacent model. Once `#passkey` as added, this difficulty could be overcome.
518
+ - `Ecoportal::API::Common::Content::ArrayModel` on initialize, default `doc` should be an `Array`
439
519
 
440
520
  ## [0.8.12] - 2021-08-30
441
521
 
442
522
  ### Added
443
- - `Ecoportal::API::V2::Pages::PageStage#current_stage`
523
+
524
+ - `Ecoportal::API::V2::Pages::PageStage#current_stage`
444
525
 
445
526
  ### Fixed
446
- - `Ecoportal::API::Common::Content::DocHelpers#get_body` typo and wrong parameters on call.
447
- - `Ecoportal::API::V2::Pages#update` should always return `Result` object.
448
- - `Ecoportal::API::V2::Registers#search` was not using `cursor_id` to iterate.
527
+
528
+ - `Ecoportal::API::Common::Content::DocHelpers#get_body` typo and wrong parameters on call.
529
+ - `Ecoportal::API::V2::Pages#update` should always return `Result` object.
530
+ - `Ecoportal::API::V2::Registers#search` was not using `cursor_id` to iterate.
449
531
 
450
532
  ## [0.8.11] - 2021-08-27
451
533
 
452
534
  ### Added
453
- - `Ecoportal::API::V2::Page#stages?`
454
- - `Ecoportal::API::V2::Pages::PageStage#current_stage_id`
455
- - `Ecoportal::API::V2::Registers#search` added option keyed parameter `:only_first`
456
- - which will make the method return the first `Ecoportal::API::V2::Registers::SearchResults`
457
- - This has been **added** with the aim of knowing how many results out of how many entries.
458
535
 
459
- ### Changed
460
- - `Ecoportal::API::V2::Pages::PageStage#update` won't update unless there's something to update.
536
+ - `Ecoportal::API::V2::Page#stages?`
537
+ - `Ecoportal::API::V2::Pages::PageStage#current_stage_id`
538
+ - `Ecoportal::API::V2::Registers#search` added option keyed parameter `:only_first`
539
+ - which will make the method return the first `Ecoportal::API::V2::Registers::SearchResults`
540
+ - This has been **added** with the aim of knowing how many results out of how many entries.
461
541
 
462
- ### Fixed
542
+ ### Changed
463
543
 
544
+ - `Ecoportal::API::V2::Pages::PageStage#update` won't update unless there's something to update.
464
545
 
465
546
  ## [0.8.10] - 2021-08-22
466
547
 
467
548
  ### Added
468
- - `Ecoportal::API::Common::Content::CollectionModel#[]` now supports position as well
469
- - `Ecoportal::API::V2::Page::Component::FilesField#add_file`: support for adding files
470
- - `Ecoportal::API::V2::Page::Component::PeopleField#viewable_fields`: support for managing `viewable_fields`
549
+
550
+ - `Ecoportal::API::Common::Content::CollectionModel#[]` now supports position as well
551
+ - `Ecoportal::API::V2::Page::Component::FilesField#add_file`: support for adding files
552
+ - `Ecoportal::API::V2::Page::Component::PeopleField#viewable_fields`: support for managing `viewable_fields`
471
553
 
472
554
  ### Changed
473
555
 
474
556
  ### Fixed
475
- - `Ecoportal::API::V2::Page::Component::FilesField`: was not requiring `File`
476
- - `Ecoportal::API::V2::Page::Component::NumberField#value`: it was missing :/
477
- - `Ecoportal::API::Common::Content::HashDiffPatch` did not support nested objects in Arrays, where the nested object wouldn't have a `patch_ver`. This **fix** allows for it
478
- - `Ecoportal::API::Common::Content::DoubleModel.passforced` to define `methods` that should always be present. This allows to define `patch_ver` as a forced `key` in models that have it
479
- - The enforcement (`self.class.enforce!`) happens on `initialize`
480
- - `passenforced` subjacent model `forced_model_keys` is inheritable
481
- - `Ecoportal::API::Common::Content::CollectionModel`:
482
- - Method `upsert!` was not working fine the parameters `pos`, `before` and `after`
483
- - Method `delete!` did not support position
557
+
558
+ - `Ecoportal::API::V2::Page::Component::FilesField`: was not requiring `File`
559
+ - `Ecoportal::API::V2::Page::Component::NumberField#value`: it was missing :/
560
+ - `Ecoportal::API::Common::Content::HashDiffPatch` did not support nested objects in Arrays, where the nested object wouldn't have a `patch_ver`. This **fix** allows for it
561
+ - `Ecoportal::API::Common::Content::DoubleModel.passforced` to define `methods` that should always be present. This allows to define `patch_ver` as a forced `key` in models that have it
562
+ - The enforcement (`self.class.enforce!`) happens on `initialize`
563
+ - `passenforced` subjacent model `forced_model_keys` is inheritable
564
+ - `Ecoportal::API::Common::Content::CollectionModel`:
565
+ - Method `upsert!` was not working fine the parameters `pos`, `before` and `after`
566
+ - Method `delete!` did not support position
484
567
 
485
568
  ## [0.8.9] - 2021-08-16
486
569
 
487
570
  ### Added
488
- - `Ecoportal::API::Common::Content::ModelHelpers`
489
- - Starting with `#same_string?`, this lib aims to offer a full set of helper comparers.
490
- - `Ecoportal::API::V2::Page::Components#get_by_id`
491
- - In future changes, method `[]` might be overriding the method of the parent class `CollectionModel`.
492
- - `Ecoportal::API::V2::Page::PermissionFlags` to offer support to `can_permission`, `subscribed`, etc.
493
- - `Ecoportal::API::V2::Page::Section#add_component` super handy helper to add fields to sections.
494
- - `Ecoportal::API::V2::Page::Component::PeopleField#delete` to remove people using their ids.
495
- - `Ecoportal::API::V2::Page::Component::GeoField` **added** suport for `#coordinates`
496
- - With embedded object `Ecoportal::API::V2::Page::Component::GeoCoordinates`
497
- - `#configure` method, to all the `Component` types (but `ChartField` s)
498
- - This method allows to quickly set field properties.
499
- - `Ecoportal::API::V2::Page::Sections#between`, aiming to obtain sections between two other ones
500
571
 
572
+ - `Ecoportal::API::Common::Content::ModelHelpers`
573
+ - Starting with `#same_string?`, this lib aims to offer a full set of helper comparers.
574
+ - `Ecoportal::API::V2::Page::Components#get_by_id`
575
+ - In future changes, method `[]` might be overriding the method of the parent class `CollectionModel`.
576
+ - `Ecoportal::API::V2::Page::PermissionFlags` to offer support to `can_permission`, `subscribed`, etc.
577
+ - `Ecoportal::API::V2::Page::Section#add_component` super handy helper to add fields to sections.
578
+ - `Ecoportal::API::V2::Page::Component::PeopleField#delete` to remove people using their ids.
579
+ - `Ecoportal::API::V2::Page::Component::GeoField` **added** suport for `#coordinates`
580
+ - With embedded object `Ecoportal::API::V2::Page::Component::GeoCoordinates`
581
+ - `#configure` method, to all the `Component` types (but `ChartField` s)
582
+ - This method allows to quickly set field properties.
583
+ - `Ecoportal::API::V2::Page::Sections#between`, aiming to obtain sections between two other ones
501
584
 
502
585
  ### Changed
503
- - `Ecoportal::API::V2::Page::Section` real support for `split` sections (right vs left)
504
- - This is actually a **FIX**
505
- - `Ecoportal::API::V2::Page::Component::DateField#create_event`
506
- - Now it switches to _allow future dates_
507
- - `Ecoportal::API::V2::Page::Component::SelectionField#add_option`, the `name` parameter is now optional
508
- - This change aims to make it consistent with the back-end.
509
- - To its actual `Boolean` type some properties
510
- - All `Component` types
586
+
587
+ - `Ecoportal::API::V2::Page::Section` real support for `split` sections (right vs left)
588
+ - This is actually a **FIX**
589
+ - `Ecoportal::API::V2::Page::Component::DateField#create_event`
590
+ - Now it switches to _allow future dates_
591
+ - `Ecoportal::API::V2::Page::Component::SelectionField#add_option`, the `name` parameter is now optional
592
+ - This change aims to make it consistent with the back-end.
593
+ - To its actual `Boolean` type some properties
594
+ - All `Component` types
511
595
 
512
596
  ### Fixed
513
- - `Ecoportal::API::Common::Content::HashDiffPatch` did not support `Hash` values without `id` or `patch_ver`
514
- - This fix should allow them to flow to the update
515
- - `Ecoportal::API::V2::Page::Component::ChartField` did not have `doc` for `mode` based configuration
516
- - `Ecoportal::API::Common::Content::ArrayModel#insert_one`
517
- - When `pos`, `before` & `after` were `nil` it was failing to attach the element.
518
- - `Ecoportal::API::V2::Page::Sections#add` was not adding in the correct order
519
- - `Ecoportal::API::V2::Page::Section.new_doc` was unnecessarily giving `9999` as default weight
597
+
598
+ - `Ecoportal::API::Common::Content::HashDiffPatch` did not support `Hash` values without `id` or `patch_ver`
599
+ - This fix should allow them to flow to the update
600
+ - `Ecoportal::API::V2::Page::Component::ChartField` did not have `doc` for `mode` based configuration
601
+ - `Ecoportal::API::Common::Content::ArrayModel#insert_one`
602
+ - When `pos`, `before` & `after` were `nil` it was failing to attach the element.
603
+ - `Ecoportal::API::V2::Page::Sections#add` was not adding in the correct order
604
+ - `Ecoportal::API::V2::Page::Section.new_doc` was unnecessarily giving `9999` as default weight
520
605
 
521
606
  ## [0.8.8] - 2021-08-03
522
607
 
523
608
  ### Added
524
- - `Ecoportal::API::V2::Page::Component::ChartField::Benchmark`
525
- - Support to convert selection options between numeric and text type.
526
- - Add `Permit` object to `Page` and `Stage`
609
+
610
+ - `Ecoportal::API::V2::Page::Component::ChartField::Benchmark`
611
+ - Support to convert selection options between numeric and text type.
612
+ - Add `Permit` object to `Page` and `Stage`
527
613
 
528
614
  ### Changed
529
- - Removed `Stages.ordered_stages`: detected bug with Enumerable iteration
530
615
 
616
+ - Removed `Stages.ordered_stages`: detected bug with Enumerable iteration
531
617
 
532
618
  ## [0.8.7] - 2021-05-25
533
619
 
534
620
  ### Changed
535
- - Upgrade `ecoportal-api` gem
621
+
622
+ - Upgrade `ecoportal-api` gem
536
623
 
537
624
  ### Fixed
538
- - Requiring `api/common` from 2 different ends
625
+
626
+ - Requiring `api/common` from 2 different ends
539
627
 
540
628
  ## [0.8.6] - 2021-02-23
541
629
 
542
630
  ### Added
543
- - `Ecoportal::API::V2::Page::Component::SelectionField` added methods `#numeric!` `#text!`
631
+
632
+ - `Ecoportal::API::V2::Page::Component::SelectionField` added methods `#numeric!` `#text!`
544
633
 
545
634
  ## [0.8.5] - 2021-02-22
546
635
 
547
636
  ### Changed
548
- - upgrade
549
637
 
638
+ - upgrade
550
639
 
551
640
  ## [0.8.4] - 2021-02-22
552
641
 
553
642
  ### Changed
554
- - roll back `ecoportal-api` dependency
643
+
644
+ - roll back `ecoportal-api` dependency
555
645
 
556
646
  ## [0.8.3] - 2021-02-22
557
647
 
558
648
  ### Changed
559
- - updated `rspec` for expected patch data on `delete` operation.
649
+
650
+ - updated `rspec` for expected patch data on `delete` operation.
560
651
 
561
652
  ### Fixed
562
- - More specific namespace path for `Internal::People` namespace
653
+
654
+ - More specific namespace path for `Internal::People` namespace
563
655
 
564
656
  ## [0.8.2] - 2021-02-21
565
657
 
566
658
  ### Changed
567
- - some necessary changes for the new gem to be active
659
+
660
+ - some necessary changes for the new gem to be active
568
661
 
569
662
  ## [0.8.1] - 2021-02-21
570
663
 
571
664
  ### Changed
572
- - renamed parameters (backwards incompatible change):
573
- - `Ecoportal::API::V2::Pages::Stages` methods `#get` and `#update`
574
- - updated `Ecoportal::API::V2::Pages#` accordingly
575
665
 
576
- ## MOVED TO GEM `ecoportal-api-v2` ##
666
+ - renamed parameters (backwards incompatible change):
667
+ - `Ecoportal::API::V2::Pages::Stages` methods `#get` and `#update`
668
+ - updated `Ecoportal::API::V2::Pages#` accordingly
669
+
670
+ ## MOVED TO GEM `ecoportal-api-v2`
577
671
 
578
672
  ## [0.7.5] - 2021-02-21
579
673
 
580
674
  ### Added
581
- - `Ecoportal::API::Common::ClassHelpers` added inheritable attribute values
582
- - `Ecoportal::API::V2::Pages::PageStage` added missing properties
583
- - `Ecoportal::API::V2::Page::Stages#ordered_stages` method to obtain stages in order
584
- - `Ecoportal::API::V2::Registers#search` method search pages in the register, which includes new classes:
585
- - `Ecoportal::API::V2::Registers::PageResult`
586
- - `Ecoportal::API::V2::Registers::StagesResult`
587
- - `Ecoportal::API::V2::Registers::StageResult`
588
- - `Ecoportal::API::V2::Pages#get` added parameter `stage_id:` to be able to directly obtain the stage
675
+
676
+ - `Ecoportal::API::Common::ClassHelpers` added inheritable attribute values
677
+ - `Ecoportal::API::V2::Pages::PageStage` added missing properties
678
+ - `Ecoportal::API::V2::Page::Stages#ordered_stages` method to obtain stages in order
679
+ - `Ecoportal::API::V2::Registers#search` method search pages in the register, which includes new classes:
680
+ - `Ecoportal::API::V2::Registers::PageResult`
681
+ - `Ecoportal::API::V2::Registers::StagesResult`
682
+ - `Ecoportal::API::V2::Registers::StageResult`
683
+ - `Ecoportal::API::V2::Pages#get` added parameter `stage_id:` to be able to directly obtain the stage
589
684
 
590
685
  ### Changed
591
- - Moved some classes to the new namespace `Ecoportal::API::V2::Registers`
592
- - `Ecoportal::API::V2::Registers::Register`
593
- - `Ecoportal::API::V2::Registers::Template`
686
+
687
+ - Moved some classes to the new namespace `Ecoportal::API::V2::Registers`
688
+ - `Ecoportal::API::V2::Registers::Register`
689
+ - `Ecoportal::API::V2::Registers::Template`
594
690
 
595
691
  ### Fixed
596
- - `Ecoportal::API::Common::Content::HashDiffPatch`: `deleted` operation wording and `data.patch_ver`
597
- - `Ecoportal::API::V2::Page::Component.new_doc` should delegate to child classes that have their own implementation
598
- - `Ecoportal::API::V2::Page::Component::ImagesField.new_doc` should include `layout`
599
- - `Ecoportal::API::V2::Page::Component::SignatureField.new_doc` should include `color`
692
+
693
+ - `Ecoportal::API::Common::Content::HashDiffPatch`: `deleted` operation wording and `data.patch_ver`
694
+ - `Ecoportal::API::V2::Page::Component.new_doc` should delegate to child classes that have their own implementation
695
+ - `Ecoportal::API::V2::Page::Component::ImagesField.new_doc` should include `layout`
696
+ - `Ecoportal::API::V2::Page::Component::SignatureField.new_doc` should include `color`
600
697
 
601
698
  ## [0.7.4] - 2021-02-12
602
699
 
603
700
  ### Added
604
- - `Ecoportal::API::V2::Page::Component::GaugeStop#color=` enabled setting colours using a `symbol`
605
- - `:blue`, `:blue_greyed`, `:blue_light`
606
- - `:turquoise`, `:jade`, `:green`, `:pistachio`, `:avocado`
607
- - `:yellow`, `:orange`, `:pumpkin`, `:red`, `:magenta`, `:fuchsia`, `:purple`, `:violet`
608
- - `Ecoportal::API::V2::Page::Component::GaugeStop#color_sym` to get the color as `symbol` name
609
- - added support for chart fields:
610
- - `Ecoportal::API::V2::Page::Component::ChartField` with the different `mode` types
611
- - `Ecoportal::API::V2::Page::Component::ChartFrField` (LTIFR)
701
+
702
+ - `Ecoportal::API::V2::Page::Component::GaugeStop#color=` enabled setting colours using a `symbol`
703
+ - `:blue`, `:blue_greyed`, `:blue_light`
704
+ - `:turquoise`, `:jade`, `:green`, `:pistachio`, `:avocado`
705
+ - `:yellow`, `:orange`, `:pumpkin`, `:red`, `:magenta`, `:fuchsia`, `:purple`, `:violet`
706
+ - `Ecoportal::API::V2::Page::Component::GaugeStop#color_sym` to get the color as `symbol` name
707
+ - added support for chart fields:
708
+ - `Ecoportal::API::V2::Page::Component::ChartField` with the different `mode` types
709
+ - `Ecoportal::API::V2::Page::Component::ChartFrField` (LTIFR)
612
710
 
613
711
  ### Changed
614
- - `Ecoportal::API::Page::Component::DateField` Date objects + Timezones
615
- - `#value` should be shown in local time
616
- - `#value=` should be set by local time
617
- - `Ecoportal::API::Common::Content::DoubleModel.embeds_multiple` renamed to `embeds_many`
618
- - `Ecoportal::API::Common::Content::DoubleModel.embeds_one` removed parameter `:multiple`
619
- - Fields under `Ecoportal::API::Page::Component` that `embeds_many` should generate new elements in a standard way
620
- - added `Ecoportal::API::Common::Content::CollectionModel#items_class` method
712
+
713
+ - `Ecoportal::API::Page::Component::DateField` Date objects + Timezones
714
+ - `#value` should be shown in local time
715
+ - `#value=` should be set by local time
716
+ - `Ecoportal::API::Common::Content::DoubleModel.embeds_multiple` renamed to `embeds_many`
717
+ - `Ecoportal::API::Common::Content::DoubleModel.embeds_one` removed parameter `:multiple`
718
+ - Fields under `Ecoportal::API::Page::Component` that `embeds_many` should generate new elements in a standard way
719
+ - added `Ecoportal::API::Common::Content::CollectionModel#items_class` method
621
720
 
622
721
  ### Fixed
623
- - solved `pretty_print` name collision renaming to `Ecoportal::API::Common::Content::DoubleModel#print_pretty`
722
+
723
+ - solved `pretty_print` name collision renaming to `Ecoportal::API::Common::Content::DoubleModel#print_pretty`
624
724
 
625
725
  ## [0.7.3] - 2021-02-01
626
726
 
627
727
  ### Added
628
- - `Ecoportal::API::Common::Content::CollectionModel#delete!` finally scoped how delete should work :)
629
- - `Ecoportal::API::V2.new` better feedback on key error.
630
- - `Ecoportal::API::V2::Page::Component::SignatureField` added property `signed_by_name`
631
- - `Ecoportal::API::V2::Page::Component#required` this field property is currently supported
632
- - `Ecoportal::API::V2::Page::Component::DateField` more supported properties:
633
- * `show_time`, `today_button`, `past_only`, `create_event`, `remind_me_in`, `renews`, `renews_every`, `renews_unit`, `renews_until`
634
- - `Ecoportal::API::V2::Page::Component::ChecklistField`
635
- * added more methods: `add_item`, `ordered_items`
636
- - `Ecoportal::API::V2::Page::Component::GaugeField`
637
- * more supported properties: `max`, `active_color` and `stops`
638
- - for `stops` added class `Ecoportal::API::V2::Page::Component::GaugeStop`
639
- * added more methods: `add_stop`, `ordered_stops`
640
- - `Ecoportal::API::V2::Page::Component::ReferenceField` more supported properties:
641
- * `register_id`, `hide_create`, `hide_attach`, `hide_metadata`, `hide_dashboards`, `display_fields`, `display_fields_in_lookup`
642
- - `Ecoportal::API::V2::Page::Component::ActionField`
643
- * more supported properties:`create_actions`, `required_number_of_completed_actions`, `permits_and_rules_integration`, `add_subscribed`, `add_subscribed_to_tasks`
644
- * added more methods: `add_task`, `ordered_tasks`
645
- - `Ecoportal::API::V2::Page::Component::Action` modified, provided that some properties are `read_only`
646
- - `Ecoportal::API::V2::Page::Component::PeopleField` more supported properties:
647
- * `is_me_button`, `attach_mode`, `person_schema_id`, `viewable_fields`, `singular`, `requires_number`, `cached_people`, `attached_people_permissions_enabled`, `apply_attached_people_permissions_to`, `attached_people_permissions_editable`, `attached_people_permissions_flags`
648
- - `Ecoportal::API::V2::Page::Component::PlainTextField` more supported properties:
649
- * `multiline`, `max_length`, `exact_index`
650
- - `Ecoportal::API::V2::Page::Component::SelectionField` more supported properties:
651
- * `flat`
652
- - `Ecoportal::API::V2::Page::Component::TagField` more supported properties:
653
- * `single_select`, `use_defaults`, `tag_tree_id`, `button_text`
654
- - `Ecoportal::API::V2::Page::Section` more supported properties:
655
- * `minimized`
656
-
657
- ### Changed
658
- - upgraded `ecoportal-api` dependency
659
-
660
- ### Fixed
661
- - `Ecoportal::API::Common::Content::CollectionModel#upsert!` was not actually moving the element to the new position when it already existed
728
+
729
+ - `Ecoportal::API::Common::Content::CollectionModel#delete!` finally scoped how delete should work :)
730
+ - `Ecoportal::API::V2.new` better feedback on key error.
731
+ - `Ecoportal::API::V2::Page::Component::SignatureField` added property `signed_by_name`
732
+ - `Ecoportal::API::V2::Page::Component#required` this field property is currently supported
733
+ - `Ecoportal::API::V2::Page::Component::DateField` more supported properties:
734
+ - `show_time`, `today_button`, `past_only`, `create_event`, `remind_me_in`, `renews`, `renews_every`, `renews_unit`, `renews_until`
735
+ - `Ecoportal::API::V2::Page::Component::ChecklistField`
736
+ - added more methods: `add_item`, `ordered_items`
737
+ - `Ecoportal::API::V2::Page::Component::GaugeField`
738
+ - more supported properties: `max`, `active_color` and `stops`
739
+ - for `stops` added class `Ecoportal::API::V2::Page::Component::GaugeStop`
740
+ - added more methods: `add_stop`, `ordered_stops`
741
+ - `Ecoportal::API::V2::Page::Component::ReferenceField` more supported properties:
742
+ - `register_id`, `hide_create`, `hide_attach`, `hide_metadata`, `hide_dashboards`, `display_fields`, `display_fields_in_lookup`
743
+ - `Ecoportal::API::V2::Page::Component::ActionField`
744
+ - more supported properties:`create_actions`, `required_number_of_completed_actions`, `permits_and_rules_integration`, `add_subscribed`, `add_subscribed_to_tasks`
745
+ - added more methods: `add_task`, `ordered_tasks`
746
+ - `Ecoportal::API::V2::Page::Component::Action` modified, provided that some properties are `read_only`
747
+ - `Ecoportal::API::V2::Page::Component::PeopleField` more supported properties:
748
+ - `is_me_button`, `attach_mode`, `person_schema_id`, `viewable_fields`, `singular`, `requires_number`, `cached_people`, `attached_people_permissions_enabled`, `apply_attached_people_permissions_to`, `attached_people_permissions_editable`, `attached_people_permissions_flags`
749
+ - `Ecoportal::API::V2::Page::Component::PlainTextField` more supported properties:
750
+ - `multiline`, `max_length`, `exact_index`
751
+ - `Ecoportal::API::V2::Page::Component::SelectionField` more supported properties:
752
+ - `flat`
753
+ - `Ecoportal::API::V2::Page::Component::TagField` more supported properties:
754
+ - `single_select`, `use_defaults`, `tag_tree_id`, `button_text`
755
+ - `Ecoportal::API::V2::Page::Section` more supported properties:
756
+ - `minimized`
757
+
758
+ ### Changed
759
+
760
+ - upgraded `ecoportal-api` dependency
761
+
762
+ ### Fixed
763
+
764
+ - `Ecoportal::API::Common::Content::CollectionModel#upsert!` was not actually moving the element to the new position when it already existed
662
765
 
663
766
  ## [0.7.2] - 2020-10-07
664
767
 
665
768
  ### Added
666
- - automatic key builder
667
- - helper: `Ecoportal::API::V2::v2key` method
668
- - `user_key:` and `org_key:` as constructor methods for `Ecoportal::API::V2`
769
+
770
+ - automatic key builder
771
+ - helper: `Ecoportal::API::V2::v2key` method
772
+ - `user_key:` and `org_key:` as constructor methods for `Ecoportal::API::V2`
669
773
 
670
774
  ## [0.7.1] - 2020-10-07
671
775
 
672
776
  ### Changed
673
- - updated dependencies
777
+
778
+ - updated dependencies
674
779
 
675
780
  ## [0.7.0] - 2020-09-10
676
781
 
677
782
  ### Changed
678
- - updated dependencies
783
+
784
+ - updated dependencies
679
785
 
680
786
  ## [0.6.1] - 2020-07-11
681
787
 
682
788
  ### Added
683
- - `Ecoportal::API::Common::Content::DoubleModel#pretty_print`
789
+
790
+ - `Ecoportal::API::Common::Content::DoubleModel#pretty_print`
684
791
 
685
792
  ## [0.6.0] - 2020-07-11
686
793
 
687
794
  ### Changed
688
- - upgraded `ecoportal-api` gem
795
+
796
+ - upgraded `ecoportal-api` gem
689
797
 
690
798
  ## [0.5.9] - 2020-07-02
691
799
 
692
800
  ### Added
693
- - helper `Ecoportal::API::Common::Content::StringDigest#indexable_label`: to see the part of a label that gets indexed
694
- - this `CHANGELOG.md` file
801
+
802
+ - helper `Ecoportal::API::Common::Content::StringDigest#indexable_label`: to see the part of a label that gets indexed
803
+ - this `CHANGELOG.md` file