Path: blob/main/SignalServiceKit/Messages/Interactions/OWSDisappearingConfigurationUpdateInfoMessage.swift
1 views
//
// Copyright 2024 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//
public extension OWSDisappearingConfigurationUpdateInfoMessage {
@objc
static func legacyDisappearingMessageUpdateDescription(
token newToken: DisappearingMessageToken,
wasAddedToExistingGroup: Bool,
updaterName: String?,
) -> String {
// This might be zero if DMs are not enabled.
let durationString = String.formatDurationLossless(
durationSeconds: newToken.durationSeconds,
)
if wasAddedToExistingGroup {
assert(newToken.isEnabled)
let format = OWSLocalizedString(
"DISAPPEARING_MESSAGES_CONFIGURATION_GROUP_EXISTING_FORMAT",
comment: "Info Message when added to a group which has enabled disappearing messages. Embeds {{time amount}} before messages disappear. See the *_TIME_AMOUNT strings for context.",
)
return String.nonPluralLocalizedStringWithFormat(format, durationString)
} else if let updaterName {
if newToken.isEnabled {
let format = OWSLocalizedString(
"OTHER_UPDATED_DISAPPEARING_MESSAGES_CONFIGURATION",
comment: "Info Message when another user enabled disappearing messages. Embeds {{name of other user}} and {{time amount}} before messages disappear. See the *_TIME_AMOUNT strings for context.",
)
return String.nonPluralLocalizedStringWithFormat(format, updaterName, durationString)
} else {
let format = OWSLocalizedString(
"OTHER_DISABLED_DISAPPEARING_MESSAGES_CONFIGURATION",
comment: "Info Message when another user disabled disappearing messages. Embeds {{name of other user}}.",
)
return String.nonPluralLocalizedStringWithFormat(format, updaterName)
}
} else {
// Changed by localNumber on this device or via synced transcript
if newToken.isEnabled {
let format = OWSLocalizedString(
"YOU_UPDATED_DISAPPEARING_MESSAGES_CONFIGURATION",
comment: "Info Message when you update disappearing messages duration. Embeds a {{time amount}} before messages disappear. see the *_TIME_AMOUNT strings for context.",
)
return String.nonPluralLocalizedStringWithFormat(format, durationString)
} else {
return OWSLocalizedString(
"YOU_DISABLED_DISAPPEARING_MESSAGES_CONFIGURATION",
comment: "Info Message when you disabled disappearing messages.",
)
}
}
}
}