@aws-amplify/graphql-transformer-interfaces 2.2.1-alpha.9 → 2.2.2-agqlac.0

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 (39) hide show
  1. package/API.md +111 -17
  2. package/CHANGELOG.md +8 -0
  3. package/lib/amplify-api-resource-stack-types.d.ts +77 -0
  4. package/lib/amplify-api-resource-stack-types.d.ts.map +1 -0
  5. package/lib/amplify-api-resource-stack-types.js +3 -0
  6. package/lib/amplify-api-resource-stack-types.js.map +1 -0
  7. package/lib/graphql-api-provider.d.ts +1 -0
  8. package/lib/graphql-api-provider.d.ts.map +1 -1
  9. package/lib/index.d.ts +2 -1
  10. package/lib/index.d.ts.map +1 -1
  11. package/lib/index.js.map +1 -1
  12. package/lib/transformer-context/index.d.ts +1 -0
  13. package/lib/transformer-context/index.d.ts.map +1 -1
  14. package/lib/transformer-context/overrides-provider.d.ts +5 -0
  15. package/lib/transformer-context/overrides-provider.d.ts.map +1 -0
  16. package/lib/{feature-flag-provider.js → transformer-context/overrides-provider.js} +1 -1
  17. package/lib/transformer-context/overrides-provider.js.map +1 -0
  18. package/lib/transformer-context/transform-parameters.d.ts +9 -0
  19. package/lib/transformer-context/transform-parameters.d.ts.map +1 -0
  20. package/lib/transformer-context/transform-parameters.js +3 -0
  21. package/lib/transformer-context/transform-parameters.js.map +1 -0
  22. package/lib/transformer-context/transformer-context-provider.d.ts +7 -5
  23. package/lib/transformer-context/transformer-context-provider.d.ts.map +1 -1
  24. package/lib/transformer-context/transformer-preprocess-context-provider.d.ts +2 -2
  25. package/lib/transformer-context/transformer-preprocess-context-provider.d.ts.map +1 -1
  26. package/package.json +2 -2
  27. package/src/amplify-api-resource-stack-types.ts +93 -0
  28. package/src/graphql-api-provider.ts +1 -0
  29. package/src/index.ts +9 -5
  30. package/src/transformer-context/index.ts +1 -0
  31. package/src/transformer-context/overrides-provider.ts +5 -0
  32. package/src/transformer-context/transform-parameters.ts +21 -0
  33. package/src/transformer-context/transformer-context-provider.ts +7 -5
  34. package/src/transformer-context/transformer-preprocess-context-provider.ts +2 -2
  35. package/tsconfig.tsbuildinfo +1 -1
  36. package/lib/feature-flag-provider.d.ts +0 -6
  37. package/lib/feature-flag-provider.d.ts.map +0 -1
  38. package/lib/feature-flag-provider.js.map +0 -1
  39. package/src/feature-flag-provider.ts +0 -5
