@memberjunction/external-data-sources 6.2.0-edge.0 → 6.2.0-edge.1

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.
@@ -29,7 +29,7 @@ export declare abstract class BaseExternalDataSourceDriver<TConnection = unknown
29
29
  CloseConnection(dataSourceId: string): Promise<void>;
30
30
  protected withConnectionRetry<T>(dataSource: MJExternalDataSourceEntity, op: () => Promise<T>): Promise<T>;
31
31
  protected isAuthError(e: unknown): boolean;
32
- private static readonly AuthErrorCodes;
32
+ private static readonly authErrorCodes;
33
33
  private extractErrorCode;
34
34
  }
35
35
  //# sourceMappingURL=BaseExternalDataSourceDriver.d.ts.map
@@ -154,7 +154,7 @@ export class BaseExternalDataSourceDriver {
154
154
  }
155
155
  isAuthError(e) {
156
156
  const code = this.extractErrorCode(e);
157
- if (code && BaseExternalDataSourceDriver.AuthErrorCodes.has(code)) {
157
+ if (code && BaseExternalDataSourceDriver.authErrorCodes.has(code)) {
158
158
  return true;
159
159
  }
160
160
  const msg = (e instanceof Error ? e.message : String(e)).toLowerCase();
@@ -166,7 +166,7 @@ export class BaseExternalDataSourceDriver {
166
166
  msg.includes('28p01') ||
167
167
  msg.includes('28000'));
168
168
  }
169
- static { this.AuthErrorCodes = new Set([
169
+ static { this.authErrorCodes = new Set([
170
170
  '28P01', '28000', '1044', '1045', '1698', '4060', '18452', '18456', '18470', '1017', '1031',
171
171
  ]); }
172
172
  extractErrorCode(e) {
@@ -1,11 +1,11 @@
1
1
  import { BaseExternalDataSourceDriver } from "./BaseExternalDataSourceDriver.js";
2
- import { assertReadOnlyNativeQuery, assertReadOnlyClause } from "./sqlReadOnlyScreen.js";
2
+ import { AssertReadOnlyNativeQuery, AssertReadOnlyClause } from "./sqlReadOnlyScreen.js";
3
3
  export class BaseSqlExternalDataSourceDriver extends BaseExternalDataSourceDriver {
4
4
  sqlDialectKey() {
5
5
  return 'ansi';
6
6
  }
7
7
  screenReadOnlyNativeQuery(sql) {
8
- assertReadOnlyNativeQuery(this.normalizeForReadOnlyParse(sql), this.sqlDialectKey());
8
+ AssertReadOnlyNativeQuery(this.normalizeForReadOnlyParse(sql), this.sqlDialectKey());
9
9
  }
10
10
  normalizeForReadOnlyParse(sql) {
11
11
  return sql;
@@ -23,7 +23,7 @@ export class BaseSqlExternalDataSourceDriver extends BaseExternalDataSourceDrive
23
23
  return { clause: parts.join(" AND "), values };
24
24
  }
25
25
  screenReadOnlyClause(clause, kind) {
26
- assertReadOnlyClause(clause, this.sqlDialectKey(), kind);
26
+ AssertReadOnlyClause(clause, this.sqlDialectKey(), kind);
27
27
  }
28
28
  selectTopClause(_params) {
29
29
  return '';
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { RegisterClass } from "@memberjunction/global";
8
8
  import { ExternalDataSourceReadRouter, } from "@memberjunction/core";
9
9
  import { ExternalDataSourceRouter } from "./ExternalDataSourceRouter.js";
10
- import { redactConnectionSecrets } from "./types.js";
10
+ import { RedactConnectionSecrets } from "./types.js";
11
11
  const DEFAULT_EXTERNAL_CACHE_TTL_SECONDS = 300;
12
12
  const DEFAULT_EXTERNAL_MAX_ROWS = 1000;
13
13
  const HARD_MAX_EXTERNAL_ROWS = 50_000;
@@ -153,7 +153,7 @@ let ExternalDataSourceReadRouterImpl = class ExternalDataSourceReadRouterImpl ex
153
153
  };
154
154
  }
155
155
  errorText(e) {
156
- return redactConnectionSecrets(e instanceof Error ? e.message : String(e));
156
+ return RedactConnectionSecrets(e instanceof Error ? e.message : String(e));
157
157
  }
158
158
  };
159
159
  ExternalDataSourceReadRouterImpl = __decorate([
@@ -1,4 +1,6 @@
1
1
  export type SqlDialectKey = "sqlserver" | "ansi";
2
+ export declare function AssertReadOnlyNativeQuery(sql: string, dialectKey: SqlDialectKey): void;
2
3
  export declare function assertReadOnlyNativeQuery(sql: string, dialectKey: SqlDialectKey): void;
4
+ export declare function AssertReadOnlyClause(clause: string, dialectKey: SqlDialectKey, kind: "where" | "orderby"): void;
3
5
  export declare function assertReadOnlyClause(clause: string, dialectKey: SqlDialectKey, kind: "where" | "orderby"): void;
4
6
  //# sourceMappingURL=sqlReadOnlyScreen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlReadOnlyScreen.d.ts","sourceRoot":"","sources":["../src/sqlReadOnlyScreen.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,MAAM,CAAC;AA6EjD,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,GAAG,IAAI,CAqDtF;AAmBD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CA6B/G"}
1
+ {"version":3,"file":"sqlReadOnlyScreen.d.ts","sourceRoot":"","sources":["../src/sqlReadOnlyScreen.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,MAAM,CAAC;AA6EjD,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,GAAG,IAAI,CAqDtF;AAGD,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,GAAG,IAAI,CAEtF;AAmBD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CA6B/G;AAGD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAE/G"}
@@ -29,7 +29,7 @@ function isSingleTypedStatement(ast) {
29
29
  const stmt = statements[0];
30
30
  return !!stmt && typeof stmt === "object" && typeof stmt.type === "string";
31
31
  }
32
- export function assertReadOnlyNativeQuery(sql, dialectKey) {
32
+ export function AssertReadOnlyNativeQuery(sql, dialectKey) {
33
33
  const dialect = dialectFor(dialectKey);
34
34
  if (SQLParser.HasStackedStatements(sql, dialect)) {
35
35
  throw new Error("External native query rejected: multiple statements are not allowed against a read-only external data source.");
@@ -56,7 +56,10 @@ export function assertReadOnlyNativeQuery(sql, dialectKey) {
56
56
  throw new Error("External native query rejected: only a single, well-formed read statement is allowed — refusing under uncertainty (External Data Sources are read-only).");
57
57
  }
58
58
  }
59
- export function assertReadOnlyClause(clause, dialectKey, kind) {
59
+ export function assertReadOnlyNativeQuery(sql, dialectKey) {
60
+ return AssertReadOnlyNativeQuery(sql, dialectKey);
61
+ }
62
+ export function AssertReadOnlyClause(clause, dialectKey, kind) {
60
63
  if (/--|\/\*|\*\//.test(clause)) {
61
64
  throw new Error(`External ${kind} clause rejected: SQL comment markers are not allowed.`);
62
65
  }
@@ -72,4 +75,7 @@ export function assertReadOnlyClause(clause, dialectKey, kind) {
72
75
  throw new Error(`External ${kind} clause rejected: not a safe read-only ${kind} fragment — refusing under uncertainty.`);
73
76
  }
74
77
  }
78
+ export function assertReadOnlyClause(clause, dialectKey, kind) {
79
+ return AssertReadOnlyClause(clause, dialectKey, kind);
80
+ }
75
81
  //# sourceMappingURL=sqlReadOnlyScreen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlReadOnlyScreen.js","sourceRoot":"","sources":["../src/sqlReadOnlyScreen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlReadOnlyScreen.js","sourceRoot":"","sources":["../src/sqlReadOnlyScreen.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
1
  export declare const ISO_8601_DATETIME_RE: RegExp;
2
+ export declare function IsIso8601DateTime(value: string): boolean;
2
3
  export declare function isIso8601DateTime(value: string): boolean;
4
+ export declare function Iso8601Zone(value: string): string | null;
3
5
  export declare function iso8601Zone(value: string): string | null;
6
+ export declare function ParseIso8601AsUtc(value: string): Date | null;
4
7
  export declare function parseIso8601AsUtc(value: string): Date | null;
5
8
  //# sourceMappingURL=temporal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"temporal.d.ts","sourceRoot":"","sources":["../src/temporal.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,oBAAoB,QAA2E,CAAC;AAG7G,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAExD;AAGD,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGxD;AAQD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAO5D"}
1
+ {"version":3,"file":"temporal.d.ts","sourceRoot":"","sources":["../src/temporal.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,oBAAoB,QAA2E,CAAC;AAG7G,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAExD;AAGD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAExD;AAGD,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGxD;AAGD,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAExD;AAQD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAO5D;AAGD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAE5D"}
package/dist/temporal.js CHANGED
@@ -1,17 +1,26 @@
1
1
  export const ISO_8601_DATETIME_RE = /^(\d{4}-\d{2}-\d{2})T(\d{2}:\d{2}:\d{2})(\.\d+)?(Z|[+-]\d{2}:?\d{2})?$/;
2
- export function isIso8601DateTime(value) {
2
+ export function IsIso8601DateTime(value) {
3
3
  return ISO_8601_DATETIME_RE.test(value);
4
4
  }
5
- export function iso8601Zone(value) {
5
+ export function isIso8601DateTime(value) {
6
+ return IsIso8601DateTime(value);
7
+ }
8
+ export function Iso8601Zone(value) {
6
9
  const m = ISO_8601_DATETIME_RE.exec(value);
7
10
  return m ? (m[4] ?? null) : null;
8
11
  }
9
- export function parseIso8601AsUtc(value) {
10
- if (!isIso8601DateTime(value)) {
12
+ export function iso8601Zone(value) {
13
+ return Iso8601Zone(value);
14
+ }
15
+ export function ParseIso8601AsUtc(value) {
16
+ if (!IsIso8601DateTime(value)) {
11
17
  return null;
12
18
  }
13
- const normalized = iso8601Zone(value) ? value : `${value}Z`;
19
+ const normalized = Iso8601Zone(value) ? value : `${value}Z`;
14
20
  const d = new Date(normalized);
15
21
  return Number.isNaN(d.getTime()) ? null : d;
16
22
  }
23
+ export function parseIso8601AsUtc(value) {
24
+ return ParseIso8601AsUtc(value);
25
+ }
17
26
  //# sourceMappingURL=temporal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"temporal.js","sourceRoot":"","sources":["../src/temporal.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,oBAAoB,GAAG,wEAAwE,CAAC;AAG7G,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1C,CAAC;AAGD,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,MAAM,CAAC,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACnC,CAAC;AAQD,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;IAC5D,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"temporal.js","sourceRoot":"","sources":["../src/temporal.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,oBAAoB,GAAG,wEAAwE,CAAC;AAG7G,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1C,CAAC;AAGD,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAGD,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,MAAM,CAAC,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACnC,CAAC;AAGD,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AAQD,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;IAC5D,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC;AAGD,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC"}
package/dist/types.d.ts CHANGED
@@ -44,5 +44,6 @@ export interface ExternalQueryResult<TRow extends ExternalRow = ExternalRow> {
44
44
  errorMessage?: string;
45
45
  executionTimeMs: number;
46
46
  }
47
+ export declare function RedactConnectionSecrets(message: string): string;
47
48
  export declare function redactConnectionSecrets(message: string): string;
48
49
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAGlD,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,IAAI,CAAC;IAEf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD,MAAM,WAAW,kBAAkB;IAEjC,UAAU,EAAE,MAAM,CAAC;IAEnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAQjB,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAE1C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAShB,gBAAgB,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACrD;AAGD,MAAM,WAAW,kBAAkB,CAAC,IAAI,SAAS,WAAW,GAAG,WAAW;IACxE,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,IAAI,EAAE,CAAC;IAEb,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB;AAQD,MAAM,WAAW,aAAa;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAGD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;CAChD;AAGD,MAAM,WAAW,mBAAmB,CAAC,IAAI,SAAS,WAAW,GAAG,WAAW;IACzE,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,IAAI,EAAE,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB;AASD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE/D"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAGlD,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,IAAI,CAAC;IAEf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD,MAAM,WAAW,kBAAkB;IAEjC,UAAU,EAAE,MAAM,CAAC;IAEnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAQjB,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAE1C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAShB,gBAAgB,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACrD;AAGD,MAAM,WAAW,kBAAkB,CAAC,IAAI,SAAS,WAAW,GAAG,WAAW;IACxE,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,IAAI,EAAE,CAAC;IAEb,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB;AAQD,MAAM,WAAW,aAAa;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAGD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;CAChD;AAGD,MAAM,WAAW,mBAAmB,CAAC,IAAI,SAAS,WAAW,GAAG,WAAW;IACzE,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,IAAI,EAAE,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB;AASD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE/D;AAGD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE/D"}
package/dist/types.js CHANGED
@@ -1,4 +1,7 @@
1
- export function redactConnectionSecrets(message) {
1
+ export function RedactConnectionSecrets(message) {
2
2
  return message.replace(/([a-z][a-z0-9+.-]*:\/\/)[^@/\s]+@/gi, '$1***@');
3
3
  }
4
+ export function redactConnectionSecrets(message) {
5
+ return RedactConnectionSecrets(message);
6
+ }
4
7
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA6GA,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,OAAO,OAAO,CAAC,OAAO,CAAC,qCAAqC,EAAE,QAAQ,CAAC,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA6GA,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,OAAO,OAAO,CAAC,OAAO,CAAC,qCAAqC,EAAE,QAAQ,CAAC,CAAC;AAC1E,CAAC;AAGD,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,OAAO,uBAAuB,CAAC,OAAO,CAAC,CAAC;AAC1C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/external-data-sources",
3
- "version": "6.2.0-edge.0",
3
+ "version": "6.2.0-edge.1",
4
4
  "description": "MemberJunction: External Data Sources — live, runtime-proxied read access to remote data systems (Snowflake, Oracle, MongoDB, external SQL Server / PostgreSQL / MySQL) via pluggable @RegisterClass drivers.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -11,12 +11,12 @@
11
11
  "author": "MemberJunction.com",
12
12
  "license": "BUSL-1.1",
13
13
  "dependencies": {
14
- "@memberjunction/core": "6.2.0-edge.0",
15
- "@memberjunction/global": "6.2.0-edge.0",
16
- "@memberjunction/core-entities": "6.2.0-edge.0",
17
- "@memberjunction/credentials": "6.2.0-edge.0",
18
- "@memberjunction/sql-parser": "6.2.0-edge.0",
19
- "@memberjunction/sql-dialect": "6.2.0-edge.0"
14
+ "@memberjunction/core": "6.2.0-edge.1",
15
+ "@memberjunction/global": "6.2.0-edge.1",
16
+ "@memberjunction/core-entities": "6.2.0-edge.1",
17
+ "@memberjunction/credentials": "6.2.0-edge.1",
18
+ "@memberjunction/sql-parser": "6.2.0-edge.1",
19
+ "@memberjunction/sql-dialect": "6.2.0-edge.1"
20
20
  },
21
21
  "devDependencies": {
22
22
  "@types/node": "24.10.11",