omnata-plugin-runtime 0.8.2a203__py3-none-any.whl → 0.8.3a204__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- omnata_plugin_runtime/configuration.py +1 -0
- omnata_plugin_runtime/omnata_plugin.py +35 -1
- {omnata_plugin_runtime-0.8.2a203.dist-info → omnata_plugin_runtime-0.8.3a204.dist-info}/METADATA +1 -1
- {omnata_plugin_runtime-0.8.2a203.dist-info → omnata_plugin_runtime-0.8.3a204.dist-info}/RECORD +6 -6
- {omnata_plugin_runtime-0.8.2a203.dist-info → omnata_plugin_runtime-0.8.3a204.dist-info}/LICENSE +0 -0
- {omnata_plugin_runtime-0.8.2a203.dist-info → omnata_plugin_runtime-0.8.3a204.dist-info}/WHEEL +0 -0
@@ -704,6 +704,7 @@ class OutboundSyncConfigurationParameters(SyncConfigurationParameters):
|
|
704
704
|
"""
|
705
705
|
|
706
706
|
connection_method: str
|
707
|
+
target_type: Optional[str] = Field(default=None, description="The label of the OutboundTargetType selected by the user")
|
707
708
|
connection_parameters: Optional[Dict[str, StoredConfigurationValue]] = Field(default=None)
|
708
709
|
connection_secrets: Optional[Dict[str, StoredConfigurationValue]] = Field(default=None)
|
709
710
|
sync_parameters: Optional[Dict[str, StoredConfigurationValue]] = Field(default=None)
|
@@ -111,11 +111,45 @@ class PluginManifest(SubscriptableBaseModel):
|
|
111
111
|
developer_name: str
|
112
112
|
docs_url: str
|
113
113
|
supports_inbound: bool
|
114
|
-
supported_outbound_strategies: List[OutboundSyncStrategy]
|
114
|
+
supported_outbound_strategies: List[OutboundSyncStrategy] = Field(
|
115
|
+
...,
|
116
|
+
deprecated=True,
|
117
|
+
title="A list of sync strategies that the plugin can support. This has been replaced by OutboundTargetTypes."
|
118
|
+
)
|
115
119
|
supported_connectivity_options: List[ConnectivityOption] = Field(
|
116
120
|
default_factory=lambda: [ConnectivityOption.DIRECT]
|
117
121
|
)
|
122
|
+
outbound_target_types: List[OutboundTargetType] = Field(
|
123
|
+
...,
|
124
|
+
title="A list of target types that the plugin can support. This replaces the deprecated 'supported_outbound_strategies'."
|
125
|
+
)
|
118
126
|
|
127
|
+
class OutboundTargetType(BaseModel):
|
128
|
+
"""
|
129
|
+
Some products have APIs that can be grouped together in ways that support different strategies and may or may not support toggling.
|
130
|
+
The label should answer the question: "What would you like to sync to?"
|
131
|
+
Examples:
|
132
|
+
- A CRM system may have "Standard objects", "Custom objects" or "Events"
|
133
|
+
- A messaging platform may have "Channels", "Users" or "Messages"
|
134
|
+
- A marketing platform may have "Customer lists", "Campaigns" or "Automations"
|
135
|
+
- An Ad platform may have "Campaigns", "Ad groups" or "Ads"
|
136
|
+
The target type cannot be changed after the sync is created.
|
137
|
+
"""
|
138
|
+
label: str
|
139
|
+
supported_strategies: List[OutboundSyncStrategy]
|
140
|
+
target_toggle_field: Optional[OutboundTargetToggleField] = None
|
141
|
+
|
142
|
+
class OutboundTargetToggleField(BaseModel):
|
143
|
+
"""
|
144
|
+
Accomodates testing outbound syncs in production by nominating a form field who's value stays in the branch.
|
145
|
+
For example, a messaging plugin could have a "channel" field to route messages to an alternate location.
|
146
|
+
Or, a marketing platform could have an alternate customer list name which is connected to test campaigns that don't actually send.
|
147
|
+
The field_name must match a field which will be returned by the outbound_configuration_form for this target type.
|
148
|
+
The reason this is set separately here instead of as a flag on the FormField, is so that the sync engine can know
|
149
|
+
whether or not location toggling is supported for a target type without calling the plugin.
|
150
|
+
"""
|
151
|
+
field_name: str = Field(..., title="The name of the form field that toggles the location")
|
152
|
+
label: str = Field(..., title="Used in the UI when describing the location. It should completely describe the behaviour when used in a sentence like this: 'Changes will be tested against a different <label> when running in a branch.'")
|
119
153
|
|
120
154
|
class SnowflakeFunctionParameter(BaseModel):
|
121
155
|
"""
|
{omnata_plugin_runtime-0.8.2a203.dist-info → omnata_plugin_runtime-0.8.3a204.dist-info}/RECORD
RENAMED
@@ -1,12 +1,12 @@
|
|
1
1
|
omnata_plugin_runtime/__init__.py,sha256=MS9d1whnfT_B3-ThqZ7l63QeC_8OEKTuaYV5wTwRpBA,1576
|
2
2
|
omnata_plugin_runtime/api.py,sha256=tVi4KLL0v5N3yz3Ie0kSyFemryu572gCbtSRfWN6wBU,6523
|
3
|
-
omnata_plugin_runtime/configuration.py,sha256=
|
3
|
+
omnata_plugin_runtime/configuration.py,sha256=g6A9sFHBBaCgZPjhTM4iYcyEoZDPjB1F24QMboLteyY,38505
|
4
4
|
omnata_plugin_runtime/forms.py,sha256=ueodN2GIMS5N9fqebpY4uNGJnjEb9HcuaVQVfWH-cGg,19838
|
5
5
|
omnata_plugin_runtime/logging.py,sha256=WBuZt8lF9E5oFWM4KYQbE8dDJ_HctJ1pN3BHwU6rcd0,4461
|
6
|
-
omnata_plugin_runtime/omnata_plugin.py,sha256
|
6
|
+
omnata_plugin_runtime/omnata_plugin.py,sha256=fs8yrPUhZ3rsU4rcl_MuXNltEufb1nKrcXV-I88MTCA,133443
|
7
7
|
omnata_plugin_runtime/plugin_entrypoints.py,sha256=sB_h6OBEMk7lTLIjdNrNo9Sthk8UE9PnK2AUcQJPe9I,32728
|
8
8
|
omnata_plugin_runtime/rate_limiting.py,sha256=eOWVRYWiqPlVeYzmB1exVXfXbrcpmYb7vtTi9B-4zkQ,25868
|
9
|
-
omnata_plugin_runtime-0.8.
|
10
|
-
omnata_plugin_runtime-0.8.
|
11
|
-
omnata_plugin_runtime-0.8.
|
12
|
-
omnata_plugin_runtime-0.8.
|
9
|
+
omnata_plugin_runtime-0.8.3a204.dist-info/LICENSE,sha256=rGaMQG3R3F5-JGDp_-rlMKpDIkg5n0SI4kctTk8eZSI,56
|
10
|
+
omnata_plugin_runtime-0.8.3a204.dist-info/METADATA,sha256=nJD4bsjd9pTQaG1pnZc-Wt_1JVEpYH9pX05uNgY06UI,2158
|
11
|
+
omnata_plugin_runtime-0.8.3a204.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
12
|
+
omnata_plugin_runtime-0.8.3a204.dist-info/RECORD,,
|
{omnata_plugin_runtime-0.8.2a203.dist-info → omnata_plugin_runtime-0.8.3a204.dist-info}/LICENSE
RENAMED
File without changes
|
{omnata_plugin_runtime-0.8.2a203.dist-info → omnata_plugin_runtime-0.8.3a204.dist-info}/WHEEL
RENAMED
File without changes
|