@@ -116,6 +116,7 @@ export type MappingTemplateProvider = InlineMappingTemplateProvider | S3MappingT
116
116
  export interface GraphQLAPIProvider extends IConstruct {
117
117
  readonly apiId: string;
118
118
  readonly host: TransformHostProvider;
119
+ readonly name: string;
119
120
 
120
121
  // getDefaultAuthorization(): Readonly<AuthorizationMode>;
121
122
  // getAdditionalAuthorizationModes(): Readonly<AuthorizationMode[]>;
package/src/index.ts CHANGED
@@ -8,8 +8,6 @@ export {
8
8
  TransformerModelEnhancementProvider,
9
9
  TransformerAuthProvider,
10
10
  } from './transformer-model-provider';
11
- export { FeatureFlagProvider } from './feature-flag-provider';
12
-
13
11
  export {
14
12
  GraphQLAPIProvider,
15
13
  AppSyncFunctionConfigurationProvider,
@@ -31,9 +29,7 @@ export {
31
29
  UserPoolConfig,
32
30
  SearchableDataSourceOptions,
33
31
  } from './graphql-api-provider';
34
-
35
32
  export { TransformHostProvider, DynamoDbDataSourceOptions } from './transform-host-provider';
36
-
37
33
  export {
38
34
  DeploymentResources,
39
35
  NestedStacks,
@@ -41,5 +37,13 @@ export {
41
37
  StackMapping,
42
38
  Template,
43
39
  } from './deployment-resources';
44
-
45
40
  export { TransformerLog, TransformerLogLevel } from './transformer-log';
41
+ export {
42
+ AmplifyApiGraphQlResourceStackTemplate,
43
+ AppsyncStackCommon,
44
+ FunctionDirectiveStack,
45
+ HttpsDirectiveStack,
46
+ ModelDirectiveStack,
47
+ OpenSearchDirectiveStack,
48
+ } from './amplify-api-resource-stack-types';
49
+ export type { TransformParameters } from './transformer-context/transform-parameters';
@@ -20,3 +20,4 @@ export {
20
20
  export { TransformerSchemaHelperProvider } from './schema-helper-provider';
21
21
  export { TransformerPreProcessContextProvider } from './transformer-preprocess-context-provider';
22
22
  export { StackManagerProvider } from './stack-manager-provider';
23
+ export { OverridesProvider } from './overrides-provider';
@@ -0,0 +1,5 @@
1
+ import { AmplifyApiGraphQlResourceStackTemplate } from "../amplify-api-resource-stack-types";
2
+
3
+ export interface OverridesProvider {
4
+ (): AmplifyApiGraphQlResourceStackTemplate;
5
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Strongly typed set of shared parameters for all transformers, and core layer.
3
+ * This is intended to replace feature flags, to ensure param coercion happens in
4
+ * a single location, and isn't spread around the transformers, where they can
5
+ * have different default behaviors.
6
+ */
7
+ export type TransformParameters = {
8
+ // General Model Params
9
+ shouldDeepMergeDirectiveConfigDefaults: boolean;
10
+
11
+ // Auth Params
12
+ useSubUsernameForDefaultIdentityClaim: boolean;
13
+ populateOwnerFieldForStaticGroupAuth: boolean;
14
+
15
+ // Index Params
16
+ secondaryKeyAsGSI: boolean;
17
+ enableAutoIndexQueryNames: boolean;
18
+
19
+ // Relational Params
20
+ respectPrimaryKeyAttributesOnConnectionField: boolean;
21
+ };
@@ -6,7 +6,8 @@ import { TransformerContextOutputProvider } from './transformer-context-output-p
6
6
  import { StackManagerProvider } from './stack-manager-provider';
7
7
  import { AppSyncAuthConfiguration, GraphQLAPIProvider } from '../graphql-api-provider';
8
8
  import { TransformerResourceHelperProvider } from './resource-resource-provider';
9
- import { FeatureFlagProvider } from '../feature-flag-provider';
9
+ import { OverridesProvider } from './overrides-provider';
10
+ import { TransformParameters } from './transform-parameters';
10
11
 
11
12
  export interface TransformerContextMetadataProvider {
12
13
  set<T>(key: string, value: T): void;
@@ -29,19 +30,20 @@ export interface TransformerContextProvider {
29
30
  stackManager: StackManagerProvider;
30
31
  api: GraphQLAPIProvider;
31
32
  resourceHelper: TransformerResourceHelperProvider;
32
- featureFlags: FeatureFlagProvider;
33
33
  authConfig: AppSyncAuthConfiguration;
34
34
  sandboxModeEnabled: boolean;
35
+ transformParameters: TransformParameters;
35
36
 
36
37
  isProjectUsingDataStore(): boolean;
37
38
  getResolverConfig<ResolverConfig>(): ResolverConfig | undefined;
39
+ getResourceOverrides: OverridesProvider;
38
40
  }
39
41
 
40
42
  export type TransformerBeforeStepContextProvider = Pick<
41
43
  TransformerContextProvider,
42
44
  | 'inputDocument'
43
45
  | 'modelToDatasourceMap'
44
- | 'featureFlags'
46
+ | 'transformParameters'
45
47
  | 'isProjectUsingDataStore'
46
48
  | 'getResolverConfig'
47
49
  | 'authConfig'
@@ -55,7 +57,7 @@ export type TransformerSchemaVisitStepContextProvider = Pick<
55
57
  | 'modelToDatasourceMap'
56
58
  | 'output'
57
59
  | 'providerRegistry'
58
- | 'featureFlags'
60
+ | 'transformParameters'
59
61
  | 'isProjectUsingDataStore'
60
62
  | 'getResolverConfig'
61
63
  | 'metadata'
@@ -71,7 +73,7 @@ export type TransformerValidationStepContextProvider = Pick<
71
73
  | 'output'
72
74
  | 'providerRegistry'
73
75
  | 'dataSources'
74
- | 'featureFlags'
76
+ | 'transformParameters'
75
77
  | 'isProjectUsingDataStore'
76
78
  | 'getResolverConfig'
77
79
  | 'metadata'
@@ -1,9 +1,9 @@
1
1
  import { DocumentNode } from 'graphql';
2
- import { FeatureFlagProvider } from '../feature-flag-provider';
3
2
  import { TransformerSchemaHelperProvider } from './schema-helper-provider';
3
+ import { TransformParameters } from './transform-parameters';
4
4
 
5
5
  export interface TransformerPreProcessContextProvider {
6
6
  inputDocument: DocumentNode;
7
- featureFlags: FeatureFlagProvider;
7
+ transformParameters: TransformParameters;
8
8
  schemaHelper: TransformerSchemaHelperProvider;
9
9
  }