1+ #region Copyright Syncfusion® Inc. 2001-2025.
2+ // Copyright Syncfusion® Inc. 2001-2025. All rights reserved.
3+ // Use of this code is subject to the terms of our license.
4+ // A copy of the current license can be obtained at any time by e-mailing
5+ // [email protected] . Any infringement will be prosecuted under 6+ // applicable laws.
7+ #endregion
8+ using System . Collections . Generic ;
9+ using System . Runtime . Serialization ;
10+ using System . Text . Json . Serialization ;
11+
12+ namespace Blazor_MAUI_Demos
13+ {
14+ public class SampleListType
15+ {
16+ public List < SampleListType > SourceData { get ; set ; }
17+ public string Name { get ; set ; }
18+ [ JsonConverter ( typeof ( JsonStringEnumConverter ) ) ]
19+ public SampleType Type { get ; set ; }
20+ public List < Sample > Samples { get ; set ; }
21+ public string DemoPath { get ; set ; }
22+ public string Category { get ; set ; }
23+ public string InfoTooltip { get ; set ; }
24+ public bool IsHide { get ; set ; }
25+ }
26+
27+ public class SampleList
28+ {
29+ public string Name { get ; set ; }
30+ public string Directory { get ; set ; }
31+ public string Category { get ; set ; }
32+ [ JsonConverter ( typeof ( JsonStringEnumConverter ) ) ]
33+ public SampleType Type { get ; set ; }
34+ public List < Sample > Samples { get ; set ; } = new List < Sample > ( ) ;
35+ public string ControllerName { get ; set ; }
36+ public string DemoPath { get ; set ; }
37+ public bool IsPreview { get ; set ; }
38+ public string CustomDocLink { get ; set ; }
39+ public bool IsHideFromHomePageList { get ; set ; }
40+ public bool IsHide { get ; set ; }
41+ public bool IsHideFromDevice { get ; set ; }
42+ public string InfoTooltip { get ; set ; }
43+ public string ComponentIconName { get ; set ; }
44+ public string [ ] NotificationDescription { get ; set ; }
45+ }
46+
47+ public class Sample
48+ {
49+ public string Name { get ; set ; }
50+ public string Directory { get ; set ; }
51+ public string Category { get ; set ; }
52+ public string FileName { get ; set ; }
53+ public string Url { get ; set ; }
54+ public string MappingSampleName { get ; set ; }
55+ public string MetaTitle { get ; set ; }
56+ public string MetaDescription { get ; set ; }
57+ public string HeaderText { get ; set ; }
58+ public List < SourceCollection > SourceFiles { get ; set ; } = new List < SourceCollection > ( ) ;
59+ [ JsonConverter ( typeof ( JsonStringEnumConverter ) ) ]
60+ public SampleType Type { get ; set ; }
61+ public string [ ] NotificationDescription { get ; set ; }
62+ public bool IsHideInMobile { get ; set ; }
63+ }
64+
65+ public class SourceCollection
66+ {
67+ public string FileName { get ; set ; }
68+ public string Id { get ; set ; }
69+ }
70+
71+ internal static class SampleBrowser
72+ {
73+ public static List < SampleList > SampleList { get ; set ; } = new List < SampleList > ( ) ;
74+ internal static List < string > SampleUrls = new List < string > ( ) ;
75+ internal static SampleConfig Config { get ; set ; } = new SampleConfig ( ) ;
76+ internal static List < string > PreLoadFiles = new List < string > ( )
77+ {
78+ "_content/styles/common/fonts/open-sans-700.woff2" ,
79+ "_content/styles/common/fonts/open-sans-regular.woff2"
80+ } ;
81+ }
82+
83+ [ JsonConverter ( typeof ( JsonStringEnumConverter ) ) ]
84+ public enum SampleType
85+ {
86+ [ EnumMember ( Value = "none" ) ]
87+ None ,
88+ [ EnumMember ( Value = "new" ) ]
89+ New ,
90+ [ EnumMember ( Value = "updated" ) ]
91+ Updated ,
92+ [ EnumMember ( Value = "preview" ) ]
93+ Preview
94+ }
95+ }
0 commit comments