geo??null; } public function setGeo(GeoCoordinates|GeoShape|array $geo):void { if (is_array($geo)) { if(!array_key_exists('type', $geo)) { $geo['type'] = 'JVBase\managers\SEO\render\Thing\Intangible\StructuredValue\GeoCoordinates'; } $geo = SchemaHelper::classFromConfig($geo); } $this->geo = $geo; } public function getGeoFieldConfig():array { return [ 'type' => 'group', 'wrap' => 'details', 'label' => 'Coordinates', 'fields' => [ 'latitude' => [ 'type' => 'text', 'label' => 'Latitude', 'hint' => 'The latitude of a location. For example 37.42242' ], 'longitude' => [ 'type' => 'text', 'label' => 'Longitude', 'hint' => 'The longitude of a location. For example -122.08585' ] ] ]; } }