airbyte-cdk 6.52.0.dev1__py3-none-any.whl → 6.53.0__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.
- airbyte_cdk/sources/declarative/declarative_component_schema.yaml +2 -0
- airbyte_cdk/sources/declarative/interpolation/macros.py +13 -0
- airbyte_cdk/sources/declarative/models/declarative_component_schema.py +5 -1
- {airbyte_cdk-6.52.0.dev1.dist-info → airbyte_cdk-6.53.0.dist-info}/METADATA +1 -1
- {airbyte_cdk-6.52.0.dev1.dist-info → airbyte_cdk-6.53.0.dist-info}/RECORD +9 -9
- {airbyte_cdk-6.52.0.dev1.dist-info → airbyte_cdk-6.53.0.dist-info}/LICENSE.txt +0 -0
- {airbyte_cdk-6.52.0.dev1.dist-info → airbyte_cdk-6.53.0.dist-info}/LICENSE_SHORT +0 -0
- {airbyte_cdk-6.52.0.dev1.dist-info → airbyte_cdk-6.53.0.dist-info}/WHEEL +0 -0
- {airbyte_cdk-6.52.0.dev1.dist-info → airbyte_cdk-6.53.0.dist-info}/entry_points.txt +0 -0
@@ -4056,6 +4056,8 @@ definitions:
|
|
4056
4056
|
description: The expected data type of the value. If omitted, the type will be inferred from the value provided.
|
4057
4057
|
"$ref": "#/definitions/ValueType"
|
4058
4058
|
create_or_update:
|
4059
|
+
title: Create or Update
|
4060
|
+
description: Determines whether to create a new path if it doesn't exist (true) or only update existing paths (false). When set to true, the resolver will create new paths in the stream template if they don't exist. When false (default), it will only update existing paths.
|
4059
4061
|
type: boolean
|
4060
4062
|
default: false
|
4061
4063
|
$parameters:
|
@@ -6,6 +6,7 @@ import builtins
|
|
6
6
|
import datetime
|
7
7
|
import typing
|
8
8
|
from typing import Optional, Union
|
9
|
+
from urllib.parse import quote_plus
|
9
10
|
|
10
11
|
import isodate
|
11
12
|
import pytz
|
@@ -182,6 +183,17 @@ def format_datetime(
|
|
182
183
|
return DatetimeParser().format(dt=dt_datetime, format=format)
|
183
184
|
|
184
185
|
|
186
|
+
def sanitize_url(value: str) -> str:
|
187
|
+
"""
|
188
|
+
Sanitizes a value by via urllib.parse.quote_plus
|
189
|
+
|
190
|
+
Usage:
|
191
|
+
`"{{ sanitize_url('https://example.com/path?query=value') }}"`
|
192
|
+
"""
|
193
|
+
sanitization_strategy = quote_plus
|
194
|
+
return sanitization_strategy(value)
|
195
|
+
|
196
|
+
|
185
197
|
_macros_list = [
|
186
198
|
now_utc,
|
187
199
|
today_utc,
|
@@ -193,5 +205,6 @@ _macros_list = [
|
|
193
205
|
format_datetime,
|
194
206
|
today_with_timezone,
|
195
207
|
str_to_datetime,
|
208
|
+
sanitize_url,
|
196
209
|
]
|
197
210
|
macros = {f.__name__: f for f in _macros_list}
|
@@ -1478,7 +1478,11 @@ class ComponentMappingDefinition(BaseModel):
|
|
1478
1478
|
description="The expected data type of the value. If omitted, the type will be inferred from the value provided.",
|
1479
1479
|
title="Value Type",
|
1480
1480
|
)
|
1481
|
-
create_or_update: Optional[bool] =
|
1481
|
+
create_or_update: Optional[bool] = Field(
|
1482
|
+
False,
|
1483
|
+
description="Determines whether to create a new path if it doesn't exist (true) or only update existing paths (false). When set to true, the resolver will create new paths in the stream template if they don't exist. When false (default), it will only update existing paths.",
|
1484
|
+
title="Create or Update",
|
1485
|
+
)
|
1482
1486
|
parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters")
|
1483
1487
|
|
1484
1488
|
|
@@ -89,7 +89,7 @@ airbyte_cdk/sources/declarative/concurrent_declarative_source.py,sha256=OKor1mDD
|
|
89
89
|
airbyte_cdk/sources/declarative/datetime/__init__.py,sha256=4Hw-PX1-VgESLF16cDdvuYCzGJtHntThLF4qIiULWeo,61
|
90
90
|
airbyte_cdk/sources/declarative/datetime/datetime_parser.py,sha256=_zGNGq31RNy_0QBLt_EcTvgPyhj7urPdx6oA3M5-r3o,3150
|
91
91
|
airbyte_cdk/sources/declarative/datetime/min_max_datetime.py,sha256=0BHBtDNQZfvwM45-tY5pNlTcKAFSGGNxemoi0Jic-0E,5785
|
92
|
-
airbyte_cdk/sources/declarative/declarative_component_schema.yaml,sha256=
|
92
|
+
airbyte_cdk/sources/declarative/declarative_component_schema.yaml,sha256=BQ0JKz4K8BKCpKp3C2IumJj2y2nv29lheeJUxPX6gXU,177389
|
93
93
|
airbyte_cdk/sources/declarative/declarative_source.py,sha256=qmyMnnet92eGc3C22yBtpvD5UZjqdhsAafP_zxI5wp8,1814
|
94
94
|
airbyte_cdk/sources/declarative/declarative_stream.py,sha256=dCRlddBUSaJmBNBz1pSO1r2rTw8AP5d2_vlmIeGs2gg,10767
|
95
95
|
airbyte_cdk/sources/declarative/decoders/__init__.py,sha256=JHb_0d3SE6kNY10mxA5YBEKPeSbsWYjByq1gUQxepoE,953
|
@@ -126,14 +126,14 @@ airbyte_cdk/sources/declarative/interpolation/interpolated_nested_mapping.py,sha
|
|
126
126
|
airbyte_cdk/sources/declarative/interpolation/interpolated_string.py,sha256=CQkHqGlfa87G6VYMtBAQWin7ECKpfMdrDcg0JO5_rhc,3212
|
127
127
|
airbyte_cdk/sources/declarative/interpolation/interpolation.py,sha256=9IoeuWam3L6GyN10L6U8xNWXmkt9cnahSDNkez1OmFY,982
|
128
128
|
airbyte_cdk/sources/declarative/interpolation/jinja.py,sha256=UQeuS4Vpyp4hlOn-R3tRyeBX0e9IoV6jQ6gH-Jz8lY0,7182
|
129
|
-
airbyte_cdk/sources/declarative/interpolation/macros.py,sha256=
|
129
|
+
airbyte_cdk/sources/declarative/interpolation/macros.py,sha256=xRcmjape4_WGmKMJpmBsKY0k4OHJDM46Hv3V-dlSz3w,5640
|
130
130
|
airbyte_cdk/sources/declarative/manifest_declarative_source.py,sha256=aS_YxqUWgxyfyzwAZpV736RFg-m5a0sn-V7PPMBGVr4,24660
|
131
131
|
airbyte_cdk/sources/declarative/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
132
132
|
airbyte_cdk/sources/declarative/migrations/legacy_to_per_partition_state_migration.py,sha256=V2lpYE9LJKvz6BUViHk4vaRGndxNABmPbDCtyYdkqaE,4013
|
133
133
|
airbyte_cdk/sources/declarative/migrations/state_migration.py,sha256=KWPjealMLKSMtajXgkdGgKg7EmTLR-CqqD7UIh0-eDU,794
|
134
134
|
airbyte_cdk/sources/declarative/models/__init__.py,sha256=nUFxNCiKeYRVXuZEKA7GD-lTHxsiKcQ8FitZjKhPIvE,100
|
135
135
|
airbyte_cdk/sources/declarative/models/base_model_with_deprecations.py,sha256=Imnj3yef0aqRdLfaUxkIYISUb8YkiPrRH_wBd-x8HjM,5999
|
136
|
-
airbyte_cdk/sources/declarative/models/declarative_component_schema.py,sha256=
|
136
|
+
airbyte_cdk/sources/declarative/models/declarative_component_schema.py,sha256=XVfBPgNBEEkv8u6Bj1JRiXsQWa_QoipPHFxND_YsxDY,125766
|
137
137
|
airbyte_cdk/sources/declarative/parsers/__init__.py,sha256=ZnqYNxHsKCgO38IwB34RQyRMXTs4GTvlRi3ImKnIioo,61
|
138
138
|
airbyte_cdk/sources/declarative/parsers/custom_code_compiler.py,sha256=nlVvHC511NUyDEEIRBkoeDTAvLqKNp-hRy8D19z8tdk,5941
|
139
139
|
airbyte_cdk/sources/declarative/parsers/custom_exceptions.py,sha256=wnRUP0Xeru9Rbu5OexXSDN9QWDo8YU4tT9M2LDVOgGA,802
|
@@ -419,9 +419,9 @@ airbyte_cdk/utils/slice_hasher.py,sha256=EDxgROHDbfG-QKQb59m7h_7crN1tRiawdf5uU7G
|
|
419
419
|
airbyte_cdk/utils/spec_schema_transformations.py,sha256=-5HTuNsnDBAhj-oLeQXwpTGA0HdcjFOf2zTEMUTTg_Y,816
|
420
420
|
airbyte_cdk/utils/stream_status_utils.py,sha256=ZmBoiy5HVbUEHAMrUONxZvxnvfV9CesmQJLDTAIWnWw,1171
|
421
421
|
airbyte_cdk/utils/traced_exception.py,sha256=C8uIBuCL_E4WnBAOPSxBicD06JAldoN9fGsQDp463OY,6292
|
422
|
-
airbyte_cdk-6.
|
423
|
-
airbyte_cdk-6.
|
424
|
-
airbyte_cdk-6.
|
425
|
-
airbyte_cdk-6.
|
426
|
-
airbyte_cdk-6.
|
427
|
-
airbyte_cdk-6.
|
422
|
+
airbyte_cdk-6.53.0.dist-info/LICENSE.txt,sha256=Wfe61S4BaGPj404v8lrAbvhjYR68SHlkzeYrg3_bbuM,1051
|
423
|
+
airbyte_cdk-6.53.0.dist-info/LICENSE_SHORT,sha256=aqF6D1NcESmpn-cqsxBtszTEnHKnlsp8L4x9wAh3Nxg,55
|
424
|
+
airbyte_cdk-6.53.0.dist-info/METADATA,sha256=rfeVeqi8KTOWoTgCwUPYh3k8LhgvERDAqyAdw8IPYX0,6343
|
425
|
+
airbyte_cdk-6.53.0.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
426
|
+
airbyte_cdk-6.53.0.dist-info/entry_points.txt,sha256=AKWbEkHfpzzk9nF9tqBUaw1MbvTM4mGtEzmZQm0ZWvM,139
|
427
|
+
airbyte_cdk-6.53.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|