@voyantjs/utils 0.1.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 +109 -0
- package/README.md +42 -0
- package/dist/accounting-countries.d.ts +12 -0
- package/dist/accounting-countries.d.ts.map +1 -0
- package/dist/accounting-countries.js +307 -0
- package/dist/accounting-countries.js.map +1 -0
- package/dist/accounting-regions.d.ts +103 -0
- package/dist/accounting-regions.d.ts.map +1 -0
- package/dist/accounting-regions.js +38 -0
- package/dist/accounting-regions.js.map +1 -0
- package/dist/airlines.d.ts +960 -0
- package/dist/airlines.d.ts.map +1 -0
- package/dist/airlines.js +989 -0
- package/dist/airlines.js.map +1 -0
- package/dist/analytics/api-key-events.d.ts +89 -0
- package/dist/analytics/api-key-events.d.ts.map +1 -0
- package/dist/analytics/api-key-events.js +99 -0
- package/dist/analytics/api-key-events.js.map +1 -0
- package/dist/api-keys-client.d.ts +40 -0
- package/dist/api-keys-client.d.ts.map +1 -0
- package/dist/api-keys-client.js +63 -0
- package/dist/api-keys-client.js.map +1 -0
- package/dist/api-keys.d.ts +48 -0
- package/dist/api-keys.d.ts.map +1 -0
- package/dist/api-keys.js +108 -0
- package/dist/api-keys.js.map +1 -0
- package/dist/cache.d.ts +123 -0
- package/dist/cache.d.ts.map +1 -0
- package/dist/cache.js +182 -0
- package/dist/cache.js.map +1 -0
- package/dist/checkout-signature.d.ts +15 -0
- package/dist/checkout-signature.d.ts.map +1 -0
- package/dist/checkout-signature.js +64 -0
- package/dist/checkout-signature.js.map +1 -0
- package/dist/conditions.d.ts +36 -0
- package/dist/conditions.d.ts.map +1 -0
- package/dist/conditions.js +396 -0
- package/dist/conditions.js.map +1 -0
- package/dist/countries.d.ts +5 -0
- package/dist/countries.d.ts.map +1 -0
- package/dist/countries.js +251 -0
- package/dist/countries.js.map +1 -0
- package/dist/currencies.d.ts +1011 -0
- package/dist/currencies.d.ts.map +1 -0
- package/dist/currencies.js +1011 -0
- package/dist/currencies.js.map +1 -0
- package/dist/email/send.d.ts +20 -0
- package/dist/email/send.d.ts.map +1 -0
- package/dist/email/send.js +53 -0
- package/dist/email/send.js.map +1 -0
- package/dist/form-runtime.d.ts +38 -0
- package/dist/form-runtime.d.ts.map +1 -0
- package/dist/form-runtime.js +174 -0
- package/dist/form-runtime.js.map +1 -0
- package/dist/gcs/storage.d.ts +23 -0
- package/dist/gcs/storage.d.ts.map +1 -0
- package/dist/gcs/storage.js +25 -0
- package/dist/gcs/storage.js.map +1 -0
- package/dist/geo.d.ts +85 -0
- package/dist/geo.d.ts.map +1 -0
- package/dist/geo.js +141 -0
- package/dist/geo.js.map +1 -0
- package/dist/geographic-regions.d.ts +66 -0
- package/dist/geographic-regions.d.ts.map +1 -0
- package/dist/geographic-regions.js +326 -0
- package/dist/geographic-regions.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/kms-aws.d.ts +26 -0
- package/dist/kms-aws.d.ts.map +1 -0
- package/dist/kms-aws.js +133 -0
- package/dist/kms-aws.js.map +1 -0
- package/dist/kms-crypto.d.ts +20 -0
- package/dist/kms-crypto.d.ts.map +1 -0
- package/dist/kms-crypto.js +108 -0
- package/dist/kms-crypto.js.map +1 -0
- package/dist/kms-env.d.ts +13 -0
- package/dist/kms-env.d.ts.map +1 -0
- package/dist/kms-env.js +13 -0
- package/dist/kms-env.js.map +1 -0
- package/dist/kms-gcp.d.ts +32 -0
- package/dist/kms-gcp.d.ts.map +1 -0
- package/dist/kms-gcp.js +116 -0
- package/dist/kms-gcp.js.map +1 -0
- package/dist/kms-local.d.ts +13 -0
- package/dist/kms-local.d.ts.map +1 -0
- package/dist/kms-local.js +13 -0
- package/dist/kms-local.js.map +1 -0
- package/dist/kms-symmetric.d.ts +14 -0
- package/dist/kms-symmetric.d.ts.map +1 -0
- package/dist/kms-symmetric.js +67 -0
- package/dist/kms-symmetric.js.map +1 -0
- package/dist/kms.d.ts +66 -0
- package/dist/kms.d.ts.map +1 -0
- package/dist/kms.js +169 -0
- package/dist/kms.js.map +1 -0
- package/dist/kv-codecs.d.ts +6 -0
- package/dist/kv-codecs.d.ts.map +1 -0
- package/dist/kv-codecs.js +4 -0
- package/dist/kv-codecs.js.map +1 -0
- package/dist/kv.d.ts +10 -0
- package/dist/kv.d.ts.map +1 -0
- package/dist/kv.js +18 -0
- package/dist/kv.js.map +1 -0
- package/dist/languages.d.ts +187 -0
- package/dist/languages.d.ts.map +1 -0
- package/dist/languages.js +187 -0
- package/dist/languages.js.map +1 -0
- package/dist/localized-countries-regions.d.ts +15 -0
- package/dist/localized-countries-regions.d.ts.map +1 -0
- package/dist/localized-countries-regions.js +674 -0
- package/dist/localized-countries-regions.js.map +1 -0
- package/dist/localized-regions.d.ts +33 -0
- package/dist/localized-regions.d.ts.map +1 -0
- package/dist/localized-regions.js +63 -0
- package/dist/localized-regions.js.map +1 -0
- package/dist/price/resolve.d.ts +91 -0
- package/dist/price/resolve.d.ts.map +1 -0
- package/dist/price/resolve.js +227 -0
- package/dist/price/resolve.js.map +1 -0
- package/dist/rate-limits.d.ts +39 -0
- package/dist/rate-limits.d.ts.map +1 -0
- package/dist/rate-limits.js +86 -0
- package/dist/rate-limits.js.map +1 -0
- package/dist/redis.d.ts +13 -0
- package/dist/redis.d.ts.map +1 -0
- package/dist/redis.js +16 -0
- package/dist/redis.js.map +1 -0
- package/dist/region-only.d.ts +11 -0
- package/dist/region-only.d.ts.map +1 -0
- package/dist/region-only.js +49 -0
- package/dist/region-only.js.map +1 -0
- package/dist/region.d.ts +11 -0
- package/dist/region.d.ts.map +1 -0
- package/dist/region.js +47 -0
- package/dist/region.js.map +1 -0
- package/dist/romania-bucharest-sectors.d.ts +6 -0
- package/dist/romania-bucharest-sectors.d.ts.map +1 -0
- package/dist/romania-bucharest-sectors.js +27 -0
- package/dist/romania-bucharest-sectors.js.map +1 -0
- package/dist/romania-counties.d.ts +6 -0
- package/dist/romania-counties.d.ts.map +1 -0
- package/dist/romania-counties.js +171 -0
- package/dist/romania-counties.js.map +1 -0
- package/dist/session-claims.d.ts +40 -0
- package/dist/session-claims.d.ts.map +1 -0
- package/dist/session-claims.js +184 -0
- package/dist/session-claims.js.map +1 -0
- package/dist/sms/provider.d.ts +28 -0
- package/dist/sms/provider.d.ts.map +1 -0
- package/dist/sms/provider.js +50 -0
- package/dist/sms/provider.js.map +1 -0
- package/dist/sms/segments.d.ts +3 -0
- package/dist/sms/segments.d.ts.map +1 -0
- package/dist/sms/segments.js +33 -0
- package/dist/sms/segments.js.map +1 -0
- package/dist/temporal.d.ts +2 -0
- package/dist/temporal.d.ts.map +1 -0
- package/dist/temporal.js +6 -0
- package/dist/temporal.js.map +1 -0
- package/dist/timezones.d.ts +9 -0
- package/dist/timezones.d.ts.map +1 -0
- package/dist/timezones.js +1217 -0
- package/dist/timezones.js.map +1 -0
- package/dist/twilio/client.d.ts +13 -0
- package/dist/twilio/client.d.ts.map +1 -0
- package/dist/twilio/client.js +26 -0
- package/dist/twilio/client.js.map +1 -0
- package/dist/usage/index.d.ts +34 -0
- package/dist/usage/index.d.ts.map +1 -0
- package/dist/usage/index.js +18 -0
- package/dist/usage/index.js.map +1 -0
- package/dist/usage/policy.d.ts +27 -0
- package/dist/usage/policy.d.ts.map +1 -0
- package/dist/usage/policy.js +17 -0
- package/dist/usage/policy.js.map +1 -0
- package/dist/validation/log.d.ts +10 -0
- package/dist/validation/log.d.ts.map +1 -0
- package/dist/validation/log.js +37 -0
- package/dist/validation/log.js.map +1 -0
- package/dist/with-timeout.d.ts +2 -0
- package/dist/with-timeout.d.ts.map +1 -0
- package/dist/with-timeout.js +15 -0
- package/dist/with-timeout.js.map +1 -0
- package/dist/zod-form-builder.d.ts +45 -0
- package/dist/zod-form-builder.d.ts.map +1 -0
- package/dist/zod-form-builder.js +216 -0
- package/dist/zod-form-builder.js.map +1 -0
- package/package.json +92 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rate Limit Utilities
|
|
3
|
+
*
|
|
4
|
+
* Maps subscription plans to API rate limits
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Default rate limits by plan tier
|
|
8
|
+
*
|
|
9
|
+
* These limits apply to API key authentication
|
|
10
|
+
* Based on subscription tier or plan key
|
|
11
|
+
*/
|
|
12
|
+
export const RATE_LIMITS_BY_PLAN = {
|
|
13
|
+
// Free/Starter tier
|
|
14
|
+
free: {
|
|
15
|
+
rps: 5,
|
|
16
|
+
rpm: 300,
|
|
17
|
+
burst: 10,
|
|
18
|
+
},
|
|
19
|
+
starter: {
|
|
20
|
+
rps: 5,
|
|
21
|
+
rpm: 300,
|
|
22
|
+
burst: 10,
|
|
23
|
+
},
|
|
24
|
+
// Professional tier
|
|
25
|
+
professional: {
|
|
26
|
+
rps: 50,
|
|
27
|
+
rpm: 3000,
|
|
28
|
+
burst: 100,
|
|
29
|
+
},
|
|
30
|
+
pro: {
|
|
31
|
+
rps: 50,
|
|
32
|
+
rpm: 3000,
|
|
33
|
+
burst: 100,
|
|
34
|
+
},
|
|
35
|
+
// Business tier
|
|
36
|
+
business: {
|
|
37
|
+
rps: 100,
|
|
38
|
+
rpm: 6000,
|
|
39
|
+
burst: 200,
|
|
40
|
+
},
|
|
41
|
+
// Enterprise tier
|
|
42
|
+
enterprise: {
|
|
43
|
+
rps: 500,
|
|
44
|
+
rpm: 30000,
|
|
45
|
+
burst: 1000,
|
|
46
|
+
},
|
|
47
|
+
// Default fallback
|
|
48
|
+
default: {
|
|
49
|
+
rps: 5,
|
|
50
|
+
rpm: 300,
|
|
51
|
+
burst: 10,
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Get rate limits for a given plan key
|
|
56
|
+
*
|
|
57
|
+
* @param planKey - The plan key (e.g., "starter", "professional", "enterprise")
|
|
58
|
+
* @returns Rate limit configuration
|
|
59
|
+
*/
|
|
60
|
+
export function getRateLimitsForPlan(planKey) {
|
|
61
|
+
if (!planKey)
|
|
62
|
+
return RATE_LIMITS_BY_PLAN.default;
|
|
63
|
+
const normalized = planKey.toLowerCase().trim();
|
|
64
|
+
return RATE_LIMITS_BY_PLAN[normalized] || RATE_LIMITS_BY_PLAN.default;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Check if a plan has enterprise-level access
|
|
68
|
+
*
|
|
69
|
+
* @param planKey - The plan key
|
|
70
|
+
* @returns True if enterprise plan
|
|
71
|
+
*/
|
|
72
|
+
export function isEnterprisePlan(planKey) {
|
|
73
|
+
if (!planKey)
|
|
74
|
+
return false;
|
|
75
|
+
return planKey.toLowerCase().includes("enterprise");
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Get human-readable rate limit description
|
|
79
|
+
*
|
|
80
|
+
* @param limits - Rate limit configuration
|
|
81
|
+
* @returns Formatted string
|
|
82
|
+
*/
|
|
83
|
+
export function describeRateLimits(limits) {
|
|
84
|
+
return `${limits.rpm} requests/minute, ${limits.rps} requests/second`;
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=rate-limits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rate-limits.js","sourceRoot":"","sources":["../src/rate-limits.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAoC;IAClE,oBAAoB;IACpB,IAAI,EAAE;QACJ,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,EAAE;KACV;IACD,OAAO,EAAE;QACP,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,EAAE;KACV;IAED,oBAAoB;IACpB,YAAY,EAAE;QACZ,GAAG,EAAE,EAAE;QACP,GAAG,EAAE,IAAI;QACT,KAAK,EAAE,GAAG;KACX;IACD,GAAG,EAAE;QACH,GAAG,EAAE,EAAE;QACP,GAAG,EAAE,IAAI;QACT,KAAK,EAAE,GAAG;KACX;IAED,gBAAgB;IAChB,QAAQ,EAAE;QACR,GAAG,EAAE,GAAG;QACR,GAAG,EAAE,IAAI;QACT,KAAK,EAAE,GAAG;KACX;IAED,kBAAkB;IAClB,UAAU,EAAE;QACV,GAAG,EAAE,GAAG;QACR,GAAG,EAAE,KAAK;QACV,KAAK,EAAE,IAAI;KACZ;IAED,mBAAmB;IACnB,OAAO,EAAE;QACP,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,EAAE;KACV;CACF,CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAkC;IACrE,IAAI,CAAC,OAAO;QAAE,OAAO,mBAAmB,CAAC,OAAQ,CAAA;IAEjD,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAA;IAC/C,OAAO,mBAAmB,CAAC,UAAU,CAAC,IAAI,mBAAmB,CAAC,OAAQ,CAAA;AACxE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAkC;IACjE,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAC1B,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;AACrD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAuB;IACxD,OAAO,GAAG,MAAM,CAAC,GAAG,qBAAqB,MAAM,CAAC,GAAG,kBAAkB,CAAA;AACvE,CAAC"}
|
package/dist/redis.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Redis Utility (DEPRECATED)
|
|
3
|
+
*
|
|
4
|
+
* Upstash Redis has been removed to reduce costs.
|
|
5
|
+
* Use Cloudflare KV instead via the cache.ts module.
|
|
6
|
+
*
|
|
7
|
+
* @deprecated Use @pxmstudio/voyant-utils/cache with Cloudflare KV instead
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* @deprecated Use Cloudflare KV instead
|
|
11
|
+
*/
|
|
12
|
+
export declare function getRedis(): null;
|
|
13
|
+
//# sourceMappingURL=redis.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redis.d.ts","sourceRoot":"","sources":["../src/redis.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,wBAAgB,QAAQ,IAAI,IAAI,CAG/B"}
|
package/dist/redis.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Redis Utility (DEPRECATED)
|
|
3
|
+
*
|
|
4
|
+
* Upstash Redis has been removed to reduce costs.
|
|
5
|
+
* Use Cloudflare KV instead via the cache.ts module.
|
|
6
|
+
*
|
|
7
|
+
* @deprecated Use @pxmstudio/voyant-utils/cache with Cloudflare KV instead
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* @deprecated Use Cloudflare KV instead
|
|
11
|
+
*/
|
|
12
|
+
export function getRedis() {
|
|
13
|
+
console.warn("[redis] Upstash Redis has been removed. Use Cloudflare KV instead.");
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=redis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redis.js","sourceRoot":"","sources":["../src/redis.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAA;IAClF,OAAO,IAAI,CAAA;AACb,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type Region = "US" | "EU";
|
|
2
|
+
export declare function normalizeRegion(input?: string | null): Region;
|
|
3
|
+
export declare function resolveRegion(opts?: {
|
|
4
|
+
forceRegion?: string | null;
|
|
5
|
+
organizationRegion?: string | null;
|
|
6
|
+
headerRegion?: string | null;
|
|
7
|
+
cookieRegion?: string | null;
|
|
8
|
+
geoCountry?: string | null;
|
|
9
|
+
defaultRegion?: string | null;
|
|
10
|
+
}): Region;
|
|
11
|
+
//# sourceMappingURL=region-only.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"region-only.d.ts","sourceRoot":"","sources":["../src/region-only.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;AAEhC,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE7D;AAED,wBAAgB,aAAa,CAC3B,IAAI,GAAE;IACJ,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,GACL,MAAM,CAqCR"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// Region utilities that can be safely imported in Edge Runtime (middleware)
|
|
2
|
+
// This file excludes any dependencies that are not compatible with Edge Runtime
|
|
3
|
+
export function normalizeRegion(input) {
|
|
4
|
+
return input && input.toUpperCase() === "EU" ? "EU" : "US";
|
|
5
|
+
}
|
|
6
|
+
export function resolveRegion(opts = {}) {
|
|
7
|
+
if (opts.forceRegion)
|
|
8
|
+
return normalizeRegion(opts.forceRegion);
|
|
9
|
+
if (opts.organizationRegion)
|
|
10
|
+
return normalizeRegion(opts.organizationRegion);
|
|
11
|
+
if (opts.headerRegion)
|
|
12
|
+
return normalizeRegion(opts.headerRegion);
|
|
13
|
+
if (opts.cookieRegion)
|
|
14
|
+
return normalizeRegion(opts.cookieRegion);
|
|
15
|
+
const EU_COUNTRIES = new Set([
|
|
16
|
+
"DE",
|
|
17
|
+
"FR",
|
|
18
|
+
"ES",
|
|
19
|
+
"IT",
|
|
20
|
+
"NL",
|
|
21
|
+
"SE",
|
|
22
|
+
"NO",
|
|
23
|
+
"DK",
|
|
24
|
+
"FI",
|
|
25
|
+
"IE",
|
|
26
|
+
"PL",
|
|
27
|
+
"RO",
|
|
28
|
+
"BG",
|
|
29
|
+
"HU",
|
|
30
|
+
"CZ",
|
|
31
|
+
"AT",
|
|
32
|
+
"BE",
|
|
33
|
+
"PT",
|
|
34
|
+
"GR",
|
|
35
|
+
"HR",
|
|
36
|
+
"SK",
|
|
37
|
+
"SI",
|
|
38
|
+
"EE",
|
|
39
|
+
"LV",
|
|
40
|
+
"LT",
|
|
41
|
+
"LU",
|
|
42
|
+
"MT",
|
|
43
|
+
"CY",
|
|
44
|
+
]);
|
|
45
|
+
if (opts.geoCountry && EU_COUNTRIES.has(String(opts.geoCountry).toUpperCase()))
|
|
46
|
+
return "EU";
|
|
47
|
+
return normalizeRegion(opts.defaultRegion || process.env.DEFAULT_REGION || "US");
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=region-only.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"region-only.js","sourceRoot":"","sources":["../src/region-only.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,gFAAgF;AAIhF,MAAM,UAAU,eAAe,CAAC,KAAqB;IACnD,OAAO,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AAC5D,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAOI,EAAE;IAEN,IAAI,IAAI,CAAC,WAAW;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC9D,IAAI,IAAI,CAAC,kBAAkB;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC5E,IAAI,IAAI,CAAC,YAAY;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAChE,IAAI,IAAI,CAAC,YAAY;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAChE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;QAC3B,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;KACL,CAAC,CAAA;IACF,IAAI,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3F,OAAO,eAAe,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAA;AAClF,CAAC"}
|
package/dist/region.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type Region = "US" | "EU";
|
|
2
|
+
export declare function normalizeRegion(input?: string | null): Region;
|
|
3
|
+
export declare function resolveRegion(opts?: {
|
|
4
|
+
forceRegion?: string | null;
|
|
5
|
+
organizationRegion?: string | null;
|
|
6
|
+
headerRegion?: string | null;
|
|
7
|
+
cookieRegion?: string | null;
|
|
8
|
+
geoCountry?: string | null;
|
|
9
|
+
defaultRegion?: string | null;
|
|
10
|
+
}): Region;
|
|
11
|
+
//# sourceMappingURL=region.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"region.d.ts","sourceRoot":"","sources":["../src/region.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;AAEhC,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE7D;AAED,wBAAgB,aAAa,CAC3B,IAAI,GAAE;IACJ,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,GACL,MAAM,CAqCR"}
|
package/dist/region.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export function normalizeRegion(input) {
|
|
2
|
+
return input && input.toUpperCase() === "EU" ? "EU" : "US";
|
|
3
|
+
}
|
|
4
|
+
export function resolveRegion(opts = {}) {
|
|
5
|
+
if (opts.forceRegion)
|
|
6
|
+
return normalizeRegion(opts.forceRegion);
|
|
7
|
+
if (opts.organizationRegion)
|
|
8
|
+
return normalizeRegion(opts.organizationRegion);
|
|
9
|
+
if (opts.headerRegion)
|
|
10
|
+
return normalizeRegion(opts.headerRegion);
|
|
11
|
+
if (opts.cookieRegion)
|
|
12
|
+
return normalizeRegion(opts.cookieRegion);
|
|
13
|
+
const EU_COUNTRIES = new Set([
|
|
14
|
+
"DE",
|
|
15
|
+
"FR",
|
|
16
|
+
"ES",
|
|
17
|
+
"IT",
|
|
18
|
+
"NL",
|
|
19
|
+
"SE",
|
|
20
|
+
"NO",
|
|
21
|
+
"DK",
|
|
22
|
+
"FI",
|
|
23
|
+
"IE",
|
|
24
|
+
"PL",
|
|
25
|
+
"RO",
|
|
26
|
+
"BG",
|
|
27
|
+
"HU",
|
|
28
|
+
"CZ",
|
|
29
|
+
"AT",
|
|
30
|
+
"BE",
|
|
31
|
+
"PT",
|
|
32
|
+
"GR",
|
|
33
|
+
"HR",
|
|
34
|
+
"SK",
|
|
35
|
+
"SI",
|
|
36
|
+
"EE",
|
|
37
|
+
"LV",
|
|
38
|
+
"LT",
|
|
39
|
+
"LU",
|
|
40
|
+
"MT",
|
|
41
|
+
"CY",
|
|
42
|
+
]);
|
|
43
|
+
if (opts.geoCountry && EU_COUNTRIES.has(String(opts.geoCountry).toUpperCase()))
|
|
44
|
+
return "EU";
|
|
45
|
+
return normalizeRegion(opts.defaultRegion || process.env.DEFAULT_REGION || "US");
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=region.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"region.js","sourceRoot":"","sources":["../src/region.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,eAAe,CAAC,KAAqB;IACnD,OAAO,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AAC5D,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAOI,EAAE;IAEN,IAAI,IAAI,CAAC,WAAW;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC9D,IAAI,IAAI,CAAC,kBAAkB;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC5E,IAAI,IAAI,CAAC,YAAY;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAChE,IAAI,IAAI,CAAC,YAAY;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAChE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;QAC3B,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;KACL,CAAC,CAAA;IACF,IAAI,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3F,OAAO,eAAe,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAA;AAClF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"romania-bucharest-sectors.d.ts","sourceRoot":"","sources":["../src/romania-bucharest-sectors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,IAAI,EAyBlC,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export const bucharestSectors = [
|
|
2
|
+
{
|
|
3
|
+
name: "Sector 1",
|
|
4
|
+
value: "Sector 1",
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
name: "Sector 2",
|
|
8
|
+
value: "Sector 2",
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
name: "Sector 3",
|
|
12
|
+
value: "Sector 3",
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
name: "Sector 4",
|
|
16
|
+
value: "Sector 4",
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
name: "Sector 5",
|
|
20
|
+
value: "Sector 5",
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: "Sector 6",
|
|
24
|
+
value: "Sector 6",
|
|
25
|
+
},
|
|
26
|
+
];
|
|
27
|
+
//# sourceMappingURL=romania-bucharest-sectors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"romania-bucharest-sectors.js","sourceRoot":"","sources":["../src/romania-bucharest-sectors.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACtC;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"romania-counties.d.ts","sourceRoot":"","sources":["../src/romania-counties.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,MAAM,EAyK5B,CAAC"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
export const counties = [
|
|
2
|
+
{
|
|
3
|
+
name: "Alba",
|
|
4
|
+
code: "RO-AB",
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
name: "Arad",
|
|
8
|
+
code: "RO-AR",
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
name: "Argeș",
|
|
12
|
+
code: "RO-AG",
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
name: "Bacău",
|
|
16
|
+
code: "RO-BC",
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
name: "Bihor",
|
|
20
|
+
code: "RO-BH",
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: "Bistrița-Năsăud",
|
|
24
|
+
code: "RO-BN",
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: "Botoșani",
|
|
28
|
+
code: "RO-BT",
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
name: "Brașov",
|
|
32
|
+
code: "RO-BV",
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: "Brăila",
|
|
36
|
+
code: "RO-BR",
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: "București",
|
|
40
|
+
code: "RO-B",
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: "Buzău",
|
|
44
|
+
code: "RO-BZ",
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: "Caraș-Severin",
|
|
48
|
+
code: "RO-CS",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: "Cluj",
|
|
52
|
+
code: "RO-CJ",
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
name: "Constanța",
|
|
56
|
+
code: "RO-CT",
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
name: "Covasna",
|
|
60
|
+
code: "RO-CV",
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: "Călărași",
|
|
64
|
+
code: "RO-CL",
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
name: "Dolj",
|
|
68
|
+
code: "RO-DJ",
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
name: "Dâmbovița",
|
|
72
|
+
code: "RO-DB",
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
name: "Galați",
|
|
76
|
+
code: "RO-GL",
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
name: "Giurgiu",
|
|
80
|
+
code: "RO-GR",
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
name: "Gorj",
|
|
84
|
+
code: "RO-GJ",
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
name: "Harghita",
|
|
88
|
+
code: "RO-HR",
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
name: "Hunedoara",
|
|
92
|
+
code: "RO-HD",
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
name: "Ialomița",
|
|
96
|
+
code: "RO-IL",
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: "Iași",
|
|
100
|
+
code: "RO-IS",
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
name: "Ilfov",
|
|
104
|
+
code: "RO-IF*", // TODO: Check if this is correct
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
name: "Maramureș",
|
|
108
|
+
code: "RO-MM",
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
name: "Mehedinți",
|
|
112
|
+
code: "RO-MH",
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
name: "Mureș",
|
|
116
|
+
code: "RO-MS",
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: "Neamț",
|
|
120
|
+
code: "RO-NT",
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
name: "Olt",
|
|
124
|
+
code: "RO-OT",
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
name: "Prahova",
|
|
128
|
+
code: "RO-PH",
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
name: "Satu Mare",
|
|
132
|
+
code: "RO-SM",
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
name: "Sibiu",
|
|
136
|
+
code: "RO-SB",
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
name: "Suceava",
|
|
140
|
+
code: "RO-SV",
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
name: "Sălaj",
|
|
144
|
+
code: "RO-SJ",
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
name: "Teleorman",
|
|
148
|
+
code: "RO-TR",
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
name: "Timiș",
|
|
152
|
+
code: "RO-TM",
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
name: "Tulcea",
|
|
156
|
+
code: "RO-TL",
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
name: "Vaslui",
|
|
160
|
+
code: "RO-VS",
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
name: "Vrancea",
|
|
164
|
+
code: "RO-VN",
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
name: "Vâlcea",
|
|
168
|
+
code: "RO-VL",
|
|
169
|
+
},
|
|
170
|
+
];
|
|
171
|
+
//# sourceMappingURL=romania-counties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"romania-counties.js","sourceRoot":"","sources":["../src/romania-counties.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,MAAM;KACb;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,QAAQ,EAAE,iCAAiC;KAClD;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,OAAO;KACd;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd;CACF,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session Claims Cookie Utilities
|
|
3
|
+
*
|
|
4
|
+
* Implements signed session claims to reduce API calls in middleware.
|
|
5
|
+
* Claims contain minimal session info (userId, sessionId hash) that can be
|
|
6
|
+
* verified locally without database lookup.
|
|
7
|
+
*
|
|
8
|
+
* Security:
|
|
9
|
+
* - HMAC-SHA256 signing prevents tampering
|
|
10
|
+
* - 5-minute expiration ensures quick revocation
|
|
11
|
+
* - HttpOnly, Secure, SameSite cookies
|
|
12
|
+
*
|
|
13
|
+
* Compatible with both Node.js (middleware) and Cloudflare Workers (API)
|
|
14
|
+
*/
|
|
15
|
+
export interface SessionClaims {
|
|
16
|
+
userId: string;
|
|
17
|
+
sessionId: string;
|
|
18
|
+
iat: number;
|
|
19
|
+
exp: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Sign session claims and return as JWT-like token
|
|
23
|
+
*
|
|
24
|
+
* Format: base64url(header).base64url(payload).base64url(signature)
|
|
25
|
+
*
|
|
26
|
+
* @param userId - User ID from verified session
|
|
27
|
+
* @param sessionId - Full session ID (will be hashed)
|
|
28
|
+
* @param secret - HMAC secret for signing
|
|
29
|
+
* @returns Signed token string
|
|
30
|
+
*/
|
|
31
|
+
export declare function signSessionClaims(userId: string, sessionId: string, secret: string): Promise<string>;
|
|
32
|
+
/**
|
|
33
|
+
* Verify and decode session claims token
|
|
34
|
+
*
|
|
35
|
+
* @param token - Signed token from cookie
|
|
36
|
+
* @param secret - HMAC secret for verification
|
|
37
|
+
* @returns Decoded claims if valid, null if invalid/expired
|
|
38
|
+
*/
|
|
39
|
+
export declare function verifySessionClaims(token: string, secret: string): Promise<SessionClaims | null>;
|
|
40
|
+
//# sourceMappingURL=session-claims.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-claims.d.ts","sourceRoot":"","sources":["../src/session-claims.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAwBH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;CACZ;AA6BD;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAmDjB;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAmE/B"}
|