elseware-nodejs 1.11.7 → 1.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ZodTypeAny, z, ZodSchema } from 'zod';
2
- import { CorsOptions } from 'cors';
3
2
  import * as express from 'express';
4
3
  import { Request, Response, NextFunction, RequestHandler } from 'express';
4
+ import { CorsOptions } from 'cors';
5
5
  import * as qs from 'qs';
6
6
  import * as express_serve_static_core from 'express-serve-static-core';
7
7
  import { Schema } from 'joi';
@@ -1926,7 +1926,17 @@ interface ParsedQuery {
1926
1926
  populate: string[];
1927
1927
  }
1928
1928
 
1929
+ interface ApiFeaturesConfig {
1930
+ defaultPage: number;
1931
+ defaultLimit: number;
1932
+ maxLimit: number;
1933
+ reservedFields: string[];
1934
+ supportedOperators: string[];
1935
+ }
1936
+ declare const DefaultApiFeaturesConfig: ApiFeaturesConfig;
1937
+
1929
1938
  declare class ApiFeatures {
1939
+ static getConfig(): ApiFeaturesConfig;
1930
1940
  static parse(query: Record<string, unknown>): ParsedQuery;
1931
1941
  private static parseFilters;
1932
1942
  private static parseSort;
@@ -1935,12 +1945,6 @@ declare class ApiFeatures {
1935
1945
  private static parsePagination;
1936
1946
  }
1937
1947
 
1938
- declare const QUERY_RESERVED_FIELDS: readonly ["page", "limit", "sort", "fields", "populate"];
1939
- declare const DEFAULT_PAGE = 1;
1940
- declare const DEFAULT_LIMIT = 100;
1941
- declare const DEFAULT_SORT_DIRECTION = "asc";
1942
- declare const SUPPORTED_OPERATORS: readonly ["eq", "ne", "gt", "gte", "lt", "lte", "in", "nin", "contains", "startsWith", "endsWith"];
1943
-
1944
1948
  interface ApiResponseOptions<T = unknown> {
1945
1949
  statusCode?: number;
1946
1950
  success?: boolean;
@@ -2158,6 +2162,25 @@ interface ServiceResponse<T> {
2158
2162
  data: T;
2159
2163
  }
2160
2164
 
2165
+ interface EJSConfig {
2166
+ apiFeatures?: Partial<ApiFeaturesConfig>;
2167
+ }
2168
+
2169
+ declare class EJS {
2170
+ static configure(config: Partial<EJSConfig>): void;
2171
+ static getConfig(): Readonly<EJSConfig>;
2172
+ static reset(): void;
2173
+ }
2174
+
2175
+ declare class EJSContext {
2176
+ private static config;
2177
+ static configure(config: Partial<EJSConfig>): void;
2178
+ static get(): Readonly<EJSConfig>;
2179
+ static reset(): void;
2180
+ }
2181
+
2182
+ declare const DefaultEJSConfig: EJSConfig;
2183
+
2161
2184
  declare class MongoRepository<T> implements Repository<T> {
2162
2185
  protected model: Model<T>;
2163
2186
  constructor(model: Model<T>);
@@ -2340,4 +2363,4 @@ declare function toMinutes(ms: number): number;
2340
2363
  declare function toHours(ms: number): number;
2341
2364
  declare function sleep(ms: number): Promise<void>;
2342
2365
 
2343
- export { AVLTree, AdjacencyList, AdjacencyMatrix, type AdjacentEdge, ApiFeatures, type ApiMeta, ApiResponse, type ApiResponseOptions, AppError, type AppErrorOptions, AsyncHandler, type AsyncRequestHandler, type AuthStrategy, type AuthenticatedUser, type AzureBlobStorageConfig, AzureBlobStorageService, BPlusTree, BTree, BearerTokenStrategy, BinaryHeap, BinarySearchTree, BinaryTree, BloomFilter, CircularArray, CircularLinkedList, CircularQueue, type CloudinaryConfig, CloudinaryService, ConsistentHash, CorrelationId, type CorsOptionsConfig, CountMinSketch, CrudControllerFactory, type CrudControllerOptions, DEFAULT_LIMIT, DEFAULT_PAGE, DEFAULT_SORT_DIRECTION, type DatabaseConnectionOptions, DatabaseManager, type DatabaseProvider, Deque, type DirectedEdge, DirectedGraph, DisjointSetUnion, DoublyLinkedList, DynamicArray, type Edge, type EmailProvider, EmailService, type ErrorMeta, ErrorMiddleware, type ExponentialBackoffOptions, ExponentialBackoffRetryPolicy, FenwickTree, FibNode, FibonacciHeap, type Filter, FixedRetryPolicy, type FixedRetryPolicyOptions, Graph, HashMap, HashSet, HttpClient, type HttpClientOptions, HyperLogLog, type IValidator, type InferSchema, InternalServiceClient, type Interval, IntervalTree, JWTService, type JWTServiceOptions, JoiValidator, KDTree, LFUCache, LRUCache, type LoadEnvOptions, Logger, type LoggerOptions, MaxHeap, MaxStack, MinHeap, MinStack, type MongoDatabaseConfig, MongoDatabaseProvider, MongoRepository, MulterFileHandlerService, MultiSet, Node, OrderedSet, type PaginationMeta, type PaginationQuery, PairingHeap, PairingNode, type ParsedQuery, type PickOptions, type Point, type Point2D, PriorityQueue, type ProgressCallback, QUERY_RESERVED_FIELDS, QuadTree, type QueryFilter, type QueryOperator, type QueryOptions, type QuerySort, Queue, RadixTree, type Rect, RedBlackTree, type Repository, RequestContext, type RequestContextData, type RequestContextOptions, type RetryPolicy, SMTPProvider, SUPPORTED_OPERATORS, SegmentTree, type Select, type SendEmailOptions, ServiceClient, type ServiceResponse, Set, SinglyLinkedList, type Sort, SparseTable, SplayTree, Stack, type StandardApiResponse, StaticArray, StaticTokenProvider, SuffixArray, SuffixTree, TemplateEngine, TernarySearchTree, type TokenProvider, TracingHeaders, TreeNode, Trie, type UpdateQueryOptions, type UploadOptions, type ValidationResult, type ValidationSchema, ZodValidator, authMiddleware, createCorsOptions, createRequestContextMiddleware, days, errorToString, hours, isAllowedOrigin, isJoiSchema, isZodSchema, loadEnv, logger, milliseconds, minutes, pickFields, seconds, sleep, toHours, toMinutes, toSeconds, validate };
2366
+ export { AVLTree, AdjacencyList, AdjacencyMatrix, type AdjacentEdge, ApiFeatures, type ApiFeaturesConfig, type ApiMeta, ApiResponse, type ApiResponseOptions, AppError, type AppErrorOptions, AsyncHandler, type AsyncRequestHandler, type AuthStrategy, type AuthenticatedUser, type AzureBlobStorageConfig, AzureBlobStorageService, BPlusTree, BTree, BearerTokenStrategy, BinaryHeap, BinarySearchTree, BinaryTree, BloomFilter, CircularArray, CircularLinkedList, CircularQueue, type CloudinaryConfig, CloudinaryService, ConsistentHash, CorrelationId, type CorsOptionsConfig, CountMinSketch, CrudControllerFactory, type CrudControllerOptions, type DatabaseConnectionOptions, DatabaseManager, type DatabaseProvider, DefaultApiFeaturesConfig, DefaultEJSConfig, Deque, type DirectedEdge, DirectedGraph, DisjointSetUnion, DoublyLinkedList, DynamicArray, EJS, type EJSConfig, EJSContext, type Edge, type EmailProvider, EmailService, type ErrorMeta, ErrorMiddleware, type ExponentialBackoffOptions, ExponentialBackoffRetryPolicy, FenwickTree, FibNode, FibonacciHeap, type Filter, FixedRetryPolicy, type FixedRetryPolicyOptions, Graph, HashMap, HashSet, HttpClient, type HttpClientOptions, HyperLogLog, type IValidator, type InferSchema, InternalServiceClient, type Interval, IntervalTree, JWTService, type JWTServiceOptions, JoiValidator, KDTree, LFUCache, LRUCache, type LoadEnvOptions, Logger, type LoggerOptions, MaxHeap, MaxStack, MinHeap, MinStack, type MongoDatabaseConfig, MongoDatabaseProvider, MongoRepository, MulterFileHandlerService, MultiSet, Node, OrderedSet, type PaginationMeta, type PaginationQuery, PairingHeap, PairingNode, type ParsedQuery, type PickOptions, type Point, type Point2D, PriorityQueue, type ProgressCallback, QuadTree, type QueryFilter, type QueryOperator, type QueryOptions, type QuerySort, Queue, RadixTree, type Rect, RedBlackTree, type Repository, RequestContext, type RequestContextData, type RequestContextOptions, type RetryPolicy, SMTPProvider, SegmentTree, type Select, type SendEmailOptions, ServiceClient, type ServiceResponse, Set, SinglyLinkedList, type Sort, SparseTable, SplayTree, Stack, type StandardApiResponse, StaticArray, StaticTokenProvider, SuffixArray, SuffixTree, TemplateEngine, TernarySearchTree, type TokenProvider, TracingHeaders, TreeNode, Trie, type UpdateQueryOptions, type UploadOptions, type ValidationResult, type ValidationSchema, ZodValidator, authMiddleware, createCorsOptions, createRequestContextMiddleware, days, errorToString, hours, isAllowedOrigin, isJoiSchema, isZodSchema, loadEnv, logger, milliseconds, minutes, pickFields, seconds, sleep, toHours, toMinutes, toSeconds, validate };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ZodTypeAny, z, ZodSchema } from 'zod';
2
- import { CorsOptions } from 'cors';
3
2
  import * as express from 'express';
4
3
  import { Request, Response, NextFunction, RequestHandler } from 'express';
4
+ import { CorsOptions } from 'cors';
5
5
  import * as qs from 'qs';
6
6
  import * as express_serve_static_core from 'express-serve-static-core';
7
7
  import { Schema } from 'joi';
@@ -1926,7 +1926,17 @@ interface ParsedQuery {
1926
1926
  populate: string[];
1927
1927
  }
1928
1928
 
1929
+ interface ApiFeaturesConfig {
1930
+ defaultPage: number;
1931
+ defaultLimit: number;
1932
+ maxLimit: number;
1933
+ reservedFields: string[];
1934
+ supportedOperators: string[];
1935
+ }
1936
+ declare const DefaultApiFeaturesConfig: ApiFeaturesConfig;
1937
+
1929
1938
  declare class ApiFeatures {
1939
+ static getConfig(): ApiFeaturesConfig;
1930
1940
  static parse(query: Record<string, unknown>): ParsedQuery;
1931
1941
  private static parseFilters;
1932
1942
  private static parseSort;
@@ -1935,12 +1945,6 @@ declare class ApiFeatures {
1935
1945
  private static parsePagination;
1936
1946
  }
1937
1947
 
1938
- declare const QUERY_RESERVED_FIELDS: readonly ["page", "limit", "sort", "fields", "populate"];
1939
- declare const DEFAULT_PAGE = 1;
1940
- declare const DEFAULT_LIMIT = 100;
1941
- declare const DEFAULT_SORT_DIRECTION = "asc";
1942
- declare const SUPPORTED_OPERATORS: readonly ["eq", "ne", "gt", "gte", "lt", "lte", "in", "nin", "contains", "startsWith", "endsWith"];
1943
-
1944
1948
  interface ApiResponseOptions<T = unknown> {
1945
1949
  statusCode?: number;
1946
1950
  success?: boolean;
@@ -2158,6 +2162,25 @@ interface ServiceResponse<T> {
2158
2162
  data: T;
2159
2163
  }
2160
2164
 
2165
+ interface EJSConfig {
2166
+ apiFeatures?: Partial<ApiFeaturesConfig>;
2167
+ }
2168
+
2169
+ declare class EJS {
2170
+ static configure(config: Partial<EJSConfig>): void;
2171
+ static getConfig(): Readonly<EJSConfig>;
2172
+ static reset(): void;
2173
+ }
2174
+
2175
+ declare class EJSContext {
2176
+ private static config;
2177
+ static configure(config: Partial<EJSConfig>): void;
2178
+ static get(): Readonly<EJSConfig>;
2179
+ static reset(): void;
2180
+ }
2181
+
2182
+ declare const DefaultEJSConfig: EJSConfig;
2183
+
2161
2184
  declare class MongoRepository<T> implements Repository<T> {
2162
2185
  protected model: Model<T>;
2163
2186
  constructor(model: Model<T>);
@@ -2340,4 +2363,4 @@ declare function toMinutes(ms: number): number;
2340
2363
  declare function toHours(ms: number): number;
2341
2364
  declare function sleep(ms: number): Promise<void>;
2342
2365
 
2343
- export { AVLTree, AdjacencyList, AdjacencyMatrix, type AdjacentEdge, ApiFeatures, type ApiMeta, ApiResponse, type ApiResponseOptions, AppError, type AppErrorOptions, AsyncHandler, type AsyncRequestHandler, type AuthStrategy, type AuthenticatedUser, type AzureBlobStorageConfig, AzureBlobStorageService, BPlusTree, BTree, BearerTokenStrategy, BinaryHeap, BinarySearchTree, BinaryTree, BloomFilter, CircularArray, CircularLinkedList, CircularQueue, type CloudinaryConfig, CloudinaryService, ConsistentHash, CorrelationId, type CorsOptionsConfig, CountMinSketch, CrudControllerFactory, type CrudControllerOptions, DEFAULT_LIMIT, DEFAULT_PAGE, DEFAULT_SORT_DIRECTION, type DatabaseConnectionOptions, DatabaseManager, type DatabaseProvider, Deque, type DirectedEdge, DirectedGraph, DisjointSetUnion, DoublyLinkedList, DynamicArray, type Edge, type EmailProvider, EmailService, type ErrorMeta, ErrorMiddleware, type ExponentialBackoffOptions, ExponentialBackoffRetryPolicy, FenwickTree, FibNode, FibonacciHeap, type Filter, FixedRetryPolicy, type FixedRetryPolicyOptions, Graph, HashMap, HashSet, HttpClient, type HttpClientOptions, HyperLogLog, type IValidator, type InferSchema, InternalServiceClient, type Interval, IntervalTree, JWTService, type JWTServiceOptions, JoiValidator, KDTree, LFUCache, LRUCache, type LoadEnvOptions, Logger, type LoggerOptions, MaxHeap, MaxStack, MinHeap, MinStack, type MongoDatabaseConfig, MongoDatabaseProvider, MongoRepository, MulterFileHandlerService, MultiSet, Node, OrderedSet, type PaginationMeta, type PaginationQuery, PairingHeap, PairingNode, type ParsedQuery, type PickOptions, type Point, type Point2D, PriorityQueue, type ProgressCallback, QUERY_RESERVED_FIELDS, QuadTree, type QueryFilter, type QueryOperator, type QueryOptions, type QuerySort, Queue, RadixTree, type Rect, RedBlackTree, type Repository, RequestContext, type RequestContextData, type RequestContextOptions, type RetryPolicy, SMTPProvider, SUPPORTED_OPERATORS, SegmentTree, type Select, type SendEmailOptions, ServiceClient, type ServiceResponse, Set, SinglyLinkedList, type Sort, SparseTable, SplayTree, Stack, type StandardApiResponse, StaticArray, StaticTokenProvider, SuffixArray, SuffixTree, TemplateEngine, TernarySearchTree, type TokenProvider, TracingHeaders, TreeNode, Trie, type UpdateQueryOptions, type UploadOptions, type ValidationResult, type ValidationSchema, ZodValidator, authMiddleware, createCorsOptions, createRequestContextMiddleware, days, errorToString, hours, isAllowedOrigin, isJoiSchema, isZodSchema, loadEnv, logger, milliseconds, minutes, pickFields, seconds, sleep, toHours, toMinutes, toSeconds, validate };
2366
+ export { AVLTree, AdjacencyList, AdjacencyMatrix, type AdjacentEdge, ApiFeatures, type ApiFeaturesConfig, type ApiMeta, ApiResponse, type ApiResponseOptions, AppError, type AppErrorOptions, AsyncHandler, type AsyncRequestHandler, type AuthStrategy, type AuthenticatedUser, type AzureBlobStorageConfig, AzureBlobStorageService, BPlusTree, BTree, BearerTokenStrategy, BinaryHeap, BinarySearchTree, BinaryTree, BloomFilter, CircularArray, CircularLinkedList, CircularQueue, type CloudinaryConfig, CloudinaryService, ConsistentHash, CorrelationId, type CorsOptionsConfig, CountMinSketch, CrudControllerFactory, type CrudControllerOptions, type DatabaseConnectionOptions, DatabaseManager, type DatabaseProvider, DefaultApiFeaturesConfig, DefaultEJSConfig, Deque, type DirectedEdge, DirectedGraph, DisjointSetUnion, DoublyLinkedList, DynamicArray, EJS, type EJSConfig, EJSContext, type Edge, type EmailProvider, EmailService, type ErrorMeta, ErrorMiddleware, type ExponentialBackoffOptions, ExponentialBackoffRetryPolicy, FenwickTree, FibNode, FibonacciHeap, type Filter, FixedRetryPolicy, type FixedRetryPolicyOptions, Graph, HashMap, HashSet, HttpClient, type HttpClientOptions, HyperLogLog, type IValidator, type InferSchema, InternalServiceClient, type Interval, IntervalTree, JWTService, type JWTServiceOptions, JoiValidator, KDTree, LFUCache, LRUCache, type LoadEnvOptions, Logger, type LoggerOptions, MaxHeap, MaxStack, MinHeap, MinStack, type MongoDatabaseConfig, MongoDatabaseProvider, MongoRepository, MulterFileHandlerService, MultiSet, Node, OrderedSet, type PaginationMeta, type PaginationQuery, PairingHeap, PairingNode, type ParsedQuery, type PickOptions, type Point, type Point2D, PriorityQueue, type ProgressCallback, QuadTree, type QueryFilter, type QueryOperator, type QueryOptions, type QuerySort, Queue, RadixTree, type Rect, RedBlackTree, type Repository, RequestContext, type RequestContextData, type RequestContextOptions, type RetryPolicy, SMTPProvider, SegmentTree, type Select, type SendEmailOptions, ServiceClient, type ServiceResponse, Set, SinglyLinkedList, type Sort, SparseTable, SplayTree, Stack, type StandardApiResponse, StaticArray, StaticTokenProvider, SuffixArray, SuffixTree, TemplateEngine, TernarySearchTree, type TokenProvider, TracingHeaders, TreeNode, Trie, type UpdateQueryOptions, type UploadOptions, type ValidationResult, type ValidationSchema, ZodValidator, authMiddleware, createCorsOptions, createRequestContextMiddleware, days, errorToString, hours, isAllowedOrigin, isJoiSchema, isZodSchema, loadEnv, logger, milliseconds, minutes, pickFields, seconds, sleep, toHours, toMinutes, toSeconds, validate };
package/dist/index.js CHANGED
@@ -4989,33 +4989,35 @@ var AsyncHandler = (fn) => (req, res, next) => {
4989
4989
  Promise.resolve(fn(req, res, next)).catch(next);
4990
4990
  };
4991
4991
 
4992
- // src/infrastructure/http/query/QueryConstants.ts
4993
- var QUERY_RESERVED_FIELDS = [
4994
- "page",
4995
- "limit",
4996
- "sort",
4997
- "fields",
4998
- "populate"
4999
- ];
5000
- var DEFAULT_PAGE = 1;
5001
- var DEFAULT_LIMIT = 100;
5002
- var DEFAULT_SORT_DIRECTION = "asc";
5003
- var SUPPORTED_OPERATORS = [
5004
- "eq",
5005
- "ne",
5006
- "gt",
5007
- "gte",
5008
- "lt",
5009
- "lte",
5010
- "in",
5011
- "nin",
5012
- "contains",
5013
- "startsWith",
5014
- "endsWith"
5015
- ];
4992
+ // src/infrastructure/http/query/ApiFeaturesConfig.ts
4993
+ var DefaultApiFeaturesConfig = {
4994
+ defaultPage: 1,
4995
+ defaultLimit: 100,
4996
+ maxLimit: 1e3,
4997
+ reservedFields: ["page", "limit", "sort", "fields", "populate"],
4998
+ supportedOperators: [
4999
+ "eq",
5000
+ "ne",
5001
+ "gt",
5002
+ "gte",
5003
+ "lt",
5004
+ "lte",
5005
+ "in",
5006
+ "nin",
5007
+ "contains",
5008
+ "startsWith",
5009
+ "endsWith"
5010
+ ]
5011
+ };
5016
5012
 
5017
5013
  // src/infrastructure/http/query/ApiFeatures.ts
5018
5014
  var ApiFeatures = class {
5015
+ static getConfig() {
5016
+ return {
5017
+ ...DefaultApiFeaturesConfig,
5018
+ ...EJSContext.get().apiFeatures ?? {}
5019
+ };
5020
+ }
5019
5021
  static parse(query) {
5020
5022
  return {
5021
5023
  filters: this.parseFilters(query),
@@ -5026,14 +5028,14 @@ var ApiFeatures = class {
5026
5028
  };
5027
5029
  }
5028
5030
  static parseFilters(query) {
5031
+ const config = this.getConfig();
5029
5032
  const filters = [];
5030
5033
  Object.entries(query).forEach(([key, value]) => {
5031
- if (QUERY_RESERVED_FIELDS.includes(key)) {
5034
+ if (config.reservedFields.includes(key)) {
5032
5035
  return;
5033
5036
  }
5034
- const match = key.match(
5035
- /^(.+)\[(eq|ne|gt|gte|lt|lte|in|nin|contains|startsWith|endsWith)\]$/
5036
- );
5037
+ const operatorsPattern = config.supportedOperators.join("|");
5038
+ const match = key.match(new RegExp(`^(.+)\\[(${operatorsPattern})\\]$`));
5037
5039
  if (match) {
5038
5040
  filters.push({
5039
5041
  field: match[1],
@@ -5083,8 +5085,10 @@ var ApiFeatures = class {
5083
5085
  return populate.split(",").map((field) => field.trim()).filter(Boolean);
5084
5086
  }
5085
5087
  static parsePagination(query) {
5086
- const page = Number(query.page) || DEFAULT_PAGE;
5087
- const limit = Number(query.limit) || DEFAULT_LIMIT;
5088
+ const config = this.getConfig();
5089
+ const page = Math.max(1, Number(query.page) || config.defaultPage);
5090
+ const requestedLimit = Number(query.limit) || config.defaultLimit;
5091
+ const limit = Math.min(Math.max(1, requestedLimit), config.maxLimit);
5088
5092
  return {
5089
5093
  page,
5090
5094
  limit
@@ -5779,6 +5783,61 @@ var InternalServiceClient = class extends ServiceClient {
5779
5783
  }
5780
5784
  };
5781
5785
 
5786
+ // src/ejs/context/EJSConfig.ts
5787
+ var DefaultEJSConfig = {
5788
+ apiFeatures: DefaultApiFeaturesConfig
5789
+ };
5790
+
5791
+ // src/ejs/context/EJSContext.ts
5792
+ function deepMerge(target, source) {
5793
+ const result = {
5794
+ ...target
5795
+ };
5796
+ Object.entries(source).forEach(([key, value]) => {
5797
+ if (value && typeof value === "object" && !Array.isArray(value)) {
5798
+ result[key] = deepMerge(
5799
+ result[key] ?? {},
5800
+ value
5801
+ );
5802
+ return;
5803
+ }
5804
+ result[key] = value;
5805
+ });
5806
+ return result;
5807
+ }
5808
+ var EJSContext = class {
5809
+ static config = {
5810
+ ...DefaultEJSConfig
5811
+ };
5812
+ static configure(config) {
5813
+ this.config = deepMerge(
5814
+ this.config,
5815
+ config
5816
+ );
5817
+ }
5818
+ static get() {
5819
+ return this.config;
5820
+ }
5821
+ static reset() {
5822
+ this.config = {
5823
+ ...DefaultEJSConfig
5824
+ };
5825
+ }
5826
+ };
5827
+
5828
+ // src/ejs/EJS.ts
5829
+ var EJS = class {
5830
+ static configure(config) {
5831
+ EJSContext.configure(config);
5832
+ }
5833
+ static getConfig() {
5834
+ return EJSContext.get();
5835
+ }
5836
+ static reset() {
5837
+ EJSContext.reset();
5838
+ }
5839
+ };
5840
+
5782
5841
  // src/repositories/providers/MongoRepository.ts
5783
5842
  var MongoRepository = class {
5784
5843
  model;
@@ -6366,6 +6425,6 @@ function sleep(ms) {
6366
6425
  return new Promise((resolve) => setTimeout(resolve, ms));
6367
6426
  }
6368
6427
 
6369
- export { AVLTree, AdjacencyList, AdjacencyMatrix, ApiFeatures, ApiResponse, AppError, AsyncHandler, AzureBlobStorageService, BPlusTree, BTree, BearerTokenStrategy, BinaryHeap, BinarySearchTree, BinaryTree, BloomFilter, CircularArray, CircularLinkedList, CircularQueue, CloudinaryService, ConsistentHash, CorrelationId, CountMinSketch, CrudControllerFactory, DEFAULT_LIMIT, DEFAULT_PAGE, DEFAULT_SORT_DIRECTION, DatabaseManager, Deque, DirectedGraph, DisjointSetUnion, DoublyLinkedList, DynamicArray, EmailService, ErrorMiddleware, ExponentialBackoffRetryPolicy, FenwickTree, FibNode, FibonacciHeap, FixedRetryPolicy, Graph, HashMap, HashSet, HttpClient, HyperLogLog, InternalServiceClient, IntervalTree, JWTService, JoiValidator, KDTree, LFUCache, LRUCache, Logger, MaxHeap, MaxStack, MinHeap, MinStack, MongoDatabaseProvider, MongoRepository, MulterFileHandlerService, MultiSet, Node, OrderedSet, PairingHeap, PairingNode, PriorityQueue, QUERY_RESERVED_FIELDS, QuadTree, Queue, RadixTree, RedBlackTree, RequestContext, SMTPProvider, SUPPORTED_OPERATORS, SegmentTree, ServiceClient, Set2 as Set, SinglyLinkedList, SparseTable, SplayTree, Stack, StaticArray, StaticTokenProvider, SuffixArray, SuffixTree, TemplateEngine, TernarySearchTree, TracingHeaders, TreeNode, Trie, ZodValidator, authMiddleware, createCorsOptions, createRequestContextMiddleware, days, errorToString, hours, isAllowedOrigin, isJoiSchema, isZodSchema, loadEnv, logger, milliseconds, minutes, pickFields, seconds, sleep, toHours, toMinutes, toSeconds, validate };
6428
+ export { AVLTree, AdjacencyList, AdjacencyMatrix, ApiFeatures, ApiResponse, AppError, AsyncHandler, AzureBlobStorageService, BPlusTree, BTree, BearerTokenStrategy, BinaryHeap, BinarySearchTree, BinaryTree, BloomFilter, CircularArray, CircularLinkedList, CircularQueue, CloudinaryService, ConsistentHash, CorrelationId, CountMinSketch, CrudControllerFactory, DatabaseManager, DefaultApiFeaturesConfig, DefaultEJSConfig, Deque, DirectedGraph, DisjointSetUnion, DoublyLinkedList, DynamicArray, EJS, EJSContext, EmailService, ErrorMiddleware, ExponentialBackoffRetryPolicy, FenwickTree, FibNode, FibonacciHeap, FixedRetryPolicy, Graph, HashMap, HashSet, HttpClient, HyperLogLog, InternalServiceClient, IntervalTree, JWTService, JoiValidator, KDTree, LFUCache, LRUCache, Logger, MaxHeap, MaxStack, MinHeap, MinStack, MongoDatabaseProvider, MongoRepository, MulterFileHandlerService, MultiSet, Node, OrderedSet, PairingHeap, PairingNode, PriorityQueue, QuadTree, Queue, RadixTree, RedBlackTree, RequestContext, SMTPProvider, SegmentTree, ServiceClient, Set2 as Set, SinglyLinkedList, SparseTable, SplayTree, Stack, StaticArray, StaticTokenProvider, SuffixArray, SuffixTree, TemplateEngine, TernarySearchTree, TracingHeaders, TreeNode, Trie, ZodValidator, authMiddleware, createCorsOptions, createRequestContextMiddleware, days, errorToString, hours, isAllowedOrigin, isJoiSchema, isZodSchema, loadEnv, logger, milliseconds, minutes, pickFields, seconds, sleep, toHours, toMinutes, toSeconds, validate };
6370
6429
  //# sourceMappingURL=index.js.map
6371
6430
  //# sourceMappingURL=index.js.map