ecoportal-api-graphql 1.3.13 → 1.3.16

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 (275) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +87 -0
  3. data/lib/ecoportal/api/common/graphql/client.rb +0 -2
  4. data/lib/ecoportal/api/common/graphql/http_client.rb +6 -0
  5. data/lib/ecoportal/api/graphql/base/ai_summary_version.rb +17 -17
  6. data/lib/ecoportal/api/graphql/base/file_container.rb +14 -14
  7. data/lib/ecoportal/api/graphql/base/location_classification_type.rb +15 -15
  8. data/lib/ecoportal/api/graphql/base/location_structure.rb +27 -27
  9. data/lib/ecoportal/api/graphql/base/organization.rb +15 -15
  10. data/lib/ecoportal/api/graphql/base/page/task.rb +24 -0
  11. data/lib/ecoportal/api/graphql/base/page.rb +17 -16
  12. data/lib/ecoportal/api/graphql/base/template.rb +35 -0
  13. data/lib/ecoportal/api/graphql/base.rb +37 -35
  14. data/lib/ecoportal/api/graphql/builder/contractor_entity.rb +41 -41
  15. data/lib/ecoportal/api/graphql/compat/response.rb +35 -35
  16. data/lib/ecoportal/api/graphql/connection/action.rb +11 -11
  17. data/lib/ecoportal/api/graphql/connection/action_category.rb +11 -11
  18. data/lib/ecoportal/api/graphql/connection/contractor_entity.rb +11 -11
  19. data/lib/ecoportal/api/graphql/connection/page.rb +11 -11
  20. data/lib/ecoportal/api/graphql/connection/person_member.rb +11 -11
  21. data/lib/ecoportal/api/graphql/connection/preview_page.rb +11 -11
  22. data/lib/ecoportal/api/graphql/connection.rb +17 -17
  23. data/lib/ecoportal/api/graphql/file_upload/client.rb +21 -10
  24. data/lib/ecoportal/api/graphql/fragment/field_configuration.rb +38 -0
  25. data/lib/ecoportal/api/graphql/fragment/force.rb +14 -10
  26. data/lib/ecoportal/api/graphql/fragment/location_node.rb +26 -26
  27. data/lib/ecoportal/api/graphql/fragment/page_task.rb +39 -0
  28. data/lib/ecoportal/api/graphql/fragment/template.rb +51 -0
  29. data/lib/ecoportal/api/graphql/fragment.rb +3 -0
  30. data/lib/ecoportal/api/graphql/input/contractor_entity.rb +14 -14
  31. data/lib/ecoportal/api/graphql/input/preset_view/update.rb +16 -16
  32. data/lib/ecoportal/api/graphql/input/workflow_command/add_stage.rb +18 -18
  33. data/lib/ecoportal/api/graphql/input/workflow_command/edit_field_configuration.rb +21 -21
  34. data/lib/ecoportal/api/graphql/input/workflow_command/edit_page.rb +28 -28
  35. data/lib/ecoportal/api/graphql/input/workflow_command/edit_page_creator_permissions.rb +18 -18
  36. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/cross_reference.rb +23 -23
  37. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/date.rb +20 -20
  38. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/image_gallery.rb +20 -20
  39. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/people.rb +24 -24
  40. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/plain_text.rb +20 -20
  41. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/rich_text.rb +20 -20
  42. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/select.rb +20 -20
  43. data/lib/ecoportal/api/graphql/input/workflow_command/move_field.rb +18 -18
  44. data/lib/ecoportal/api/graphql/input/workflow_command/reorder_forces.rb +18 -18
  45. data/lib/ecoportal/api/graphql/input/workflow_command/reorder_section.rb +18 -18
  46. data/lib/ecoportal/api/graphql/input/workflow_command.rb +251 -251
  47. data/lib/ecoportal/api/graphql/input.rb +24 -24
  48. data/lib/ecoportal/api/graphql/logic/connection.rb +34 -34
  49. data/lib/ecoportal/api/graphql/model/page/task.rb +16 -0
  50. data/lib/ecoportal/api/graphql/model/page.rb +16 -15
  51. data/lib/ecoportal/api/graphql/model/person_member.rb +15 -15
  52. data/lib/ecoportal/api/graphql/model/template.rb +15 -0
  53. data/lib/ecoportal/api/graphql/model.rb +32 -30
  54. data/lib/ecoportal/api/graphql/mutation/ai_summary/generate.rb +45 -45
  55. data/lib/ecoportal/api/graphql/mutation/ai_summary/submit_feedback.rb +40 -40
  56. data/lib/ecoportal/api/graphql/mutation/contractor_entity.rb +14 -14
  57. data/lib/ecoportal/api/graphql/mutation/page/approve_review_task.rb +40 -40
  58. data/lib/ecoportal/api/graphql/mutation/page/batch_update_review_task.rb +38 -40
  59. data/lib/ecoportal/api/graphql/mutation/page/create_draft.rb +38 -40
  60. data/lib/ecoportal/api/graphql/mutation/page/delete_draft.rb +38 -40
  61. data/lib/ecoportal/api/graphql/mutation/page/execute_force_commands.rb +7 -7
  62. data/lib/ecoportal/api/graphql/mutation/page/execute_workflow_commands.rb +8 -7
  63. data/lib/ecoportal/api/graphql/mutation/page/publish_draft.rb +38 -40
  64. data/lib/ecoportal/api/graphql/mutation/page/reject_review_task.rb +40 -40
  65. data/lib/ecoportal/api/graphql/mutation/page/restart_review_task.rb +40 -40
  66. data/lib/ecoportal/api/graphql/mutation/page/undo_review_task.rb +40 -40
  67. data/lib/ecoportal/api/graphql/mutation/preset_view/destroy.rb +34 -35
  68. data/lib/ecoportal/api/graphql/mutation/register/destroy.rb +35 -35
  69. data/lib/ecoportal/api/graphql/mutation/smart_fill/generate.rb +36 -36
  70. data/lib/ecoportal/api/graphql/mutation/smart_fill/submit_feedback.rb +40 -40
  71. data/lib/ecoportal/api/graphql/mutation/smart_fill.rb +13 -13
  72. data/lib/ecoportal/api/graphql/mutation/template/create_related_page.rb +46 -46
  73. data/lib/ecoportal/api/graphql/mutation/template/destroy_related_page.rb +1 -1
  74. data/lib/ecoportal/api/graphql/mutation/template/update_information.rb +1 -1
  75. data/lib/ecoportal/api/graphql/mutation.rb +20 -20
  76. data/lib/ecoportal/api/graphql/payload/contractor_entity.rb +14 -14
  77. data/lib/ecoportal/api/graphql/payload/ok_payload.rb +36 -21
  78. data/lib/ecoportal/api/graphql/payload/page/draft.rb +26 -13
  79. data/lib/ecoportal/api/graphql/payload/page/review_task.rb +13 -13
  80. data/lib/ecoportal/api/graphql/payload/page/review_task_batch.rb +23 -0
  81. data/lib/ecoportal/api/graphql/payload/page.rb +20 -19
  82. data/lib/ecoportal/api/graphql/payload/preset_view.rb +15 -11
  83. data/lib/ecoportal/api/graphql/payload/register.rb +15 -11
  84. data/lib/ecoportal/api/graphql/payload/template/create_related_page.rb +1 -1
  85. data/lib/ecoportal/api/graphql/payload/template/destroy_related_page.rb +1 -1
  86. data/lib/ecoportal/api/graphql/payload/template/update_information.rb +1 -1
  87. data/lib/ecoportal/api/graphql/payload.rb +23 -23
  88. data/lib/ecoportal/api/graphql/query/location_structures.rb +57 -57
  89. data/lib/ecoportal/api/graphql/query/page.rb +45 -45
  90. data/lib/ecoportal/api/graphql/query/page_with_forces.rb +9 -3
  91. data/lib/ecoportal/api/graphql/query/pages_workflow_commands.rb +9 -3
  92. data/lib/ecoportal/api/graphql/query/register_preset_views.rb +78 -78
  93. data/lib/ecoportal/api/graphql/query.rb +27 -27
  94. data/lib/ecoportal/api/graphql.rb +9 -5
  95. data/lib/ecoportal/api/graphql_version.rb +1 -1
  96. metadata +9 -180
  97. data/.ai-assistance/bridge/CLAUDE.md +0 -338
  98. data/.ai-assistance/bridge/archive/.gitkeep +0 -0
  99. data/.ai-assistance/bridge/archive/oscar-a1b2c3d-gitlab-mcp-doc-update.inbox.md +0 -29
  100. data/.ai-assistance/bridge/archive/oscar-a1b2c3d-gitlab-mcp-doc-update.outbox.md +0 -18
  101. data/.ai-assistance/bridge/archive/oscar-c912c25-gemini-design-review.inbox.md +0 -42
  102. data/.ai-assistance/bridge/archive/oscar-c912c25-gemini-design-review.outbox.md +0 -115
  103. data/.ai-assistance/bridge/context/gemini-review-prompt.txt +0 -48
  104. data/.ai-assistance/bridge/context/gemini-review-response.md +0 -104
  105. data/.ai-assistance/bridge/context/project.md +0 -42
  106. data/.ai-assistance/bridge/inbox/.gitkeep +0 -0
  107. data/.ai-assistance/bridge/outbox/.gitkeep +0 -0
  108. data/.ai-assistance/bridge/outbox/request-for-standards-discovery.md +0 -48
  109. data/.ai-assistance/bridge/queue/.gitkeep +0 -1
  110. data/.ai-assistance/capabilities/CLAUDE.md +0 -27
  111. data/.ai-assistance/capabilities/assumptions-log.md +0 -80
  112. data/.ai-assistance/capabilities/code.md +0 -47
  113. data/.ai-assistance/capabilities/connectors.md +0 -37
  114. data/.ai-assistance/capabilities/cowork.md +0 -55
  115. data/.ai-assistance/code/OVERVIEW.md +0 -155
  116. data/.ai-assistance/code/data_fields.md +0 -242
  117. data/.ai-assistance/code/dependencies.md +0 -151
  118. data/.ai-assistance/code/diff_as_input.md +0 -234
  119. data/.ai-assistance/code/diff_pairing_engine.md +0 -243
  120. data/.ai-assistance/code/diff_service_deep_dive.md +0 -192
  121. data/.ai-assistance/code/ecoPortal_architecture/00_overview_and_index.md +0 -55
  122. data/.ai-assistance/code/ecoPortal_architecture/01_terminology_dictionary.md +0 -181
  123. data/.ai-assistance/code/ecoPortal_architecture/02_data_model.md +0 -192
  124. data/.ai-assistance/code/ecoPortal_architecture/03_api_layers.md +0 -147
  125. data/.ai-assistance/code/ecoPortal_architecture/04_graphql_queries_mutations.md +0 -277
  126. data/.ai-assistance/code/ecoPortal_architecture/05_page_workflows.md +0 -200
  127. data/.ai-assistance/code/ecoPortal_architecture/06_search_and_filters.md +0 -228
  128. data/.ai-assistance/code/ecoPortal_architecture/07_data_fields.md +0 -197
  129. data/.ai-assistance/code/ecoPortal_architecture/08_stages_sections.md +0 -243
  130. data/.ai-assistance/code/ecoPortal_architecture/09_people_contractors_locations.md +0 -196
  131. data/.ai-assistance/code/ecoPortal_architecture/10_forces_workflow_builder.md +0 -132
  132. data/.ai-assistance/code/ecoPortal_architecture/11_integration_gems.md +0 -187
  133. data/.ai-assistance/code/ecoPortal_architecture/12_ai_documentation_sources_gaps.md +0 -236
  134. data/.ai-assistance/code/ecoPortal_architecture/13_ai_infrastructure.md +0 -183
  135. data/.ai-assistance/code/ecoportal_schema_reference.md +0 -240
  136. data/.ai-assistance/code/filter_contract_matrix.md +0 -177
  137. data/.ai-assistance/code/graphql_domain_knowledge.md +0 -240
  138. data/.ai-assistance/code/refactoring/datafield-readwrite-shape-asymmetry.md +0 -71
  139. data/.ai-assistance/code/refactoring/opportunities.md +0 -251
  140. data/.ai-assistance/code/schema_analysis.md +0 -321
  141. data/.ai-assistance/code/search_filters.md +0 -868
  142. data/.ai-assistance/code/spec_coverage.md +0 -73
  143. data/.ai-assistance/code/template_diff_pairing_domain.md +0 -175
  144. data/.ai-assistance/code/workflow-command-guide.md +0 -466
  145. data/.ai-assistance/code/workflow-space.md +0 -353
  146. data/.ai-assistance/conventions/CLAUDE.md +0 -30
  147. data/.ai-assistance/conventions/code-working-tree-protocol.md +0 -199
  148. data/.ai-assistance/conventions/gitignore-rules.md +0 -42
  149. data/.ai-assistance/conventions/permission-guidance.md +0 -120
  150. data/.ai-assistance/integrations/README.md +0 -70
  151. data/.ai-assistance/integrations/gitkraken-mcp.md +0 -107
  152. data/.ai-assistance/integrations/gitlab-mcp.md +0 -123
  153. data/.ai-assistance/integrations/local-git.md +0 -60
  154. data/.ai-assistance/local_paths.example.md +0 -17
  155. data/.ai-assistance/projects/TODO.md +0 -118
  156. data/.ai-assistance/projects/api-v2-to-graphql-migration/DECISIONS.md +0 -168
  157. data/.ai-assistance/projects/api-v2-to-graphql-migration/INTENT.md +0 -60
  158. data/.ai-assistance/projects/api-v2-to-graphql-migration/TODO.md +0 -267
  159. data/.ai-assistance/projects/api-v2-to-graphql-migration/UPSTREAM.md +0 -53
  160. data/.ai-assistance/projects/api-v2-to-graphql-migration/notes/csv-template-pipeline-design.md +0 -102
  161. data/.ai-assistance/projects/api-v2-to-graphql-migration/notes/cutover-usecase-gap-audit.md +0 -139
  162. data/.ai-assistance/projects/compat-layer-audit/COMPAT_AUDIT.md +0 -244
  163. data/.ai-assistance/projects/dynamic-model-generation/INTENT.md +0 -93
  164. data/.ai-assistance/projects/eco-helpers-compat/INTENT.md +0 -244
  165. data/.ai-assistance/projects/eco-helpers-compat/MIGRATION_GUIDE.md +0 -266
  166. data/.ai-assistance/projects/eco-helpers-compat/TODO.md +0 -86
  167. data/.ai-assistance/projects/ecoportal-api-v2-doublemodel-review/INTENT.md +0 -101
  168. data/.ai-assistance/projects/graphql-agent/GAP_ANALYSIS.md +0 -177
  169. data/.ai-assistance/projects/ooze-graphql-native-migration/DECISIONS.md +0 -161
  170. data/.ai-assistance/projects/ooze-graphql-native-migration/INTENT.md +0 -125
  171. data/.ai-assistance/projects/ooze-graphql-native-migration/INVENTORY.md +0 -136
  172. data/.ai-assistance/projects/ooze-graphql-native-migration/RISKS.md +0 -126
  173. data/.ai-assistance/projects/ooze-graphql-native-migration/TODO.md +0 -261
  174. data/.ai-assistance/projects/ooze-graphql-native-migration/analysis/2026-06-30-cutover-workflow-deep-review.md +0 -122
  175. data/.ai-assistance/projects/ooze-graphql-native-migration/analysis/2026-07-01-forces-via-workflow-commands-miss-rca.md +0 -148
  176. data/.ai-assistance/projects/page-model/DECISIONS.md +0 -245
  177. data/.ai-assistance/projects/page-model/TODO.md +0 -190
  178. data/.ai-assistance/projects/qa-services-delivery/DECISIONS.md +0 -93
  179. data/.ai-assistance/projects/qa-services-delivery/INTENT.md +0 -76
  180. data/.ai-assistance/projects/qa-services-delivery/PHASE3-SCOPE.md +0 -115
  181. data/.ai-assistance/projects/qa-services-delivery/ROADMAP.md +0 -99
  182. data/.ai-assistance/projects/qa-services-delivery/TODO.md +0 -81
  183. data/.ai-assistance/projects/search-filter-builder/INTENT.md +0 -107
  184. data/.ai-assistance/projects/search-filter-builder/TODO.md +0 -131
  185. data/.ai-assistance/projects/template-automatic-build-maintenance/INTENT.md +0 -87
  186. data/.ai-assistance/projects/template-automatic-build-maintenance/TODO.md +0 -108
  187. data/.ai-assistance/projects/template-diff-deploy/INTENT.md +0 -12
  188. data/.ai-assistance/projects/template-diff-deploy/TODO.md +0 -9
  189. data/.ai-assistance/projects/template-maintenance/DESIGN.md +0 -134
  190. data/.ai-assistance/projects/template-maintenance/PHASE0-FINDINGS.md +0 -93
  191. data/.ai-assistance/projects/template-maintenance/README.md +0 -14
  192. data/.ai-assistance/projects/template-model-logic/CATEGORY_CATALOG.md +0 -236
  193. data/.ai-assistance/projects/template-model-logic/CLASSIFICATION_SPIKE.md +0 -243
  194. data/.ai-assistance/projects/template-model-logic/DESIGN_NOTE.md +0 -154
  195. data/.ai-assistance/projects/workflow-space/TODO.md +0 -213
  196. data/.ai-assistance/reinstall-claude-desktop-windows.md +0 -136
  197. data/.ai-assistance/scripts/CLAUDE.md +0 -150
  198. data/.ai-assistance/scripts/bridge-inbox-check.sh +0 -75
  199. data/.ai-assistance/scripts/bridge-init.sh +0 -86
  200. data/.ai-assistance/scripts/bridge-status.sh +0 -44
  201. data/.ai-assistance/scripts/capabilities-check.ts +0 -104
  202. data/.ai-assistance/scripts/check-outbox.sh +0 -43
  203. data/.ai-assistance/scripts/dep_graph.rb +0 -91
  204. data/.ai-assistance/scripts/lock-acquire.sh +0 -103
  205. data/.ai-assistance/scripts/lock-multi.sh +0 -124
  206. data/.ai-assistance/scripts/lock-queue.sh +0 -94
  207. data/.ai-assistance/scripts/setup-mcps.test.ts +0 -188
  208. data/.ai-assistance/scripts/setup-mcps.ts +0 -234
  209. data/.ai-assistance/scripts/task-complete.ts +0 -74
  210. data/.ai-assistance/scripts/task-create.ts +0 -75
  211. data/.ai-assistance/scripts/task-read.ts +0 -125
  212. data/.ai-assistance/scripts/token-logger.js +0 -220
  213. data/.ai-assistance/scripts/token-report.ts +0 -158
  214. data/.ai-assistance/scripts/token-session-start.js +0 -66
  215. data/.ai-assistance/skills/ai-instructions/SKILL.md +0 -48
  216. data/.ai-assistance/skills/code-specs/SKILL.md +0 -69
  217. data/.ai-assistance/skills/corporate-policies/SKILL.md +0 -201
  218. data/.ai-assistance/skills/dep-graph/SKILL.md +0 -139
  219. data/.ai-assistance/skills/ep-ai-manager/SKILL.md +0 -417
  220. data/.ai-assistance/skills/gemini-assist/SKILL.md +0 -63
  221. data/.ai-assistance/skills/gemini-assist/gemini-mcp-server.js +0 -205
  222. data/.ai-assistance/skills/gemini-assist/gemini_ask.py +0 -1
  223. data/.ai-assistance/skills/gemini-assist/gemini_ask.rb +0 -240
  224. data/.ai-assistance/skills/gemini-assist/prompts/cycle_end_review.txt +0 -25
  225. data/.ai-assistance/skills/graphql-schema-analysis/SKILL.md +0 -261
  226. data/.ai-assistance/skills/procedural-memory/SKILL.md +0 -319
  227. data/.ai-assistance/skills/project-cycle/SKILL.md +0 -177
  228. data/.ai-assistance/skills/project-self-docs/SKILL.md +0 -181
  229. data/.ai-assistance/skills/project-self-docs/scripts/self_docs_scan.py +0 -378
  230. data/.ai-assistance/skills/refactor/SKILL.md +0 -62
  231. data/.ai-assistance/skills/rubocop/SKILL.md +0 -93
  232. data/.ai-assistance/skills/ruby-scripting/SKILL.md +0 -215
  233. data/.ai-assistance/skills/spec-generation/SKILL.md +0 -72
  234. data/.ai-assistance/standards-version.json +0 -22
  235. data/.ai-assistance/token-budget.json +0 -32
  236. data/.ai-assistance/version.json +0 -39
  237. data/.claude/settings.json +0 -150
  238. data/.env.example +0 -18
  239. data/.gitattributes +0 -15
  240. data/.gitignore +0 -37
  241. data/.gitlab-ci.yml +0 -45
  242. data/.markdownlint.json +0 -4
  243. data/.rspec +0 -3
  244. data/.rubocop.yml +0 -121
  245. data/.ruby-version +0 -1
  246. data/.yardopts +0 -10
  247. data/CLAUDE.md +0 -243
  248. data/Gemfile +0 -30
  249. data/Rakefile +0 -90
  250. data/bin/console +0 -14
  251. data/bin/setup +0 -8
  252. data/bin/setup.ps1 +0 -6
  253. data/docs/self-docs/ARCHITECTURE.md +0 -88
  254. data/docs/self-docs/CHANGES.jsonl +0 -12
  255. data/docs/self-docs/COMPLIANCE.md +0 -79
  256. data/docs/self-docs/CONVENTIONS.md +0 -74
  257. data/docs/self-docs/INTEGRATIONS.md +0 -65
  258. data/docs/self-docs/OPERATIONS.md +0 -76
  259. data/docs/self-docs/OVERVIEW.md +0 -64
  260. data/docs/self-docs/STATUS.md +0 -73
  261. data/docs/self-docs/self-docs-index.json +0 -51
  262. data/docs/worklog.md +0 -977
  263. data/ecoportal-api-graphql.gemspec +0 -40
  264. data/scripts/auto-worker-scheduler.sh +0 -386
  265. data/tests/actions_get.rb +0 -7
  266. data/tests/contractor_entities_get.rb +0 -20
  267. data/tests/contractor_entity_create.rb +0 -19
  268. data/tests/contractor_entity_udpate.rb +0 -20
  269. data/tests/dump_page_model.rb +0 -74
  270. data/tests/dump_template_model.rb +0 -90
  271. data/tests/loc_structure_get.rb +0 -10
  272. data/tests/loc_structure_update.rb +0 -51
  273. data/tests/loc_structures_get.rb +0 -15
  274. data/tests/local_libs.rb +0 -20
  275. data/tests/validate_queries.rb +0 -127
