groundmail 0.14.5 → 0.14.7
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/authjs.d.ts +1 -1
- package/dist/authjs.js +1 -1
- package/dist/better-auth.d.ts +1 -1
- package/dist/better-auth.js +1 -1
- package/dist/{chunk-2ZKYDDVV.js → chunk-LKMNSXA3.js} +53 -0
- package/dist/clerk.d.ts +1 -1
- package/dist/clerk.js +1 -1
- package/dist/{client-BysKOdUg.d.ts → client-B4Gk87z2.d.ts} +138 -5
- package/dist/index.d.ts +2 -2
- package/dist/index.js +3 -1
- package/dist/payload.d.ts +1 -1
- package/dist/payload.js +1 -1
- package/package.json +2 -2
package/dist/authjs.d.ts
CHANGED
package/dist/authjs.js
CHANGED
package/dist/better-auth.d.ts
CHANGED
package/dist/better-auth.js
CHANGED
|
@@ -738,6 +738,57 @@ async function applyDnsRecords(input) {
|
|
|
738
738
|
};
|
|
739
739
|
}
|
|
740
740
|
|
|
741
|
+
// src/migrations.ts
|
|
742
|
+
function mergeMigrations(previous, next) {
|
|
743
|
+
if (!previous || previous.id !== next.id) return next;
|
|
744
|
+
const merged = {
|
|
745
|
+
...next,
|
|
746
|
+
errors: [...previous.errors, ...next.errors],
|
|
747
|
+
notes: [.../* @__PURE__ */ new Set([...previous.notes, ...next.notes])]
|
|
748
|
+
};
|
|
749
|
+
if (next.domains) merged.domains = { totals: next.domains.totals, items: [...previous.domains?.items ?? [], ...next.domains.items] };
|
|
750
|
+
if (next.webhooks) merged.webhooks = { totals: next.webhooks.totals, items: [...previous.webhooks?.items ?? [], ...next.webhooks.items] };
|
|
751
|
+
if (next.templates) merged.templates = { totals: next.templates.totals, items: [...previous.templates?.items ?? [], ...next.templates.items] };
|
|
752
|
+
if (next.suppressions) {
|
|
753
|
+
const reasons = { ...previous.suppressions?.skipped_reasons ?? {} };
|
|
754
|
+
for (const [reason, count] of Object.entries(next.suppressions.skipped_reasons)) {
|
|
755
|
+
reasons[reason] = (reasons[reason] ?? 0) + count;
|
|
756
|
+
}
|
|
757
|
+
merged.suppressions = {
|
|
758
|
+
totals: next.suppressions.totals,
|
|
759
|
+
skipped_reasons: reasons,
|
|
760
|
+
estimated: Boolean(previous.suppressions?.estimated) || next.suppressions.estimated
|
|
761
|
+
};
|
|
762
|
+
}
|
|
763
|
+
return merged;
|
|
764
|
+
}
|
|
765
|
+
var MigrationsResource = class {
|
|
766
|
+
constructor(client) {
|
|
767
|
+
this.client = client;
|
|
768
|
+
}
|
|
769
|
+
/** One request (about 40 seconds of work). Continue with `cursor` while `has_more`. */
|
|
770
|
+
async create(params) {
|
|
771
|
+
return this.client.request("/migrations", {
|
|
772
|
+
method: "POST",
|
|
773
|
+
body: JSON.stringify(params)
|
|
774
|
+
});
|
|
775
|
+
}
|
|
776
|
+
/** The whole import: follows `next_cursor` until done and returns the combined report. */
|
|
777
|
+
async run(params, options = {}) {
|
|
778
|
+
const sleep = options.sleep ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));
|
|
779
|
+
let merged = null;
|
|
780
|
+
let cursor = params.cursor;
|
|
781
|
+
for (; ; ) {
|
|
782
|
+
const { migration } = await this.create({ ...params, ...cursor ? { cursor } : {} });
|
|
783
|
+
merged = mergeMigrations(merged, migration);
|
|
784
|
+
options.onProgress?.(merged);
|
|
785
|
+
if (!merged.has_more || !merged.next_cursor || options.signal?.aborted) return merged;
|
|
786
|
+
if (merged.retry_after_seconds) await sleep(merged.retry_after_seconds * 1e3);
|
|
787
|
+
cursor = merged.next_cursor;
|
|
788
|
+
}
|
|
789
|
+
}
|
|
790
|
+
};
|
|
791
|
+
|
|
741
792
|
// src/webhooks/verify.ts
|
|
742
793
|
import { createHmac, timingSafeEqual } from "crypto";
|
|
743
794
|
function signWebhookPayload(secret, payload, timestamp) {
|
|
@@ -1361,6 +1412,7 @@ var Groundmail = class {
|
|
|
1361
1412
|
this.smtpCredentials = new SmtpCredentialsResource(this);
|
|
1362
1413
|
this.suppressions = new SuppressionsResource(this);
|
|
1363
1414
|
this.templates = new TemplatesResource(this);
|
|
1415
|
+
this.migrations = new MigrationsResource(this);
|
|
1364
1416
|
}
|
|
1365
1417
|
get baseUrl() {
|
|
1366
1418
|
return (this.options.baseUrl || DEFAULT_API_BASE_URL).replace(/\/$/, "");
|
|
@@ -1389,6 +1441,7 @@ export {
|
|
|
1389
1441
|
GroundmailError,
|
|
1390
1442
|
mergeSpfInclude,
|
|
1391
1443
|
applyDnsRecords,
|
|
1444
|
+
mergeMigrations,
|
|
1392
1445
|
signWebhookPayload,
|
|
1393
1446
|
buildSignatureHeader,
|
|
1394
1447
|
verifyWebhookSignature,
|
package/dist/clerk.d.ts
CHANGED
package/dist/clerk.js
CHANGED
|
@@ -51,8 +51,12 @@ type SendEmailParams = {
|
|
|
51
51
|
idempotencyKey?: string;
|
|
52
52
|
/** Opt in to managed unsubscribe for this send. */
|
|
53
53
|
unsubscribe?: boolean;
|
|
54
|
-
/**
|
|
55
|
-
|
|
54
|
+
/**
|
|
55
|
+
* Optional category override. `product` (onboarding, lifecycle, notifications)
|
|
56
|
+
* honours category opt-outs and is sent from a separate IP pool. `newsletter`
|
|
57
|
+
* is not accepted: Groundmail is for transactional and product email.
|
|
58
|
+
*/
|
|
59
|
+
category?: 'transactional' | 'product';
|
|
56
60
|
};
|
|
57
61
|
type SendEmailResult = {
|
|
58
62
|
id: string;
|
|
@@ -550,7 +554,7 @@ type CreateTemplateParams = {
|
|
|
550
554
|
alias?: string;
|
|
551
555
|
variables?: string[];
|
|
552
556
|
unsubscribe_enabled?: boolean;
|
|
553
|
-
category?: 'transactional' | 'product'
|
|
557
|
+
category?: 'transactional' | 'product';
|
|
554
558
|
};
|
|
555
559
|
type TemplateStarter = {
|
|
556
560
|
alias: string;
|
|
@@ -575,7 +579,7 @@ type UpdateTemplateParams = {
|
|
|
575
579
|
alias?: string | null;
|
|
576
580
|
variables?: string[] | null;
|
|
577
581
|
unsubscribe_enabled?: boolean;
|
|
578
|
-
category?: 'transactional' | 'product' |
|
|
582
|
+
category?: 'transactional' | 'product' | null;
|
|
579
583
|
};
|
|
580
584
|
type GroundmailOptions = {
|
|
581
585
|
baseUrl?: string;
|
|
@@ -769,6 +773,116 @@ type ApiErrorBody = {
|
|
|
769
773
|
} & Omit<ApiErrorFields, 'message'> & {
|
|
770
774
|
message?: string;
|
|
771
775
|
};
|
|
776
|
+
/** Providers the importer reads from (Beta). */
|
|
777
|
+
type MigrationProvider = 'sendgrid' | 'postmark' | 'mailgun';
|
|
778
|
+
type MigrationResource = 'domains' | 'webhooks' | 'templates' | 'suppressions';
|
|
779
|
+
type MigrationItemStatus = 'imported' | 'would_import' | 'needs_attention' | 'skipped' | 'failed';
|
|
780
|
+
type CreateMigrationParams = {
|
|
781
|
+
provider: MigrationProvider;
|
|
782
|
+
/** SendGrid API key, Postmark server token or Mailgun private key. Used for the import only; never stored. */
|
|
783
|
+
api_key: string;
|
|
784
|
+
/** Postmark only: the account token, needed to import sending domains. */
|
|
785
|
+
account_api_key?: string;
|
|
786
|
+
/** SendGrid and Mailgun: `eu` for EU-region accounts. */
|
|
787
|
+
region?: 'us' | 'eu';
|
|
788
|
+
/** What to import; all four by default. */
|
|
789
|
+
resources?: MigrationResource[];
|
|
790
|
+
/** Preview without writing anything. */
|
|
791
|
+
dry_run?: boolean;
|
|
792
|
+
/** `next_cursor` from the previous response, to continue. */
|
|
793
|
+
cursor?: string;
|
|
794
|
+
};
|
|
795
|
+
type MigrationTotals = Record<string, number>;
|
|
796
|
+
type MigrationDomainItem = {
|
|
797
|
+
name: string;
|
|
798
|
+
status: MigrationItemStatus;
|
|
799
|
+
domain_id: string | null;
|
|
800
|
+
verified_at_source: boolean | null;
|
|
801
|
+
records: Array<{
|
|
802
|
+
type: string;
|
|
803
|
+
host: string;
|
|
804
|
+
value: string;
|
|
805
|
+
purpose: string;
|
|
806
|
+
}>;
|
|
807
|
+
dashboard_url: string | null;
|
|
808
|
+
message: string | null;
|
|
809
|
+
};
|
|
810
|
+
type MigrationWebhookItem = {
|
|
811
|
+
url: string;
|
|
812
|
+
status: MigrationItemStatus;
|
|
813
|
+
webhook_id: string | null;
|
|
814
|
+
/** Signing secret of a webhook created by this request (shown once). */
|
|
815
|
+
secret: string | null;
|
|
816
|
+
enabled: boolean;
|
|
817
|
+
source_events: string[];
|
|
818
|
+
events: string[];
|
|
819
|
+
unmapped_events: string[];
|
|
820
|
+
message: string | null;
|
|
821
|
+
};
|
|
822
|
+
type MigrationTemplateItem = {
|
|
823
|
+
source_id: string;
|
|
824
|
+
name: string;
|
|
825
|
+
status: MigrationItemStatus;
|
|
826
|
+
template_id: string | null;
|
|
827
|
+
alias: string | null;
|
|
828
|
+
published: boolean;
|
|
829
|
+
variables: string[];
|
|
830
|
+
notes: string[];
|
|
831
|
+
message: string | null;
|
|
832
|
+
};
|
|
833
|
+
type Migration = {
|
|
834
|
+
id: string;
|
|
835
|
+
provider: MigrationProvider;
|
|
836
|
+
dry_run: boolean;
|
|
837
|
+
status: 'in_progress' | 'completed' | 'partial' | 'failed';
|
|
838
|
+
started_at: string;
|
|
839
|
+
resources: MigrationResource[];
|
|
840
|
+
has_more: boolean;
|
|
841
|
+
next_cursor: string | null;
|
|
842
|
+
retry_after_seconds: number | null;
|
|
843
|
+
domains?: {
|
|
844
|
+
totals: MigrationTotals;
|
|
845
|
+
items: MigrationDomainItem[];
|
|
846
|
+
};
|
|
847
|
+
webhooks?: {
|
|
848
|
+
totals: MigrationTotals;
|
|
849
|
+
items: MigrationWebhookItem[];
|
|
850
|
+
};
|
|
851
|
+
templates?: {
|
|
852
|
+
totals: MigrationTotals;
|
|
853
|
+
items: MigrationTemplateItem[];
|
|
854
|
+
};
|
|
855
|
+
suppressions?: {
|
|
856
|
+
totals: MigrationTotals;
|
|
857
|
+
skipped_reasons: Record<string, number>;
|
|
858
|
+
estimated: boolean;
|
|
859
|
+
};
|
|
860
|
+
errors: Array<{
|
|
861
|
+
resource: MigrationResource;
|
|
862
|
+
code: string;
|
|
863
|
+
message: string;
|
|
864
|
+
}>;
|
|
865
|
+
notes: string[];
|
|
866
|
+
attention: string[];
|
|
867
|
+
template_map: Array<{
|
|
868
|
+
source_id: string;
|
|
869
|
+
alias: string;
|
|
870
|
+
}>;
|
|
871
|
+
code_changes: Array<{
|
|
872
|
+
stack: 'node' | 'python' | 'curl';
|
|
873
|
+
label: string;
|
|
874
|
+
diff: string;
|
|
875
|
+
}> | null;
|
|
876
|
+
agent_prompt: string | null;
|
|
877
|
+
};
|
|
878
|
+
type RunMigrationOptions = {
|
|
879
|
+
/** Called after each request with the report so far. */
|
|
880
|
+
onProgress?: (migration: Migration) => void;
|
|
881
|
+
/** Stop between requests; what was imported stays. */
|
|
882
|
+
signal?: AbortSignal;
|
|
883
|
+
/** Waits for `retry_after_seconds` (tests can pass a no-op). */
|
|
884
|
+
sleep?: (ms: number) => Promise<void>;
|
|
885
|
+
};
|
|
772
886
|
|
|
773
887
|
declare class AutomationsResource {
|
|
774
888
|
private readonly client;
|
|
@@ -863,6 +977,23 @@ declare class KeysResource {
|
|
|
863
977
|
}>;
|
|
864
978
|
}
|
|
865
979
|
|
|
980
|
+
/** Combine the reports of one import's requests: every item, the latest totals. */
|
|
981
|
+
declare function mergeMigrations(previous: Migration | null, next: Migration): Migration;
|
|
982
|
+
/**
|
|
983
|
+
* Import templates, suppressions, domains and webhooks from SendGrid, Postmark
|
|
984
|
+
* or Mailgun (Beta). The provider key is sent with each request and never stored.
|
|
985
|
+
*/
|
|
986
|
+
declare class MigrationsResource {
|
|
987
|
+
private readonly client;
|
|
988
|
+
constructor(client: Groundmail);
|
|
989
|
+
/** One request (about 40 seconds of work). Continue with `cursor` while `has_more`. */
|
|
990
|
+
create(params: CreateMigrationParams): Promise<{
|
|
991
|
+
migration: Migration;
|
|
992
|
+
}>;
|
|
993
|
+
/** The whole import: follows `next_cursor` until done and returns the combined report. */
|
|
994
|
+
run(params: CreateMigrationParams, options?: RunMigrationOptions): Promise<Migration>;
|
|
995
|
+
}
|
|
996
|
+
|
|
866
997
|
declare class SmtpCredentialsResource {
|
|
867
998
|
private readonly client;
|
|
868
999
|
constructor(client: Groundmail);
|
|
@@ -979,10 +1110,12 @@ declare class Groundmail {
|
|
|
979
1110
|
readonly smtpCredentials: SmtpCredentialsResource;
|
|
980
1111
|
readonly suppressions: SuppressionsResource;
|
|
981
1112
|
readonly templates: TemplatesResource;
|
|
1113
|
+
/** Import from SendGrid, Postmark or Mailgun (Beta). */
|
|
1114
|
+
readonly migrations: MigrationsResource;
|
|
982
1115
|
constructor(apiKey: string, options?: GroundmailOptions);
|
|
983
1116
|
get baseUrl(): string;
|
|
984
1117
|
get fetchImpl(): typeof fetch;
|
|
985
1118
|
request<T>(path: string, init: RequestInit): Promise<T>;
|
|
986
1119
|
}
|
|
987
1120
|
|
|
988
|
-
export { type
|
|
1121
|
+
export { type EventRecord as $, type ApiErrorBody as A, type BatchSendEmailResult as B, type CategoryUnsubscribedErrorDetails as C, type DnsRecord as D, type CreateTemplateParams as E, type CreateWebhookParams as F, Groundmail as G, DEFAULT_API_BASE_URL as H, type DeliverabilityBucket as I, type DeliverabilityDomainInsight as J, type DeliverabilityInsightsResult as K, type DeliverabilityMailServerRelay as L, type DeliverabilityWindow as M, type DnsProviderName as N, type Domain as O, type DomainBimiAnalysis as P, type DomainDetailResult as Q, type DomainDmarcAnalysis as R, type SendEmailResult as S, type DomainDnsAnalysis as T, type DomainStatus as U, type DomainTlsMode as V, type DomainTrackingDns as W, type DomainTrackingStatus as X, type EmailListItem as Y, type EmailWebhookEventType as Z, type EnrollmentSkip as _, type ApiErrorCode as a, type GroundmailOptions as a0, type ListApiKeysParams as a1, type ListApiKeysResult as a2, type ListAutomationRunsParams as a3, type ListAutomationRunsResult as a4, type ListAutomationsResult as a5, type ListDomainsParams as a6, type ListDomainsResult as a7, type ListEmailsParams as a8, type ListEmailsResult as a9, type TemplateStarter as aA, type TemplateStatus as aB, type TemplateVersion as aC, type TestEmailWebhookParams as aD, type TestEmailWebhookResult as aE, type TriggerEventParams as aF, type TriggerEventResult as aG, type TwilioIntegrationResponse as aH, type TwilioIntegrationStatus as aI, type UpdateAutomationParams as aJ, type UpdateDomainParams as aK, type UpdateEmailParams as aL, type UpdateTemplateParams as aM, type UpdateWebhookParams as aN, type VerifyDomainResult as aO, type WebhookEndpoint as aP, type WebhookEndpointWithSecret as aQ, type WebhookEventType as aR, mergeMigrations as aS, type ListReceivedEmailsParams as aa, type ListReceivedEmailsResult as ab, type ListSuppressionsParams as ac, type ListSuppressionsResult as ad, type ListTemplatesParams as ae, type ListTemplatesResult as af, type MailServerSigningStatus as ag, type Migration as ah, type MigrationDomainItem as ai, type MigrationItemStatus as aj, type MigrationProvider as ak, type MigrationResource as al, type MigrationTemplateItem as am, type MigrationTotals as an, type MigrationWebhookItem as ao, type ReceivedEmail as ap, type ReceivedEmailAttachment as aq, type ReceivedEmailAttachmentMeta as ar, type RemoteApplyDnsCredentials as as, type RunMigrationOptions as at, type SendEmailParams as au, type SuppressedErrorDetails as av, type Suppression as aw, type Template as ax, type TemplateFormat as ay, type TemplateLintWarning as az, type ApiKey as b, type ApiKeyScope as c, type ApplyDnsParams as d, type ApplyDnsRecordResult as e, type ApplyDnsResult as f, type Asset as g, type Automation as h, type AutomationResult as i, type AutomationRun as j, type AutomationRunResponse as k, type AutomationRunStatus as l, type AutomationRunStep as m, type AutomationRunStepStatus as n, type AutomationStatus as o, type AutomationStep as p, type AutomationTrigger as q, type ConnectTwilioParams as r, type ContactWebhookEventPayload as s, type CreateApiKeyParams as t, type CreateApiKeyResult as u, type CreateAutomationParams as v, type CreateDomainParams as w, type CreateDomainResult as x, type CreateMigrationParams as y, type CreateSuppressionParams as z };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { A as ApiErrorBody, D as DnsRecord } from './client-
|
|
2
|
-
export { a as ApiErrorCode, b as ApiKey, c as ApiKeyScope, d as ApplyDnsParams, e as ApplyDnsRecordResult, f as ApplyDnsResult, g as Asset, h as Automation, i as AutomationResult, j as AutomationRun, k as AutomationRunResponse, l as AutomationRunStatus, m as AutomationRunStep, n as AutomationRunStepStatus, o as AutomationStatus, p as AutomationStep, q as AutomationTrigger, B as BatchSendEmailResult, C as CategoryUnsubscribedErrorDetails, r as ConnectTwilioParams, s as ContactWebhookEventPayload, t as CreateApiKeyParams, u as CreateApiKeyResult, v as CreateAutomationParams, w as CreateDomainParams, x as CreateDomainResult, y as
|
|
1
|
+
import { A as ApiErrorBody, D as DnsRecord } from './client-B4Gk87z2.js';
|
|
2
|
+
export { a as ApiErrorCode, b as ApiKey, c as ApiKeyScope, d as ApplyDnsParams, e as ApplyDnsRecordResult, f as ApplyDnsResult, g as Asset, h as Automation, i as AutomationResult, j as AutomationRun, k as AutomationRunResponse, l as AutomationRunStatus, m as AutomationRunStep, n as AutomationRunStepStatus, o as AutomationStatus, p as AutomationStep, q as AutomationTrigger, B as BatchSendEmailResult, C as CategoryUnsubscribedErrorDetails, r as ConnectTwilioParams, s as ContactWebhookEventPayload, t as CreateApiKeyParams, u as CreateApiKeyResult, v as CreateAutomationParams, w as CreateDomainParams, x as CreateDomainResult, y as CreateMigrationParams, z as CreateSuppressionParams, E as CreateTemplateParams, F as CreateWebhookParams, H as DEFAULT_API_BASE_URL, I as DeliverabilityBucket, J as DeliverabilityDomainInsight, K as DeliverabilityInsightsResult, L as DeliverabilityMailServerRelay, M as DeliverabilityWindow, N as DnsProviderName, O as Domain, P as DomainBimiAnalysis, Q as DomainDetailResult, R as DomainDmarcAnalysis, T as DomainDnsAnalysis, U as DomainStatus, V as DomainTlsMode, W as DomainTrackingDns, X as DomainTrackingStatus, Y as EmailListItem, Z as EmailWebhookEventType, _ as EnrollmentSkip, $ as EventRecord, G as Groundmail, a0 as GroundmailOptions, a1 as ListApiKeysParams, a2 as ListApiKeysResult, a3 as ListAutomationRunsParams, a4 as ListAutomationRunsResult, a5 as ListAutomationsResult, a6 as ListDomainsParams, a7 as ListDomainsResult, a8 as ListEmailsParams, a9 as ListEmailsResult, aa as ListReceivedEmailsParams, ab as ListReceivedEmailsResult, ac as ListSuppressionsParams, ad as ListSuppressionsResult, ae as ListTemplatesParams, af as ListTemplatesResult, ag as MailServerSigningStatus, ah as Migration, ai as MigrationDomainItem, aj as MigrationItemStatus, ak as MigrationProvider, al as MigrationResource, am as MigrationTemplateItem, an as MigrationTotals, ao as MigrationWebhookItem, ap as ReceivedEmail, aq as ReceivedEmailAttachment, ar as ReceivedEmailAttachmentMeta, as as RemoteApplyDnsCredentials, at as RunMigrationOptions, au as SendEmailParams, S as SendEmailResult, av as SuppressedErrorDetails, aw as Suppression, ax as Template, ay as TemplateFormat, az as TemplateLintWarning, aA as TemplateStarter, aB as TemplateStatus, aC as TemplateVersion, aD as TestEmailWebhookParams, aE as TestEmailWebhookResult, aF as TriggerEventParams, aG as TriggerEventResult, aH as TwilioIntegrationResponse, aI as TwilioIntegrationStatus, aJ as UpdateAutomationParams, aK as UpdateDomainParams, aL as UpdateEmailParams, aM as UpdateTemplateParams, aN as UpdateWebhookParams, aO as VerifyDomainResult, aP as WebhookEndpoint, aQ as WebhookEndpointWithSecret, aR as WebhookEventType, aS as mergeMigrations } from './client-B4Gk87z2.js';
|
|
3
3
|
|
|
4
4
|
type GroundmailErrorOptions = {
|
|
5
5
|
code?: string;
|
package/dist/index.js
CHANGED
|
@@ -4,16 +4,18 @@ import {
|
|
|
4
4
|
GroundmailError,
|
|
5
5
|
applyDnsRecords,
|
|
6
6
|
buildSignatureHeader,
|
|
7
|
+
mergeMigrations,
|
|
7
8
|
mergeSpfInclude,
|
|
8
9
|
signWebhookPayload,
|
|
9
10
|
verifyWebhookSignature
|
|
10
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-LKMNSXA3.js";
|
|
11
12
|
export {
|
|
12
13
|
DEFAULT_API_BASE_URL,
|
|
13
14
|
Groundmail,
|
|
14
15
|
GroundmailError,
|
|
15
16
|
applyDnsRecords,
|
|
16
17
|
buildSignatureHeader,
|
|
18
|
+
mergeMigrations,
|
|
17
19
|
mergeSpfInclude,
|
|
18
20
|
signWebhookPayload,
|
|
19
21
|
verifyWebhookSignature
|
package/dist/payload.d.ts
CHANGED
package/dist/payload.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "groundmail",
|
|
3
|
-
"version": "0.14.
|
|
3
|
+
"version": "0.14.7",
|
|
4
4
|
"description": "Groundmail transactional email API client",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
"prepublishOnly": "npm run build && npm run build:nodemailer-bridge"
|
|
90
90
|
},
|
|
91
91
|
"dependencies": {
|
|
92
|
-
"groundmail-nodemailer": "0.14.
|
|
92
|
+
"groundmail-nodemailer": "0.14.7"
|
|
93
93
|
},
|
|
94
94
|
"devDependencies": {
|
|
95
95
|
"@types/nodemailer": "^8.0.1",
|