New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@deboxsoft/accounting-api

Package Overview
Dependencies
Maintainers
1
Versions
434
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@deboxsoft/accounting-api - npm Package Compare versions

Comparing version 0.1.0-alpha.48 to 0.1.0-alpha.49

ava.config.cjs

187

index.cjs.js

@@ -5,82 +5,120 @@ 'use strict';

var sh = require('@deboxsoft/zod');
var z = require('@deboxsoft/zod');
var moduleCore = require('@deboxsoft/module-core');
const accountSchema = sh.object({
code: sh.string().nonempty(),
name: sh.string().nonempty(),
type: sh.string().nonempty(),
active: sh.boolean().optional(),
isParent: sh.boolean().optional(),
memo: sh.string().optional().nullable(),
parentId: sh.string().optional().nullable()
const AccountSchema = z.object({
id: z.string().nonempty(),
code: z.string().nonempty(),
name: z.string().nonempty(),
type: z.string().nonempty(),
active: z.boolean().optional(),
isParent: z.boolean().optional(),
memo: z.string().optional(),
parentId: z.string().optional(),
division: z.string().optional()
});
const AccountInputSchema = AccountSchema.omit({id: true});
const AccountTypeSchema = z.object({
code: z.string().nonempty(),
name: z.string().nonempty()
});
const numberNonNullSchema = sh.number().refinement((val) => val > 0 || val < 0, {
const numberNonNullSchema = z.number().refinement((val) => val > 0 || val < 0, {
code: "custom",
message: "value must not be null"
});
const journalAccountSchema = sh.object({
accountId: sh.string().nonempty(),
const JournalAccountSchema = z.object({
accountId: z.string().nonempty(),
amount: numberNonNullSchema
});
const transactionSchema = sh.object({
date: sh.union([sh.string(), sh.date()]),
noJournal: sh.string().nonempty(),
noTransaction: sh.string().nonempty(),
description: sh.string().nullable().optional(),
type: sh.string().nonempty(),
const TransactionStatusSchema = z['enum'](["UNAPPROVED", "APPROVED"]);
const TransactionSchema = z.object({
id: z.string(),
date: z.union([z.string(), z.date()]),
noJournal: z.string().nonempty(),
noTransaction: z.string().nonempty(),
description: z.string().nullable().optional(),
type: z.string().nonempty(),
total: numberNonNullSchema,
accountId: sh.string().nonempty(),
accounts: sh.array(journalAccountSchema).min(1)
accountId: z.string().nonempty(),
accounts: z.array(JournalAccountSchema).min(1),
status: TransactionStatusSchema
});
const TransactionTypeSchema = z.object({
code: z.string().nonempty(),
name: z.string().nonempty()
});
const TransactionInputSchema = TransactionSchema.omit({id: true});
const divisionSchema = sh.object({
code: sh.string().nonempty(),
name: sh.string().nonempty()
const DivisionSchema = z.object({
code: z.string().nonempty(),
name: z.string().nonempty()
});
const companySchema = sh.object({
name: sh.string().nonempty(),
address: sh.string().nonempty(),
divisions: sh.array(divisionSchema)
const CompanySchema = z.object({
name: z.string().nonempty(),
address: z.string().nonempty(),
divisions: z.array(DivisionSchema)
});
const bankSchema = sh.string();
const bankReconciliationSchema = sh.object({
accountBank: sh.string().nonempty(),
bank: bankSchema,
accountId: sh.string().nonempty(),
nameAccountBank: sh.string().nonempty(),
balance: sh.number(),
date: sh.union([sh.date(), sh.string()])
const ReconcilesStatusSchema = z['enum'](["RECONCILED", "UNRECONCILED"]);
const BankReconciliationSchema = z.object({
id: z.string(),
accountBank: z.string().nonempty(),
bank: z.string().nonempty(),
accountId: z.string().nonempty(),
nameAccountBank: z.string().nonempty(),
balance: z.number(),
date: z.date()
});
const bankStatementSchema = sh.object({
date: sh.union([sh.date(), sh.string().nonempty()]),
description: sh.string().optional().nullable(),
in: sh.number(),
out: sh.number(),
balance: sh.number()
const BankStatementSchema = z.object({
id: z.string(),
bankId: z.string(),
date: z.date(),
description: z.string().optional().nullable(),
in: z.number(),
out: z.number(),
balance: z.number(),
status: ReconcilesStatusSchema
});
const bankStatementListSchema = sh.array(bankStatementSchema);
const BankReconciliationHistorySchema = z.object({
importDate: z.date(),
startDate: z.date(),
endDate: z.date(),
openingBalance: z.number(),
lastBalance: z.number(),
bankId: z.string()
});
const BankReconciliationInputSchema = BankReconciliationSchema.omit({id: true});
const BankStatementInputSchema = BankStatementSchema.omit({id: true, bankId: true});
const inventorySchema = sh.object({
name: sh.string().nonempty(),
code: sh.string().nonempty(),
quantity: sh.number().min(1)
const InventorySchema = z.object({
id: z.string(),
code: z.string().nonempty(),
name: z.string().nonempty(),
purchaseDate: z.union([z.date(), z.string()]),
priceItem: z.number(),
quantity: z.number().min(1),
depreciation: z.number()
});
const InventoryInputSchema = InventorySchema.omit({id: true});
const stockTransferType = sh['enum'](["IN", "OUT"]);
const stockSchema = sh.object({
date: sh.date(),
count: sh.number().positive(),
type: stockTransferType
const StockTransferSchema = z.object({
id: z.string(),
date: z.date(),
count: z.number().positive(),
type: z['enum'](["IN", "OUT"])
});
const StockTransferInputSchema = StockTransferSchema.omit({id: true});
const generalLedgerSchema = sh.object({
no: sh.string(),
date: sh.union([sh.date(), sh.string()]),
accountId: sh.string().nonempty(),
isCredit: sh.boolean().optional(),
amount: sh.number()
const GeneralLedgerSchema = z.object({
id: z.string(),
no: z.string(),
date: z.union([z.date(), z.string()]),
accountId: z.string().nonempty(),
accountOppositeId: z.string().nonempty(),
transactionId: z.string().nonempty(),
isCredit: z.boolean().optional(),
amount: z.number()
});
const GeneralLedgerInputSchema = GeneralLedgerSchema.omit({id: true});

@@ -103,15 +141,24 @@ class AccountingError extends moduleCore.DeboxError {

exports.AccountInputSchema = AccountInputSchema;
exports.AccountSchema = AccountSchema;
exports.AccountTypeSchema = AccountTypeSchema;
exports.AccountingError = AccountingError;
exports.accountSchema = accountSchema;
exports.bankReconciliationSchema = bankReconciliationSchema;
exports.bankSchema = bankSchema;
exports.bankStatementListSchema = bankStatementListSchema;
exports.bankStatementSchema = bankStatementSchema;
exports.companySchema = companySchema;
exports.divisionSchema = divisionSchema;
exports.generalLedgerSchema = generalLedgerSchema;
exports.inventorySchema = inventorySchema;
exports.journalAccountSchema = journalAccountSchema;
exports.stockSchema = stockSchema;
exports.stockTransferType = stockTransferType;
exports.transactionSchema = transactionSchema;
exports.BankReconciliationHistorySchema = BankReconciliationHistorySchema;
exports.BankReconciliationInputSchema = BankReconciliationInputSchema;
exports.BankReconciliationSchema = BankReconciliationSchema;
exports.BankStatementInputSchema = BankStatementInputSchema;
exports.BankStatementSchema = BankStatementSchema;
exports.CompanySchema = CompanySchema;
exports.DivisionSchema = DivisionSchema;
exports.GeneralLedgerInputSchema = GeneralLedgerInputSchema;
exports.GeneralLedgerSchema = GeneralLedgerSchema;
exports.InventoryInputSchema = InventoryInputSchema;
exports.InventorySchema = InventorySchema;
exports.JournalAccountSchema = JournalAccountSchema;
exports.ReconcilesStatusSchema = ReconcilesStatusSchema;
exports.StockTransferInputSchema = StockTransferInputSchema;
exports.StockTransferSchema = StockTransferSchema;
exports.TransactionInputSchema = TransactionInputSchema;
exports.TransactionSchema = TransactionSchema;
exports.TransactionStatusSchema = TransactionStatusSchema;
exports.TransactionTypeSchema = TransactionTypeSchema;

@@ -1,5 +0,6 @@

import { object, string, boolean, number, union, date, array, enum as enum$1 } from '@deboxsoft/zod';
import { object, string, boolean, number, enum as enum$1, union, date, array } from '@deboxsoft/zod';
import { DeboxError } from '@deboxsoft/module-core';
const accountSchema = object({
const AccountSchema = object({
id: string().nonempty(),
code: string().nonempty(),

@@ -10,5 +11,11 @@ name: string().nonempty(),

isParent: boolean().optional(),
memo: string().optional().nullable(),
parentId: string().optional().nullable()
memo: string().optional(),
parentId: string().optional(),
division: string().optional()
});
const AccountInputSchema = AccountSchema.omit({id: true});
const AccountTypeSchema = object({
code: string().nonempty(),
name: string().nonempty()
});

@@ -19,7 +26,9 @@ const numberNonNullSchema = number().refinement((val) => val > 0 || val < 0, {

});
const journalAccountSchema = object({
const JournalAccountSchema = object({
accountId: string().nonempty(),
amount: numberNonNullSchema
});
const transactionSchema = object({
const TransactionStatusSchema = enum$1(["UNAPPROVED", "APPROVED"]);
const TransactionSchema = object({
id: string(),
date: union([string(), date()]),

@@ -32,53 +41,82 @@ noJournal: string().nonempty(),

accountId: string().nonempty(),
accounts: array(journalAccountSchema).min(1)
accounts: array(JournalAccountSchema).min(1),
status: TransactionStatusSchema
});
const TransactionTypeSchema = object({
code: string().nonempty(),
name: string().nonempty()
});
const TransactionInputSchema = TransactionSchema.omit({id: true});
const divisionSchema = object({
const DivisionSchema = object({
code: string().nonempty(),
name: string().nonempty()
});
const companySchema = object({
const CompanySchema = object({
name: string().nonempty(),
address: string().nonempty(),
divisions: array(divisionSchema)
divisions: array(DivisionSchema)
});
const bankSchema = string();
const bankReconciliationSchema = object({
const ReconcilesStatusSchema = enum$1(["RECONCILED", "UNRECONCILED"]);
const BankReconciliationSchema = object({
id: string(),
accountBank: string().nonempty(),
bank: bankSchema,
bank: string().nonempty(),
accountId: string().nonempty(),
nameAccountBank: string().nonempty(),
balance: number(),
date: union([date(), string()])
date: date()
});
const bankStatementSchema = object({
date: union([date(), string().nonempty()]),
const BankStatementSchema = object({
id: string(),
bankId: string(),
date: date(),
description: string().optional().nullable(),
in: number(),
out: number(),
balance: number()
balance: number(),
status: ReconcilesStatusSchema
});
const bankStatementListSchema = array(bankStatementSchema);
const BankReconciliationHistorySchema = object({
importDate: date(),
startDate: date(),
endDate: date(),
openingBalance: number(),
lastBalance: number(),
bankId: string()
});
const BankReconciliationInputSchema = BankReconciliationSchema.omit({id: true});
const BankStatementInputSchema = BankStatementSchema.omit({id: true, bankId: true});
const inventorySchema = object({
const InventorySchema = object({
id: string(),
code: string().nonempty(),
name: string().nonempty(),
code: string().nonempty(),
quantity: number().min(1)
purchaseDate: union([date(), string()]),
priceItem: number(),
quantity: number().min(1),
depreciation: number()
});
const InventoryInputSchema = InventorySchema.omit({id: true});
const stockTransferType = enum$1(["IN", "OUT"]);
const stockSchema = object({
const StockTransferSchema = object({
id: string(),
date: date(),
count: number().positive(),
type: stockTransferType
type: enum$1(["IN", "OUT"])
});
const StockTransferInputSchema = StockTransferSchema.omit({id: true});
const generalLedgerSchema = object({
const GeneralLedgerSchema = object({
id: string(),
no: string(),
date: union([date(), string()]),
accountId: string().nonempty(),
accountOppositeId: string().nonempty(),
transactionId: string().nonempty(),
isCredit: boolean().optional(),
amount: number()
});
const GeneralLedgerInputSchema = GeneralLedgerSchema.omit({id: true});

@@ -101,2 +139,2 @@ class AccountingError extends DeboxError {

export { AccountingError, accountSchema, bankReconciliationSchema, bankSchema, bankStatementListSchema, bankStatementSchema, companySchema, divisionSchema, generalLedgerSchema, inventorySchema, journalAccountSchema, stockSchema, stockTransferType, transactionSchema };
export { AccountInputSchema, AccountSchema, AccountTypeSchema, AccountingError, BankReconciliationHistorySchema, BankReconciliationInputSchema, BankReconciliationSchema, BankStatementInputSchema, BankStatementSchema, CompanySchema, DivisionSchema, GeneralLedgerInputSchema, GeneralLedgerSchema, InventoryInputSchema, InventorySchema, JournalAccountSchema, ReconcilesStatusSchema, StockTransferInputSchema, StockTransferSchema, TransactionInputSchema, TransactionSchema, TransactionStatusSchema, TransactionTypeSchema };
{
"name": "@deboxsoft/accounting-api",
"version": "0.1.0-alpha.48",
"version": "0.1.0-alpha.49",
"license": "SEE LICENSE IN LICENSE.md",

@@ -34,3 +34,4 @@ "repository": {

"version:dev": "yarn version prerelease",
"test": "yarn r:jest --passWithNoTests"
"test:ava": "yarn r:ava",
"test": "yarn test:ava"
},

@@ -41,9 +42,9 @@ "publishConfig": {

"dependencies": {
"@deboxsoft/module-core": "^1.5.19-0"
"@deboxsoft/module-core": "^1.6.2-0"
},
"devDependencies": {
"@deboxsoft/zod": "^3.0.0-0",
"@sucrase/jest-plugin": "^2.0.0",
"@testing-library/jest-dom": "^5.11.9",
"svelte-jester": "^1.3.0"
"ava": "^3.15.0",
"ts-node": "^9.1.1",
"tslib": "^2.1.0"
},

@@ -53,3 +54,4 @@ "peerDependencies": {

},
"preferUnplugged": true,
"gitHead": "b023f06cd22d9b5d6279f3930d90bbfc15186ab2"
}

@@ -1,4 +0,3 @@

export * from "./types";
export * from "./validation";
export * from "./schema";
export * from "./errors";
export * from "./services";

@@ -1,9 +0,10 @@

import type { Account, AccountInput, AccountType } from "../types";
import type { Account, AccountInput, AccountType } from "../schema";
export interface AccountService {
createAccount(input: AccountInput): Promise<Account>;
updateAccount(id: string, input: AccountInput): Promise<Account>;
removeAccount(id: string): Promise<boolean>;
findAccountById(id: string): Promise<Account | undefined>;
findAccount(filter?: any): Promise<Account[]>;
create(input: AccountInput): Promise<Account>;
update(id: string, input: AccountInput): Promise<boolean>;
remove(id: string): Promise<boolean>;
findById(id: string): Promise<Account | undefined>;
find(): Promise<Account[]>;
findChildAccount(parentId: string): Promise<Account[]>;
findAccountType(): Promise<AccountType[]>;
}

@@ -1,11 +0,12 @@

import type { BankReconciliation, StatementBankInput, StatementBank, BankReconciliationInput, AccountBankImportHistory, AccountBankImportResult } from "../types";
import type { PageCursorResult } from "@deboxsoft/module-core";
import type { BankReconciliation, BankStatement, BankStatementInput, BankStatementParams, BankReconciliationHistoryParams, BankReconciliationInput, ImportBankReconciliationResult, BankReconciliationHistory } from "../schema";
export interface BankReconciliationService {
createBankReconciliation(input: BankReconciliationInput): Promise<BankReconciliation>;
createStatementBankImport(bankId: string, inputs: StatementBankInput[]): Promise<AccountBankImportResult>;
findBankReconciliation(filter?: any): Promise<BankReconciliation[]>;
findBankReconciliationById(id: string): Promise<BankReconciliation | undefined>;
findStatementBank(bankId: string): Promise<StatementBank[]>;
findAccountBankImportHistory(bankId: string): Promise<AccountBankImportHistory[]>;
removeBankReconciliation(id: string): Promise<boolean>;
updateBankReconciliation(id: string, input: BankReconciliationInput): Promise<BankReconciliation>;
create(input: BankReconciliationInput): Promise<BankReconciliation>;
update(id: string, input: BankReconciliationInput): Promise<boolean>;
importBankReconciliation(bankId: string, inputs: BankStatementInput[]): Promise<ImportBankReconciliationResult>;
remove(id: string): Promise<boolean>;
find(): Promise<BankReconciliation[]>;
findById(id: string): Promise<BankReconciliation | undefined>;
findBankStatement(bankId: string, params?: BankStatementParams): Promise<PageCursorResult<BankStatement>>;
findBankReconciliationHistory(bankId: string, params?: BankReconciliationHistoryParams): Promise<PageCursorResult<BankReconciliationHistory>>;
}

@@ -1,4 +0,4 @@

import type { Company, CompanyInput } from "../types";
import type { Company } from "../schema";
export interface CompanyService {
updateCompany(input: CompanyInput): Promise<Company>;
update(input: Company): Promise<Company>;
getCompany(): Promise<Company>;

@@ -5,0 +5,0 @@ addDivision(code: string, name: string): Promise<boolean>;

@@ -1,4 +0,5 @@

import type { GeneralLedger, GeneralLedgerInput } from "../types";
import type { CollectionParams, PageCursorResult } from "@deboxsoft/module-core";
import type { GeneralLedger } from "../schema";
export interface GeneralLedgerService {
findGeneralLedger(filter?: GeneralLedgerInput): Promise<GeneralLedger[]>;
find: (params?: CollectionParams) => Promise<PageCursorResult<GeneralLedger>>;
}

@@ -1,8 +0,9 @@

import type { Inventory, InventoryInput } from "../types";
import type { PageCursorResult } from "@deboxsoft/module-core";
import type { Inventory, InventoryInput, InventoryParams } from "../schema";
export interface InventoryService {
createInventory(input: InventoryInput): Promise<Inventory>;
updateInventory(id: string, input: InventoryInput): Promise<Inventory>;
removeInventory(id: string): Promise<boolean>;
findInventoryById(id: string): Promise<Inventory | undefined>;
findInventory(filter?: any): Promise<Inventory[]>;
create(input: InventoryInput): Promise<Inventory>;
update(id: string, input: InventoryInput): Promise<boolean>;
remove(id: string): Promise<boolean>;
findById(id: string): Promise<Inventory | undefined>;
find(params?: InventoryParams): Promise<PageCursorResult<Inventory>>;
}

@@ -1,10 +0,12 @@

import type { StockTransfer, StockInput } from "../types";
import type { PageCursorResult } from "@deboxsoft/module-core";
import type { StockTransfer, StockTransferInput, StockTransferParams } from "../schema";
export interface StockTransferService {
createStockIn(input: StockInput): Promise<StockTransfer>;
createStockOut(input: StockInput): Promise<StockTransfer>;
updateStockIn(id: string, input: StockInput): Promise<StockTransfer>;
updateStockOut(id: string, input: StockInput): Promise<StockTransfer>;
createStockIn(input: StockTransferInput): Promise<StockTransfer>;
createStockOut(input: StockTransferInput): Promise<StockTransfer>;
updateStockIn(id: string, input: StockTransferInput): Promise<boolean>;
updateStockOut(id: string, input: StockTransferInput): Promise<boolean>;
removeStockTransfer(id: string): Promise<boolean>;
findStockTransferById(id: string): Promise<StockTransfer | undefined>;
findStockTransfer(filter?: any): Promise<StockTransfer[]>;
findStockIn(params?: StockTransferParams): Promise<PageCursorResult<StockTransfer>>;
findStockOut(params?: StockTransferParams): Promise<PageCursorResult<StockTransfer>>;
}

@@ -1,9 +0,10 @@

import type { Transaction, TransactionFilterInput, TransactionInput, TransactionType } from "../types";
import type { PageCursorResult } from "@deboxsoft/module-core";
import type { Transaction, TransactionInput, TransactionType, TransactionParams } from "../schema";
export interface TransactionService {
createTransaction(input: TransactionInput): Promise<Transaction>;
updateTransaction(id: string, input: Partial<TransactionInput>): Promise<Transaction>;
removeTransaction(id: any): Promise<boolean>;
findTransaction(filter?: TransactionFilterInput): Promise<Transaction[]>;
findTransactionById(id: string): Promise<Transaction | undefined>;
create(input: TransactionInput): Promise<Transaction>;
update(id: string, input: Partial<TransactionInput>): Promise<boolean>;
remove(id: any): Promise<boolean>;
find(params?: TransactionParams): Promise<PageCursorResult<Transaction>>;
findById(id: string): Promise<Transaction | undefined>;
findTransactionType(): Promise<TransactionType[]>;
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc