diff --git a/composer.json b/composer.json index bd4ed9d..38db603 100644 --- a/composer.json +++ b/composer.json @@ -34,8 +34,8 @@ ], "require": { "php": "^8.0", - "dragon-code/contracts": "^2.21", "dragon-code/support": "^6.11.3", + "illuminate/contracts": "^10.0||^11.0", "illuminate/support": ">=6.0 <12.0" }, "require-dev": { diff --git a/src/Concerns/Arrayable.php b/src/Concerns/Arrayable.php index 9e2a9d4..543cc9c 100644 --- a/src/Concerns/Arrayable.php +++ b/src/Concerns/Arrayable.php @@ -9,7 +9,6 @@ use BackedEnum; use Carbon\Carbon; use Closure; -use DragonCode\Contracts\Support\Arrayable as DragonCodeArrayable; use DragonCode\Support\Facades\Helpers\Arr; use DragonCode\Support\Facades\Instances\Instance; use DragonCode\Support\Facades\Instances\Reflection; @@ -97,12 +96,10 @@ protected function isArrayable($value): bool if ( Instance::of($value, [ - DragonCodeArrayable::class, - IlluminateArrayable::class, ArrayableHelper::class, + IlluminateArrayable::class, ArrayObject::class, ArrayAccess::class, - DragonCodeArrayable::class, ]) ) { return true; diff --git a/src/Concerns/Has.php b/src/Concerns/Has.php index 877cadc..85ff7f1 100644 --- a/src/Concerns/Has.php +++ b/src/Concerns/Has.php @@ -7,7 +7,6 @@ use Carbon\Carbon; use Closure; use DateTimeInterface; -use DragonCode\Contracts\Cache\Ttl; use DragonCode\Support\Facades\Instances\Instance; use DragonCode\Support\Facades\Types\Is; @@ -27,9 +26,4 @@ protected function hasObject($value): bool { return Is::object($value); } - - protected function hasContract($value): bool - { - return Instance::of($value, Ttl::class); - } } diff --git a/src/Facades/Support/Key.php b/src/Facades/Support/Key.php index 18356e4..92a4d40 100644 --- a/src/Facades/Support/Key.php +++ b/src/Facades/Support/Key.php @@ -6,12 +6,12 @@ use ArrayObject; use DragonCode\Cache\Support\Key as Support; -use DragonCode\Contracts\DataTransferObject\DataTransferObject; -use DragonCode\Contracts\Support\Arrayable; +use DragonCode\SimpleDataTransferObject\DataTransferObject; +use Illuminate\Contracts\Support\Arrayable; use Illuminate\Support\Facades\Facade; /** - * @method static string get(string $separator, array|Arrayable|\Illuminate\Contracts\Support\Arrayable|ArrayObject|DataTransferObject $values, bool $hash = true) + * @method static string get(string $separator, array|Arrayable|ArrayObject|DataTransferObject $values, bool $hash = true) */ class Key extends Facade { diff --git a/src/Facades/Support/Tag.php b/src/Facades/Support/Tag.php index bf20082..7564fd5 100644 --- a/src/Facades/Support/Tag.php +++ b/src/Facades/Support/Tag.php @@ -5,12 +5,12 @@ namespace DragonCode\Cache\Facades\Support; use DragonCode\Cache\Support\Tag as Support; -use DragonCode\Contracts\DataTransferObject\DataTransferObject; -use DragonCode\Contracts\Support\Arrayable; +use DragonCode\SimpleDataTransferObject\DataTransferObject; +use Illuminate\Contracts\Support\Arrayable; use Illuminate\Support\Facades\Facade; /** - * @method static array get(array|Arrayable|\Illuminate\Contracts\Support\Arrayable|\ArrayObject|DataTransferObject $tags) + * @method static array get(array|Arrayable|\ArrayObject|DataTransferObject $tags) */ class Tag extends Facade { diff --git a/src/Services/Storages/Store.php b/src/Services/Storages/Store.php index 24508b5..4b2d41c 100644 --- a/src/Services/Storages/Store.php +++ b/src/Services/Storages/Store.php @@ -5,10 +5,9 @@ namespace DragonCode\Cache\Services\Storages; use DragonCode\Cache\Concerns\Call; -use DragonCode\Contracts\Cache\Store as BaseStore; use DragonCode\Support\Concerns\Makeable; -abstract class Store implements BaseStore +abstract class Store { use Call; use Makeable; diff --git a/src/Support/CacheManager.php b/src/Support/CacheManager.php index 20545fb..ed68b8a 100644 --- a/src/Support/CacheManager.php +++ b/src/Support/CacheManager.php @@ -6,15 +6,15 @@ use DragonCode\Cache\Services\Storages\Disabled; use DragonCode\Cache\Services\Storages\MainStore; +use DragonCode\Cache\Services\Storages\Store; use DragonCode\Cache\Services\Storages\TaggedStore; -use DragonCode\Contracts\Cache\Store; use DragonCode\Support\Concerns\Makeable; use Illuminate\Support\Facades\Cache; /** * @method static CacheManager make(bool $when = true) */ -class CacheManager implements Store +class CacheManager extends Store { use Makeable; @@ -61,11 +61,6 @@ public function has(string $key): bool return $this->instance()->has($key); } - public function doesntHave(string $key): bool - { - return ! $this->has($key); - } - public function flush(): void { $this->instance()->flush(); diff --git a/src/Support/Key.php b/src/Support/Key.php index c501b15..08d627a 100644 --- a/src/Support/Key.php +++ b/src/Support/Key.php @@ -6,7 +6,6 @@ use ArrayObject; use DragonCode\Cache\Concerns\Arrayable; -use DragonCode\Contracts\Support\Arrayable as DragonArrayable; use Illuminate\Contracts\Support\Arrayable as IlluminateArrayable; class Key @@ -15,7 +14,7 @@ class Key public function get( string $separator, - array|ArrayObject|DragonArrayable|IlluminateArrayable $values, + array|ArrayObject|IlluminateArrayable $values, bool $hash = true ): string { $values = $this->toArray($values); diff --git a/src/Support/Tag.php b/src/Support/Tag.php index dc33eb7..1d038bc 100644 --- a/src/Support/Tag.php +++ b/src/Support/Tag.php @@ -6,7 +6,7 @@ use ArrayObject; use DragonCode\Cache\Concerns\Arrayable; -use DragonCode\Contracts\DataTransferObject\DataTransferObject; +use DragonCode\SimpleDataTransferObject\DataTransferObject; use DragonCode\Support\Facades\Helpers\Str; class Tag @@ -14,7 +14,7 @@ class Tag use Arrayable; /** - * @param array|\DragonCode\Contracts\Support\Arrayable|\Illuminate\Contracts\Support\Arrayable|ArrayObject|DataTransferObject $tags + * @param array|\Illuminate\Contracts\Support\Arrayable|ArrayObject|DataTransferObject $tags */ public function get(mixed $tags): array { diff --git a/src/Support/Ttl.php b/src/Support/Ttl.php index 8506813..e5ac352 100644 --- a/src/Support/Ttl.php +++ b/src/Support/Ttl.php @@ -39,10 +39,6 @@ public function fromDateTime(DateTimeInterface $date_time): int protected function get($value, int $multiplier = 1): int { - if ($this->hasObject($value) && $this->hasContract($value)) { - $value = $value->cacheTtl(); - } - if ($this->hasDateTime($value)) { return $this->fromDateTime($value); } diff --git a/tests/Fixtures/Concerns/Dtoable.php b/tests/Fixtures/Concerns/Dtoable.php index c3e9689..039b10a 100644 --- a/tests/Fixtures/Concerns/Dtoable.php +++ b/tests/Fixtures/Concerns/Dtoable.php @@ -4,7 +4,7 @@ namespace Tests\Fixtures\Concerns; -use DragonCode\Contracts\DataTransferObject\DataTransferObject; +use DragonCode\SimpleDataTransferObject\DataTransferObject; use Tests\Fixtures\Dto\DtoObject; trait Dtoable diff --git a/tests/Fixtures/Many/DragonCodeArrayable.php b/tests/Fixtures/Many/DragonCodeArrayable.php index 2075526..7deec6b 100644 --- a/tests/Fixtures/Many/DragonCodeArrayable.php +++ b/tests/Fixtures/Many/DragonCodeArrayable.php @@ -4,7 +4,7 @@ namespace Tests\Fixtures\Many; -use DragonCode\Contracts\Support\Arrayable; +use Illuminate\Contracts\Support\Arrayable; use Tests\Fixtures\Simple\DragonCodeArrayable as Simple; class DragonCodeArrayable implements Arrayable diff --git a/tests/Fixtures/Many/MixedArrayable.php b/tests/Fixtures/Many/MixedArrayable.php index 20db60f..b9178cb 100644 --- a/tests/Fixtures/Many/MixedArrayable.php +++ b/tests/Fixtures/Many/MixedArrayable.php @@ -4,7 +4,7 @@ namespace Tests\Fixtures\Many; -use DragonCode\Contracts\Support\Arrayable; +use Illuminate\Contracts\Support\Arrayable; use Tests\Fixtures\Simple\DragonCodeArrayable as SimpleDragon; use Tests\Fixtures\Simple\IlluminateArrayable as SimpleIlluminate; diff --git a/tests/Fixtures/Simple/DragonCodeArrayable.php b/tests/Fixtures/Simple/DragonCodeArrayable.php index df80454..02391da 100644 --- a/tests/Fixtures/Simple/DragonCodeArrayable.php +++ b/tests/Fixtures/Simple/DragonCodeArrayable.php @@ -4,7 +4,7 @@ namespace Tests\Fixtures\Simple; -use DragonCode\Contracts\Support\Arrayable; +use Illuminate\Contracts\Support\Arrayable; class DragonCodeArrayable implements Arrayable { diff --git a/tests/Fixtures/Ttl/AsCarbon.php b/tests/Fixtures/Ttl/AsCarbon.php index d5b4785..60bf8cb 100644 --- a/tests/Fixtures/Ttl/AsCarbon.php +++ b/tests/Fixtures/Ttl/AsCarbon.php @@ -5,16 +5,12 @@ namespace Tests\Fixtures\Ttl; use Carbon\Carbon; -use DragonCode\Contracts\Cache\Ttl; -class AsCarbon implements Ttl +class AsCarbon { - protected $value; - - public function __construct(string $value) - { - $this->value = $value; - } + public function __construct( + protected string $value + ) {} public function cacheTtl(): Carbon { diff --git a/tests/Fixtures/Ttl/AsDateTime.php b/tests/Fixtures/Ttl/AsDateTime.php index c44b3e3..2d6f203 100644 --- a/tests/Fixtures/Ttl/AsDateTime.php +++ b/tests/Fixtures/Ttl/AsDateTime.php @@ -6,9 +6,8 @@ use DateTime; use DateTimeInterface; -use DragonCode\Contracts\Cache\Ttl; -class AsDateTime implements Ttl +class AsDateTime { public function __construct( protected string $value diff --git a/tests/Fixtures/Ttl/AsInteger.php b/tests/Fixtures/Ttl/AsInteger.php index d40976c..cbf3b87 100644 --- a/tests/Fixtures/Ttl/AsInteger.php +++ b/tests/Fixtures/Ttl/AsInteger.php @@ -4,16 +4,11 @@ namespace Tests\Fixtures\Ttl; -use DragonCode\Contracts\Cache\Ttl; - -class AsInteger implements Ttl +class AsInteger { - protected $value; - - public function __construct(string $value) - { - $this->value = $value; - } + public function __construct( + protected string $value + ) {} public function cacheTtl(): int { diff --git a/tests/Fixtures/Ttl/AsString.php b/tests/Fixtures/Ttl/AsString.php index b5fda8e..eed91e6 100644 --- a/tests/Fixtures/Ttl/AsString.php +++ b/tests/Fixtures/Ttl/AsString.php @@ -4,16 +4,11 @@ namespace Tests\Fixtures\Ttl; -use DragonCode\Contracts\Cache\Ttl; - -class AsString implements Ttl +class AsString { - protected $value; - - public function __construct(string $value) - { - $this->value = $value; - } + public function __construct( + protected string $value + ) {} public function cacheTtl(): string {