Class: Ecoportal::API::GraphQL::Builder::Page

Inherits:
Object
  • Object
show all
Defined in:
lib/ecoportal/api/graphql/builder/page.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Page

Returns a new instance of Page.



8
9
10
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 8

def initialize(client)
  @client = client
end

Instance Attribute Details

#clientObject (readonly)

Returns the value of attribute client.



6
7
8
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 6

def client
  @client
end

Instance Method Details

#approve_review_task(**kargs, &block) ⇒ Object



55
56
57
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 55

def approve_review_task(**kargs, &block)
  approveReviewTaskMutation.query(**kargs, &block)
end

#archive(clear_external_id: false, **kargs, &block) ⇒ Object

Archive a page. With clear_external_id: true, first BLANKS the page's externalId (a separate updatePage) before archiving, so the freed id can be reused. Use this ONLY when archiving a failed / duplicate creation. Default false: a genuine historical archive KEEPS its externalId — the integration pairing key, unique per org per model (see ecoPortal_architecture/02_data_model.md).

Implemented as two serial mutations (blank-then-archive) reusing the existing update/archive mutations. (The equivalent atomic single-document composite — updatePage(page:{externalId:null}) @include(if:$blank) archivePage — is a possible future refinement if blank-then-archive atomicity is ever required.)



26
27
28
29
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 26

def archive(clear_external_id: false, **kargs, &block)
  blank_external_id(kargs) if clear_external_id
  archiveMutation.query(**kargs, &block)
end

#batch_update_review_task(**kargs, &block) ⇒ Object



71
72
73
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 71

def batch_update_review_task(**kargs, &block)
  batchUpdateReviewTaskMutation.query(**kargs, &block)
end

#build_from_template(**kargs, &block) ⇒ Object



35
36
37
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 35

def build_from_template(**kargs, &block)
  buildFromTemplateMutation.query(**kargs, &block)
end

#create_draft(**kargs, &block) ⇒ Object



43
44
45
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 43

def create_draft(**kargs, &block)
  createDraftMutation.query(**kargs, &block)
end

#create_from_template(**kargs, &block) ⇒ Object



39
40
41
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 39

def create_from_template(**kargs, &block)
  createFromTemplateMutation.query(**kargs, &block)
end

#delete_draft(**kargs, &block) ⇒ Object



47
48
49
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 47

def delete_draft(**kargs, &block)
  deleteDraftMutation.query(**kargs, &block)
end

#execute_force_commands(id:, patch_ver:, commands:, &block) ⇒ Object

Deprecated.

Use execute_workflow_commands instead.



89
90
91
92
93
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 89

def execute_force_commands(id:, patch_ver:, commands:, &block)
  Concerns::Deprecation.warn_once(:execute_force_commands,
                                  'Use execute_workflow_commands(model, commands: [...]) instead')
  executeForceMutation.query(id: id, patch_ver: patch_ver, commands: commands, &block)
end

#execute_workflow_commands(model, commands:, patch_ver: model.patchVer, &block) ⇒ Object

Executes workflow commands against a page or template.

Parameters:

  • model (Base::Page::*)

    the page/template (must have id and patchVer)

  • commands (Array<Hash>)

    array of WorkflowCommandInput hashes

  • patch_ver (Integer) (defaults to: model.patchVer)

    override patchVer (defaults to model.patchVer)



79
80
81
82
83
84
85
86
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 79

def execute_workflow_commands(model, commands:, patch_ver: model.patchVer, &block)
  executeWorkflowCommandsMutation.query(
    id:        model.id,
    patch_ver: patch_ver,
    commands:  commands,
    &block
  )
end

#generate_ai_summary(**kargs, &block) ⇒ Object

AI field mutations



100
101
102
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 100

def generate_ai_summary(**kargs, &block)
  generateAiSummaryMutation.query(**kargs, &block)
end

#generate_smart_fill(**kargs, &block) ⇒ Object



108
109
110
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 108

def generate_smart_fill(**kargs, &block)
  generateSmartFillMutation.query(**kargs, &block)
end

#publish_draft(**kargs, &block) ⇒ Object



51
52
53
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 51

def publish_draft(**kargs, &block)
  publishDraftMutation.query(**kargs, &block)
end

#reject_review_task(**kargs, &block) ⇒ Object



59
60
61
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 59

def reject_review_task(**kargs, &block)
  rejectReviewTaskMutation.query(**kargs, &block)
end

#restart_review_task(**kargs, &block) ⇒ Object



63
64
65
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 63

def restart_review_task(**kargs, &block)
  restartReviewTaskMutation.query(**kargs, &block)
end

#submit_ai_summary_feedback(**kargs, &block) ⇒ Object



104
105
106
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 104

def submit_ai_summary_feedback(**kargs, &block)
  submitAiSummaryFeedbackMutation.query(**kargs, &block)
end

#submit_smart_fill_feedback(**kargs, &block) ⇒ Object



112
113
114
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 112

def submit_smart_fill_feedback(**kargs, &block)
  submitSmartFillFeedbackMutation.query(**kargs, &block)
end

#unarchive(**kargs, &block) ⇒ Object



31
32
33
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 31

def unarchive(**kargs, &block)
  unarchiveMutation.query(**kargs, &block)
end

#undo_review_task(**kargs, &block) ⇒ Object



67
68
69
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 67

def undo_review_task(**kargs, &block)
  undoReviewTaskMutation.query(**kargs, &block)
end

#update(**kargs, &block) ⇒ Object



12
13
14
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 12

def update(**kargs, &block)
  updateMutation.query(**kargs, &block)
end

#update_variable_bindings(**kargs, &block) ⇒ Object



95
96
97
# File 'lib/ecoportal/api/graphql/builder/page.rb', line 95

def update_variable_bindings(**kargs, &block)
  updateVariableBindingsMutation.query(**kargs, &block)
end