ecoportal-api-graphql 1.3.16 → 2.2.0

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 (482) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +746 -6
  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/http_client.rb +85 -2
  10. data/lib/ecoportal/api/common/graphql/model/as_input.rb +54 -54
  11. data/lib/ecoportal/api/common/graphql/model/diffable/classic_diff_service.rb +49 -49
  12. data/lib/ecoportal/api/common/graphql/model/diffable/diff_service.rb +188 -188
  13. data/lib/ecoportal/api/common/graphql/model/diffable/hash_diff.rb +55 -55
  14. data/lib/ecoportal/api/common/graphql/model/diffable/hash_diff_nesting.rb +295 -295
  15. data/lib/ecoportal/api/common/graphql/model/diffable/leaf_diff_service.rb +97 -0
  16. data/lib/ecoportal/api/common/graphql/model/diffable.rb +1 -0
  17. data/lib/ecoportal/api/common/graphql/model.rb +17 -17
  18. data/lib/ecoportal/api/common/graphql/patches.rb +1 -1
  19. data/lib/ecoportal/api/common/graphql/query_integration.rb +45 -45
  20. data/lib/ecoportal/api/common/graphql.rb +16 -16
  21. data/lib/ecoportal/api/common.graphql.rb +8 -8
  22. data/lib/ecoportal/api/graphql/base/action.rb +1 -1
  23. data/lib/ecoportal/api/graphql/base/action_category.rb +15 -15
  24. data/lib/ecoportal/api/graphql/base/action_event.rb +23 -0
  25. data/lib/ecoportal/api/graphql/base/action_event_page.rb +16 -0
  26. data/lib/ecoportal/api/graphql/base/activity.rb +38 -0
  27. data/lib/ecoportal/api/graphql/base/activity_log.rb +38 -0
  28. data/lib/ecoportal/api/graphql/base/ai_summary_version.rb +13 -8
  29. data/lib/ecoportal/api/graphql/base/auth_log.rb +24 -0
  30. data/lib/ecoportal/api/graphql/base/authorization_result.rb +20 -0
  31. data/lib/ecoportal/api/graphql/base/contractor_entity/member_changes.rb +17 -5
  32. data/lib/ecoportal/api/graphql/base/contractor_entity.rb +24 -24
  33. data/lib/ecoportal/api/graphql/base/date_time.rb +12 -12
  34. data/lib/ecoportal/api/graphql/base/delta_result.rb +16 -16
  35. data/lib/ecoportal/api/graphql/base/field.rb +12 -12
  36. data/lib/ecoportal/api/graphql/base/file_attachment.rb +15 -15
  37. data/lib/ecoportal/api/graphql/base/file_container.rb +12 -4
  38. data/lib/ecoportal/api/graphql/base/location_classification_type.rb +2 -0
  39. data/lib/ecoportal/api/graphql/base/location_node.rb +14 -14
  40. data/lib/ecoportal/api/graphql/base/location_structure/draft/structure.rb +37 -37
  41. data/lib/ecoportal/api/graphql/base/location_structure/draft.rb +93 -93
  42. data/lib/ecoportal/api/graphql/base/location_structure.rb +3 -0
  43. data/lib/ecoportal/api/graphql/base/minimal_dashboard.rb +25 -0
  44. data/lib/ecoportal/api/graphql/base/organization.rb +2 -0
  45. data/lib/ecoportal/api/graphql/base/page/data_field/actions_list.rb +9 -9
  46. data/lib/ecoportal/api/graphql/base/page/data_field/ai_summary.rb +18 -18
  47. data/lib/ecoportal/api/graphql/base/page/data_field/checklist.rb +29 -29
  48. data/lib/ecoportal/api/graphql/base/page/data_field/contractor_entities.rb +26 -3
  49. data/lib/ecoportal/api/graphql/base/page/data_field/cross_reference.rb +1 -1
  50. data/lib/ecoportal/api/graphql/base/page/data_field/date_field.rb +23 -23
  51. data/lib/ecoportal/api/graphql/base/page/data_field/file_field.rb +47 -8
  52. data/lib/ecoportal/api/graphql/base/page/data_field/geo.rb +24 -24
  53. data/lib/ecoportal/api/graphql/base/page/data_field/image_gallery.rb +6 -3
  54. data/lib/ecoportal/api/graphql/base/page/data_field/law.rb +8 -8
  55. data/lib/ecoportal/api/graphql/base/page/data_field/mailbox.rb +9 -9
  56. data/lib/ecoportal/api/graphql/base/page/data_field/people.rb +50 -12
  57. data/lib/ecoportal/api/graphql/base/page/data_field/plain_text.rb +17 -17
  58. data/lib/ecoportal/api/graphql/base/page/data_field/rich_text.rb +26 -26
  59. data/lib/ecoportal/api/graphql/base/page/data_field/signature.rb +9 -9
  60. data/lib/ecoportal/api/graphql/base/page/data_field/smart_fill.rb +17 -17
  61. data/lib/ecoportal/api/graphql/base/page/data_field/table.rb +9 -9
  62. data/lib/ecoportal/api/graphql/base/page/data_field/tag_field.rb +21 -21
  63. data/lib/ecoportal/api/graphql/base/page/data_field.rb +12 -18
  64. data/lib/ecoportal/api/graphql/base/page/phased/stage.rb +51 -0
  65. data/lib/ecoportal/api/graphql/base/page/phased.rb +15 -15
  66. data/lib/ecoportal/api/graphql/base/page/section.rb +48 -48
  67. data/lib/ecoportal/api/graphql/base/page_info.rb +12 -12
  68. data/lib/ecoportal/api/graphql/base/pages_workflow/operation_interface.rb +39 -39
  69. data/lib/ecoportal/api/graphql/base/pages_workflow/operations/assign_to.rb +27 -27
  70. data/lib/ecoportal/api/graphql/base/pages_workflow/operations/send_notification.rb +30 -30
  71. data/lib/ecoportal/api/graphql/base/pages_workflow/recipient_config.rb +34 -34
  72. data/lib/ecoportal/api/graphql/base/pages_workflow.rb +35 -35
  73. data/lib/ecoportal/api/graphql/base/permissions.rb +15 -0
  74. data/lib/ecoportal/api/graphql/base/person_member.rb +22 -22
  75. data/lib/ecoportal/api/graphql/base/person_member_changelog.rb +23 -0
  76. data/lib/ecoportal/api/graphql/base/preset_view.rb +136 -1
  77. data/lib/ecoportal/api/graphql/base/preview_page.rb +23 -23
  78. data/lib/ecoportal/api/graphql/base/register.rb +6 -1
  79. data/lib/ecoportal/api/graphql/base/resource.rb +13 -13
  80. data/lib/ecoportal/api/graphql/base/template/change_log_entry.rb +118 -0
  81. data/lib/ecoportal/api/graphql/base/template.rb +2 -0
  82. data/lib/ecoportal/api/graphql/base.rb +9 -0
  83. data/lib/ecoportal/api/graphql/builder/action.rb +41 -41
  84. data/lib/ecoportal/api/graphql/builder/contractor_entity.rb +10 -0
  85. data/lib/ecoportal/api/graphql/builder/location_structure/draft.rb +64 -64
  86. data/lib/ecoportal/api/graphql/builder/location_structure.rb +40 -40
  87. data/lib/ecoportal/api/graphql/builder/page.rb +0 -16
  88. data/lib/ecoportal/api/graphql/builder/register/preset_view.rb +84 -84
  89. data/lib/ecoportal/api/graphql/builder/register.rb +49 -49
  90. data/lib/ecoportal/api/graphql/builder/template.rb +46 -0
  91. data/lib/ecoportal/api/graphql/builder/template_builder.rb +21 -2
  92. data/lib/ecoportal/api/graphql/compat/page_reference.rb +23 -23
  93. data/lib/ecoportal/api/graphql/compat/pages.rb +7 -2
  94. data/lib/ecoportal/api/graphql/compat/registers.rb +84 -84
  95. data/lib/ecoportal/api/graphql/compat/response.rb +14 -0
  96. data/lib/ecoportal/api/graphql/compat/search_results.rb +33 -33
  97. data/lib/ecoportal/api/graphql/compat.rb +17 -17
  98. data/lib/ecoportal/api/graphql/concerns/data_field_access.rb +71 -71
  99. data/lib/ecoportal/api/graphql/concerns/fragment_definitions.rb +68 -68
  100. data/lib/ecoportal/api/graphql/concerns/snake_camel_access.rb +60 -60
  101. data/lib/ecoportal/api/graphql/concerns/threadable.rb +58 -0
  102. data/lib/ecoportal/api/graphql/concerns.rb +1 -0
  103. data/lib/ecoportal/api/graphql/connection/action.rb +1 -1
  104. data/lib/ecoportal/api/graphql/connection/action_category.rb +1 -1
  105. data/lib/ecoportal/api/graphql/connection/activity.rb +11 -0
  106. data/lib/ecoportal/api/graphql/connection/activity_log.rb +11 -0
  107. data/lib/ecoportal/api/graphql/connection/auth_log.rb +11 -0
  108. data/lib/ecoportal/api/graphql/connection/contractor_entity.rb +1 -1
  109. data/lib/ecoportal/api/graphql/connection/minimal_dashboard.rb +11 -0
  110. data/lib/ecoportal/api/graphql/connection/page.rb +1 -1
  111. data/lib/ecoportal/api/graphql/connection/pages_workflow_command.rb +1 -1
  112. data/lib/ecoportal/api/graphql/connection/person_member.rb +1 -1
  113. data/lib/ecoportal/api/graphql/connection/person_member_changelog.rb +11 -0
  114. data/lib/ecoportal/api/graphql/connection/preset_view.rb +11 -11
  115. data/lib/ecoportal/api/graphql/connection/preview_page.rb +1 -1
  116. data/lib/ecoportal/api/graphql/connection/template_change_log.rb +19 -0
  117. data/lib/ecoportal/api/graphql/connection.rb +6 -0
  118. data/lib/ecoportal/api/graphql/diff/change.rb +7 -2
  119. data/lib/ecoportal/api/graphql/diff/command_synthesizer.rb +19 -1
  120. data/lib/ecoportal/api/graphql/diff/pairing/signals.rb +21 -1
  121. data/lib/ecoportal/api/graphql/diff/version_diff.rb +13 -6
  122. data/lib/ecoportal/api/graphql/error/locations_error/fetch_nested.rb +51 -51
  123. data/lib/ecoportal/api/graphql/error/locations_error.rb +28 -28
  124. data/lib/ecoportal/api/graphql/error/locations_validation_error.rb +20 -20
  125. data/lib/ecoportal/api/graphql/error/validation_errors.rb +28 -28
  126. data/lib/ecoportal/api/graphql/error.rb +12 -12
  127. data/lib/ecoportal/api/graphql/file_upload/client.rb +199 -140
  128. data/lib/ecoportal/api/graphql/file_upload.rb +10 -10
  129. data/lib/ecoportal/api/graphql/fragment/action.rb +65 -65
  130. data/lib/ecoportal/api/graphql/fragment/action_category.rb +17 -17
  131. data/lib/ecoportal/api/graphql/fragment/activity.rb +84 -0
  132. data/lib/ecoportal/api/graphql/fragment/activity_log.rb +75 -0
  133. data/lib/ecoportal/api/graphql/fragment/auth_log.rb +29 -0
  134. data/lib/ecoportal/api/graphql/fragment/authorization_result.rb +14 -0
  135. data/lib/ecoportal/api/graphql/fragment/contractor_entity.rb +20 -20
  136. data/lib/ecoportal/api/graphql/fragment/location_node.rb +1 -0
  137. data/lib/ecoportal/api/graphql/fragment/locations_error.rb +19 -19
  138. data/lib/ecoportal/api/graphql/fragment/minimal_dashboard.rb +31 -0
  139. data/lib/ecoportal/api/graphql/fragment/page.rb +1 -0
  140. data/lib/ecoportal/api/graphql/fragment/pages/common_page_union.rb +23 -0
  141. data/lib/ecoportal/api/graphql/fragment/pages.rb +15 -15
  142. data/lib/ecoportal/api/graphql/fragment/pagination.rb +17 -17
  143. data/lib/ecoportal/api/graphql/fragment/permissions.rb +98 -0
  144. data/lib/ecoportal/api/graphql/fragment/person_member_changelog.rb +33 -0
  145. data/lib/ecoportal/api/graphql/fragment/template_change_log.rb +102 -0
  146. data/lib/ecoportal/api/graphql/fragment.rb +8 -0
  147. data/lib/ecoportal/api/graphql/helpers/locations_tree.rb +41 -41
  148. data/lib/ecoportal/api/graphql/helpers.rb +10 -10
  149. data/lib/ecoportal/api/graphql/input/action/archive.rb +14 -14
  150. data/lib/ecoportal/api/graphql/input/action/create.rb +13 -13
  151. data/lib/ecoportal/api/graphql/input/action/update.rb +12 -0
  152. data/lib/ecoportal/api/graphql/input/action.rb +14 -14
  153. data/lib/ecoportal/api/graphql/input/contractor_entity/create.rb +14 -14
  154. data/lib/ecoportal/api/graphql/input/contractor_entity/destroy.rb +13 -13
  155. data/lib/ecoportal/api/graphql/input/contractor_entity/manager_settings.rb +20 -0
  156. data/lib/ecoportal/api/graphql/input/contractor_entity/update.rb +6 -27
  157. data/lib/ecoportal/api/graphql/input/contractor_entity.rb +1 -0
  158. data/lib/ecoportal/api/graphql/input/date_range.rb +16 -0
  159. data/lib/ecoportal/api/graphql/input/delta_input.rb +16 -16
  160. data/lib/ecoportal/api/graphql/input/id_diff.rb +11 -11
  161. data/lib/ecoportal/api/graphql/input/location_structure/apply_commands.rb +2 -2
  162. data/lib/ecoportal/api/graphql/input/location_structure/archive_command.rb +13 -13
  163. data/lib/ecoportal/api/graphql/input/location_structure/delete_command.rb +13 -13
  164. data/lib/ecoportal/api/graphql/input/location_structure/draft/add_commands.rb +2 -2
  165. data/lib/ecoportal/api/graphql/input/location_structure/draft/create.rb +15 -15
  166. data/lib/ecoportal/api/graphql/input/location_structure/draft/delete.rb +15 -15
  167. data/lib/ecoportal/api/graphql/input/location_structure/draft/drop_bad_commands.rb +16 -16
  168. data/lib/ecoportal/api/graphql/input/location_structure/draft/publish.rb +16 -16
  169. data/lib/ecoportal/api/graphql/input/location_structure/draft.rb +19 -19
  170. data/lib/ecoportal/api/graphql/input/location_structure/insert_command.rb +21 -13
  171. data/lib/ecoportal/api/graphql/input/location_structure/move_command.rb +14 -14
  172. data/lib/ecoportal/api/graphql/input/location_structure/reorder_command.rb +13 -13
  173. data/lib/ecoportal/api/graphql/input/location_structure/unarchive_command.rb +13 -13
  174. data/lib/ecoportal/api/graphql/input/location_structure/update_command.rb +6 -2
  175. data/lib/ecoportal/api/graphql/input/location_structure.rb +20 -20
  176. data/lib/ecoportal/api/graphql/input/page/archive.rb +14 -14
  177. data/lib/ecoportal/api/graphql/input/page/build_from_template.rb +13 -13
  178. data/lib/ecoportal/api/graphql/input/page/create_draft.rb +13 -13
  179. data/lib/ecoportal/api/graphql/input/page/create_from_template.rb +18 -18
  180. data/lib/ecoportal/api/graphql/input/page/delete_draft.rb +13 -13
  181. data/lib/ecoportal/api/graphql/input/page/publish_draft.rb +13 -13
  182. data/lib/ecoportal/api/graphql/input/page/review_task.rb +27 -14
  183. data/lib/ecoportal/api/graphql/input/page/unarchive.rb +14 -14
  184. data/lib/ecoportal/api/graphql/input/page.rb +26 -26
  185. data/lib/ecoportal/api/graphql/input/preset_view/create.rb +18 -18
  186. data/lib/ecoportal/api/graphql/input/preset_view/permission.rb +16 -16
  187. data/lib/ecoportal/api/graphql/input/preset_view/update.rb +17 -2
  188. data/lib/ecoportal/api/graphql/input/preset_view.rb +14 -14
  189. data/lib/ecoportal/api/graphql/input/register/create.rb +18 -18
  190. data/lib/ecoportal/api/graphql/input/register/update.rb +15 -15
  191. data/lib/ecoportal/api/graphql/input/register.rb +13 -13
  192. data/lib/ecoportal/api/graphql/input/search.rb +13 -13
  193. data/lib/ecoportal/api/graphql/input/search_conf/ai_generator.rb +234 -234
  194. data/lib/ecoportal/api/graphql/input/search_filter.rb +12 -12
  195. data/lib/ecoportal/api/graphql/input/search_sorter.rb +11 -11
  196. data/lib/ecoportal/api/graphql/input/workflow_command/add_action_tag.rb +18 -18
  197. data/lib/ecoportal/api/graphql/input/workflow_command/add_binding.rb +18 -18
  198. data/lib/ecoportal/api/graphql/input/workflow_command/add_checklist_field_item.rb +19 -0
  199. data/lib/ecoportal/api/graphql/input/workflow_command/add_comment_tagging_user_group.rb +18 -18
  200. data/lib/ecoportal/api/graphql/input/workflow_command/add_default_direct_strategy_user.rb +18 -18
  201. data/lib/ecoportal/api/graphql/input/workflow_command/add_default_strategy.rb +18 -18
  202. data/lib/ecoportal/api/graphql/input/workflow_command/add_direct_strategy_user.rb +18 -18
  203. data/lib/ecoportal/api/graphql/input/workflow_command/add_field.rb +10 -9
  204. data/lib/ecoportal/api/graphql/input/workflow_command/add_force.rb +18 -18
  205. data/lib/ecoportal/api/graphql/input/workflow_command/add_linked_field_config.rb +23 -23
  206. data/lib/ecoportal/api/graphql/input/workflow_command/add_linked_helper.rb +18 -18
  207. data/lib/ecoportal/api/graphql/input/workflow_command/add_operation.rb +18 -18
  208. data/lib/ecoportal/api/graphql/input/workflow_command/add_operation_direct_strategy_user.rb +18 -18
  209. data/lib/ecoportal/api/graphql/input/workflow_command/add_operation_strategy.rb +18 -18
  210. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_action_type.rb +18 -18
  211. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_filter.rb +18 -18
  212. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_people_field.rb +18 -18
  213. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_task_config.rb +18 -18
  214. data/lib/ecoportal/api/graphql/input/workflow_command/add_recipient_user.rb +18 -18
  215. data/lib/ecoportal/api/graphql/input/workflow_command/add_scheduled_callback.rb +23 -23
  216. data/lib/ecoportal/api/graphql/input/workflow_command/add_scheduled_callback_action.rb +18 -18
  217. data/lib/ecoportal/api/graphql/input/workflow_command/add_section.rb +18 -18
  218. data/lib/ecoportal/api/graphql/input/workflow_command/add_select_field_option.rb +25 -19
  219. data/lib/ecoportal/api/graphql/input/workflow_command/add_smart_fill_config.rb +23 -0
  220. data/lib/ecoportal/api/graphql/input/workflow_command/add_stage.rb +3 -2
  221. data/lib/ecoportal/api/graphql/input/workflow_command/add_stage_section.rb +18 -18
  222. data/lib/ecoportal/api/graphql/input/workflow_command/add_stage_tag.rb +18 -18
  223. data/lib/ecoportal/api/graphql/input/workflow_command/add_strategy.rb +18 -18
  224. data/lib/ecoportal/api/graphql/input/workflow_command/add_task.rb +18 -18
  225. data/lib/ecoportal/api/graphql/input/workflow_command/add_task_assignment_user_group.rb +18 -18
  226. data/lib/ecoportal/api/graphql/input/workflow_command/add_viewable_field.rb +45 -0
  227. data/lib/ecoportal/api/graphql/input/workflow_command/add_workflow_callback.rb +18 -18
  228. data/lib/ecoportal/api/graphql/input/workflow_command/archive_public_config.rb +19 -0
  229. data/lib/ecoportal/api/graphql/input/workflow_command/collapse_section.rb +18 -18
  230. data/lib/ecoportal/api/graphql/input/workflow_command/create_public_config.rb +19 -0
  231. data/lib/ecoportal/api/graphql/input/workflow_command/edit_binding.rb +18 -18
  232. data/lib/ecoportal/api/graphql/input/workflow_command/edit_checklist_field_item.rb +19 -0
  233. data/lib/ecoportal/api/graphql/input/workflow_command/edit_creator_permissions.rb +18 -18
  234. data/lib/ecoportal/api/graphql/input/workflow_command/edit_default_strategy.rb +18 -18
  235. data/lib/ecoportal/api/graphql/input/workflow_command/edit_field_configuration.rb +17 -2
  236. data/lib/ecoportal/api/graphql/input/workflow_command/edit_force.rb +21 -18
  237. data/lib/ecoportal/api/graphql/input/workflow_command/edit_gauge_field_stop.rb +19 -19
  238. data/lib/ecoportal/api/graphql/input/workflow_command/edit_linked_field_config.rb +19 -19
  239. data/lib/ecoportal/api/graphql/input/workflow_command/edit_linked_helper.rb +18 -18
  240. data/lib/ecoportal/api/graphql/input/workflow_command/edit_operation.rb +18 -18
  241. data/lib/ecoportal/api/graphql/input/workflow_command/edit_operation_strategy.rb +18 -18
  242. data/lib/ecoportal/api/graphql/input/workflow_command/edit_public_config.rb +19 -0
  243. data/lib/ecoportal/api/graphql/input/workflow_command/edit_reminder.rb +18 -18
  244. data/lib/ecoportal/api/graphql/input/workflow_command/edit_required_sign_offs.rb +18 -18
  245. data/lib/ecoportal/api/graphql/input/workflow_command/edit_restrict_comment_tagging.rb +18 -18
  246. data/lib/ecoportal/api/graphql/input/workflow_command/edit_restrict_task_assignment.rb +18 -18
  247. data/lib/ecoportal/api/graphql/input/workflow_command/edit_scheduled_callback.rb +22 -22
  248. data/lib/ecoportal/api/graphql/input/workflow_command/edit_section_header.rb +18 -18
  249. data/lib/ecoportal/api/graphql/input/workflow_command/edit_select_field_option.rb +23 -19
  250. data/lib/ecoportal/api/graphql/input/workflow_command/edit_smart_fill_config.rb +21 -0
  251. data/lib/ecoportal/api/graphql/input/workflow_command/edit_stage.rb +18 -18
  252. data/lib/ecoportal/api/graphql/input/workflow_command/edit_strategy.rb +18 -18
  253. data/lib/ecoportal/api/graphql/input/workflow_command/edit_task_due.rb +18 -18
  254. data/lib/ecoportal/api/graphql/input/workflow_command/edit_template_advanced_settings.rb +19 -0
  255. data/lib/ecoportal/api/graphql/input/workflow_command/edit_template_basic_settings.rb +32 -0
  256. data/lib/ecoportal/api/graphql/input/workflow_command/edit_template_container_uid.rb +45 -0
  257. data/lib/ecoportal/api/graphql/input/workflow_command/{edit_page_creator_permissions.rb → edit_template_creator_permissions.rb} +3 -2
  258. data/lib/ecoportal/api/graphql/input/workflow_command/edit_template_descriptions.rb +19 -0
  259. data/lib/ecoportal/api/graphql/input/workflow_command/edit_trigger.rb +18 -18
  260. data/lib/ecoportal/api/graphql/input/workflow_command/expand_section.rb +18 -18
  261. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/action_list.rb +31 -0
  262. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/contractor_entities.rb +28 -24
  263. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/cross_reference.rb +9 -1
  264. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/date.rb +15 -2
  265. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/file.rb +21 -0
  266. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/gauge.rb +20 -20
  267. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/image_gallery.rb +3 -2
  268. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/location_field.rb +24 -24
  269. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/people.rb +27 -3
  270. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/plain_text.rb +9 -2
  271. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/rich_text.rb +3 -2
  272. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/select.rb +3 -2
  273. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/signature.rb +20 -20
  274. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/table.rb +25 -25
  275. data/lib/ecoportal/api/graphql/input/workflow_command/manage_copy_page_configuration.rb +47 -0
  276. data/lib/ecoportal/api/graphql/input/workflow_command/move_field.rb +3 -2
  277. data/lib/ecoportal/api/graphql/input/workflow_command/move_stage.rb +18 -18
  278. data/lib/ecoportal/api/graphql/input/workflow_command/move_viewable_field.rb +33 -0
  279. data/lib/ecoportal/api/graphql/input/workflow_command/remove_action_tag.rb +18 -18
  280. data/lib/ecoportal/api/graphql/input/workflow_command/remove_binding.rb +18 -18
  281. data/lib/ecoportal/api/graphql/input/workflow_command/remove_callback.rb +18 -18
  282. data/lib/ecoportal/api/graphql/input/workflow_command/remove_checklist_field_item.rb +19 -0
  283. data/lib/ecoportal/api/graphql/input/workflow_command/remove_comment_tagging_user_group.rb +18 -18
  284. data/lib/ecoportal/api/graphql/input/workflow_command/remove_default_direct_strategy_user.rb +18 -18
  285. data/lib/ecoportal/api/graphql/input/workflow_command/remove_default_strategy.rb +18 -18
  286. data/lib/ecoportal/api/graphql/input/workflow_command/remove_direct_strategy_user.rb +18 -18
  287. data/lib/ecoportal/api/graphql/input/workflow_command/remove_field.rb +18 -18
  288. data/lib/ecoportal/api/graphql/input/workflow_command/remove_force.rb +18 -18
  289. data/lib/ecoportal/api/graphql/input/workflow_command/remove_linked_helper.rb +18 -18
  290. data/lib/ecoportal/api/graphql/input/workflow_command/remove_operation.rb +18 -18
  291. data/lib/ecoportal/api/graphql/input/workflow_command/remove_operation_direct_strategy_user.rb +18 -18
  292. data/lib/ecoportal/api/graphql/input/workflow_command/remove_operation_strategy.rb +18 -18
  293. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_action_type.rb +18 -18
  294. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_filter.rb +18 -18
  295. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_people_field.rb +18 -18
  296. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_task_config.rb +18 -18
  297. data/lib/ecoportal/api/graphql/input/workflow_command/remove_recipient_user.rb +18 -18
  298. data/lib/ecoportal/api/graphql/input/workflow_command/remove_scheduled_callback.rb +18 -18
  299. data/lib/ecoportal/api/graphql/input/workflow_command/remove_section.rb +18 -18
  300. data/lib/ecoportal/api/graphql/input/workflow_command/remove_smart_fill_config.rb +19 -0
  301. data/lib/ecoportal/api/graphql/input/workflow_command/remove_stage.rb +18 -18
  302. data/lib/ecoportal/api/graphql/input/workflow_command/remove_stage_section.rb +18 -18
  303. data/lib/ecoportal/api/graphql/input/workflow_command/remove_stage_tag.rb +18 -18
  304. data/lib/ecoportal/api/graphql/input/workflow_command/remove_strategy.rb +18 -18
  305. data/lib/ecoportal/api/graphql/input/workflow_command/remove_task.rb +18 -18
  306. data/lib/ecoportal/api/graphql/input/workflow_command/remove_task_assignment_user_group.rb +18 -18
  307. data/lib/ecoportal/api/graphql/input/workflow_command/remove_task_due.rb +18 -18
  308. data/lib/ecoportal/api/graphql/input/workflow_command/remove_task_priority_level.rb +18 -18
  309. data/lib/ecoportal/api/graphql/input/workflow_command/remove_viewable_field.rb +21 -0
  310. data/lib/ecoportal/api/graphql/input/workflow_command/reorder_forces.rb +3 -2
  311. data/lib/ecoportal/api/graphql/input/workflow_command/reorder_section.rb +3 -2
  312. data/lib/ecoportal/api/graphql/input/workflow_command.rb +46 -5
  313. data/lib/ecoportal/api/graphql/input.rb +1 -0
  314. data/lib/ecoportal/api/graphql/interface/base_page.rb +50 -3
  315. data/lib/ecoportal/api/graphql/interface/location_structure/command.rb +2 -1
  316. data/lib/ecoportal/api/graphql/interface/location_structure/node.rb +43 -43
  317. data/lib/ecoportal/api/graphql/interface/location_structure.rb +14 -14
  318. data/lib/ecoportal/api/graphql/interface.rb +11 -11
  319. data/lib/ecoportal/api/graphql/logic/base_model.rb +15 -15
  320. data/lib/ecoportal/api/graphql/logic/base_query.rb +260 -193
  321. data/lib/ecoportal/api/graphql/logic/connection.rb +17 -0
  322. data/lib/ecoportal/api/graphql/logic/input.rb +127 -0
  323. data/lib/ecoportal/api/graphql/logic/mutation.rb +59 -59
  324. data/lib/ecoportal/api/graphql/logic/payload.rb +42 -42
  325. data/lib/ecoportal/api/graphql/logic/query.rb +23 -23
  326. data/lib/ecoportal/api/graphql/logic/query_array.rb +30 -30
  327. data/lib/ecoportal/api/graphql/logic/query_connection.rb +48 -48
  328. data/lib/ecoportal/api/graphql/logic.rb +18 -18
  329. data/lib/ecoportal/api/graphql/model/account.rb +15 -15
  330. data/lib/ecoportal/api/graphql/model/action.rb +22 -22
  331. data/lib/ecoportal/api/graphql/model/action_event.rb +14 -0
  332. data/lib/ecoportal/api/graphql/model/action_event_page.rb +10 -0
  333. data/lib/ecoportal/api/graphql/model/activity.rb +14 -0
  334. data/lib/ecoportal/api/graphql/model/activity_log.rb +31 -0
  335. data/lib/ecoportal/api/graphql/model/ai_summary_version.rb +10 -10
  336. data/lib/ecoportal/api/graphql/model/auth_log.rb +11 -0
  337. data/lib/ecoportal/api/graphql/model/authorization_result.rb +12 -0
  338. data/lib/ecoportal/api/graphql/model/contractor_entity.rb +12 -12
  339. data/lib/ecoportal/api/graphql/model/field.rb +10 -10
  340. data/lib/ecoportal/api/graphql/model/file_attachment.rb +10 -10
  341. data/lib/ecoportal/api/graphql/model/file_container.rb +11 -11
  342. data/lib/ecoportal/api/graphql/model/location_node.rb +14 -14
  343. data/lib/ecoportal/api/graphql/model/location_structure/draft/structure.rb +15 -15
  344. data/lib/ecoportal/api/graphql/model/location_structure/draft.rb +15 -15
  345. data/lib/ecoportal/api/graphql/model/location_structure.rb +16 -16
  346. data/lib/ecoportal/api/graphql/model/minimal_dashboard.rb +14 -0
  347. data/lib/ecoportal/api/graphql/model/organization.rb +36 -0
  348. data/lib/ecoportal/api/graphql/model/page/basic.rb +14 -14
  349. data/lib/ecoportal/api/graphql/model/page/data_field.rb +12 -12
  350. data/lib/ecoportal/api/graphql/model/page/phased/stage.rb +14 -14
  351. data/lib/ecoportal/api/graphql/model/page/phased.rb +17 -0
  352. data/lib/ecoportal/api/graphql/model/page/section.rb +12 -12
  353. data/lib/ecoportal/api/graphql/model/page_union.rb +21 -21
  354. data/lib/ecoportal/api/graphql/model/pages_workflow.rb +20 -20
  355. data/lib/ecoportal/api/graphql/model/permissions.rb +179 -0
  356. data/lib/ecoportal/api/graphql/model/person_member.rb +7 -0
  357. data/lib/ecoportal/api/graphql/model/person_member_changelog.rb +15 -0
  358. data/lib/ecoportal/api/graphql/model/preset_view.rb +10 -10
  359. data/lib/ecoportal/api/graphql/model/preview_page.rb +10 -10
  360. data/lib/ecoportal/api/graphql/model/register.rb +10 -10
  361. data/lib/ecoportal/api/graphql/model/resource.rb +13 -13
  362. data/lib/ecoportal/api/graphql/model/template/change_log_entry.rb +19 -0
  363. data/lib/ecoportal/api/graphql/model/template.rb +4 -1
  364. data/lib/ecoportal/api/graphql/model/user.rb +14 -14
  365. data/lib/ecoportal/api/graphql/model.rb +9 -0
  366. data/lib/ecoportal/api/graphql/mutation/action/archive.rb +41 -41
  367. data/lib/ecoportal/api/graphql/mutation/action/create.rb +40 -40
  368. data/lib/ecoportal/api/graphql/mutation/action/update.rb +40 -40
  369. data/lib/ecoportal/api/graphql/mutation/action.rb +14 -14
  370. data/lib/ecoportal/api/graphql/mutation/ai_summary/generate.rb +21 -11
  371. data/lib/ecoportal/api/graphql/mutation/ai_summary/submit_feedback.rb +26 -11
  372. data/lib/ecoportal/api/graphql/mutation/ai_summary.rb +13 -13
  373. data/lib/ecoportal/api/graphql/mutation/contractor_entity/create.rb +40 -40
  374. data/lib/ecoportal/api/graphql/mutation/contractor_entity/destroy.rb +40 -40
  375. data/lib/ecoportal/api/graphql/mutation/contractor_entity/update.rb +40 -40
  376. data/lib/ecoportal/api/graphql/mutation/contractor_entity/update_manager_settings.rb +37 -0
  377. data/lib/ecoportal/api/graphql/mutation/contractor_entity.rb +1 -0
  378. data/lib/ecoportal/api/graphql/mutation/file_container/upload.rb +78 -0
  379. data/lib/ecoportal/api/graphql/mutation/file_container.rb +15 -0
  380. data/lib/ecoportal/api/graphql/mutation/location_structure/apply_commands.rb +54 -54
  381. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/add_commands.rb +55 -55
  382. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/create.rb +54 -54
  383. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/delete.rb +43 -43
  384. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/drop_bad_commands.rb +56 -56
  385. data/lib/ecoportal/api/graphql/mutation/location_structure/draft/publish.rb +66 -66
  386. data/lib/ecoportal/api/graphql/mutation/location_structure/draft.rb +18 -18
  387. data/lib/ecoportal/api/graphql/mutation/location_structure.rb +13 -13
  388. data/lib/ecoportal/api/graphql/mutation/page/approve_review_task.rb +1 -1
  389. data/lib/ecoportal/api/graphql/mutation/page/archive.rb +40 -40
  390. data/lib/ecoportal/api/graphql/mutation/page/batch_update_review_task.rb +1 -1
  391. data/lib/ecoportal/api/graphql/mutation/page/build_from_template.rb +50 -50
  392. data/lib/ecoportal/api/graphql/mutation/page/create_draft.rb +1 -1
  393. data/lib/ecoportal/api/graphql/mutation/page/create_from_template.rb +43 -43
  394. data/lib/ecoportal/api/graphql/mutation/page/delete_draft.rb +1 -1
  395. data/lib/ecoportal/api/graphql/mutation/page/publish_draft.rb +1 -1
  396. data/lib/ecoportal/api/graphql/mutation/page/reject_review_task.rb +1 -1
  397. data/lib/ecoportal/api/graphql/mutation/page/restart_review_task.rb +1 -1
  398. data/lib/ecoportal/api/graphql/mutation/page/unarchive.rb +40 -40
  399. data/lib/ecoportal/api/graphql/mutation/page/undo_review_task.rb +1 -1
  400. data/lib/ecoportal/api/graphql/mutation/page/update.rb +40 -40
  401. data/lib/ecoportal/api/graphql/mutation/page.rb +28 -28
  402. data/lib/ecoportal/api/graphql/mutation/preset_view/create.rb +35 -35
  403. data/lib/ecoportal/api/graphql/mutation/preset_view/destroy.rb +1 -1
  404. data/lib/ecoportal/api/graphql/mutation/preset_view/permission.rb +37 -37
  405. data/lib/ecoportal/api/graphql/mutation/preset_view/update.rb +35 -35
  406. data/lib/ecoportal/api/graphql/mutation/preset_view.rb +15 -15
  407. data/lib/ecoportal/api/graphql/mutation/register/create.rb +35 -35
  408. data/lib/ecoportal/api/graphql/mutation/register/destroy.rb +1 -1
  409. data/lib/ecoportal/api/graphql/mutation/register/update.rb +35 -35
  410. data/lib/ecoportal/api/graphql/mutation/register.rb +14 -14
  411. data/lib/ecoportal/api/graphql/mutation/template/update_related_page.rb +79 -0
  412. data/lib/ecoportal/api/graphql/mutation/template.rb +1 -0
  413. data/lib/ecoportal/api/graphql/mutation.rb +1 -1
  414. data/lib/ecoportal/api/graphql/payload/action/archive.rb +13 -13
  415. data/lib/ecoportal/api/graphql/payload/action/create.rb +13 -13
  416. data/lib/ecoportal/api/graphql/payload/action/update.rb +13 -13
  417. data/lib/ecoportal/api/graphql/payload/action.rb +14 -14
  418. data/lib/ecoportal/api/graphql/payload/ai_summary_generate.rb +12 -12
  419. data/lib/ecoportal/api/graphql/payload/contractor_entity/create.rb +13 -13
  420. data/lib/ecoportal/api/graphql/payload/contractor_entity/destroy.rb +12 -12
  421. data/lib/ecoportal/api/graphql/payload/contractor_entity/manager_settings.rb +20 -0
  422. data/lib/ecoportal/api/graphql/payload/contractor_entity/update.rb +12 -12
  423. data/lib/ecoportal/api/graphql/payload/contractor_entity.rb +1 -0
  424. data/lib/ecoportal/api/graphql/payload/kickstand/bulk_update_jobs.rb +2 -2
  425. data/lib/ecoportal/api/graphql/payload/kickstand/bulk_update_workflows.rb +2 -2
  426. data/lib/ecoportal/api/graphql/payload/location_structure/apply_commands.rb +51 -51
  427. data/lib/ecoportal/api/graphql/payload/location_structure/command_execution_result.rb +50 -50
  428. data/lib/ecoportal/api/graphql/payload/location_structure/draft/add_commands.rb +30 -30
  429. data/lib/ecoportal/api/graphql/payload/location_structure/draft/delete.rb +30 -30
  430. data/lib/ecoportal/api/graphql/payload/location_structure/draft/drop_bad_commands.rb +43 -43
  431. data/lib/ecoportal/api/graphql/payload/location_structure/draft/publish.rb +63 -63
  432. data/lib/ecoportal/api/graphql/payload/location_structure/draft.rb +18 -18
  433. data/lib/ecoportal/api/graphql/payload/location_structure.rb +14 -14
  434. data/lib/ecoportal/api/graphql/payload/ok_payload.rb +1 -1
  435. data/lib/ecoportal/api/graphql/payload/page/archive.rb +13 -13
  436. data/lib/ecoportal/api/graphql/payload/page/build_from_template.rb +13 -13
  437. data/lib/ecoportal/api/graphql/payload/page/create_from_template.rb +13 -13
  438. data/lib/ecoportal/api/graphql/payload/page/draft.rb +1 -1
  439. data/lib/ecoportal/api/graphql/payload/page/review_task.rb +1 -1
  440. data/lib/ecoportal/api/graphql/payload/page/unarchive.rb +13 -13
  441. data/lib/ecoportal/api/graphql/payload/page/update.rb +13 -13
  442. data/lib/ecoportal/api/graphql/payload/preset_view.rb +1 -1
  443. data/lib/ecoportal/api/graphql/payload/register.rb +1 -1
  444. data/lib/ecoportal/api/graphql/payload/template/update_related_page.rb +15 -0
  445. data/lib/ecoportal/api/graphql/payload/template.rb +1 -0
  446. data/lib/ecoportal/api/graphql/payload/upload.rb +12 -0
  447. data/lib/ecoportal/api/graphql/payload.rb +1 -0
  448. data/lib/ecoportal/api/graphql/query/action.rb +33 -33
  449. data/lib/ecoportal/api/graphql/query/action_categories.rb +53 -53
  450. data/lib/ecoportal/api/graphql/query/actions.rb +43 -43
  451. data/lib/ecoportal/api/graphql/query/activity_logs.rb +78 -0
  452. data/lib/ecoportal/api/graphql/query/auth_logs.rb +51 -0
  453. data/lib/ecoportal/api/graphql/query/contractor_entities.rb +53 -53
  454. data/lib/ecoportal/api/graphql/query/dashboard_search.rb +57 -0
  455. data/lib/ecoportal/api/graphql/query/file_upload_signature.rb +76 -76
  456. data/lib/ecoportal/api/graphql/query/location_classifications.rb +39 -39
  457. data/lib/ecoportal/api/graphql/query/location_structure.rb +2 -0
  458. data/lib/ecoportal/api/graphql/query/location_structures.rb +2 -0
  459. data/lib/ecoportal/api/graphql/query/page.rb +6 -1
  460. data/lib/ecoportal/api/graphql/query/page_activities.rb +56 -0
  461. data/lib/ecoportal/api/graphql/query/page_delta.rb +47 -47
  462. data/lib/ecoportal/api/graphql/query/pages.rb +59 -59
  463. data/lib/ecoportal/api/graphql/query/permissions.rb +35 -0
  464. data/lib/ecoportal/api/graphql/query/person_member_changelogs.rb +53 -0
  465. data/lib/ecoportal/api/graphql/query/person_members.rb +76 -0
  466. data/lib/ecoportal/api/graphql/query/register_preset_views.rb +1 -1
  467. data/lib/ecoportal/api/graphql/query/register_preview_pages.rb +83 -83
  468. data/lib/ecoportal/api/graphql/query/template_change_log.rb +118 -0
  469. data/lib/ecoportal/api/graphql/query/templates.rb +53 -53
  470. data/lib/ecoportal/api/graphql/query.rb +8 -0
  471. data/lib/ecoportal/api/graphql_version.rb +1 -1
  472. data/lib/ecoportal/api-graphql.rb +10 -10
  473. metadata +82 -19
  474. data/lib/ecoportal/api/common/graphql/CLAUDE.md +0 -36
  475. data/lib/ecoportal/api/common/graphql/model/CLAUDE.md +0 -28
  476. data/lib/ecoportal/api/graphql/CLAUDE.md +0 -37
  477. data/lib/ecoportal/api/graphql/base/CLAUDE.md +0 -50
  478. data/lib/ecoportal/api/graphql/builder/CLAUDE.md +0 -65
  479. data/lib/ecoportal/api/graphql/input/workflow_command/edit_page.rb +0 -28
  480. data/lib/ecoportal/api/graphql/mutation/smart_fill/generate.rb +0 -36
  481. data/lib/ecoportal/api/graphql/mutation/smart_fill/submit_feedback.rb +0 -40
  482. data/lib/ecoportal/api/graphql/mutation/smart_fill.rb +0 -13
