Skip to content

Commit 9876d4d

Browse files
committed
api: Add InitialSnapshot.realmTopicsPolicy
1 parent 9296fb3 commit 9876d4d

File tree

3 files changed

+35
-0
lines changed

3 files changed

+35
-0
lines changed

lib/api/model/initial_snapshot.dart

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,9 @@ class InitialSnapshot {
9090
/// Search for "realm_wildcard_mention_policy" in https://zulip.com/api/register-queue.
9191
final RealmWildcardMentionPolicy realmWildcardMentionPolicy;
9292

93+
@JsonKey(unknownEnumValue: RealmTopicsPolicy.unknown)
94+
final RealmTopicsPolicy? realmTopicsPolicy; // TODO(server-11)
95+
9396
final bool realmMandatoryTopics;
9497

9598
final String realmName;
@@ -183,6 +186,7 @@ class InitialSnapshot {
183186
required this.realmCanDeleteOwnMessageGroup,
184187
required this.realmDeleteOwnMessagePolicy,
185188
required this.realmWildcardMentionPolicy,
189+
required this.realmTopicsPolicy,
186190
required this.realmMandatoryTopics,
187191
required this.realmName,
188192
required this.realmWaitingPeriodThreshold,
@@ -238,6 +242,23 @@ enum RealmDeleteOwnMessagePolicy {
238242
int toJson() => apiValue;
239243
}
240244

245+
/// A value of [InitialSnapshot.realmTopicsPolicy].
246+
///
247+
/// For docs, search for "realm_topics_policy"
248+
/// in <https://zulip.com/api/register-queue#response>.
249+
@JsonEnum(valueField: 'apiValue')
250+
enum RealmTopicsPolicy {
251+
allowEmptyTopic(apiValue: 'allow_empty_topic'),
252+
disableEmptyTopic(apiValue: 'disable_empty_topic'),
253+
unknown(apiValue: null);
254+
255+
const RealmTopicsPolicy({required this.apiValue});
256+
257+
final String? apiValue;
258+
259+
String? toJson() => apiValue;
260+
}
261+
241262
/// An item in `realm_default_external_accounts`.
242263
///
243264
/// For docs, search for "realm_default_external_accounts:"

lib/api/model/initial_snapshot.g.dart

Lines changed: 12 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

test/example_data.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1335,6 +1335,7 @@ InitialSnapshot initialSnapshot({
13351335
GroupSettingValue? realmCanDeleteOwnMessageGroup,
13361336
RealmDeleteOwnMessagePolicy? realmDeleteOwnMessagePolicy,
13371337
RealmWildcardMentionPolicy? realmWildcardMentionPolicy,
1338+
RealmTopicsPolicy? realmTopicsPolicy,
13381339
bool? realmMandatoryTopics,
13391340
String? realmName,
13401341
int? realmWaitingPeriodThreshold,
@@ -1399,6 +1400,7 @@ InitialSnapshot initialSnapshot({
13991400
realmCanDeleteOwnMessageGroup: realmCanDeleteOwnMessageGroup,
14001401
realmDeleteOwnMessagePolicy: realmDeleteOwnMessagePolicy,
14011402
realmWildcardMentionPolicy: realmWildcardMentionPolicy ?? RealmWildcardMentionPolicy.everyone,
1403+
realmTopicsPolicy: realmTopicsPolicy ?? RealmTopicsPolicy.unknown,
14021404
realmMandatoryTopics: realmMandatoryTopics ?? true,
14031405
realmName: realmName ?? 'Example Zulip organization',
14041406
realmWaitingPeriodThreshold: realmWaitingPeriodThreshold ?? 0,

0 commit comments

Comments
 (0)