@resistdesign/voltra 3.0.0-alpha.30 → 3.0.0-alpha.32

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.
@@ -1,12 +1,2 @@
1
1
  export * from "./Types";
2
2
  export * from "./SupportedTypeInfoORMDBDrivers";
3
- /**
4
- * @category api
5
- * @group Type Dependencies
6
- */
7
- export type { ListItemsConfig, ListItemsResults, } from "../../../../common/SearchTypes";
8
- /**
9
- * @category api
10
- * @group Type Dependencies
11
- */
12
- export type { TypeInfoDataItem, TypeInfoPack, } from "../../../../common/TypeParsing/TypeInfo";
@@ -5,18 +5,4 @@ export * from "./InMemoryItemRelationshipDBDriver";
5
5
  export * from "./InMemoryFileItemDBDriver";
6
6
  export * from "./IndexingRelationshipDriver";
7
7
  export * from "./common";
8
- /**
9
- * @category api
10
- * @group Type Dependencies
11
- */
12
- export type { ListRelationshipsConfig, SearchCriteria, } from "../../../common/SearchTypes";
13
- /**
14
- * @category api
15
- * @group Type Dependencies
16
- */
17
- export type { TypeInfoMap, } from "../../../common/TypeParsing/TypeInfo";
18
- /**
19
- * @category api
20
- * @group Type Dependencies
21
- */
22
- export type { S3SpecificConfig, } from "./S3FileItemDBDriver/ConfigTypes";
8
+ export type { S3SpecificConfig } from "./S3FileItemDBDriver/ConfigTypes";
@@ -5,21 +5,6 @@ export * from "./drivers";
5
5
  export * from "./TypeInfoORMService";
6
6
  export * from "./DACUtils";
7
7
  export * from "./ORMRouteMap";
