Class: OmnifocusMcp::Tools::Generators::AddProject

Inherits:
Object
  • Object
show all
Defined in:
lib/omnifocus_mcp/tools/generators/add_project.rb

Class Method Summary collapse

Class Method Details

.generate_apple_script(params = nil, **kwargs) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
# File 'lib/omnifocus_mcp/tools/generators/add_project.rb', line 15

def generate_apple_script(params = nil, **kwargs)
  merge_params(params, kwargs).then do |params|
    params = Params::McpBoundary.coerce(Params::AddProjectParams, params)
    fields = extract_fields(params)
    date_pre_script, date_vars = build_date_pre_scripts(params)
    body = document_body(fields:, date_vars:)
    preamble = date_pre_script.empty? ? "" : "#{date_pre_script}\n"

    preamble + Infrastructure::AppleScript.tell_document(body)
  end
end