Personal Table

Tabla personalizable

Para finalizar en el tema de base de datos este archivo es a gusto personal, pero ten en cuenta que si modificas esta tabla deberás restructurar el código de los otros archivos.

En este archivo se crea una tabla con los datos que vayas a querer almacenar del cliente para seguir un flujo por ejemplo.

La creación es igual que el archivo Table Chats solo que con diferentes columnas las cuales son:

const columns = [
    {name: 'id', type: 'bigserial', primaryKey: true},
    {name: 'name', type: 'text', notNull: true},
    {name: 'last_name', type: 'text', notNull: true},
    {name: 'phone_number', type: 'numeric', notNull: false},
    {name: 'language', type: 'text', notNull: true},
    {name: 'validations', type: 'boolean[]', notNull: false, define: 'ARRAY[false,false]'},
    {name: 'created_at', type: 'timestamptz', notNull: 'now()'},
]

En este mismo archivo también podrás modificar las políticas que se creen de manera automática para que no surja algún error en supabase (recomiendo que por defecto lo dejes así, puedes agregar tus políticas, pero evita borrar las políticas ya colocadas).

await DatabaseManager.query(createTableQuery);
console.log("Table created successfully");

// Enable row level security basic to supabase table
const enableRLSQuery = `ALTER TABLE ${tableName} ENABLE ROW LEVEL SECURITY`;
await DatabaseManager.query(enableRLSQuery);
console.log('Row level security enabled');

Última actualización