@coreframe/config 0.1.11 → 0.1.13

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.
Files changed (2) hide show
  1. package/dist/index.d.ts +23 -6
  2. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -56,18 +56,35 @@ type DevConfig = {
56
56
  /** Platforms started by the development command. */platforms?: DevPlatform[];
57
57
  };
58
58
  type PreviewTunnelConfig = {
59
- /** Whether Coreframe or an external provider manages the tunnel hostname's DNS. */dns: "external" | "managed"; /** Public hostname assigned to the preview tunnel. */
60
- hostname: string; /** Cloudflare tunnel name. */
59
+ /** Whether Coreframe or an external provider manages the preview hostname's DNS. */dns: "external" | "managed"; /** Cloudflare tunnel name. */
61
60
  name: string; /** Credential profile used to manage the tunnel. */
62
61
  profile: string;
63
62
  };
63
+ type PreviewAccessIpContext = {
64
+ /** Exact HTTPS origin configured for the preview application. */appOrigin: string; /** Public hostname derived from the preview application origin. */
65
+ hostname: string; /** Identity of the Coreframe-managed preview tunnel. */
66
+ tunnel: {
67
+ name: string;
68
+ profile: string;
69
+ };
70
+ };
71
+ type PreviewAccessIpResolver = (context: PreviewAccessIpContext) => string | readonly string[] | Promise<string | readonly string[]>;
72
+ type PreviewAccessBypassConfig = {
73
+ /** Name of the application policy Coreframe creates or updates. */policyName?: string; /** One or more IPv4/IPv6 addresses or CIDR ranges, or a resolver evaluated at preview startup. */
74
+ ips: string | readonly string[] | PreviewAccessIpResolver;
75
+ };
76
+ type PreviewAccessConfig = {
77
+ /** Existing self-hosted Cloudflare Access application UUID. */applicationId?: string; /** Access policy used to bypass authentication for the resolved client IP ranges. */
78
+ bypass: PreviewAccessBypassConfig;
79
+ };
64
80
  type PreviewConfig = {
65
81
  /** Exact HTTPS origin used by browser-facing application URLs. */appOrigin?: string; /** Network interface on which the local preview server listens. */
66
82
  host?: string; /** TCP port on which the local preview server listens. */
67
83
  port?: number; /** Whether startup fails when the configured port is unavailable. */
68
84
  strictPort?: boolean;
69
85
  /**
70
- * Public tunnel settings for the local preview server.
86
+ * Public tunnel settings for the local preview server. The tunnel hostname is derived from
87
+ * `appOrigin`.
71
88
  *
72
89
  * @example
73
90
  * defineConfig({
@@ -75,14 +92,14 @@ type PreviewConfig = {
75
92
  * appOrigin: "https://preview.example.com",
76
93
  * tunnel: {
77
94
  * dns: "managed",
78
- * hostname: "preview.example.com",
79
95
  * name: "coreframe-preview",
80
96
  * profile: "company",
81
97
  * },
82
98
  * },
83
99
  * })
84
100
  */
85
- tunnel?: PreviewTunnelConfig; /** Worker bindings supplied during preview. */
101
+ tunnel?: PreviewTunnelConfig; /** Optional Cloudflare Access policy for a public preview tunnel. */
102
+ access?: PreviewAccessConfig; /** Worker bindings supplied during preview. */
86
103
  worker?: PreviewWorkerConfig;
87
104
  };
88
105
  type PreviewWorkerConfig = {
@@ -188,4 +205,4 @@ declare function readProjectConfig({
188
205
  declare function importProjectModule<T>(path: string, cwd?: string): Promise<T>;
189
206
  declare function importProjectDependency<T>(specifier: string, cwd?: string): Promise<T>;
190
207
  //#endregion
191
- export { AssetsConfig, BreakpointsConfig, CoreframeConfig, DatabaseConfig, DatabaseDialect, DeployConfig, DeployContext, DeployEnvironment, DeployEnvironmentConfig, DeployMode, DeploySmokeCheck, DevConfig, DevPlatform, FlutterConfig, FlutterDeepLinkConfig, I18nConfig, JsonObject, JsonValue, PreviewConfig, PreviewTunnelConfig, PreviewWorkerConfig, PrimaryWorkerContributions, PrimaryWorkerEnvironment, StagingHostnameConfig, WorkerConfig, WorkerDeployEnvironment, WorkerEnvironmentDeclaration, WorkerEnvironmentKind, WorkerEnvironmentVariableConfig, WranglerConfig, breakpointNames, coreframeGeneratedWorkerVariables, coreframeLocalWorkerVariables, coreframeManagedWorkerSecrets, defineConfig, derivePrimaryWorkerConfig, importProjectDependency, importProjectModule, normalizeWorkerEnvironment, primaryWorkerConfigPath, primaryWorkerEnvironments, readProjectBreakpoints, readProjectConfig, validateBreakpoints, validateWorkerInventoryOwnership, workerBindingNames, wranglerEnvironmentNames };
208
+ export { AssetsConfig, BreakpointsConfig, CoreframeConfig, DatabaseConfig, DatabaseDialect, DeployConfig, DeployContext, DeployEnvironment, DeployEnvironmentConfig, DeployMode, DeploySmokeCheck, DevConfig, DevPlatform, FlutterConfig, FlutterDeepLinkConfig, I18nConfig, JsonObject, JsonValue, PreviewAccessBypassConfig, PreviewAccessConfig, PreviewAccessIpContext, PreviewAccessIpResolver, PreviewConfig, PreviewTunnelConfig, PreviewWorkerConfig, PrimaryWorkerContributions, PrimaryWorkerEnvironment, StagingHostnameConfig, WorkerConfig, WorkerDeployEnvironment, WorkerEnvironmentDeclaration, WorkerEnvironmentKind, WorkerEnvironmentVariableConfig, WranglerConfig, breakpointNames, coreframeGeneratedWorkerVariables, coreframeLocalWorkerVariables, coreframeManagedWorkerSecrets, defineConfig, derivePrimaryWorkerConfig, importProjectDependency, importProjectModule, normalizeWorkerEnvironment, primaryWorkerConfigPath, primaryWorkerEnvironments, readProjectBreakpoints, readProjectConfig, validateBreakpoints, validateWorkerInventoryOwnership, workerBindingNames, wranglerEnvironmentNames };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coreframe/config",
3
- "version": "0.1.11",
3
+ "version": "0.1.13",
4
4
  "description": "Environment and project configuration utilities for Coreframe apps",
5
5
  "repository": {
6
6
  "type": "git",