ecoportal-api-graphql 1.3.16 → 1.3.17

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.
Files changed (334) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -4
  3. data/LICENSE +21 -21
  4. data/README.md +24 -24
  5. data/lib/ecoportal/api/common/graphql/auth_service.rb +115 -115
  6. data/lib/ecoportal/api/common/graphql/class_helpers.rb +46 -46
  7. data/lib/ecoportal/api/common/graphql/client.rb +69 -69
  8. data/lib/ecoportal/api/common/graphql/hash_helpers.rb +105 -105
  9. data/lib/ecoportal/api/common/graphql/model/as_input.rb +54 -54
  10. data/lib/ecoportal/api/common/graphql/model/diffable/classic_diff_service.rb +49 -49
  11. data/lib/ecoportal/api/common/graphql/model/diffable/diff_service.rb +188 -188
  12. data/lib/ecoportal/api/common/graphql/model/diffable/hash_diff.rb +55 -55
  13. data/lib/ecoportal/api/common/graphql/model/diffable/hash_diff_nesting.rb +295 -295
  14. data/lib/ecoportal/api/common/graphql/model.rb +17 -17
  15. data/lib/ecoportal/api/common/graphql/patches.rb +1 -1
  16. data/lib/ecoportal/api/common/graphql/query_integration.rb +45 -45
  17. data/lib/ecoportal/api/common/graphql.rb +16 -16
  18. data/lib/ecoportal/api/common.graphql.rb +8 -8
  19. data/lib/ecoportal/api/graphql/base/action_category.rb +15 -15
  20. data/lib/ecoportal/api/graphql/base/ai_summary_version.rb +1 -1
  21. data/lib/ecoportal/api/graphql/base/contractor_entity.rb +24 -24
  22. data/lib/ecoportal/api/graphql/base/date_time.rb +12 -12
  23. data/lib/ecoportal/api/graphql/base/delta_result.rb +16 -16
  24. data/lib/ecoportal/api/graphql/base/field.rb +12 -12
  25. data/lib/ecoportal/api/graphql/base/file_attachment.rb +15 -15
  26. data/lib/ecoportal/api/graphql/base/location_node.rb +14 -14
  27. data/lib/ecoportal/api/graphql/base/location_structure/draft/structure.rb +37 -37
  28. data/lib/ecoportal/api/graphql/base/location_structure/draft.rb +93 -93
  29. data/lib/ecoportal/api/graphql/base/page/data_field/actions_list.rb +9 -9
  30. data/lib/ecoportal/api/graphql/base/page/data_field/ai_summary.rb +18 -18
  31. data/lib/ecoportal/api/graphql/base/page/data_field/checklist.rb +29 -29
  32. data/lib/ecoportal/api/graphql/base/page/data_field/collection.rb +1 -1
  33. data/lib/ecoportal/api/graphql/base/page/data_field/contractor_entities.rb +1 -1
  34. data/lib/ecoportal/api/graphql/base/page/data_field/cross_reference.rb +1 -1
  35. data/lib/ecoportal/api/graphql/base/page/data_field/date_field.rb +23 -23
  36. data/lib/ecoportal/api/graphql/base/page/data_field/file_field.rb +1 -1
  37. data/lib/ecoportal/api/graphql/base/page/data_field/geo.rb +24 -24
  38. data/lib/ecoportal/api/graphql/base/page/data_field/image_gallery.rb +1 -1
  39. data/lib/ecoportal/api/graphql/base/page/data_field/law.rb +8 -8
  40. data/lib/ecoportal/api/graphql/base/page/data_field/mailbox.rb +9 -9
  41. data/lib/ecoportal/api/graphql/base/page/data_field/plain_text.rb +17 -17
  42. data/lib/ecoportal/api/graphql/base/page/data_field/rich_text.rb +26 -26
  43. data/lib/ecoportal/api/graphql/base/page/data_field/signature.rb +9 -9
  44. data/lib/ecoportal/api/graphql/base/page/data_field/smart_fill.rb +17 -17
  45. data/lib/ecoportal/api/graphql/base/page/data_field/table.rb +9 -9
  46. data/lib/ecoportal/api/graphql/base/page/data_field/tag_field.rb +21 -21
  47. data/lib/ecoportal/api/graphql/base/page/phased.rb +15 -15
  48. data/lib/ecoportal/api/graphql/base/page/section.rb +48 -48
  49. data/lib/ecoportal/api/graphql/base/page_info.rb +12 -12
  50. data/lib/ecoportal/api/graphql/base/pages_workflow/operation_interface.rb +39 -39
  51. data/lib/ecoportal/api/graphql/base/pages_workflow/operations/assign_to.rb +27 -27
  52. data/lib/ecoportal/api/graphql/base/pages_workflow/operations/send_notification.rb +30 -30
  53. data/lib/ecoportal/api/graphql/base/pages_workflow/recipient_config.rb +34 -34
  54. data/lib/ecoportal/api/graphql/base/pages_workflow.rb +35 -35
  55. data/lib/ecoportal/api/graphql/base/person_member.rb +22 -22
  56. data/lib/ecoportal/api/graphql/base/preset_view.rb +1 -1
  57. data/lib/ecoportal/api/graphql/base/preview_page.rb +23 -23
  58. data/lib/ecoportal/api/graphql/base/register.rb +1 -1
  59. data/lib/ecoportal/api/graphql/base/resource.rb +13 -13
  60. data/lib/ecoportal/api/graphql/builder/action.rb +41 -41
  61. data/lib/ecoportal/api/graphql/builder/location_structure/draft.rb +64 -64
  62. data/lib/ecoportal/api/graphql/builder/location_structure.rb +40 -40
  63. data/lib/ecoportal/api/graphql/builder/register/preset_view.rb +84 -84
  64. data/lib/ecoportal/api/graphql/builder/register.rb +49 -49
  65. data/lib/ecoportal/api/graphql/compat/filter_translator.rb +1 -1
  66. data/lib/ecoportal/api/graphql/compat/page_reference.rb +23 -23
  67. data/lib/ecoportal/api/graphql/compat/registers.rb +84 -84
  68. data/lib/ecoportal/api/graphql/compat/search_results.rb +33 -33
  69. data/lib/ecoportal/api/graphql/compat.rb +17 -17
  70. data/lib/ecoportal/api/graphql/concerns/data_field_access.rb +71 -71
  71. data/lib/ecoportal/api/graphql/concerns/fragment_definitions.rb +68 -68
  72. data/lib/ecoportal/api/graphql/concerns/snake_camel_access.rb +60 -60
  73. data/lib/ecoportal/api/graphql/connection/preset_view.rb +11 -11
  74. data/lib/ecoportal/api/graphql/error/locations_error/fetch_nested.rb +51 -51
  75. data/lib/ecoportal/api/graphql/error/locations_error.rb +28 -28
  76. data/lib/ecoportal/api/graphql/error/locations_validation_error.rb +20 -20
  77. data/lib/ecoportal/api/graphql/error/validation_errors.rb +28 -28
  78. data/lib/ecoportal/api/graphql/error.rb +12 -12
  79. data/lib/ecoportal/api/graphql/file_upload/client.rb +1 -1
  80. data/lib/ecoportal/api/graphql/file_upload.rb +10 -10
  81. data/lib/ecoportal/api/graphql/fragment/action.rb +65 -65
  82. data/lib/ecoportal/api/graphql/fragment/action_category.rb +17 -17
  83. data/lib/ecoportal/api/graphql/fragment/contractor_entity.rb +20 -20
  84. data/lib/ecoportal/api/graphql/fragment/locations_error.rb +19 -19
  85. data/lib/ecoportal/api/graphql/fragment/pages.rb +15 -15
  86. data/lib/ecoportal/api/graphql/fragment/pagination.rb +17 -17
  87. data/lib/ecoportal/api/graphql/helpers/locations_tree.rb +41 -41
  88. data/lib/ecoportal/api/graphql/helpers.rb +10 -10
  89. data/lib/ecoportal/api/graphql/input/action/archive.rb +14 -14
  90. data/lib/ecoportal/api/graphql/input/action/create.rb +13 -13
  91. data/lib/ecoportal/api/graphql/input/action.rb +14 -14
  92. data/lib/ecoportal/api/graphql/input/contractor_entity/create.rb +14 -14
  93. data/lib/ecoportal/api/graphql/input/contractor_entity/destroy.rb +13 -13
  94. data/lib/ecoportal/api/graphql/input/delta_input.rb +16 -16
  95. data/lib/ecoportal/api/graphql/input/id_diff.rb +11 -11
  96. data/lib/ecoportal/api/graphql/input/location_structure/archive_command.rb +13 -13
  97. data/lib/ecoportal/api/graphql/input/location_structure/delete_command.rb +13 -13
  98. data/lib/ecoportal/api/graphql/input/location_structure/draft/create.rb +15 -15
  99. data/lib/ecoportal/api/graphql/input/location_structure/draft/delete.rb +15 -15
  100. data/lib/ecoportal/api/graphql/input/location_structure/draft/drop_bad_commands.rb +16 -16
  101. data/lib/ecoportal/api/graphql/input/location_structure/draft/publish.rb +16 -16
  102. data/lib/ecoportal/api/graphql/input/location_structure/draft.rb +19 -19
  103. data/lib/ecoportal/api/graphql/input/location_structure/insert_command.rb +13 -13
  104. data/lib/ecoportal/api/graphql/input/location_structure/move_command.rb +14 -14
  105. data/lib/ecoportal/api/graphql/input/location_structure/reorder_command.rb +13 -13
  106. data/lib/ecoportal/api/graphql/input/location_structure/unarchive_command.rb +13 -13
  107. data/lib/ecoportal/api/graphql/input/location_structure.rb +20 -20
  108. data/lib/ecoportal/api/graphql/input/page/archive.rb +14 -14
  109. data/lib/ecoportal/api/graphql/input/page/build_from_template.rb +13 -13
  110. data/lib/ecoportal/api/graphql/input/page/create_draft.rb +13 -13
  111. data/lib/ecoportal/api/graphql/input/page/create_from_template.rb +18 -18
  112. data/lib/ecoportal/api/graphql/input/page/delete_draft.rb +13 -13
  113. data/lib/ecoportal/api/graphql/input/page/publish_draft.rb +13 -13
  114. data/lib/ecoportal/api/graphql/input/page/review_task.rb +14 -14
  115. data/lib/ecoportal/api/graphql/input/page/unarchive.rb +14 -14
  116. data/lib/ecoportal/api/graphql/input/page/update.rb +2 -2
  117. data/lib/ecoportal/api/graphql/input/page.rb +26 -26
  118. data/lib/ecoportal/api/graphql/input/preset_view/create.rb +18 -18
  119. data/lib/ecoportal/api/graphql/input/preset_view/permission.rb +16 -16
  120. data/lib/ecoportal/api/graphql/input/preset_view/update.rb +1 -1
  121. data/lib/ecoportal/api/graphql/input/preset_view.rb +14 -14
  122. data/lib/ecoportal/api/graphql/input/register/create.rb +18 -18
  123. data/lib/ecoportal/api/graphql/input/register/update.rb +15 -15
  124. data/lib/ecoportal/api/graphql/input/register.rb +13 -13
  125. data/lib/ecoportal/api/graphql/input/search.rb +13 -13
  126. data/lib/ecoportal/api/graphql/input/search_conf/ai_generator.rb +234 -234
  127. data/lib/ecoportal/api/graphql/input/search_conf.rb +1 -1
  128. data/lib/ecoportal/api/graphql/input/search_filter.rb +12 -12
  129. data/lib/ecoportal/api/graphql/input/search_sorter.rb +11 -11
  130. data/lib/ecoportal/api/graphql/input/workflow_command/add_action_tag.rb +18 -18
  131. data/lib/ecoportal/api/graphql/input/workflow_command/add_binding.rb +18 -18
  132. data/lib/ecoportal/api/graphql/input/workflow_command/add_comment_tagging_user_group.rb +18 -18
  133. data/lib/ecoportal/api/graphql/input/workflow_command/add_default_direct_strategy_user.rb +18 -18
  134. data/lib/ecoportal/api/graphql/input/workflow_command/add_default_strategy.rb +18 -18
  135. data/lib/ecoportal/api/graphql/input/workflow_command/add_direct_strategy_user.rb +18 -18
  136. data/lib/ecoportal/api/graphql/input/workflow_command/add_force.rb +18 -18
  137. data/lib/ecoportal/api/graphql/input/workflow_command/add_linked_field_config.rb +23 -23
  138. data/lib/ecoportal/api/graphql/input/workflow_command/add_linked_helper.rb +18 -18
  139. data/lib/ecoportal/api/graphql/input/workflow_command/add_operation.rb +18 -18
  140. data/lib/ecoportal/api/graphql/input/workflow_command/add_operation_direct_strategy_user.rb +18 -18
  141. data/lib/ecoportal/api/graphql/input/workflow_command/add_operation_strategy.rb +18 -18
  142. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_action_type.rb +18 -18
  143. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_filter.rb +18 -18
  144. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_people_field.rb +18 -18
  145. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_task_config.rb +18 -18
  146. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_user.rb +18 -18
  147. data/lib/ecoportal/api/graphql/input/workflow_command/add_scheduled_callback.rb +23 -23
  148. data/lib/ecoportal/api/graphql/input/workflow_command/add_scheduled_callback_action.rb +18 -18
  149. data/lib/ecoportal/api/graphql/input/workflow_command/add_section.rb +18 -18
  150. data/lib/ecoportal/api/graphql/input/workflow_command/add_select_field_option.rb +19 -19
  151. data/lib/ecoportal/api/graphql/input/workflow_command/add_stage_section.rb +18 -18
  152. data/lib/ecoportal/api/graphql/input/workflow_command/add_stage_tag.rb +18 -18
  153. data/lib/ecoportal/api/graphql/input/workflow_command/add_strategy.rb +18 -18
  154. data/lib/ecoportal/api/graphql/input/workflow_command/add_task.rb +18 -18
  155. data/lib/ecoportal/api/graphql/input/workflow_command/add_task_assignment_user_group.rb +18 -18
  156. data/lib/ecoportal/api/graphql/input/workflow_command/add_workflow_callback.rb +18 -18
  157. data/lib/ecoportal/api/graphql/input/workflow_command/collapse_section.rb +18 -18
  158. data/lib/ecoportal/api/graphql/input/workflow_command/edit_binding.rb +18 -18
  159. data/lib/ecoportal/api/graphql/input/workflow_command/edit_creator_permissions.rb +18 -18
  160. data/lib/ecoportal/api/graphql/input/workflow_command/edit_default_strategy.rb +18 -18
  161. data/lib/ecoportal/api/graphql/input/workflow_command/edit_force.rb +18 -18
  162. data/lib/ecoportal/api/graphql/input/workflow_command/edit_gauge_field_stop.rb +19 -19
  163. data/lib/ecoportal/api/graphql/input/workflow_command/edit_linked_field_config.rb +19 -19
  164. data/lib/ecoportal/api/graphql/input/workflow_command/edit_linked_helper.rb +18 -18
  165. data/lib/ecoportal/api/graphql/input/workflow_command/edit_operation.rb +18 -18
  166. data/lib/ecoportal/api/graphql/input/workflow_command/edit_operation_strategy.rb +18 -18
  167. data/lib/ecoportal/api/graphql/input/workflow_command/edit_reminder.rb +18 -18
  168. data/lib/ecoportal/api/graphql/input/workflow_command/edit_required_sign_offs.rb +18 -18
  169. data/lib/ecoportal/api/graphql/input/workflow_command/edit_restrict_comment_tagging.rb +18 -18
  170. data/lib/ecoportal/api/graphql/input/workflow_command/edit_restrict_task_assignment.rb +18 -18
  171. data/lib/ecoportal/api/graphql/input/workflow_command/edit_scheduled_callback.rb +22 -22
  172. data/lib/ecoportal/api/graphql/input/workflow_command/edit_section_header.rb +18 -18
  173. data/lib/ecoportal/api/graphql/input/workflow_command/edit_select_field_option.rb +19 -19
  174. data/lib/ecoportal/api/graphql/input/workflow_command/edit_stage.rb +18 -18
  175. data/lib/ecoportal/api/graphql/input/workflow_command/edit_strategy.rb +18 -18
  176. data/lib/ecoportal/api/graphql/input/workflow_command/edit_task_due.rb +18 -18
  177. data/lib/ecoportal/api/graphql/input/workflow_command/edit_trigger.rb +18 -18
  178. data/lib/ecoportal/api/graphql/input/workflow_command/expand_section.rb +18 -18
  179. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/contractor_entities.rb +24 -24
  180. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/gauge.rb +20 -20
  181. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/location_field.rb +24 -24
  182. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/signature.rb +20 -20
  183. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/table.rb +25 -25
  184. data/lib/ecoportal/api/graphql/input/workflow_command/move_stage.rb +18 -18
  185. data/lib/ecoportal/api/graphql/input/workflow_command/remove_action_tag.rb +18 -18
  186. data/lib/ecoportal/api/graphql/input/workflow_command/remove_binding.rb +18 -18
  187. data/lib/ecoportal/api/graphql/input/workflow_command/remove_callback.rb +18 -18
  188. data/lib/ecoportal/api/graphql/input/workflow_command/remove_comment_tagging_user_group.rb +18 -18
  189. data/lib/ecoportal/api/graphql/input/workflow_command/remove_default_direct_strategy_user.rb +18 -18
  190. data/lib/ecoportal/api/graphql/input/workflow_command/remove_default_strategy.rb +18 -18
  191. data/lib/ecoportal/api/graphql/input/workflow_command/remove_direct_strategy_user.rb +18 -18
  192. data/lib/ecoportal/api/graphql/input/workflow_command/remove_field.rb +18 -18
  193. data/lib/ecoportal/api/graphql/input/workflow_command/remove_force.rb +18 -18
  194. data/lib/ecoportal/api/graphql/input/workflow_command/remove_linked_helper.rb +18 -18
  195. data/lib/ecoportal/api/graphql/input/workflow_command/remove_operation.rb +18 -18
  196. data/lib/ecoportal/api/graphql/input/workflow_command/remove_operation_direct_strategy_user.rb +18 -18
  197. data/lib/ecoportal/api/graphql/input/workflow_command/remove_operation_strategy.rb +18 -18
  198. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_action_type.rb +18 -18
  199. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_filter.rb +18 -18
  200. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_people_field.rb +18 -18
  201. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_task_config.rb +18 -18
  202. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_user.rb +18 -18
  203. data/lib/ecoportal/api/graphql/input/workflow_command/remove_scheduled_callback.rb +18 -18
  204. data/lib/ecoportal/api/graphql/input/workflow_command/remove_section.rb +18 -18
  205. data/lib/ecoportal/api/graphql/input/workflow_command/remove_stage.rb +18 -18
  206. data/lib/ecoportal/api/graphql/input/workflow_command/remove_stage_section.rb +18 -18
  207. data/lib/ecoportal/api/graphql/input/workflow_command/remove_stage_tag.rb +18 -18
  208. data/lib/ecoportal/api/graphql/input/workflow_command/remove_strategy.rb +18 -18
  209. data/lib/ecoportal/api/graphql/input/workflow_command/remove_task.rb +18 -18
  210. data/lib/ecoportal/api/graphql/input/workflow_command/remove_task_assignment_user_group.rb +18 -18
  211. data/lib/ecoportal/api/graphql/input/workflow_command/remove_task_due.rb +18 -18
  212. data/lib/ecoportal/api/graphql/input/workflow_command/remove_task_priority_level.rb +18 -18
  213. data/lib/ecoportal/api/graphql/interface/location_structure/node.rb +43 -43
  214. data/lib/ecoportal/api/graphql/interface/location_structure.rb +14 -14
  215. data/lib/ecoportal/api/graphql/interface.rb +11 -11
  216. data/lib/ecoportal/api/graphql/logic/base_model.rb +15 -15
  217. data/lib/ecoportal/api/graphql/logic/base_query.rb +193 -193
  218. data/lib/ecoportal/api/graphql/logic/mutation.rb +59 -59
  219. data/lib/ecoportal/api/graphql/logic/payload.rb +42 -42
  220. data/lib/ecoportal/api/graphql/logic/query.rb +23 -23
  221. data/lib/ecoportal/api/graphql/logic/query_array.rb +30 -30
  222. data/lib/ecoportal/api/graphql/logic/query_connection.rb +48 -48
  223. data/lib/ecoportal/api/graphql/logic.rb +18 -18
  224. data/lib/ecoportal/api/graphql/model/account.rb +15 -15
  225. data/lib/ecoportal/api/graphql/model/action.rb +22 -22
  226. data/lib/ecoportal/api/graphql/model/ai_summary_version.rb +10 -10
  227. data/lib/ecoportal/api/graphql/model/contractor_entity.rb +12 -12
  228. data/lib/ecoportal/api/graphql/model/field.rb +10 -10
  229. data/lib/ecoportal/api/graphql/model/file_attachment.rb +10 -10
  230. data/lib/ecoportal/api/graphql/model/file_container.rb +11 -11
  231. data/lib/ecoportal/api/graphql/model/location_node.rb +14 -14
  232. data/lib/ecoportal/api/graphql/model/location_structure/draft/structure.rb +15 -15
  233. data/lib/ecoportal/api/graphql/model/location_structure/draft.rb +15 -15
  234. data/lib/ecoportal/api/graphql/model/location_structure.rb +16 -16
  235. data/lib/ecoportal/api/graphql/model/page/basic.rb +14 -14
  236. data/lib/ecoportal/api/graphql/model/page/data_field.rb +12 -12
  237. data/lib/ecoportal/api/graphql/model/page/phased/stage.rb +14 -14
  238. data/lib/ecoportal/api/graphql/model/page/section.rb +12 -12
  239. data/lib/ecoportal/api/graphql/model/page_union.rb +21 -21
  240. data/lib/ecoportal/api/graphql/model/pages_workflow.rb +20 -20
  241. data/lib/ecoportal/api/graphql/model/preset_view.rb +10 -10
  242. data/lib/ecoportal/api/graphql/model/preview_page.rb +10 -10
  243. data/lib/ecoportal/api/graphql/model/register.rb +10 -10
  244. data/lib/ecoportal/api/graphql/model/resource.rb +13 -13
  245. data/lib/ecoportal/api/graphql/model/user.rb +14 -14
  246. data/lib/ecoportal/api/graphql/mutation/action/archive.rb +41 -41
  247. data/lib/ecoportal/api/graphql/mutation/action/create.rb +40 -40
  248. data/lib/ecoportal/api/graphql/mutation/action/update.rb +40 -40
  249. data/lib/ecoportal/api/graphql/mutation/action.rb +14 -14
  250. data/lib/ecoportal/api/graphql/mutation/ai_summary/generate.rb +1 -1
  251. data/lib/ecoportal/api/graphql/mutation/ai_summary/submit_feedback.rb +1 -1
  252. data/lib/ecoportal/api/graphql/mutation/ai_summary.rb +13 -13
  253. data/lib/ecoportal/api/graphql/mutation/contractor_entity/create.rb +40 -40
  254. data/lib/ecoportal/api/graphql/mutation/contractor_entity/destroy.rb +40 -40
  255. data/lib/ecoportal/api/graphql/mutation/contractor_entity/update.rb +40 -40
  256. data/lib/ecoportal/api/graphql/mutation/location_structure/apply_commands.rb +54 -54
  257. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/add_commands.rb +55 -55
  258. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/create.rb +54 -54
  259. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/delete.rb +43 -43
  260. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/drop_bad_commands.rb +56 -56
  261. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/publish.rb +66 -66
  262. data/lib/ecoportal/api/graphql/mutation/location_structure/draft.rb +18 -18
  263. data/lib/ecoportal/api/graphql/mutation/location_structure.rb +13 -13
  264. data/lib/ecoportal/api/graphql/mutation/page/approve_review_task.rb +1 -1
  265. data/lib/ecoportal/api/graphql/mutation/page/archive.rb +40 -40
  266. data/lib/ecoportal/api/graphql/mutation/page/batch_update_review_task.rb +1 -1
  267. data/lib/ecoportal/api/graphql/mutation/page/build_from_template.rb +50 -50
  268. data/lib/ecoportal/api/graphql/mutation/page/create_draft.rb +1 -1
  269. data/lib/ecoportal/api/graphql/mutation/page/create_from_template.rb +43 -43
  270. data/lib/ecoportal/api/graphql/mutation/page/delete_draft.rb +1 -1
  271. data/lib/ecoportal/api/graphql/mutation/page/publish_draft.rb +1 -1
  272. data/lib/ecoportal/api/graphql/mutation/page/reject_review_task.rb +1 -1
  273. data/lib/ecoportal/api/graphql/mutation/page/restart_review_task.rb +1 -1
  274. data/lib/ecoportal/api/graphql/mutation/page/unarchive.rb +40 -40
  275. data/lib/ecoportal/api/graphql/mutation/page/undo_review_task.rb +1 -1
  276. data/lib/ecoportal/api/graphql/mutation/page/update.rb +40 -40
  277. data/lib/ecoportal/api/graphql/mutation/page.rb +28 -28
  278. data/lib/ecoportal/api/graphql/mutation/preset_view/create.rb +35 -35
  279. data/lib/ecoportal/api/graphql/mutation/preset_view/destroy.rb +1 -1
  280. data/lib/ecoportal/api/graphql/mutation/preset_view/permission.rb +37 -37
  281. data/lib/ecoportal/api/graphql/mutation/preset_view/update.rb +35 -35
  282. data/lib/ecoportal/api/graphql/mutation/preset_view.rb +15 -15
  283. data/lib/ecoportal/api/graphql/mutation/register/create.rb +35 -35
  284. data/lib/ecoportal/api/graphql/mutation/register/destroy.rb +1 -1
  285. data/lib/ecoportal/api/graphql/mutation/register/update.rb +35 -35
  286. data/lib/ecoportal/api/graphql/mutation/register.rb +14 -14
  287. data/lib/ecoportal/api/graphql/mutation/smart_fill/generate.rb +1 -1
  288. data/lib/ecoportal/api/graphql/mutation/smart_fill/submit_feedback.rb +1 -1
  289. data/lib/ecoportal/api/graphql/mutation/smart_fill.rb +1 -1
  290. data/lib/ecoportal/api/graphql/payload/action/archive.rb +13 -13
  291. data/lib/ecoportal/api/graphql/payload/action/create.rb +13 -13
  292. data/lib/ecoportal/api/graphql/payload/action/update.rb +13 -13
  293. data/lib/ecoportal/api/graphql/payload/action.rb +14 -14
  294. data/lib/ecoportal/api/graphql/payload/ai_summary_generate.rb +12 -12
  295. data/lib/ecoportal/api/graphql/payload/contractor_entity/create.rb +13 -13
  296. data/lib/ecoportal/api/graphql/payload/contractor_entity/destroy.rb +12 -12
  297. data/lib/ecoportal/api/graphql/payload/contractor_entity/update.rb +12 -12
  298. data/lib/ecoportal/api/graphql/payload/location_structure/apply_commands.rb +51 -51
  299. data/lib/ecoportal/api/graphql/payload/location_structure/command_execution_result.rb +50 -50
  300. data/lib/ecoportal/api/graphql/payload/location_structure/draft/add_commands.rb +30 -30
  301. data/lib/ecoportal/api/graphql/payload/location_structure/draft/delete.rb +30 -30
  302. data/lib/ecoportal/api/graphql/payload/location_structure/draft/drop_bad_commands.rb +43 -43
  303. data/lib/ecoportal/api/graphql/payload/location_structure/draft/publish.rb +63 -63
  304. data/lib/ecoportal/api/graphql/payload/location_structure/draft.rb +18 -18
  305. data/lib/ecoportal/api/graphql/payload/location_structure.rb +14 -14
  306. data/lib/ecoportal/api/graphql/payload/ok_payload.rb +1 -1
  307. data/lib/ecoportal/api/graphql/payload/page/archive.rb +13 -13
  308. data/lib/ecoportal/api/graphql/payload/page/build_from_template.rb +13 -13
  309. data/lib/ecoportal/api/graphql/payload/page/create_from_template.rb +13 -13
  310. data/lib/ecoportal/api/graphql/payload/page/draft.rb +1 -1
  311. data/lib/ecoportal/api/graphql/payload/page/review_task.rb +1 -1
  312. data/lib/ecoportal/api/graphql/payload/page/unarchive.rb +13 -13
  313. data/lib/ecoportal/api/graphql/payload/page/update.rb +13 -13
  314. data/lib/ecoportal/api/graphql/payload/preset_view.rb +1 -1
  315. data/lib/ecoportal/api/graphql/payload/register.rb +1 -1
  316. data/lib/ecoportal/api/graphql/query/action.rb +33 -33
  317. data/lib/ecoportal/api/graphql/query/action_categories.rb +53 -53
  318. data/lib/ecoportal/api/graphql/query/actions.rb +43 -43
  319. data/lib/ecoportal/api/graphql/query/contractor_entities.rb +53 -53
  320. data/lib/ecoportal/api/graphql/query/file_upload_signature.rb +76 -76
  321. data/lib/ecoportal/api/graphql/query/location_classifications.rb +39 -39
  322. data/lib/ecoportal/api/graphql/query/page_delta.rb +47 -47
  323. data/lib/ecoportal/api/graphql/query/pages.rb +59 -59
  324. data/lib/ecoportal/api/graphql/query/register_preset_views.rb +1 -1
  325. data/lib/ecoportal/api/graphql/query/register_preview_pages.rb +83 -83
  326. data/lib/ecoportal/api/graphql/query/templates.rb +53 -53
  327. data/lib/ecoportal/api/graphql_version.rb +1 -1
  328. data/lib/ecoportal/api-graphql.rb +10 -10
  329. metadata +1 -6
  330. data/lib/ecoportal/api/common/graphql/CLAUDE.md +0 -36
  331. data/lib/ecoportal/api/common/graphql/model/CLAUDE.md +0 -28
  332. data/lib/ecoportal/api/graphql/CLAUDE.md +0 -37
  333. data/lib/ecoportal/api/graphql/base/CLAUDE.md +0 -50
  334. data/lib/ecoportal/api/graphql/builder/CLAUDE.md +0 -65
