UNPKG

@fabrix/spool-cart

Version:

Spool - eCommerce Spool for Fabrix

61 lines (60 loc) 1.84 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const common_1 = require("@fabrix/fabrix/dist/common"); const spool_sequelize_1 = require("@fabrix/spool-sequelize"); const enums_1 = require("../../enums"); class ItemCollection extends common_1.FabrixModel { static get resolver() { return spool_sequelize_1.SequelizeResolver; } static config(app, Sequelize) { return { options: { underscored: true, enums: { COLLECTION_MODELS: enums_1.COLLECTION_MODELS }, indexes: [ { fields: ['collection_id', 'model', 'model_id', 'position'] } ] } }; } static schema(app, Sequelize) { return { id: { type: Sequelize.INTEGER, primaryKey: true, autoIncrement: true }, collection_id: { type: Sequelize.INTEGER, unique: 'collection_model', notNull: true }, model: { type: Sequelize.ENUM, unique: 'collection_model', values: Object.values(enums_1.COLLECTION_MODELS) }, model_id: { type: Sequelize.INTEGER, unique: 'collection_model', notNull: true, references: null }, position: { type: Sequelize.INTEGER, defaultValue: 1 } }; } static associate(models) { models.ItemCollection.belongsTo(models.Collection, { foreignKey: 'collection_id' }); } } exports.ItemCollection = ItemCollection;