from .modules import *

class ModulesMixin:
    """This is abstract module for adding sarv modules to sarvclient class"""
    def __init__(self) -> None:
        self.Accounts = Accounts(self)
        self.ACLRoles = ACLRoles(self)
        self.SalesContracts = SalesContracts(self)
        self.Invoices = Invoices(self)
        self.PDFTemplates = PDFTemplates(self)
        self.ProductCategories = ProductCategories(self)
        self.Products = Products(self)
        self.Quotes = Quotes(self)
        self.Approvals = Approvals(self)
        self.Projects = Projects(self)
        self.Branches = Branches(self)
        self.Bugs = Bugs(self)
        self.Calls = Calls(self)
        self.Cases = Cases(self)
        self.Communications = Communications(self)
        self.CommunicationsTargets = CommunicationTargets(self)
        self.CommunicationsTemplates = CommunicationTemplates(self)
        self.Campaigns = Campaigns(self)
        self.Contacts = Contacts(self)
        self.Deposits = Deposits(self)
        self.Documents = Documents(self)
        self.Emails = Emails(self)
        self.KnowledgeBases = KnowledgeBases(self)
        self.KnowledgeBaseCategories = KnowledgeBaseCategories(self)
        self.Leads = Leads(self)
        self.Meetings = Meetings(self)
        self.Notes = Notes(self)
        self.Notifications = Notifications(self)
        self.Conditions = Conditions(self)
        self.Indicators = Indicators(self)
        self.Objectives = Objectives(self)
        self.Opportunities = Opportunities(self)
        self.Payments = Payments(self)
        self.PurchaseOrders = PurchaseOrders(self)
        self.Competitor = Competitor(self)
        self.SupportContracts = SupportContracts(self)
        self.Services = Services(self)
        self.ServiceCenters = ServiceCenters(self)
        self.Tasks = Tasks(self)
        self.Timesheets = Timesheets(self)
        self.Users = Users(self)
        self.Vendors = Vendors(self)
