/
githubmirror
/
Files
Обзор
Документация
Войти
/
githubmirror
/
Files
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/Files.App/Data/Parameters/TabBarItemParameter.cs
38 строк
1016 B
yair100
Code Quality: Updated headers
01 июл 2026, 06:18
01 июл 2026, 06:18
c27305a
Код
Авторство
О чём код?
// Copyright (c) Files Community // SPDX-License-Identifier: MPL-2.0 namespace Files.App.Data.Parameters { public sealed class TabBarItemParameter { private static readonly KnownTypesConverter _typesConverter = new(); public Type InitialPageType { get; set; } public object NavigationParameter { get; set; } public string Serialize() { return JsonSerializer.Serialize(this, _typesConverter.Options); } public static TabBarItemParameter Deserialize(string obj) { var tabArgs = new TabBarItemParameter(); var tempArgs = JsonSerializer.Deserialize<Dictionary<string, JsonElement>>(obj); tabArgs.InitialPageType = Type.GetType(tempArgs[nameof(InitialPageType)].GetString()); try { tabArgs.NavigationParameter = JsonSerializer.Deserialize<PaneNavigationArguments>(tempArgs[nameof(NavigationParameter)].GetRawText()); } catch (JsonException) { tabArgs.NavigationParameter = tempArgs[nameof(NavigationParameter)].GetString(); } return tabArgs; } } }