whitelabel-db 1.1.44 → 1.1.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export { connect, ConnectionDetails } from './libs/database';
2
+ export { runMigrations } from './libs/migration';
2
3
  export { Agency } from './models/Agency';
3
4
  export { City } from './models/City';
4
5
  export { Country } from './models/Country';
package/dist/index.js CHANGED
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LiteApiUser = exports.LiteApiClientV3 = exports.LiteApiClient = exports.Feedback = exports.Referral = exports.HotelAccessibility = exports.Guest = exports.HotelTranslation = exports.Role = exports.Booking = exports.Project = exports.User = exports.Hotel = exports.Country = exports.City = exports.Agency = exports.connect = void 0;
3
+ exports.LiteApiUser = exports.LiteApiClientV3 = exports.LiteApiClient = exports.Feedback = exports.Referral = exports.HotelAccessibility = exports.Guest = exports.HotelTranslation = exports.Role = exports.Booking = exports.Project = exports.User = exports.Hotel = exports.Country = exports.City = exports.Agency = exports.runMigrations = exports.connect = void 0;
4
4
  var database_1 = require("./libs/database");
5
5
  Object.defineProperty(exports, "connect", { enumerable: true, get: function () { return database_1.connect; } });
6
+ var migration_1 = require("./libs/migration");
7
+ Object.defineProperty(exports, "runMigrations", { enumerable: true, get: function () { return migration_1.runMigrations; } });
6
8
  var Agency_1 = require("./models/Agency");
7
9
  Object.defineProperty(exports, "Agency", { enumerable: true, get: function () { return Agency_1.Agency; } });
8
10
  var City_1 = require("./models/City");