@@ -7,6 +7,7 @@ module Ecoportal
7
7
  require_relative 'diffable/hash_diff_nesting'
8
8
  require_relative 'diffable/classic_diff_service'
9
9
  require_relative 'diffable/diff_service'
10
+ require_relative 'diffable/leaf_diff_service'
10
11
 
11
12
  DIFF_CLASS = DiffService
12
13
 
@@ -1,17 +1,17 @@
1
- module Ecoportal
2
- module API
3
- module Common
4
- module GraphQL
5
- class Model < Ecoportal::API::Common::Content::DoubleModel
6
- require 'ecoportal/api/common/graphql/model/diffable'
7
- require 'ecoportal/api/common/graphql/model/as_input'
8
-
9
- include Ecoportal::API::Common::GraphQL::ClassHelpers
10
-
11
- include Diffable
12
- include AsInput
13
- end
14
- end
15
- end
16
- end
17
- end
1
+ module Ecoportal
2
+ module API
3
+ module Common
4
+ module GraphQL
5
+ class Model < Ecoportal::API::Common::Content::DoubleModel
6
+ require 'ecoportal/api/common/graphql/model/diffable'
7
+ require 'ecoportal/api/common/graphql/model/as_input'
8
+
9
+ include Ecoportal::API::Common::GraphQL::ClassHelpers
10
+
11
+ include Diffable
12
+ include AsInput
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -1 +1 @@
1
- #require_relative 'patches/query'
1
+ #require_relative 'patches/query'
@@ -1,45 +1,45 @@
1
- module Ecoportal
2
- module API
3
- module Common
4
- module GraphQL
5
- module QueryIntegration
6
- include Ecoportal::API::Common::GraphQL::ClassHelpers::ClassMethods
7
-
8
- attr_accessor :client
9
- attr_reader :path
10
-
11
- # @!macro [attach] query
12
- # @method $1
13
- # The $1 query integration
14
- # @return [Collection::$1, $1]
15
- # @return [Connection::$1, $1]
16
- def query(method, query_klass:, subpath: [])
17
- method = method.to_sym
18
- class_method = :"#{method}_query_class"
19
-
20
- define_method(method) do |**kargs, &block|
21
- if kargs.empty? && !block_given?
22
- method(class_method).call
23
- else
24
- method(class_method).call.query(**kargs, &block)
25
- end
26
- end
27
-
28
- define_method(class_method) do
29
- final_path = path + [subpath].flatten.compact
30
-
31
- resolve_class(query_klass).tap do |klass|
32
- next if klass <= Ecoportal::API::GraphQL::Logic::BaseQuery
33
-
34
- msg = "Expected query_klass to be of type Ecoportal::API::GraphQL::Logic::BaseQuery. "
35
- msg << "Given: #{klass}"
36
- raise msg
37
- end.new(client, base_path: final_path)
38
- end
39
- private class_method
40
- end
41
- end
42
- end
43
- end
44
- end
45
- end
1
+ module Ecoportal
2
+ module API
3
+ module Common
4
+ module GraphQL
5
+ module QueryIntegration
6
+ include Ecoportal::API::Common::GraphQL::ClassHelpers::ClassMethods
7
+
8
+ attr_accessor :client
9
+ attr_reader :path
10
+
11
+ # @!macro [attach] query
12
+ # @method $1
13
+ # The $1 query integration
14
+ # @return [Collection::$1, $1]
15
+ # @return [Connection::$1, $1]
16
+ def query(method, query_klass:, subpath: [])
17
+ method = method.to_sym
18
+ class_method = :"#{method}_query_class"
19
+
20
+ define_method(method) do |**kargs, &block|
21
+ if kargs.empty? && !block_given?
22
+ method(class_method).call
23
+ else
24
+ method(class_method).call.query(**kargs, &block)
25
+ end
26
+ end
27
+
28
+ define_method(class_method) do
29
+ final_path = path + [subpath].flatten.compact
30
+
31
+ resolve_class(query_klass).tap do |klass|
32
+ next if klass <= Ecoportal::API::GraphQL::Logic::BaseQuery
33
+
34
+ msg = "Expected query_klass to be of type Ecoportal::API::GraphQL::Logic::BaseQuery. "
35
+ msg << "Given: #{klass}"
36
+ raise msg
37
+ end.new(client, base_path: final_path)
38
+ end
39
+ private class_method
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -1,16 +1,16 @@
1
- module Ecoportal
2
- module API
3
- module Common
4
- module GraphQL
5
- end
6
- end
7
- end
8
- end
9
-
10
- require 'ecoportal/api/common/graphql/auth_service'
11
- require 'ecoportal/api/common/graphql/http_client'
12
- require 'ecoportal/api/common/graphql/client'
13
- require 'ecoportal/api/common/graphql/class_helpers'
14
- require 'ecoportal/api/common/graphql/hash_helpers'
15
- require 'ecoportal/api/common/graphql/model'
16
- require 'ecoportal/api/common/graphql/query_integration'
1
+ module Ecoportal
2
+ module API
3
+ module Common
4
+ module GraphQL
5
+ end
6
+ end
7
+ end
8
+ end
9
+
10
+ require 'ecoportal/api/common/graphql/auth_service'
11
+ require 'ecoportal/api/common/graphql/http_client'
12
+ require 'ecoportal/api/common/graphql/client'
13
+ require 'ecoportal/api/common/graphql/class_helpers'
14
+ require 'ecoportal/api/common/graphql/hash_helpers'
15
+ require 'ecoportal/api/common/graphql/model'
16
+ require 'ecoportal/api/common/graphql/query_integration'
@@ -1,8 +1,8 @@
1
- module Ecoportal
2
- module API
3
- module Common
4
- end
5
- end
6
- end
7
-
8
- require_relative 'common/graphql'
1
+ module Ecoportal
2
+ module API
3
+ module Common
4
+ end
5
+ end
6
+ end
7
+
8
+ require_relative 'common/graphql'
@@ -29,7 +29,7 @@ module Ecoportal
29
29
  embeds_one :createdAt, klass: Base::DateTime
