@plyaz/types 1.14.8 → 1.14.10
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/api/index.cjs +622 -1
- package/dist/api/index.cjs.map +1 -1
- package/dist/api/index.js +622 -1
- package/dist/api/index.js.map +1 -1
- package/dist/db/dbConstant.d.ts +22 -0
- package/dist/db/index.cjs +17 -0
- package/dist/db/index.cjs.map +1 -1
- package/dist/db/index.d.ts +1 -0
- package/dist/db/index.js +16 -1
- package/dist/db/index.js.map +1 -1
- package/dist/errors/codes.d.ts +141 -0
- package/dist/errors/enums.d.ts +21 -0
- package/dist/errors/index.cjs +703 -1
- package/dist/errors/index.cjs.map +1 -1
- package/dist/errors/index.js +703 -2
- package/dist/errors/index.js.map +1 -1
- package/dist/index.cjs +716 -20
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +714 -20
- package/dist/index.js.map +1 -1
- package/dist/payments/base-error/enum.d.ts +0 -20
- package/dist/payments/base-error/types.d.ts +4 -5
- package/dist/payments/index.cjs +0 -19
- package/dist/payments/index.cjs.map +1 -1
- package/dist/payments/index.js +1 -19
- package/dist/payments/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Encryption Extension Constants
|
|
3
|
+
*
|
|
4
|
+
* Centralized constants for encryption configuration to prevent
|
|
5
|
+
* hardcoded values and ensure consistency across the codebase.
|
|
6
|
+
*/
|
|
7
|
+
export declare const ENCRYPTION_DEFAULTS: {
|
|
8
|
+
/** Default encryption algorithm - AES-256-GCM provides authenticated encryption */
|
|
9
|
+
readonly ALGORITHM: "aes-256-gcm";
|
|
10
|
+
/** IV length for AES-256-GCM in bytes */
|
|
11
|
+
readonly IV_LENGTH: 16;
|
|
12
|
+
/** Expected parts in encrypted text format (iv:authTag:encrypted) */
|
|
13
|
+
readonly ENCRYPTED_PARTS_COUNT: 3;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Alert rule IDs
|
|
17
|
+
*/
|
|
18
|
+
export declare const ALERT_RULE_ID: {
|
|
19
|
+
readonly POOL_EXHAUSTION: "pool-exhaustion";
|
|
20
|
+
readonly SLOW_QUERY: "slow-query";
|
|
21
|
+
readonly REPLICA_LAG: "replica-lag";
|
|
22
|
+
};
|
package/dist/db/index.cjs
CHANGED
|
@@ -62,13 +62,30 @@ var ADAPTER_TYPES = /* @__PURE__ */ ((ADAPTER_TYPES2) => {
|
|
|
62
62
|
return ADAPTER_TYPES2;
|
|
63
63
|
})(ADAPTER_TYPES || {});
|
|
64
64
|
|
|
65
|
+
// src/db/dbConstant.ts
|
|
66
|
+
var ENCRYPTION_DEFAULTS = {
|
|
67
|
+
/** Default encryption algorithm - AES-256-GCM provides authenticated encryption */
|
|
68
|
+
ALGORITHM: "aes-256-gcm",
|
|
69
|
+
/** IV length for AES-256-GCM in bytes */
|
|
70
|
+
IV_LENGTH: 16,
|
|
71
|
+
/** Expected parts in encrypted text format (iv:authTag:encrypted) */
|
|
72
|
+
ENCRYPTED_PARTS_COUNT: 3
|
|
73
|
+
};
|
|
74
|
+
var ALERT_RULE_ID = {
|
|
75
|
+
POOL_EXHAUSTION: "pool-exhaustion",
|
|
76
|
+
SLOW_QUERY: "slow-query",
|
|
77
|
+
REPLICA_LAG: "replica-lag"
|
|
78
|
+
};
|
|
79
|
+
|
|
65
80
|
exports.ADAPTERS = ADAPTERS;
|
|
66
81
|
exports.ADAPTER_TYPES = ADAPTER_TYPES;
|
|
82
|
+
exports.ALERT_RULE_ID = ALERT_RULE_ID;
|
|
67
83
|
exports.ALERT_SEVERITY = ALERT_SEVERITY;
|
|
68
84
|
exports.ALERT_SOURCE = ALERT_SOURCE;
|
|
69
85
|
exports.AUDIT_OPERATION = AUDIT_OPERATION;
|
|
70
86
|
exports.DATABASE_EVENT_TYPE = DATABASE_EVENT_TYPE;
|
|
71
87
|
exports.DB_POOL_EVENTS = DB_POOL_EVENTS;
|
|
88
|
+
exports.ENCRYPTION_DEFAULTS = ENCRYPTION_DEFAULTS;
|
|
72
89
|
exports.REPLICA_STRATEGY = REPLICA_STRATEGY;
|
|
73
90
|
//# sourceMappingURL=index.cjs.map
|
|
74
91
|
//# sourceMappingURL=index.cjs.map
|
package/dist/db/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/db/dbEnums.ts"],"names":["ADAPTERS","DATABASE_EVENT_TYPE","REPLICA_STRATEGY","DB_POOL_EVENTS","ALERT_SEVERITY","ALERT_SOURCE","AUDIT_OPERATION","ADAPTER_TYPES"],"mappings":";;;;;AAiFO,IAAK,QAAA,qBAAAA,SAAAA,KAAL;AAEH,EAAAA,UAAA,UAAA,CAAA,GAAW,UAAA;AAGX,EAAAA,UAAA,SAAA,CAAA,GAAU,SAAA;AAGV,EAAAA,UAAA,UAAA,CAAA,GAAW,UAAA;AAGX,EAAAA,UAAA,KAAA,CAAA,GAAM,KAAA;AAXE,EAAA,OAAAA,SAAAA;AAAA,CAAA,EAAA,QAAA,IAAA,EAAA;AAiBL,IAAK,mBAAA,qBAAAC,oBAAAA,KAAL;AACH,EAAAA,qBAAA,aAAA,CAAA,GAAc,aAAA;AACd,EAAAA,qBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,qBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,qBAAA,mBAAA,CAAA,GAAoB,mBAAA;AACpB,EAAAA,qBAAA,kBAAA,CAAA,GAAmB,kBAAA;AACnB,EAAAA,qBAAA,qBAAA,CAAA,GAAsB,qBAAA;AACtB,EAAAA,qBAAA,cAAA,CAAA,GAAe,cAAA;AAPP,EAAA,OAAAA,oBAAAA;AAAA,CAAA,EAAA,mBAAA,IAAA,EAAA;AAaL,IAAK,gBAAA,qBAAAC,iBAAAA,KAAL;AAEH,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AAEV,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AAEV,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AAEV,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AARF,EAAA,OAAAA,iBAAAA;AAAA,CAAA,EAAA,gBAAA,IAAA,EAAA;AAcL,IAAK,cAAA,qBAAAC,eAAAA,KAAL;AACL,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,gBAAA,QAAA,CAAA,GAAS,QAAA;AAJC,EAAA,OAAAA,eAAAA;AAAA,CAAA,EAAA,cAAA,IAAA,EAAA;AAUL,IAAK,cAAA,qBAAAC,eAAAA,KAAL;AACL,EAAAA,gBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,gBAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,gBAAA,MAAA,CAAA,GAAO,MAAA;AAJG,EAAA,OAAAA,eAAAA;AAAA,CAAA,EAAA,cAAA,IAAA,EAAA;AAUL,IAAK,YAAA,qBAAAC,aAAAA,KAAL;AACL,EAAAA,cAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,cAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,cAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,cAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,cAAA,QAAA,CAAA,GAAS,QAAA;AALC,EAAA,OAAAA,aAAAA;AAAA,CAAA,EAAA,YAAA,IAAA,EAAA;AAWL,IAAK,eAAA,qBAAAC,gBAAAA,KAAL;AACL,EAAAA,iBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,iBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,iBAAA,QAAA,CAAA,GAAS,QAAA;AAHC,EAAA,OAAAA,gBAAAA;AAAA,CAAA,EAAA,eAAA,IAAA,EAAA;AASL,IAAK,aAAA,qBAAAC,cAAAA,KAAL;AACL,EAAAA,eAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,eAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,eAAA,KAAA,CAAA,GAAM,KAAA;AAHI,EAAA,OAAAA,cAAAA;AAAA,CAAA,EAAA,aAAA,IAAA,EAAA","file":"index.cjs","sourcesContent":["/**\n * @fileoverview Database adapter type definitions\n *\n * Defines the enumeration of supported database adapter types used throughout\n * the database package. This enum provides type-safe identification of different\n * database integrations and is used in configuration, factory methods, and\n * adapter selection logic.\n *\n * **Application Flow Context:**\n * ```\n * Configuration → ADAPTERS Enum → AdapterFactory → Concrete Adapter\n * ↓ ↓ ↓ ↓\n * User Config → Type Safety → Adapter Creation → Database Connection\n * ```\n *\n * **Adapter Types:**\n * - **DRIZZLE**: Type-safe ORM with excellent TypeScript support\n * - **SUPABASE**: Hosted PostgreSQL with real-time capabilities\n * - **SQL**: Raw SQL execution for maximum control\n * - **DATABASE**: Generic fallback adapter\n *\n * @example\n * ```typescript\n * // Adapter selection in configuration\n * const config = {\n * adapter: ADAPTERS.DRIZZLE,\n * connectionString: process.env.DATABASE_URL\n * };\n *\n * // Type-safe adapter factory usage\n * const adapter = AdapterFactory.create(ADAPTERS.SUPABASE, supabaseConfig);\n *\n * // Switch statement with exhaustive checking\n * switch (config.adapter) {\n * case ADAPTERS.DRIZZLE:\n * // Handle Drizzle-specific logic\n * break;\n * case ADAPTERS.SUPABASE:\n * // Handle Supabase-specific logic\n * break;\n * case ADAPTERS.SQL:\n * // Handle SQL-specific logic\n * break;\n * default:\n * // TypeScript ensures all cases are handled\n * throw new Error(`Unsupported adapter: ${config.adapter}`);\n * }\n * ```\n *\n */\n/**\n * @enum ADAPTERS\n * @description\n * Enumeration of supported database adapter types.\n *\n * This enum provides type-safe identification of different database integrations\n * and is used throughout the package for configuration, factory methods, and\n * adapter selection. Each adapter type represents a different approach to\n * database connectivity and operations.\n *\n * **Adapter Characteristics:**\n * - **DATABASE**: Generic fallback, minimal functionality\n * - **DRIZZLE**: Full ORM with type safety and query building\n * - **SUPABASE**: Hosted solution with real-time and auth features\n * - **SQL**: Raw SQL for performance-critical applications\n *\n * @example\n * ```typescript\n * // Configuration with adapter selection\n * const configs = {\n * development: { adapter: ADAPTERS.DRIZZLE },\n * production: { adapter: ADAPTERS.SUPABASE },\n * performance: { adapter: ADAPTERS.SQL }\n * };\n *\n * // Type-safe adapter validation\n * function validateAdapter(adapter: ADAPTERS): boolean {\n * return Object.values(ADAPTERS).includes(adapter);\n * }\n * ```\n */\nexport enum ADAPTERS {\n /** Generic database adapter (default when no specific integration is set) */\n DATABASE = 'database',\n\n /** Drizzle ORM adapter (PostgreSQL, MySQL, SQLite, etc.) */\n DRIZZLE = 'drizzle',\n\n /** Supabase adapter (PostgreSQL backend with REST + Realtime APIs) */\n SUPABASE = 'supabase',\n\n /** Raw SQL adapter (direct database queries without ORM) */\n SQL = 'sql',\n}\n\n\n\n// Event type enum\nexport enum DATABASE_EVENT_TYPE {\n BeforeQuery = 'beforeQuery',\n AfterQuery = 'afterQuery',\n QueryError = 'queryError',\n BeforeTransaction = 'beforeTransaction',\n AfterTransaction = 'afterTransaction',\n TransactionRollback = 'transactionRollback',\n HealthChange = 'healthChange',\n}\n\n/**\n * Strategy options for replica selection.\n */\nexport enum REPLICA_STRATEGY {\n /** Always use primary database */\n PRIMARY = 'primary',\n /** Use any available replica */\n REPLICA = 'replica',\n /** Use geographically closest replica */\n CLOSEST = 'closest',\n /** Use fastest responding replica */\n FASTEST = 'fastest',\n}\n\n/**\n * Enum for pool event types.\n */\nexport enum DB_POOL_EVENTS {\n CONNECT = 'connect',\n ACQUIRE = 'acquire',\n RELEASE = 'release',\n REMOVE = 'remove',\n}\n\n/**\n * Alert severity levels\n */\nexport enum ALERT_SEVERITY {\n CRITICAL = 'critical',\n ERROR = 'error',\n WARNING = 'warning',\n INFO = 'info'\n}\n\n/**\n * Alert source types\n */\nexport enum ALERT_SOURCE {\n DATABASE = 'database',\n POOL = 'pool',\n REPLICA = 'replica',\n CACHE = 'cache',\n BACKUP = 'backup'\n}\n\n/**\n * Audit operation types\n */\nexport enum AUDIT_OPERATION {\n CREATE = 'CREATE',\n UPDATE = 'UPDATE',\n DELETE = 'DELETE'\n}\n\n/**\n * Database Adapter Types - Enum for adapter selection\n */\nexport enum ADAPTER_TYPES {\n DRIZZLE = 'drizzle',\n SUPABASE = 'supabase',\n SQL = 'sql'\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/db/dbEnums.ts","../../src/db/dbConstant.ts"],"names":["ADAPTERS","DATABASE_EVENT_TYPE","REPLICA_STRATEGY","DB_POOL_EVENTS","ALERT_SEVERITY","ALERT_SOURCE","AUDIT_OPERATION","ADAPTER_TYPES"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * @fileoverview Database adapter type definitions\n *\n * Defines the enumeration of supported database adapter types used throughout\n * the database package. This enum provides type-safe identification of different\n * database integrations and is used in configuration, factory methods, and\n * adapter selection logic.\n *\n * **Application Flow Context:**\n * ```\n * Configuration → ADAPTERS Enum → AdapterFactory → Concrete Adapter\n * ↓ ↓ ↓ ↓\n * User Config → Type Safety → Adapter Creation → Database Connection\n * ```\n *\n * **Adapter Types:**\n * - **DRIZZLE**: Type-safe ORM with excellent TypeScript support\n * - **SUPABASE**: Hosted PostgreSQL with real-time capabilities\n * - **SQL**: Raw SQL execution for maximum control\n * - **DATABASE**: Generic fallback adapter\n *\n * @example\n * ```typescript\n * // Adapter selection in configuration\n * const config = {\n * adapter: ADAPTERS.DRIZZLE,\n * connectionString: process.env.DATABASE_URL\n * };\n *\n * // Type-safe adapter factory usage\n * const adapter = AdapterFactory.create(ADAPTERS.SUPABASE, supabaseConfig);\n *\n * // Switch statement with exhaustive checking\n * switch (config.adapter) {\n * case ADAPTERS.DRIZZLE:\n * // Handle Drizzle-specific logic\n * break;\n * case ADAPTERS.SUPABASE:\n * // Handle Supabase-specific logic\n * break;\n * case ADAPTERS.SQL:\n * // Handle SQL-specific logic\n * break;\n * default:\n * // TypeScript ensures all cases are handled\n * throw new Error(`Unsupported adapter: ${config.adapter}`);\n * }\n * ```\n *\n */\n/**\n * @enum ADAPTERS\n * @description\n * Enumeration of supported database adapter types.\n *\n * This enum provides type-safe identification of different database integrations\n * and is used throughout the package for configuration, factory methods, and\n * adapter selection. Each adapter type represents a different approach to\n * database connectivity and operations.\n *\n * **Adapter Characteristics:**\n * - **DATABASE**: Generic fallback, minimal functionality\n * - **DRIZZLE**: Full ORM with type safety and query building\n * - **SUPABASE**: Hosted solution with real-time and auth features\n * - **SQL**: Raw SQL for performance-critical applications\n *\n * @example\n * ```typescript\n * // Configuration with adapter selection\n * const configs = {\n * development: { adapter: ADAPTERS.DRIZZLE },\n * production: { adapter: ADAPTERS.SUPABASE },\n * performance: { adapter: ADAPTERS.SQL }\n * };\n *\n * // Type-safe adapter validation\n * function validateAdapter(adapter: ADAPTERS): boolean {\n * return Object.values(ADAPTERS).includes(adapter);\n * }\n * ```\n */\nexport enum ADAPTERS {\n /** Generic database adapter (default when no specific integration is set) */\n DATABASE = 'database',\n\n /** Drizzle ORM adapter (PostgreSQL, MySQL, SQLite, etc.) */\n DRIZZLE = 'drizzle',\n\n /** Supabase adapter (PostgreSQL backend with REST + Realtime APIs) */\n SUPABASE = 'supabase',\n\n /** Raw SQL adapter (direct database queries without ORM) */\n SQL = 'sql',\n}\n\n\n\n// Event type enum\nexport enum DATABASE_EVENT_TYPE {\n BeforeQuery = 'beforeQuery',\n AfterQuery = 'afterQuery',\n QueryError = 'queryError',\n BeforeTransaction = 'beforeTransaction',\n AfterTransaction = 'afterTransaction',\n TransactionRollback = 'transactionRollback',\n HealthChange = 'healthChange',\n}\n\n/**\n * Strategy options for replica selection.\n */\nexport enum REPLICA_STRATEGY {\n /** Always use primary database */\n PRIMARY = 'primary',\n /** Use any available replica */\n REPLICA = 'replica',\n /** Use geographically closest replica */\n CLOSEST = 'closest',\n /** Use fastest responding replica */\n FASTEST = 'fastest',\n}\n\n/**\n * Enum for pool event types.\n */\nexport enum DB_POOL_EVENTS {\n CONNECT = 'connect',\n ACQUIRE = 'acquire',\n RELEASE = 'release',\n REMOVE = 'remove',\n}\n\n/**\n * Alert severity levels\n */\nexport enum ALERT_SEVERITY {\n CRITICAL = 'critical',\n ERROR = 'error',\n WARNING = 'warning',\n INFO = 'info'\n}\n\n/**\n * Alert source types\n */\nexport enum ALERT_SOURCE {\n DATABASE = 'database',\n POOL = 'pool',\n REPLICA = 'replica',\n CACHE = 'cache',\n BACKUP = 'backup'\n}\n\n/**\n * Audit operation types\n */\nexport enum AUDIT_OPERATION {\n CREATE = 'CREATE',\n UPDATE = 'UPDATE',\n DELETE = 'DELETE'\n}\n\n/**\n * Database Adapter Types - Enum for adapter selection\n */\nexport enum ADAPTER_TYPES {\n DRIZZLE = 'drizzle',\n SUPABASE = 'supabase',\n SQL = 'sql'\n}\n","/**\n * Encryption Extension Constants\n * \n * Centralized constants for encryption configuration to prevent\n * hardcoded values and ensure consistency across the codebase.\n */\n\nexport const ENCRYPTION_DEFAULTS = {\n /** Default encryption algorithm - AES-256-GCM provides authenticated encryption */\n ALGORITHM: 'aes-256-gcm' as const,\n \n /** IV length for AES-256-GCM in bytes */\n IV_LENGTH: 16,\n \n /** Expected parts in encrypted text format (iv:authTag:encrypted) */\n ENCRYPTED_PARTS_COUNT: 3\n} as const;\n\n/**\n * Alert rule IDs\n */\nexport const ALERT_RULE_ID = {\n POOL_EXHAUSTION: 'pool-exhaustion',\n SLOW_QUERY: 'slow-query',\n REPLICA_LAG: 'replica-lag'\n} as const;\n"]}
|
package/dist/db/index.d.ts
CHANGED
package/dist/db/index.js
CHANGED
|
@@ -60,6 +60,21 @@ var ADAPTER_TYPES = /* @__PURE__ */ ((ADAPTER_TYPES2) => {
|
|
|
60
60
|
return ADAPTER_TYPES2;
|
|
61
61
|
})(ADAPTER_TYPES || {});
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
// src/db/dbConstant.ts
|
|
64
|
+
var ENCRYPTION_DEFAULTS = {
|
|
65
|
+
/** Default encryption algorithm - AES-256-GCM provides authenticated encryption */
|
|
66
|
+
ALGORITHM: "aes-256-gcm",
|
|
67
|
+
/** IV length for AES-256-GCM in bytes */
|
|
68
|
+
IV_LENGTH: 16,
|
|
69
|
+
/** Expected parts in encrypted text format (iv:authTag:encrypted) */
|
|
70
|
+
ENCRYPTED_PARTS_COUNT: 3
|
|
71
|
+
};
|
|
72
|
+
var ALERT_RULE_ID = {
|
|
73
|
+
POOL_EXHAUSTION: "pool-exhaustion",
|
|
74
|
+
SLOW_QUERY: "slow-query",
|
|
75
|
+
REPLICA_LAG: "replica-lag"
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export { ADAPTERS, ADAPTER_TYPES, ALERT_RULE_ID, ALERT_SEVERITY, ALERT_SOURCE, AUDIT_OPERATION, DATABASE_EVENT_TYPE, DB_POOL_EVENTS, ENCRYPTION_DEFAULTS, REPLICA_STRATEGY };
|
|
64
79
|
//# sourceMappingURL=index.js.map
|
|
65
80
|
//# sourceMappingURL=index.js.map
|
package/dist/db/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/db/dbEnums.ts"],"names":["ADAPTERS","DATABASE_EVENT_TYPE","REPLICA_STRATEGY","DB_POOL_EVENTS","ALERT_SEVERITY","ALERT_SOURCE","AUDIT_OPERATION","ADAPTER_TYPES"],"mappings":";;;AAiFO,IAAK,QAAA,qBAAAA,SAAAA,KAAL;AAEH,EAAAA,UAAA,UAAA,CAAA,GAAW,UAAA;AAGX,EAAAA,UAAA,SAAA,CAAA,GAAU,SAAA;AAGV,EAAAA,UAAA,UAAA,CAAA,GAAW,UAAA;AAGX,EAAAA,UAAA,KAAA,CAAA,GAAM,KAAA;AAXE,EAAA,OAAAA,SAAAA;AAAA,CAAA,EAAA,QAAA,IAAA,EAAA;AAiBL,IAAK,mBAAA,qBAAAC,oBAAAA,KAAL;AACH,EAAAA,qBAAA,aAAA,CAAA,GAAc,aAAA;AACd,EAAAA,qBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,qBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,qBAAA,mBAAA,CAAA,GAAoB,mBAAA;AACpB,EAAAA,qBAAA,kBAAA,CAAA,GAAmB,kBAAA;AACnB,EAAAA,qBAAA,qBAAA,CAAA,GAAsB,qBAAA;AACtB,EAAAA,qBAAA,cAAA,CAAA,GAAe,cAAA;AAPP,EAAA,OAAAA,oBAAAA;AAAA,CAAA,EAAA,mBAAA,IAAA,EAAA;AAaL,IAAK,gBAAA,qBAAAC,iBAAAA,KAAL;AAEH,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AAEV,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AAEV,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AAEV,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AARF,EAAA,OAAAA,iBAAAA;AAAA,CAAA,EAAA,gBAAA,IAAA,EAAA;AAcL,IAAK,cAAA,qBAAAC,eAAAA,KAAL;AACL,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,gBAAA,QAAA,CAAA,GAAS,QAAA;AAJC,EAAA,OAAAA,eAAAA;AAAA,CAAA,EAAA,cAAA,IAAA,EAAA;AAUL,IAAK,cAAA,qBAAAC,eAAAA,KAAL;AACL,EAAAA,gBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,gBAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,gBAAA,MAAA,CAAA,GAAO,MAAA;AAJG,EAAA,OAAAA,eAAAA;AAAA,CAAA,EAAA,cAAA,IAAA,EAAA;AAUL,IAAK,YAAA,qBAAAC,aAAAA,KAAL;AACL,EAAAA,cAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,cAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,cAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,cAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,cAAA,QAAA,CAAA,GAAS,QAAA;AALC,EAAA,OAAAA,aAAAA;AAAA,CAAA,EAAA,YAAA,IAAA,EAAA;AAWL,IAAK,eAAA,qBAAAC,gBAAAA,KAAL;AACL,EAAAA,iBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,iBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,iBAAA,QAAA,CAAA,GAAS,QAAA;AAHC,EAAA,OAAAA,gBAAAA;AAAA,CAAA,EAAA,eAAA,IAAA,EAAA;AASL,IAAK,aAAA,qBAAAC,cAAAA,KAAL;AACL,EAAAA,eAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,eAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,eAAA,KAAA,CAAA,GAAM,KAAA;AAHI,EAAA,OAAAA,cAAAA;AAAA,CAAA,EAAA,aAAA,IAAA,EAAA","file":"index.js","sourcesContent":["/**\n * @fileoverview Database adapter type definitions\n *\n * Defines the enumeration of supported database adapter types used throughout\n * the database package. This enum provides type-safe identification of different\n * database integrations and is used in configuration, factory methods, and\n * adapter selection logic.\n *\n * **Application Flow Context:**\n * ```\n * Configuration → ADAPTERS Enum → AdapterFactory → Concrete Adapter\n * ↓ ↓ ↓ ↓\n * User Config → Type Safety → Adapter Creation → Database Connection\n * ```\n *\n * **Adapter Types:**\n * - **DRIZZLE**: Type-safe ORM with excellent TypeScript support\n * - **SUPABASE**: Hosted PostgreSQL with real-time capabilities\n * - **SQL**: Raw SQL execution for maximum control\n * - **DATABASE**: Generic fallback adapter\n *\n * @example\n * ```typescript\n * // Adapter selection in configuration\n * const config = {\n * adapter: ADAPTERS.DRIZZLE,\n * connectionString: process.env.DATABASE_URL\n * };\n *\n * // Type-safe adapter factory usage\n * const adapter = AdapterFactory.create(ADAPTERS.SUPABASE, supabaseConfig);\n *\n * // Switch statement with exhaustive checking\n * switch (config.adapter) {\n * case ADAPTERS.DRIZZLE:\n * // Handle Drizzle-specific logic\n * break;\n * case ADAPTERS.SUPABASE:\n * // Handle Supabase-specific logic\n * break;\n * case ADAPTERS.SQL:\n * // Handle SQL-specific logic\n * break;\n * default:\n * // TypeScript ensures all cases are handled\n * throw new Error(`Unsupported adapter: ${config.adapter}`);\n * }\n * ```\n *\n */\n/**\n * @enum ADAPTERS\n * @description\n * Enumeration of supported database adapter types.\n *\n * This enum provides type-safe identification of different database integrations\n * and is used throughout the package for configuration, factory methods, and\n * adapter selection. Each adapter type represents a different approach to\n * database connectivity and operations.\n *\n * **Adapter Characteristics:**\n * - **DATABASE**: Generic fallback, minimal functionality\n * - **DRIZZLE**: Full ORM with type safety and query building\n * - **SUPABASE**: Hosted solution with real-time and auth features\n * - **SQL**: Raw SQL for performance-critical applications\n *\n * @example\n * ```typescript\n * // Configuration with adapter selection\n * const configs = {\n * development: { adapter: ADAPTERS.DRIZZLE },\n * production: { adapter: ADAPTERS.SUPABASE },\n * performance: { adapter: ADAPTERS.SQL }\n * };\n *\n * // Type-safe adapter validation\n * function validateAdapter(adapter: ADAPTERS): boolean {\n * return Object.values(ADAPTERS).includes(adapter);\n * }\n * ```\n */\nexport enum ADAPTERS {\n /** Generic database adapter (default when no specific integration is set) */\n DATABASE = 'database',\n\n /** Drizzle ORM adapter (PostgreSQL, MySQL, SQLite, etc.) */\n DRIZZLE = 'drizzle',\n\n /** Supabase adapter (PostgreSQL backend with REST + Realtime APIs) */\n SUPABASE = 'supabase',\n\n /** Raw SQL adapter (direct database queries without ORM) */\n SQL = 'sql',\n}\n\n\n\n// Event type enum\nexport enum DATABASE_EVENT_TYPE {\n BeforeQuery = 'beforeQuery',\n AfterQuery = 'afterQuery',\n QueryError = 'queryError',\n BeforeTransaction = 'beforeTransaction',\n AfterTransaction = 'afterTransaction',\n TransactionRollback = 'transactionRollback',\n HealthChange = 'healthChange',\n}\n\n/**\n * Strategy options for replica selection.\n */\nexport enum REPLICA_STRATEGY {\n /** Always use primary database */\n PRIMARY = 'primary',\n /** Use any available replica */\n REPLICA = 'replica',\n /** Use geographically closest replica */\n CLOSEST = 'closest',\n /** Use fastest responding replica */\n FASTEST = 'fastest',\n}\n\n/**\n * Enum for pool event types.\n */\nexport enum DB_POOL_EVENTS {\n CONNECT = 'connect',\n ACQUIRE = 'acquire',\n RELEASE = 'release',\n REMOVE = 'remove',\n}\n\n/**\n * Alert severity levels\n */\nexport enum ALERT_SEVERITY {\n CRITICAL = 'critical',\n ERROR = 'error',\n WARNING = 'warning',\n INFO = 'info'\n}\n\n/**\n * Alert source types\n */\nexport enum ALERT_SOURCE {\n DATABASE = 'database',\n POOL = 'pool',\n REPLICA = 'replica',\n CACHE = 'cache',\n BACKUP = 'backup'\n}\n\n/**\n * Audit operation types\n */\nexport enum AUDIT_OPERATION {\n CREATE = 'CREATE',\n UPDATE = 'UPDATE',\n DELETE = 'DELETE'\n}\n\n/**\n * Database Adapter Types - Enum for adapter selection\n */\nexport enum ADAPTER_TYPES {\n DRIZZLE = 'drizzle',\n SUPABASE = 'supabase',\n SQL = 'sql'\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/db/dbEnums.ts","../../src/db/dbConstant.ts"],"names":["ADAPTERS","DATABASE_EVENT_TYPE","REPLICA_STRATEGY","DB_POOL_EVENTS","ALERT_SEVERITY","ALERT_SOURCE","AUDIT_OPERATION","ADAPTER_TYPES"],"mappings":"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","file":"index.js","sourcesContent":["/**\n * @fileoverview Database adapter type definitions\n *\n * Defines the enumeration of supported database adapter types used throughout\n * the database package. This enum provides type-safe identification of different\n * database integrations and is used in configuration, factory methods, and\n * adapter selection logic.\n *\n * **Application Flow Context:**\n * ```\n * Configuration → ADAPTERS Enum → AdapterFactory → Concrete Adapter\n * ↓ ↓ ↓ ↓\n * User Config → Type Safety → Adapter Creation → Database Connection\n * ```\n *\n * **Adapter Types:**\n * - **DRIZZLE**: Type-safe ORM with excellent TypeScript support\n * - **SUPABASE**: Hosted PostgreSQL with real-time capabilities\n * - **SQL**: Raw SQL execution for maximum control\n * - **DATABASE**: Generic fallback adapter\n *\n * @example\n * ```typescript\n * // Adapter selection in configuration\n * const config = {\n * adapter: ADAPTERS.DRIZZLE,\n * connectionString: process.env.DATABASE_URL\n * };\n *\n * // Type-safe adapter factory usage\n * const adapter = AdapterFactory.create(ADAPTERS.SUPABASE, supabaseConfig);\n *\n * // Switch statement with exhaustive checking\n * switch (config.adapter) {\n * case ADAPTERS.DRIZZLE:\n * // Handle Drizzle-specific logic\n * break;\n * case ADAPTERS.SUPABASE:\n * // Handle Supabase-specific logic\n * break;\n * case ADAPTERS.SQL:\n * // Handle SQL-specific logic\n * break;\n * default:\n * // TypeScript ensures all cases are handled\n * throw new Error(`Unsupported adapter: ${config.adapter}`);\n * }\n * ```\n *\n */\n/**\n * @enum ADAPTERS\n * @description\n * Enumeration of supported database adapter types.\n *\n * This enum provides type-safe identification of different database integrations\n * and is used throughout the package for configuration, factory methods, and\n * adapter selection. Each adapter type represents a different approach to\n * database connectivity and operations.\n *\n * **Adapter Characteristics:**\n * - **DATABASE**: Generic fallback, minimal functionality\n * - **DRIZZLE**: Full ORM with type safety and query building\n * - **SUPABASE**: Hosted solution with real-time and auth features\n * - **SQL**: Raw SQL for performance-critical applications\n *\n * @example\n * ```typescript\n * // Configuration with adapter selection\n * const configs = {\n * development: { adapter: ADAPTERS.DRIZZLE },\n * production: { adapter: ADAPTERS.SUPABASE },\n * performance: { adapter: ADAPTERS.SQL }\n * };\n *\n * // Type-safe adapter validation\n * function validateAdapter(adapter: ADAPTERS): boolean {\n * return Object.values(ADAPTERS).includes(adapter);\n * }\n * ```\n */\nexport enum ADAPTERS {\n /** Generic database adapter (default when no specific integration is set) */\n DATABASE = 'database',\n\n /** Drizzle ORM adapter (PostgreSQL, MySQL, SQLite, etc.) */\n DRIZZLE = 'drizzle',\n\n /** Supabase adapter (PostgreSQL backend with REST + Realtime APIs) */\n SUPABASE = 'supabase',\n\n /** Raw SQL adapter (direct database queries without ORM) */\n SQL = 'sql',\n}\n\n\n\n// Event type enum\nexport enum DATABASE_EVENT_TYPE {\n BeforeQuery = 'beforeQuery',\n AfterQuery = 'afterQuery',\n QueryError = 'queryError',\n BeforeTransaction = 'beforeTransaction',\n AfterTransaction = 'afterTransaction',\n TransactionRollback = 'transactionRollback',\n HealthChange = 'healthChange',\n}\n\n/**\n * Strategy options for replica selection.\n */\nexport enum REPLICA_STRATEGY {\n /** Always use primary database */\n PRIMARY = 'primary',\n /** Use any available replica */\n REPLICA = 'replica',\n /** Use geographically closest replica */\n CLOSEST = 'closest',\n /** Use fastest responding replica */\n FASTEST = 'fastest',\n}\n\n/**\n * Enum for pool event types.\n */\nexport enum DB_POOL_EVENTS {\n CONNECT = 'connect',\n ACQUIRE = 'acquire',\n RELEASE = 'release',\n REMOVE = 'remove',\n}\n\n/**\n * Alert severity levels\n */\nexport enum ALERT_SEVERITY {\n CRITICAL = 'critical',\n ERROR = 'error',\n WARNING = 'warning',\n INFO = 'info'\n}\n\n/**\n * Alert source types\n */\nexport enum ALERT_SOURCE {\n DATABASE = 'database',\n POOL = 'pool',\n REPLICA = 'replica',\n CACHE = 'cache',\n BACKUP = 'backup'\n}\n\n/**\n * Audit operation types\n */\nexport enum AUDIT_OPERATION {\n CREATE = 'CREATE',\n UPDATE = 'UPDATE',\n DELETE = 'DELETE'\n}\n\n/**\n * Database Adapter Types - Enum for adapter selection\n */\nexport enum ADAPTER_TYPES {\n DRIZZLE = 'drizzle',\n SUPABASE = 'supabase',\n SQL = 'sql'\n}\n","/**\n * Encryption Extension Constants\n * \n * Centralized constants for encryption configuration to prevent\n * hardcoded values and ensure consistency across the codebase.\n */\n\nexport const ENCRYPTION_DEFAULTS = {\n /** Default encryption algorithm - AES-256-GCM provides authenticated encryption */\n ALGORITHM: 'aes-256-gcm' as const,\n \n /** IV length for AES-256-GCM in bytes */\n IV_LENGTH: 16,\n \n /** Expected parts in encrypted text format (iv:authTag:encrypted) */\n ENCRYPTED_PARTS_COUNT: 3\n} as const;\n\n/**\n * Alert rule IDs\n */\nexport const ALERT_RULE_ID = {\n POOL_EXHAUSTION: 'pool-exhaustion',\n SLOW_QUERY: 'slow-query',\n REPLICA_LAG: 'replica-lag'\n} as const;\n"]}
|
package/dist/errors/codes.d.ts
CHANGED
|
@@ -185,6 +185,73 @@ export declare const ERROR_CODES: {
|
|
|
185
185
|
readonly DB_INVALID_BETWEEN_OPERATOR: "DB_INVALID_BETWEEN_OPERATOR";
|
|
186
186
|
readonly DB_INVALID_IN_OPERATOR: "DB_INVALID_IN_OPERATOR";
|
|
187
187
|
readonly DB_INVALID_COUNT: "DB_INVALID_COUNT";
|
|
188
|
+
readonly PAYMENT_REFUND_FAILED: "payment.refund.failed";
|
|
189
|
+
readonly PAYMENT_REFUND_NOT_FOUND: "payment.refund.not.found";
|
|
190
|
+
readonly PAYMENT_REFUND_ALREADY_PROCESSED: "payment.refund.already.processed";
|
|
191
|
+
readonly PAYMENT_REFUND_AMOUNT_INVALID: "payment.refund.amount.invalid";
|
|
192
|
+
readonly PAYMENT_REFUND_VALIDATION_FAILED: "payment.refund.validation.failed";
|
|
193
|
+
readonly PAYMENT_REFUND_TIMEOUT: "payment.refund.timeout";
|
|
194
|
+
readonly PAYMENT_PROVIDER_ERROR: "payment.provider.error";
|
|
195
|
+
readonly PAYMENT_PROVIDER_UNAVAILABLE: "payment.provider.unavailable";
|
|
196
|
+
readonly PAYMENT_PROVIDER_CONFIGURATION_INVALID: "payment.provider.configuration.invalid";
|
|
197
|
+
readonly PAYMENT_PROVIDER_RESPONSE_INVALID: "payment.provider.response.invalid";
|
|
198
|
+
readonly PAYMENT_PROVIDER_TIMEOUT: "payment.provider.timeout";
|
|
199
|
+
readonly PAYMENT_PROVIDER_AUTH_FAILED: "payment.provider.auth.failed";
|
|
200
|
+
readonly PAYMENT_COMPLIANCE_VIOLATION: "payment.compliance.violation";
|
|
201
|
+
readonly PAYMENT_COMPLIANCE_CHECK_FAILED: "payment.compliance.check.failed";
|
|
202
|
+
readonly PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: "payment.compliance.limit.exceeded";
|
|
203
|
+
readonly PAYMENT_COMPLIANCE_POLICY_MISSING: "payment.compliance.policy.missing";
|
|
204
|
+
readonly PAYMENT_PROCESSING_FAILED: "payment.processing.failed";
|
|
205
|
+
readonly PAYMENT_PROCESSING_TIMEOUT: "payment.processing.timeout";
|
|
206
|
+
readonly PAYMENT_PROCESSING_GATEWAY_ERROR: "payment.processing.gateway.error";
|
|
207
|
+
readonly PAYMENT_PROCESSING_DUPLICATE: "payment.processing.duplicate";
|
|
208
|
+
readonly PAYMENT_PROCESSING_UNEXPECTED_STATE: "payment.processing.unexpected.state";
|
|
209
|
+
readonly PAYMENT_SECURITY_VIOLATION: "payment.security.violation";
|
|
210
|
+
readonly PAYMENT_SECURITY_SIGNATURE_INVALID: "payment.security.signature.invalid";
|
|
211
|
+
readonly PAYMENT_SECURITY_ENCRYPTION_FAILED: "payment.security.encryption.failed";
|
|
212
|
+
readonly PAYMENT_SECURITY_FRAUD_DETECTED: "payment.security.fraud.detected";
|
|
213
|
+
readonly PAYMENT_SECURITY_TOKEN_INVALID: "payment.security.token.invalid";
|
|
214
|
+
readonly PAYMENT_VALIDATION_FAILED: "payment.validation.failed";
|
|
215
|
+
readonly PAYMENT_VALIDATION_AMOUNT_INVALID: "payment.validation.amount.invalid";
|
|
216
|
+
readonly PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED: "payment.validation.currency.unsupported";
|
|
217
|
+
readonly PAYMENT_VALIDATION_METADATA_INVALID: "payment.validation.metadata.invalid";
|
|
218
|
+
readonly PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD: "payment.validation.field.required";
|
|
219
|
+
readonly PAYMENT_WEBHOOK_SIGNATURE_INVALID: "payment.webhook.signature.invalid";
|
|
220
|
+
readonly PAYMENT_WEBHOOK_PROCESSING_FAILED: "payment.webhook.processing.failed";
|
|
221
|
+
readonly PAYMENT_WEBHOOK_VALIDATION_FAILED: "payment.webhook.validation.failed";
|
|
222
|
+
readonly PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED: "payment.webhook.event.type.unsupported";
|
|
223
|
+
readonly PAYMENT_WEBHOOK_HANDLER_NOT_FOUND: "payment.webhook.handler.not.found";
|
|
224
|
+
readonly PAYMENT_ADAPTER_INIT_FAILED: "payment.adapter.init.failed";
|
|
225
|
+
readonly PAYMENT_ADAPTER_SHUTDOWN_ERROR: "payment.adapter.shutdown.error";
|
|
226
|
+
readonly PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED: "payment.adapter.hmac.computation.failed";
|
|
227
|
+
readonly PAYMENT_ADAPTER_MISSING_PROVIDER: "payment.adapter.missing.provider";
|
|
228
|
+
readonly PAYMENT_ADAPTER_MISSING_ENVIRONMENT: "payment.adapter.missing.environment";
|
|
229
|
+
readonly PAYMENT_ADAPTER_MISSING_CREDENTIALS: "payment.adapter.missing.credentials";
|
|
230
|
+
readonly PAYMENT_ADAPTER_MISSING_WEBHOOK_URL: "payment.adapter.missing.webhook.url";
|
|
231
|
+
readonly PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT: "payment.adapter.missing.unregister.endpoint";
|
|
232
|
+
readonly PAYMENT_ADAPTER_UNSUPPORTED_OPERATION: "payment.adapter.unsupported.operation";
|
|
233
|
+
readonly PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED: "payment.adapter.response.mapping.failed";
|
|
234
|
+
readonly PAYMENT_IDEMPOTENCY_VIOLATION: "payment.idempotency.violation";
|
|
235
|
+
readonly PAYMENT_IDEMPOTENCY_KEY_MISSING: "payment.idempotency.key.missing";
|
|
236
|
+
readonly PAYMENT_IDEMPOTENCY_STORE_ERROR: "payment.idempotency.store.error";
|
|
237
|
+
readonly PAYMENT_ROUTING_FAILED: "payment.routing.failed";
|
|
238
|
+
readonly PAYMENT_ROUTING_CONFIGURATION_INVALID: "payment.routing.configuration.invalid";
|
|
239
|
+
readonly PAYMENT_ROUTING_PROVIDER_UNAVAILABLE: "payment.routing.provider.unavailable";
|
|
240
|
+
readonly PAYMENT_ROUTING_RETRY_EXCEEDED: "payment.routing.retry.exceeded";
|
|
241
|
+
readonly PAYMENT_SYSTEM_NOT_INITIALIZED: "payment.system.not.initialized";
|
|
242
|
+
readonly PAYMENT_CONTEXT_OPERATION_FAILED: "payment.context.operation.failed";
|
|
243
|
+
readonly PAYMENT_INTERNAL_ERROR: "payment.internal.error";
|
|
244
|
+
readonly PAYMENT_UNKNOWN_ERROR: "payment.unknown.error";
|
|
245
|
+
/**
|
|
246
|
+
* Thrown when an event could not be emitted due to internal state or creation errors.
|
|
247
|
+
* Typically non-retryable, indicates a logic or validation fault.
|
|
248
|
+
*/
|
|
249
|
+
readonly PAYMENT_EVENT_EMIT_FAILED: "PAYMENT_EVENT_EMIT_FAILED";
|
|
250
|
+
readonly PAYMENT_EVENT_INVALID_TYPE: "PAYMENT_EVENT_INVALID_TYPE";
|
|
251
|
+
readonly PAYMENT_EVENT_CREATION_FAILED: "PAYMENT_EVENT_CREATION_FAILED";
|
|
252
|
+
readonly PAYMENT_EVENT_HANDLER_TIMEOUT: "PAYMENT_EVENT_HANDLER_TIMEOUT";
|
|
253
|
+
readonly PAYMENT_EVENT_HANDLER_INVALID_RESULT: "PAYMENT_EVENT_HANDLER_INVALID_RESULT";
|
|
254
|
+
readonly PAYMENT_EVENT_LIFECYCLE_FAILURE: "PAYMENT_EVENT_LIFECYCLE_FAILURE";
|
|
188
255
|
};
|
|
189
256
|
/**
|
|
190
257
|
* Type for all error code values
|
|
@@ -305,8 +372,82 @@ export declare const NOTIFICATION_ERROR_CODES: {
|
|
|
305
372
|
readonly UNKNOWN_ERROR: "notification.unknown.error";
|
|
306
373
|
readonly INITIALIZATION_FAILED: "notification.initialization.failed";
|
|
307
374
|
};
|
|
375
|
+
/**
|
|
376
|
+
* PAYMENT-specific error codes
|
|
377
|
+
* Subset of ERROR_CODES for @plyaz/payments package
|
|
378
|
+
*/
|
|
379
|
+
export declare const PAYMENT_ERROR_CODES: {
|
|
380
|
+
readonly PAYMENT_REFUND_FAILED: "payment.refund.failed";
|
|
381
|
+
readonly PAYMENT_REFUND_NOT_FOUND: "payment.refund.not.found";
|
|
382
|
+
readonly PAYMENT_REFUND_ALREADY_PROCESSED: "payment.refund.already.processed";
|
|
383
|
+
readonly PAYMENT_REFUND_AMOUNT_INVALID: "payment.refund.amount.invalid";
|
|
384
|
+
readonly PAYMENT_REFUND_VALIDATION_FAILED: "payment.refund.validation.failed";
|
|
385
|
+
readonly PAYMENT_REFUND_TIMEOUT: "payment.refund.timeout";
|
|
386
|
+
readonly PAYMENT_PROVIDER_ERROR: "payment.provider.error";
|
|
387
|
+
readonly PAYMENT_PROVIDER_UNAVAILABLE: "payment.provider.unavailable";
|
|
388
|
+
readonly PAYMENT_PROVIDER_CONFIGURATION_INVALID: "payment.provider.configuration.invalid";
|
|
389
|
+
readonly PAYMENT_PROVIDER_RESPONSE_INVALID: "payment.provider.response.invalid";
|
|
390
|
+
readonly PAYMENT_PROVIDER_TIMEOUT: "payment.provider.timeout";
|
|
391
|
+
readonly PAYMENT_PROVIDER_AUTH_FAILED: "payment.provider.auth.failed";
|
|
392
|
+
readonly PAYMENT_COMPLIANCE_VIOLATION: "payment.compliance.violation";
|
|
393
|
+
readonly PAYMENT_COMPLIANCE_CHECK_FAILED: "payment.compliance.check.failed";
|
|
394
|
+
readonly PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: "payment.compliance.limit.exceeded";
|
|
395
|
+
readonly PAYMENT_COMPLIANCE_POLICY_MISSING: "payment.compliance.policy.missing";
|
|
396
|
+
readonly PAYMENT_PROCESSING_FAILED: "payment.processing.failed";
|
|
397
|
+
readonly PAYMENT_PROCESSING_TIMEOUT: "payment.processing.timeout";
|
|
398
|
+
readonly PAYMENT_PROCESSING_GATEWAY_ERROR: "payment.processing.gateway.error";
|
|
399
|
+
readonly PAYMENT_PROCESSING_DUPLICATE: "payment.processing.duplicate";
|
|
400
|
+
readonly PAYMENT_PROCESSING_UNEXPECTED_STATE: "payment.processing.unexpected.state";
|
|
401
|
+
readonly PAYMENT_SECURITY_VIOLATION: "payment.security.violation";
|
|
402
|
+
readonly PAYMENT_SECURITY_SIGNATURE_INVALID: "payment.security.signature.invalid";
|
|
403
|
+
readonly PAYMENT_SECURITY_ENCRYPTION_FAILED: "payment.security.encryption.failed";
|
|
404
|
+
readonly PAYMENT_SECURITY_FRAUD_DETECTED: "payment.security.fraud.detected";
|
|
405
|
+
readonly PAYMENT_SECURITY_TOKEN_INVALID: "payment.security.token.invalid";
|
|
406
|
+
readonly PAYMENT_VALIDATION_FAILED: "payment.validation.failed";
|
|
407
|
+
readonly PAYMENT_VALIDATION_AMOUNT_INVALID: "payment.validation.amount.invalid";
|
|
408
|
+
readonly PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED: "payment.validation.currency.unsupported";
|
|
409
|
+
readonly PAYMENT_VALIDATION_METADATA_INVALID: "payment.validation.metadata.invalid";
|
|
410
|
+
readonly PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD: "payment.validation.field.required";
|
|
411
|
+
readonly PAYMENT_WEBHOOK_SIGNATURE_INVALID: "payment.webhook.signature.invalid";
|
|
412
|
+
readonly PAYMENT_WEBHOOK_PROCESSING_FAILED: "payment.webhook.processing.failed";
|
|
413
|
+
readonly PAYMENT_WEBHOOK_VALIDATION_FAILED: "payment.webhook.validation.failed";
|
|
414
|
+
readonly PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED: "payment.webhook.event.type.unsupported";
|
|
415
|
+
readonly PAYMENT_WEBHOOK_HANDLER_NOT_FOUND: "payment.webhook.handler.not.found";
|
|
416
|
+
readonly PAYMENT_ADAPTER_INIT_FAILED: "payment.adapter.init.failed";
|
|
417
|
+
readonly PAYMENT_ADAPTER_SHUTDOWN_ERROR: "payment.adapter.shutdown.error";
|
|
418
|
+
readonly PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED: "payment.adapter.hmac.computation.failed";
|
|
419
|
+
readonly PAYMENT_ADAPTER_MISSING_PROVIDER: "payment.adapter.missing.provider";
|
|
420
|
+
readonly PAYMENT_ADAPTER_MISSING_ENVIRONMENT: "payment.adapter.missing.environment";
|
|
421
|
+
readonly PAYMENT_ADAPTER_MISSING_CREDENTIALS: "payment.adapter.missing.credentials";
|
|
422
|
+
readonly PAYMENT_ADAPTER_MISSING_WEBHOOK_URL: "payment.adapter.missing.webhook.url";
|
|
423
|
+
readonly PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT: "payment.adapter.missing.unregister.endpoint";
|
|
424
|
+
readonly PAYMENT_ADAPTER_UNSUPPORTED_OPERATION: "payment.adapter.unsupported.operation";
|
|
425
|
+
readonly PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED: "payment.adapter.response.mapping.failed";
|
|
426
|
+
readonly PAYMENT_IDEMPOTENCY_VIOLATION: "payment.idempotency.violation";
|
|
427
|
+
readonly PAYMENT_IDEMPOTENCY_KEY_MISSING: "payment.idempotency.key.missing";
|
|
428
|
+
readonly PAYMENT_IDEMPOTENCY_STORE_ERROR: "payment.idempotency.store.error";
|
|
429
|
+
readonly PAYMENT_ROUTING_FAILED: "payment.routing.failed";
|
|
430
|
+
readonly PAYMENT_ROUTING_CONFIGURATION_INVALID: "payment.routing.configuration.invalid";
|
|
431
|
+
readonly PAYMENT_ROUTING_PROVIDER_UNAVAILABLE: "payment.routing.provider.unavailable";
|
|
432
|
+
readonly PAYMENT_ROUTING_RETRY_EXCEEDED: "payment.routing.retry.exceeded";
|
|
433
|
+
readonly PAYMENT_SYSTEM_NOT_INITIALIZED: "payment.system.not.initialized";
|
|
434
|
+
readonly PAYMENT_CONTEXT_OPERATION_FAILED: "payment.context.operation.failed";
|
|
435
|
+
readonly PAYMENT_INTERNAL_ERROR: "payment.internal.error";
|
|
436
|
+
readonly PAYMENT_UNKNOWN_ERROR: "payment.unknown.error";
|
|
437
|
+
/**
|
|
438
|
+
* Thrown when an event could not be emitted due to internal state or creation errors.
|
|
439
|
+
* Typically non-retryable, indicates a logic or validation fault.
|
|
440
|
+
*/
|
|
441
|
+
readonly PAYMENT_EVENT_EMIT_FAILED: "PAYMENT_EVENT_EMIT_FAILED";
|
|
442
|
+
readonly PAYMENT_EVENT_INVALID_TYPE: "PAYMENT_EVENT_INVALID_TYPE";
|
|
443
|
+
readonly PAYMENT_EVENT_CREATION_FAILED: "PAYMENT_EVENT_CREATION_FAILED";
|
|
444
|
+
readonly PAYMENT_EVENT_HANDLER_TIMEOUT: "PAYMENT_EVENT_HANDLER_TIMEOUT";
|
|
445
|
+
readonly PAYMENT_EVENT_HANDLER_INVALID_RESULT: "PAYMENT_EVENT_HANDLER_INVALID_RESULT";
|
|
446
|
+
readonly PAYMENT_EVENT_LIFECYCLE_FAILURE: "PAYMENT_EVENT_LIFECYCLE_FAILURE";
|
|
447
|
+
};
|
|
308
448
|
export type ApiErrorCodeValue = (typeof API_ERROR_CODES)[keyof typeof API_ERROR_CODES] | `HTTP_${number}`;
|
|
309
449
|
export type NotificationErrorCodeValue = (typeof NOTIFICATION_ERROR_CODES)[keyof typeof NOTIFICATION_ERROR_CODES];
|
|
450
|
+
export type PaymentErrorCodeValue = (typeof PAYMENT_ERROR_CODES)[keyof typeof PAYMENT_ERROR_CODES];
|
|
310
451
|
/**
|
|
311
452
|
* Unified ERROR_DEFINITIONS
|
|
312
453
|
* Single source of truth for ALL error definitions across all @plyaz packages
|
package/dist/errors/enums.d.ts
CHANGED
|
@@ -107,6 +107,20 @@ export declare const ERROR_CATEGORY: {
|
|
|
107
107
|
readonly Template: "template";
|
|
108
108
|
/** Configuration-related error (e.g., invalid or missing configuration). */
|
|
109
109
|
readonly Configuration: "configuration";
|
|
110
|
+
/** Payment processing-related error (e.g., capture or settlement failure). */
|
|
111
|
+
readonly Processing: "processing";
|
|
112
|
+
/** Fraud detection or prevention failure. */
|
|
113
|
+
readonly Fraud: "fraud";
|
|
114
|
+
/** Compliance-related error (e.g., AML/KYC validation failure). */
|
|
115
|
+
readonly Compliance: "compliance";
|
|
116
|
+
/** Limits or quota-related error (e.g., exceeded transaction limit). */
|
|
117
|
+
readonly Limits: "limits";
|
|
118
|
+
/** System-level error (unexpected internal issue). */
|
|
119
|
+
readonly System: "system";
|
|
120
|
+
/** Refund-related error (e.g., duplicate or failed refund). */
|
|
121
|
+
readonly Refund: "refund";
|
|
122
|
+
/** Security-related error (e.g., encryption or signature failure). */
|
|
123
|
+
readonly Security: "security";
|
|
110
124
|
/** Unknown or unclassified error. */
|
|
111
125
|
readonly Unknown: "unknown";
|
|
112
126
|
};
|
|
@@ -189,6 +203,13 @@ export declare const ERROR_CATEGORY_TO_EMITTER_KEY: {
|
|
|
189
203
|
readonly webhook: "webhook";
|
|
190
204
|
readonly template: "template";
|
|
191
205
|
readonly configuration: "configuration";
|
|
206
|
+
readonly processing: "processing";
|
|
207
|
+
readonly fraud: "fraud";
|
|
208
|
+
readonly compliance: "compliance";
|
|
209
|
+
readonly limits: "limits";
|
|
210
|
+
readonly system: "system";
|
|
211
|
+
readonly refund: "refund";
|
|
212
|
+
readonly security: "security";
|
|
192
213
|
readonly unknown: "unknown";
|
|
193
214
|
};
|
|
194
215
|
/**
|