@@ -1,25 +1,25 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module EditFieldConfiguration
7
- module Table
8
- SCHEMA_VERSION = '20260605'.freeze
9
- VALID_KEYS = %i[
10
- tableType jurisdictionFieldRef industrialAwardFieldRef
11
- workAgreementFieldRef preIncapacityFieldRef claimStatusFieldRef
12
- firstIncapacityFieldRef endIncapacityFieldRef
13
- firstDayOfTheWeek inProgress nextRowAdditionAt
14
- ].freeze
15
-
16
- def self.build(**kwargs)
17
- { table: kwargs.slice(*VALID_KEYS).compact }
18
- end
19
- end
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module EditFieldConfiguration
7
+ module Table
8
+ SCHEMA_VERSION = '20260605'.freeze
9
+ VALID_KEYS = %i[
10
+ tableType jurisdictionFieldRef industrialAwardFieldRef
11
+ workAgreementFieldRef preIncapacityFieldRef claimStatusFieldRef
12
+ firstIncapacityFieldRef endIncapacityFieldRef
13
+ firstDayOfTheWeek inProgress nextRowAdditionAt
14
+ ].freeze
15
+
16
+ def self.build(**kwargs)
17
+ { table: kwargs.slice(*VALID_KEYS).compact }
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module MoveStage
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId ordering].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module MoveStage
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId ordering].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveActionTag
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId scheduledCallbackId actionId tag].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveActionTag
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId scheduledCallbackId actionId tag].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveBinding
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[id].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveBinding
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[id].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveCallback
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId callbackId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveCallback
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId callbackId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveCommentTaggingUserGroup
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId userGroupId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveCommentTaggingUserGroup
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId userGroupId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveDefaultDirectStrategyUser
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId userId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveDefaultDirectStrategyUser
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId userId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveDefaultStrategy
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveDefaultStrategy
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveDirectStrategyUser
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId strategyId userId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveDirectStrategyUser
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId strategyId userId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveField
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[id].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveField
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[id].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveForce
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[id].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveForce
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[id].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveLinkedHelper
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[id].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveLinkedHelper
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[id].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveOperation
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId callbackId operationId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveOperation
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId callbackId operationId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveOperationDirectStrategyUser
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId callbackId operationId strategyId userId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveOperationDirectStrategyUser
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId callbackId operationId strategyId userId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveOperationStrategy
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId callbackId operationId strategyId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveOperationStrategy
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId callbackId operationId strategyId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveRecipientActionType
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId callbackId operationId actionTypeId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveRecipientActionType
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId callbackId operationId actionTypeId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -1,18 +1,18 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- module RemoveRecipientFilter
7
- SCHEMA_VERSION = '20260605'.freeze
8
- VALID_KEYS = %i[stageId taskId callbackId operationId filterId].freeze
9
-
10
- def self.build(**kwargs)
11
- kwargs.slice(*VALID_KEYS).compact
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ module RemoveRecipientFilter
7
+ SCHEMA_VERSION = '20260605'.freeze
8
+ VALID_KEYS = %i[stageId taskId callbackId operationId filterId].freeze
9
+
10
+ def self.build(**kwargs)
11
+ kwargs.slice(*VALID_KEYS).compact
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end