- Moved
WrkFlow\ApiSdkBuilder\ApiFactorytoWrkFlow\ApiSdkBuilder\Factories\ApiFactory. - Moved
WrkFlow\ApiSdkBuilder\Responsenamespace toWrkFlow\ApiSdkBuilder\Factories\Responsesnamespace. WrkFlow\ApiSdkBuilder\Contracts\OptionsContracthas new signature fortoBody(AbstractEnvironment $environment).WrkFlow\ApiSdkBuilder\Options\AbstractJsonOptionshas new signature fortoArray(AbstractEnvironment $environment).WrkFlow\ApiSdkBuilder\Contracts\SDKContainerFactoryContracthas new signaturemixed $bodyparameter formakeResponse(string $class, ResponseInterface $response, mixed $body): AbstractResponse;WrkFlow\ApiSdkBuilder\Factories\GuzzleLaravelApiFactoryremoved in favor of LaravelServiceProvider provider with HTTP auto discovery.WrkFlow\ApiSdkBuilder\Factories\LaravelApiFactoryremoved in favor of LaravelServiceProvider provider with HTTP auto discovery.
Response classes that extends AbstractJsonResponse/AbstractJsonItemsResponse requires new parameter array $body in __construct.
It is important that name of the parameters is $body.
Also parseJson function is removed. Transfer your parsing code within constructor.
jsonreturnsGetValueinstance.xmlreturnsGetValueinstance. Docs.
Both traits were removed in favor of GetValue package that makes accessing data easier.
makeResponse has been removed. Update your endpoints to new usage:
public function paginate(
GetUnitsOptions $options = null,
PageInfoOptions $page = new PageInfoOptions()
): UnitsResponse {
$result = $this->api->post($this->uri(), new MergedJsonOptions([$options, $page]));
return $this->makeResponse(UnitsResponse::class, $result);
} to
public function paginate(
GetUnitsOptions $options = null,
PageInfoOptions $page = new PageInfoOptions()
): UnitsResponse {
return $this->api->post(
responseClass: UnitsResponse::class,
uri: $this->uri(),
body: new MergedJsonOptions([$options, $page]),
);
} __construct signature has been changed - MakeBodyFromResponseAction $makeBodyFromResponseAction removed.