30
30
  embeds_one :updatedAt, klass: Base::DateTime
31
31
  embeds_one :completedAt, klass: Base::DateTime
32
- embeds_one :openededAt, klass: Base::DateTime
32
+ embeds_one :openedAt, klass: Base::DateTime
33
33
  embeds_one :closedAt, klass: Base::DateTime
34
34
  embeds_one :dueOrClosedDate, klass: Base::DateTime
35
35
 
@@ -1,15 +1,15 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Base
5
- class ActionCategory < Logic::BaseModel
6
- root!
7
-
8
- passkey :id
9
- passthrough :name, :value, :weight
10
- passboolean :archived
11
- end
12
- end
13
- end
14
- end
15
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ class ActionCategory < Logic::BaseModel
6
+ root!
7
+
8
+ passkey :id
9
+ passthrough :name, :value, :weight
10
+ passboolean :archived
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,23 @@
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ # A scheduled/recurring occurrence of an action (calendar-style event view).
6
+ # Read-only. `occursAt` is an ISO8601 timestamp scalar (a plain string),
7
+ # not the `{ dateTime:, timeZone: }` DateTime object used elsewhere.
8
+ #
9
+ # status is exposed as a plain string ('open' | 'closed').
10
+ class ActionEvent < Logic::BaseModel
11
+ read_only!
12
+
13
+ passkey :id
14
+ passthrough :uid
15
+ passthrough :title, :subtitle, :description
16
+ passthrough :status, :relativeStatus
17
+ passthrough :occursAt
18
+ passboolean :archived, :recurring, :standaloneAction
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,16 @@
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ # The page (and stages) an ActionEvent is attached to. Read-only.
6
+ class ActionEventPage < Logic::BaseModel
7
+ read_only!
8
+
9
+ passkey :id
10
+ passthrough :name, :fieldId
11
+ passarray :stageIds
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,38 @@
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ # A single entry of a page's activity/history feed, returned by
6
+ # `page.activities` (ActivityInterfaceConnection). Read-only.
7
+ #
8
+ # `ActivityInterface` is an INTERFACE with ~61 concrete implementations
9
+ # (ActivityPageChangelog, ActivityComment, ActivityStageAssigned,
10
+ # ActivityCreated, ActivityEmailOut, ActivityFallback, ...). Rather than
11
+ # hand-model all of them, this captures the fields COMMON to the interface
12
+ # and passes the concrete `__typename` through so callers can branch on it.
13
+ #
14
+ # Enum-valued fields are exposed as plain strings:
15
+ # - priority: PriorityEnum
16
+ class Activity < Logic::BaseModel
17
+ read_only!
18
+
19
+ passkey :id
20
+ # Concrete type name (e.g. 'ActivityPageChangelog', 'ActivityComment', 'ActivityFallback').
21
+ passthrough :__typename
22
+ passthrough :priority
23
+ passthrough :stageId
24
+ passthrough :timeZone
25
+ # Origin of the activity — sourceId/sourceName are scalars; the polymorphic
26
+ # `source: SourceUnion` (BasicPage|PhasedPage) subtree is intentionally omitted.
27
+ passthrough :sourceId, :sourceName
28
+ passthrough :userId, :userEmail, :userName
29
+ passarray :categories, :subkey
30
+ passboolean :system, :fromPublicTemplate
31
+
32
+ embeds_one :createdAt, klass: Base::DateTime
33
+ embeds_one :updatedAt, klass: Base::DateTime
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,38 @@
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ # A single "System Access Log" entry, returned by
6
+ # `currentOrganization.activityLogs` (ActivityLogUnionConnection). Read-only.
7
+ #
8
+ # `ActivityLogUnion` is a UNION over 9 members:
9
+ # DashboardAccess, DashboardCreate, DashboardDelete, DashboardUpdate,
10
+ # DeniedDashboardAccess, DeniedPageAccess, FileDownload, PageAccess,
11
+ # ScimIntegrationAccess.
12
+ # This models the field set COMMON to ALL members and passes the concrete
13
+ # `__typename` through. The Dashboard* members additionally expose
14
+ # `parentResource*` + `resource` (see Model::ActivityLog); page/file/scim
15
+ # members do not, so those live on the Model subclass as nullable embeds.
16
+ #
17
+ # Enum-valued fields are exposed as plain strings:
18
+ # - resourceType: ResourceTypesEnum
19
+ class ActivityLog < Logic::BaseModel
20
+ read_only!
21
+
22
+ passkey :id
23
+ # Concrete member type (e.g. 'DashboardAccess', 'PageAccess', 'FileDownload').
24
+ passthrough :__typename
25
+ passthrough :activityType
26
+ passthrough :source
27
+ passthrough :userType
28
+ passthrough :accountStatus
29
+ passthrough :becomingEmail
30
+ # content: Hash! — free-form activity payload; passed through as a Hash.
31
+ passthrough :content
32
+ passthrough :resourceId, :resourceName, :resourceType
33
+ embeds_one :createdAt, klass: Base::DateTime
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -1,15 +1,20 @@
1
- module Ecoportal
1
+ module Ecoportal
2
2
  module API
