Возможно ли в adminjs панели работать с данными формата JSON или JSONB?

Да, в AdminJS, который является расширяемым фреймворком для создания панели администратора, можно работать с данными формата JSON или JSONB.

AdminJS предоставляет специальное поле типа "json" для работы с данными, которые представлены в формате JSON или JSONB. Это позволяет администраторам легко просматривать и редактировать такие данные.

Чтобы использовать поле типа "json" в AdminJS, вам необходимо добавить соответствующий атрибут в соответствующем конфигурационном объекте для вашей модели. Например, если у вас есть модель "User" с атрибутом "settings" типа JSON, вы можете создать конфигурацию следующим образом:

const AdminJS = require('adminjs');
const { json } = require('adminjs/mongoose');

const mongoose = require('mongoose');

const UserSchema = new mongoose.Schema({
  settings: {
    type: mongoose.Schema.Types.Mixed,
    default: {}
  }
});

const User = mongoose.model('User', UserSchema);

AdminJS.registerAdapter(mongoose);

const adminJsOptions = {
  resources: [
    {
      resource: User,
      options: {
        properties: {
          settings: { type: 'json' } 
        }
      }
    }
  ]
};

const adminJs = new AdminJS(adminJsOptions);

В этом примере мы использовали адаптер Mongoose для связи AdminJS с нашей моделью и указали, что атрибут "settings" должен быть представлен как поле типа "json". Теперь, когда вы запустите приложение, вы сможете просматривать и редактировать данные в формате JSON или JSONB через панель администратора, созданную на основе AdminJS.

Однако помните, что тип "json" в AdminJS предназначен только для работы с данными, которые представлены в формате JSON или JSONB. Если вы хотите взаимодействовать с данными в других форматах, вам, возможно, потребуется создать собственное поле типа.