UNPKG

xud

Version:
50 lines 1.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const sequelize_1 = require("sequelize"); function Node(sequelize) { const attributes = { id: { type: sequelize_1.DataTypes.INTEGER, primaryKey: true, autoIncrement: true }, nodePubKey: { type: sequelize_1.DataTypes.STRING, unique: true, allowNull: false }, addressesText: { type: sequelize_1.DataTypes.TEXT, allowNull: false }, addresses: { type: sequelize_1.DataTypes.VIRTUAL, get() { return JSON.parse(this.addressesText); }, set(value) { if (value) { this.setDataValue('addressesText', JSON.stringify(value)); } else { this.setDataValue('addressesText', '[]'); } }, }, lastAddressText: { type: sequelize_1.DataTypes.TEXT, allowNull: true }, lastAddress: { type: sequelize_1.DataTypes.VIRTUAL, allowNull: true, get() { return this.lastAddressText ? JSON.parse(this.lastAddressText) : undefined; }, set(value) { if (value) { this.setDataValue('lastAddressText', JSON.stringify(value)); } }, }, banned: { type: sequelize_1.DataTypes.BOOLEAN, allowNull: true }, }; const indexes = [{ unique: true, fields: ['nodePubKey'], }]; const options = { indexes, tableName: 'nodes', }; const Node = sequelize.define('Node', attributes, options); return Node; } exports.default = Node; //# sourceMappingURL=Node.js.map