encryption of sqlite working

This commit is contained in:
Martin Drechsel
2025-04-28 12:18:39 +02:00
parent 2c5ec6b281
commit 410a885d21
31 changed files with 3664 additions and 1766 deletions

View File

@ -1,44 +1,51 @@
import {
integer,
sqliteTable,
text,
type AnySQLiteColumn,
unique,
numeric,
} from 'drizzle-orm/sqlite-core';
integer,
sqliteTable,
text,
type AnySQLiteColumn,
unique,
numeric,
} from "drizzle-orm/sqlite-core";
export const haexSettings = sqliteTable('haex_settings', {
id: text().primaryKey(),
key: text(),
value_text: text(),
value_json: text({ mode: 'json' }),
value_number: numeric(),
export function generateCreateStatements() {
const tables = [haexSettings, haexExtensions, testTable, haexExtensionsPermissions];
}
export const haexSettings = sqliteTable("haex_settings", {
id: text().primaryKey(),
key: text(),
value_text: text(),
value_json: text({ mode: "json" }),
value_number: numeric(),
});
export const haexExtensions = sqliteTable('haex_extensions', {
id: text().primaryKey(),
author: text(),
enabled: integer(),
name: text(),
url: text(),
version: text(),
export const haexExtensions = sqliteTable("haex_extensions", {
id: text().primaryKey(),
author: text(),
enabled: integer(),
name: text(),
url: text(),
version: text(),
});
export const testTable = sqliteTable("testTable", {
id: text().primaryKey(),
author: text(),
test: text(),
});
export const haexExtensionsPermissions = sqliteTable(
'haex_extensions_permissions',
{
id: text().primaryKey(),
extensionId: text('extension_id').references(
(): AnySQLiteColumn => haexExtensions.id
),
resource: text({ enum: ['fs', 'http', 'database'] }),
operation: text({ enum: ['read', 'write', 'create'] }),
path: text(),
},
(table) => [
unique().on(table.extensionId, table.resource, table.operation, table.path),
]
"haex_extensions_permissions",
{
id: text().primaryKey(),
extensionId: text("extension_id").references((): AnySQLiteColumn => haexExtensions.id),
resource: text({ enum: ["fs", "http", "database"] }),
operation: text({ enum: ["read", "write", "create"] }),
path: text(),
},
(table) => [unique().on(table.extensionId, table.resource, table.operation, table.path)]
);
console.log("table", haexExtensionsPermissions.getSQL());
export type InsertHaexSettings = typeof haexSettings.$inferInsert;
export type SelectHaexSettings = typeof haexSettings.$inferSelect;
@ -46,7 +53,5 @@ export type SelectHaexSettings = typeof haexSettings.$inferSelect;
export type InsertHaexExtensions = typeof haexExtensions.$inferInsert;
export type SelectHaexExtensions = typeof haexExtensions.$inferSelect;
export type InsertHaexExtensionsPermissions =
typeof haexExtensionsPermissions.$inferInsert;
export type SelectHaexExtensionsPermissions =
typeof haexExtensionsPermissions.$inferSelect;
export type InsertHaexExtensionsPermissions = typeof haexExtensionsPermissions.$inferInsert;
export type SelectHaexExtensionsPermissions = typeof haexExtensionsPermissions.$inferSelect;