@cloudflare/workers-utils 0.49.0 → 0.50.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.
@@ -1648,6 +1648,8 @@ interface EnvironmentNonInheritable {
1648
1648
  binding: string;
1649
1649
  /** The name of this dataset to write to. */
1650
1650
  dataset?: string;
1651
+ /** Whether the dataset should be remote or not in local development */
1652
+ remote?: boolean;
1651
1653
  }[];
1652
1654
  /**
1653
1655
  * A browser that will be usable from the Worker.
@@ -190,7 +190,7 @@ function validateDurableObjectContainerApplications(config, containers = getDura
190
190
  { telemetryMessage: "no DO defined that matches container class_name" }
191
191
  );
192
192
  }
193
- if (maybeBoundDO?.script_name !== void 0) {
193
+ if (maybeBoundDO?.script_name !== void 0 && maybeBoundDO.script_name !== config.name) {
194
194
  throw new UserError(
195
195
  `The container ${container.name} is referencing the durable object ${container.class_name}, which appears to be defined on the ${maybeBoundDO.script_name} Worker instead (via the 'script_name' field). You cannot configure a container on a Durable Object that is defined in another Worker.`,
196
196
  {
@@ -443,6 +443,7 @@ interface CfVpcNetwork {
443
443
  interface CfAnalyticsEngineDataset {
444
444
  binding: string;
445
445
  dataset?: string;
446
+ remote?: boolean;
446
447
  }
447
448
  interface CfDispatchNamespace {
448
449
  binding: string;
@@ -2731,6 +2732,8 @@ interface EnvironmentNonInheritable {
2731
2732
  binding: string;
2732
2733
  /** The name of this dataset to write to. */
2733
2734
  dataset?: string;
2735
+ /** Whether the dataset should be remote or not in local development */
2736
+ remote?: boolean;
2734
2737
  }[];
