@aws/aurora-dsql-postgresjs-connector 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs ADDED
@@ -0,0 +1,109 @@
1
+ //#region rolldown:runtime
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from === "object" || typeof from === "function") {
10
+ for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
11
+ key = keys[i];
12
+ if (!__hasOwnProp.call(to, key) && key !== except) {
13
+ __defProp(to, key, {
14
+ get: ((k) => from[k]).bind(null, key),
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ }
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
23
+ value: mod,
24
+ enumerable: true
25
+ }) : target, mod));
26
+
27
+ //#endregion
28
+ let postgres = require("postgres");
29
+ postgres = __toESM(postgres);
30
+ let _aws_sdk_dsql_signer = require("@aws-sdk/dsql-signer");
31
+
32
+ //#region src/client.ts
33
+ const ADMIN = "admin";
34
+ const DEFAULT_DATABASE = "postgres";
35
+ const DEFAULT_EXPIRY = 30;
36
+ const PRE_REGION_HOST_PATTERN = ".dsql.";
37
+ const POST_REGION_HOST_PATTERN = ".on.aws";
38
+ function auroraDSQLPostgres(urlOrOptions, options) {
39
+ let opts;
40
+ let host;
41
+ let username;
42
+ let database;
43
+ let ssl;
44
+ if (typeof urlOrOptions === "string") {
45
+ let parsedOptions = parseConnectionString(urlOrOptions);
46
+ host = options?.hostname || options?.host || parsedOptions.host || process.env.PGHOST;
47
+ username = options?.username || options?.user || parsedOptions.username || process.env.PGUSERNAME || process.env.USER || ADMIN;
48
+ database = options?.database || options?.db || parsedOptions.database || process.env.PGDATABASE;
49
+ ssl = options?.ssl || parsedOptions.ssl;
50
+ opts = { ...options };
51
+ } else {
52
+ host = urlOrOptions?.hostname || urlOrOptions?.host || process.env.PGHOST;
53
+ username = urlOrOptions?.username || urlOrOptions?.user || process.env.PGUSERNAME || process.env.USER || ADMIN;
54
+ database = urlOrOptions?.database || urlOrOptions?.db || process.env.PGDATABASE;
55
+ ssl = urlOrOptions?.ssl;
56
+ opts = { ...urlOrOptions };
57
+ }
58
+ if (Array.isArray(host)) throw new Error("Multi-host configurations are not supported for Aurora DSQL");
59
+ let region = opts.region || parseRegionFromHost(host);
60
+ if (isClusterID(host)) {
61
+ host = buildHostnameFromIdAndRegion(host, region);
62
+ opts.host = host;
63
+ }
64
+ let signerConfig = {
65
+ hostname: host,
66
+ region: opts.region || parseRegionFromHost(host),
67
+ expiresIn: opts.tokenDurationSecs ?? opts.connect_timeout ?? (process.env.PGCONNECT_TIMEOUT ? parseInt(process.env.PGCONNECT_TIMEOUT) : void 0) ?? DEFAULT_EXPIRY,
68
+ profile: opts.profile || process.env.AWS_PROFILE || "default"
69
+ };
70
+ if (opts.customCredentialsProvider) signerConfig.credentials = opts.customCredentialsProvider;
71
+ let signer = new _aws_sdk_dsql_signer.DsqlSigner(signerConfig);
72
+ if (!database) opts.database = DEFAULT_DATABASE;
73
+ if (!ssl) opts.ssl = true;
74
+ const postgresOpts = {
75
+ ...opts,
76
+ pass: () => getToken(signer, username)
77
+ };
78
+ return typeof urlOrOptions === "string" ? (0, postgres.default)(urlOrOptions, postgresOpts) : (0, postgres.default)(postgresOpts);
79
+ }
80
+ function parseConnectionString(url) {
81
+ let decodedUrl = decodeURI(url);
82
+ const parsed = new URL(decodedUrl);
83
+ if (parsed.hostname?.includes(",")) throw new Error("Multi-host connection strings are not supported for Aurora DSQL");
84
+ return {
85
+ username: parsed.username,
86
+ host: parsed.hostname,
87
+ database: parsed.pathname?.slice(1),
88
+ ssl: parsed.searchParams.get("ssl") || parsed.searchParams.get("sslmode") || void 0
89
+ };
90
+ }
91
+ function parseRegionFromHost(host) {
92
+ if (!host) throw new Error("Hostname is required to parse region");
93
+ const match = host.match(/^(?<instance>[^.]+)\.(?<dns>dsql(?:-[^.]+)?)\.(?<domain>(?<region>[a-zA-Z0-9-]+)\.on\.aws\.?)$/i);
94
+ if (match?.groups) return match.groups.region;
95
+ throw new Error(`Unable to parse region from hostname: ${host}`);
96
+ }
97
+ function isClusterID(host) {
98
+ return !host.includes(".");
99
+ }
100
+ function buildHostnameFromIdAndRegion(host, region) {
101
+ return host + PRE_REGION_HOST_PATTERN + region + POST_REGION_HOST_PATTERN;
102
+ }
103
+ async function getToken(signer, username) {
104
+ if (username === ADMIN) return await signer.getDbConnectAdminAuthToken();
105
+ else return await signer.getDbConnectAuthToken();
106
+ }
107
+
108
+ //#endregion
109
+ exports.auroraDSQLPostgres = auroraDSQLPostgres;
@@ -0,0 +1,21 @@
1
+ import postgres, { PostgresType } from "postgres";
2
+ import { AwsCredentialIdentity, AwsCredentialIdentityProvider } from "@aws-sdk/types";
3
+
4
+ //#region src/client.d.ts
5
+ declare function auroraDSQLPostgres<T extends Record<string, postgres.PostgresType> = {}>(url: string, options?: AuroraDSQLConfig<T>): postgres.Sql<Record<string, postgres.PostgresType> extends T ? {} : { [type in keyof T]: T[type] extends {
6
+ serialize: (value: infer R) => any;
7
+ parse: (raw: any) => infer R;
8
+ } ? R : never }>;
9
+ declare function auroraDSQLPostgres<T extends Record<string, postgres.PostgresType> = {}>(options: AuroraDSQLConfig<T>): postgres.Sql<Record<string, postgres.PostgresType> extends T ? {} : { [type in keyof T]: T[type] extends {
10
+ serialize: (value: infer R) => any;
11
+ parse: (raw: any) => infer R;
12
+ } ? R : never }>;
13
+ interface AuroraDSQLConfig<T extends Record<string, PostgresType<T>>> extends Omit<postgres.Options<T>, 'password' | 'pass'> {
14
+ region?: string;
15
+ profile?: string;
16
+ tokenDurationSecs?: number;
17
+ customCredentialsProvider?: AwsCredentialIdentity | AwsCredentialIdentityProvider;
18
+ }
19
+ //#endregion
20
+ export { type AuroraDSQLConfig, auroraDSQLPostgres };
21
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/client.ts"],"sourcesContent":[],"mappings":";;;;iBAgBgB,6BAA6B,eAAe,QAAA,CAAS,2CAEvD,iBAAiB,KAC5B,QAAA,CAAS,IAAI,eAAe,QAAA,CAAS,sBAAsB,0BAC3C,IAAI,EAAE;EAJT,SAAA,EAAA,CAAA,KAAkB,EAAA,KAAA,EAAA,EAAA,GAAA,GAAA;EAA0B,KAAS,EAAA,CAAA,GAAA,EAAA,GAAA,EAAA,GAAA,KAAA,EAAA;AAAxB,CAAA,GAAA,CAAA,GAAA,KAAA,EAEd,CAAA;AAAjB,iBAQE,kBARF,CAAA,UAQ+B,MAR/B,CAAA,MAAA,EAQ8C,QAAA,CAAS,YARvD,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EASD,gBATC,CASgB,CAThB,CAAA,CAAA,EAUX,QAAA,CAAS,GAVE,CAUE,MAVF,CAAA,MAAA,EAUiB,QAAA,CAAS,YAV1B,CAAA,SAUgD,CAVhD,GAAA,CAAA,CAAA,GAAA,WAC0B,MAUrB,CAVqB,GAUjB,CAViB,CAUf,IAVe,CAAA,SAAA;EAAxB,SAAA,EAAA,CAAA,KAAA,EAAA,KAAA,EAAA,EAAA,GAAA,GAAA;EAA8C,KAAA,EAAA,CAAA,GAAA,EAAA,GAAA,EAAA,GAAA,KAAA,EAAA;AAC3C,CAAA,GAAA,CAAA,GAAA,KAAA,EAAI,CAAA;AAAE,UA2HR,gBA3HQ,CAAA,UA2HmB,MA3HnB,CAAA,MAAA,EA2HkC,YA3HlC,CA2H+C,CA3H/C,CAAA,CAAA,CAAA,SA2H4D,IA3H5D,CA2HiE,QAAA,CAAS,OA3H1E,CA2HkF,CA3HlF,CAAA,EAAA,UAAA,GAAA,MAAA,CAAA,CAAA;EADtB,MAAS,CAAA,EAAA,MAAA;EAAG,OAAA,CAAA,EAAA,MAAA;EAOC,iBAAA,CAAA,EAAA,MAAkB;EAA0B,yBAAS,CAAA,EA6HrC,qBA7HqC,GA6Hb,6BA7Ha"}
@@ -0,0 +1,21 @@
1
+ import postgres, { PostgresType } from "postgres";
2
+ import { AwsCredentialIdentity, AwsCredentialIdentityProvider } from "@aws-sdk/types";
3
+
4
+ //#region src/client.d.ts
5
+ declare function auroraDSQLPostgres<T extends Record<string, postgres.PostgresType> = {}>(url: string, options?: AuroraDSQLConfig<T>): postgres.Sql<Record<string, postgres.PostgresType> extends T ? {} : { [type in keyof T]: T[type] extends {
6
+ serialize: (value: infer R) => any;
7
+ parse: (raw: any) => infer R;
8
+ } ? R : never }>;
9
+ declare function auroraDSQLPostgres<T extends Record<string, postgres.PostgresType> = {}>(options: AuroraDSQLConfig<T>): postgres.Sql<Record<string, postgres.PostgresType> extends T ? {} : { [type in keyof T]: T[type] extends {
10
+ serialize: (value: infer R) => any;
11
+ parse: (raw: any) => infer R;
12
+ } ? R : never }>;
13
+ interface AuroraDSQLConfig<T extends Record<string, PostgresType<T>>> extends Omit<postgres.Options<T>, 'password' | 'pass'> {
14
+ region?: string;
15
+ profile?: string;
16
+ tokenDurationSecs?: number;
17
+ customCredentialsProvider?: AwsCredentialIdentity | AwsCredentialIdentityProvider;
18
+ }
19
+ //#endregion
20
+ export { type AuroraDSQLConfig, auroraDSQLPostgres };
21
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/client.ts"],"sourcesContent":[],"mappings":";;;;iBAgBgB,6BAA6B,eAAe,QAAA,CAAS,2CAEvD,iBAAiB,KAC5B,QAAA,CAAS,IAAI,eAAe,QAAA,CAAS,sBAAsB,0BAC3C,IAAI,EAAE;EAJT,SAAA,EAAA,CAAA,KAAkB,EAAA,KAAA,EAAA,EAAA,GAAA,GAAA;EAA0B,KAAS,EAAA,CAAA,GAAA,EAAA,GAAA,EAAA,GAAA,KAAA,EAAA;AAAxB,CAAA,GAAA,CAAA,GAAA,KAAA,EAEd,CAAA;AAAjB,iBAQE,kBARF,CAAA,UAQ+B,MAR/B,CAAA,MAAA,EAQ8C,QAAA,CAAS,YARvD,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EASD,gBATC,CASgB,CAThB,CAAA,CAAA,EAUX,QAAA,CAAS,GAVE,CAUE,MAVF,CAAA,MAAA,EAUiB,QAAA,CAAS,YAV1B,CAAA,SAUgD,CAVhD,GAAA,CAAA,CAAA,GAAA,WAC0B,MAUrB,CAVqB,GAUjB,CAViB,CAUf,IAVe,CAAA,SAAA;EAAxB,SAAA,EAAA,CAAA,KAAA,EAAA,KAAA,EAAA,EAAA,GAAA,GAAA;EAA8C,KAAA,EAAA,CAAA,GAAA,EAAA,GAAA,EAAA,GAAA,KAAA,EAAA;AAC3C,CAAA,GAAA,CAAA,GAAA,KAAA,EAAI,CAAA;AAAE,UA2HR,gBA3HQ,CAAA,UA2HmB,MA3HnB,CAAA,MAAA,EA2HkC,YA3HlC,CA2H+C,CA3H/C,CAAA,CAAA,CAAA,SA2H4D,IA3H5D,CA2HiE,QAAA,CAAS,OA3H1E,CA2HkF,CA3HlF,CAAA,EAAA,UAAA,GAAA,MAAA,CAAA,CAAA;EADtB,MAAS,CAAA,EAAA,MAAA;EAAG,OAAA,CAAA,EAAA,MAAA;EAOC,iBAAA,CAAA,EAAA,MAAkB;EAA0B,yBAAS,CAAA,EA6HrC,qBA7HqC,GA6Hb,6BA7Ha"}
package/dist/index.mjs ADDED
@@ -0,0 +1,82 @@
1
+ import postgres from "postgres";
2
+ import { DsqlSigner } from "@aws-sdk/dsql-signer";
3
+
4
+ //#region src/client.ts
5
+ const ADMIN = "admin";
6
+ const DEFAULT_DATABASE = "postgres";
7
+ const DEFAULT_EXPIRY = 30;
8
+ const PRE_REGION_HOST_PATTERN = ".dsql.";
9
+ const POST_REGION_HOST_PATTERN = ".on.aws";
10
+ function auroraDSQLPostgres(urlOrOptions, options) {
11
+ let opts;
12
+ let host;
13
+ let username;
14
+ let database;
15
+ let ssl;
16
+ if (typeof urlOrOptions === "string") {
17
+ let parsedOptions = parseConnectionString(urlOrOptions);
18
+ host = options?.hostname || options?.host || parsedOptions.host || process.env.PGHOST;
19
+ username = options?.username || options?.user || parsedOptions.username || process.env.PGUSERNAME || process.env.USER || ADMIN;
20
+ database = options?.database || options?.db || parsedOptions.database || process.env.PGDATABASE;
21
+ ssl = options?.ssl || parsedOptions.ssl;
22
+ opts = { ...options };
23
+ } else {
24
+ host = urlOrOptions?.hostname || urlOrOptions?.host || process.env.PGHOST;
25
+ username = urlOrOptions?.username || urlOrOptions?.user || process.env.PGUSERNAME || process.env.USER || ADMIN;
26
+ database = urlOrOptions?.database || urlOrOptions?.db || process.env.PGDATABASE;
27
+ ssl = urlOrOptions?.ssl;
28
+ opts = { ...urlOrOptions };
29
+ }
30
+ if (Array.isArray(host)) throw new Error("Multi-host configurations are not supported for Aurora DSQL");
31
+ let region = opts.region || parseRegionFromHost(host);
32
+ if (isClusterID(host)) {
33
+ host = buildHostnameFromIdAndRegion(host, region);
34
+ opts.host = host;
35
+ }
36
+ let signerConfig = {
37
+ hostname: host,
38
+ region: opts.region || parseRegionFromHost(host),
39
+ expiresIn: opts.tokenDurationSecs ?? opts.connect_timeout ?? (process.env.PGCONNECT_TIMEOUT ? parseInt(process.env.PGCONNECT_TIMEOUT) : void 0) ?? DEFAULT_EXPIRY,
40
+ profile: opts.profile || process.env.AWS_PROFILE || "default"
41
+ };
42
+ if (opts.customCredentialsProvider) signerConfig.credentials = opts.customCredentialsProvider;
43
+ let signer = new DsqlSigner(signerConfig);
44
+ if (!database) opts.database = DEFAULT_DATABASE;
45
+ if (!ssl) opts.ssl = true;
46
+ const postgresOpts = {
47
+ ...opts,
48
+ pass: () => getToken(signer, username)
49
+ };
50
+ return typeof urlOrOptions === "string" ? postgres(urlOrOptions, postgresOpts) : postgres(postgresOpts);
51
+ }
52
+ function parseConnectionString(url) {
53
+ let decodedUrl = decodeURI(url);
54
+ const parsed = new URL(decodedUrl);
55
+ if (parsed.hostname?.includes(",")) throw new Error("Multi-host connection strings are not supported for Aurora DSQL");
56
+ return {
57
+ username: parsed.username,
58
+ host: parsed.hostname,
59
+ database: parsed.pathname?.slice(1),
60
+ ssl: parsed.searchParams.get("ssl") || parsed.searchParams.get("sslmode") || void 0
61
+ };
62
+ }
63
+ function parseRegionFromHost(host) {
64
+ if (!host) throw new Error("Hostname is required to parse region");
65
+ const match = host.match(/^(?<instance>[^.]+)\.(?<dns>dsql(?:-[^.]+)?)\.(?<domain>(?<region>[a-zA-Z0-9-]+)\.on\.aws\.?)$/i);
66
+ if (match?.groups) return match.groups.region;
67
+ throw new Error(`Unable to parse region from hostname: ${host}`);
68
+ }
69
+ function isClusterID(host) {
70
+ return !host.includes(".");
71
+ }
72
+ function buildHostnameFromIdAndRegion(host, region) {
73
+ return host + PRE_REGION_HOST_PATTERN + region + POST_REGION_HOST_PATTERN;
74
+ }
75
+ async function getToken(signer, username) {
76
+ if (username === ADMIN) return await signer.getDbConnectAdminAuthToken();
77
+ else return await signer.getDbConnectAuthToken();
78
+ }
79
+
80
+ //#endregion
81
+ export { auroraDSQLPostgres };
82
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["opts: AuroraDSQLConfig<T>","host: string","username: string","database: string | undefined","ssl: object | boolean | string | undefined","signerConfig: DsqlSignerConfig","postgresOpts: postgres.Options<T>"],"sources":["../src/client.ts"],"sourcesContent":["/*\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport postgres, {PostgresType} from \"postgres\";\nimport {AwsCredentialIdentity, AwsCredentialIdentityProvider} from \"@aws-sdk/types\";\nimport {DsqlSigner, DsqlSignerConfig} from \"@aws-sdk/dsql-signer\";\n\nconst ADMIN = \"admin\";\nconst DEFAULT_DATABASE = \"postgres\";\nconst DEFAULT_EXPIRY = 30; // Based on default Postgres.js connect_timeout\n// String components of a DSQL hostname, <Cluster ID>.dsql.<region>.on.aws\nconst PRE_REGION_HOST_PATTERN = \".dsql.\";\nconst POST_REGION_HOST_PATTERN = \".on.aws\";\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\nexport function auroraDSQLPostgres<T extends Record<string, postgres.PostgresType> = {}>(\n url: string,\n options?: AuroraDSQLConfig<T>\n): postgres.Sql<Record<string, postgres.PostgresType> extends T ? {} : {\n [type in keyof T]: T[type] extends {\n serialize: (value: infer R) => any,\n parse: (raw: any) => infer R\n } ? R : never\n}>;\n\nexport function auroraDSQLPostgres<T extends Record<string, postgres.PostgresType> = {}>(\n options: AuroraDSQLConfig<T>\n): postgres.Sql<Record<string, postgres.PostgresType> extends T ? {} : {\n [type in keyof T]: T[type] extends {\n serialize: (value: infer R) => any,\n parse: (raw: any) => infer R\n } ? R : never\n}>;\n\nexport function auroraDSQLPostgres<T extends Record<string, postgres.PostgresType> = {}>(\n urlOrOptions: string | AuroraDSQLConfig<T>,\n options?: AuroraDSQLConfig<T>\n): postgres.Sql<Record<string, postgres.PostgresType> extends T ? {} : {\n [type in keyof T]: T[type] extends {\n serialize: (value: infer R) => any,\n parse: (raw: any) => infer R\n } ? R : never\n}> {\n/* eslint-enable @typescript-eslint/no-explicit-any */\n let opts: AuroraDSQLConfig<T>;\n let host: string;\n let username: string;\n let database: string | undefined;\n let ssl: object | boolean | string | undefined;\n if (typeof urlOrOptions === 'string') {\n // Called with (url, options)\n let parsedOptions = parseConnectionString(urlOrOptions);\n host = options?.hostname || options?.host || parsedOptions.host || process.env.PGHOST!;\n username = options?.username || options?.user || parsedOptions.username! || process.env.PGUSERNAME || process.env.USER || ADMIN;\n database = options?.database || options?.db || parsedOptions.database || process.env.PGDATABASE;\n ssl = options?.ssl || parsedOptions.ssl;\n opts = {...options!};\n } else {\n // Called with (options) only\n host = urlOrOptions?.hostname || urlOrOptions?.host || process.env.PGHOST!;\n username = urlOrOptions?.username || urlOrOptions?.user || process.env.PGUSERNAME || process.env.USER || ADMIN;\n database = urlOrOptions?.database || urlOrOptions?.db || process.env.PGDATABASE;\n ssl = urlOrOptions?.ssl;\n opts = {...urlOrOptions!};\n }\n if (Array.isArray(host)) {\n throw new Error('Multi-host configurations are not supported for Aurora DSQL');\n }\n let region = opts.region || parseRegionFromHost(host);\n if (isClusterID(host)) {\n host = buildHostnameFromIdAndRegion(host, region);\n opts.host = host;\n }\n let signerConfig: DsqlSignerConfig = {\n hostname: host,\n region: opts.region || parseRegionFromHost(host),\n expiresIn: opts.tokenDurationSecs ?? opts.connect_timeout ?? (process.env.PGCONNECT_TIMEOUT ? parseInt(process.env.PGCONNECT_TIMEOUT) : undefined) ?? DEFAULT_EXPIRY,\n profile: opts.profile || process.env.AWS_PROFILE || \"default\",\n };\n if (opts.customCredentialsProvider) {\n signerConfig.credentials = opts.customCredentialsProvider;\n }\n let signer = new DsqlSigner(signerConfig);\n if (!database) opts.database = DEFAULT_DATABASE;\n if (!ssl) opts.ssl = true;\n const postgresOpts: postgres.Options<T> = {\n ...opts,\n pass: () => getToken(signer, username),\n };\n return typeof urlOrOptions === 'string' ? postgres(urlOrOptions, postgresOpts) : postgres(postgresOpts);\n}\n\nfunction parseConnectionString(url: string): {\n database?: string;\n host?: string;\n username?: string;\n ssl?: string;\n} {\n let decodedUrl = decodeURI(url);\n const parsed = new URL(decodedUrl);\n\n // Check for multi-host\n if (parsed.hostname?.includes(',')) {\n throw new Error('Multi-host connection strings are not supported for Aurora DSQL');\n }\n\n return {\n username: parsed.username,\n host: parsed.hostname,\n database: parsed.pathname?.slice(1),\n ssl: parsed.searchParams.get(\"ssl\") || parsed.searchParams.get(\"sslmode\") || undefined,\n };\n}\n\nfunction parseRegionFromHost(host: string): string | undefined {\n if (!host) {\n throw new Error(\"Hostname is required to parse region\");\n }\n\n const match = host.match(/^(?<instance>[^.]+)\\.(?<dns>dsql(?:-[^.]+)?)\\.(?<domain>(?<region>[a-zA-Z0-9-]+)\\.on\\.aws\\.?)$/i);\n if (match?.groups) {\n return match.groups.region;\n }\n throw new Error(`Unable to parse region from hostname: ${host}`);\n}\n\nfunction isClusterID(host: string) {\n return !host.includes(\".\");\n}\n\nfunction buildHostnameFromIdAndRegion(host: string, region: string | undefined) {\n return host + PRE_REGION_HOST_PATTERN + region + POST_REGION_HOST_PATTERN;\n}\n\nasync function getToken(signer: DsqlSigner, username: string): Promise<string> {\n if (username === ADMIN) {\n return await signer.getDbConnectAdminAuthToken();\n } else {\n return await signer.getDbConnectAuthToken();\n }\n}\n\nexport interface AuroraDSQLConfig<T extends Record<string, PostgresType<T>>> extends Omit<postgres.Options<T>, 'password' | 'pass'> {\n\n region?: string;\n\n profile?: string;\n\n tokenDurationSecs?: number;\n\n customCredentialsProvider?: AwsCredentialIdentity | AwsCredentialIdentityProvider;\n\n}"],"mappings":";;;;AAQA,MAAM,QAAQ;AACd,MAAM,mBAAmB;AACzB,MAAM,iBAAiB;AAEvB,MAAM,0BAA0B;AAChC,MAAM,2BAA2B;AAsBjC,SAAgB,mBACZ,cACA,SAMD;CAEC,IAAIA;CACJ,IAAIC;CACJ,IAAIC;CACJ,IAAIC;CACJ,IAAIC;AACJ,KAAI,OAAO,iBAAiB,UAAU;EAElC,IAAI,gBAAgB,sBAAsB,aAAa;AACvD,SAAO,SAAS,YAAY,SAAS,QAAQ,cAAc,QAAQ,QAAQ,IAAI;AAC/E,aAAW,SAAS,YAAY,SAAS,QAAQ,cAAc,YAAa,QAAQ,IAAI,cAAc,QAAQ,IAAI,QAAQ;AAC1H,aAAW,SAAS,YAAY,SAAS,MAAM,cAAc,YAAY,QAAQ,IAAI;AACrF,QAAM,SAAS,OAAO,cAAc;AACpC,SAAO,EAAC,GAAG,SAAS;QACjB;AAEH,SAAO,cAAc,YAAY,cAAc,QAAQ,QAAQ,IAAI;AACnE,aAAW,cAAc,YAAY,cAAc,QAAQ,QAAQ,IAAI,cAAc,QAAQ,IAAI,QAAQ;AACzG,aAAW,cAAc,YAAY,cAAc,MAAM,QAAQ,IAAI;AACrE,QAAM,cAAc;AACpB,SAAO,EAAC,GAAG,cAAc;;AAE7B,KAAI,MAAM,QAAQ,KAAK,CACnB,OAAM,IAAI,MAAM,8DAA8D;CAElF,IAAI,SAAS,KAAK,UAAU,oBAAoB,KAAK;AACrD,KAAI,YAAY,KAAK,EAAE;AACnB,SAAO,6BAA6B,MAAM,OAAO;AACjD,OAAK,OAAO;;CAEhB,IAAIC,eAAiC;EACjC,UAAU;EACV,QAAQ,KAAK,UAAU,oBAAoB,KAAK;EAChD,WAAW,KAAK,qBAAqB,KAAK,oBAAoB,QAAQ,IAAI,oBAAoB,SAAS,QAAQ,IAAI,kBAAkB,GAAG,WAAc;EACtJ,SAAS,KAAK,WAAW,QAAQ,IAAI,eAAe;EACvD;AACD,KAAI,KAAK,0BACL,cAAa,cAAc,KAAK;CAEpC,IAAI,SAAS,IAAI,WAAW,aAAa;AACzC,KAAI,CAAC,SAAU,MAAK,WAAW;AAC/B,KAAI,CAAC,IAAK,MAAK,MAAM;CACrB,MAAMC,eAAoC;EACtC,GAAG;EACH,YAAY,SAAS,QAAQ,SAAS;EACzC;AACD,QAAO,OAAO,iBAAiB,WAAW,SAAS,cAAc,aAAa,GAAG,SAAS,aAAa;;AAG3G,SAAS,sBAAsB,KAK7B;CACE,IAAI,aAAa,UAAU,IAAI;CAC/B,MAAM,SAAS,IAAI,IAAI,WAAW;AAGlC,KAAI,OAAO,UAAU,SAAS,IAAI,CAC9B,OAAM,IAAI,MAAM,kEAAkE;AAGtF,QAAO;EACH,UAAU,OAAO;EACjB,MAAM,OAAO;EACb,UAAU,OAAO,UAAU,MAAM,EAAE;EACnC,KAAK,OAAO,aAAa,IAAI,MAAM,IAAI,OAAO,aAAa,IAAI,UAAU,IAAI;EAChF;;AAGL,SAAS,oBAAoB,MAAkC;AAC3D,KAAI,CAAC,KACD,OAAM,IAAI,MAAM,uCAAuC;CAG3D,MAAM,QAAQ,KAAK,MAAM,kGAAkG;AAC3H,KAAI,OAAO,OACP,QAAO,MAAM,OAAO;AAExB,OAAM,IAAI,MAAM,yCAAyC,OAAO;;AAGpE,SAAS,YAAY,MAAc;AAC/B,QAAO,CAAC,KAAK,SAAS,IAAI;;AAG9B,SAAS,6BAA6B,MAAc,QAA4B;AAC5E,QAAO,OAAO,0BAA0B,SAAS;;AAGrD,eAAe,SAAS,QAAoB,UAAmC;AAC3E,KAAI,aAAa,MACb,QAAO,MAAM,OAAO,4BAA4B;KAEhD,QAAO,MAAM,OAAO,uBAAuB"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@aws/aurora-dsql-postgresjs-connector",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "An AWS Aurora DSQL connector with IAM authentication for Postgres.js",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
7
7
  "type": "git",
