{"version":3,"file":"hive.Pfb3mnbn.mjs","sources":["../../../@hive/sdk/dist/transaction.mjs"],"sourcesContent":["import { z } from \"zod\";\n\n//#region src/transaction.ts\n/**\n* List of keywords that indicate a Statement modifies the contents of the\n* Database it is executed on.\n*/\nconst MODIFYING_KEYWORDS = [\n\t\"INSERT \",\n\t\"UPDATE \",\n\t\"DELETE \",\n\t\"ALTER \",\n\t\"CREATE \",\n\t\"DROP \"\n];\n/**\n* Very simple and yet to be improved utility function to check if a provided\n* Statement modifies the contents of the Database it is executed on.\n*\n* @param statement Statement to check.\n*\n* @returns Boolean indicating whether the Statement modifies the contents of\n* the Database it is executed on.\n*/\nconst isWrite = (statement) => MODIFYING_KEYWORDS.some((keyword) => statement.sql.trim().toUpperCase().includes(keyword));\nconst StatementParamValueSchema = z.any();\nconst StatementParamListSchema = z.array(StatementParamValueSchema);\nconst StatementParamNamedSchema = z.record(z.string(), StatementParamValueSchema);\nconst StatementInputSchema = z.union([z.string(), z.object({\n\tsql: z.string(),\n\tparams: z.union([StatementParamListSchema, StatementParamNamedSchema]).nullable().optional(),\n\tmethod: z.enum([\n\t\t\"all\",\n\t\t\"run\",\n\t\t\"get\",\n\t\t\"values\"\n\t]).nullable().default(\"all\").optional()\n})]);\nconst StatementSchema = z.union([z.string(), z.object({\n\tsql: z.string(),\n\tparams: z.union([StatementParamListSchema, StatementParamNamedSchema]),\n\tmethod: z.enum([\n\t\t\"all\",\n\t\t\"run\",\n\t\t\"get\",\n\t\t\"values\"\n\t])\n})]);\nconst RowObjectSchema = z.record(z.string(), StatementParamValueSchema);\nconst RowValuesSchema = z.array(StatementParamValueSchema);\nconst StatementResultSchema = z.object({\n\tstatement: StatementSchema,\n\trows: z.union([RowObjectSchema, RowValuesSchema])\n});\nconst TransactionInputSchema = z.union([z.array(StatementInputSchema), z.object({\n\tstatements: z.array(StatementInputSchema),\n\tmode: z.union([\n\t\tz.literal(\"DEFERRED\"),\n\t\tz.literal(\"IMMEDIATE\"),\n\t\tz.literal(\"EXCLUSIVE\"),\n\t\tz.literal(false)\n\t]).nullable().default(\"DEFERRED\").optional()\n})]);\nconst TransactionSchema = z.object({\n\tstatements: z.array(StatementSchema),\n\tmode: z.union([\n\t\tz.literal(\"DEFERRED\"),\n\t\tz.literal(\"IMMEDIATE\"),\n\t\tz.literal(\"EXCLUSIVE\"),\n\t\tz.literal(false)\n\t]).default(\"DEFERRED\")\n});\n\n//#endregion\nexport { RowObjectSchema, RowValuesSchema, StatementInputSchema, StatementParamListSchema, StatementParamNamedSchema, StatementParamValueSchema, StatementResultSchema, StatementSchema, TransactionInputSchema, TransactionSchema, isWrite };"],"names":[],"mappings":"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"}