Compare commits

..

No commits in common. "72a50cc0b1064b3d8e59772fb3b90f12b008bde3" and "e0785a58e6037a32a5a0bcd4f3719ff4ffc53544" have entirely different histories.

361 changed files with 4489 additions and 5143 deletions

5
.eslintrc.js Normal file
View File

@ -0,0 +1,5 @@
/** @type {import("eslint").Linter.Config} */
module.exports = {
root: true,
extends: ["@repo/eslint-config/index.js"],
};

3
apps/server/.eslintrc.js Normal file
View File

@ -0,0 +1,3 @@
module.exports = {
extends: ["@repo/eslint-config"],
};

View File

@ -12,9 +12,9 @@ import {
type IAccountProps,
type IAccountService,
} from "@/contexts/accounts/domain";
import { Maybe, Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { logger } from "@/core/logger";
import { Maybe, Result } from "@repo/rdx-utils";
import { logger } from "@/core/common/infrastructure/logger";
import { ICreateAccountRequestDTO } from "../presentation";
export class CreateAccountUseCase {

View File

@ -1,8 +1,8 @@
import { Account, IAccountService } from "@/contexts/accounts/domain";
import { UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { logger } from "@/core/logger";
import { Result } from "@repo/rdx-utils";
import { logger } from "@/core/common/infrastructure/logger";
export class GetAccountUseCase {
constructor(

View File

@ -1,6 +1,6 @@
import { Account, IAccountService } from "@/contexts/accounts/domain";
import { Collection, Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { Collection, Result } from "@repo/rdx-utils";
export class ListAccountsUseCase {
constructor(

View File

@ -1,6 +1,6 @@
import { UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { TransactionManager } from "@/core/common/infrastructure/database";
import { Result } from "@repo/rdx-utils";
import { AccountService } from "../domain";
import { UpdateAccountUseCase } from "./update-account.use-case";

View File

@ -7,9 +7,9 @@ import {
} from "@/core/common/domain";
import { Account, IAccountProps, IAccountService } from "@/contexts/accounts/domain";
import { Maybe, Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { logger } from "@/core/logger";
import { Maybe, Result } from "@repo/rdx-utils";
import { logger } from "@/core/common/infrastructure/logger";
import { IUpdateAccountRequestDTO } from "../presentation";
export class UpdateAccountUseCase {

View File

@ -6,7 +6,7 @@ import {
type TINNumber,
UniqueID,
} from "@/core";
import { Maybe, Result } from "@repo/rdx-utils";
import { Maybe, Result } from "@/core/common/helpers";
import { AccountStatus } from "../value-objects";
export interface IAccountProps {

View File

@ -1,5 +1,5 @@
import { EmailAddress, UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { Account } from "../aggregates";
export interface IAccountRepository {

View File

@ -5,7 +5,7 @@ import {
TINNumber,
UniqueID,
} from "@/core/common/domain";
import { Maybe, Result } from "@repo/rdx-utils";
import { Maybe, Result } from "@/core/common/helpers";
import { Account, IAccountProps } from "../aggregates";
import { IAccountRepository } from "../repositories";
import { AccountStatus } from "../value-objects";

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { Account, IAccountProps } from "../aggregates";
export interface IAccountService {

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { Transaction } from "sequelize";
import { Account, IAccountProps } from "../aggregates";
import { IAccountRepository } from "../repositories";

View File

@ -1,5 +1,5 @@
import { ValueObject } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
interface IAccountStatusProps {
value: string;

View File

@ -6,12 +6,12 @@ import {
TINNumber,
UniqueID,
} from "@/core/common/domain";
import { Maybe, Result } from "@/core/common/helpers";
import {
type ISequelizeMapper,
type MapperParamsType,
SequelizeMapper,
} from "@/core/common/infrastructure/sequelize/sequelize-mapper";
import { Maybe, Result } from "@repo/rdx-utils";
import { AccountCreationAttributes, AccountModel } from "../sequelize/account.model";
export interface IAccountMapper

View File

@ -1,8 +1,8 @@
import { Account } from "@/contexts/accounts/domain";
import { IAccountRepository } from "@/contexts/accounts/domain/repositories/account-repository.interface";
import { EmailAddress, UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@/core/common/helpers";
import { SequelizeRepository } from "@/core/common/infrastructure";
import { Collection, Result } from "@repo/rdx-utils";
import { Transaction } from "sequelize";
import { IAccountMapper, accountMapper } from "../mappers/account.mapper";
import { AccountModel } from "./account.model";

View File

@ -1,5 +1,5 @@
import { Account } from "@/contexts/accounts/domain";
import { ensureBoolean, ensureNumber, ensureString } from "@repo/rdx-utils";
import { ensureBoolean, ensureNumber, ensureString } from "@/core/common/helpers";
import { ICreateAccountResponseDTO } from "../../dto";
export interface ICreateAccountPresenter {

View File

@ -1,5 +1,5 @@
import { Account } from "@/contexts/accounts/domain";
import { ensureBoolean, ensureNumber, ensureString } from "@repo/rdx-utils";
import { ensureBoolean, ensureNumber, ensureString } from "@/core/common/helpers";
import { IGetAccountResponseDTO } from "../../dto";
export interface IGetAccountPresenter {

View File

@ -1,5 +1,5 @@
import { Account } from "@/contexts/accounts/domain";
import { Collection, ensureBoolean, ensureNumber, ensureString } from "@repo/rdx-utils";
import { Collection, ensureBoolean, ensureNumber, ensureString } from "@/core/common/helpers";
import { IListAccountsResponseDTO } from "../../dto";
export interface IListAccountsPresenter {

View File

@ -1,5 +1,5 @@
import { Account } from "@/contexts/accounts/domain";
import { ensureBoolean, ensureNumber, ensureString } from "@repo/rdx-utils";
import { ensureBoolean, ensureNumber, ensureString } from "@/core/common/helpers";
import { IUpdateAccountResponseDTO } from "../../dto";
export interface IUpdateAccountPresenter {

View File

@ -1,5 +1,5 @@
import { Collection, Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { Collection, Result } from "@repo/rdx-utils";
import { User } from "../../domain";
import { IUserService } from "../../domain/services";

View File

@ -1,6 +1,6 @@
import { Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { logger } from "@/core/logger";
import { Result } from "@repo/rdx-utils";
import { logger } from "@/core/common/infrastructure/logger";
import { RegisterData } from "../../domain";
import { IAuthService } from "../../domain/services";

View File

@ -1,4 +1,4 @@
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { AggregateRoot, EmailAddress, UniqueID } from "@/core/common/domain";
import { UserAuthenticatedEvent } from "../events";

View File

@ -1,5 +1,5 @@
import { AggregateRoot, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
export type IRoleProps = {};

View File

@ -1,5 +1,5 @@
import { AggregateRoot, EmailAddress, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { UserAuthenticatedEvent } from "../events";
import { Username } from "../value-objects";

View File

@ -1,5 +1,5 @@
import { DomainEntity, EmailAddress, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
export interface IJWTPayloadProps {
tabId: UniqueID;

View File

@ -1,5 +1,5 @@
import { DomainEntity, EmailAddress, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { PlainPassword } from "../value-objects";
export interface ILoginDataProps {

View File

@ -1,5 +1,5 @@
import { DomainEntity, EmailAddress, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
export interface ILogoutDataProps {
email: EmailAddress;

View File

@ -1,5 +1,5 @@
import { DomainEntity, EmailAddress } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { HashPassword, Username } from "../value-objects";
export interface IRegisterDataProps {

View File

@ -1,5 +1,5 @@
import { DomainEntity, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
export interface ITabContextProps {
tabId: UniqueID;

View File

@ -1,4 +1,4 @@
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { EmailAddress } from "@/core/common/domain";
import { AuthenticatedUser } from "../aggregates";

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { Transaction } from "sequelize";
import { TabContext } from "../entities";

View File

@ -1,5 +1,5 @@
import { EmailAddress, UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { User } from "../aggregates";
export interface IUserRepository {

View File

@ -1,5 +1,5 @@
import { EmailAddress } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import {
AuthenticatedUser,
IJWTPayload,

View File

@ -1,5 +1,5 @@
import { EmailAddress } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import {
AuthenticatedUser,
type IJWTPayload,

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { TabContext } from "../entities";
export interface ITabContextService {

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { TabContext } from "../entities";
import { ITabContextRepository } from "../repositories";
import { ITabContextService } from "./tab-context-service.interface";

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { User } from "../aggregates";
export interface IUserService {

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { IUserRepository, User } from "..";
import { IUserService } from "./user-service.interface";

View File

@ -1,5 +1,5 @@
import { ValueObject } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { z } from "zod";
const RoleSchema = z.enum(["Admin", "User", "Manager", "Editor"]);

View File

@ -1,6 +1,6 @@
import { ValueObject } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import bcrypt from "bcrypt";
import { ValueObject } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { z } from "zod";
interface HashPasswordProps {

View File

@ -1,5 +1,5 @@
import { ValueObject } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { z } from "zod";
interface PlainPasswordProps {
@ -32,5 +32,6 @@ export class PlainPassword extends ValueObject<PlainPasswordProps> {
toPrimitive() {
return this.props.value;
}
}

View File

@ -1,5 +1,5 @@
import { ValueObject } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { z } from "zod";
interface TokenProps {
@ -32,5 +32,6 @@ export class Token extends ValueObject<TokenProps> {
toPrimitive() {
return this.props.value;
}
}

View File

@ -1,5 +1,5 @@
import { ValueObject } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { z } from "zod";
interface UsernameProps {

View File

@ -1,10 +1,10 @@
import { UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import {
type ISequelizeMapper,
type MapperParamsType,
SequelizeMapper,
} from "@/core/common/infrastructure";
import { Result } from "@repo/rdx-utils";
import { TabContext } from "../../domain";
import { TabContextCreationAttributes, TabContextModel } from "../sequelize";

View File

@ -1,10 +1,10 @@
import { EmailAddress, UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import {
type ISequelizeMapper,
type MapperParamsType,
SequelizeMapper,
} from "@/core/common/infrastructure/sequelize/sequelize-mapper";
import { Result } from "@repo/rdx-utils";
import { User, Username } from "../../domain";
import { UserCreationAttributes, UserModel } from "../sequelize";

View File

@ -1,9 +1,9 @@
import { NextFunction, Response } from "express";
import { EmailAddress, UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { logger } from "@/core/logger";
import { Result } from "@repo/rdx-utils";
import { logger } from "@/core/common/infrastructure/logger";
import passport from "passport";
import { ExtractJwt, Strategy as JwtStrategy } from "passport-jwt";
import { TabContext } from "../../domain";

View File

@ -1,6 +1,6 @@
import { EmailAddress } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { SequelizeRepository } from "@/core/common/infrastructure";
import { Result } from "@repo/rdx-utils";
import { Sequelize, Transaction } from "sequelize";
import { AuthenticatedUser, IAuthenticatedUserRepository, Username } from "../../domain";
import { IAuthenticatedUserMapper } from "../mappers";

View File

@ -1,6 +1,6 @@
import { UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { SequelizeRepository } from "@/core/common/infrastructure";
import { Result } from "@repo/rdx-utils";
import { Op, Sequelize, Transaction } from "sequelize";
import { ITabContextRepository, TabContext } from "../../domain/";
import { ITabContextMapper } from "../mappers";

View File

@ -1,6 +1,6 @@
import { EmailAddress, UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@/core/common/helpers";
import { SequelizeRepository } from "@/core/common/infrastructure";
import { Collection, Result } from "@repo/rdx-utils";
import { Sequelize, Transaction } from "sequelize";
import { IUserRepository, User } from "../../domain";
import { IUserMapper } from "../mappers";

View File

@ -1,4 +1,4 @@
import { Collection, ensureString } from "@repo/rdx-utils";
import { Collection, ensureString } from "@/core/common/helpers";
import { User } from "../../domain";
import { IListUsersResponseDTO } from "../../dto";

View File

@ -1,5 +1,5 @@
import { Collection, Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { Collection, Result } from "@repo/rdx-utils";
import { Contact, IContactService } from "../domain";
export class ListContactsUseCase {

View File

@ -6,7 +6,7 @@ import {
type TINNumber,
UniqueID,
} from "@/core/common/domain";
import { Maybe, Result } from "@repo/rdx-utils";
import { Maybe, Result } from "@/core/common/helpers";
export interface IContactProps {
reference: string;

View File

@ -1,5 +1,5 @@
import { EmailAddress, UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { Contact } from "../aggregates";
export interface IContactRepository {

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { Contact } from "../aggregates";
export interface IContactService {

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { Contact } from "../aggregates";
import { IContactRepository } from "../repositories";
import { IContactService } from "./contact-service.interface";

View File

@ -5,12 +5,12 @@ import {
TINNumber,
UniqueID,
} from "@/core/common/domain";
import { Maybe, Result } from "@/core/common/helpers";
import {
type ISequelizeMapper,
type MapperParamsType,
SequelizeMapper,
} from "@/core/common/infrastructure/sequelize/sequelize-mapper";
import { Maybe, Result } from "@repo/rdx-utils";
import { Contact } from "../../domain";
import { ContactCreationAttributes, ContactModel } from "../sequelize/contact.model";

View File

@ -1,6 +1,6 @@
import { EmailAddress, UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@/core/common/helpers";
import { SequelizeRepository } from "@/core/common/infrastructure";
import { Collection, Result } from "@repo/rdx-utils";
import { Transaction } from "sequelize";
import { Contact, IContactRepository } from "../../domain";
import { IContactMapper, contactMapper } from "../mappers";

View File

@ -1,4 +1,4 @@
import { Collection, ensureBoolean, ensureNumber, ensureString } from "@repo/rdx-utils";
import { Collection, ensureBoolean, ensureNumber, ensureString } from "@/core/common/helpers";
import { Contact } from "../../../domain";
import { IListContactsResponseDTO } from "../../dto";

View File

@ -1,8 +1,8 @@
import { ICustomerInvoiceService } from "@/contexts/customer-billing/domain";
import { CustomerInvoice } from "@/contexts/customer-billing/domain/aggregates";
import { UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { Result } from "@repo/rdx-utils";
export class GetCustomerInvoiceUseCase {
constructor(

View File

@ -1,5 +1,5 @@
import { Collection, Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { Collection, Result } from "@repo/rdx-utils";
import { CustomerInvoice, ICustomerInvoiceService } from "../domain";
export class ListCustomerInvoicesUseCase {

View File

@ -1,5 +1,5 @@
import { AggregateRoot, UniqueID, UtcDate } from "@/core/common/domain";
import { Maybe, Result } from "@repo/rdx-utils";
import { Maybe, Result } from "@/core/common/helpers";
import { Customer, CustomerInvoiceItem } from "../entities";
import { InvoiceStatus } from "../value-objetcs";

View File

@ -1,6 +1,6 @@
import { DomainEntity, MoneyValue, Percentage, UniqueID } from "@/core/common/domain";
import { Quantity } from "@/core/common/domain/value-objects/quantity";
import { Maybe, Result } from "@repo/rdx-utils";
import { Maybe, Result } from "@/core/common/helpers";
export interface ICustomerInvoiceItemProps {
description: Maybe<string>; // Descripción del artículo o servicio

View File

@ -1,5 +1,5 @@
import { AggregateRoot, PostalAddress, TINNumber, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
export interface ICustomerProps {
name: string;

View File

@ -1,5 +1,5 @@
import { Slug } from "@/core/common/domain";
import { Collection } from "@repo/rdx-utils";
import { Collection } from "@/core/common/helpers";
import { Tax } from "./tax";
export class TaxCollection extends Collection<Tax> {

View File

@ -1,5 +1,5 @@
import { DomainEntity, Percentage, Slug, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
interface ITaxProps {
slug: Slug;

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { CustomerInvoice } from "../aggregates";
export interface ICustomerInvoiceRepository {

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { CustomerInvoice } from "../aggregates";
export interface ICustomerInvoiceService {

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { CustomerInvoice } from "../aggregates";
import { ICustomerInvoiceRepository } from "../repositories";
import { ICustomerInvoiceService } from "./customer-invoice-service.interface";

View File

@ -1,5 +1,5 @@
import { ValueObject } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
interface IInvoiceStatusProps {
value: string;

View File

@ -1,12 +1,12 @@
import { Customer, CustomerInvoice } from "@/contexts/customer-billing/domain";
import { InvoiceStatus } from "@/contexts/customer-billing/domain/value-objetcs";
import { PostalAddress, TINNumber, UniqueID, UtcDate } from "@/core/common/domain";
import { Maybe, Result } from "@/core/common/helpers";
import {
type ISequelizeMapper,
type MapperParamsType,
SequelizeMapper,
} from "@/core/common/infrastructure/sequelize/sequelize-mapper";
import { Maybe, Result } from "@repo/rdx-utils";
import {
CustomerInvoiceCreationAttributes,
CustomerInvoiceModel,

View File

@ -1,7 +1,7 @@
import { CustomerInvoice, ICustomerInvoiceRepository } from "@/contexts/customer-billing/domain";
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@/core/common/helpers";
import { SequelizeRepository } from "@/core/common/infrastructure";
import { Collection, Result } from "@repo/rdx-utils";
import { Transaction } from "sequelize";
import {
type ICustomerInvoiceMapper,

View File

@ -1,4 +1,4 @@
import { Collection, ensureString } from "@repo/rdx-utils";
import { Collection, ensureString } from "@/core/common/helpers";
import { CustomerInvoice } from "@/contexts/customer-billing/domain";
import { IListCustomerInvoicesResponseDTO } from "../../../dto";

View File

@ -7,7 +7,7 @@
"build": "tsc && tsup",
"start:dev": "node --import=tsx --watch src/index.ts",
"start:prod": "node dist/index.js",
"clean": "rm -rf dist node_modules",
"clean": "rm -rf dist",
"typecheck": "tsc --noEmit",
"test": "jest --config=./jest.config.ts --verbose",
"lint": "biome lint --fix",
@ -27,7 +27,7 @@
"@types/jest": "^29.5.14",
"@types/jsonwebtoken": "^9.0.8",
"@types/luxon": "^3.4.2",
"@types/node": "^22.15.12",
"@types/node": "^22.10.7",
"@types/passport": "^1.0.16",
"@types/passport-jwt": "^4.0.1",
"@types/passport-local": "^1.0.38",
@ -40,14 +40,14 @@
"typescript": "^5.8.3"
},
"dependencies": {
"@erp/auth": "workspace:*",
"@erp/core": "workspace:*",
"bcrypt": "^5.1.1",
"cls-rtracer": "^2.6.3",
"cors": "^2.8.5",
"dinero.js": "^1.9.1",
"dotenv": "^16.5.0",
"esbuild": "^0.24.0",
"express": "^4.18.2",
"glob": "^11.0.1",
"helmet": "^8.0.0",
"http": "0.0.1-security",
"http-status": "^2.1.0",
@ -74,9 +74,14 @@
"node": ">=22"
},
"tsup": {
"entry": ["src/index.ts"],
"entry": [
"src/index.ts"
],
"outDir": "dist",
"format": ["esm", "cjs"],
"format": [
"esm",
"cjs"
],
"target": "es2020",
"sourcemap": true,
"clean": true,

View File

@ -3,8 +3,9 @@ import dotenv from "dotenv";
import express, { Application } from "express";
import helmet from "helmet";
import responseTime from "response-time";
import { logger } from "./core/common/infrastructure/logger";
import { globalErrorHandler } from "./core/common/presentation";
import { logger } from "./core/logger";
import { v1Routes } from "./routes";
dotenv.config();
@ -46,8 +47,8 @@ export function createApp(): Application {
});
// Registrar rutas de la API
// app.use("/api/v1", v1Routes());
//initModules(app, database);
app.use("/api/v1", v1Routes());
// initPackages(app, sequelize);
// Gestión global de errores.
// Siempre al final de la cadena de middlewares

View File

@ -1,4 +1,4 @@
import { logger } from "@/core/logger";
import { logger } from "@/core/common/infrastructure/logger";
import dotenv from "dotenv";
import { Sequelize } from "sequelize";
import { registerModels } from "./register-models";

View File

@ -1,5 +1,5 @@
import * as path from "path";
import { logger } from "@/core/logger";
import { logger } from "@/core/common/infrastructure/logger";
import * as glob from "glob";
import { DataTypes, Sequelize } from "sequelize";

View File

@ -8,9 +8,9 @@ import {
InvoiceSerie,
InvoiceStatus,
} from "@/contexts/invoices/domain";
import { Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { logger } from "@/core/logger";
import { Result } from "@repo/rdx-utils";
import { logger } from "@/core/common/infrastructure/logger";
import { ICreateInvoiceRequestDTO } from "../presentation/dto";
export class CreateInvoiceUseCase {

View File

@ -1,7 +1,7 @@
import { UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { logger } from "@/core/logger";
import { Result } from "@repo/rdx-utils";
import { logger } from "@/core/common/infrastructure/logger";
import { IInvoiceService } from "../domain";
export class DeleteInvoiceUseCase {

View File

@ -1,7 +1,7 @@
import { UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { logger } from "@/core/logger";
import { Result } from "@repo/rdx-utils";
import { logger } from "@/core/common/infrastructure/logger";
import { IInvoiceService, Invoice } from "../domain";
export class GetInvoiceUseCase {

View File

@ -1,6 +1,6 @@
import { Collection, Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { logger } from "@/core/logger";
import { Collection, Result } from "@repo/rdx-utils";
import { logger } from "@/core/common/infrastructure/logger";
import { IInvoiceService, Invoice } from "../domain";
export class ListInvoicesUseCase {

View File

@ -1,6 +1,6 @@
import { UniqueID } from "@/core/common/domain";
import { Result } from "@/core/common/helpers";
import { ITransactionManager } from "@/core/common/infrastructure/database";
import { Result } from "@repo/rdx-utils";
import { IInvoiceService, Invoice } from "../domain";
import { IUpdateInvoiceRequestDTO } from "../presentation/dto";

View File

@ -1,5 +1,5 @@
import { AggregateRoot, MoneyValue, UniqueID, UtcDate } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { InvoiceCustomer, InvoiceItem, InvoiceItems } from "../entities";
import { InvoiceNumber, InvoiceSerie, InvoiceStatus } from "../value-objects";

View File

@ -4,7 +4,7 @@ import {
type PostalAddress,
ValueObject,
} from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { PhoneNumber } from "libphonenumber-js";
import { InvoiceAddressType } from "../../value-objects";

View File

@ -1,5 +1,5 @@
import { DomainEntity, Name, TINNumber, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { InvoiceAddress } from "./invoice-address";
export interface IInvoiceCustomerProps {

View File

@ -1,5 +1,5 @@
import { DomainEntity, MoneyValue, Percentage, Quantity, UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { Result } from "@/core/common/helpers";
import { InvoiceItemDescription } from "../../value-objects";
export interface IInvoiceItemProps {

View File

@ -1,4 +1,4 @@
import { Collection } from "@repo/rdx-utils";
import { Collection } from "@/core/common/helpers";
import { InvoiceItem } from "./invoice-item";
export class InvoiceItems extends Collection<InvoiceItem> {

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { Invoice } from "../aggregates";
export interface IInvoiceRepository {

View File

@ -1,5 +1,5 @@
import { UniqueID } from "@/core/common/domain";
import { Collection, Result } from "@repo/rdx-utils";
import { Collection, Result } from "@/core/common/helpers";
import { IInvoiceProps, Invoice } from "../aggregates";
export interface IInvoiceService {

Some files were not shown because too many files have changed in this diff Show More