2735
2738
  /**
2736
2739
  * A browser that will be usable from the Worker.
@@ -1,4 +1,4 @@
1
- export { s as COMPLIANCE_REGION_CONFIG_PUBLIC, t as COMPLIANCE_REGION_CONFIG_UNKNOWN, h as ComplianceConfig, bQ as getCloudflareApiBaseUrl, bS as getCloudflareComplianceRegion, bT as getCloudflareContainerRegistry, bY as getComplianceRegionSubdomain } from './compliance-NXalJMKU.mjs';
1
+ export { s as COMPLIANCE_REGION_CONFIG_PUBLIC, t as COMPLIANCE_REGION_CONFIG_UNKNOWN, h as ComplianceConfig, bQ as getCloudflareApiBaseUrl, bS as getCloudflareComplianceRegion, bT as getCloudflareContainerRegistry, bY as getComplianceRegionSubdomain } from './compliance-CAnqGKXC.mjs';
2
2
  import 'node:url';
3
3
  import 'undici';
4
4
  import '@cloudflare/workers-shared';
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { C as ComputedFields, B as Binding, R as RawConfig, b as Config, E as Exports, D as DurableObjectExport, W as WorkerEntrypointExport, c as WorkflowExport, d as ContainerApp, e as WorkerMetadataBinding, T as TailConsumer, f as WorkerMetadata, g as CfTailConsumer, L as Logger, A as ApiCredentials, h as ComplianceConfig, i as Route } from './compliance-NXalJMKU.mjs';
2
- export { j as ARTIFACTS_EVENT_TYPES, k as Access, l as ArtifactsEventTrigger, m as ArtifactsEventType, n as AssetConfigMetadata, o as Assets, p as AssetsOptions, q as AsyncHook, r as BinaryFile, s as COMPLIANCE_REGION_CONFIG_PUBLIC, t as COMPLIANCE_REGION_CONFIG_UNKNOWN, u as CacheOptions, v as CfAIBinding, w as CfAISearch, x as CfAISearchNamespace, y as CfAccount, z as CfAgentMemory, F as CfAnalyticsEngineDataset, G as CfAnalyticsSQLBinding, H as CfArtifacts, I as CfAssetsBinding, J as CfBrowserBinding, K as CfCapnp, M as CfD1Database, N as CfDataBlobBindings, O as CfDevPluginCfg, P as CfDispatchNamespace, Q as CfDurableObject, S as CfDurableObjectMigrations, U as CfExports, V as CfFlagship, X as CfHelloWorld, Y as CfHyperdrive, Z as CfImagesBinding, _ as CfK2Binding, $ as CfKvNamespace, a0 as CfLogfwdr, a1 as CfLogfwdrBinding, a2 as CfMTlsCertificate, a3 as CfMediaBinding, a4 as CfModule, a5 as CfModuleType, a6 as CfPipeline, a7 as CfPlacement, a8 as CfQueue, a9 as CfR2Bucket, aa as CfRateLimit, ab as CfScriptFormat, ac as CfSecretsStoreSecrets, ad as CfSendEmailBindings, ae as CfService, af as CfStreamBinding, ag as CfTextBlobBindings, ah as CfUnsafe, ai as CfUnsafeBinding, aj as CfUserLimits, ak as CfVars, al as CfVectorize, am as CfVersionMetadataBinding, an as CfVpcNetwork, ao as CfVpcService, ap as CfWasmModuleBindings, aq as CfWorkerContext, ar as CfWorkerInit, as as CfWorkerLoader, at as CfWorkerSourceMap, au as CfWorkflow, av as CloudchamberConfig, aw as ConfigFields, ax as ConfigModuleRuleType, ay as ConfiguredExport, az as ConnectHandler, aA as ContainerEngine, aB as ContainerObservability, aC as CustomDomainRoute, aD as DispatchNamespaceOutbound, aE as DockerConfiguration, aF as DurableObjectBindings, aG as DurableObjectCodeUpdateStrategy, aH as DurableObjectContainerImage, aI as DurableObjectExportStorage, aJ as DurableObjectMigration, aK as DurableObjectsConfig, aL as ENVIRONMENT_TAG_PREFIX, aM as Entry, aN as Environment, aO as EnvironmentNonInheritable, aP as ExportsReconciliationEntryBase, aQ as ExportsReconciliationErrorDetail, aR as ExportsReconciliationInfo, aS as ExportsReconciliationRename, aT as ExportsReconciliationResult, aU as ExportsReconciliationTransfer, aV as ExportsReconciliationTransferPending, aW as ExportsReconciliationWarning, aX as FetchKVGetValueFetcher, aY as FetchListResultFetcher, aZ as FetchPagedListResultFetcher, a_ as FetchResult, a$ as FetchResultFetcher, b0 as File, b1 as Hook, b2 as HookValues, b3 as INHERIT_SYMBOL, b4 as JSON_CONFIG_FORMATS, b5 as Json, b6 as LOGGER_LEVELS, b7 as LegacyAssetPaths, b8 as LocalS3Credentials, b9 as LogLevel, ba as LoggerLevel, bb as NodeJSCompatMode, bc as Observability, bd as PATH_TO_DEPLOY_CONFIG, be as PreviewsConfig, bf as RawDevConfig, bg as RawDurableObjectsConfig, bh as RawEnvironment, a as RedirectedRawConfig, bi as Rule, bj as SERVICE_TAG_PREFIX, bk as ServiceFetch, bl as ServiceMetadataRes, bm as StartDevWorkerInput, bn as StreamingTailConsumer, bo as TcpConnectHandler, bp as Trigger, bq as UdpConnectHandler, br as UserLimits, bs as ValidatedAssetsOptions, bt as WORKFLOW_JURISDICTIONS, bu as WorkflowBinding, bv as WorkflowJurisdiction, bw as ZoneIdRoute, bx as ZoneNameRoute, by as addAuthorizationHeader, bz as defaultWranglerConfig, bA as extractAccountTag, bB as extractWAFBlockRayId, bC as fetchInternalBase, bD as fetchKVGetValueBase, bE as fetchListResultBase, bF as fetchResultBase, bG as getBrowserRenderingHeadfulFromEnv, bH as getBuildConditionsFromEnv, bI as getBuildPlatformFromEnv, bJ as getC3CommandFromEnv, bK as getCIGeneratePreviewAlias, bL as getCIMatchTag, bM as getCIOverrideName, bN as getCIOverrideNetworkModeHost, bO as getCfFetchEnabledFromEnv, bP as getCfFetchPathFromEnv, bQ as getCloudflareApiBaseUrl, bR as getCloudflareApiEnvironmentFromEnv, bS as getCloudflareComplianceRegion, bT as getCloudflareContainerRegistry, bU as getCloudflareEnv, bV as getCloudflareIncludeProcessEnvFromEnv, bW as getCloudflareLoadDevVarsFromDotEnv, bX as getCloudflaredPathFromEnv, bY as getComplianceRegionSubdomain, bZ as getD1ExtraLocationChoices, b_ as getDisableConfigWatching, b$ as getLocalExplorerEnabledFromEnv, c0 as getLocalObservabilityEnabledFromEnv, c1 as getNoSkillsUpdatePromptsFromEnv, c2 as getOpenNextDeployFromEnv, c3 as getOutputFileDirectoryFromEnv, c4 as getOutputFilePathFromEnv, c5 as getRegistryPath, c6 as getSanitizeLogs, c7 as getSubdomainMixedStateCheckDisabled, c8 as getTraceHeader, c9 as getWorkersCIBranchName, ca as getWranglerCacheDirFromEnv, cb as getWranglerHideBanner, cc as getWranglerSendErrorReportsFromEnv, cd as getWranglerSendMetricsFromEnv, ce as hasCursor, cf as hasMorePages, cg as isDoNotTrackEnabled, ch as isWAFBlockResponse, ci as maybeAddTraceHeader, cj as parseRetryAfterMs, ck as parseRetryAfterValue, cl as performApiFetchBase, cm as renderError, cn as throwFetchError, co as truncate } from './compliance-NXalJMKU.mjs';
1
+ import { C as ComputedFields, B as Binding, R as RawConfig, b as Config, E as Exports, D as DurableObjectExport, W as WorkerEntrypointExport, c as WorkflowExport, d as ContainerApp, e as WorkerMetadataBinding, T as TailConsumer, f as WorkerMetadata, g as CfTailConsumer, L as Logger, A as ApiCredentials, h as ComplianceConfig, i as Route } from './compliance-CAnqGKXC.mjs';
2
+ export { j as ARTIFACTS_EVENT_TYPES, k as Access, l as ArtifactsEventTrigger, m as ArtifactsEventType, n as AssetConfigMetadata, o as Assets, p as AssetsOptions, q as AsyncHook, r as BinaryFile, s as COMPLIANCE_REGION_CONFIG_PUBLIC, t as COMPLIANCE_REGION_CONFIG_UNKNOWN, u as CacheOptions, v as CfAIBinding, w as CfAISearch, x as CfAISearchNamespace, y as CfAccount, z as CfAgentMemory, F as CfAnalyticsEngineDataset, G as CfAnalyticsSQLBinding, H as CfArtifacts, I as CfAssetsBinding, J as CfBrowserBinding, K as CfCapnp, M as CfD1Database, N as CfDataBlobBindings, O as CfDevPluginCfg, P as CfDispatchNamespace, Q as CfDurableObject, S as CfDurableObjectMigrations, U as CfExports, V as CfFlagship, X as CfHelloWorld, Y as CfHyperdrive, Z as CfImagesBinding, _ as CfK2Binding, $ as CfKvNamespace, a0 as CfLogfwdr, a1 as CfLogfwdrBinding, a2 as CfMTlsCertificate, a3 as CfMediaBinding, a4 as CfModule, a5 as CfModuleType, a6 as CfPipeline, a7 as CfPlacement, a8 as CfQueue, a9 as CfR2Bucket, aa as CfRateLimit, ab as CfScriptFormat, ac as CfSecretsStoreSecrets, ad as CfSendEmailBindings, ae as CfService, af as CfStreamBinding, ag as CfTextBlobBindings, ah as CfUnsafe, ai as CfUnsafeBinding, aj as CfUserLimits, ak as CfVars, al as CfVectorize, am as CfVersionMetadataBinding, an as CfVpcNetwork, ao as CfVpcService, ap as CfWasmModuleBindings, aq as CfWorkerContext, ar as CfWorkerInit, as as CfWorkerLoader, at as CfWorkerSourceMap, au as CfWorkflow, av as CloudchamberConfig, aw as ConfigFields, ax as ConfigModuleRuleType, ay as ConfiguredExport, az as ConnectHandler, aA as ContainerEngine, aB as ContainerObservability, aC as CustomDomainRoute, aD as DispatchNamespaceOutbound, aE as DockerConfiguration, aF as DurableObjectBindings, aG as DurableObjectCodeUpdateStrategy, aH as DurableObjectContainerImage, aI as DurableObjectExportStorage, aJ as DurableObjectMigration, aK as DurableObjectsConfig, aL as ENVIRONMENT_TAG_PREFIX, aM as Entry, aN as Environment, aO as EnvironmentNonInheritable, aP as ExportsReconciliationEntryBase, aQ as ExportsReconciliationErrorDetail, aR as ExportsReconciliationInfo, aS as ExportsReconciliationRename, aT as ExportsReconciliationResult, aU as ExportsReconciliationTransfer, aV as ExportsReconciliationTransferPending, aW as ExportsReconciliationWarning, aX as FetchKVGetValueFetcher, aY as FetchListResultFetcher, aZ as FetchPagedListResultFetcher, a_ as FetchResult, a$ as FetchResultFetcher, b0 as File, b1 as Hook, b2 as HookValues, b3 as INHERIT_SYMBOL, b4 as JSON_CONFIG_FORMATS, b5 as Json, b6 as LOGGER_LEVELS, b7 as LegacyAssetPaths, b8 as LocalS3Credentials, b9 as LogLevel, ba as LoggerLevel, bb as NodeJSCompatMode, bc as Observability, bd as PATH_TO_DEPLOY_CONFIG, be as PreviewsConfig, bf as RawDevConfig, bg as RawDurableObjectsConfig, bh as RawEnvironment, a as RedirectedRawConfig, bi as Rule, bj as SERVICE_TAG_PREFIX, bk as ServiceFetch, bl as ServiceMetadataRes, bm as StartDevWorkerInput, bn as StreamingTailConsumer, bo as TcpConnectHandler, bp as Trigger, bq as UdpConnectHandler, br as UserLimits, bs as ValidatedAssetsOptions, bt as WORKFLOW_JURISDICTIONS, bu as WorkflowBinding, bv as WorkflowJurisdiction, bw as ZoneIdRoute, bx as ZoneNameRoute, by as addAuthorizationHeader, bz as defaultWranglerConfig, bA as extractAccountTag, bB as extractWAFBlockRayId, bC as fetchInternalBase, bD as fetchKVGetValueBase, bE as fetchListResultBase, bF as fetchResultBase, bG as getBrowserRenderingHeadfulFromEnv, bH as getBuildConditionsFromEnv, bI as getBuildPlatformFromEnv, bJ as getC3CommandFromEnv, bK as getCIGeneratePreviewAlias, bL as getCIMatchTag, bM as getCIOverrideName, bN as getCIOverrideNetworkModeHost, bO as getCfFetchEnabledFromEnv, bP as getCfFetchPathFromEnv, bQ as getCloudflareApiBaseUrl, bR as getCloudflareApiEnvironmentFromEnv, bS as getCloudflareComplianceRegion, bT as getCloudflareContainerRegistry, bU as getCloudflareEnv, bV as getCloudflareIncludeProcessEnvFromEnv, bW as getCloudflareLoadDevVarsFromDotEnv, bX as getCloudflaredPathFromEnv, bY as getComplianceRegionSubdomain, bZ as getD1ExtraLocationChoices, b_ as getDisableConfigWatching, b$ as getLocalExplorerEnabledFromEnv, c0 as getLocalObservabilityEnabledFromEnv, c1 as getNoSkillsUpdatePromptsFromEnv, c2 as getOpenNextDeployFromEnv, c3 as getOutputFileDirectoryFromEnv, c4 as getOutputFilePathFromEnv, c5 as getRegistryPath, c6 as getSanitizeLogs, c7 as getSubdomainMixedStateCheckDisabled, c8 as getTraceHeader, c9 as getWorkersCIBranchName, ca as getWranglerCacheDirFromEnv, cb as getWranglerHideBanner, cc as getWranglerSendErrorReportsFromEnv, cd as getWranglerSendMetricsFromEnv, ce as hasCursor, cf as hasMorePages, cg as isDoNotTrackEnabled, ch as isWAFBlockResponse, ci as maybeAddTraceHeader, cj as parseRetryAfterMs, ck as parseRetryAfterValue, cl as performApiFetchBase, cm as renderError, cn as throwFetchError, co as truncate } from './compliance-CAnqGKXC.mjs';
3
3
  import * as jsoncParser from 'jsonc-parser';
4
4
  import { UserError, TelemetryMessage } from './errors.mjs';
5
5
  export { CommandLineArgsError, DeprecationError, FatalError, JsonFriendlyFatalError, MissingConfigError, createFatalError } from './errors.mjs';
@@ -212,8 +212,10 @@ declare function getContainerDurableObjectClassNames(containers: ContainerApp[]
212
212
  declare function getDurableObjectClassNameToUseSQLiteMap(migrations: Config["migrations"] | undefined, exports?: Config["exports"] | undefined): Map<string, boolean>;
213
213
  /**
214
214
  * Validate that every Durable Object-managed container belongs to this Worker.
215
+ *
216
+ * @param config Worker configuration with `name` set to the effective Worker name.
215
217
  */
216
- declare function validateDurableObjectContainerApplications(config: Pick<Config, "migrations" | "exports" | "durable_objects"> & {
218
+ declare function validateDurableObjectContainerApplications(config: Pick<Config, "name" | "migrations" | "exports" | "durable_objects"> & {
217
219
  containers?: ContainerApp[];
218
220
  }, containers?: DurableObjectContainerApp[], configFileName?: string): void;
219
221
 
package/dist/index.mjs CHANGED
@@ -2,8 +2,8 @@ import { createRequire } from 'node:module';
2
2
  export { MetricsRegistry } from './chunk-6G6FCMPX.mjs';
3
3
  import { external_exports } from './chunk-XEBMRQST.mjs';
4
4
  export { formatZodError } from './chunk-XEBMRQST.mjs';
5
- import { isRedirectedRawConfig, configFileName, formatConfigSnippet, partitionExports, getDurableObjectExports, getContainerNameToClassNameMap, parsePackageJSON, readFileSync, ParseError, parseJSON, APIError, isLiveDurableObjectExport, dir, parseTOML, modify, applyEdits, format, stringify, parseJSONC } from './chunk-2HLTAS5V.mjs';
6
- export { APIError, ENVIRONMENT_TAG_PREFIX, INHERIT_SYMBOL, JSON_CONFIG_FORMATS, PATH_TO_DEPLOY_CONFIG, ParseError, SERVICE_TAG_PREFIX, configFileName, configFormat, experimental_readRawConfig, findWranglerConfig, formatConfigSnippet, getContainerDurableObjectClassNames, getContainerNameToClassNameMap, getDurableObjectClassNameToUseSQLiteMap, getDurableObjectContainerApps, getDurableObjectExports, getResolvedDurableObjectContainerApps, hasDurableObjectExports, indexLocation, isDurableObjectContainerApp, isLiveDurableObjectExport, isRedirectedConfig, parseByteSize, parseHumanDuration, parseJSON, parseJSONC, parseNonHyphenedUuid, parsePackageJSON, parseTOML, partitionExports, readFileSync, readFileSyncToBuffer, resolveContainerClassName, resolveWranglerConfigPath, searchLocation, validateDurableObjectContainerApplications } from './chunk-2HLTAS5V.mjs';
5
+ import { isRedirectedRawConfig, configFileName, formatConfigSnippet, partitionExports, getDurableObjectExports, getContainerNameToClassNameMap, parsePackageJSON, readFileSync, ParseError, parseJSON, APIError, isLiveDurableObjectExport, dir, parseTOML, modify, applyEdits, format, stringify, parseJSONC } from './chunk-AAQI36FL.mjs';
6
+ export { APIError, ENVIRONMENT_TAG_PREFIX, INHERIT_SYMBOL, JSON_CONFIG_FORMATS, PATH_TO_DEPLOY_CONFIG, ParseError, SERVICE_TAG_PREFIX, configFileName, configFormat, experimental_readRawConfig, findWranglerConfig, formatConfigSnippet, getContainerDurableObjectClassNames, getContainerNameToClassNameMap, getDurableObjectClassNameToUseSQLiteMap, getDurableObjectContainerApps, getDurableObjectExports, getResolvedDurableObjectContainerApps, hasDurableObjectExports, indexLocation, isDurableObjectContainerApp, isLiveDurableObjectExport, isRedirectedConfig, parseByteSize, parseHumanDuration, parseJSON, parseJSONC, parseNonHyphenedUuid, parsePackageJSON, parseTOML, partitionExports, readFileSync, readFileSyncToBuffer, resolveContainerClassName, resolveWranglerConfigPath, searchLocation, validateDurableObjectContainerApplications } from './chunk-AAQI36FL.mjs';
7
7
  export { NODEJS_COMPAT_DEFAULT_ON_DATE, NODEJS_COMPAT_V2_SWITCH_OVER_DATE, getTodaysCompatDate, isCompatDate, isNodejsCompatDefaultOn, resolveNodejsCompat, stripRedundantNodejsCompatFlags } from './chunk-2Q77CKVU.mjs';
8
8
  import { getCloudflareEnv, getCloudflareContainerRegistry, getCloudflareApiBaseUrl, getTraceHeader, getCloudflaredPathFromEnv, getOutputFilePathFromEnv, getOutputFileDirectoryFromEnv, getCIOverrideName, getWranglerCacheDirFromEnv } from './chunk-FR75DWDU.mjs';
9
9
  export { COMPLIANCE_REGION_CONFIG_PUBLIC, COMPLIANCE_REGION_CONFIG_UNKNOWN, getBrowserRenderingHeadfulFromEnv, getBuildConditionsFromEnv, getBuildPlatformFromEnv, getC3CommandFromEnv, getCIGeneratePreviewAlias, getCIMatchTag, getCIOverrideName, getCIOverrideNetworkModeHost, getCfFetchEnabledFromEnv, getCfFetchPathFromEnv, getCloudflareApiBaseUrl, getCloudflareApiEnvironmentFromEnv, getCloudflareComplianceRegion, getCloudflareContainerRegistry, getCloudflareEnv, getCloudflareIncludeProcessEnvFromEnv, getCloudflareLoadDevVarsFromDotEnv, getCloudflaredPathFromEnv, getComplianceRegionSubdomain, getD1ExtraLocationChoices, getDisableConfigWatching, getLocalExplorerEnabledFromEnv, getLocalObservabilityEnabledFromEnv, getNoSkillsUpdatePromptsFromEnv, getOpenNextDeployFromEnv, getOutputFileDirectoryFromEnv, getOutputFilePathFromEnv, getRegistryPath, getSanitizeLogs, getSubdomainMixedStateCheckDisabled, getTraceHeader, getWorkersCIBranchName, getWranglerCacheDirFromEnv, getWranglerHideBanner, getWranglerSendErrorReportsFromEnv, getWranglerSendMetricsFromEnv, isDoNotTrackEnabled } from './chunk-FR75DWDU.mjs';
@@ -6382,8 +6382,12 @@ var validateAnalyticsEngineBinding = /* @__PURE__ */ __name((diagnostics, field,
6382
6382
  }
6383
6383
  validateAdditionalProperties(diagnostics, field, Object.keys(value), [
6384
6384
  "binding",
6385
- "dataset"
6385
+ "dataset",
6386
+ "remote"
6386
6387
  ]);
6388
+ if (!isRemoteValid(value, field, diagnostics)) {
6389
+ isValid = false;
6390
+ }
6387
6391
  return isValid;
6388
6392
  }, "validateAnalyticsEngineBinding");
6389
6393
  var validateWorkerNamespaceBinding = /* @__PURE__ */ __name((diagnostics, field, value) => {
@@ -8441,7 +8445,6 @@ var BINDING_LOCAL_SUPPORT = {
8441
8445
  unsafe_hello_world: "local-only",
8442
8446
  durable_object_namespace: "local-only",
8443
8447
  fetcher: "local-only",
8444
- analytics_engine: "local-only",
8445
8448
  secrets_store_secret: "local-only",
8446
8449
  ratelimit: "local-only",
8447
8450
  worker_loader: "local-only",
@@ -8459,6 +8462,7 @@ var BINDING_LOCAL_SUPPORT = {
8459
8462
  // TODO: Miniflare currently ignores `remote: true` on queues, tracked in #13727.
8460
8463
  queue: "local-and-remote",
8461
8464
  flagship: "local-and-remote",
8465
+ analytics_engine: "local-and-remote",
8462
8466
  vectorize: "remote",
8463
8467
  mtls_certificate: "remote",
8464
8468
  dispatch_namespace: "remote",
@@ -10012,12 +10016,14 @@ function printBindings(bindings, options) {
10012
10016
  }
10013
10017
  if (analytics_engine_datasets.length > 0) {
10014
10018
  output.push(
10015
- ...analytics_engine_datasets.map(({ binding, dataset }) => {
10019
+ ...analytics_engine_datasets.map(({ binding, dataset, remote }) => {
10016
10020
  return {
10017
10021
  name: binding,
10018
10022
  type: getBindingTypeFriendlyName("analytics_engine"),
10019
10023
  value: dataset ?? binding,
10020
- mode: getMode({ isSimulatedLocally: true })
10024
+ mode: getMode({
10025
+ isSimulatedLocally: context.remoteBindingsDisabled || !remote
10026
+ })
10021
10027
  };
10022
10028
  })
10023
10029
  );