diff --git a/src/Plugin/Field/FieldType/SmartDateItem.php b/src/Plugin/Field/FieldType/SmartDateItem.php
index 171a3d12cd3753583c9003f49c805a9d3dac25c3..96a213e2826fba21e85f9e396b9cfc88fd29fe79 100644
--- a/src/Plugin/Field/FieldType/SmartDateItem.php
+++ b/src/Plugin/Field/FieldType/SmartDateItem.php
@@ -76,7 +76,7 @@ class SmartDateItem extends TimestampItem {
       ->setRequired(FALSE)
       // @todo: Define this via an options provider once
       // https://www.drupal.org/node/2329937 is completed.
-      ->addConstraint('AllowedValues', array_keys(system_time_zones(TRUE, FALSE)));
+      ->addConstraint('AllowedValues', \DateTimeZone::listIdentifiers());
 
     return $properties;
   }
diff --git a/src/Plugin/Field/FieldWidget/SmartDateTimezoneWidget.php b/src/Plugin/Field/FieldWidget/SmartDateTimezoneWidget.php
index a21b7b67415598a56ec839681d4cb673d582da29..70ca9985e484cc15eecd5137d26f882aabd9f1e0 100644
--- a/src/Plugin/Field/FieldWidget/SmartDateTimezoneWidget.php
+++ b/src/Plugin/Field/FieldWidget/SmartDateTimezoneWidget.php
@@ -2,6 +2,8 @@
 
 namespace Drupal\smart_date\Plugin\Field\FieldWidget;
 
+use Drupal\Component\Utility\DeprecationHelper;
+use Drupal\Core\Datetime\TimeZoneFormHelper;
 use Drupal\Core\Field\FieldItemListInterface;
 use Drupal\Core\Form\FormStateInterface;
 use Drupal\Core\Plugin\ContainerFactoryPluginInterface;
@@ -162,7 +164,17 @@ class SmartDateTimezoneWidget extends SmartDateInlineWidget implements Container
    * Helper function to retrieve available timezones.
    */
   public function getTimezones($grouped = TRUE) {
-    return system_time_zones(FALSE, $grouped);
+    if (!class_exists(DeprecationHelper::class)) {
+      return system_time_zones(FALSE, $grouped);
+    }
+    return DeprecationHelper::backwardsCompatibleCall(
+      \Drupal::VERSION,
+      '10.1',
+      static function () use ($grouped) {
+        return $grouped ? TimeZoneFormHelper::getOptionsListByRegion() : TimeZoneFormHelper::getOptionsList();
+      },
+      static fn () => system_time_zones(FALSE, $grouped)
+    );
   }
 
   /**