3
3
  class GraphQL
4
4
  module Base
5
- # Represents one generation version of an AiSummary field.
6
- # Returned by generateAiSummary — tracks the prompt, output, token usage, and status.
5
+ # One generation version of an AI page summary — the `item` of `generatePageSummary`.
6
+ #
7
+ # ★ Corrected 2026-07-30 against the live schema. The previous declarations (`prompt`,
8
+ # `inputTokens`, `outputTokens`, `totalTokens`, `resourceType`, `ratings`) do not exist on
9
+ # `AiSummaryVersion` and always read nil. The real fields are: aiSummary, alreadyRated,
10
+ # createdAt, dataFieldLogs, generationErrors, id, pagePatchVer, status.
11
+ #
12
+ # `dataFieldLogs` / `generationErrors` / `createdAt` are left unmodelled until their own
13
+ # shapes are verified — select and model them deliberately rather than by assumption.
7
14
  class AiSummaryVersion < Logic::BaseModel
8
- passkey :id
9
- passthrough :aiSummary, :status, :prompt
10
- passthrough :inputTokens, :outputTokens, :totalTokens
11
- passthrough :resourceType # "field" | "stage" | "page"
12
- passarray :ratings # [[user_id, score], ...]
15
+ passkey :id
16
+ passthrough :aiSummary, :status, :pagePatchVer
17
+ passboolean :alreadyRated
13
18
  end