8
- "url": "https://github.com/awslabs/aurora-dsql-nodejs-connector"
8
+ "url": "git+https://github.com/awslabs/aurora-dsql-nodejs-connector.git"
9
9
  },
10
10
  "homepage": "https://github.com/awslabs/aurora-dsql-nodejs-connector",
11
11
  "keywords": ["aws", "aurora", "dsql", "postgres", "database", "iam", "authentication"],
@@ -13,18 +13,35 @@
13
13
  "access": "public"
14
14
  },
15
15
  "type": "module",
16
- "main": "./dist/index.js",
17
- "types": "./dist/index.d.ts",
16
+ "main": "./dist/index.cjs",
17
+ "module": "./dist/index.mjs",
18
+ "types": "./dist/index.d.mts",
19
+ "exports": {
20
+ ".": {
21
+ "import": {
22
+ "types": "./dist/index.d.mts",
23
+ "default": "./dist/index.mjs"
24
+ },
25
+ "require": {
26
+ "types": "./dist/index.d.cts",
27
+ "default": "./dist/index.cjs"
28
+ }
29
+ }
30
+ },
18
31
  "scripts": {
19
- "build": "tsc",
20
- "test": "jest",
21
- "test:unit": "jest --testPathIgnorePatterns=test/integration",
22
- "test:integration": "jest test/integration",
23
- "test:all": "jest",
32
+ "clean": "rm -rf dist/ node_modules/",
33
+ "build": "npm run build:dev",
34
+ "build:dev": "npm run check:types && tsdown \"src/**/*.ts\" --sourcemap --no-publint --no-attw",
35
+ "build:prod": "npm run check:types && tsdown",
36
+ "test": "npm run test:unit && npm run test:integration",
37
+ "test:unit": "jest --testPathIgnorePatterns=integration",
38
+ "test:integration": "NODE_OPTIONS='--experimental-vm-modules' jest --testPathPatterns=integration",
24
39
  "test:watch": "jest --watch",
25
- "dev": "tsc --watch",
26
40
  "lint": "eslint src/**/*.ts test/**/*.ts",
27
- "lint:fix": "eslint src/**/*.ts test/**/*.ts --fix"
41
+ "lint:fix": "eslint src/**/*.ts test/**/*.ts --fix",
42
+ "check": "npm run check:types && npm run check:deps && npm run lint",
43
+ "check:types": "tsc --noEmit",
44
+ "check:deps": "depcheck --ignores='@types/*,ts-jest,tsx'"
28
45
  },
