@Override
  public @Nullable JsonValueAdapter createValueAdapter(@NotNull PsiElement element) {
    if (element instanceof YAMLValue) {
      return YamlPropertyAdapter.createValueAdapterByType((YAMLValue)element);
    }
    if (element instanceof YAMLDocument) {
      return new YamlEmptyObjectAdapter(element);
    }
    if (element instanceof LeafPsiElement leaf && leaf.getElementType() == YAMLTokenTypes.INDENT) {
      return YamlPropertyAdapter.createEmptyValueAdapter(element, true);
    }
    if (element instanceof LeafPsiElement) {
      JsonPropertyAdapter parentPropertyAdapter = getParentPropertyAdapter(element);
      return parentPropertyAdapter == null ? null : parentPropertyAdapter.getNameValueAdapter();
    }
    return null;
  }
@Override
  public @Nullable JsonValueAdapter createValueAdapter(@NotNull PsiElement element)