14
19
  end
15
20
  end
@@ -0,0 +1,24 @@
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ # System access log entry (SCIM / security auditing), returned by
6
+ # `Organization.authLogs`. Read-only.
7
+ #
8
+ # Enum-valued fields are exposed as plain strings:
9
+ # - event: 'LOGIN' | 'LOGOUT' | 'PASSWORD_CHANGE' | 'PASSWORD_RESET_REQUEST'
10
+ # - loginMethod: 'PASSWORD' | 'SAML' | 'MAGIC_LINK' | 'REDIRECT' | 'OAUTH'
11
+ # - source: 'WEB' | 'MOBILE'
12
+ class AuthLog < Logic::BaseModel
13
+ read_only!
14
+
15
+ passkey :id
16
+ passthrough :event, :source
17
+ passthrough :loginMethod
18
+ passthrough :host, :ipAddress, :referrer, :userAgent
19
+ embeds_one :createdAt, klass: Base::DateTime
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,20 @@
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ # AuthorizationResult — the result of a permission / ability check (a `canXXX` field).
6
+ # value: Boolean! — whether the action is allowed
7
+ # message: String — human-readable reason when denied
8
+ # reasons: FailureReasons — structured reasons (not modelled here; omitted from the
9
+ # :AuthorizationResult fragment to avoid pulling that subtree).
10
+ # Reusable node type behind the schema's many `canXXX: AuthorizationResult` fields.
11
+ class AuthorizationResult < Logic::BaseModel
12
+ read_only!
13
+
14
+ passboolean :value
15
+ passthrough :message
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -3,7 +3,13 @@ module Ecoportal
3
3
  class GraphQL