29
46
  "files": [
30
47
  "dist/",
@@ -32,22 +49,29 @@
32
49
  ],
33
50
  "dependencies": {
34
51
  "@aws-sdk/credential-providers": "^3.901.0",
35
- "@aws-sdk/dsql-signer": "^3.940.0"
52
+ "@aws-sdk/dsql-signer": "^3.940.0",
53
+ "@aws-sdk/types": "^3.901.0"
36
54
  },
37
55
  "peerDependencies": {
38
56
  "postgres": "^3.4.7"
39
57
  },
40
58
  "devDependencies": {
59
+ "@arethetypeswrong/core": "^0.18.2",
41
60
  "@eslint/js": "^9.37.0",
42
- "@types/jest": "^29.5.14",
43
- "@types/node": "^20.19.25",
61
+ "@jest/globals": "^30.2.0",
62
+ "@types/jest": "^30.0.0",
63
+ "@types/node": "^25.0.0",
44
64
  "@typescript-eslint/eslint-plugin": "^8.48.0",
45
65
  "@typescript-eslint/parser": "^8.48.0",
66
+ "depcheck": "^1.4.7",
46
67
  "eslint": "^9.39.1",
47
68
  "eslint-plugin-header": "^3.1.1",
48
- "jest": "^29.7.0",
69
+ "eslint-plugin-import-x": "^4.16.1",
70
+ "jest": "^30.2.0",
49
71
  "postgres": "^3.4.7",
72
+ "publint": "^0.3.16",
50
73
  "ts-jest": "^29.4.5",
74
+ "tsdown": "^0.18.0",
51
75
  "typescript": "^5.9.3"
52
76
  }
