UNPKG

@fabrix/spool-cart

Version:

Spool - eCommerce Spool for Fabrix

77 lines (76 loc) 2.16 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"); class Country extends common_1.FabrixModel { static get resolver() { return spool_sequelize_1.SequelizeResolver; } static config(app, Sequelize) { return { options: { underscored: true, scopes: { live: { where: { live_mode: true } } }, classMethods: { resolve: function (country, options) { } } } }; } static schema(app, Sequelize) { return { code: { type: Sequelize.STRING }, name: { type: Sequelize.STRING }, tax_name: { type: Sequelize.STRING }, tax_type: { type: Sequelize.STRING }, tax_rate: { type: Sequelize.FLOAT, defaultValue: 0.0 }, tax_percentage: { type: Sequelize.FLOAT, defaultValue: 0.0 }, position: { type: Sequelize.INTEGER, defaultValue: 0 }, live_mode: { type: Sequelize.BOOLEAN, defaultValue: app.config.get('cart.live_mode') } }; } static associate(models) { models.Country.hasMany(models.Province, { as: 'provinces' }); models.Country.belongsToMany(models.ShippingZone, { through: { model: models.ItemShippingZone, unique: false, scope: { model: 'country' } }, foreignKey: 'shipping_zone_id', constraints: false }); } } exports.Country = Country;