4
4
  module Base
5
5
  class ContractorEntity
6
+ # Convenience mutators over the read-model `associatedPeopleIds` / `leadContractorIds`
7
+ # arrays. They push/delete plain ids so that `Input::ContractorEntity::Update.from_model`
8
+ # can later emit the IdDiff (additions/removals) against `original_doc`.
6
9
  module MemberChanges
10
+ # Associates one or more people. When `lead: true`, also marks them as leads.
11
+ # @param values [Array<String, Hash, Person, Enumerable>] ids (or things resolvable to ids).
12
+ # @param lead [Boolean] whether the associated people are also lead contractors.
7
13
  def associate(*values, lead: false)
8
14
  ids = to_person_ids(*values)
9
15
 
@@ -15,7 +21,9 @@ module Ecoportal
15
21
  end
16
22
  end
17
23
 
18
- def dissassociate(*values)
24
+ # Disassociates one or more people (also removing them as leads).
25
+ # @param values [Array<String, Hash, Person, Enumerable>] ids (or resolvable to ids).
26
+ def disassociate(*values)
19
27
  ids = to_person_ids(*values)
20
28
 
21
29
  associatedPeopleIds.tap do |associated|
@@ -23,7 +31,10 @@ module Ecoportal
23
31
  associated.delete!(*ids)
