updateMonetizationSettings method
- UserId? userId,
- required MonetizationSettingsInput settings,
Updates MonetizationSettings of the authenticated MyUser.
If the userId argument is specified, then MonetizationSettings will be
updated individually for that User. Otherwise, common
MonetizationSettings are updated, affecting all Users. Naturally,
individual MonetizationSettings take precedence over common
MonetizationSettings.
Authentication
Mandatory.
Result
One of the following MonetizationSettingsEvents may be produced on success:
- MonetizationSettingsDonationDeletedEvent;
- MonetizationSettingsDonationMinPriceUpdatedEvent;
- MonetizationSettingsDonationToggledEvent.
Idempotent
Succeeds as no-op (and returns no MonetizationSettingsEvent) if the specified MonetizationSettings' fields are set already to the provided values.
Implementation
Future<MonetizationSettingsEventsVersionedMixin?> updateMonetizationSettings({
UserId? userId,
required MonetizationSettingsInput settings,
}) async {
Log.debug(
'updateMonetizationSettings(userId: $userId, settings: $settings)',
'$runtimeType',
);
final variables = UpdateMonetizationSettingsArguments(
userId: userId,
settings: settings,
);
final QueryResult res = await client.mutate(
MutationOptions(
operationName: 'UpdateMonetizationSettings',
document: UpdateMonetizationSettingsMutation(
variables: variables,
).document,
variables: variables.toJson(),
),
onException: (data) => UpdateMonetizationSettingsException(
(UpdateMonetizationSettings$Mutation.fromJson(
data,
).updateMonetizationSettings
as UpdateMonetizationSettings$Mutation$UpdateMonetizationSettings$UpdateMonetizationSettingsError)
.code,
),
);
return UpdateMonetizationSettings$Mutation.fromJson(
res.data!,
).updateMonetizationSettings
as UpdateMonetizationSettings$Mutation$UpdateMonetizationSettings$MonetizationSettingsEventsVersioned?;
}