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.



3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
# File 'lib/basecamp/generated/types.rb', line 3884

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.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def app_url
  @app_url
end

#assigneesObject

Returns the value of attribute assignees.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def assignees
  @assignees
end

#bookmark_urlObject

Returns the value of attribute bookmark_url.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def bookmark_url
  @bookmark_url
end

#boosts_countObject

Returns the value of attribute boosts_count.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def boosts_count
  @boosts_count
end

#boosts_urlObject

Returns the value of attribute boosts_url.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def boosts_url
  @boosts_url
end

#bucketObject

Returns the value of attribute bucket.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def bucket
  @bucket
end

#comments_countObject

Returns the value of attribute comments_count.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def comments_count
  @comments_count
end

#comments_urlObject

Returns the value of attribute comments_url.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def comments_url
  @comments_url
end

#completedObject

Returns the value of attribute completed.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def completed
  @completed
end

#completion_subscribersObject

Returns the value of attribute completion_subscribers.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def completion_subscribers
  @completion_subscribers
end

#completion_urlObject

Returns the value of attribute completion_url.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def completion_url
  @completion_url
end

#contentObject

Returns the value of attribute content.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def content
  @content
end

#created_atObject

Returns the value of attribute created_at.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def created_at
  @created_at
end

#creatorObject

Returns the value of attribute creator.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def creator
  @creator
end

#descriptionObject

Returns the value of attribute description.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def description
  @description
end

#description_attachmentsObject

Returns the value of attribute description_attachments.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def description_attachments
  @description_attachments
end

#due_onObject

Returns the value of attribute due_on.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def due_on
  @due_on
end

#idObject

Returns the value of attribute id.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def id
  @id
end

#inherits_statusObject

Returns the value of attribute inherits_status.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def inherits_status
  @inherits_status
end

#parentObject

Returns the value of attribute parent.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def parent
  @parent
end

#positionObject

Returns the value of attribute position.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def position
  @position
end

#starts_onObject

Returns the value of attribute starts_on.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def starts_on
  @starts_on
end

#statusObject

Returns the value of attribute status.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def status
  @status
end

#stepsObject

Returns the value of attribute steps.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def steps
  @steps
end

#subscription_urlObject

Returns the value of attribute subscription_url.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def subscription_url
  @subscription_url
end

#titleObject

Returns the value of attribute title.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def title
  @title
end

#typeObject

Returns the value of attribute type.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def type
  @type
end

#updated_atObject

Returns the value of attribute updated_at.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def updated_at
  @updated_at
end

#urlObject

Returns the value of attribute url.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def url
  @url
end

#visible_to_clientsObject

Returns the value of attribute visible_to_clients.



3877
3878
3879
# File 'lib/basecamp/generated/types.rb', line 3877

def visible_to_clients
  @visible_to_clients
end

Class Method Details

.required_fieldsArray<Symbol>

Returns:

  • (Array<Symbol>)


3880
3881
3882
# File 'lib/basecamp/generated/types.rb', line 3880

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



3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
# File 'lib/basecamp/generated/types.rb', line 3917

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



3952
3953
3954
# File 'lib/basecamp/generated/types.rb', line 3952

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