Skip to content

Commit decef42

Browse files
chore(internal): codegen related update
1 parent 6aae9d0 commit decef42

27 files changed

Lines changed: 163 additions & 0 deletions

src/Core/Conversion.php

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,37 @@ private static function tryConvert(Converter|ConverterSource|string $target, mix
170170

171171
return $value;
172172

173+
case 'DateTimeInterface':
174+
case 'DateTimeImmutable':
175+
if (is_string($value)) {
176+
try {
177+
++$state->maybe;
178+
179+
return new \DateTimeImmutable($value);
180+
} catch (\Exception) {
181+
--$state->maybe;
182+
}
183+
}
184+
185+
++$state->no;
186+
187+
return $value;
188+
189+
case 'DateTime':
190+
if (is_string($value)) {
191+
try {
192+
++$state->maybe;
193+
194+
return new \DateTime($value);
195+
} catch (\Exception) {
196+
--$state->maybe;
197+
}
198+
}
199+
200+
++$state->no;
201+
202+
return $value;
203+
173204
default:
174205
++$state->no;
175206

src/Services/AccessTokenRawService.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@
1313
use CasParser\ServiceContracts\AccessTokenRawContract;
1414

1515
/**
16+
* Endpoints for managing access tokens for the Portfolio Connect SDK.
17+
* Use these to generate short-lived `at_` prefixed tokens that can be safely passed to frontend applications.
18+
* Access tokens can be used in place of API keys on all v4 endpoints.
19+
*
1620
* @phpstan-import-type RequestOpts from \CasParser\RequestOptions
1721
*/
1822
final class AccessTokenRawService implements AccessTokenRawContract

src/Services/AccessTokenService.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@
1212
use CasParser\ServiceContracts\AccessTokenContract;
1313

1414
/**
15+
* Endpoints for managing access tokens for the Portfolio Connect SDK.
16+
* Use these to generate short-lived `at_` prefixed tokens that can be safely passed to frontend applications.
17+
* Access tokens can be used in place of API keys on all v4 endpoints.
18+
*
1519
* @phpstan-import-type RequestOpts from \CasParser\RequestOptions
1620
*/
1721
final class AccessTokenService implements AccessTokenContract

src/Services/CamsKfintechRawService.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
use CasParser\ServiceContracts\CamsKfintechRawContract;
1414

1515
/**
16+
* Endpoints for parsing CAS PDF files from different sources.
17+
*
1618
* @phpstan-import-type RequestOpts from \CasParser\RequestOptions
1719
*/
1820
final class CamsKfintechRawService implements CamsKfintechRawContract

src/Services/CamsKfintechService.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
use CasParser\ServiceContracts\CamsKfintechContract;
1313

1414
/**
15+
* Endpoints for parsing CAS PDF files from different sources.
16+
*
1517
* @phpstan-import-type RequestOpts from \CasParser\RequestOptions
1618
*/
1719
final class CamsKfintechService implements CamsKfintechContract

src/Services/Cdsl/FetchRawService.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515
use CasParser\ServiceContracts\Cdsl\FetchRawContract;
1616

1717
/**
18+
* Endpoints for fetching CAS documents with instant download.
19+
* Currently supports CDSL via OTP authentication.
20+
*
1821
* @phpstan-import-type RequestOpts from \CasParser\RequestOptions
1922
*/
2023
final class FetchRawService implements FetchRawContract

src/Services/Cdsl/FetchService.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313
use CasParser\ServiceContracts\Cdsl\FetchContract;
1414

1515
/**
16+
* Endpoints for fetching CAS documents with instant download.
17+
* Currently supports CDSL via OTP authentication.
18+
*
1619
* @phpstan-import-type RequestOpts from \CasParser\RequestOptions
1720
*/
1821
final class FetchService implements FetchContract

src/Services/CdslRawService.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
use CasParser\ServiceContracts\CdslRawContract;
1414

1515
/**
16+
* Endpoints for parsing CAS PDF files from different sources.
17+
*
1618
* @phpstan-import-type RequestOpts from \CasParser\RequestOptions
1719
*/
1820
final class CdslRawService implements CdslRawContract

src/Services/CdslService.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
use CasParser\Services\Cdsl\FetchService;
1414

1515
/**
16+
* Endpoints for parsing CAS PDF files from different sources.
17+
*
1618
* @phpstan-import-type RequestOpts from \CasParser\RequestOptions
1719
*/
1820
final class CdslService implements CdslContract

src/Services/ContractNoteRawService.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
use CasParser\ServiceContracts\ContractNoteRawContract;
1515

1616
/**
17+
* Endpoints for parsing Contract Note PDF files from various SEBI brokers like Zerodha, Groww, Upstox, ICICI etc.
18+
*
1719
* @phpstan-import-type RequestOpts from \CasParser\RequestOptions
1820
*/
1921
final class ContractNoteRawService implements ContractNoteRawContract

0 commit comments

Comments
 (0)