@sphereon/ssi-sdk.data-store
Version:
74 lines • 4.59 kB
JavaScript
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.CreateContacts1715761125001 = void 0;
class CreateContacts1715761125001 {
constructor() {
this.name = 'CreateContacts1715761125001';
}
up(queryRunner) {
return __awaiter(this, void 0, void 0, function* () {
// Upgrade IdentityMetadata table
yield queryRunner.query(`ALTER TABLE "IdentityMetadata" RENAME TO "temporary_IdentityMetadata"`);
yield queryRunner.query(`CREATE TABLE "IdentityMetadata"
(
"id" uuid PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(),
"label" character varying(255) NOT NULL,
"valueType" character varying NOT NULL,
"stringValue" text,
"numberValue" double precision,
"dateValue" TIMESTAMP,
"boolValue" boolean,
"identityId" uuid,
CONSTRAINT "FK_Identity_IdentityMetadata" FOREIGN KEY ("identityId") REFERENCES "Identity" ("id") ON DELETE CASCADE
)`);
yield queryRunner.query(`INSERT INTO "IdentityMetadata" ("id", "label", "valueType", "stringValue", "identityId")
SELECT "id", "label", 'string', "value", "identityId"
FROM "temporary_IdentityMetadata"`);
yield queryRunner.query(`DROP TABLE "temporary_IdentityMetadata"`);
// Create new ContactMetadata table
yield queryRunner.query(`CREATE TABLE "ContactMetadata"
(
"id" uuid PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(),
"label" character varying(255) NOT NULL,
"valueType" character varying NOT NULL,
"stringValue" text,
"numberValue" double precision,
"dateValue" TIMESTAMP,
"boolValue" boolean,
"contactId" uuid,
CONSTRAINT "FK_BaseContact_ContactMetadata" FOREIGN KEY ("contactId") REFERENCES "BaseContact" ("id") ON DELETE CASCADE
)`);
});
}
down(queryRunner) {
return __awaiter(this, void 0, void 0, function* () {
// Drop the ContactMetadata table
yield queryRunner.query(`DROP TABLE "ContactMetadata"`);
// Restore the IdentityMetadata table
yield queryRunner.query(`ALTER TABLE "IdentityMetadata" RENAME TO "temporary_IdentityMetadata"`);
yield queryRunner.query(`CREATE TABLE "IdentityMetadata"
(
"id" uuid PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(),
"label" character varying(255) NOT NULL,
"value" character varying(255) NOT NULL,
"identityId" uuid,
CONSTRAINT "FK_Identity_IdentityMetadata" FOREIGN KEY ("identityId") REFERENCES "Identity" ("id") ON DELETE CASCADE
)`);
yield queryRunner.query(`INSERT INTO "IdentityMetadata" ("id", "label", "value", "identityId")
SELECT "id", "label", "stringValue", "identityId"
FROM "temporary_IdentityMetadata"`);
yield queryRunner.query(`DROP TABLE "temporary_IdentityMetadata"`);
});
}
}
exports.CreateContacts1715761125001 = CreateContacts1715761125001;
//# sourceMappingURL=1715761125001-CreateContacts.js.map