@@ -1,251 +1,251 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- class WorkflowCommand
6
- SCHEMA_VERSION = '20260605'.freeze
7
-
8
- COMMAND_MAP = {
9
- # Page-level
10
- editPage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditPage',
11
- editPageCreatorPermissions: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditPageCreatorPermissions',
12
- # Stage structural
13
- addStage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddStage',
14
- removeStage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveStage',
15
- editStage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditStage',
16
- moveStage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::MoveStage',
17
- # Stage permissions
18
- editCreatorPermissions: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditCreatorPermissions',
19
- editRestrictCommentTagging: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditRestrictCommentTagging',
20
- addCommentTaggingUserGroup: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddCommentTaggingUserGroup',
21
- removeCommentTaggingUserGroup: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveCommentTaggingUserGroup',
22
- editRestrictTaskAssignment: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditRestrictTaskAssignment',
23
- addTaskAssignmentUserGroup: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddTaskAssignmentUserGroup',
24
- removeTaskAssignmentUserGroup: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveTaskAssignmentUserGroup',
25
- addStageTag: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddStageTag',
26
- removeStageTag: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveStageTag',
27
- # Section
28
- addSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddSection',
29
- removeSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveSection',
30
- addStageSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddStageSection',
31
- removeStageSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveStageSection',
32
- editSectionHeader: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditSectionHeader',
33
- collapseSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::CollapseSection',
34
- expandSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::ExpandSection',
35
- reorderSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::ReorderSection',
36
- # Task
37
- addTask: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddTask',
38
- removeTask: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveTask',
39
- editTaskDue: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditTaskDue',
40
- removeTaskDue: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveTaskDue',
41
- removeTaskPriorityLevel: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveTaskPriorityLevel',
42
- editRequiredSignOffs: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditRequiredSignOffs',
43
- # Strategy (default)
44
- addDefaultStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddDefaultStrategy',
45
- editDefaultStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditDefaultStrategy',
46
- removeDefaultStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveDefaultStrategy',
47
- addDefaultDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddDefaultDirectStrategyUser',
48
- removeDefaultDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveDefaultDirectStrategyUser',
49
- # Strategy (task)
50
- addStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddStrategy',
51
- editStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditStrategy',
52
- removeStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveStrategy',
53
- addDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddDirectStrategyUser',
54
- removeDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveDirectStrategyUser',
55
- # Strategy (operation)
56
- addOperationStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddOperationStrategy',
57
- editOperationStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditOperationStrategy',
58
- removeOperationStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveOperationStrategy',
59
- addOperationDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddOperationDirectStrategyUser',
60
- removeOperationDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveOperationDirectStrategyUser',
61
- # Callbacks
62
- addWorkflowCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddWorkflowCallback',
63
- removeCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveCallback',
64
- editTrigger: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditTrigger',
65
- # Operations
66
- addOperation: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddOperation',
67
- editOperation: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditOperation',
68
- removeOperation: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveOperation',
69
- # Recipients
70
- addRecipientUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientUser',
71
- removeRecipientUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientUser',
72
- addRecipientPeopleField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientPeopleField',
73
- removeRecipientPeopleField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientPeopleField',
74
- addRecipientTaskConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientTaskConfig',
75
- removeRecipientTaskConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientTaskConfig',
76
- addRecipientActionType: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientActionType',
77
- removeRecipientActionType: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientActionType',
78
- addRecipientFilter: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientFilter',
79
- removeRecipientFilter: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientFilter',
80
- # Scheduled
81
- addScheduledCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddScheduledCallback',
82
- editScheduledCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditScheduledCallback',
83
- removeScheduledCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveScheduledCallback',
84
- addScheduledCallbackAction: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddScheduledCallbackAction',
85
- editReminder: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditReminder',
86
- addActionTag: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddActionTag',
87
- removeActionTag: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveActionTag',
88
- # Fields structural
89
- addField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddField',
90
- moveField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::MoveField',
91
- removeField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveField',
92
- # Field config
93
- editFieldConfiguration: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditFieldConfiguration',
94
- # Select options
95
- addSelectFieldOption: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddSelectFieldOption',
96
- editSelectFieldOption: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditSelectFieldOption',
97
- removeSelectFieldOption: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveSelectFieldOption',
98
- # Gauge stops
99
- addGaugeFieldStop: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddGaugeFieldStop',
100
- editGaugeFieldStop: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditGaugeFieldStop',
101
- removeGaugeFieldStop: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveGaugeFieldStop',
102
- # Linked fields
103
- addLinkedFieldConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddLinkedFieldConfig',
104
- editLinkedFieldConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditLinkedFieldConfig',
105
- removeLinkedFieldConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveLinkedFieldConfig',
106
- # Forces
107
- addForce: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddForce',
108
- removeForce: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveForce',
109
- editForce: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditForce',
110
- reorderForces: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::ReorderForces',
111
- addBinding: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddBinding',
112
- editBinding: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditBinding',
113
- removeBinding: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveBinding',
114
- addLinkedHelper: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddLinkedHelper',
115
- editLinkedHelper: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditLinkedHelper',
116
- removeLinkedHelper: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveLinkedHelper'
117
- }.freeze
118
-
119
- def self.build(command_key, **kwargs)
120
- validate_key!(command_key)
121
- sub_mod = Object.const_get(COMMAND_MAP[command_key])
122
- { command_key => sub_mod.build(**kwargs) }
123
- end
124
-
125
- def self.valid_key?(key)
126
- COMMAND_MAP.key?(key)
127
- end
128
-
129
- def self.build_commands(commands_spec)
130
- commands_spec.map do |spec|
131
- if spec.keys.size == 1 && COMMAND_MAP.key?(spec.keys.first)
132
- build(spec.keys.first, **spec.values.first)
133
- else
134
- spec
135
- end
136
- end
137
- end
138
-
139
- private_class_method def self.validate_key!(key)
140
- return if COMMAND_MAP.key?(key)
141
-
142
- raise ArgumentError, "Unknown WorkflowCommandInput key: #{key}. Valid keys: #{COMMAND_MAP.keys.join(', ')}"
143
- end
144
- end
145
- end
146
- end
147
- end
148
- end
149
-
150
- require_relative 'workflow_command/edit_page'
151
- require_relative 'workflow_command/edit_page_creator_permissions'
152
- require_relative 'workflow_command/add_stage'
153
- require_relative 'workflow_command/remove_stage'
154
- require_relative 'workflow_command/edit_stage'
155
- require_relative 'workflow_command/move_stage'
156
- require_relative 'workflow_command/edit_creator_permissions'
157
- require_relative 'workflow_command/edit_restrict_comment_tagging'
158
- require_relative 'workflow_command/add_comment_tagging_user_group'
159
- require_relative 'workflow_command/remove_comment_tagging_user_group'
160
- require_relative 'workflow_command/edit_restrict_task_assignment'
161
- require_relative 'workflow_command/add_task_assignment_user_group'
162
- require_relative 'workflow_command/remove_task_assignment_user_group'
163
- require_relative 'workflow_command/add_stage_tag'
164
- require_relative 'workflow_command/remove_stage_tag'
165
- require_relative 'workflow_command/add_section'
166
- require_relative 'workflow_command/remove_section'
167
- require_relative 'workflow_command/add_stage_section'
168
- require_relative 'workflow_command/remove_stage_section'
169
- require_relative 'workflow_command/edit_section_header'
170
- require_relative 'workflow_command/collapse_section'
171
- require_relative 'workflow_command/expand_section'
172
- require_relative 'workflow_command/reorder_section'
173
- require_relative 'workflow_command/add_task'
174
- require_relative 'workflow_command/remove_task'
175
- require_relative 'workflow_command/edit_task_due'
176
- require_relative 'workflow_command/remove_task_due'
177
- require_relative 'workflow_command/remove_task_priority_level'
178
- require_relative 'workflow_command/edit_required_sign_offs'
179
- require_relative 'workflow_command/add_default_strategy'
180
- require_relative 'workflow_command/edit_default_strategy'
181
- require_relative 'workflow_command/remove_default_strategy'
182
- require_relative 'workflow_command/add_default_direct_strategy_user'
183
- require_relative 'workflow_command/remove_default_direct_strategy_user'
184
- require_relative 'workflow_command/add_strategy'
185
- require_relative 'workflow_command/edit_strategy'
186
- require_relative 'workflow_command/remove_strategy'
187
- require_relative 'workflow_command/add_direct_strategy_user'
188
- require_relative 'workflow_command/remove_direct_strategy_user'
189
- require_relative 'workflow_command/add_operation_strategy'
190
- require_relative 'workflow_command/edit_operation_strategy'
191
- require_relative 'workflow_command/remove_operation_strategy'
192
- require_relative 'workflow_command/add_operation_direct_strategy_user'
193
- require_relative 'workflow_command/remove_operation_direct_strategy_user'
194
- require_relative 'workflow_command/add_workflow_callback'
195
- require_relative 'workflow_command/remove_callback'
196
- require_relative 'workflow_command/edit_trigger'
197
- require_relative 'workflow_command/add_operation'
198
- require_relative 'workflow_command/edit_operation'
199
- require_relative 'workflow_command/remove_operation'
200
- require_relative 'workflow_command/add_recipient_user'
201
- require_relative 'workflow_command/remove_recipient_user'
202
- require_relative 'workflow_command/add_recipient_people_field'
203
- require_relative 'workflow_command/remove_recipient_people_field'
204
- require_relative 'workflow_command/add_recipient_task_config'
205
- require_relative 'workflow_command/remove_recipient_task_config'
206
- require_relative 'workflow_command/add_recipient_action_type'
207
- require_relative 'workflow_command/remove_recipient_action_type'
208
- require_relative 'workflow_command/add_recipient_filter'
209
- require_relative 'workflow_command/remove_recipient_filter'
210
- require_relative 'workflow_command/add_scheduled_callback'
211
- require_relative 'workflow_command/edit_scheduled_callback'
212
- require_relative 'workflow_command/remove_scheduled_callback'
213
- require_relative 'workflow_command/add_scheduled_callback_action'
214
- require_relative 'workflow_command/edit_reminder'
215
- require_relative 'workflow_command/add_action_tag'
216
- require_relative 'workflow_command/remove_action_tag'
217
- require_relative 'workflow_command/add_field'
218
- require_relative 'workflow_command/move_field'
219
- require_relative 'workflow_command/remove_field'
220
- require_relative 'workflow_command/edit_field_configuration'
221
- require_relative 'workflow_command/add_select_field_option'
222
- require_relative 'workflow_command/edit_select_field_option'
223
- require_relative 'workflow_command/remove_select_field_option'
224
- require_relative 'workflow_command/add_gauge_field_stop'
225
- require_relative 'workflow_command/edit_gauge_field_stop'
226
- require_relative 'workflow_command/remove_gauge_field_stop'
227
- require_relative 'workflow_command/add_linked_field_config'
228
- require_relative 'workflow_command/edit_linked_field_config'
229
- require_relative 'workflow_command/remove_linked_field_config'
230
- require_relative 'workflow_command/add_force'
231
- require_relative 'workflow_command/remove_force'
232
- require_relative 'workflow_command/edit_force'
233
- require_relative 'workflow_command/reorder_forces'
234
- require_relative 'workflow_command/add_binding'
235
- require_relative 'workflow_command/edit_binding'
236
- require_relative 'workflow_command/remove_binding'
237
- require_relative 'workflow_command/add_linked_helper'
238
- require_relative 'workflow_command/edit_linked_helper'
239
- require_relative 'workflow_command/remove_linked_helper'
240
- require_relative 'workflow_command/field_config/contractor_entities'
241
- require_relative 'workflow_command/field_config/cross_reference'
242
- require_relative 'workflow_command/field_config/date'
243
- require_relative 'workflow_command/field_config/gauge'
244
- require_relative 'workflow_command/field_config/image_gallery'
245
- require_relative 'workflow_command/field_config/location_field'
246
- require_relative 'workflow_command/field_config/people'
247
- require_relative 'workflow_command/field_config/plain_text'
248
- require_relative 'workflow_command/field_config/rich_text'
249
- require_relative 'workflow_command/field_config/select'
250
- require_relative 'workflow_command/field_config/signature'
251
- require_relative 'workflow_command/field_config/table'
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ class WorkflowCommand
6
+ SCHEMA_VERSION = '20260605'.freeze
7
+
8
+ COMMAND_MAP = {
9
+ # Page-level
10
+ editPage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditPage',
11
+ editPageCreatorPermissions: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditPageCreatorPermissions',
12
+ # Stage structural
13
+ addStage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddStage',
14
+ removeStage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveStage',
15
+ editStage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditStage',
16
+ moveStage: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::MoveStage',
17
+ # Stage permissions
18
+ editCreatorPermissions: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditCreatorPermissions',
19
+ editRestrictCommentTagging: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditRestrictCommentTagging',
20
+ addCommentTaggingUserGroup: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddCommentTaggingUserGroup',
21
+ removeCommentTaggingUserGroup: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveCommentTaggingUserGroup',
22
+ editRestrictTaskAssignment: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditRestrictTaskAssignment',
23
+ addTaskAssignmentUserGroup: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddTaskAssignmentUserGroup',
24
+ removeTaskAssignmentUserGroup: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveTaskAssignmentUserGroup',
25
+ addStageTag: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddStageTag',
26
+ removeStageTag: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveStageTag',
27
+ # Section
28
+ addSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddSection',
29
+ removeSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveSection',
30
+ addStageSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddStageSection',
31
+ removeStageSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveStageSection',
32
+ editSectionHeader: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditSectionHeader',
33
+ collapseSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::CollapseSection',
34
+ expandSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::ExpandSection',
35
+ reorderSection: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::ReorderSection',
36
+ # Task
37
+ addTask: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddTask',
38
+ removeTask: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveTask',
39
+ editTaskDue: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditTaskDue',
40
+ removeTaskDue: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveTaskDue',
41
+ removeTaskPriorityLevel: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveTaskPriorityLevel',
42
+ editRequiredSignOffs: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditRequiredSignOffs',
43
+ # Strategy (default)
44
+ addDefaultStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddDefaultStrategy',
45
+ editDefaultStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditDefaultStrategy',
46
+ removeDefaultStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveDefaultStrategy',
47
+ addDefaultDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddDefaultDirectStrategyUser',
48
+ removeDefaultDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveDefaultDirectStrategyUser',
49
+ # Strategy (task)
50
+ addStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddStrategy',
51
+ editStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditStrategy',
52
+ removeStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveStrategy',
53
+ addDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddDirectStrategyUser',
54
+ removeDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveDirectStrategyUser',
55
+ # Strategy (operation)
56
+ addOperationStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddOperationStrategy',
57
+ editOperationStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditOperationStrategy',
58
+ removeOperationStrategy: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveOperationStrategy',
59
+ addOperationDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddOperationDirectStrategyUser',
60
+ removeOperationDirectStrategyUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveOperationDirectStrategyUser',
61
+ # Callbacks
62
+ addWorkflowCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddWorkflowCallback',
63
+ removeCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveCallback',
64
+ editTrigger: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditTrigger',
65
+ # Operations
66
+ addOperation: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddOperation',
67
+ editOperation: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditOperation',
68
+ removeOperation: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveOperation',
69
+ # Recipients
70
+ addRecipientUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientUser',
71
+ removeRecipientUser: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientUser',
72
+ addRecipientPeopleField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientPeopleField',
73
+ removeRecipientPeopleField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientPeopleField',
74
+ addRecipientTaskConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientTaskConfig',
75
+ removeRecipientTaskConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientTaskConfig',
76
+ addRecipientActionType: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientActionType',
77
+ removeRecipientActionType: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientActionType',
78
+ addRecipientFilter: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddRecipientFilter',
79
+ removeRecipientFilter: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveRecipientFilter',
80
+ # Scheduled
81
+ addScheduledCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddScheduledCallback',
82
+ editScheduledCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditScheduledCallback',
83
+ removeScheduledCallback: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveScheduledCallback',
84
+ addScheduledCallbackAction: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddScheduledCallbackAction',
85
+ editReminder: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditReminder',
86
+ addActionTag: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddActionTag',
87
+ removeActionTag: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveActionTag',
88
+ # Fields structural
89
+ addField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddField',
90
+ moveField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::MoveField',
91
+ removeField: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveField',
92
+ # Field config
93
+ editFieldConfiguration: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditFieldConfiguration',
94
+ # Select options
95
+ addSelectFieldOption: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddSelectFieldOption',
96
+ editSelectFieldOption: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditSelectFieldOption',
97
+ removeSelectFieldOption: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveSelectFieldOption',
98
+ # Gauge stops
99
+ addGaugeFieldStop: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddGaugeFieldStop',
100
+ editGaugeFieldStop: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditGaugeFieldStop',
101
+ removeGaugeFieldStop: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveGaugeFieldStop',
102
+ # Linked fields
103
+ addLinkedFieldConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddLinkedFieldConfig',
104
+ editLinkedFieldConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditLinkedFieldConfig',
105
+ removeLinkedFieldConfig: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveLinkedFieldConfig',
106
+ # Forces
107
+ addForce: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddForce',
108
+ removeForce: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveForce',
109
+ editForce: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditForce',
110
+ reorderForces: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::ReorderForces',
111
+ addBinding: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddBinding',
112
+ editBinding: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditBinding',
113
+ removeBinding: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveBinding',
114
+ addLinkedHelper: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::AddLinkedHelper',
115
+ editLinkedHelper: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::EditLinkedHelper',
116
+ removeLinkedHelper: 'Ecoportal::API::GraphQL::Input::WorkflowCommand::RemoveLinkedHelper'
117
+ }.freeze
118
+
119
+ def self.build(command_key, **kwargs)
120
+ validate_key!(command_key)
121
+ sub_mod = Object.const_get(COMMAND_MAP[command_key])
122
+ { command_key => sub_mod.build(**kwargs) }
123
+ end
124
+
125
+ def self.valid_key?(key)
126
+ COMMAND_MAP.key?(key)
127
+ end
128
+
129
+ def self.build_commands(commands_spec)
130
+ commands_spec.map do |spec|
131
+ if spec.keys.size == 1 && COMMAND_MAP.key?(spec.keys.first)
132
+ build(spec.keys.first, **spec.values.first)
133
+ else
134
+ spec
135
+ end
136
+ end
137
+ end
138
+
139
+ private_class_method def self.validate_key!(key)
140
+ return if COMMAND_MAP.key?(key)
141
+
142
+ raise ArgumentError, "Unknown WorkflowCommandInput key: #{key}. Valid keys: #{COMMAND_MAP.keys.join(', ')}"
143
+ end
144
+ end
145
+ end
146
+ end
147
+ end
148
+ end
149
+
150
+ require_relative 'workflow_command/edit_page'
151
+ require_relative 'workflow_command/edit_page_creator_permissions'
152
+ require_relative 'workflow_command/add_stage'
153
+ require_relative 'workflow_command/remove_stage'
154
+ require_relative 'workflow_command/edit_stage'
155
+ require_relative 'workflow_command/move_stage'
156
+ require_relative 'workflow_command/edit_creator_permissions'
157
+ require_relative 'workflow_command/edit_restrict_comment_tagging'
158
+ require_relative 'workflow_command/add_comment_tagging_user_group'
159
+ require_relative 'workflow_command/remove_comment_tagging_user_group'
160
+ require_relative 'workflow_command/edit_restrict_task_assignment'
161
+ require_relative 'workflow_command/add_task_assignment_user_group'
162
+ require_relative 'workflow_command/remove_task_assignment_user_group'
163
+ require_relative 'workflow_command/add_stage_tag'
164
+ require_relative 'workflow_command/remove_stage_tag'
165
+ require_relative 'workflow_command/add_section'
166
+ require_relative 'workflow_command/remove_section'
167
+ require_relative 'workflow_command/add_stage_section'
168
+ require_relative 'workflow_command/remove_stage_section'
169
+ require_relative 'workflow_command/edit_section_header'
170
+ require_relative 'workflow_command/collapse_section'
171
+ require_relative 'workflow_command/expand_section'
172
+ require_relative 'workflow_command/reorder_section'
173
+ require_relative 'workflow_command/add_task'
174
+ require_relative 'workflow_command/remove_task'
175
+ require_relative 'workflow_command/edit_task_due'
176
+ require_relative 'workflow_command/remove_task_due'
177
+ require_relative 'workflow_command/remove_task_priority_level'
178
+ require_relative 'workflow_command/edit_required_sign_offs'
179
+ require_relative 'workflow_command/add_default_strategy'
180
+ require_relative 'workflow_command/edit_default_strategy'
181
+ require_relative 'workflow_command/remove_default_strategy'
182
+ require_relative 'workflow_command/add_default_direct_strategy_user'
183
+ require_relative 'workflow_command/remove_default_direct_strategy_user'
184
+ require_relative 'workflow_command/add_strategy'
185
+ require_relative 'workflow_command/edit_strategy'
186
+ require_relative 'workflow_command/remove_strategy'
187
+ require_relative 'workflow_command/add_direct_strategy_user'
188
+ require_relative 'workflow_command/remove_direct_strategy_user'
189
+ require_relative 'workflow_command/add_operation_strategy'
190
+ require_relative 'workflow_command/edit_operation_strategy'
191
+ require_relative 'workflow_command/remove_operation_strategy'
192
+ require_relative 'workflow_command/add_operation_direct_strategy_user'
193
+ require_relative 'workflow_command/remove_operation_direct_strategy_user'
194
+ require_relative 'workflow_command/add_workflow_callback'
195
+ require_relative 'workflow_command/remove_callback'
196
+ require_relative 'workflow_command/edit_trigger'
197
+ require_relative 'workflow_command/add_operation'
198
+ require_relative 'workflow_command/edit_operation'
199
+ require_relative 'workflow_command/remove_operation'
200
+ require_relative 'workflow_command/add_recipient_user'
201
+ require_relative 'workflow_command/remove_recipient_user'
202
+ require_relative 'workflow_command/add_recipient_people_field'
203
+ require_relative 'workflow_command/remove_recipient_people_field'
204
+ require_relative 'workflow_command/add_recipient_task_config'
205
+ require_relative 'workflow_command/remove_recipient_task_config'
206
+ require_relative 'workflow_command/add_recipient_action_type'
207
+ require_relative 'workflow_command/remove_recipient_action_type'
208
+ require_relative 'workflow_command/add_recipient_filter'
209
+ require_relative 'workflow_command/remove_recipient_filter'
210
+ require_relative 'workflow_command/add_scheduled_callback'
211
+ require_relative 'workflow_command/edit_scheduled_callback'
212
+ require_relative 'workflow_command/remove_scheduled_callback'
213
+ require_relative 'workflow_command/add_scheduled_callback_action'
214
+ require_relative 'workflow_command/edit_reminder'
215
+ require_relative 'workflow_command/add_action_tag'
216
+ require_relative 'workflow_command/remove_action_tag'
217
+ require_relative 'workflow_command/add_field'
218
+ require_relative 'workflow_command/move_field'
219
+ require_relative 'workflow_command/remove_field'
220
+ require_relative 'workflow_command/edit_field_configuration'
221
+ require_relative 'workflow_command/add_select_field_option'
222
+ require_relative 'workflow_command/edit_select_field_option'
223
+ require_relative 'workflow_command/remove_select_field_option'
224
+ require_relative 'workflow_command/add_gauge_field_stop'
225
+ require_relative 'workflow_command/edit_gauge_field_stop'
226
+ require_relative 'workflow_command/remove_gauge_field_stop'
227
+ require_relative 'workflow_command/add_linked_field_config'
228
+ require_relative 'workflow_command/edit_linked_field_config'
229
+ require_relative 'workflow_command/remove_linked_field_config'
230
+ require_relative 'workflow_command/add_force'
231
+ require_relative 'workflow_command/remove_force'
232
+ require_relative 'workflow_command/edit_force'
233
+ require_relative 'workflow_command/reorder_forces'
234
+ require_relative 'workflow_command/add_binding'
235
+ require_relative 'workflow_command/edit_binding'
236
+ require_relative 'workflow_command/remove_binding'
237
+ require_relative 'workflow_command/add_linked_helper'
238
+ require_relative 'workflow_command/edit_linked_helper'
239
+ require_relative 'workflow_command/remove_linked_helper'
240
+ require_relative 'workflow_command/field_config/contractor_entities'
241
+ require_relative 'workflow_command/field_config/cross_reference'
242
+ require_relative 'workflow_command/field_config/date'
243
+ require_relative 'workflow_command/field_config/gauge'
244
+ require_relative 'workflow_command/field_config/image_gallery'
245
+ require_relative 'workflow_command/field_config/location_field'
246
+ require_relative 'workflow_command/field_config/people'
247
+ require_relative 'workflow_command/field_config/plain_text'
248
+ require_relative 'workflow_command/field_config/rich_text'
249
+ require_relative 'workflow_command/field_config/select'
250
+ require_relative 'workflow_command/field_config/signature'
251
+ require_relative 'workflow_command/field_config/table'
@@ -1,24 +1,24 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Input
5
- end
6
- end
7
- end
8
- end
9
-
10
- require_relative 'input/id_diff'
11
- require_relative 'input/search_filter'
12
- require_relative 'input/search_sorter'
13
- require_relative 'input/search'
14
- require_relative 'input/location_structure'
15
- require_relative 'input/contractor_entity'
16
- require_relative 'input/action'
17
- require_relative 'input/page'
18
- require_relative 'input/delta_input'
19
- require_relative 'input/search_conf'
20
-
21
- require_relative 'input/register'
22
- require_relative 'input/preset_view'
23
- require_relative 'input/workflow_command'
24
- require_relative 'input/variable_binding'
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Input
5
+ end
6
+ end
7
+ end
8
+ end
9
+
10
+ require_relative 'input/id_diff'
11
+ require_relative 'input/search_filter'
12
+ require_relative 'input/search_sorter'
13
+ require_relative 'input/search'
14
+ require_relative 'input/location_structure'
15
+ require_relative 'input/contractor_entity'
16
+ require_relative 'input/action'
17
+ require_relative 'input/page'
18
+ require_relative 'input/delta_input'
19
+ require_relative 'input/search_conf'
20
+
21
+ require_relative 'input/register'
22
+ require_relative 'input/preset_view'
23
+ require_relative 'input/workflow_command'
24
+ require_relative 'input/variable_binding'