UsageSettings.fromMap constructor
UsageSettings.fromMap(
- Map<String, dynamic> json, {
- List? conversationActions,
})
Implementation
factory UsageSettings.fromMap(
Map<String, dynamic> json, {
List<dynamic>? conversationActions,
}) => UsageSettings(
canAttach:
json[Settings.settingAttachmentId]?[Settings.settingEnableName] ??
false,
canTag:
json[Settings.settingMultiTagId]?[Settings.settingEnableName] ?? false,
canShare: getChatSharingEnum(
json[Settings.settingShareId]?[Settings.settingShareName] ?? "",
),
canWebSearch:
json[Settings.settingSearchEngineUseId]?[Settings.settingEnableName] ??
false,
actionBarAlwaysVisible:
json[Settings.settingActionBarAlwaysVisibleId]?[Settings
.settingEnableName] ??
true,
canAnonymous:
json[Settings.settingAnonymousSessionsId]?[Settings
.settingEnableName] ??
false,
chatVisibility: getChatVisibilityEnum(
json[Settings.settingChatVisibilityId]?[Settings
.settingChatVisibilityName] ??
"",
),
thinkingEnabled:
json[Settings.assistantThinkingEnabledId]?[Settings
.settingEnableName] ??
false,
thinkingEffort:
json[Settings.assistantThinkingEffortId]?[Settings
.assistantThinkingEffortName],
chatEngagementPrompts: (conversationActions ?? const <dynamic>[])
.whereType<Map<String, dynamic>>()
.map((Map<String, dynamic> action) {
return getString(action["userMessage"]);
})
.where((String message) => message.isNotEmpty)
.toList(growable: false),
);