@stacksjs/ts-cloud 0.9.0 → 0.9.2
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/aws/index.js +10 -2
- package/dist/bin/cli.js +540 -540
- package/dist/bin/dashboard-server.js +279 -279
- package/dist/{chunk-5nr95wpj.js → chunk-728jvrr0.js} +3 -3
- package/dist/{chunk-ws47smxr.js → chunk-k4px0bnv.js} +2 -2
- package/dist/{chunk-atbgd8wz.js → chunk-qr803fye.js} +112 -1
- package/dist/{chunk-hygwq9y2.js → chunk-rxgchb08.js} +1 -1
- package/dist/deploy/index.js +3 -3
- package/dist/dns/declared-records.d.ts +87 -0
- package/dist/dns/declared-records.test.d.ts +1 -0
- package/dist/dns/index.d.ts +2 -0
- package/dist/dns/index.js +10 -2
- package/dist/index.d.ts +2 -1
- package/dist/index.js +14 -4
- package/dist/ui/access-denied.html +2 -2
- package/dist/ui/account/automation.html +3 -3
- package/dist/ui/account/security.html +2 -2
- package/dist/ui/applications/compose.html +4 -4
- package/dist/ui/applications/new.html +2 -2
- package/dist/ui/data/backups.html +4 -4
- package/dist/ui/data/services.html +4 -4
- package/dist/ui/data/volumes.html +4 -4
- package/dist/ui/index.html +3 -3
- package/dist/ui/infrastructure/topology.html +4 -4
- package/dist/ui/integrations.html +2 -2
- package/dist/ui/operations/alerts.html +4 -4
- package/dist/ui/operations/configuration.html +4 -4
- package/dist/ui/operations/jobs.html +4 -4
- package/dist/ui/operations/maintenance.html +3 -3
- package/dist/ui/operations/observability.html +3 -3
- package/dist/ui/operations/previews.html +3 -3
- package/dist/ui/operations/queue.html +4 -4
- package/dist/ui/operations/regions.html +4 -4
- package/dist/ui/operations/releases.html +4 -4
- package/dist/ui/operations/spend.html +3 -3
- package/dist/ui/operations/workloads.html +3 -3
- package/dist/ui/server/actions.html +4 -4
- package/dist/ui/server/activity.html +2 -2
- package/dist/ui/server/capacity.html +4 -4
- package/dist/ui/server/database.html +4 -4
- package/dist/ui/server/deployments.html +4 -4
- package/dist/ui/server/diagnostics.html +2 -2
- package/dist/ui/server/firewall.html +4 -4
- package/dist/ui/server/fleet.html +4 -4
- package/dist/ui/server/logs.html +3 -3
- package/dist/ui/server/metrics.html +4 -4
- package/dist/ui/server/security.html +2 -2
- package/dist/ui/server/services.html +2 -2
- package/dist/ui/server/sites.html +4 -4
- package/dist/ui/server/ssh-keys.html +4 -4
- package/dist/ui/server/team.html +4 -4
- package/dist/ui/server/terminal.html +2 -2
- package/dist/ui/serverless/alarms.html +4 -4
- package/dist/ui/serverless/assets.html +2 -2
- package/dist/ui/serverless/data.html +3 -3
- package/dist/ui/serverless/firewall.html +2 -2
- package/dist/ui/serverless/functions.html +4 -4
- package/dist/ui/serverless/logs.html +4 -4
- package/dist/ui/serverless/queues.html +4 -4
- package/dist/ui/serverless/secrets.html +4 -4
- package/dist/ui/serverless/traces.html +4 -4
- package/dist/ui/serverless.html +4 -4
- package/package.json +3 -3
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
Route53Provider,
|
|
8
8
|
UnifiedDnsValidator,
|
|
9
9
|
createDnsProvider
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-qr803fye.js";
|
|
11
11
|
import {
|
|
12
12
|
Route53Client
|
|
13
13
|
} from "./chunk-32e7ya18.js";
|
|
@@ -815,7 +815,7 @@ async function deployStaticSiteWithExternalDnsFull(config) {
|
|
|
815
815
|
}
|
|
816
816
|
}
|
|
817
817
|
onProgress?.("upload", "Uploading files to S3...");
|
|
818
|
-
const { uploadStaticFiles } = await import("./chunk-
|
|
818
|
+
const { uploadStaticFiles } = await import("./chunk-k4px0bnv.js");
|
|
819
819
|
const uploadResult = await uploadStaticFiles({
|
|
820
820
|
sourceDir,
|
|
821
821
|
bucket: infraResult.bucket,
|
|
@@ -835,7 +835,7 @@ async function deployStaticSiteWithExternalDnsFull(config) {
|
|
|
835
835
|
}
|
|
836
836
|
if (infraResult.distributionId && uploadResult.uploaded > 0) {
|
|
837
837
|
onProgress?.("invalidate", "Invalidating CloudFront cache...");
|
|
838
|
-
const { invalidateCache } = await import("./chunk-
|
|
838
|
+
const { invalidateCache } = await import("./chunk-k4px0bnv.js");
|
|
839
839
|
await invalidateCache(infraResult.distributionId);
|
|
840
840
|
}
|
|
841
841
|
onProgress?.("complete", "Deployment complete!");
|
|
@@ -5,9 +5,9 @@ import {
|
|
|
5
5
|
generateStaticSiteTemplate,
|
|
6
6
|
invalidateCache,
|
|
7
7
|
uploadStaticFiles
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-728jvrr0.js";
|
|
9
9
|
import"./chunk-01d86gt1.js";
|
|
10
|
-
import"./chunk-
|
|
10
|
+
import"./chunk-qr803fye.js";
|
|
11
11
|
import"./chunk-32e7ya18.js";
|
|
12
12
|
import"./chunk-4cjrg98a.js";
|
|
13
13
|
import"./chunk-rds0sy87.js";
|
|
@@ -956,6 +956,117 @@ function deepEqual(a, b) {
|
|
|
956
956
|
const bRecord = b;
|
|
957
957
|
return Object.keys(bRecord).every((key) => deepEqual(aRecord[key], bRecord[key]));
|
|
958
958
|
}
|
|
959
|
+
// src/dns/declared-records.ts
|
|
960
|
+
var SINGLETON_TYPES = new Set(["A", "AAAA", "CNAME", "ALIAS"]);
|
|
961
|
+
function policyTag(content) {
|
|
962
|
+
const normalized = content.trim().replace(/^"|"$/g, "").toLowerCase();
|
|
963
|
+
if (normalized.startsWith("v=spf1"))
|
|
964
|
+
return "v=spf1";
|
|
965
|
+
if (normalized.startsWith("v=dmarc1"))
|
|
966
|
+
return "v=dmarc1";
|
|
967
|
+
return;
|
|
968
|
+
}
|
|
969
|
+
function unquote(value) {
|
|
970
|
+
return value.trim().replace(/^"(.*)"$/s, "$1");
|
|
971
|
+
}
|
|
972
|
+
function normalizeName(name) {
|
|
973
|
+
return name.replace(/\.$/, "").toLowerCase();
|
|
974
|
+
}
|
|
975
|
+
function qualifyName(name, zone) {
|
|
976
|
+
const z = normalizeName(zone);
|
|
977
|
+
const raw = (name ?? "@").trim();
|
|
978
|
+
if (!raw || raw === "@")
|
|
979
|
+
return z;
|
|
980
|
+
const n = normalizeName(raw);
|
|
981
|
+
if (n === z || n.endsWith(`.${z}`))
|
|
982
|
+
return n;
|
|
983
|
+
return `${n}.${z}`;
|
|
984
|
+
}
|
|
985
|
+
function resolveDeclaredRecords(records, zone) {
|
|
986
|
+
return records.map((record) => ({
|
|
987
|
+
...record,
|
|
988
|
+
name: qualifyName(record.name, zone),
|
|
989
|
+
proxied: record.proxied ?? false
|
|
990
|
+
}));
|
|
991
|
+
}
|
|
992
|
+
function matches(existing, record) {
|
|
993
|
+
if (existing.type !== record.type)
|
|
994
|
+
return false;
|
|
995
|
+
if (normalizeName(existing.name) !== normalizeName(record.name))
|
|
996
|
+
return false;
|
|
997
|
+
if (SINGLETON_TYPES.has(record.type))
|
|
998
|
+
return true;
|
|
999
|
+
if (record.type === "TXT") {
|
|
1000
|
+
const tag = policyTag(record.content);
|
|
1001
|
+
if (tag)
|
|
1002
|
+
return policyTag(unquote(existing.content)) === tag;
|
|
1003
|
+
return unquote(existing.content) === unquote(record.content);
|
|
1004
|
+
}
|
|
1005
|
+
return unquote(existing.content) === unquote(record.content);
|
|
1006
|
+
}
|
|
1007
|
+
function isCurrent(existing, record) {
|
|
1008
|
+
if (unquote(existing.content) !== unquote(record.content))
|
|
1009
|
+
return false;
|
|
1010
|
+
if (record.priority !== undefined && existing.priority !== record.priority)
|
|
1011
|
+
return false;
|
|
1012
|
+
if (record.proxied !== undefined && existing.proxied !== undefined && existing.proxied !== record.proxied)
|
|
1013
|
+
return false;
|
|
1014
|
+
return true;
|
|
1015
|
+
}
|
|
1016
|
+
async function reconcileDeclaredRecords(options) {
|
|
1017
|
+
const { provider, zone, records } = options;
|
|
1018
|
+
const report = { outcomes: [], warnings: [] };
|
|
1019
|
+
if (records.length === 0)
|
|
1020
|
+
return report;
|
|
1021
|
+
const listed = await provider.listRecords(zone);
|
|
1022
|
+
if (!listed.success) {
|
|
1023
|
+
report.warnings.push(`could not list ${zone}: ${listed.message || "unknown provider error"} — records not reconciled`);
|
|
1024
|
+
return report;
|
|
1025
|
+
}
|
|
1026
|
+
const existing = listed.records;
|
|
1027
|
+
for (const record of records) {
|
|
1028
|
+
const current = existing.filter((e) => matches(e, record));
|
|
1029
|
+
if (current.length > 0 && current.every((e) => isCurrent(e, record))) {
|
|
1030
|
+
report.outcomes.push({ record, action: "unchanged" });
|
|
1031
|
+
continue;
|
|
1032
|
+
}
|
|
1033
|
+
const wire = {
|
|
1034
|
+
name: record.name,
|
|
1035
|
+
type: record.type,
|
|
1036
|
+
content: record.content,
|
|
1037
|
+
ttl: record.ttl ?? 3600,
|
|
1038
|
+
...record.priority !== undefined ? { priority: record.priority } : {},
|
|
1039
|
+
...record.proxied !== undefined ? { proxied: record.proxied } : {}
|
|
1040
|
+
};
|
|
1041
|
+
const supersedes = record.type === "TXT" && policyTag(record.content) !== undefined;
|
|
1042
|
+
if (supersedes) {
|
|
1043
|
+
for (const stale of current) {
|
|
1044
|
+
const removed = await provider.deleteRecord(zone, {
|
|
1045
|
+
name: stale.name,
|
|
1046
|
+
type: stale.type,
|
|
1047
|
+
content: stale.content
|
|
1048
|
+
});
|
|
1049
|
+
if (!removed.success)
|
|
1050
|
+
report.warnings.push(`could not remove superseded ${stale.type} at ${stale.name}: ${removed.message || "unknown error"}`);
|
|
1051
|
+
}
|
|
1052
|
+
}
|
|
1053
|
+
const result = supersedes || current.length === 0 ? await provider.createRecord(zone, wire) : await provider.upsertRecord(zone, wire);
|
|
1054
|
+
if (result.success)
|
|
1055
|
+
report.outcomes.push({ record, action: current.length > 0 ? "updated" : "created" });
|
|
1056
|
+
else
|
|
1057
|
+
report.outcomes.push({ record, action: "failed", message: result.message });
|
|
1058
|
+
}
|
|
1059
|
+
for (const type of ["MX"]) {
|
|
1060
|
+
const declaredNames = new Set(records.filter((r) => r.type === type).map((r) => normalizeName(r.name)));
|
|
1061
|
+
for (const name of declaredNames) {
|
|
1062
|
+
const declaredValues = new Set(records.filter((r) => r.type === type && normalizeName(r.name) === name).map((r) => unquote(r.content).toLowerCase()));
|
|
1063
|
+
const strays = existing.filter((e) => e.type === type && normalizeName(e.name) === name && !declaredValues.has(unquote(e.content).toLowerCase()));
|
|
1064
|
+
for (const stray of strays)
|
|
1065
|
+
report.warnings.push(`${name} has an undeclared ${type} record (${stray.content}) alongside the declared one — mail will be split between them. Remove it at the provider if it is stale.`);
|
|
1066
|
+
}
|
|
1067
|
+
}
|
|
1068
|
+
return report;
|
|
1069
|
+
}
|
|
959
1070
|
// src/dns/route53-adapter.ts
|
|
960
1071
|
class Route53Provider {
|
|
961
1072
|
name = "route53";
|
|
@@ -2008,4 +2119,4 @@ class DnsProviderFactory {
|
|
|
2008
2119
|
}
|
|
2009
2120
|
var dnsProviders = new DnsProviderFactory;
|
|
2010
2121
|
|
|
2011
|
-
export { PROXIABLE_RECORD_TYPES, PorkbunProvider, GoDaddyProvider, CLOUDFLARE_MANAGED_RULE_PREFIX, CloudflareProvider, Route53Provider, UnifiedDnsValidator, createPorkbunValidator, createGoDaddyValidator, createRoute53Validator, createDnsProvider, detectDnsProvider, DnsProviderFactory, dnsProviders, ACMClient, ACMDnsValidator };
|
|
2122
|
+
export { PROXIABLE_RECORD_TYPES, PorkbunProvider, GoDaddyProvider, CLOUDFLARE_MANAGED_RULE_PREFIX, CloudflareProvider, policyTag, qualifyName, resolveDeclaredRecords, reconcileDeclaredRecords, Route53Provider, UnifiedDnsValidator, createPorkbunValidator, createGoDaddyValidator, createRoute53Validator, createDnsProvider, detectDnsProvider, DnsProviderFactory, dnsProviders, ACMClient, ACMDnsValidator };
|
package/dist/deploy/index.js
CHANGED
|
@@ -36,7 +36,7 @@ import {
|
|
|
36
36
|
synchronizeDashboardUsers,
|
|
37
37
|
trackDashboardOperation,
|
|
38
38
|
verifyStaticApiOrigin
|
|
39
|
-
} from "../chunk-
|
|
39
|
+
} from "../chunk-rxgchb08.js";
|
|
40
40
|
import {
|
|
41
41
|
deleteStaticSite,
|
|
42
42
|
deployStaticSite,
|
|
@@ -47,7 +47,7 @@ import {
|
|
|
47
47
|
generateStaticSiteTemplate,
|
|
48
48
|
invalidateCache,
|
|
49
49
|
uploadStaticFiles
|
|
50
|
-
} from "../chunk-
|
|
50
|
+
} from "../chunk-728jvrr0.js";
|
|
51
51
|
import {
|
|
52
52
|
buildAndPushServerlessImage
|
|
53
53
|
} from "../chunk-fgk8cqew.js";
|
|
@@ -56,7 +56,7 @@ import"../chunk-nsgqsmrh.js";
|
|
|
56
56
|
import"../chunk-01d86gt1.js";
|
|
57
57
|
import"../chunk-50jpda9q.js";
|
|
58
58
|
import"../chunk-he9a874b.js";
|
|
59
|
-
import"../chunk-
|
|
59
|
+
import"../chunk-qr803fye.js";
|
|
60
60
|
import"../chunk-32e7ya18.js";
|
|
61
61
|
import {
|
|
62
62
|
IPV6_EXCLUDED_HOST_LABELS,
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Publish the records a deploy cannot infer: mail, verification tokens,
|
|
3
|
+
* third-party CNAMEs — everything in `infrastructure.dns.records`.
|
|
4
|
+
*
|
|
5
|
+
* The address records for `sites` are derived from the deploy itself and live in
|
|
6
|
+
* {@link import('../deploy/server-dns')}. This module covers the other half of a
|
|
7
|
+
* zone, which is precisely the half that silently disappears in a nameserver
|
|
8
|
+
* migration: nothing in a normal deploy reads or writes MX or SPF, so their
|
|
9
|
+
* absence is invisible until someone reports that mail stopped days later.
|
|
10
|
+
*
|
|
11
|
+
* The whole module is upsert-only. A real zone holds records owned by other
|
|
12
|
+
* tools and other people, so "not declared here" never implies "safe to
|
|
13
|
+
* delete". The single deliberate exception is a policy TXT record — see
|
|
14
|
+
* {@link policyTag}.
|
|
15
|
+
*/
|
|
16
|
+
import type { DnsProvider, DnsRecordType } from './types';
|
|
17
|
+
/** A record to publish, already resolved to a fully-qualified name. */
|
|
18
|
+
export interface DeclaredRecord {
|
|
19
|
+
type: DnsRecordType;
|
|
20
|
+
/** Fully-qualified record name. */
|
|
21
|
+
name: string;
|
|
22
|
+
content: string;
|
|
23
|
+
ttl?: number;
|
|
24
|
+
priority?: number;
|
|
25
|
+
proxied?: boolean;
|
|
26
|
+
comment?: string;
|
|
27
|
+
}
|
|
28
|
+
/** The config shape, before names are qualified against the zone. */
|
|
29
|
+
export interface DeclaredRecordInput {
|
|
30
|
+
type: DnsRecordType;
|
|
31
|
+
name?: string;
|
|
32
|
+
content: string;
|
|
33
|
+
ttl?: number;
|
|
34
|
+
priority?: number;
|
|
35
|
+
proxied?: boolean;
|
|
36
|
+
comment?: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* The policy tag opening a TXT record whose duplicates are harmful, or
|
|
40
|
+
* `undefined` for an ordinary TXT.
|
|
41
|
+
*
|
|
42
|
+
* This is the one case where publishing a second record is not additive but
|
|
43
|
+
* destructive. Two `v=spf1` records at a name are a permerror: receivers do not
|
|
44
|
+
* merge them, they conclude the domain has no usable SPF, and mail that would
|
|
45
|
+
* have passed starts failing. Two `v=DMARC1` records are discarded wholesale,
|
|
46
|
+
* silently disabling the policy. So a policy record must REPLACE its
|
|
47
|
+
* predecessor, while every other TXT at that name is left alone.
|
|
48
|
+
*/
|
|
49
|
+
export declare function policyTag(content: string): string | undefined;
|
|
50
|
+
/**
|
|
51
|
+
* Qualify a configured record name against the zone.
|
|
52
|
+
*
|
|
53
|
+
* `'@'`, `''` and an omitted name all mean the apex; a bare label is joined to
|
|
54
|
+
* the zone; an already-qualified name is left alone.
|
|
55
|
+
*/
|
|
56
|
+
export declare function qualifyName(name: string | undefined, zone: string): string;
|
|
57
|
+
/** Resolve config records into fully-qualified {@link DeclaredRecord}s. */
|
|
58
|
+
export declare function resolveDeclaredRecords(records: DeclaredRecordInput[], zone: string): DeclaredRecord[];
|
|
59
|
+
/** What the reconcile did with one record. */
|
|
60
|
+
export interface DeclaredRecordOutcome {
|
|
61
|
+
record: DeclaredRecord;
|
|
62
|
+
action: 'created' | 'updated' | 'unchanged' | 'failed';
|
|
63
|
+
message?: string;
|
|
64
|
+
}
|
|
65
|
+
export interface DeclaredRecordsReport {
|
|
66
|
+
outcomes: DeclaredRecordOutcome[];
|
|
67
|
+
/**
|
|
68
|
+
* Undeclared values sitting beside a declared multi-value record — a second
|
|
69
|
+
* MX from a previous provider, say. Reported and never removed: a stray MX
|
|
70
|
+
* splits mail delivery and the operator must see it, but silently deleting a
|
|
71
|
+
* record on a shared zone is the worse failure.
|
|
72
|
+
*/
|
|
73
|
+
warnings: string[];
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Publish `records` into `zone`, updating what exists and creating what does
|
|
77
|
+
* not.
|
|
78
|
+
*
|
|
79
|
+
* Never throws: this runs at the tail of a deploy that has already shipped, so a
|
|
80
|
+
* provider rejecting one record is reported per-record rather than failing the
|
|
81
|
+
* whole run — and the outcome list says exactly which ones landed.
|
|
82
|
+
*/
|
|
83
|
+
export declare function reconcileDeclaredRecords(options: {
|
|
84
|
+
provider: DnsProvider;
|
|
85
|
+
zone: string;
|
|
86
|
+
records: DeclaredRecord[];
|
|
87
|
+
}): Promise<DeclaredRecordsReport>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/dns/index.d.ts
CHANGED
|
@@ -6,6 +6,8 @@ export * from './types';
|
|
|
6
6
|
export { PorkbunProvider } from './porkbun';
|
|
7
7
|
export { GoDaddyProvider } from './godaddy';
|
|
8
8
|
export { CloudflareProvider } from './cloudflare';
|
|
9
|
+
export type { DeclaredRecord, DeclaredRecordInput, DeclaredRecordOutcome, DeclaredRecordsReport, } from './declared-records';
|
|
10
|
+
export { policyTag, qualifyName, reconcileDeclaredRecords, resolveDeclaredRecords, } from './declared-records';
|
|
9
11
|
export { Route53Provider } from './route53-adapter';
|
|
10
12
|
export { UnifiedDnsValidator, createPorkbunValidator, createGoDaddyValidator, createRoute53Validator, } from './validator';
|
|
11
13
|
import type { DnsProvider, DnsProviderConfig } from './types';
|
package/dist/dns/index.js
CHANGED
|
@@ -11,12 +11,20 @@ import {
|
|
|
11
11
|
createPorkbunValidator,
|
|
12
12
|
createRoute53Validator,
|
|
13
13
|
detectDnsProvider,
|
|
14
|
-
dnsProviders
|
|
15
|
-
|
|
14
|
+
dnsProviders,
|
|
15
|
+
policyTag,
|
|
16
|
+
qualifyName,
|
|
17
|
+
reconcileDeclaredRecords,
|
|
18
|
+
resolveDeclaredRecords
|
|
19
|
+
} from "../chunk-qr803fye.js";
|
|
16
20
|
import"../chunk-32e7ya18.js";
|
|
17
21
|
import"../chunk-zqtpg06c.js";
|
|
18
22
|
import"../chunk-v0bahtg2.js";
|
|
19
23
|
export {
|
|
24
|
+
resolveDeclaredRecords,
|
|
25
|
+
reconcileDeclaredRecords,
|
|
26
|
+
qualifyName,
|
|
27
|
+
policyTag,
|
|
20
28
|
dnsProviders,
|
|
21
29
|
detectDnsProvider,
|
|
22
30
|
createRoute53Validator,
|
package/dist/index.d.ts
CHANGED
|
@@ -41,7 +41,7 @@ export { createCloudDriver, CloudDriverFactory, cloudDrivers, AwsDriver, Hetzner
|
|
|
41
41
|
export type { CreateCloudDriverOptions } from './drivers/factory';
|
|
42
42
|
export { dashboardActions, resolveDashboardAction, sanitizeCloudConfig, startLocalDashboardServer, } from './deploy/local-dashboard-server';
|
|
43
43
|
export type { DashboardAction, LocalDashboardServer, LocalDashboardServerOptions, } from './deploy/local-dashboard-server';
|
|
44
|
-
export { createDnsProvider, detectDnsProvider, DnsProviderFactory, dnsProviders, PorkbunProvider, GoDaddyProvider, Route53Provider, UnifiedDnsValidator, createPorkbunValidator, createGoDaddyValidator, createRoute53Validator, } from './dns';
|
|
44
|
+
export { createDnsProvider, detectDnsProvider, DnsProviderFactory, dnsProviders, PorkbunProvider, GoDaddyProvider, Route53Provider, CloudflareProvider, policyTag, qualifyName, reconcileDeclaredRecords, resolveDeclaredRecords, UnifiedDnsValidator, createPorkbunValidator, createGoDaddyValidator, createRoute53Validator, } from './dns';
|
|
45
45
|
export type { CloudflareProviderOptions, CloudflareRule, CloudflareRulesetPhase, CloudflareZoneSetting, } from './dns/cloudflare';
|
|
46
46
|
export { CLOUDFLARE_MANAGED_RULE_PREFIX } from './dns/cloudflare';
|
|
47
47
|
export * from './source';
|
|
@@ -50,5 +50,6 @@ export * from './backups';
|
|
|
50
50
|
export * from './configuration';
|
|
51
51
|
export type { DnsProvider, DnsProviderConfig, DnsRecord, DnsRecordType, DnsRecordResult, CreateRecordResult, DeleteRecordResult, ListRecordsResult, } from './dns';
|
|
52
52
|
export { PROXIABLE_RECORD_TYPES } from './dns';
|
|
53
|
+
export type { DeclaredRecord, DeclaredRecordInput, DeclaredRecordOutcome, DeclaredRecordsReport, } from './dns';
|
|
53
54
|
export * from '@ts-cloud/core';
|
|
54
55
|
export type { S3Bucket, S3BucketPolicy, CloudFrontDistribution, CloudFrontOriginAccessControl, CloudFrontCacheBehavior, CloudFrontOrigin, } from '@ts-cloud/aws-types';
|
package/dist/index.js
CHANGED
|
@@ -208,7 +208,7 @@ import {
|
|
|
208
208
|
verifyUpdateSignature,
|
|
209
209
|
webhookEndpoint,
|
|
210
210
|
zeroCapacity
|
|
211
|
-
} from "./chunk-
|
|
211
|
+
} from "./chunk-rxgchb08.js";
|
|
212
212
|
import {
|
|
213
213
|
deleteStaticSite,
|
|
214
214
|
deployStaticSite,
|
|
@@ -219,7 +219,7 @@ import {
|
|
|
219
219
|
generateStaticSiteTemplate,
|
|
220
220
|
invalidateCache,
|
|
221
221
|
uploadStaticFiles
|
|
222
|
-
} from "./chunk-
|
|
222
|
+
} from "./chunk-728jvrr0.js";
|
|
223
223
|
import {
|
|
224
224
|
buildAndPushServerlessImage
|
|
225
225
|
} from "./chunk-fgk8cqew.js";
|
|
@@ -279,6 +279,7 @@ import {
|
|
|
279
279
|
ACMClient,
|
|
280
280
|
ACMDnsValidator,
|
|
281
281
|
CLOUDFLARE_MANAGED_RULE_PREFIX,
|
|
282
|
+
CloudflareProvider,
|
|
282
283
|
DnsProviderFactory,
|
|
283
284
|
GoDaddyProvider,
|
|
284
285
|
PROXIABLE_RECORD_TYPES,
|
|
@@ -290,8 +291,12 @@ import {
|
|
|
290
291
|
createPorkbunValidator,
|
|
291
292
|
createRoute53Validator,
|
|
292
293
|
detectDnsProvider,
|
|
293
|
-
dnsProviders
|
|
294
|
-
|
|
294
|
+
dnsProviders,
|
|
295
|
+
policyTag,
|
|
296
|
+
qualifyName,
|
|
297
|
+
reconcileDeclaredRecords,
|
|
298
|
+
resolveDeclaredRecords
|
|
299
|
+
} from "./chunk-qr803fye.js";
|
|
295
300
|
import {
|
|
296
301
|
Route53Client
|
|
297
302
|
} from "./chunk-32e7ya18.js";
|
|
@@ -5794,6 +5799,7 @@ export {
|
|
|
5794
5799
|
resolveExecStart,
|
|
5795
5800
|
resolveDeploymentMode,
|
|
5796
5801
|
resolveDeployBucketName,
|
|
5802
|
+
resolveDeclaredRecords,
|
|
5797
5803
|
resolveDashboardDomains,
|
|
5798
5804
|
resolveDashboardDomain,
|
|
5799
5805
|
resolveDashboardAuth,
|
|
@@ -5833,12 +5839,14 @@ export {
|
|
|
5833
5839
|
recordDashboardHostPosture,
|
|
5834
5840
|
reconcileSourceWebhook,
|
|
5835
5841
|
reconcileJobObservation,
|
|
5842
|
+
reconcileDeclaredRecords,
|
|
5836
5843
|
reconcileCloudflareCdn,
|
|
5837
5844
|
reconcileAddressRecords,
|
|
5838
5845
|
rateLimitKey,
|
|
5839
5846
|
rateLimitHeaders,
|
|
5840
5847
|
quickHash,
|
|
5841
5848
|
queueManagementManager,
|
|
5849
|
+
qualifyName,
|
|
5842
5850
|
publicKeyFingerprint,
|
|
5843
5851
|
providerEndpoint,
|
|
5844
5852
|
propagationHeaders,
|
|
@@ -5854,6 +5862,7 @@ export {
|
|
|
5854
5862
|
previewSchedule,
|
|
5855
5863
|
previewNotifications,
|
|
5856
5864
|
previewManager,
|
|
5865
|
+
policyTag,
|
|
5857
5866
|
planMitigation,
|
|
5858
5867
|
planEnforcement,
|
|
5859
5868
|
planComposeTemplateUpgrade,
|
|
@@ -6531,6 +6540,7 @@ export {
|
|
|
6531
6540
|
ComposeApplicationService,
|
|
6532
6541
|
Communication,
|
|
6533
6542
|
CommandHistory,
|
|
6543
|
+
CloudflareProvider,
|
|
6534
6544
|
CloudWatchLogsClient,
|
|
6535
6545
|
CloudTrailManager,
|
|
6536
6546
|
CloudFrontClient,
|