8
- /**
9
- * @category api
10
- * @group Type Dependencies
11
- */
12
- export type { DeleteRelationshipResults, ORMOperation, RelationshipOperation, TypeInfoORMAPI, TypeInfoORMContext, } from "../../common/TypeInfoORM/Types";
13
- /**
14
- * @category api
15
- * @group Type Dependencies
16
- */
17
- export type { LiteralValue, TypeInfo, TypeInfoField, TypeOperation, } from "../../common/TypeParsing/TypeInfo";
18
- /**
19
- * @category api
20
- * @group Type Dependencies
21
- */
22
- export type { CustomTypeInfoFieldValidatorMap, TypeInfoValidationResults, } from "../../common/TypeParsing/Validation";
23
8
  /**
24
9
  * @category api
25
10
  * @group Type Dependencies
@@ -9,8 +9,3 @@ export * from "./resolveSuite";
9
9
  export * from "./createAutoField";
10
10
  export * from "./createFormRenderer";
11
11
  export * from "./mergeSuites";
12
- /**
13
- * @category app
14
- * @group Type Dependencies
15
- */
16
- export type { LiteralValue, TypeInfoDataItem, TypeInfoField, } from "../../../common/TypeParsing/TypeInfo";
@@ -8,8 +8,3 @@ export type { ComponentSuite, FieldKind, FieldRenderContext, FieldRenderer, Fiel
8
8
  export { createAutoField, createFormRenderer, getFieldKind, mergeSuites, resolveSuite, withRendererOverride, } from "./core";
9
9
  export * from "./Engine";
10
10
  export * from "./UI";
11
- /**
12
- * @category app
13
- * @group Type Dependencies
14
- */
15
- export type { LiteralValue, TypeInfo, TypeInfoDataItem, TypeInfoField, TypeOperation, } from "../../common/TypeParsing/TypeInfo";
@@ -22,18 +22,3 @@ export * from "./UniversalRouteAdapter";
22
22
  export * from "./Service";
23
23
  export * from "./TypeInfoORMAPIUtils";
24
24
  export * from "./TypeInfoORMClient";
25
- /**
26
- * @category app
27
- * @group Type Dependencies
28
- */
29
- export type { ListItemsConfig, ListItemsResults, ListRelationshipsConfig, } from "../../common/SearchTypes";
30
- /**
31
- * @category app
32
- * @group Type Dependencies
33
- */
34
- export type { DeleteRelationshipResults, TypeInfoORMAPIRoutePaths, TypeInfoORMClientAPI, TypeInfoORMServiceError, } from "../../common/TypeInfoORM/Types";
35
- /**
36
- * @category app
37
- * @group Type Dependencies
38
- */
39
- export type { TypeInfoDataItem, } from "../../common/TypeParsing/TypeInfo";
@@ -29,35 +29,58 @@ type AddUserManagementConfigBase = {
29
29
  };
30
30
  type AddUserManagementConfigWithDomain = AddUserManagementConfigBase & {
31
31
  /**
32
- * Enable a custom Cognito user pool domain and associated Route53 records.
32
+ * Enable Cognito Hosted UI/OAuth redirect mode by creating a custom user pool
33
+ * domain plus Route53 records.
33
34
  *
34
- * Defaults to `true`.
35
+ * When enabled, the generated user pool client uses OAuth flows (`code`,
36
+ * `implicit`) and supports callback/logout/provider configuration.
37
+ *
38
+ * Defaults to `true`. Set `false` to opt out of Hosted UI resources and use
39
+ * SDK/API-based sign-in flows only.
35
40
  */
36
41
  enableUserPoolDomain?: true;
37
42
  /**
38
- * Base domain name for the user pool.
43
+ * Base domain name used to create the auth subdomain.
44
+ *
45
+ * The pack creates a Cognito domain at `auth.<domainName>`.
39
46
  */
40
47
  domainName: any;
41
48
  /**
42
- * Hosted zone id for DNS records.
49
+ * Route53 hosted zone id for DNS records under `domainName`.
43
50
  */
44
51
  hostedZoneId: any;
45
52
  /**
46
- * SSL certificate ARN for the user pool domain.
53
+ * ACM certificate ARN (in `us-east-1`) for the Cognito custom domain.
47
54
  */
48
55
  sslCertificateArn: any;
49
56
  /**
50
- * OAuth callback URLs.
57
+ * OAuth callback URLs for Hosted UI/federated redirect flows.
58
+ *
59
+ * These must be valid redirect URLs accepted by Cognito for the app client.
60
+ * They are required by Cognito when OAuth flows are enabled.
51
61
  */
52
62
  callbackUrls?: any[];
53
63
  /**
54
- * OAuth logout URLs.
64
+ * OAuth logout redirect URLs for Hosted UI sign-out.
55
65
  */
56
66
  logoutUrls?: any[];
67
+ /**
68
+ * Supported identity providers for Hosted UI/OAuth flows.
69
+ *
70
+ * Defaults to `["COGNITO"]`.
71
+ * Use Cognito provider names such as `"COGNITO"`, `"Google"`,
72
+ * `"SignInWithApple"`, `"LoginWithAmazon"`, or names for configured OIDC/SAML
73
+ * providers.
74
+ */
75
+ supportedIdentityProviders?: any[];
57
76
  };
58
77
  type AddUserManagementConfigWithoutDomain = AddUserManagementConfigBase & {
59
78
  /**
60
- * Disable custom Cognito user pool domain resources.
79
+ * Disable Cognito Hosted UI/OAuth redirect configuration.
80
+ *
81
+ * In this mode, the generated user pool client disables OAuth hosted-UI flows
82
+ * (`AllowedOAuthFlowsUserPoolClient: false`) so callback/logout/provider
83
+ * settings are intentionally disallowed.
61
84
  */
62
85
  enableUserPoolDomain: false;
63
86
  domainName?: never;
@@ -66,6 +89,7 @@ type AddUserManagementConfigWithoutDomain = AddUserManagementConfigBase & {
66
89
  baseDomainRecordAliasTargetDNSName?: never;
67
90
  callbackUrls?: never;
68
91
  logoutUrls?: never;
92
+ supportedIdentityProviders?: never;
69
93
  };
70
94
  /**
71
95
  * Configuration for {@link addUserManagement}.
@@ -33,39 +33,74 @@ type AddAuthConfigBase = {
33
33
  };
34
34
  type AddAuthConfigWithUserPoolDomain = AddAuthConfigBase & {
35
35
  /**
36
- * Enable a custom Cognito user pool domain and associated Route53 records.
36
+ * Enable Cognito Hosted UI/OAuth redirect mode by creating a custom user pool
37
+ * domain plus Route53 records.
37
38
  *
38
- * Defaults to `true`.
39
+ * When enabled, the generated user pool client uses OAuth flows (`code`,
40
+ * `implicit`) and supports callback/logout URL configuration.
41
+ *
42
+ * Defaults to `true`. Set `false` to opt out of Hosted UI resources and use
43
+ * SDK/API-based sign-in flows only.
39
44
  */
40
45
  enableUserPoolDomain?: true;
41
46
  /**
42
- * Parameter name for Route53 hosted zone id.
47
+ * Parameter name for the Route53 hosted zone id that owns `domainName`.
48
+ *
49
+ * Required when `enableUserPoolDomain` is not `false`.
43
50
  */
44
51
  hostedZoneIdParameterName: string;
45
52
  /**
46
- * Parameter name for base domain.
53
+ * Parameter name for the base domain used for the auth subdomain.
54
+ *
55
+ * The pack creates a Cognito domain at `auth.<base-domain>`.
56
+ * Required when `enableUserPoolDomain` is not `false`.
47
57
  */
48
58
  domainNameParameterName: string;
49
59
  /**
50
- * SSL certificate resource id for the user pool domain.
60
+ * ACM certificate resource id (in `us-east-1`) for the Cognito custom
61
+ * domain.
62
+ *
63
+ * Required when `enableUserPoolDomain` is not `false`.
51
64
  */
52
65
  sslCertificateId: string;
53
66
  /**
54
- * CloudFront distribution id for the main CDN.
67
+ * CloudFront distribution resource id used as the base-domain alias target.
68
+ *
69
+ * This is used for the root/base domain record before creating the auth
70
+ * subdomain record.
55
71
  */
56
72
  mainCDNCloudFrontId: string;
57
73
  /**
58
- * OAuth callback URLs.
74
+ * OAuth callback URLs for Hosted UI/federated redirect flows.
75
+ *
76
+ * These must be valid redirect URLs accepted by Cognito for the app client.
77
+ * They are required by Cognito when OAuth flows are enabled.
59
78
  */
60
79
  callbackUrls: any[];
61
80
  /**
62
- * OAuth logout URLs.
81
+ * OAuth logout redirect URLs for Hosted UI sign-out.
82
+ *
83
+ * These should match the application routes users are redirected to after
84
+ * logout.
63
85
  */
64
86
  logoutUrls: any[];
87
+ /**
88
+ * Supported identity providers for Hosted UI/OAuth flows.
89
+ *
90
+ * Defaults to `["COGNITO"]`.
91
+ * Use Cognito provider names such as `"COGNITO"`, `"Google"`,
92
+ * `"SignInWithApple"`, `"LoginWithAmazon"`, or names for configured OIDC/SAML
93
+ * providers.
94
+ */
95
+ supportedIdentityProviders?: any[];
65
96
  };
66
97
  type AddAuthConfigWithoutUserPoolDomain = AddAuthConfigBase & {
67
98
  /**
68
- * Disable custom Cognito user pool domain resources.
99
+ * Disable Cognito Hosted UI/OAuth redirect configuration.
100
+ *
101
+ * In this mode, the generated user pool client disables OAuth hosted-UI flows
102
+ * (`AllowedOAuthFlowsUserPoolClient: false`) so callback/logout/provider
103
+ * settings are intentionally disallowed.
69
104
  */
70
105
  enableUserPoolDomain: false;
71
106
  hostedZoneIdParameterName?: never;
@@ -74,6 +109,7 @@ type AddAuthConfigWithoutUserPoolDomain = AddAuthConfigBase & {
74
109
  mainCDNCloudFrontId?: never;
75
110
  callbackUrls?: never;
76
111
  logoutUrls?: never;
112
+ supportedIdentityProviders?: never;
77
113
  };
78
114
  /**
79
115
  * Configuration for {@link addAuth}.
@@ -14,6 +14,8 @@ var addUserManagement = createResourcePack(
14
14
  apiGatewayRESTAPIId,
15
15
  apiStageName
16
16
  } = config;
17
+ const isUserPoolDomainEnabled = config.enableUserPoolDomain !== false;
18
+ const supportedIdentityProviders = isUserPoolDomainEnabled && "supportedIdentityProviders" in config && config.supportedIdentityProviders && config.supportedIdentityProviders.length > 0 ? config.supportedIdentityProviders : ["COGNITO"];
17
19
  const apiRoleConfig = apiGatewayRESTAPIId && apiStageName ? {
18
20
  [`${id}IdentityPoolRoles`]: {
19
21
  Type: "AWS::Cognito::IdentityPoolRoleAttachment",
@@ -267,18 +269,22 @@ var addUserManagement = createResourcePack(
267
269
  UserPoolId: {
268
270
  Ref: id
269
271
  },
270
- AllowedOAuthFlowsUserPoolClient: true,
271
- AllowedOAuthFlows: ["code", "implicit"],
272
- AllowedOAuthScopes: [
273
- "openid",
274
- "email",
275
- "phone",
276
- "profile",
277
- "aws.cognito.signin.user.admin"
278
- ],
272
+ ...isUserPoolDomainEnabled ? {
273
+ AllowedOAuthFlowsUserPoolClient: true,
274
+ AllowedOAuthFlows: ["code", "implicit"],
275
+ AllowedOAuthScopes: [
276
+ "openid",
277
+ "email",
278
+ "phone",
279
+ "profile",
280
+ "aws.cognito.signin.user.admin"
281
+ ],
282
+ SupportedIdentityProviders: supportedIdentityProviders
283
+ } : {
284
+ AllowedOAuthFlowsUserPoolClient: false
285
+ },
279
286
  EnableTokenRevocation: true,
280
287
  PreventUserExistenceErrors: "ENABLED",
281
- SupportedIdentityProviders: ["COGNITO"],
282
288
  ...callbackUrls && callbackUrls.length > 0 ? { CallbackURLs: callbackUrls } : {},
283
289
  ...logoutUrls && logoutUrls.length > 0 ? { LogoutURLs: logoutUrls } : {}
284
290
  }
@@ -318,6 +324,7 @@ var addAuth = createResourcePack((config) => {
318
324
  unauthRoleName,
319
325
  callbackUrls,
320
326
  logoutUrls,
327
+ supportedIdentityProviders,
321
328
  apiCloudFunctionGatewayId,
322
329
  apiStageName,
323
330
  adminGroupId,
@@ -348,7 +355,8 @@ var addAuth = createResourcePack((config) => {
348
355
  "Fn::GetAtt": [config.mainCDNCloudFrontId, "DomainName"]
349
356
  },
350
357
  callbackUrls,
351
- logoutUrls
358
+ logoutUrls,
359
+ supportedIdentityProviders
352
360
  }
353
361
  }).patch({
354
362
  Resources: {
@@ -3,4 +3,3 @@
3
3
  *
4
4
  * Import from `@resistdesign/voltra/iac/packs`.
5
5
  */
6
- export * from "../iac/packs";
package/native/index.js CHANGED
@@ -1,5 +1,4 @@
1
1
  import { createHistoryBackHandler, buildHistoryPath, parseHistoryPath, createMemoryHistory, Route, buildRoutePath, computeTrackPixels } from '../chunk-G5CLUK4Y.js';
2
- export { buildHistoryPath, createHistoryBackHandler, createMemoryHistory, parseHistoryPath, useRouteContext } from '../chunk-G5CLUK4Y.js';
3
2
  import { createFormRenderer, AutoFormView, AutoForm, parseTemplate, validateAreas, computeAreaBounds } from '../chunk-WELZGQDJ.js';
4
3
  import '../chunk-IWRHGGGH.js';
5
4
  import { getPathArray } from '../chunk-GYWRAW3Y.js';
@@ -4,8 +4,7 @@
4
4
  * Native routing helpers that adapt common navigation state to RouteAdapter.
5
5
  */
6
6
  import { type PropsWithChildren } from "react";
7
- import type { RouteAdapter, RouteContextType, RouteProps, RouteProviderProps, RouteQuery, RouteQueryValue, RouteRuntimeIntegration } from "../../app/utils/Route";
8
- import { useRouteContext } from "../../app/utils/Route";
7
+ import type { RouteAdapter, RouteProps, RouteQuery, RouteRuntimeIntegration } from "../../app/utils/Route";
9
8
  /**
10
9
  * Options to adapt a navigation state container into a RouteAdapter.
11
10
  */
@@ -79,5 +78,3 @@ export declare const Route: <ParamsType extends Record<string, any>>(props: Prop
79
78
  * @returns Serialized path string.
80
79
  */
81
80
  export declare const buildPathFromRouteChain: (routeChain: NavigationRouteNode[], config: NavigationRouteConfig, query?: RouteQuery) => string;
82
- export { useRouteContext };
83
- export type { RouteAdapter, RouteContextType, RouteProps, RouteProviderProps, RouteQuery, RouteQueryValue, RouteRuntimeIntegration, };
@@ -3,7 +3,6 @@
3
3
  *
4
4
  * Native (render-agnostic) utilities.
5
5
  */
6
- export * from "../../app/utils/History";
7
6
  export * from "./EasyLayout";
8
7
  export * from "./History";
9
8
  export * from "./Route";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@resistdesign/voltra",
3
- "version": "3.0.0-alpha.30",
3
+ "version": "3.0.0-alpha.32",
4
4
  "description": "With our powers combined!",
5
5
  "homepage": "https://voltra.app",
6
6
  "repository": "git@github.com:resistdesign/voltra.git",
@@ -4,11 +4,7 @@
4
4
  * Web routing exports unified app Route implementation.
5
5
  */
6
6
  import { PropsWithChildren } from "react";
7
- import { Route, useRouteContext } from "../../app/utils/Route";
8
- import { createBrowserRouteAdapter } from "../../app/utils/UniversalRouteAdapter";
9
7
  /**
10
8
  * Backward-compatible web RouteProvider that auto-creates a browser adapter.
11
9
  */
12
10
  export declare const RouteProvider: ({ children }: PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
13
- export { Route, useRouteContext, createBrowserRouteAdapter };
14
- export type { RouteAdapter, RouteContextType, RouteProps, RouteProviderProps, RouteQuery, RouteQueryValue, } from "../../app/utils/Route";