53
77
  }
package/dist/client.d.ts DELETED
@@ -1,21 +0,0 @@
1
- import postgres, { PostgresType } from "postgres";
2
- import { AwsCredentialIdentity, AwsCredentialIdentityProvider } from "@aws-sdk/types";
3
- export declare function auroraDSQLPostgres<T extends Record<string, postgres.PostgresType> = {}>(url: string, options?: AuroraDSQLConfig<T>): postgres.Sql<Record<string, postgres.PostgresType> extends T ? {} : {
4
- [type in keyof T]: T[type] extends {
5
- serialize: (value: infer R) => any;
6
- parse: (raw: any) => infer R;
7
- } ? R : never;
8
- }>;
9
- export declare function auroraDSQLPostgres<T extends Record<string, postgres.PostgresType> = {}>(options: AuroraDSQLConfig<T>): postgres.Sql<Record<string, postgres.PostgresType> extends T ? {} : {
10
- [type in keyof T]: T[type] extends {
11
- serialize: (value: infer R) => any;
12
- parse: (raw: any) => infer R;
13
- } ? R : never;
14
- }>;
15
- export interface AuroraDSQLConfig<T extends Record<string, PostgresType<T>>> extends Omit<postgres.Options<T>, 'password' | 'pass'> {
16
- region?: string;
17
- profile?: string;
18
- tokenDurationSecs?: number;
19
- customCredentialsProvider?: AwsCredentialIdentity | AwsCredentialIdentityProvider;
20
- }
21
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAIA,OAAO,QAAQ,EAAE,EAAC,YAAY,EAAC,MAAM,UAAU,CAAC;AAChD,OAAO,EAAC,qBAAqB,EAAE,6BAA6B,EAAC,MAAM,gBAAgB,CAAC;AAWpF,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,EACnF,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAC9B,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG;KAClE,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;QAC/B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,GAAG,CAAC;QACnC,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,CAAA;KAC/B,GAAG,CAAC,GAAG,KAAK;CAChB,CAAC,CAAC;AAEH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,EACnF,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAC7B,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG;KAClE,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;QAC/B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,GAAG,CAAC;QACnC,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,CAAA;KAC/B,GAAG,CAAC,GAAG,KAAK;CAChB,CAAC,CAAC;AA8GH,MAAM,WAAW,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAE,SAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAE/H,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,yBAAyB,CAAC,EAAE,qBAAqB,GAAG,6BAA6B,CAAC;CAErF"}
package/dist/client.js DELETED
@@ -1,103 +0,0 @@
1
- /*
2
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
- * SPDX-License-Identifier: Apache-2.0
4
- */
5
- import postgres from "postgres";
6
- import { DsqlSigner } from "@aws-sdk/dsql-signer";
7
- const ADMIN = "admin";
8
- const DEFAULT_DATABASE = "postgres";
9
- const DEFAULT_EXPIRY = 30; // Based on default Postgres.js connect_timeout
10
- // String components of a DSQL hostname, <Cluster ID>.dsql.<region>.on.aws
11
- const PRE_REGION_HOST_PATTERN = ".dsql.";
12
- const POST_REGION_HOST_PATTERN = ".on.aws";
13
- export function auroraDSQLPostgres(urlOrOptions, options) {
14
- /* eslint-enable @typescript-eslint/no-explicit-any */
15
- let opts;
16
- let host;
17
- let username;
18
- let database;
19
- let ssl;
20
- if (typeof urlOrOptions === 'string') {
21
- // Called with (url, options)
22
- let parsedOptions = parseConnectionString(urlOrOptions);
23
- host = options?.hostname || options?.host || parsedOptions.host || process.env.PGHOST;
24
- username = options?.username || options?.user || parsedOptions.username || process.env.PGUSERNAME || process.env.USER || ADMIN;
25
- database = options?.database || options?.db || parsedOptions.database || process.env.PGDATABASE;
26
- ssl = options?.ssl || parsedOptions.ssl;
27
- opts = { ...options };
28
- }
29
- else {
30
- // Called with (options) only
31
- host = urlOrOptions?.hostname || urlOrOptions?.host || process.env.PGHOST;
32
- username = urlOrOptions?.username || urlOrOptions?.user || process.env.PGUSERNAME || process.env.USER || ADMIN;
33
- database = urlOrOptions?.database || urlOrOptions?.db || process.env.PGDATABASE;
34
- ssl = urlOrOptions?.ssl;
35
- opts = { ...urlOrOptions };
36
- }
37
- if (Array.isArray(host)) {
38
- throw new Error('Multi-host configurations are not supported for Aurora DSQL');
39
- }
40
- let region = opts.region || parseRegionFromHost(host);
41
- if (isClusterID(host)) {
42
- host = buildHostnameFromIdAndRegion(host, region);
43
- opts.host = host;
44
- }
45
- let signerConfig = {
46
- hostname: host,
47
- region: opts.region || parseRegionFromHost(host),
48
- expiresIn: opts.tokenDurationSecs ?? opts.connect_timeout ?? (process.env.PGCONNECT_TIMEOUT ? parseInt(process.env.PGCONNECT_TIMEOUT) : undefined) ?? DEFAULT_EXPIRY,
49
- profile: opts.profile || process.env.AWS_PROFILE || "default",
50
- };
51
- if (opts.customCredentialsProvider) {
52
- signerConfig.credentials = opts.customCredentialsProvider;
53
- }
54
- let signer = new DsqlSigner(signerConfig);
55
- if (!database)
56
- opts.database = DEFAULT_DATABASE;
57
- if (!ssl)
58
- opts.ssl = true;
59
- const postgresOpts = {
60
- ...opts,
61
- pass: () => getToken(signer, username),
62
- };
63
- return typeof urlOrOptions === 'string' ? postgres(urlOrOptions, postgresOpts) : postgres(postgresOpts);
64
- }
65
- function parseConnectionString(url) {
66
- let decodedUrl = decodeURI(url);
67
- const parsed = new URL(decodedUrl);
68
- // Check for multi-host
69
- if (parsed.hostname?.includes(',')) {
70
- throw new Error('Multi-host connection strings are not supported for Aurora DSQL');
71
- }
72
- return {
73
- username: parsed.username,
74
- host: parsed.hostname,
75
- database: parsed.pathname?.slice(1),
76
- ssl: parsed.searchParams.get("ssl") || parsed.searchParams.get("sslmode") || undefined,
77
- };
78
- }
79
- function parseRegionFromHost(host) {
80
- if (!host) {
81
- throw new Error("Hostname is required to parse region");
82
- }
83
- const match = host.match(/^(?<instance>[^.]+)\.(?<dns>dsql(?:-[^.]+)?)\.(?<domain>(?<region>[a-zA-Z0-9-]+)\.on\.aws\.?)$/i);
84
- if (match?.groups) {
85
- return match.groups.region;
86
- }
87
- throw new Error(`Unable to parse region from hostname: ${host}`);
88
- }
89
- function isClusterID(host) {
90
- return !host.includes(".");
91
- }
92
- function buildHostnameFromIdAndRegion(host, region) {
93
- return host + PRE_REGION_HOST_PATTERN + region + POST_REGION_HOST_PATTERN;
94
- }
95
- async function getToken(signer, username) {
96
- if (username === ADMIN) {
97
- return await signer.getDbConnectAdminAuthToken();
98
- }
99
- else {
100
- return await signer.getDbConnectAuthToken();
101
- }
102
- }
103
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export { auroraDSQLPostgres } from './client.js';
2
- export type { AuroraDSQLConfig } from './client.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC"}
package/dist/index.js DELETED
@@ -1,6 +0,0 @@
1
- /*
2
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
- * SPDX-License-Identifier: Apache-2.0
4
- */
5
- export { auroraDSQLPostgres } from './client.js';
6
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAC"}