Skip to content

Commit be7d4b6

Browse files
committed
Cleanup return types and Phpdoc comments
get ready for v0.5.0
1 parent a6cedac commit be7d4b6

File tree

11 files changed

+113
-327
lines changed

11 files changed

+113
-327
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
- Added Bexio company profile endpoint request methods to `Other` resource.
88
- Drop PHP 8.0/8.1 support
99
- Integrated laravel/pint as dev requirement for PHP style fixing
10+
- Using more return types
1011

1112
## [0.4.1 (2022-03-24)](https://github.com/onlime/bexio-api-client/compare/0.4.0...0.4.1)
1213

src/Bexio/AbstractClient.php

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,19 +32,21 @@ public function __construct(
3232
) {
3333
}
3434

35-
public function setAccessToken(string $accessToken)
35+
public function setAccessToken(string $accessToken): self
3636
{
3737
$this->accessToken = $accessToken;
38+
return $this;
3839
}
3940

4041
public function getAccessToken(): ?string
4142
{
4243
return $this->accessToken;
4344
}
4445

45-
public function setRefreshToken(string $refreshToken)
46+
public function setRefreshToken(string $refreshToken): self
4647
{
4748
$this->refreshToken = $refreshToken;
49+
return $this;
4850
}
4951

5052
public function getRefreshToken(): ?string
@@ -60,7 +62,7 @@ public function persistTokens(string $tokensFile): bool
6062
])) !== false;
6163
}
6264

63-
public function loadTokens(string $tokensFile)
65+
public function loadTokens(string $tokensFile): self
6466
{
6567
if (! file_exists($tokensFile)) {
6668
throw new \Exception('Tokens file not found: '.$tokensFile);
@@ -75,6 +77,8 @@ public function loadTokens(string $tokensFile)
7577
$this->refreshToken();
7678
$this->persistTokens($tokensFile);
7779
}
80+
81+
return $this;
7882
}
7983

8084
public function getOpenIDConnectClient(): OpenIDConnectClient
@@ -88,7 +92,7 @@ public function getOpenIDConnectClient(): OpenIDConnectClient
8892
return $oidc;
8993
}
9094

91-
public function authenticate(string|array $scopes, string $redirectUrl)
95+
public function authenticate(string|array $scopes, string $redirectUrl): self
9296
{
9397
if (! is_array($scopes)) {
9498
$scopes = explode(' ', $scopes);
@@ -101,6 +105,8 @@ public function authenticate(string|array $scopes, string $redirectUrl)
101105

102106
$this->setAccessToken($oidc->getAccessToken());
103107
$this->setRefreshToken($oidc->getRefreshToken());
108+
109+
return $this;
104110
}
105111

106112
public function isAccessTokenExpired($gracePeriod = 30): bool
@@ -113,12 +119,13 @@ public function isAccessTokenExpired($gracePeriod = 30): bool
113119
return time() > ($expiry - $gracePeriod);
114120
}
115121

116-
public function refreshToken()
122+
public function refreshToken(): self
117123
{
118124
$oidc = $this->getOpenIDConnectClient();
119125
$oidc->refreshToken($this->getRefreshToken());
120126
$this->setAccessToken($oidc->getAccessToken());
121127
$this->setRefreshToken($oidc->getRefreshToken());
128+
return $this;
122129
}
123130

124131
public function getFullApiUrl(string $path = '', array $query = []): string
@@ -131,13 +138,13 @@ public function getFullApiUrl(string $path = '', array $query = []): string
131138
]));
132139
}
133140

134-
abstract public function get(string $path, array $queryParams = []);
141+
abstract public function get(string $path, array $queryParams = []): mixed;
135142

136-
abstract public function post(string $path, array $data = [], array $queryParams = []);
143+
abstract public function post(string $path, array $data = [], array $queryParams = []): mixed;
137144

138-
abstract public function put(string $path, array $data = [], array $queryParams = []);
145+
abstract public function put(string $path, array $data = [], array $queryParams = []): mixed;
139146

140-
abstract public function delete(string $path, array $data = [], array $queryParams = []);
147+
abstract public function delete(string $path, array $data = [], array $queryParams = []): mixed;
141148

