{"version":3,"file":"index.mjs","sources":["../../../@hive/drizzle/dist/index.mjs"],"sourcesContent":["import { Selector } from \"@hive/sdk/selector\";\nimport { sql, sql as sql$1 } from \"drizzle-orm\";\nimport { drizzle as drizzle$1 } from \"drizzle-orm/sqlite-proxy\";\nimport { migrate as migrate$1 } from \"drizzle-orm/sqlite-proxy/migrator\";\n\nexport * from \"drizzle-orm/sqlite-core\"\n\n//#region src/index.ts\n/**\n* Minimal wrapper around `drizzle-orm/sqlite-proxy`, allowing to easily use\n* Hive in combination with Drizzle.\n*\n* @param hive Hive instance the Resource belongs to.\n* @param resource Hive Resource to use.\n*\n* @returns Drizzle instance.\n*/\nconst drizzle = (hive, resource) => drizzle$1(async (sql$2, params, method) => {\n\tconst selector = resource instanceof Selector ? resource : new Selector(resource);\n\ttry {\n\t\tconst [{ rows }] = await hive.storage.query(selector, {\n\t\t\tmode: \"DEFERRED\",\n\t\t\tstatements: [{\n\t\t\t\tsql: sql$2,\n\t\t\t\tparams,\n\t\t\t\tmethod: method === \"all\" ? \"values\" : method\n\t\t\t}]\n\t\t});\n\t\treturn { rows };\n\t} catch (err) {\n\t\tconst error = err instanceof Error ? err : new Error(String(err));\n\t\tthrow error;\n\t}\n}, async (batch) => {\n\tconst selector = resource instanceof Selector ? resource : new Selector(resource);\n\ttry {\n\t\tconst res = await hive.storage.query(selector, {\n\t\t\tmode: \"DEFERRED\",\n\t\t\tstatements: batch.map(({ sql: sql$2, params, method }) => ({\n\t\t\t\tsql: sql$2,\n\t\t\t\tparams,\n\t\t\t\tmethod: method === \"all\" ? \"values\" : method\n\t\t\t}))\n\t\t});\n\t\treturn res.map(({ rows }) => ({ rows }));\n\t} catch (err) {\n\t\tconst error = err instanceof Error ? err : new Error(String(err));\n\t\tthrow error;\n\t}\n});\n/**\n* Wrapper around `drizzle-orm/sqlite-proxy/migrator`, allowing to easily apply\n* migrations to a Database.\n*\n* @param hive Hive instance the Resource belongs to.\n* @param resource Hive Resource to use.\n* @param options Migration options.\n*\n* @returns Migration result.\n*/\nconst migrate = (hive, resource, options) => {\n\tconst client = drizzle(hive, resource);\n\treturn migrate$1(client, async (queries) => {\n\t\tconst [first, ...rest] = queries;\n\t\tif (first === void 0) return;\n\t\tawait client.batch([client.run(sql$1.raw(first)), ...rest.map((q) => client.run(sql$1.raw(q)))]);\n\t}, options);\n};\n\n//#endregion\nexport { drizzle, migrate, sql };"],"names":["sql$1"],"mappings":";;;;;;;;AAiBA,MAAM,OAAA,GAAU,CAAC,IAAA,EAAM,QAAA,KAAa,UAAU,OAAO,KAAA,EAAO,QAAQ,MAAA,KAAW;AAC9E,EAAA,MAAM,WAAW,QAAA,YAAoB,QAAA,GAAW,QAAA,GAAW,IAAI,SAAS,QAAQ,CAAA;AAChF,EAAA,IAAI;AACH,IAAA,MAAM,CAAC,EAAE,IAAA,EAAM,IAAI,MAAM,IAAA,CAAK,OAAA,CAAQ,KAAA,CAAM,QAAA,EAAU;AAAA,MACrD,IAAA,EAAM,UAAA;AAAA,MACN,YAAY,CAAC;AAAA,QACZ,GAAA,EAAK,KAAA;AAAA,QACL,MAAA;AAAA,QACA,MAAA,EAAQ,MAAA,KAAW,KAAA,GAAQ,QAAA,GAAW;AAAA,OACtC;AAAA,KACD,CAAA;AACD,IAAA,OAAO,EAAE,IAAA,EAAK;AAAA,EACf,SAAS,GAAA,EAAK;AACb,IAAA,MAAM,KAAA,GAAQ,eAAe,KAAA,GAAQ,GAAA,GAAM,IAAI,KAAA,CAAM,MAAA,CAAO,GAAG,CAAC,CAAA;AAChE,IAAA,MAAM,KAAA;AAAA,EACP;AACD,CAAA,EAAG,OAAO,KAAA,KAAU;AACnB,EAAA,MAAM,WAAW,QAAA,YAAoB,QAAA,GAAW,QAAA,GAAW,IAAI,SAAS,QAAQ,CAAA;AAChF,EAAA,IAAI;AACH,IAAA,MAAM,GAAA,GAAM,MAAM,IAAA,CAAK,OAAA,CAAQ,MAAM,QAAA,EAAU;AAAA,MAC9C,IAAA,EAAM,UAAA;AAAA,MACN,UAAA,EAAY,MAAM,GAAA,CAAI,CAAC,EAAE,GAAA,EAAK,KAAA,EAAO,MAAA,EAAQ,MAAA,EAAO,MAAO;AAAA,QAC1D,GAAA,EAAK,KAAA;AAAA,QACL,MAAA;AAAA,QACA,MAAA,EAAQ,MAAA,KAAW,KAAA,GAAQ,QAAA,GAAW;AAAA,OACvC,CAAE;AAAA,KACF,CAAA;AACD,IAAA,OAAO,GAAA,CAAI,IAAI,CAAC,EAAE,MAAK,MAAO,EAAE,MAAK,CAAE,CAAA;AAAA,EACxC,SAAS,GAAA,EAAK;AACb,IAAA,MAAM,KAAA,GAAQ,eAAe,KAAA,GAAQ,GAAA,GAAM,IAAI,KAAA,CAAM,MAAA,CAAO,GAAG,CAAC,CAAA;AAChE,IAAA,MAAM,KAAA;AAAA,EACP;AACD,CAAC;AAWD,MAAM,OAAA,GAAU,CAAC,IAAA,EAAM,QAAA,EAAU,OAAA,KAAY;AAC5C,EAAA,MAAM,MAAA,GAAS,OAAA,CAAQ,IAAA,EAAM,QAAQ,CAAA;AACrC,EAAA,OAAO,SAAA,CAAU,MAAA,EAAQ,OAAO,OAAA,KAAY;AAC3C,IAAA,MAAM,CAAC,KAAA,EAAO,GAAG,IAAI,CAAA,GAAI,OAAA;AACzB,IAAA,IAAI,UAAU,MAAA,EAAQ;AACtB,IAAA,MAAM,MAAA,CAAO,MAAM,CAAC,MAAA,CAAO,IAAIA,GAAA,CAAM,GAAA,CAAI,KAAK,CAAC,CAAA,EAAG,GAAG,KAAK,GAAA,CAAI,CAAC,CAAA,KAAM,MAAA,CAAO,GAAA,CAAIA,GAAA,CAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAAA,EAChG,GAAG,OAAO,CAAA;AACX;;;;"}