case $field instanceof IdField:
return ['type' => 'uuid', 'flags' => $flags];
// json fields
case $field instanceof CustomFields:
case $field instanceof VersionDataPayloadField:
case $field instanceof CalculatedPriceField:
case $field instanceof CartPriceField:
case $field instanceof PriceDefinitionField:
case $field instanceof PriceField:
case $field instanceof ObjectField:
return $this->createJsonObjectType($definition, $field, $flags);
case $field instanceof ListField:
case $field instanceof BreadcrumbField:
return ['type' => 'json_list', 'flags' => $flags];
case $field instanceof JsonField:
return $this->createJsonObjectType($definition, $field, $flags);
// association fields
case $field instanceof OneToManyAssociationField:
case $field instanceof ChildrenAssociationField: