@shopify/shopify-app-session-storage
Version:
Shopify App Session Storage - abstract class
1 lines • 2.81 kB
Source Map (JSON)
{"version":3,"file":"rdbms-session-storage-migrator.mjs","sources":["../../../src/rdbms-session-storage-migrator.ts"],"sourcesContent":["import {AbstractMigrationEngine} from './abstract-migration-engine';\nimport {\n RdbmsSessionStorageMigratorOptions,\n defaultRdbmsSessionStorageMigratorOptions,\n RdbmsConnection,\n MigrationOperation,\n} from './types';\n\nexport abstract class RdbmsSessionStorageMigrator extends AbstractMigrationEngine<\n RdbmsConnection,\n RdbmsSessionStorageMigratorOptions\n> {\n constructor(\n dbConnection: RdbmsConnection,\n opts: Partial<RdbmsSessionStorageMigratorOptions> = {},\n migrations: MigrationOperation[],\n ) {\n super(\n dbConnection,\n {\n ...defaultRdbmsSessionStorageMigratorOptions,\n ...opts,\n },\n migrations,\n );\n }\n\n async hasMigrationBeenApplied(migrationName: string): Promise<boolean> {\n await this.ready;\n\n const query = `\n SELECT * FROM ${this.options.migrationDBIdentifier}\n WHERE ${this.getOptions().migrationNameColumnName} =\n ${this.connection.getArgumentPlaceholder(1)};\n `;\n\n const rows = await this.connection.query(query, [migrationName]);\n return rows.length === 1;\n }\n\n async saveAppliedMigration(migrationName: string): Promise<void> {\n await this.ready;\n\n const insert = `\n INSERT INTO ${this.options.migrationDBIdentifier} (${\n this.getOptions().migrationNameColumnName\n })\n VALUES(${this.connection.getArgumentPlaceholder(1)});\n `;\n\n await this.connection.query(insert, [migrationName]);\n }\n\n public getOptions(): RdbmsSessionStorageMigratorOptions {\n return this.options as RdbmsSessionStorageMigratorOptions;\n }\n\n abstract initMigrationPersistence(): Promise<void>;\n}\n"],"names":[],"mappings":";;;AAQM,MAAgB,2BAA4B,SAAQ,uBAGzD,CAAA;AACC,IAAA,WAAA,CACE,YAA6B,EAC7B,IAAA,GAAoD,EAAE,EACtD,UAAgC,EAAA;QAEhC,KAAK,CACH,YAAY,EACZ;AACE,YAAA,GAAG,yCAAyC;AAC5C,YAAA,GAAG,IAAI;SACR,EACD,UAAU,CACX;IACH;IAEA,MAAM,uBAAuB,CAAC,aAAqB,EAAA;QACjD,MAAM,IAAI,CAAC,KAAK;AAEhB,QAAA,MAAM,KAAK,GAAG;sBACI,IAAI,CAAC,OAAO,CAAC,qBAAqB;AAC1C,YAAA,EAAA,IAAI,CAAC,UAAU,EAAE,CAAC,uBAAuB,CAAA;AAC7C,QAAA,EAAA,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAA;KAC9C;AAED,QAAA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,CAAC;AAChE,QAAA,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC;IAC1B;IAEA,MAAM,oBAAoB,CAAC,aAAqB,EAAA;QAC9C,MAAM,IAAI,CAAC,KAAK;AAEhB,QAAA,MAAM,MAAM,GAAG;wBACK,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAA,EAAA,EAC9C,IAAI,CAAC,UAAU,EAAE,CAAC,uBACpB,CAAA;AACS,iBAAA,EAAA,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAA;SACnD;AAEL,QAAA,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,aAAa,CAAC,CAAC;IACtD;IAEO,UAAU,GAAA;QACf,OAAO,IAAI,CAAC,OAA6C;IAC3D;AAGD;;;;"}