bc3client 0.1.0 → 0.1.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7aa10d08141b205bb52b294d1da5f264a378b8fb
4
- data.tar.gz: f56e813ca0c094e7b53072de9de8b81b371f8481
3
+ metadata.gz: 4360c097ba92c816d004681e8a8e49ec8e8d5dcf
4
+ data.tar.gz: a801b4af7ccaea97d1f5b735aea47c36a9e50a1b
5
5
  SHA512:
6
- metadata.gz: ea13536140725071ab9ccdf85409a10a470f8ab9c95a9054c6d510b34ace114776e2ebe43f7b2f22af90d3bf4e1a9b844a0311cd90f972b69dcfc037d55e1457
7
- data.tar.gz: 3e6dbc79d8d84eb6bcfd690cb510006608381b9cf4f17a9f88e3427bd772e959a27fdd009f87161a29cbda838ef5b495291fda94ed4c6d92fd6e113f7ddfaa1a
6
+ metadata.gz: 9f53dcac7da859996e88ad6acc00829f70251087b6a65b827f54859ea31b4bcf515ac82f05947a04f4163b1b4e5abfc9ccd0a4e36365e74e00b3ac7ffc999fcd
7
+ data.tar.gz: 5d80611fe60644c9196af36c964c23104641126b7c554a13d4173c4ca1e136fc388695b29cab7180a993d0fde1f62690b2146fa7174744db2010fe48a793adf3
data/bc3client.gemspec CHANGED
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
2
  lib = File.expand_path('../lib', __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'bc3client/version'
4
+ require 'messenger/version'
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "bc3client"
8
- spec.version = Bc3client::VERSION
8
+ spec.version = Messenger::VERSION
9
9
  spec.authors = ["Mitch Stewart"]
10
10
  spec.email = ["mitch.stewart.io@gmail.com"]
11
11
 
@@ -34,4 +34,5 @@ Gem::Specification.new do |spec|
34
34
  spec.add_development_dependency "rake", "~> 10.0"
35
35
  spec.add_development_dependency "rspec", "~> 3.0"
36
36
  spec.add_development_dependency "json"
37
+ spec.add_development_dependency "pry", "~> 0.10.4"
37
38
  end
data/bin/console CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require "bundler/setup"
4
- require "bc3client"
4
+ require "messenger"
5
5
 
6
6
  # You can add fixtures and/or initialization code here to make experimenting
7
7
  # with your gem easier. You can also use a different console, if you like.
data/lib/messenger.rb ADDED
@@ -0,0 +1,31 @@
1
+ require "messenger/version"
2
+ require "messenger/people"
3
+ require "messenger/resource"
4
+ require "messenger/basecamp"
5
+
6
+ module Messenger
7
+ class Client
8
+ attr_accessor :basecamp
9
+
10
+ def initialize(*args)
11
+ @args = args
12
+ @basecamp = Messenger::Basecamp.new(@args)
13
+ end
14
+
15
+ def todo project_id
16
+ Messenger::ToDo.new Array.new(@args).push(project_id)
17
+ end
18
+
19
+ def todo_list project_id
20
+ Messenger::ToDoList.new Array.new(@args).push(project_id)
21
+ end
22
+
23
+ def todo_set project_id
24
+ Messenger::ToDoSet.new Array.new(@args).push(project_id)
25
+ end
26
+
27
+ def people
28
+ Messenger::People.new Array.new(@args)
29
+ end
30
+ end
31
+ end
@@ -1,11 +1,9 @@
1
- require 'bc3client'
2
1
  require "net/http"
3
2
  require "uri"
4
- require "bc3client/resource"
3
+ require "messenger/resource"
5
4
  require "json"
6
5
 
7
- module Bc3client
8
-
6
+ module Messenger
9
7
  class Basecamp < Resource
10
8
 
11
9
  def initialize(*args)
@@ -0,0 +1,5 @@
1
+ require "messenger/models/entity"
2
+
3
+ class Company < Entity
4
+ attr_accessor :name
5
+ end
@@ -0,0 +1,3 @@
1
+ class Entity
2
+ attr_accessor :id
3
+ end
@@ -0,0 +1,40 @@
1
+ require "messenger/models/entity"
2
+ require "messenger/models/company"
3
+ require "time"
4
+
5
+ class Person < Entity
6
+
7
+ attr_accessor :attachable_sgid,
8
+ :name,
9
+ :email_address,
10
+ :personable_type,
11
+ :title,
12
+ :bio,
13
+ :created_at,
14
+ :updated_at,
15
+ :admin,
16
+ :owner,
17
+ :time_zone,
18
+ :avatar_url,
19
+ :company
20
+
21
+ def initialize(json)
22
+ @id = json['id']
23
+ @attachable_sgid = json['attachable_sgid']
24
+ @name = json['name']
25
+ @email_address = json['email_address']
26
+ @personable_type = json['personable_type']
27
+ @title = json['title']
28
+ @bio = json['bio']
29
+ @created_at = Time.parse(json['created_at'])
30
+ @updated_at = Time.parse(json['updated_at'])
31
+ @admin = json['admin']
32
+ @owner = json['owner']
33
+ @time_zone = json['time_zone']
34
+ @avatar_url = json['avatar_url']
35
+
36
+ @company = Company.new
37
+ @company.id = json['company']['id']
38
+ @company.name = json['company']['name']
39
+ end
40
+ end
@@ -0,0 +1,24 @@
1
+ require 'messenger'
2
+ require 'messenger/models/person'
3
+ require "messenger/resource"
4
+
5
+ module Messenger
6
+ class People < Resource
7
+
8
+ def initialize(*args)
9
+ args = args.flatten(1) unless !args[0].is_a?(Array)
10
+ super(args)
11
+ end
12
+
13
+ def my_profile
14
+ profile_json = get build_uri(my_profile_path)
15
+ Person.new profile_json
16
+ end
17
+
18
+ private
19
+
20
+ def my_profile_path
21
+ "/#{@account_id}/my/profile.json"
22
+ end
23
+ end
24
+ end
@@ -1,7 +1,6 @@
1
- require 'bc3client'
2
-
3
- module Bc3client
1
+ require 'messenger'
4
2
 
3
+ module Messenger
5
4
  class Resource
6
5
 
7
6
  def initialize(*args)
@@ -12,10 +11,6 @@ module Bc3client
12
11
  @base_uri = "https://3.basecampapi.com"
13
12
  end
14
13
 
15
- def test
16
- puts "account id = #{@account_id}"
17
- end
18
-
19
14
  def build_uri(path)
20
15
  URI.parse(@base_uri + path)
21
16
  end
@@ -1,11 +1,10 @@
1
- require 'bc3client'
1
+ require 'messenger'
2
2
  require "net/http"
3
3
  require "uri"
4
- require "bc3client/resource"
4
+ require "messenger/resource"
5
5
  require "json"
6
6
 
7
- module Bc3client
8
-
7
+ module Messenger
9
8
  class ToDo < Resource
10
9
 
11
10
  def initialize(*args)
@@ -1,11 +1,10 @@
1
- require 'bc3client'
1
+ require 'messenger'
2
2
  require "net/http"
3
3
  require "uri"
4
- require "bc3client/resource"
4
+ require "messenger/resource"
5
5
  require "json"
6
6
 
7
- module Bc3client
8
-
7
+ module Messenger
9
8
  class ToDoList < Resource
10
9
 
11
10
  def initialize(*args)
@@ -1,11 +1,10 @@
1
- require 'bc3client'
1
+ require 'messenger'
2
2
  require "net/http"
3
3
  require "uri"
4
- require "bc3client/resource"
4
+ require "messenger/resource"
5
5
  require "json"
6
6
 
7
- module Bc3client
8
-
7
+ module Messenger
9
8
  class ToDoSet < Resource
10
9
 
11
10
  def initialize(*args)
@@ -0,0 +1,3 @@
1
+ module Messenger
2
+ VERSION = "0.1.2"
3
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bc3client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mitch Stewart
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-06-16 00:00:00.000000000 Z
11
+ date: 2017-07-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: pry
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 0.10.4
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 0.10.4
69
83
  description: This gem is a client for Basecamp 3's API.
70
84
  email:
71
85
  - mitch.stewart.io@gmail.com
@@ -81,18 +95,19 @@ files:
81
95
  - README.md
82
96
  - Rakefile
83
97
  - bc3client.gemspec
84
- - bin/bc3client
85
98
  - bin/console
86
99
  - bin/setup
87
- - lib/bc3client.rb
88
- - lib/bc3client/basecamp.rb
89
- - lib/bc3client/client.rb
90
- - lib/bc3client/models/basecamp.rb
91
- - lib/bc3client/resource.rb
92
- - lib/bc3client/todo.rb
93
- - lib/bc3client/todo_list.rb
94
- - lib/bc3client/todo_set.rb
95
- - lib/bc3client/version.rb
100
+ - lib/messenger.rb
101
+ - lib/messenger/basecamp.rb
102
+ - lib/messenger/models/company.rb
103
+ - lib/messenger/models/entity.rb
104
+ - lib/messenger/models/person.rb
105
+ - lib/messenger/people.rb
106
+ - lib/messenger/resource.rb
107
+ - lib/messenger/todo.rb
108
+ - lib/messenger/todo_list.rb
109
+ - lib/messenger/todo_set.rb
110
+ - lib/messenger/version.rb
96
111
  homepage: https://github.com/mitchstewart/bc3client
97
112
  licenses:
98
113
  - MIT
data/bin/bc3client DELETED
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env ruby
2
- print "nothing."
data/lib/bc3client.rb DELETED
@@ -1,5 +0,0 @@
1
- require "bc3client/version"
2
-
3
- module Bc3client
4
- # Code goes here
5
- end
@@ -1,30 +0,0 @@
1
- require 'bc3client'
2
- require "net/http"
3
- require "uri"
4
- require "bc3client/resource"
5
- require "json"
6
-
7
- module Bc3client
8
-
9
- class Client
10
-
11
- attr_accessor :basecamp
12
-
13
- def initialize(*args)
14
- @args = args
15
- @basecamp = Bc3client::Basecamp.new(@args)
16
- end
17
-
18
- def todo project_id
19
- Bc3client::ToDo.new Array.new(@args).push(project_id)
20
- end
21
-
22
- def todo_list project_id
23
- Bc3client::ToDoList.new Array.new(@args).push(project_id)
24
- end
25
-
26
- def todo_set project_id
27
- Bc3client::ToDoSet.new Array.new(@args).push(project_id)
28
- end
29
- end
30
- end
@@ -1 +0,0 @@
1
- # TODO
@@ -1,3 +0,0 @@
1
- module Bc3client
2
- VERSION = "0.1.0"
3
- end