@@ -0,0 +1,2 @@
1
+ import { Sequelize } from 'sequelize';
2
+ export declare const runMigrations: (sequelize: Sequelize) => Promise<void>;
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
+ };
37
+ Object.defineProperty(exports, "__esModule", { value: true });
38
+ exports.runMigrations = void 0;
39
+ const path_1 = __importDefault(require("path"));
40
+ const fs_1 = __importDefault(require("fs"));
41
+ const runMigrations = (sequelize) => __awaiter(void 0, void 0, void 0, function* () {
42
+ const migrationsPath = path_1.default.resolve(__dirname, '../migrations');
43
+ if (!fs_1.default.existsSync(migrationsPath)) {
44
+ console.error(`Migrations directory not found at: ${migrationsPath}`);
45
+ return;
46
+ }
47
+ // Read and sort migration files
48
+ const migrationFiles = fs_1.default
49
+ .readdirSync(migrationsPath)
50
+ .filter((file) => file.match(/^\d{3}-.+\.ts$/) || file.match(/^\d{3}-.+\.js$/)) // Matches .ts and .js files
51
+ .filter((file) => !file.endsWith('.d.ts')) // Exclude .d.ts files
52
+ .sort(); // Sort files by name
53
+ const [results] = yield sequelize.query('SELECT name FROM "SequelizeMeta"');
54
+ const executedMigrations = results.map((row) => row.name);
55
+ for (const file of migrationFiles) {
56
+ if (!executedMigrations.includes(file)) {
57
+ const migration = yield Promise.resolve(`${path_1.default.join(migrationsPath, file)}`).then(s => __importStar(require(s)));
58
+ if (migration.up) {
59
+ console.log(`Running migration: ${file}`);
60
+ yield migration.up(sequelize.getQueryInterface());
61
+ yield sequelize.query(`INSERT INTO "SequelizeMeta" (name) VALUES ('${file}')`);
62
+ }
63
+ }
64
+ else {
65
+ console.log(`Skipping migration: ${file}`);
66
+ }
67
+ }
68
+ console.log('Migrations completed.');
69
+ });
70
+ exports.runMigrations = runMigrations;
@@ -0,0 +1,3 @@
1
+ import { QueryInterface } from 'sequelize';
2
+ export declare const up: (queryInterface: QueryInterface) => Promise<void>;
3
+ export declare const down: (queryInterface: QueryInterface) => Promise<void>;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.down = exports.up = void 0;
13
+ const sequelize_1 = require("sequelize");
14
+ const up = (queryInterface) => __awaiter(void 0, void 0, void 0, function* () {
15
+ try {
16
+ yield queryInterface.addColumn('guests', 'voucherCount', {
17
+ type: sequelize_1.DataTypes.INTEGER,
18
+ allowNull: true,
19
+ defaultValue: 0,
20
+ });
21
+ console.log('Column voucherCount added successfully.');
22
+ }
23
+ catch (error) {
24
+ if (error.message.includes('already exists')) {
25
+ console.log('Column voucherCount already exists, skipping.');
26
+ }
27
+ else {
28
+ throw error; // Re-throw other errors
29
+ }
30
+ }
31
+ });
32
+ exports.up = up;
33
+ const down = (queryInterface) => __awaiter(void 0, void 0, void 0, function* () {
34
+ try {
35
+ yield queryInterface.removeColumn('guests', 'voucherCount');
36
+ console.log('Column voucherCount removed successfully.');
37
+ }
38
+ catch (error) {
39
+ if (error.message.includes('does not exist')) {
40
+ console.log('Column voucherCount does not exist, skipping.');
41
+ }
42
+ else {
43
+ throw error; // Re-throw other errors
44
+ }
45
+ }
46
+ });
47
+ exports.down = down;
@@ -0,0 +1,3 @@
1
+ import { QueryInterface } from 'sequelize';
2
+ export declare const up: (queryInterface: QueryInterface) => Promise<void>;
3
+ export declare const down: (queryInterface: QueryInterface) => Promise<void>;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.down = exports.up = void 0;
13
+ // testing migration file
14
+ const sequelize_1 = require("sequelize");
15
+ const up = (queryInterface) => __awaiter(void 0, void 0, void 0, function* () {
16
+ try {
17
+ yield queryInterface.createTable('user1', {
18
+ id: {
19
+ type: sequelize_1.DataTypes.UUID,
20
+ primaryKey: true,
21
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
22
+ },
23
+ name: {
24
+ type: sequelize_1.DataTypes.STRING,
25
+ allowNull: false,
26
+ },
27
+ email: {
28
+ type: sequelize_1.DataTypes.STRING,
29
+ allowNull: false,
30
+ },
31
+ });
32
+ console.log('Table user1 created successfully.');
33
+ }
34
+ catch (error) {
35
+ if (error.message.includes('already exists')) {
36
+ console.log('Table user1 already exists, skipping.');
37
+ }
38
+ else {
39
+ throw error; // Re-throw other errors
40
+ }
41
+ }
42
+ });
43
+ exports.up = up;
44
+ const down = (queryInterface) => __awaiter(void 0, void 0, void 0, function* () {
45
+ try {
46
+ yield queryInterface.dropTable('user1');
47
+ console.log('Table user1 dropped successfully.');
48
+ }
49
+ catch (error) {
50
+ if (error.message.includes('does not exist')) {
51
+ console.log('Table user1 does not exist, skipping.');
52
+ }
53
+ else {
54
+ throw error; // Re-throw other errors
55
+ }
56
+ }
57
+ });
58
+ exports.down = down;
@@ -0,0 +1,3 @@
1
+ import { QueryInterface } from 'sequelize';
2
+ export declare const up: (queryInterface: QueryInterface) => Promise<void>;
3
+ export declare const down: (queryInterface: QueryInterface) => Promise<void>;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.down = exports.up = void 0;
13
+ const sequelize_1 = require("sequelize");
14
+ const up = (queryInterface) => __awaiter(void 0, void 0, void 0, function* () {
15
+ try {
16
+ // create table user 1 with name and email column
17
+ yield queryInterface.createTable('user1', {
18
+ id: {
19
+ type: sequelize_1.DataTypes.UUID,
20
+ primaryKey: true,
21
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
22
+ },
23
+ name: {
24
+ type: sequelize_1.DataTypes.STRING,
25
+ allowNull: false,
26
+ },
27
+ email: {
28
+ type: sequelize_1.DataTypes.STRING,
29
+ allowNull: false,
30
+ },
31
+ });
32
+ console.log('Table user1 created successfully.');
33
+ }
34
+ catch (error) {
35
+ if (error.message.includes('already exists')) {
36
+ console.log('Table user1 already exists, skipping.');
37
+ }
38
+ else {
39
+ throw error; // Re-throw other errors
40
+ }
41
+ }
42
+ });
43
+ exports.up = up;
44
+ const down = (queryInterface) => __awaiter(void 0, void 0, void 0, function* () {
45
+ try {
46
+ yield queryInterface.dropTable('user1');
47
+ console.log('Table user1 dropped successfully.');
48
+ }
49
+ catch (error) {
50
+ if (error.message.includes('does not exist')) {
51
+ console.log('Table user1 does not exist, skipping.');
52
+ }
53
+ else {
54
+ throw error; // Re-throw other errors
55
+ }
56
+ }
57
+ });
58
+ exports.down = down;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "whitelabel-db",
3
- "version": "1.1.44",
3
+ "version": "1.1.45",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",