24
32
  end
25
33
  end
34
+ # @deprecated Backwards-compatible alias for the original misspelling.
35
+ alias_method :dissassociate, :disassociate
26
36
 
37
+ # Marks one or more people as lead contractors (associating them if not already).
27
38
  def lead!(*values)
28
39
  ids = to_person_ids(*values)
29
40
 
@@ -33,6 +44,7 @@ module Ecoportal
33
44
  end
34
45
  end
35
46
 
47
+ # Removes one or more people from the lead contractors list.
36
48
  def unlead!(*values)
37
49
  ids = to_person_ids(*values)
38
50
 
@@ -44,7 +56,7 @@ module Ecoportal
44
56
  private
45
57
 
46
58
  def to_person_ids(*values)
47
- to_person_id(values.flatten)
59
+ Array(to_person_id(values.flatten)).flatten.compact
48
60
  end
49
61
 
50
62
  def to_person_id(value)
@@ -54,9 +66,9 @@ module Ecoportal
54
66
  when Ecoportal::API::V1::Person
55
67
  value.id
56
68
  when Hash
57
- to_person_id(['id'])
58
- when Enumarable
59
- value.map {|val| to_person_id(val)}.compact
69
+ value['id'] || value[:id]
70
+ when Enumerable
71
+ value.map { |val| to_person_id(val) }.compact
60
72
  end
