@awsless/awsless 0.0.8 → 0.0.9

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.
@@ -0,0 +1,6 @@
1
+ // src/plugin.ts
2
+ var definePlugin = (plugin) => plugin;
3
+
4
+ export {
5
+ definePlugin
6
+ };
package/dist/index.cjs CHANGED
@@ -20,13 +20,44 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var src_exports = {};
22
22
  __export(src_exports, {
23
- definePlugin: () => definePlugin
23
+ Queue: () => Queue,
24
+ Store: () => Store,
25
+ Table: () => Table,
26
+ definePlugin: () => definePlugin,
27
+ getResourceName: () => getResourceName,
28
+ getResourceProxy: () => getResourceProxy
24
29
  });
25
30
  module.exports = __toCommonJS(src_exports);
26
31
 
27
32
  // src/plugin.ts
28
33
  var definePlugin = (plugin) => plugin;
34
+
35
+ // src/node/resource.ts
36
+ var getResourceName = (type, id) => {
37
+ const key = `RESOURCE_${type.toUpperCase()}_${id}`;
38
+ const value = process.env[key];
39
+ if (!value) {
40
+ throw new TypeError(`Resource type: "${type}" id: "${id}" doesn't exist.`);
41
+ }
42
+ return value;
43
+ };
44
+ var getResourceProxy = (type) => {
45
+ return new Proxy({}, {
46
+ get(_, id) {
47
+ return getResourceName(type, id);
48
+ }
49
+ });
50
+ };
51
+ var Function = getResourceProxy("FUNCTION");
52
+ var Table = getResourceProxy("TABLE");
53
+ var Queue = getResourceProxy("QUEUE");
54
+ var Store = getResourceProxy("STORE");
29
55
  // Annotate the CommonJS export names for ESM import in node:
30
56
  0 && (module.exports = {
31
- definePlugin
57
+ Queue,
58
+ Store,
59
+ Table,
60
+ definePlugin,
61
+ getResourceName,
62
+ getResourceProxy
32
63
  });
package/dist/index.d.ts CHANGED
@@ -8,19 +8,15 @@ import { AwsCredentialIdentityProvider } from '@aws-sdk/types';
8
8
  import { Function } from 'aws-cdk-lib/aws-lambda';
9
9
  import * as aws_cdk_lib_aws_lambda_index_js from 'aws-cdk-lib/aws-lambda/index.js';
10
10
 
11
- type StackConfig$1 = {
12
- name: string;
13
- depends?: Array<StackConfig$1>;
14
- };
15
-
16
11
  type AssetDetails = Record<string, string>;
17
12
  type AssetOptions = {
18
13
  id: number;
19
- stack: StackConfig$1;
14
+ stackName: string;
20
15
  resource: string;
21
16
  resourceName: string;
22
17
  build?: () => Promise<AssetDetails | void> | AssetDetails | void;
23
18
  publish?: () => Promise<AssetDetails | void> | AssetDetails | void;
19
+ clean?: () => Promise<void> | void;
24
20
  };
