import companyuserGetByEmail from './store/companyuser/getByEmail.js'; import companyuserAdd from './store/companyuser/add.js'; import companyuserDelete from './store/companyuser/delete.js'; import companyCreate from './store/company/create.js'; import companyUpdate from './store/company/update.js'; import companyDelete from './store/company/delete.js'; import companyList from './store/company/list.js'; import categoryGetTreeForCompany from './store/category/getTreeForCompany.js'; import categoryGetCategoryArticles from './store/category/getCategoryArticles.js'; import categoryCreateUnderParent from './store/category/createUnderParent.js'; import categoryDelete from './store/category/delete.js'; import articleAddImage from './store/article/addImage.js'; import articleCreateUnderParent from './store/article/createUnderParent.js'; import articleGetBySku from './store/article/getBySku.js'; import articleUpdateBySku from './store/article/updateBySku.js'; import langCreate from './store/lang/create.js'; import langDelete from './store/lang/delete.js'; import langList from './store/lang/list.js'; import langGetByIso639 from './store/lang/getByIso639.js'; import langEnsure from './store/lang/ensure.js'; import taxCreate from './store/tax/create.js'; import taxGetByRate from './store/tax/getByRate.js'; import taxEnsure from './store/tax/ensure.js'; import taxList from './store/tax/list.js'; import googleAuthAdd from './store/google_auth/add.js'; import googleAuthGetByEmail from './store/google_auth/getByEmail.js'; import googleAuthListAllowedEmails from './store/google_auth/listAllowedEmails.js'; import googleAuthRemoveAllowedEmail from './store/google_auth/removeAllowedEmail.js'; import googleAuthSetSelectedCompany from './store/google_auth/setSelectedCompany.js'; import picGetImageByHash from './store/pic/getImageByHash.js'; import picGetThumbByHash from './store/pic/getThumbByHash.js'; import storePurge from './store/purge.js'; import storeInitialize from './store/initialize.js'; export default class LibDashStore { constructor(pool) { this.pool = pool; this.companyuser = { getByEmail: companyuserGetByEmail(pool), add: companyuserAdd(pool), delete: companyuserDelete(pool), }; this.company = { create: companyCreate(pool), update: companyUpdate(pool), delete: companyDelete(pool), list: companyList(pool), }; this.category = { getTreeForCompany: categoryGetTreeForCompany(pool), getCategoryArticles: categoryGetCategoryArticles(pool), createUnderParent: categoryCreateUnderParent(pool), delete: categoryDelete(pool), }; this.article = { createUnderParent: articleCreateUnderParent(pool), getBySku: articleGetBySku(pool), updateBySku: articleUpdateBySku(pool), addImage: articleAddImage(pool), }; this.lang = { create: langCreate(pool), getByIso639: langGetByIso639(pool), ensure: langEnsure(pool), delete: langDelete(pool), list: langList(pool), }; this.tax = { create: taxCreate(pool), getByRate: taxGetByRate(pool), ensure: taxEnsure(pool), list: taxList(pool), }; this.google_auth = { add: googleAuthAdd(pool), getByEmail: googleAuthGetByEmail(pool), listAllowedEmails: googleAuthListAllowedEmails(pool), removeAllowedEmail: googleAuthRemoveAllowedEmail(pool), setSelectedCompany: googleAuthSetSelectedCompany(pool), }; this.pic = { getImageByHash: picGetImageByHash(pool), getThumbByHash: picGetThumbByHash(pool), }; this.purge = storePurge(pool); this.initialize = storeInitialize(pool); return this.initialize().then(() => this); } } export { SCHEMA_SCRIPTS } from './schema.js';