fill_presets = async (table, req, fixed) => {
  if (!table) return fixed;
  const fields = table.getFields();
  Object.keys(fixed || {}).forEach((k) => {
    if (k.startsWith("preset_")) {
      if (fixed[k]) {
        const fldnm = k.replace("preset_", "");
        const fld = fields.find((f) => f.name === fldnm);
        if (fld) {
          if (table.name === "users" && fld.primary_key)
            fixed[fldnm] = req.user ? req.user.id : null;
          else fixed[fldnm] = fld.presets[fixed[k]]({ user: req.user, req });
        }
      }
      delete fixed[k];
    } else {
      const fld = fields.find((f) => f.name === k);
      if (!fld) delete fixed[k];
      if (fixed[k] === null || fixed[k] === "") delete fixed[k];
    }
  });
  return fixed;
}
@param {object} table
@param {object} req
@param {object} fixed
@returns {Promise<object>}