aws-lambda-powertools 3.9.1a7__py3-none-any.whl → 3.9.1a8__py3-none-any.whl
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.
- aws_lambda_powertools/shared/version.py +1 -1
- aws_lambda_powertools/utilities/data_classes/api_gateway_websocket_event.py +8 -0
- aws_lambda_powertools/utilities/data_classes/transfer_family_event.py +5 -4
- aws_lambda_powertools/utilities/parser/models/__init__.py +4 -0
- aws_lambda_powertools/utilities/parser/models/appsync.py +70 -0
- {aws_lambda_powertools-3.9.1a7.dist-info → aws_lambda_powertools-3.9.1a8.dist-info}/METADATA +1 -1
- {aws_lambda_powertools-3.9.1a7.dist-info → aws_lambda_powertools-3.9.1a8.dist-info}/RECORD +9 -8
- {aws_lambda_powertools-3.9.1a7.dist-info → aws_lambda_powertools-3.9.1a8.dist-info}/LICENSE +0 -0
- {aws_lambda_powertools-3.9.1a7.dist-info → aws_lambda_powertools-3.9.1a8.dist-info}/WHEEL +0 -0
@@ -123,6 +123,14 @@ class APIGatewayWebSocketEvent(DictWrapper):
|
|
123
123
|
def multi_value_headers(self) -> dict[str, list[str]]:
|
124
124
|
return CaseInsensitiveDict(self.get("multiValueHeaders"))
|
125
125
|
|
126
|
+
@property
|
127
|
+
def query_string_parameters(self) -> dict[str, str]:
|
128
|
+
return CaseInsensitiveDict(self.get("queryStringParameters"))
|
129
|
+
|
130
|
+
@property
|
131
|
+
def multi_value_query_string_parameters(self) -> dict[str, list[str]]:
|
132
|
+
return CaseInsensitiveDict(self.get("multiValueQueryStringParameters"))
|
133
|
+
|
126
134
|
@property
|
127
135
|
def request_context(self) -> APIGatewayWebSocketEventRequestContext:
|
128
136
|
return APIGatewayWebSocketEventRequestContext(self["requestContext"])
|
@@ -1,5 +1,6 @@
|
|
1
1
|
from __future__ import annotations
|
2
2
|
|
3
|
+
import json
|
3
4
|
from typing import Any, Literal
|
4
5
|
|
5
6
|
from aws_lambda_powertools.utilities.data_classes.common import (
|
@@ -44,7 +45,7 @@ class TransferFamilyAuthorizerResponse:
|
|
44
45
|
role_arn: str,
|
45
46
|
policy: str | None = None,
|
46
47
|
home_directory: str | None = None,
|
47
|
-
home_directory_details: dict | None = None,
|
48
|
+
home_directory_details: list[dict] | None = None,
|
48
49
|
home_directory_type: Literal["LOGICAL", "PATH"] = "PATH",
|
49
50
|
user_gid: int | None = None,
|
50
51
|
user_uid: int | None = None,
|
@@ -62,7 +63,7 @@ class TransferFamilyAuthorizerResponse:
|
|
62
63
|
if not home_directory_details:
|
63
64
|
raise ValueError("home_directory_details must be set when home_directory_type is LOGICAL")
|
64
65
|
|
65
|
-
response["HomeDirectoryDetails"] =
|
66
|
+
response["HomeDirectoryDetails"] = json.dumps(home_directory_details)
|
66
67
|
|
67
68
|
else:
|
68
69
|
raise ValueError(f"Invalid home_directory_type: {home_directory_type}")
|
@@ -88,7 +89,7 @@ class TransferFamilyAuthorizerResponse:
|
|
88
89
|
user_uid: int,
|
89
90
|
policy: str | None = None,
|
90
91
|
home_directory: str | None = None,
|
91
|
-
home_directory_details: dict | None = None,
|
92
|
+
home_directory_details: list[dict] | None = None,
|
92
93
|
home_directory_type: Literal["LOGICAL", "PATH"] = "PATH",
|
93
94
|
public_keys: str | None = None,
|
94
95
|
) -> dict[str, Any]:
|
@@ -143,7 +144,7 @@ class TransferFamilyAuthorizerResponse:
|
|
143
144
|
role_arn: str,
|
144
145
|
policy: str | None = None,
|
145
146
|
home_directory: str | None = None,
|
146
|
-
home_directory_details: dict | None = None,
|
147
|
+
home_directory_details: list[dict] | None = None,
|
147
148
|
home_directory_type: Literal["LOGICAL", "PATH"] = "PATH",
|
148
149
|
public_keys: str | None = None,
|
149
150
|
) -> dict[str, Any]:
|
@@ -27,6 +27,9 @@ from .apigwv2 import (
|
|
27
27
|
RequestContextV2AuthorizerJwt,
|
28
28
|
RequestContextV2Http,
|
29
29
|
)
|
30
|
+
from .appsync import (
|
31
|
+
AppSyncResolverEventModel,
|
32
|
+
)
|
30
33
|
from .bedrock_agent import (
|
31
34
|
BedrockAgentEventModel,
|
32
35
|
BedrockAgentModel,
|
@@ -137,6 +140,7 @@ __all__ = [
|
|
137
140
|
"AlbModel",
|
138
141
|
"AlbRequestContext",
|
139
142
|
"AlbRequestContextData",
|
143
|
+
"AppSyncResolverEventModel",
|
140
144
|
"DynamoDBStreamModel",
|
141
145
|
"EventBridgeModel",
|
142
146
|
"DynamoDBStreamChangedRecordModel",
|
@@ -0,0 +1,70 @@
|
|
1
|
+
from typing import Optional, List, Dict, Union, Any
|
2
|
+
from pydantic import BaseModel
|
3
|
+
|
4
|
+
class AppSyncIamIdentity(BaseModel):
|
5
|
+
accountId: str
|
6
|
+
cognitoIdentityPoolId: Optional[str]
|
7
|
+
cognitoIdentityId: Optional[str]
|
8
|
+
sourceIp: List[str]
|
9
|
+
username: str
|
10
|
+
userArn: str
|
11
|
+
cognitoIdentityAuthType: Optional[str]
|
12
|
+
cognitoIdentityAuthProvider: Optional[str]
|
13
|
+
|
14
|
+
|
15
|
+
class AppSyncCognitoIdentity(BaseModel):
|
16
|
+
sub: str
|
17
|
+
issuer: str
|
18
|
+
username: str
|
19
|
+
claims: Dict[str, Any]
|
20
|
+
sourceIp: List[str]
|
21
|
+
defaultAuthStrategy: str
|
22
|
+
groups: Optional[List[str]]
|
23
|
+
|
24
|
+
|
25
|
+
class AppSyncOidcIdentity(BaseModel):
|
26
|
+
claims: Dict[str, Any]
|
27
|
+
issuer: str
|
28
|
+
sub: str
|
29
|
+
|
30
|
+
|
31
|
+
class AppSyncLambdaIdentity(BaseModel):
|
32
|
+
resolverContext: Dict[str, Any]
|
33
|
+
|
34
|
+
|
35
|
+
AppSyncIdentity = Union[
|
36
|
+
AppSyncIamIdentity,
|
37
|
+
AppSyncCognitoIdentity,
|
38
|
+
AppSyncOidcIdentity,
|
39
|
+
AppSyncLambdaIdentity,
|
40
|
+
]
|
41
|
+
|
42
|
+
|
43
|
+
class AppSyncRequestModel(BaseModel):
|
44
|
+
domainName: Optional[str]
|
45
|
+
headers: Dict[str, str]
|
46
|
+
|
47
|
+
|
48
|
+
class AppSyncInfoModel(BaseModel):
|
49
|
+
selectionSetList: List[str]
|
50
|
+
selectionSetGraphQL: str
|
51
|
+
parentTypeName: str
|
52
|
+
fieldName: str
|
53
|
+
variables: Dict[str, Any]
|
54
|
+
|
55
|
+
|
56
|
+
class AppSyncPrevModel(BaseModel):
|
57
|
+
result: Dict[str, Any]
|
58
|
+
|
59
|
+
|
60
|
+
class AppSyncResolverEventModel(BaseModel):
|
61
|
+
arguments: Dict[str, Any]
|
62
|
+
identity: Optional[AppSyncIdentity]
|
63
|
+
source: Optional[Dict[str, Any]]
|
64
|
+
request: AppSyncRequestModel
|
65
|
+
info: AppSyncInfoModel
|
66
|
+
prev: Optional[AppSyncPrevModel]
|
67
|
+
stash: Dict[str, Any]
|
68
|
+
|
69
|
+
|
70
|
+
AppSyncBatchResolverEventModel = List[AppSyncResolverEventModel]
|
{aws_lambda_powertools-3.9.1a7.dist-info → aws_lambda_powertools-3.9.1a8.dist-info}/METADATA
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: aws_lambda_powertools
|
3
|
-
Version: 3.9.
|
3
|
+
Version: 3.9.1a8
|
4
4
|
Summary: Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless best practices and increase developer velocity.
|
5
5
|
License: MIT
|
6
6
|
Keywords: aws_lambda_powertools,aws,tracing,logging,lambda,powertools,feature_flags,idempotency,middleware
|
@@ -88,7 +88,7 @@ aws_lambda_powertools/shared/json_encoder.py,sha256=JQeWNu-4M7_xI_hqYExrxsb3OcEH
|
|
88
88
|
aws_lambda_powertools/shared/lazy_import.py,sha256=TbXQm2bcwXdZrYdBaJJXIswyLlumM85RJ_A_0w-h-GU,2019
|
89
89
|
aws_lambda_powertools/shared/types.py,sha256=APkI38HbiTpSF19NSNii8Ydx73vmVUVotgEQ9jHruEI,124
|
90
90
|
aws_lambda_powertools/shared/user_agent.py,sha256=DrCMFQuT4a4iIrpcWpAIjY37EFqR9-QxlxDGD-Nn9Gg,7081
|
91
|
-
aws_lambda_powertools/shared/version.py,sha256=
|
91
|
+
aws_lambda_powertools/shared/version.py,sha256=ibRgO-ZtT188ud7Rw1yhhicMoW_bFgVxhzdd9G4qHmU,84
|
92
92
|
aws_lambda_powertools/tracing/__init__.py,sha256=f4bMThOPBPWTPVcYqcAIErAJPerMsf3H_Z4gCXCsK9I,141
|
93
93
|
aws_lambda_powertools/tracing/base.py,sha256=DbLD8OSK05KLdSV36oNA5wDSGv8KbcOD19qMUqoXh58,4513
|
94
94
|
aws_lambda_powertools/tracing/extensions.py,sha256=APOfXOq-hRBKaK5WyfIyrd_6M1_9SWJZ3zxLA9jDZzU,492
|
@@ -105,7 +105,7 @@ aws_lambda_powertools/utilities/data_classes/active_mq_event.py,sha256=gJPzcSmw1
|
|
105
105
|
aws_lambda_powertools/utilities/data_classes/alb_event.py,sha256=cHfLaAWwhSuIk-H52xIA4Mq1nx8b0tDxN0slPy0ZamQ,1836
|
106
106
|
aws_lambda_powertools/utilities/data_classes/api_gateway_authorizer_event.py,sha256=dmoR9aIbhqRIrFKX__BFxvbkYl3fr72RbLct7hG5f04,27034
|
107
107
|
aws_lambda_powertools/utilities/data_classes/api_gateway_proxy_event.py,sha256=X5SxZDjVROT4h9xxw3CqZ5YAPD6m1w48CSG4sPpUPe8,10412
|
108
|
-
aws_lambda_powertools/utilities/data_classes/api_gateway_websocket_event.py,sha256=
|
108
|
+
aws_lambda_powertools/utilities/data_classes/api_gateway_websocket_event.py,sha256=6Ou7KMRn1OA-ri3zrBaqLpirL6NgXDJ7ba9ogq8rZBw,3526
|
109
109
|
aws_lambda_powertools/utilities/data_classes/appsync/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
110
110
|
aws_lambda_powertools/utilities/data_classes/appsync/scalar_types_utils.py,sha256=EjaJKZsPwyM6XY-FrooZzadfAtvZRbYS1BHiyQi-GrQ,2662
|
111
111
|
aws_lambda_powertools/utilities/data_classes/appsync_authorizer_event.py,sha256=312D_hbPpCFK3978Ruhu91du5pj0N-5GeJ0rj9jZxk4,3833
|
@@ -138,7 +138,7 @@ aws_lambda_powertools/utilities/data_classes/ses_event.py,sha256=ViKTSB4N-7Kljfu
|
|
138
138
|
aws_lambda_powertools/utilities/data_classes/shared_functions.py,sha256=zAv_JzSJy_k3ZhLKyARXoX6zH7exqw9pjTDsmGB7qxw,4426
|
139
139
|
aws_lambda_powertools/utilities/data_classes/sns_event.py,sha256=bUL57gmObClTGrd_TFBLd1sNobnaurum0QkXyOJoNmI,3853
|
140
140
|
aws_lambda_powertools/utilities/data_classes/sqs_event.py,sha256=seWIKCpPbzKpPdXZWvrs94C92Nj2XwfGC1vXcI5gdQA,8804
|
141
|
-
aws_lambda_powertools/utilities/data_classes/transfer_family_event.py,sha256=
|
141
|
+
aws_lambda_powertools/utilities/data_classes/transfer_family_event.py,sha256=gfPvQeur8bBXl5gq46sc_z3Oz3JTnRlM7iXUK5cbjic,6856
|
142
142
|
aws_lambda_powertools/utilities/data_classes/vpc_lattice.py,sha256=SEZUvRTMsI-iQi7hcpqaKqYtJLYqIxX5ijqmeTSrf9E,6363
|
143
143
|
aws_lambda_powertools/utilities/data_masking/__init__.py,sha256=Ez0MABo8ARkgWKSu8Dog4uFSkkZuHkW7DoWcexJGeyU,108
|
144
144
|
aws_lambda_powertools/utilities/data_masking/base.py,sha256=66zN6M9B0gEEdoGqp9MKnORv_RMQdEeW8W_IrwfHa1I,16707
|
@@ -206,11 +206,12 @@ aws_lambda_powertools/utilities/parser/envelopes/vpc_lattice.py,sha256=RIwj1CQJ_
|
|
206
206
|
aws_lambda_powertools/utilities/parser/envelopes/vpc_latticev2.py,sha256=DGLibAGblJPPe1wC-9gvNWR8LusAzTeTLxwc3cizHzY,1264
|
207
207
|
aws_lambda_powertools/utilities/parser/exceptions.py,sha256=y6DXKUg48xgvswqMAxOYaUGRAqJgg8sm_F8JORgCa1U,207
|
208
208
|
aws_lambda_powertools/utilities/parser/functions.py,sha256=OOcp9xFPrS4e1U8-zHP8bcJ4iTUNmEVYf1EN2yqaCiY,2497
|
209
|
-
aws_lambda_powertools/utilities/parser/models/__init__.py,sha256=
|
209
|
+
aws_lambda_powertools/utilities/parser/models/__init__.py,sha256=WgO-VvHed50FDQzU4HZjYAjiiuW9yLjeLrf-PYx-7Lo,6357
|
210
210
|
aws_lambda_powertools/utilities/parser/models/alb.py,sha256=lJPWPjz0_4Hz9Pkpap3NRvScSI3RWC7o4dFYt4F7LLM,439
|
211
211
|
aws_lambda_powertools/utilities/parser/models/apigw.py,sha256=_UbZXcfdcz7U-MrixXor4sc-VkNIuJAj9uwqjJTlhKg,3494
|
212
212
|
aws_lambda_powertools/utilities/parser/models/apigw_websocket.py,sha256=Pi3R9qFudSrujGz_s3m7BfpX_r7FebcYtbomDAetIrA,3004
|
213
213
|
aws_lambda_powertools/utilities/parser/models/apigwv2.py,sha256=x-v1vwVFwf2pGrkZfRri6ZmhHazeVPr1mHyD3R_vH30,2134
|
214
|
+
aws_lambda_powertools/utilities/parser/models/appsync.py,sha256=43g0X92yDmsQXtTvpDwhIEVQ4V4si5FxTQr30MJMJG4,1551
|
214
215
|
aws_lambda_powertools/utilities/parser/models/bedrock_agent.py,sha256=YFu2cFxBZtb2ndweS3Q2iz4E94jyb8lB4xq14xPwq00,1241
|
215
216
|
aws_lambda_powertools/utilities/parser/models/cloudformation_custom_resource.py,sha256=DySFMeZ50qOZ1FkwSzM70IlcCmjKkoynmmKqLYfTL6E,1465
|
216
217
|
aws_lambda_powertools/utilities/parser/models/cloudwatch.py,sha256=1y2WmgBbIo6GkEtw75YzNaz9qREHl_-ThT0Iz7Ntd_k,1291
|
@@ -257,7 +258,7 @@ aws_lambda_powertools/utilities/validation/envelopes.py,sha256=YD5HOFx6IClQgii0n
|
|
257
258
|
aws_lambda_powertools/utilities/validation/exceptions.py,sha256=PKy_19zQMBJGCMMFl-sMkcm-cc0v3zZBn_bhGE4wKNo,2084
|
258
259
|
aws_lambda_powertools/utilities/validation/validator.py,sha256=x_1qpuKJBuWpgNU-zCD3Di-vXrZfyUu7oA5RmjZjr84,10034
|
259
260
|
aws_lambda_powertools/warnings/__init__.py,sha256=vqDVeZz8wGtD8WGYNSkQE7AHwqtIrPGRxuoJR_BBnSs,1193
|
260
|
-
aws_lambda_powertools-3.9.
|
261
|
-
aws_lambda_powertools-3.9.
|
262
|
-
aws_lambda_powertools-3.9.
|
263
|
-
aws_lambda_powertools-3.9.
|
261
|
+
aws_lambda_powertools-3.9.1a8.dist-info/LICENSE,sha256=vMHS2eBgmwPUIMPb7LQ4p7ib_FPVQXarVjAasflrTwo,951
|
262
|
+
aws_lambda_powertools-3.9.1a8.dist-info/METADATA,sha256=3bfxrbMZk_SJ1_1UdELSUAgjJjEpD8c5I4Q3N-W_8J8,11186
|
263
|
+
aws_lambda_powertools-3.9.1a8.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
|
264
|
+
aws_lambda_powertools-3.9.1a8.dist-info/RECORD,,
|
File without changes
|
File without changes
|