@firela/billclaw-core 0.1.5 → 0.2.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/LICENSE +21 -0
- package/dist/billclaw.d.ts +8 -0
- package/dist/billclaw.d.ts.map +1 -1
- package/dist/billclaw.js +51 -1
- package/dist/billclaw.js.map +1 -1
- package/dist/config/config-manager.d.ts +127 -0
- package/dist/config/config-manager.d.ts.map +1 -0
- package/dist/config/config-manager.js +304 -0
- package/dist/config/config-manager.js.map +1 -0
- package/dist/config/env-loader.d.ts +33 -0
- package/dist/config/env-loader.d.ts.map +1 -0
- package/dist/config/env-loader.js +115 -0
- package/dist/config/env-loader.js.map +1 -0
- package/dist/config/index.d.ts +14 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +14 -0
- package/dist/config/index.js.map +1 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/dist/models/config.d.ts +147 -0
- package/dist/models/config.d.ts.map +1 -1
- package/dist/models/config.js +36 -0
- package/dist/models/config.js.map +1 -1
- package/dist/oauth/index.d.ts +12 -0
- package/dist/oauth/index.d.ts.map +1 -0
- package/dist/oauth/index.js +13 -0
- package/dist/oauth/index.js.map +1 -0
- package/dist/oauth/providers/gmail.d.ts +63 -0
- package/dist/oauth/providers/gmail.d.ts.map +1 -0
- package/dist/oauth/providers/gmail.js +213 -0
- package/dist/oauth/providers/gmail.js.map +1 -0
- package/dist/oauth/providers/plaid.d.ts +40 -0
- package/dist/oauth/providers/plaid.d.ts.map +1 -0
- package/dist/oauth/providers/plaid.js +90 -0
- package/dist/oauth/providers/plaid.js.map +1 -0
- package/dist/oauth/types.d.ts +102 -0
- package/dist/oauth/types.d.ts.map +1 -0
- package/dist/oauth/types.js +10 -0
- package/dist/oauth/types.js.map +1 -0
- package/dist/runtime/types.d.ts +2 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/runtime/types.js.map +1 -1
- package/dist/storage/locking.d.ts +4 -0
- package/dist/storage/locking.d.ts.map +1 -1
- package/dist/storage/locking.js +4 -0
- package/dist/storage/locking.js.map +1 -1
- package/dist/test-fixtures.d.ts.map +1 -1
- package/dist/test-fixtures.js +5 -0
- package/dist/test-fixtures.js.map +1 -1
- package/dist/webhooks/deduplication.d.ts +117 -0
- package/dist/webhooks/deduplication.d.ts.map +1 -0
- package/dist/webhooks/deduplication.js +258 -0
- package/dist/webhooks/deduplication.js.map +1 -0
- package/dist/webhooks/handlers/gmail.d.ts +39 -0
- package/dist/webhooks/handlers/gmail.d.ts.map +1 -0
- package/dist/webhooks/handlers/gmail.js +56 -0
- package/dist/webhooks/handlers/gmail.js.map +1 -0
- package/dist/webhooks/handlers/gocardless.d.ts +39 -0
- package/dist/webhooks/handlers/gocardless.d.ts.map +1 -0
- package/dist/webhooks/handlers/gocardless.js +73 -0
- package/dist/webhooks/handlers/gocardless.js.map +1 -0
- package/dist/webhooks/handlers/index.d.ts +10 -0
- package/dist/webhooks/handlers/index.d.ts.map +1 -0
- package/dist/webhooks/handlers/index.js +10 -0
- package/dist/webhooks/handlers/index.js.map +1 -0
- package/dist/webhooks/handlers/plaid.d.ts +73 -0
- package/dist/webhooks/handlers/plaid.d.ts.map +1 -0
- package/dist/webhooks/handlers/plaid.js +169 -0
- package/dist/webhooks/handlers/plaid.js.map +1 -0
- package/dist/webhooks/index.d.ts +15 -0
- package/dist/webhooks/index.d.ts.map +1 -0
- package/dist/webhooks/index.js +17 -0
- package/dist/webhooks/index.js.map +1 -0
- package/dist/webhooks/processor.d.ts +76 -0
- package/dist/webhooks/processor.d.ts.map +1 -0
- package/dist/webhooks/processor.js +116 -0
- package/dist/webhooks/processor.js.map +1 -0
- package/dist/webhooks/router.d.ts +80 -0
- package/dist/webhooks/router.d.ts.map +1 -0
- package/dist/webhooks/router.js +107 -0
- package/dist/webhooks/router.js.map +1 -0
- package/dist/webhooks/security.d.ts +90 -0
- package/dist/webhooks/security.d.ts.map +1 -0
- package/dist/webhooks/security.js +138 -0
- package/dist/webhooks/security.js.map +1 -0
- package/dist/webhooks/sync-rate-limiter.d.ts +138 -0
- package/dist/webhooks/sync-rate-limiter.d.ts.map +1 -0
- package/dist/webhooks/sync-rate-limiter.js +228 -0
- package/dist/webhooks/sync-rate-limiter.js.map +1 -0
- package/dist/webhooks/types.d.ts +140 -0
- package/dist/webhooks/types.d.ts.map +1 -0
- package/dist/webhooks/types.js +18 -0
- package/dist/webhooks/types.js.map +1 -0
- package/package.json +12 -12
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment variable loader for BillClaw configuration
|
|
3
|
+
*
|
|
4
|
+
* Maps environment variables to configuration paths with type conversion.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Environment variable mapping to config paths
|
|
8
|
+
*
|
|
9
|
+
* Format: "ENV_VAR_NAME" -> "config.path.to.value"
|
|
10
|
+
*/
|
|
11
|
+
const ENV_MAPPINGS = {
|
|
12
|
+
// Connect service
|
|
13
|
+
PORT: "connect.port",
|
|
14
|
+
HOST: "connect.host",
|
|
15
|
+
PUBLIC_URL: "connect.publicUrl",
|
|
16
|
+
// TLS/SSL
|
|
17
|
+
TLS_ENABLED: "connect.tls.enabled",
|
|
18
|
+
TLS_KEY_PATH: "connect.tls.keyPath",
|
|
19
|
+
TLS_CERT_PATH: "connect.tls.certPath",
|
|
20
|
+
// Plaid
|
|
21
|
+
PLAID_CLIENT_ID: "plaid.clientId",
|
|
22
|
+
PLAID_SECRET: "plaid.secret",
|
|
23
|
+
PLAID_ENVIRONMENT: "plaid.environment",
|
|
24
|
+
// Gmail
|
|
25
|
+
GMAIL_CLIENT_ID: "gmail.clientId",
|
|
26
|
+
GMAIL_CLIENT_SECRET: "gmail.clientSecret",
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Type conversion for environment variable values
|
|
30
|
+
*/
|
|
31
|
+
function convertEnvValue(value, path) {
|
|
32
|
+
// Port number conversion
|
|
33
|
+
if (path.endsWith(".port")) {
|
|
34
|
+
const num = parseInt(value, 10);
|
|
35
|
+
if (isNaN(num)) {
|
|
36
|
+
throw new Error(`Invalid port number: ${value}`);
|
|
37
|
+
}
|
|
38
|
+
return num;
|
|
39
|
+
}
|
|
40
|
+
// Boolean conversion
|
|
41
|
+
if (value.toLowerCase() === "true")
|
|
42
|
+
return true;
|
|
43
|
+
if (value.toLowerCase() === "false")
|
|
44
|
+
return false;
|
|
45
|
+
// Number conversion
|
|
46
|
+
const num = Number(value);
|
|
47
|
+
if (!isNaN(num) && value !== "") {
|
|
48
|
+
return num;
|
|
49
|
+
}
|
|
50
|
+
// Default: string
|
|
51
|
+
return value;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Get configuration overrides from environment variables
|
|
55
|
+
*
|
|
56
|
+
* Returns a partial config object with values from environment variables.
|
|
57
|
+
* These values take precedence over config file values.
|
|
58
|
+
*/
|
|
59
|
+
export function loadEnvOverrides() {
|
|
60
|
+
const overrides = {};
|
|
61
|
+
for (const [envVar, configPath] of Object.entries(ENV_MAPPINGS)) {
|
|
62
|
+
const envValue = process.env[envVar];
|
|
63
|
+
if (envValue !== undefined) {
|
|
64
|
+
// Convert path like "connect.port" to nested object
|
|
65
|
+
const pathParts = configPath.split(".");
|
|
66
|
+
let current = overrides;
|
|
67
|
+
for (let i = 0; i < pathParts.length - 1; i++) {
|
|
68
|
+
const part = pathParts[i];
|
|
69
|
+
if (!(part in current)) {
|
|
70
|
+
current[part] = {};
|
|
71
|
+
}
|
|
72
|
+
current = current[part];
|
|
73
|
+
}
|
|
74
|
+
const lastPart = pathParts[pathParts.length - 1];
|
|
75
|
+
current[lastPart] = convertEnvValue(envValue, configPath);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return overrides;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Get a specific environment variable value with type conversion
|
|
82
|
+
*
|
|
83
|
+
* @param envVar - Environment variable name
|
|
84
|
+
* @param configPath - Config path for type inference
|
|
85
|
+
* @returns The converted value or undefined if not set
|
|
86
|
+
*/
|
|
87
|
+
export function getEnvValue(envVar, configPath) {
|
|
88
|
+
const envValue = process.env[envVar];
|
|
89
|
+
if (envValue === undefined) {
|
|
90
|
+
return undefined;
|
|
91
|
+
}
|
|
92
|
+
return convertEnvValue(envValue, configPath || envVar);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Check if any BillClaw-related environment variables are set
|
|
96
|
+
*
|
|
97
|
+
* Useful for determining if env var overrides are active.
|
|
98
|
+
*/
|
|
99
|
+
export function hasEnvOverrides() {
|
|
100
|
+
for (const envVar of Object.keys(ENV_MAPPINGS)) {
|
|
101
|
+
if (process.env[envVar] !== undefined) {
|
|
102
|
+
return true;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Get all environment variable mappings
|
|
109
|
+
*
|
|
110
|
+
* Returns the mapping of env var names to config paths.
|
|
111
|
+
*/
|
|
112
|
+
export function getEnvMappings() {
|
|
113
|
+
return { ...ENV_MAPPINGS };
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=env-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-loader.js","sourceRoot":"","sources":["../../src/config/env-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration management module
|
|
3
|
+
*
|
|
4
|
+
* Provides unified configuration management for BillClaw with:
|
|
5
|
+
* - Singleton ConfigManager
|
|
6
|
+
* - Environment variable overrides
|
|
7
|
+
* - File locking for concurrent access
|
|
8
|
+
* - Hybrid caching (TTL + mtime validation)
|
|
9
|
+
*
|
|
10
|
+
* @packageDocumentation
|
|
11
|
+
*/
|
|
12
|
+
export { ConfigManager, type ConfigManagerOptions, } from "./config-manager.js";
|
|
13
|
+
export { loadEnvOverrides, getEnvValue, hasEnvOverrides, getEnvMappings, } from "./env-loader.js";
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,aAAa,EACb,KAAK,oBAAoB,GAC1B,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,cAAc,GACf,MAAM,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration management module
|
|
3
|
+
*
|
|
4
|
+
* Provides unified configuration management for BillClaw with:
|
|
5
|
+
* - Singleton ConfigManager
|
|
6
|
+
* - Environment variable overrides
|
|
7
|
+
* - File locking for concurrent access
|
|
8
|
+
* - Hybrid caching (TTL + mtime validation)
|
|
9
|
+
*
|
|
10
|
+
* @packageDocumentation
|
|
11
|
+
*/
|
|
12
|
+
export { ConfigManager, } from "./config-manager.js";
|
|
13
|
+
export { loadEnvOverrides, getEnvValue, hasEnvOverrides, getEnvMappings, } from "./env-loader.js";
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,aAAa,GAEd,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,cAAc,GACf,MAAM,iBAAiB,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @packageDocumentation
|
|
8
8
|
*/
|
|
9
|
-
export { Billclaw } from "./billclaw.js";
|
|
9
|
+
export { Billclaw, isTokenExpired } from "./billclaw.js";
|
|
10
10
|
export * from "./models/index.js";
|
|
11
11
|
export * from "./storage/index.js";
|
|
12
12
|
export * from "./sync/index.js";
|
|
@@ -17,7 +17,10 @@ export { exportToLedger, exportStorageToLedger, transactionToLedger, getLedgerAc
|
|
|
17
17
|
export * from "./errors/index.js";
|
|
18
18
|
export * from "./credentials/index.js";
|
|
19
19
|
export * from "./security/index.js";
|
|
20
|
+
export * from "./oauth/index.js";
|
|
20
21
|
export * from "./runtime/index.js";
|
|
22
|
+
export * from "./config/index.js";
|
|
21
23
|
export * from "./services/index.js";
|
|
24
|
+
export * from "./webhooks/index.js";
|
|
22
25
|
export declare const VERSION: "0.0.1";
|
|
23
26
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAGxD,cAAc,mBAAmB,CAAA;AAGjC,cAAc,oBAAoB,CAAA;AAGlC,cAAc,iBAAiB,CAAA;AAG/B,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,eAAe,GACrB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,sBAAsB,EACtB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,eAAe,GACrB,MAAM,gCAAgC,CAAA;AAGvC,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EACtB,2BAA2B,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,mBAAmB,GACzB,MAAM,uBAAuB,CAAA;AAG9B,cAAc,mBAAmB,CAAA;AAGjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AAGnC,cAAc,kBAAkB,CAAA;AAGhC,cAAc,oBAAoB,CAAA;AAGlC,cAAc,mBAAmB,CAAA;AAGjC,cAAc,qBAAqB,CAAA;AAGnC,cAAc,qBAAqB,CAAA;AAGnC,eAAO,MAAM,OAAO,EAAG,OAAgB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @packageDocumentation
|
|
8
8
|
*/
|
|
9
9
|
// Main class
|
|
10
|
-
export { Billclaw } from "./billclaw.js";
|
|
10
|
+
export { Billclaw, isTokenExpired } from "./billclaw.js";
|
|
11
11
|
// Models and schemas
|
|
12
12
|
export * from "./models/index.js";
|
|
13
13
|
// Storage
|
|
@@ -25,10 +25,16 @@ export * from "./errors/index.js";
|
|
|
25
25
|
// Credentials & Security
|
|
26
26
|
export * from "./credentials/index.js";
|
|
27
27
|
export * from "./security/index.js";
|
|
28
|
+
// OAuth (framework-agnostic)
|
|
29
|
+
export * from "./oauth/index.js";
|
|
28
30
|
// Runtime abstractions
|
|
29
31
|
export * from "./runtime/index.js";
|
|
32
|
+
// Configuration management
|
|
33
|
+
export * from "./config/index.js";
|
|
30
34
|
// Services (event emission, webhooks)
|
|
31
35
|
export * from "./services/index.js";
|
|
36
|
+
// Webhooks (inbound webhook processing)
|
|
37
|
+
export * from "./webhooks/index.js";
|
|
32
38
|
// Version
|
|
33
39
|
export const VERSION = "0.0.1";
|
|
34
40
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,aAAa;AACb,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,aAAa;AACb,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAExD,qBAAqB;AACrB,cAAc,mBAAmB,CAAA;AAEjC,UAAU;AACV,cAAc,oBAAoB,CAAA;AAElC,OAAO;AACP,cAAc,iBAAiB,CAAA;AAE/B,2DAA2D;AAC3D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,GAInB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,sBAAsB,GAOvB,MAAM,gCAAgC,CAAA;AAEvC,YAAY;AACZ,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EACtB,2BAA2B,GAE5B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,GAEzB,MAAM,uBAAuB,CAAA;AAE9B,SAAS;AACT,cAAc,mBAAmB,CAAA;AAEjC,yBAAyB;AACzB,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AAEnC,6BAA6B;AAC7B,cAAc,kBAAkB,CAAA;AAEhC,uBAAuB;AACvB,cAAc,oBAAoB,CAAA;AAElC,2BAA2B;AAC3B,cAAc,mBAAmB,CAAA;AAEjC,sCAAsC;AACtC,cAAc,qBAAqB,CAAA;AAEnC,wCAAwC;AACxC,cAAc,qBAAqB,CAAA;AAEnC,UAAU;AACV,MAAM,CAAC,MAAM,OAAO,GAAG,OAAgB,CAAA"}
|
package/dist/models/config.d.ts
CHANGED
|
@@ -41,6 +41,9 @@ export declare const AccountConfigSchema: z.ZodObject<{
|
|
|
41
41
|
gocardlessRequisitionId: z.ZodOptional<z.ZodString>;
|
|
42
42
|
gocardlessAccessToken: z.ZodOptional<z.ZodString>;
|
|
43
43
|
gmailEmailAddress: z.ZodOptional<z.ZodString>;
|
|
44
|
+
gmailAccessToken: z.ZodOptional<z.ZodString>;
|
|
45
|
+
gmailRefreshToken: z.ZodOptional<z.ZodString>;
|
|
46
|
+
gmailTokenExpiry: z.ZodOptional<z.ZodString>;
|
|
44
47
|
gmailFilters: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
45
48
|
}, "strip", z.ZodTypeAny, {
|
|
46
49
|
type: "plaid" | "gocardless" | "gmail";
|
|
@@ -55,6 +58,9 @@ export declare const AccountConfigSchema: z.ZodObject<{
|
|
|
55
58
|
gocardlessRequisitionId?: string | undefined;
|
|
56
59
|
gocardlessAccessToken?: string | undefined;
|
|
57
60
|
gmailEmailAddress?: string | undefined;
|
|
61
|
+
gmailAccessToken?: string | undefined;
|
|
62
|
+
gmailRefreshToken?: string | undefined;
|
|
63
|
+
gmailTokenExpiry?: string | undefined;
|
|
58
64
|
gmailFilters?: string[] | undefined;
|
|
59
65
|
}, {
|
|
60
66
|
type: "plaid" | "gocardless" | "gmail";
|
|
@@ -69,6 +75,9 @@ export declare const AccountConfigSchema: z.ZodObject<{
|
|
|
69
75
|
gocardlessRequisitionId?: string | undefined;
|
|
70
76
|
gocardlessAccessToken?: string | undefined;
|
|
71
77
|
gmailEmailAddress?: string | undefined;
|
|
78
|
+
gmailAccessToken?: string | undefined;
|
|
79
|
+
gmailRefreshToken?: string | undefined;
|
|
80
|
+
gmailTokenExpiry?: string | undefined;
|
|
72
81
|
gmailFilters?: string[] | undefined;
|
|
73
82
|
}>;
|
|
74
83
|
export type AccountConfig = z.infer<typeof AccountConfigSchema>;
|
|
@@ -219,6 +228,58 @@ export declare const GmailConfigSchema: z.ZodObject<{
|
|
|
219
228
|
billTypePatterns?: Record<string, string[]> | undefined;
|
|
220
229
|
}>;
|
|
221
230
|
export type GmailConfig = z.infer<typeof GmailConfigSchema>;
|
|
231
|
+
/**
|
|
232
|
+
* Connect service configuration
|
|
233
|
+
*/
|
|
234
|
+
export declare const ConnectConfigSchema: z.ZodObject<{
|
|
235
|
+
port: z.ZodDefault<z.ZodNumber>;
|
|
236
|
+
host: z.ZodDefault<z.ZodString>;
|
|
237
|
+
/**
|
|
238
|
+
* Public URL for external access (required for production OAuth callbacks)
|
|
239
|
+
*
|
|
240
|
+
* Examples:
|
|
241
|
+
* - https://billclaw.yourdomain.com
|
|
242
|
+
* - https://abc123.ngrok.io (for tunneling)
|
|
243
|
+
*
|
|
244
|
+
* If not set, defaults to http://localhost:{port} for local development.
|
|
245
|
+
*/
|
|
246
|
+
publicUrl: z.ZodOptional<z.ZodString>;
|
|
247
|
+
/**
|
|
248
|
+
* TLS/SSL configuration for HTTPS support
|
|
249
|
+
*/
|
|
250
|
+
tls: z.ZodOptional<z.ZodDefault<z.ZodObject<{
|
|
251
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
252
|
+
keyPath: z.ZodOptional<z.ZodString>;
|
|
253
|
+
certPath: z.ZodOptional<z.ZodString>;
|
|
254
|
+
}, "strip", z.ZodTypeAny, {
|
|
255
|
+
enabled: boolean;
|
|
256
|
+
keyPath?: string | undefined;
|
|
257
|
+
certPath?: string | undefined;
|
|
258
|
+
}, {
|
|
259
|
+
enabled?: boolean | undefined;
|
|
260
|
+
keyPath?: string | undefined;
|
|
261
|
+
certPath?: string | undefined;
|
|
262
|
+
}>>>;
|
|
263
|
+
}, "strip", z.ZodTypeAny, {
|
|
264
|
+
port: number;
|
|
265
|
+
host: string;
|
|
266
|
+
publicUrl?: string | undefined;
|
|
267
|
+
tls?: {
|
|
268
|
+
enabled: boolean;
|
|
269
|
+
keyPath?: string | undefined;
|
|
270
|
+
certPath?: string | undefined;
|
|
271
|
+
} | undefined;
|
|
272
|
+
}, {
|
|
273
|
+
port?: number | undefined;
|
|
274
|
+
host?: string | undefined;
|
|
275
|
+
publicUrl?: string | undefined;
|
|
276
|
+
tls?: {
|
|
277
|
+
enabled?: boolean | undefined;
|
|
278
|
+
keyPath?: string | undefined;
|
|
279
|
+
certPath?: string | undefined;
|
|
280
|
+
} | undefined;
|
|
281
|
+
}>;
|
|
282
|
+
export type ConnectConfig = z.infer<typeof ConnectConfigSchema>;
|
|
222
283
|
/**
|
|
223
284
|
* Sync configuration
|
|
224
285
|
*/
|
|
@@ -240,6 +301,7 @@ export type SyncConfig = z.infer<typeof SyncConfigSchema>;
|
|
|
240
301
|
* Main BillClaw configuration schema
|
|
241
302
|
*/
|
|
242
303
|
export declare const BillclawConfigSchema: z.ZodObject<{
|
|
304
|
+
version: z.ZodDefault<z.ZodNumber>;
|
|
243
305
|
accounts: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
244
306
|
id: z.ZodString;
|
|
245
307
|
type: z.ZodEnum<["plaid", "gocardless", "gmail"]>;
|
|
@@ -253,6 +315,9 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
253
315
|
gocardlessRequisitionId: z.ZodOptional<z.ZodString>;
|
|
254
316
|
gocardlessAccessToken: z.ZodOptional<z.ZodString>;
|
|
255
317
|
gmailEmailAddress: z.ZodOptional<z.ZodString>;
|
|
318
|
+
gmailAccessToken: z.ZodOptional<z.ZodString>;
|
|
319
|
+
gmailRefreshToken: z.ZodOptional<z.ZodString>;
|
|
320
|
+
gmailTokenExpiry: z.ZodOptional<z.ZodString>;
|
|
256
321
|
gmailFilters: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
257
322
|
}, "strip", z.ZodTypeAny, {
|
|
258
323
|
type: "plaid" | "gocardless" | "gmail";
|
|
@@ -267,6 +332,9 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
267
332
|
gocardlessRequisitionId?: string | undefined;
|
|
268
333
|
gocardlessAccessToken?: string | undefined;
|
|
269
334
|
gmailEmailAddress?: string | undefined;
|
|
335
|
+
gmailAccessToken?: string | undefined;
|
|
336
|
+
gmailRefreshToken?: string | undefined;
|
|
337
|
+
gmailTokenExpiry?: string | undefined;
|
|
270
338
|
gmailFilters?: string[] | undefined;
|
|
271
339
|
}, {
|
|
272
340
|
type: "plaid" | "gocardless" | "gmail";
|
|
@@ -281,6 +349,9 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
281
349
|
gocardlessRequisitionId?: string | undefined;
|
|
282
350
|
gocardlessAccessToken?: string | undefined;
|
|
283
351
|
gmailEmailAddress?: string | undefined;
|
|
352
|
+
gmailAccessToken?: string | undefined;
|
|
353
|
+
gmailRefreshToken?: string | undefined;
|
|
354
|
+
gmailTokenExpiry?: string | undefined;
|
|
284
355
|
gmailFilters?: string[] | undefined;
|
|
285
356
|
}>, "many">>;
|
|
286
357
|
webhooks: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
@@ -423,6 +494,54 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
423
494
|
requireDate?: boolean | undefined;
|
|
424
495
|
billTypePatterns?: Record<string, string[]> | undefined;
|
|
425
496
|
}>>;
|
|
497
|
+
connect: z.ZodDefault<z.ZodObject<{
|
|
498
|
+
port: z.ZodDefault<z.ZodNumber>;
|
|
499
|
+
host: z.ZodDefault<z.ZodString>;
|
|
500
|
+
/**
|
|
501
|
+
* Public URL for external access (required for production OAuth callbacks)
|
|
502
|
+
*
|
|
503
|
+
* Examples:
|
|
504
|
+
* - https://billclaw.yourdomain.com
|
|
505
|
+
* - https://abc123.ngrok.io (for tunneling)
|
|
506
|
+
*
|
|
507
|
+
* If not set, defaults to http://localhost:{port} for local development.
|
|
508
|
+
*/
|
|
509
|
+
publicUrl: z.ZodOptional<z.ZodString>;
|
|
510
|
+
/**
|
|
511
|
+
* TLS/SSL configuration for HTTPS support
|
|
512
|
+
*/
|
|
513
|
+
tls: z.ZodOptional<z.ZodDefault<z.ZodObject<{
|
|
514
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
515
|
+
keyPath: z.ZodOptional<z.ZodString>;
|
|
516
|
+
certPath: z.ZodOptional<z.ZodString>;
|
|
517
|
+
}, "strip", z.ZodTypeAny, {
|
|
518
|
+
enabled: boolean;
|
|
519
|
+
keyPath?: string | undefined;
|
|
520
|
+
certPath?: string | undefined;
|
|
521
|
+
}, {
|
|
522
|
+
enabled?: boolean | undefined;
|
|
523
|
+
keyPath?: string | undefined;
|
|
524
|
+
certPath?: string | undefined;
|
|
525
|
+
}>>>;
|
|
526
|
+
}, "strip", z.ZodTypeAny, {
|
|
527
|
+
port: number;
|
|
528
|
+
host: string;
|
|
529
|
+
publicUrl?: string | undefined;
|
|
530
|
+
tls?: {
|
|
531
|
+
enabled: boolean;
|
|
532
|
+
keyPath?: string | undefined;
|
|
533
|
+
certPath?: string | undefined;
|
|
534
|
+
} | undefined;
|
|
535
|
+
}, {
|
|
536
|
+
port?: number | undefined;
|
|
537
|
+
host?: string | undefined;
|
|
538
|
+
publicUrl?: string | undefined;
|
|
539
|
+
tls?: {
|
|
540
|
+
enabled?: boolean | undefined;
|
|
541
|
+
keyPath?: string | undefined;
|
|
542
|
+
certPath?: string | undefined;
|
|
543
|
+
} | undefined;
|
|
544
|
+
}>>;
|
|
426
545
|
}, "strip", z.ZodTypeAny, {
|
|
427
546
|
plaid: {
|
|
428
547
|
environment: "sandbox" | "development" | "production";
|
|
@@ -430,6 +549,7 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
430
549
|
clientId?: string | undefined;
|
|
431
550
|
webhookUrl?: string | undefined;
|
|
432
551
|
};
|
|
552
|
+
version: number;
|
|
433
553
|
accounts: {
|
|
434
554
|
type: "plaid" | "gocardless" | "gmail";
|
|
435
555
|
id: string;
|
|
@@ -443,6 +563,9 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
443
563
|
gocardlessRequisitionId?: string | undefined;
|
|
444
564
|
gocardlessAccessToken?: string | undefined;
|
|
445
565
|
gmailEmailAddress?: string | undefined;
|
|
566
|
+
gmailAccessToken?: string | undefined;
|
|
567
|
+
gmailRefreshToken?: string | undefined;
|
|
568
|
+
gmailTokenExpiry?: string | undefined;
|
|
446
569
|
gmailFilters?: string[] | undefined;
|
|
447
570
|
}[];
|
|
448
571
|
webhooks: {
|
|
@@ -469,6 +592,16 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
469
592
|
defaultFrequency: "realtime" | "hourly" | "daily" | "weekly" | "manual";
|
|
470
593
|
retryOnFailure: boolean;
|
|
471
594
|
};
|
|
595
|
+
connect: {
|
|
596
|
+
port: number;
|
|
597
|
+
host: string;
|
|
598
|
+
publicUrl?: string | undefined;
|
|
599
|
+
tls?: {
|
|
600
|
+
enabled: boolean;
|
|
601
|
+
keyPath?: string | undefined;
|
|
602
|
+
certPath?: string | undefined;
|
|
603
|
+
} | undefined;
|
|
604
|
+
};
|
|
472
605
|
gocardless?: {
|
|
473
606
|
environment: "sandbox" | "live";
|
|
474
607
|
accessToken?: string | undefined;
|
|
@@ -508,6 +641,7 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
508
641
|
requireDate?: boolean | undefined;
|
|
509
642
|
billTypePatterns?: Record<string, string[]> | undefined;
|
|
510
643
|
} | undefined;
|
|
644
|
+
version?: number | undefined;
|
|
511
645
|
accounts?: {
|
|
512
646
|
type: "plaid" | "gocardless" | "gmail";
|
|
513
647
|
id: string;
|
|
@@ -521,6 +655,9 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
521
655
|
gocardlessRequisitionId?: string | undefined;
|
|
522
656
|
gocardlessAccessToken?: string | undefined;
|
|
523
657
|
gmailEmailAddress?: string | undefined;
|
|
658
|
+
gmailAccessToken?: string | undefined;
|
|
659
|
+
gmailRefreshToken?: string | undefined;
|
|
660
|
+
gmailTokenExpiry?: string | undefined;
|
|
524
661
|
gmailFilters?: string[] | undefined;
|
|
525
662
|
}[] | undefined;
|
|
526
663
|
webhooks?: {
|
|
@@ -547,6 +684,16 @@ export declare const BillclawConfigSchema: z.ZodObject<{
|
|
|
547
684
|
defaultFrequency?: "realtime" | "hourly" | "daily" | "weekly" | "manual" | undefined;
|
|
548
685
|
retryOnFailure?: boolean | undefined;
|
|
549
686
|
} | undefined;
|
|
687
|
+
connect?: {
|
|
688
|
+
port?: number | undefined;
|
|
689
|
+
host?: string | undefined;
|
|
690
|
+
publicUrl?: string | undefined;
|
|
691
|
+
tls?: {
|
|
692
|
+
enabled?: boolean | undefined;
|
|
693
|
+
keyPath?: string | undefined;
|
|
694
|
+
certPath?: string | undefined;
|
|
695
|
+
} | undefined;
|
|
696
|
+
} | undefined;
|
|
550
697
|
}>;
|
|
551
698
|
export type BillclawConfig = z.infer<typeof BillclawConfigSchema>;
|
|
552
699
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/models/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB;;GAEG;AACH,eAAO,MAAM,iBAAiB,6CAA2C,CAAA;AACzE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D;;GAEG;AACH,eAAO,MAAM,mBAAmB,gEAM9B,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D;;GAEG;AACH,eAAO,MAAM,sBAAsB,qDAIjC,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE;;GAEG;AACH,eAAO,MAAM,sBAAsB,6MAWjC,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE;;GAEG;AACH,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/models/config.ts"],"names":[],"mappings":"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"}
|
package/dist/models/config.js
CHANGED
|
@@ -61,6 +61,9 @@ export const AccountConfigSchema = z.object({
|
|
|
61
61
|
gocardlessAccessToken: z.string().optional(),
|
|
62
62
|
// Gmail-specific
|
|
63
63
|
gmailEmailAddress: z.string().email().optional(),
|
|
64
|
+
gmailAccessToken: z.string().optional(),
|
|
65
|
+
gmailRefreshToken: z.string().optional(),
|
|
66
|
+
gmailTokenExpiry: z.string().optional(), // ISO timestamp
|
|
64
67
|
gmailFilters: z.array(z.string()).optional(),
|
|
65
68
|
});
|
|
66
69
|
/**
|
|
@@ -135,6 +138,34 @@ export const GmailConfigSchema = z.object({
|
|
|
135
138
|
// Custom bill type patterns
|
|
136
139
|
billTypePatterns: z.record(z.array(z.string())).optional(),
|
|
137
140
|
});
|
|
141
|
+
/**
|
|
142
|
+
* Connect service configuration
|
|
143
|
+
*/
|
|
144
|
+
export const ConnectConfigSchema = z.object({
|
|
145
|
+
port: z.number().int().min(1).max(65535).default(4456),
|
|
146
|
+
host: z.string().default("localhost"),
|
|
147
|
+
/**
|
|
148
|
+
* Public URL for external access (required for production OAuth callbacks)
|
|
149
|
+
*
|
|
150
|
+
* Examples:
|
|
151
|
+
* - https://billclaw.yourdomain.com
|
|
152
|
+
* - https://abc123.ngrok.io (for tunneling)
|
|
153
|
+
*
|
|
154
|
+
* If not set, defaults to http://localhost:{port} for local development.
|
|
155
|
+
*/
|
|
156
|
+
publicUrl: z.string().url().optional(),
|
|
157
|
+
/**
|
|
158
|
+
* TLS/SSL configuration for HTTPS support
|
|
159
|
+
*/
|
|
160
|
+
tls: z
|
|
161
|
+
.object({
|
|
162
|
+
enabled: z.boolean().default(false),
|
|
163
|
+
keyPath: z.string().optional(),
|
|
164
|
+
certPath: z.string().optional(),
|
|
165
|
+
})
|
|
166
|
+
.default({ enabled: false })
|
|
167
|
+
.optional(),
|
|
168
|
+
});
|
|
138
169
|
/**
|
|
139
170
|
* Sync configuration
|
|
140
171
|
*/
|
|
@@ -147,6 +178,7 @@ export const SyncConfigSchema = z.object({
|
|
|
147
178
|
* Main BillClaw configuration schema
|
|
148
179
|
*/
|
|
149
180
|
export const BillclawConfigSchema = z.object({
|
|
181
|
+
version: z.number().default(1),
|
|
150
182
|
accounts: z.array(AccountConfigSchema).default([]),
|
|
151
183
|
webhooks: z.array(WebhookConfigSchema).default([]),
|
|
152
184
|
storage: StorageConfigSchema.default({
|
|
@@ -164,5 +196,9 @@ export const BillclawConfigSchema = z.object({
|
|
|
164
196
|
}),
|
|
165
197
|
gocardless: GoCardlessConfigSchema.optional(),
|
|
166
198
|
gmail: GmailConfigSchema.optional(),
|
|
199
|
+
connect: ConnectConfigSchema.default({
|
|
200
|
+
port: 4456,
|
|
201
|
+
host: "localhost",
|
|
202
|
+
}),
|
|
167
203
|
});
|
|
168
204
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/models/config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/models/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Framework-agnostic OAuth module
|
|
3
|
+
*
|
|
4
|
+
* This module provides OAuth handlers for various financial data providers.
|
|
5
|
+
* All handlers are independent of any specific runtime framework.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
export type { PlaidConfig, GmailOAuthConfig, OAuthConfig, PlaidLinkTokenResult, PlaidTokenExchangeResult, PlaidOAuthResult, GmailAuthUrlResult, GmailTokenResult, GmailOAuthResult, OAuthContext, OAuthHandlerOptions, } from "./types.js";
|
|
10
|
+
export { createLinkToken, exchangePublicToken, plaidOAuthHandler, } from "./providers/plaid.js";
|
|
11
|
+
export { cleanupExpiredStates, generateAuthorizationUrl, exchangeCodeForToken, gmailOAuthHandler, refreshGmailToken, } from "./providers/gmail.js";
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/oauth/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,YAAY,EACV,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,GACpB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,sBAAsB,CAAA;AAG7B,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,sBAAsB,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Framework-agnostic OAuth module
|
|
3
|
+
*
|
|
4
|
+
* This module provides OAuth handlers for various financial data providers.
|
|
5
|
+
* All handlers are independent of any specific runtime framework.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
// Plaid
|
|
10
|
+
export { createLinkToken, exchangePublicToken, plaidOAuthHandler, } from "./providers/plaid.js";
|
|
11
|
+
// Gmail
|
|
12
|
+
export { cleanupExpiredStates, generateAuthorizationUrl, exchangeCodeForToken, gmailOAuthHandler, refreshGmailToken, } from "./providers/gmail.js";
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/oauth/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAiBH,QAAQ;AACR,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,sBAAsB,CAAA;AAE7B,QAAQ;AACR,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,sBAAsB,CAAA"}
|