61
73
  end
62
74
  end
@@ -1,24 +1,24 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Base
5
- class ContractorEntity < Logic::BaseModel
6
- require 'ecoportal/api/graphql/base/contractor_entity/member_changes'
7
-
8
- include MemberChanges
9
-
10
- root!
11
-
12
- passkey :id
13
- passthrough :externalId
14
- passthrough :name
15
- passboolean :active, :approved
16
- passthrough :schemaId
17
-
18
- passarray :associatedPeopleIds, :leadContractorIds
19
- embeds_one :creator, klass: 'Ecoportal::API::GraphQL::Model::User'
20
- end
21
- end
22
- end
23
- end
24
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ class ContractorEntity < Logic::BaseModel
6
+ require 'ecoportal/api/graphql/base/contractor_entity/member_changes'
7
+
8
+ include MemberChanges
9
+
10
+ root!
11
+
12
+ passkey :id
13
+ passthrough :externalId
14
+ passthrough :name
15
+ passboolean :active, :approved
16
+ passthrough :schemaId
17
+
18
+ passarray :associatedPeopleIds, :leadContractorIds
19
+ embeds_one :creator, klass: 'Ecoportal::API::GraphQL::Model::User'
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -1,12 +1,12 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Base
5
- class DateTime < Logic::BaseModel
6
- passdate :dateTime
7
- passthrough :timeZone
8
- end
9
- end
10
- end
11
- end
12
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ class DateTime < Logic::BaseModel
6
+ passdate :dateTime
7
+ passthrough :timeZone
8
+ end
9
+ end
10
+ end
11
+ end
12
+ end
@@ -1,16 +1,16 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Base
5
- # Result of a pageDelta query for a single page ID.
6
- # delta: 'UPDATED' | 'NOT_FOUND' | 'NEW'
7
- class DeltaResult < Logic::BaseModel
8
- read_only!
9
-
10
- passkey :id
11
- passthrough :delta
12
- end
13
- end
14
- end
15
- end
16
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ # Result of a pageDelta query for a single page ID.
6
+ # delta: 'UPDATED' | 'NOT_FOUND' | 'NEW'
7
+ class DeltaResult < Logic::BaseModel
8
+ read_only!
9
+
10
+ passkey :id
11
+ passthrough :delta
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -1,12 +1,12 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Base
5
- class Field < Logic::BaseModel
6
- passkey :id
7
- passthrough :label
8
- end
9
- end
10
- end
11
- end
12
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ class Field < Logic::BaseModel
6
+ passkey :id
7
+ passthrough :label
8
+ end
9
+ end
10
+ end
11
+ end
12
+ end
@@ -1,15 +1,15 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Base
5
- class FileAttachment < Logic::BaseModel
6
- passkey :id
7
- passthrough :attachmentFileSize, :attachmentFileName, :attachmentContentType
8
- passthrough :urlType, :activeName
9
- passthrough :userId, :userName
10
- embeds_one :attachmentUpdatedAt, klass: Base::DateTime
11
- end
12
- end
13
- end
14
- end
15
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Base
5
+ class FileAttachment < Logic::BaseModel
6
+ passkey :id
7
+ passthrough :attachmentFileSize, :attachmentFileName, :attachmentContentType
8
+ passthrough :urlType, :activeName
9
+ passthrough :userId, :userName
10
+ embeds_one :attachmentUpdatedAt, klass: Base::DateTime
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end