Class: Basecamp::Types::Todo

Inherits:
Object
  • Object
show all
Includes:
TypeHelpers
Defined in:
lib/basecamp/generated/types.rb

Overview

Todo

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data = {}) ⇒ Todo

Returns a new instance of Todo.



3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
# File 'lib/basecamp/generated/types.rb', line 3532

def initialize(data = {})
  @app_url = data["app_url"]
  @bucket = parse_type(data["bucket"], "TodoBucket")
  @content = data["content"]
  @created_at = parse_datetime(data["created_at"])
  @creator = parse_type(data["creator"], "Person")
  @description_attachments = parse_array(data["description_attachments"], "RichTextAttachment")
  @id = parse_integer(data["id"])
  @inherits_status = parse_boolean(data["inherits_status"])
  @parent = parse_type(data["parent"], "TodoParent")
  @status = data["status"]
  @title = data["title"]
  @type = data["type"]
  @updated_at = parse_datetime(data["updated_at"])
  @url = data["url"]
  @visible_to_clients = parse_boolean(data["visible_to_clients"])
  @assignees = parse_array(data["assignees"], "Person")
  @bookmark_url = data["bookmark_url"]
  @boosts_count = parse_integer(data["boosts_count"])
  @boosts_url = data["boosts_url"]
  @comments_count = parse_integer(data["comments_count"])
  @comments_url = data["comments_url"]
  @completed = parse_boolean(data["completed"])
  @completion_subscribers = parse_array(data["completion_subscribers"], "Person")
  @completion_url = data["completion_url"]
  @description = data["description"]
  @due_on = data["due_on"]
  @position = parse_integer(data["position"])
  @starts_on = data["starts_on"]
  @steps = parse_array(data["steps"], "CardStep")
  @subscription_url = data["subscription_url"]
end

Instance Attribute Details

#app_urlObject

Returns the value of attribute app_url.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def app_url
  @app_url
end

#assigneesObject

Returns the value of attribute assignees.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def assignees
  @assignees
end

#bookmark_urlObject

Returns the value of attribute bookmark_url.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def bookmark_url
  @bookmark_url
end

#boosts_countObject

Returns the value of attribute boosts_count.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def boosts_count
  @boosts_count
end

#boosts_urlObject

Returns the value of attribute boosts_url.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def boosts_url
  @boosts_url
end

#bucketObject

Returns the value of attribute bucket.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def bucket
  @bucket
end

#comments_countObject

Returns the value of attribute comments_count.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def comments_count
  @comments_count
end

#comments_urlObject

Returns the value of attribute comments_url.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def comments_url
  @comments_url
end

#completedObject

Returns the value of attribute completed.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def completed
  @completed
end

#completion_subscribersObject

Returns the value of attribute completion_subscribers.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def completion_subscribers
  @completion_subscribers
end

#completion_urlObject

Returns the value of attribute completion_url.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def completion_url
  @completion_url
end

#contentObject

Returns the value of attribute content.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def content
  @content
end

#created_atObject

Returns the value of attribute created_at.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def created_at
  @created_at
end

#creatorObject

Returns the value of attribute creator.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def creator
  @creator
end

#descriptionObject

Returns the value of attribute description.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def description
  @description
end

#description_attachmentsObject

Returns the value of attribute description_attachments.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def description_attachments
  @description_attachments
end

#due_onObject

Returns the value of attribute due_on.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def due_on
  @due_on
end

#idObject

Returns the value of attribute id.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def id
  @id
end

#inherits_statusObject

Returns the value of attribute inherits_status.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def inherits_status
  @inherits_status
end

#parentObject

Returns the value of attribute parent.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def parent
  @parent
end

#positionObject

Returns the value of attribute position.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def position
  @position
end

#starts_onObject

Returns the value of attribute starts_on.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def starts_on
  @starts_on
end

#statusObject

Returns the value of attribute status.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def status
  @status
end

#stepsObject

Returns the value of attribute steps.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def steps
  @steps
end

#subscription_urlObject

Returns the value of attribute subscription_url.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def subscription_url
  @subscription_url
end

#titleObject

Returns the value of attribute title.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def title
  @title
end

#typeObject

Returns the value of attribute type.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def type
  @type
end

#updated_atObject

Returns the value of attribute updated_at.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def updated_at
  @updated_at
end

#urlObject

Returns the value of attribute url.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def url
  @url
end

#visible_to_clientsObject

Returns the value of attribute visible_to_clients.



3525
3526
3527
# File 'lib/basecamp/generated/types.rb', line 3525

def visible_to_clients
  @visible_to_clients
end

Class Method Details

.required_fieldsArray<Symbol>

Returns:

  • (Array<Symbol>)


3528
3529
3530
# File 'lib/basecamp/generated/types.rb', line 3528

def self.required_fields
  %i[app_url bucket content created_at creator description_attachments id inherits_status parent status title type updated_at url visible_to_clients].freeze
end

Instance Method Details

#to_hObject



3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
# File 'lib/basecamp/generated/types.rb', line 3565

def to_h
  {
    "app_url" => @app_url,
    "bucket" => @bucket,
    "content" => @content,
    "created_at" => @created_at,
    "creator" => @creator,
    "description_attachments" => @description_attachments,
    "id" => @id,
    "inherits_status" => @inherits_status,
    "parent" => @parent,
    "status" => @status,
    "title" => @title,
    "type" => @type,
    "updated_at" => @updated_at,
    "url" => @url,
    "visible_to_clients" => @visible_to_clients,
    "assignees" => @assignees,
    "bookmark_url" => @bookmark_url,
    "boosts_count" => @boosts_count,
    "boosts_url" => @boosts_url,
    "comments_count" => @comments_count,
    "comments_url" => @comments_url,
    "completed" => @completed,
    "completion_subscribers" => @completion_subscribers,
    "completion_url" => @completion_url,
    "description" => @description,
    "due_on" => @due_on,
    "position" => @position,
    "starts_on" => @starts_on,
    "steps" => @steps,
    "subscription_url" => @subscription_url,
  }.compact
end

#to_json(*args) ⇒ Object



3600
3601
3602
# File 'lib/basecamp/generated/types.rb', line 3600

def to_json(*args)
  to_h.to_json(*args)
end