public function getPublishedLocales(ShadowLocaleBehavior $document)
    {
        $node = $this->getNode($document);
        $locales = $this->getLocales($document);
        $publishedLocales = [];

        foreach ($locales as $locale) {
            $publishedPropertyName = $this->encoder->localizedSystemName(
                WorkflowStageSubscriber::PUBLISHED_FIELD,
                $locale
            );

            if ($node->getPropertyValueWithDefault($publishedPropertyName, false)) {
                $publishedLocales[] = $locale;
            }
        }

        return $publishedLocales;
    }