25
21
  declare class Assets {
26
22
  private assets;
@@ -29,12 +25,17 @@ declare class Assets {
29
25
  list(): Record<string, (AssetOptions & {
30
26
  id: number;
31
27
  })[]>;
32
- forEach(cb: (stack: StackConfig$1, assets: AssetOptions[]) => void): void;
33
- map(cb: (stack: StackConfig$1, assets: AssetOptions[]) => Promise<void>): Promise<void>[];
28
+ forEach(cb: (stackName: string, assets: AssetOptions[]) => void): void;
29
+ map(cb: (stackName: string, assets: AssetOptions[]) => Promise<void>): Promise<void>[];
34
30
  }
35
31
 
36
32
  type Credentials = AwsCredentialIdentityProvider;
37
33
 
34
+ type StackConfig$1 = {
35
+ name: string;
36
+ depends?: Array<StackConfig$1>;
37
+ };
38
+
38
39
  declare const AppSchema: z.ZodObject<{
39
40
  name: z.ZodString;
40
41
  region: z.ZodEnum<["us-east-2", "us-east-1", "us-west-1", "us-west-2", "af-south-1", "ap-east-1", "ap-south-2", "ap-southeast-3", "ap-southeast-4", "ap-south-1", "ap-northeast-3", "ap-northeast-2", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ca-central-1", "eu-central-1", "eu-west-1", "eu-west-2", "eu-south-1", "eu-west-3", "eu-south-2", "eu-north-1", "eu-central-2", "me-south-1", "me-central-1", "sa-east-1"]>;
@@ -94,9 +95,9 @@ type AppContext<S extends AnyZodObject | undefined = undefined> = {
94
95
  type Plugin<S extends AnyZodObject | undefined = undefined> = {
95
96
  name: string;
96
97
  schema?: S;
97
- onBootstrap?: (config: BootstrapContext<S>) => void;
98
+ onBootstrap?: (context: BootstrapContext<S>) => Function[] | void;
98
99
  onStack?: (context: StackContext<S>) => Function[] | void;
99
- onApp?: (config: AppContext<S>) => void;
100
+ onApp?: (context: AppContext<S>) => void;
100
101
  };
101
102
  declare const definePlugin: <S extends AnyZodObject | undefined = undefined>(plugin: Plugin<S>) => Plugin<S>;
102
103
 
@@ -980,10 +981,393 @@ declare const defaultPlugins: (Plugin<zod.ZodObject<{
980
981
  stacks: {
981
982
  searchs?: string[] | undefined;
982
983
  }[];
984
+ }>> | Plugin<zod.ZodObject<{
985
+ defaults: zod.ZodDefault<zod.ZodObject<{
986
+ graphql: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodObject<{
987
+ authorization: zod.ZodOptional<zod.ZodObject<{
988
+ authorizer: zod.ZodUnion<[zod.ZodEffects<zod.ZodString, string, string>, zod.ZodObject<{
989
+ file: zod.ZodEffects<zod.ZodString, string, string>;
990
+ timeout: zod.ZodOptional<zod.ZodEffects<zod.ZodType<`${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days`, zod.ZodTypeDef, `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days`>, aws_cdk_lib.Duration, `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days`>>;
991
+ runtime: zod.ZodOptional<zod.ZodEffects<zod.ZodEnum<["container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go"]>, aws_cdk_lib_aws_lambda_index_js.Runtime, "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go">>;
992
+ memorySize: zod.ZodOptional<zod.ZodEffects<zod.ZodType<`${number} KB` | `${number} MB` | `${number} GB`, zod.ZodTypeDef, `${number} KB` | `${number} MB` | `${number} GB`>, aws_cdk_lib.Size, `${number} KB` | `${number} MB` | `${number} GB`>>;
993
+ architecture: zod.ZodOptional<zod.ZodEffects<zod.ZodEnum<["x86_64", "arm_64"]>, aws_cdk_lib_aws_lambda_index_js.Architecture, "x86_64" | "arm_64">>;
994
+ ephemeralStorageSize: zod.ZodOptional<zod.ZodEffects<zod.ZodType<`${number} KB` | `${number} MB` | `${number} GB`, zod.ZodTypeDef, `${number} KB` | `${number} MB` | `${number} GB`>, aws_cdk_lib.Size, `${number} KB` | `${number} MB` | `${number} GB`>>;
995
+ retryAttempts: zod.ZodNumber;
996
+ environment: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodString>>;
997
+ }, "strip", zod.ZodTypeAny, {
998
+ retryAttempts: number;
999
+ file: string;
1000
+ timeout?: aws_cdk_lib.Duration | undefined;
1001
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1002
+ memorySize?: aws_cdk_lib.Size | undefined;
1003
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1004
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1005
+ environment?: Record<string, string> | undefined;
1006
+ }, {
1007
+ retryAttempts: number;
1008
+ file: string;
1009
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1010
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1011
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1012
+ architecture?: "x86_64" | "arm_64" | undefined;
1013
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1014
+ environment?: Record<string, string> | undefined;
1015
+ }>]>;
1016
+ ttl: zod.ZodDefault<zod.ZodEffects<zod.ZodType<`${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days`, zod.ZodTypeDef, `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days`>, aws_cdk_lib.Duration, `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days`>>;
1017
+ }, "strip", zod.ZodTypeAny, {
1018
+ authorizer: (string | {
1019
+ retryAttempts: number;
1020
+ file: string;
1021
+ timeout?: aws_cdk_lib.Duration | undefined;
1022
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1023
+ memorySize?: aws_cdk_lib.Size | undefined;
1024
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1025
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1026
+ environment?: Record<string, string> | undefined;
1027
+ }) & (string | {
1028
+ retryAttempts: number;
1029
+ file: string;
1030
+ timeout?: aws_cdk_lib.Duration | undefined;
1031
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1032
+ memorySize?: aws_cdk_lib.Size | undefined;
1033
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1034
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1035
+ environment?: Record<string, string> | undefined;
1036
+ } | undefined);
1037
+ ttl: aws_cdk_lib.Duration;
1038
+ }, {
1039
+ authorizer: (string | {
1040
+ retryAttempts: number;
1041
+ file: string;
1042
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1043
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1044
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1045
+ architecture?: "x86_64" | "arm_64" | undefined;
1046
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1047
+ environment?: Record<string, string> | undefined;
1048
+ }) & (string | {
1049
+ retryAttempts: number;
1050
+ file: string;
1051
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1052
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1053
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1054
+ architecture?: "x86_64" | "arm_64" | undefined;
1055
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1056
+ environment?: Record<string, string> | undefined;
1057
+ } | undefined);
1058
+ ttl?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1059
+ }>>;
1060
+ mappingTemplate: zod.ZodOptional<zod.ZodObject<{
1061
+ request: zod.ZodOptional<zod.ZodEffects<zod.ZodString, string, string>>;
1062
+ response: zod.ZodOptional<zod.ZodEffects<zod.ZodString, string, string>>;
1063
+ }, "strip", zod.ZodTypeAny, {
1064
+ request?: string | undefined;
1065
+ response?: string | undefined;
1066
+ }, {
1067
+ request?: string | undefined;
1068
+ response?: string | undefined;
1069
+ }>>;
1070
+ }, "strip", zod.ZodTypeAny, {
1071
+ authorization?: {
1072
+ authorizer: (string | {
1073
+ retryAttempts: number;
1074
+ file: string;
1075
+ timeout?: aws_cdk_lib.Duration | undefined;
1076
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1077
+ memorySize?: aws_cdk_lib.Size | undefined;
1078
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1079
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1080
+ environment?: Record<string, string> | undefined;
1081
+ }) & (string | {
1082
+ retryAttempts: number;
1083
+ file: string;
1084
+ timeout?: aws_cdk_lib.Duration | undefined;
1085
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1086
+ memorySize?: aws_cdk_lib.Size | undefined;
1087
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1088
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1089
+ environment?: Record<string, string> | undefined;
1090
+ } | undefined);
1091
+ ttl: aws_cdk_lib.Duration;
1092
+ } | undefined;
1093
+ mappingTemplate?: {
1094
+ request?: string | undefined;
1095
+ response?: string | undefined;
1096
+ } | undefined;
1097
+ }, {
1098
+ authorization?: {
1099
+ authorizer: (string | {
1100
+ retryAttempts: number;
1101
+ file: string;
1102
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1103
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1104
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1105
+ architecture?: "x86_64" | "arm_64" | undefined;
1106
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1107
+ environment?: Record<string, string> | undefined;
1108
+ }) & (string | {
1109
+ retryAttempts: number;
1110
+ file: string;
1111
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1112
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1113
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1114
+ architecture?: "x86_64" | "arm_64" | undefined;
1115
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1116
+ environment?: Record<string, string> | undefined;
1117
+ } | undefined);
1118
+ ttl?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1119
+ } | undefined;
1120
+ mappingTemplate?: {
1121
+ request?: string | undefined;
1122
+ response?: string | undefined;
1123
+ } | undefined;
1124
+ }>>>;
1125
+ }, "strip", zod.ZodTypeAny, {
1126
+ graphql?: Record<string, {
1127
+ authorization?: {
1128
+ authorizer: (string | {
1129
+ retryAttempts: number;
1130
+ file: string;
1131
+ timeout?: aws_cdk_lib.Duration | undefined;
1132
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1133
+ memorySize?: aws_cdk_lib.Size | undefined;
1134
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1135
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1136
+ environment?: Record<string, string> | undefined;
1137
+ }) & (string | {
1138
+ retryAttempts: number;
1139
+ file: string;
1140
+ timeout?: aws_cdk_lib.Duration | undefined;
1141
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1142
+ memorySize?: aws_cdk_lib.Size | undefined;
1143
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1144
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1145
+ environment?: Record<string, string> | undefined;
1146
+ } | undefined);
1147
+ ttl: aws_cdk_lib.Duration;
1148
+ } | undefined;
1149
+ mappingTemplate?: {
1150
+ request?: string | undefined;
1151
+ response?: string | undefined;
1152
+ } | undefined;
1153
+ }> | undefined;
1154
+ }, {
1155
+ graphql?: Record<string, {
1156
+ authorization?: {
1157
+ authorizer: (string | {
1158
+ retryAttempts: number;
1159
+ file: string;
1160
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1161
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1162
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1163
+ architecture?: "x86_64" | "arm_64" | undefined;
1164
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1165
+ environment?: Record<string, string> | undefined;
1166
+ }) & (string | {
1167
+ retryAttempts: number;
1168
+ file: string;
1169
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1170
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1171
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1172
+ architecture?: "x86_64" | "arm_64" | undefined;
1173
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1174
+ environment?: Record<string, string> | undefined;
1175
+ } | undefined);
1176
+ ttl?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1177
+ } | undefined;
1178
+ mappingTemplate?: {
1179
+ request?: string | undefined;
1180
+ response?: string | undefined;
1181
+ } | undefined;
1182
+ }> | undefined;
1183
+ }>>;
1184
+ stacks: zod.ZodArray<zod.ZodObject<{
1185
+ graphql: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodObject<{
1186
+ schema: zod.ZodOptional<zod.ZodUnion<[zod.ZodEffects<zod.ZodString, string, string>, zod.ZodArray<zod.ZodEffects<zod.ZodString, string, string>, "many">]>>;
1187
+ resolvers: zod.ZodOptional<zod.ZodRecord<zod.ZodType<`${string} ${string}`, zod.ZodTypeDef, `${string} ${string}`>, zod.ZodUnion<[zod.ZodEffects<zod.ZodString, string, string>, zod.ZodObject<{
1188
+ file: zod.ZodEffects<zod.ZodString, string, string>;
1189
+ timeout: zod.ZodOptional<zod.ZodEffects<zod.ZodType<`${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days`, zod.ZodTypeDef, `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days`>, aws_cdk_lib.Duration, `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days`>>;
1190
+ runtime: zod.ZodOptional<zod.ZodEffects<zod.ZodEnum<["container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go"]>, aws_cdk_lib_aws_lambda_index_js.Runtime, "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go">>;
1191
+ memorySize: zod.ZodOptional<zod.ZodEffects<zod.ZodType<`${number} KB` | `${number} MB` | `${number} GB`, zod.ZodTypeDef, `${number} KB` | `${number} MB` | `${number} GB`>, aws_cdk_lib.Size, `${number} KB` | `${number} MB` | `${number} GB`>>;
1192
+ architecture: zod.ZodOptional<zod.ZodEffects<zod.ZodEnum<["x86_64", "arm_64"]>, aws_cdk_lib_aws_lambda_index_js.Architecture, "x86_64" | "arm_64">>;
1193
+ ephemeralStorageSize: zod.ZodOptional<zod.ZodEffects<zod.ZodType<`${number} KB` | `${number} MB` | `${number} GB`, zod.ZodTypeDef, `${number} KB` | `${number} MB` | `${number} GB`>, aws_cdk_lib.Size, `${number} KB` | `${number} MB` | `${number} GB`>>;
1194
+ retryAttempts: zod.ZodNumber;
1195
+ environment: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodString>>;
1196
+ }, "strip", zod.ZodTypeAny, {
1197
+ retryAttempts: number;
1198
+ file: string;
1199
+ timeout?: aws_cdk_lib.Duration | undefined;
1200
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1201
+ memorySize?: aws_cdk_lib.Size | undefined;
1202
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1203
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1204
+ environment?: Record<string, string> | undefined;
1205
+ }, {
1206
+ retryAttempts: number;
1207
+ file: string;
1208
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1209
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1210
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1211
+ architecture?: "x86_64" | "arm_64" | undefined;
1212
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1213
+ environment?: Record<string, string> | undefined;
1214
+ }>]>>>;
1215
+ }, "strip", zod.ZodTypeAny, {
1216
+ schema?: string | string[] | undefined;
1217
+ resolvers?: Partial<Record<`${string} ${string}`, string | {
1218
+ retryAttempts: number;
1219
+ file: string;
1220
+ timeout?: aws_cdk_lib.Duration | undefined;
1221
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1222
+ memorySize?: aws_cdk_lib.Size | undefined;
1223
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1224
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1225
+ environment?: Record<string, string> | undefined;
1226
+ }>> | undefined;
1227
+ }, {
1228
+ schema?: string | string[] | undefined;
1229
+ resolvers?: Partial<Record<`${string} ${string}`, string | {
1230
+ retryAttempts: number;
1231
+ file: string;
1232
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1233
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1234
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1235
+ architecture?: "x86_64" | "arm_64" | undefined;
1236
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1237
+ environment?: Record<string, string> | undefined;
1238
+ }>> | undefined;
1239
+ }>>>;
1240
+ }, "strip", zod.ZodTypeAny, {
1241
+ graphql?: Record<string, {
1242
+ schema?: string | string[] | undefined;
1243
+ resolvers?: Partial<Record<`${string} ${string}`, string | {
1244
+ retryAttempts: number;
1245
+ file: string;
1246
+ timeout?: aws_cdk_lib.Duration | undefined;
1247
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1248
+ memorySize?: aws_cdk_lib.Size | undefined;
1249
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1250
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1251
+ environment?: Record<string, string> | undefined;
1252
+ }>> | undefined;
1253
+ }> | undefined;
1254
+ }, {
1255
+ graphql?: Record<string, {
1256
+ schema?: string | string[] | undefined;
1257
+ resolvers?: Partial<Record<`${string} ${string}`, string | {
1258
+ retryAttempts: number;
1259
+ file: string;
1260
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1261
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1262
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1263
+ architecture?: "x86_64" | "arm_64" | undefined;
1264
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1265
+ environment?: Record<string, string> | undefined;
1266
+ }>> | undefined;
1267
+ }> | undefined;
1268
+ }>, "many">;
1269
+ }, "strip", zod.ZodTypeAny, {
1270
+ defaults: {
1271
+ graphql?: Record<string, {
1272
+ authorization?: {
1273
+ authorizer: (string | {
1274
+ retryAttempts: number;
1275
+ file: string;
1276
+ timeout?: aws_cdk_lib.Duration | undefined;
1277
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1278
+ memorySize?: aws_cdk_lib.Size | undefined;
1279
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1280
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1281
+ environment?: Record<string, string> | undefined;
1282
+ }) & (string | {
1283
+ retryAttempts: number;
1284
+ file: string;
1285
+ timeout?: aws_cdk_lib.Duration | undefined;
1286
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1287
+ memorySize?: aws_cdk_lib.Size | undefined;
1288
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1289
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1290
+ environment?: Record<string, string> | undefined;
1291
+ } | undefined);
1292
+ ttl: aws_cdk_lib.Duration;
1293
+ } | undefined;
1294
+ mappingTemplate?: {
1295
+ request?: string | undefined;
1296
+ response?: string | undefined;
1297
+ } | undefined;
1298
+ }> | undefined;
1299
+ };
1300
+ stacks: {
1301
+ graphql?: Record<string, {
1302
+ schema?: string | string[] | undefined;
1303
+ resolvers?: Partial<Record<`${string} ${string}`, string | {
1304
+ retryAttempts: number;
1305
+ file: string;
1306
+ timeout?: aws_cdk_lib.Duration | undefined;
1307
+ runtime?: aws_cdk_lib_aws_lambda_index_js.Runtime | undefined;
1308
+ memorySize?: aws_cdk_lib.Size | undefined;
1309
+ architecture?: aws_cdk_lib_aws_lambda_index_js.Architecture | undefined;
1310
+ ephemeralStorageSize?: aws_cdk_lib.Size | undefined;
1311
+ environment?: Record<string, string> | undefined;
1312
+ }>> | undefined;
1313
+ }> | undefined;
1314
+ }[];
1315
+ }, {
1316
+ stacks: {
1317
+ graphql?: Record<string, {
1318
+ schema?: string | string[] | undefined;
1319
+ resolvers?: Partial<Record<`${string} ${string}`, string | {
1320
+ retryAttempts: number;
1321
+ file: string;
1322
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1323
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1324
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1325
+ architecture?: "x86_64" | "arm_64" | undefined;
1326
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1327
+ environment?: Record<string, string> | undefined;
1328
+ }>> | undefined;
1329
+ }> | undefined;
1330
+ }[];
1331
+ defaults?: {
1332
+ graphql?: Record<string, {
1333
+ authorization?: {
1334
+ authorizer: (string | {
1335
+ retryAttempts: number;
1336
+ file: string;
1337
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1338
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1339
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1340
+ architecture?: "x86_64" | "arm_64" | undefined;
1341
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1342
+ environment?: Record<string, string> | undefined;
1343
+ }) & (string | {
1344
+ retryAttempts: number;
1345
+ file: string;
1346
+ timeout?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1347
+ runtime?: "container" | "rust" | "nodejs16.x" | "nodejs18.x" | "python3.9" | "python3.10" | "go1.x" | "go" | undefined;
1348
+ memorySize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1349
+ architecture?: "x86_64" | "arm_64" | undefined;
1350
+ ephemeralStorageSize?: `${number} KB` | `${number} MB` | `${number} GB` | undefined;
1351
+ environment?: Record<string, string> | undefined;
1352
+ } | undefined);
1353
+ ttl?: `${number} second` | `${number} seconds` | `${number} minute` | `${number} minutes` | `${number} hour` | `${number} hours` | `${number} day` | `${number} days` | undefined;
1354
+ } | undefined;
1355
+ mappingTemplate?: {
1356
+ request?: string | undefined;
1357
+ response?: string | undefined;
1358
+ } | undefined;
1359
+ }> | undefined;
1360
+ } | undefined;
983
1361
  }>>)[];
984
1362
  type CombinedDefaultPluginsConfigInput = ExtendedConfigInput<typeof defaultPlugins[number]['schema']>;
985
1363
 
1364
+ declare const getResourceName: (type: string, id: string) => string;
1365
+ declare const getResourceProxy: (type: string) => {};
1366
+ declare const Table: {};
1367
+ declare const Queue: {};
1368
+ declare const Store: {};
1369
+
986
1370
  type AppConfig = CombinedDefaultPluginsConfigInput;
987
1371
  type StackConfig = CombinedDefaultPluginsConfigInput['stacks'][number];
988
1372
 
989
- export { AppConfig, Plugin, StackConfig, definePlugin };
1373
+ export { AppConfig, Plugin, Queue, StackConfig, Store, Table, definePlugin, getResourceName, getResourceProxy };
package/dist/index.js CHANGED
@@ -1,6 +1,32 @@
1
1
  import {
2
2
  definePlugin
3
- } from "./chunk-6KILQ5DR.js";
3
+ } from "./chunk-PFTL6L4F.js";
4
+
5
+ // src/node/resource.ts
6
+ var getResourceName = (type, id) => {
7
+ const key = `RESOURCE_${type.toUpperCase()}_${id}`;
8
+ const value = process.env[key];
9
+ if (!value) {
10
+ throw new TypeError(`Resource type: "${type}" id: "${id}" doesn't exist.`);
11
+ }
12
+ return value;
13
+ };
14
+ var getResourceProxy = (type) => {
15
+ return new Proxy({}, {
16
+ get(_, id) {
17
+ return getResourceName(type, id);
18
+ }
19
+ });
20
+ };
21
+ var Function = getResourceProxy("FUNCTION");
22
+ var Table = getResourceProxy("TABLE");
23
+ var Queue = getResourceProxy("QUEUE");
24
+ var Store = getResourceProxy("STORE");
4
25
  export {
5
- definePlugin
26
+ Queue,
27
+ Store,
28
+ Table,
29
+ definePlugin,
30
+ getResourceName,
31
+ getResourceProxy
6
32
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awsless/awsless",
3
- "version": "0.0.8",
3
+ "version": "0.0.9",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "repository": {
@@ -30,6 +30,7 @@
30
30
  "@aws-sdk/client-ssm": "3.329.0",
31
31
  "@aws-sdk/client-sts": "^3.369.0",
32
32
  "@aws-sdk/credential-providers": "^3.369.0",
33
+ "@graphql-tools/merge": "^9.0.0",
33
34
  "@swc/core": "^1.3.70",
34
35
  "@types/pretty-hrtime": "^1.0.1",
35
36
  "aws-cdk-lib": "^2.87.0",
@@ -39,6 +40,7 @@
39
40
  "commander": "^9.4.1",
40
41
  "esbuild": "^0.18.15",
41
42
  "filesize": "^10.0.7",
43
+ "graphql": "^16.7.1",
42
44
  "jszip": "^3.10.1",
43
45
  "pretty-hrtime": "^1.0.3",
44
46
  "wrap-ansi": "^8.1.0",
@@ -1,15 +0,0 @@
1
- var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
2
- get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
3
- }) : x)(function(x) {
4
- if (typeof require !== "undefined")
5
- return require.apply(this, arguments);
6
- throw new Error('Dynamic require of "' + x + '" is not supported');
7
- });
8
-
9
- // src/plugin.ts
10
- var definePlugin = (plugin) => plugin;
11
-
12
- export {
13
- __require,
14
- definePlugin
15
- };