mirror of
https://github.com/kunkunsh/kunkun.git
synced 2025-04-12 09:49:42 +00:00

* feat: add drizzle orm * feat: update drizzle configuration and schema management - Added a check for DB_FILE_NAME in drizzle.config.ts to ensure it's set. - Updated package.json to change the package name to @kksh/drizzle and added exports for schema and relations. - Enhanced README.md with instructions for using the schema generation. - Refactored schema.ts for improved readability and organization of imports. * add tauri-plugin-sql * feat: add database select and execute commands - Introduced `select` and `execute` functions in the database module to facilitate querying and executing SQL commands. - Updated the Tauri plugin to expose these commands, allowing for database interactions from the frontend. - Added corresponding permissions for the new commands in the permissions configuration. - Enhanced the database library with JSON value handling for query parameters. * fix: sqlite select command * drizzle ORM verified working * refactor: clean up database module by removing unused SelectQueryResult type and disabling eslint for explicit any usage * pnpm lock update * Update enum definition for type safety - Changed enum to use 'as const' for better type inference - Ensured more robust handling of extension publish sources * reimplemented most db command functions with ORM (migrate from tauri command invoke * fixed searchExtensionData orm function * Refactor ORM commands and searchExtensionData function for improved readability and consistency - Reformatted import statements for better organization. - Cleaned up whitespace and indentation in searchExtensionData function. - Enhanced readability of SQL conditions and query building logic. - Disabled eslint for explicit any usage in the troubleshooters page. * Fix test assertions in database module to use array indexing for results format rust code * update deno lock * move drizzle from desktop to drizzle package * update pnpm version and lock * refactor: migrate db tauri commands to drizzle * refactor: remove unused extension and command CRUD operations from db module
31 lines
795 B
TypeScript
31 lines
795 B
TypeScript
import { invoke } from "@tauri-apps/api/core"
|
|
import { generateJarvisPluginCommand } from "./common"
|
|
|
|
export interface QueryResult {
|
|
/** The number of rows affected by the query. */
|
|
rowsAffected: number
|
|
/**
|
|
* The last inserted `id`.
|
|
*
|
|
* This value is not set for Postgres databases. If the
|
|
* last inserted id is required on Postgres, the `select` function
|
|
* must be used, with a `RETURNING` clause
|
|
* (`INSERT INTO todos (title) VALUES ($1) RETURNING id`).
|
|
*/
|
|
lastInsertId?: number
|
|
}
|
|
|
|
export function select(query: string, values: any[]) {
|
|
return invoke<any[]>(generateJarvisPluginCommand("select"), {
|
|
query,
|
|
values
|
|
})
|
|
}
|
|
|
|
export function execute(query: string, values: any[]) {
|
|
return invoke<QueryResult>(generateJarvisPluginCommand("execute"), {
|
|
query,
|
|
values
|
|
})
|
|
}
|