142-
abstract public function patch(string $path, array $data = [], array $queryParams = []);
149+
abstract public function patch(string $path, array $data = [], array $queryParams = []): mixed;
143150
}

src/Bexio/Client.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,27 +8,27 @@
88

99
class Client extends AbstractClient
1010
{
11-
public function get(string $path, array $queryParams = [])
11+
public function get(string $path, array $queryParams = []): mixed
1212
{
1313
return $this->request($path, queryParams: $queryParams);
1414
}
1515

16-
public function post(string $path, array $data = [], array $queryParams = [])
16+
public function post(string $path, array $data = [], array $queryParams = []): mixed
1717
{
1818
return $this->request($path, self::METHOD_POST, $data, $queryParams);
1919
}
2020

21-
public function put(string $path, array $data = [], array $queryParams = [])
21+
public function put(string $path, array $data = [], array $queryParams = []): mixed
2222
{
2323
return $this->request($path, self::METHOD_PUT, $data, $queryParams);
2424
}
2525

26-
public function delete(string $path, array $data = [], array $queryParams = [])
26+
public function delete(string $path, array $data = [], array $queryParams = []): mixed
2727
{
2828
return $this->request($path, self::METHOD_DELETE, $data, $queryParams);
2929
}
3030

31-
public function patch(string $path, array $data = [], array $queryParams = [])
31+
public function patch(string $path, array $data = [], array $queryParams = []): mixed
3232
{
3333
return $this->request($path, self::METHOD_PATCH, $data, $queryParams);
3434
}
@@ -38,7 +38,7 @@ protected function request(
3838
string $method = self::METHOD_GET,
3939
array $data = [],
4040
array $queryParams = []
41-
) {
41+
): mixed {
4242
$options = [
4343
'headers' => [
4444
'Authorization' => 'Bearer '.$this->getAccessToken(),

src/Bexio/Resource/AbstractDocumentPositions.php

Lines changed: 18 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -4,153 +4,96 @@
44

55
use Bexio\Bexio;
66

7-
/**
8-
* Class Invoice
9-
*/
107
abstract class AbstractDocumentPositions extends Bexio
118
{
129
protected $documentType = 'kb_foo'; // replace this in concrete class by kb_offer|kb_order|kb_invoice
1310

14-
/**
15-
* @return mixed
16-
*/
17-
public function listDefaultPositions(int $documentId, array $params = [])
11+
public function listDefaultPositions(int $documentId, array $params = []): mixed
1812
{
1913
return $this->client->get($this->documentType."/$documentId/kb_position_custom", $params);
2014
}
2115

22-
/**
23-
* @return mixed
24-
*/
25-
public function showDefaultPosition(int $documentId, int $itemId)
16+
public function showDefaultPosition(int $documentId, int $itemId): mixed
2617
{
2718
return $this->client->get($this->documentType."/$documentId/kb_position_custom/$itemId");
2819
}
2920

30-
/**
31-
* @return mixed
32-
*/
33-
public function createDefaultPosition(int $documentId, array $params = [])
21+
public function createDefaultPosition(int $documentId, array $params = []): mixed
3422
{
3523
return $this->client->post($this->documentType."/$documentId/kb_position_custom", $params);
3624
}
3725

38-
/**
39-
* @return mixed
40-
*/
41-
public function editDefaultPosition(int $documentId, int $itemId, array $params = [])
26+
public function editDefaultPosition(int $documentId, int $itemId, array $params = []): mixed
4227
{
4328
return $this->client->post($this->documentType."/$documentId/kb_position_custom/$itemId", $params);
4429
}
4530

46-
/**
47-
* @return mixed
48-
*/
49-
public function overwriteDefaultPosition(int $documentId, int $itemId, array $params = [])
31+
public function overwriteDefaultPosition(int $documentId, int $itemId, array $params = []): mixed
5032
{
5133
return $this->client->put($this->documentType."/$documentId/kb_position_custom/$itemId", $params);
5234
}
5335

54-
/**
55-
* @return mixed
56-
*/
57-
public function deleteDefaultPosition(int $documentId, int $itemId)
36+
public function deleteDefaultPosition(int $documentId, int $itemId): mixed
5837
{
5938
return $this->client->delete($this->documentType."/$documentId/kb_position_custom/$itemId");
6039
}
6140

62-
/**
63-
* @return mixed
64-
*/
65-
public function listItemPositions(int $documentId, array $params = [])
41+
public function listItemPositions(int $documentId, array $params = []): mixed
6642
{
6743
return $this->client->get($this->documentType."/$documentId/kb_position_article", $params);
6844
}
6945

70-
/**
71-
* @return mixed
72-
*/
73-
public function showItemPosition(int $documentId, int $itemId)
46+
public function showItemPosition(int $documentId, int $itemId): mixed
7447
{
7548
return $this->client->get($this->documentType."/$documentId/kb_position_article/$itemId");
7649
}
7750

78-
/**
79-
* @return mixed
80-
*/
81-
public function createItemPosition(int $documentId, array $params = [])
51+
public function createItemPosition(int $documentId, array $params = []): mixed
8252
{
8353
return $this->client->post($this->documentType."/$documentId/kb_position_article", $params);
8454
}
8555

86-
/**
87-
* @return mixed
88-
*/
89-
public function editItemPosition(int $documentId, int $itemId, array $params = [])
56+
public function editItemPosition(int $documentId, int $itemId, array $params = []): mixed
9057
{
9158
return $this->client->post($this->documentType."/$documentId/kb_position_article/$itemId", $params);
9259
}
9360

94-
/**
95-
* @return mixed
96-
*/
97-
public function overwriteItemPosition(int $documentId, int $itemId, array $params = [])
61+
public function overwriteItemPosition(int $documentId, int $itemId, array $params = []): mixed
9862
{
9963
return $this->client->put($this->documentType."/$documentId/kb_position_article/$itemId", $params);
10064
}
10165

102-
/**
103-
* @return mixed
104-
*/
105-
public function deleteItemPosition(int $documentId, int $itemId)
66+
public function deleteItemPosition(int $documentId, int $itemId): mixed
10667
{
10768
return $this->client->delete($this->documentType."/$documentId/kb_position_article/$itemId");
10869
}
10970

110-
/**
111-
* @return mixed
112-
*/
113-
public function listDiscountPositions(int $documentId, array $params = [])
71+
public function listDiscountPositions(int $documentId, array $params = []): mixed
11472
{
11573
return $this->client->get($this->documentType."/$documentId/kb_position_discount", $params);
11674
}
11775

118-
/**
119-
* @return mixed
120-
*/
121-
public function showDiscountPosition(int $documentId, int $itemId)
76+
public function showDiscountPosition(int $documentId, int $itemId): mixed
12277
{
12378
return $this->client->get($this->documentType."/$documentId/kb_position_discount/$itemId");
12479
}
12580

126-
/**
127-
* @return mixed
128-
*/
129-
public function createDiscountPosition(int $documentId, array $params = [])
81+
public function createDiscountPosition(int $documentId, array $params = []): mixed
13082
{
13183
return $this->client->post($this->documentType."/$documentId/kb_position_discount", $params);
13284
}
13385

134-
/**
135-
* @return mixed
136-
*/
137-
public function editDiscountPosition(int $documentId, int $itemId, array $params = [])
86+
public function editDiscountPosition(int $documentId, int $itemId, array $params = []): mixed
13887
{
13988
return $this->client->post($this->documentType."/$documentId/kb_position_discount/$itemId", $params);
14089
}
14190

142-
/**
143-
* @return mixed
144-
*/
145-
public function overwriteDiscountPosition(int $documentId, int $itemId, array $params = [])
91+
public function overwriteDiscountPosition(int $documentId, int $itemId, array $params = []): mixed
14692
{
14793
return $this->client->put($this->documentType."/$documentId/kb_position_discount/$itemId", $params);
14894
}
14995

150-
/**
151-
* @return mixed
152-
*/
153-
public function deleteDiscountPosition(int $documentId, int $itemId)
96+
public function deleteDiscountPosition(int $documentId, int $itemId): mixed
15497
{
15598
return $this->client->delete($this->documentType."/$documentId/kb_position_discount/$itemId");
15699
}

0 commit comments

Comments
 (0)