From 6c677a3290d6be04c63c0ac90f0c23c480c06bba Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Oct 2026 03:43:18 +0000 Subject: [PATCH 1/2] feat(deps-dev): bump @seamapi/types Bumps the seam group with 1 update: [@seamapi/types](https://github.com/seamapi/types). Updates `@seamapi/types` from 1.1132.0 to 1.1135.0 - [Release notes](https://github.com/seamapi/types/releases) - [Commits](https://github.com/seamapi/types/compare/v1.1132.0...v1.1135.0) --- updated-dependencies: - dependency-name: "@seamapi/types" dependency-version: 1.1135.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: seam ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index da23c06f..e972ea52 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "@seamapi/blueprint": "^1.12.0", "@seamapi/fake-seam-connect": "2.0.6", "@seamapi/smith": "^1.1.0", - "@seamapi/types": "1.1132.0", + "@seamapi/types": "1.1135.0", "change-case": "^5.4.4", "execa": "^10.0.1", "prettier": "^3.9.6" @@ -882,9 +882,9 @@ } }, "node_modules/@seamapi/types": { - "version": "1.1132.0", - "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.1132.0.tgz", - "integrity": "sha512-Tezm8KLN1y8mXom5F4K1dIlqICJvAzp5UnwAWupzHuZ4u77ILzEpDItww3qOOmCmFZ5VanUVoUATJ3IEi+vdYw==", + "version": "1.1135.0", + "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.1135.0.tgz", + "integrity": "sha512-qjaxJWtCqQl3QVbJeKlb0tfQuaQ149uTdlhJztOg1CMiaXWmaLIqZ54R2qN7KbBzPov6ClAws6mm1SNlNdGeAA==", "dev": true, "license": "MIT", "engines": { diff --git a/package.json b/package.json index eb23bbcf..4f1ca6ba 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "@seamapi/blueprint": "^1.12.0", "@seamapi/fake-seam-connect": "2.0.6", "@seamapi/smith": "^1.1.0", - "@seamapi/types": "1.1132.0", + "@seamapi/types": "1.1135.0", "change-case": "^5.4.4", "execa": "^10.0.1", "prettier": "^3.9.6" From 0185d9df62c490ff5efd443bf4b3e3d3e09bbe2d Mon Sep 17 00:00:00 2001 From: Seam Bot Date: Mon, 26 Oct 2026 03:43:45 +0000 Subject: [PATCH 2/2] ci: Generate code --- src/Resources/AccessMethod.php | 46 ++++++++++++++++++++++++ src/Resources/AcsCredential.php | 46 ++++++++++++++++++++++++ src/Resources/ActionAttempt.php | 4 +++ src/Resources/Device.php | 34 ++++++++++++++++++ src/Resources/DeviceProvider.php | 1 + src/Resources/UnmanagedAccessMethod.php | 47 +++++++++++++++++++++++++ src/Resources/UnmanagedDevice.php | 1 + 7 files changed, 179 insertions(+) diff --git a/src/Resources/AccessMethod.php b/src/Resources/AccessMethod.php index 61889abf..5e4a6af3 100644 --- a/src/Resources/AccessMethod.php +++ b/src/Resources/AccessMethod.php @@ -297,6 +297,10 @@ public static function from_json(mixed $json): Warnings|null => \Seam\Resources\AccessMethod\Warnings\RequestedCodeUnavailable::from_json( $json, ), + \Seam\Resources\AccessMethod\Warnings\WarningCode::SCHEDULE_ROUNDED_UP + => \Seam\Resources\AccessMethod\Warnings\ScheduleRoundedUp::from_json( + $json, + ), default => new self( created_at: $json->created_at ?? null, message: $json->message ?? null, @@ -1122,6 +1126,47 @@ public function __construct( } } + /** + * Indicates that the access system can only end card access on fixed time marks, so access was extended past `ends_at` to the next mark. The message states when access actually ends. + */ + final class ScheduleRoundedUp extends \Seam\Resources\AccessMethod\Warnings + { + public static function from_json(mixed $json): ScheduleRoundedUp|null + { + if (!$json) { + return null; + } + return new self( + created_at: $json->created_at ?? null, + message: $json->message ?? null, + warning_code: $json->warning_code ?? null, + ); + } + + public function __construct( + /** + * Date and time at which Seam created the warning. + */ + string|null $created_at, + /** + * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. + */ + string|null $message, + /** + * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. + * + * @var value-of<\Seam\Resources\AccessMethod\Warnings\WarningCode>|string|null + */ + string|null $warning_code, + ) { + parent::__construct( + created_at: $created_at, + message: $message, + warning_code: $warning_code, + ); + } + } + enum WarningCode: string { case BEING_DELETED = "being_deleted"; @@ -1131,5 +1176,6 @@ enum WarningCode: string case USER_IDENTITY_MISSING_EMAIL_ADDRESS = "user_identity_missing_email_address"; case USER_IDENTITY_MISSING_PHONE_NUMBER = "user_identity_missing_phone_number"; case REQUESTED_CODE_UNAVAILABLE = "requested_code_unavailable"; + case SCHEDULE_ROUNDED_UP = "schedule_rounded_up"; } } diff --git a/src/Resources/AcsCredential.php b/src/Resources/AcsCredential.php index bdd61e78..f70c8023 100644 --- a/src/Resources/AcsCredential.php +++ b/src/Resources/AcsCredential.php @@ -423,6 +423,10 @@ public static function from_json(mixed $json): Warnings|null => \Seam\Resources\AcsCredential\Warnings\RequestedCodeUnavailable::from_json( $json, ), + \Seam\Resources\AcsCredential\Warnings\WarningCode::SCHEDULE_ROUNDED_UP + => \Seam\Resources\AcsCredential\Warnings\ScheduleRoundedUp::from_json( + $json, + ), default => new self( created_at: $json->created_at ?? null, message: $json->message ?? null, @@ -788,6 +792,47 @@ public function __construct( } } + /** + * Indicates that the access system can only end card access on fixed time marks, so access was extended past `ends_at` to the next mark. The message states when access actually ends. + */ + final class ScheduleRoundedUp extends \Seam\Resources\AcsCredential\Warnings + { + public static function from_json(mixed $json): ScheduleRoundedUp|null + { + if (!$json) { + return null; + } + return new self( + created_at: $json->created_at ?? null, + message: $json->message ?? null, + warning_code: $json->warning_code ?? null, + ); + } + + public function __construct( + /** + * Date and time at which Seam created the warning. + */ + string|null $created_at, + /** + * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. + */ + string|null $message, + /** + * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. + * + * @var value-of<\Seam\Resources\AcsCredential\Warnings\WarningCode>|string|null + */ + string|null $warning_code, + ) { + parent::__construct( + created_at: $created_at, + message: $message, + warning_code: $warning_code, + ); + } + } + enum WarningCode: string { case WAITING_TO_BE_ISSUED = "waiting_to_be_issued"; @@ -797,5 +842,6 @@ enum WarningCode: string case UNKNOWN_ISSUE_WITH_ACS_CREDENTIAL = "unknown_issue_with_acs_credential"; case NEEDS_TO_BE_REISSUED = "needs_to_be_reissued"; case REQUESTED_CODE_UNAVAILABLE = "requested_code_unavailable"; + case SCHEDULE_ROUNDED_UP = "schedule_rounded_up"; } } diff --git a/src/Resources/ActionAttempt.php b/src/Resources/ActionAttempt.php index f5f08870..c7a029d4 100644 --- a/src/Resources/ActionAttempt.php +++ b/src/Resources/ActionAttempt.php @@ -2820,6 +2820,7 @@ enum WarningCode: string case UNKNOWN_ISSUE_WITH_ACS_CREDENTIAL = "unknown_issue_with_acs_credential"; case NEEDS_TO_BE_REISSUED = "needs_to_be_reissued"; case REQUESTED_CODE_UNAVAILABLE = "requested_code_unavailable"; + case SCHEDULE_ROUNDED_UP = "schedule_rounded_up"; } } @@ -3489,6 +3490,7 @@ enum WarningCode: string case UNKNOWN_ISSUE_WITH_ACS_CREDENTIAL = "unknown_issue_with_acs_credential"; case NEEDS_TO_BE_REISSUED = "needs_to_be_reissued"; case REQUESTED_CODE_UNAVAILABLE = "requested_code_unavailable"; + case SCHEDULE_ROUNDED_UP = "schedule_rounded_up"; } } @@ -4160,6 +4162,7 @@ enum WarningCode: string case UNKNOWN_ISSUE_WITH_ACS_CREDENTIAL = "unknown_issue_with_acs_credential"; case NEEDS_TO_BE_REISSUED = "needs_to_be_reissued"; case REQUESTED_CODE_UNAVAILABLE = "requested_code_unavailable"; + case SCHEDULE_ROUNDED_UP = "schedule_rounded_up"; } } @@ -4733,6 +4736,7 @@ enum WarningCode: string case USER_IDENTITY_MISSING_EMAIL_ADDRESS = "user_identity_missing_email_address"; case USER_IDENTITY_MISSING_PHONE_NUMBER = "user_identity_missing_phone_number"; case REQUESTED_CODE_UNAVAILABLE = "requested_code_unavailable"; + case SCHEDULE_ROUNDED_UP = "schedule_rounded_up"; } } diff --git a/src/Resources/Device.php b/src/Resources/Device.php index c1af9e44..37d78dfe 100644 --- a/src/Resources/Device.php +++ b/src/Resources/Device.php @@ -621,6 +621,11 @@ public static function from_json(mixed $json): Properties|null $json->ecobee_metadata, ) : null, + eufy_metadata: isset($json->eufy_metadata) + ? \Seam\Resources\Device\Properties\EufyMetadata::from_json( + $json->eufy_metadata, + ) + : null, fallback_climate_preset_key: $json->fallback_climate_preset_key ?? null, fan_mode_setting: $json->fan_mode_setting ?? null, @@ -1041,6 +1046,10 @@ public function __construct( * Metadata for an ecobee device. */ public \Seam\Resources\Device\Properties\EcobeeMetadata|null $ecobee_metadata = null, + /** + * Metadata for a Eufy device. + */ + public \Seam\Resources\Device\Properties\EufyMetadata|null $eufy_metadata = null, /** * Key of the [fallback climate preset](https://www.seam.co/docs/capability-guides/thermostats/creating-and-managing-climate-presets/setting-the-fallback-climate-preset) for the thermostat. */ @@ -1551,6 +1560,7 @@ enum DeviceType: string case OMNITEC_LOCK = "omnitec_lock"; case KISI_LOCK = "kisi_lock"; case AQARA_LOCK = "aqara_lock"; + case EUFY_LOCK = "eufy_lock"; case KEYNEST_KEY = "keynest_key"; case NOISEAWARE_ACTIVITY_ZONE = "noiseaware_activity_zone"; case MINUT_SENSOR = "minut_sensor"; @@ -2943,6 +2953,30 @@ public function __construct( ) {} } + /** + * Metadata for a Eufy device. + */ + class EufyMetadata + { + public static function from_json(mixed $json): EufyMetadata|null + { + if (!$json) { + return null; + } + return new self( + device_id: $json->device_id ?? null, + device_name: $json->device_name ?? null, + model: $json->model ?? null, + ); + } + + public function __construct( + public string|null $device_id = null, + public string|null $device_name = null, + public string|null $model = null, + ) {} + } + /** * Metadata for a 4SUITES device. */ diff --git a/src/Resources/DeviceProvider.php b/src/Resources/DeviceProvider.php index 099aeb7c..01af3334 100644 --- a/src/Resources/DeviceProvider.php +++ b/src/Resources/DeviceProvider.php @@ -233,6 +233,7 @@ enum DeviceProviderName: string case OMNITEC = "omnitec"; case KISI = "kisi"; case AQARA = "aqara"; + case EUFY = "eufy"; case SONOS = "sonos"; } } diff --git a/src/Resources/UnmanagedAccessMethod.php b/src/Resources/UnmanagedAccessMethod.php index 8f4f2e72..3aaddb8f 100644 --- a/src/Resources/UnmanagedAccessMethod.php +++ b/src/Resources/UnmanagedAccessMethod.php @@ -286,6 +286,10 @@ public static function from_json(mixed $json): Warnings|null => \Seam\Resources\UnmanagedAccessMethod\Warnings\RequestedCodeUnavailable::from_json( $json, ), + \Seam\Resources\UnmanagedAccessMethod\Warnings\WarningCode::SCHEDULE_ROUNDED_UP + => \Seam\Resources\UnmanagedAccessMethod\Warnings\ScheduleRoundedUp::from_json( + $json, + ), default => new self( created_at: $json->created_at ?? null, message: $json->message ?? null, @@ -1115,6 +1119,48 @@ public function __construct( } } + /** + * Indicates that the access system can only end card access on fixed time marks, so access was extended past `ends_at` to the next mark. The message states when access actually ends. + */ + final class ScheduleRoundedUp extends + \Seam\Resources\UnmanagedAccessMethod\Warnings + { + public static function from_json(mixed $json): ScheduleRoundedUp|null + { + if (!$json) { + return null; + } + return new self( + created_at: $json->created_at ?? null, + message: $json->message ?? null, + warning_code: $json->warning_code ?? null, + ); + } + + public function __construct( + /** + * Date and time at which Seam created the warning. + */ + string|null $created_at, + /** + * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. + */ + string|null $message, + /** + * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. + * + * @var value-of<\Seam\Resources\UnmanagedAccessMethod\Warnings\WarningCode>|string|null + */ + string|null $warning_code, + ) { + parent::__construct( + created_at: $created_at, + message: $message, + warning_code: $warning_code, + ); + } + } + enum WarningCode: string { case BEING_DELETED = "being_deleted"; @@ -1124,5 +1170,6 @@ enum WarningCode: string case USER_IDENTITY_MISSING_EMAIL_ADDRESS = "user_identity_missing_email_address"; case USER_IDENTITY_MISSING_PHONE_NUMBER = "user_identity_missing_phone_number"; case REQUESTED_CODE_UNAVAILABLE = "requested_code_unavailable"; + case SCHEDULE_ROUNDED_UP = "schedule_rounded_up"; } } diff --git a/src/Resources/UnmanagedDevice.php b/src/Resources/UnmanagedDevice.php index 8943f1e8..2d82e246 100644 --- a/src/Resources/UnmanagedDevice.php +++ b/src/Resources/UnmanagedDevice.php @@ -657,6 +657,7 @@ enum DeviceType: string case OMNITEC_LOCK = "omnitec_lock"; case KISI_LOCK = "kisi_lock"; case AQARA_LOCK = "aqara_lock"; + case EUFY_LOCK = "eufy_lock"; case KEYNEST_KEY = "keynest_key"; case NOISEAWARE_ACTIVITY_ZONE = "noiseaware_activity_zone"; case MINUT_SENSOR = "minut_sensor";