chore: import upstream snapshot with attribution
Deploy (to testing) and Test Playground Preview Worker / Deploy Playground Preview Worker (testing) (push) Has been skipped
Deploy Workers Shared Staging / Deploy Workers Shared Staging (push) Failing after 0s
Prerelease / build (push) Has been skipped
Handle Changesets / Handle Changesets (push) Has been cancelled
Semgrep OSS scan / semgrep-oss (push) Has been cancelled
Deploy (to testing) and Test Playground Preview Worker / Deploy Playground Preview Worker (testing) (push) Has been skipped
Deploy Workers Shared Staging / Deploy Workers Shared Staging (push) Failing after 0s
Prerelease / build (push) Has been skipped
Handle Changesets / Handle Changesets (push) Has been cancelled
Semgrep OSS scan / semgrep-oss (push) Has been cancelled
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
import {
|
||||
constructHeaders,
|
||||
constructRedirects,
|
||||
} from "@cloudflare/workers-shared/utils/configuration/constructConfiguration";
|
||||
import { ANALYTICS_VERSION } from "./constants";
|
||||
import type { Metadata } from "./types";
|
||||
import type {
|
||||
Logger,
|
||||
ParsedHeaders,
|
||||
ParsedRedirects,
|
||||
} from "@cloudflare/workers-shared/utils/configuration/types";
|
||||
|
||||
const noopLogger = {
|
||||
debug: (_message: string) => {},
|
||||
log: (_message: string) => {},
|
||||
info: (_message: string) => {},
|
||||
warn: (_message: string) => {},
|
||||
error: (_error: Error) => {},
|
||||
};
|
||||
|
||||
export function createMetadataObject({
|
||||
redirects,
|
||||
headers,
|
||||
redirectsFile,
|
||||
headersFile,
|
||||
webAnalyticsToken,
|
||||
deploymentId,
|
||||
failOpen,
|
||||
logger = noopLogger,
|
||||
}: {
|
||||
redirects?: ParsedRedirects;
|
||||
headers?: ParsedHeaders;
|
||||
redirectsFile?: string;
|
||||
headersFile?: string;
|
||||
webAnalyticsToken?: string;
|
||||
deploymentId?: string;
|
||||
failOpen?: boolean;
|
||||
logger?: Logger;
|
||||
}): Metadata {
|
||||
return {
|
||||
...constructRedirects({ redirects, redirectsFile, logger }),
|
||||
...constructHeaders({ headers, headersFile, logger }),
|
||||
...constructWebAnalytics({ webAnalyticsToken, logger }),
|
||||
deploymentId,
|
||||
failOpen,
|
||||
};
|
||||
}
|
||||
|
||||
function constructWebAnalytics({
|
||||
webAnalyticsToken,
|
||||
}: {
|
||||
webAnalyticsToken?: string;
|
||||
logger: Logger;
|
||||
}) {
|
||||
if (!webAnalyticsToken) {
|
||||
return {};
|
||||
}
|
||||
|
||||
return {
|
||||
analytics: {
|
||||
version: ANALYTICS_VERSION,
|
||||
token: webAnalyticsToken,
|
||||
},
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user