/* Options: Date: 2025-08-05 02:26:42 Version: 8.0 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://www.asg.com.au/RestApi //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetAnalyticsAccountsMessage.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; // @DataContract class AnalyticsAccountInfo implements IGoogleAnalyticsProviderConfiguration, IConvertible { // @DataMember(Name="id") String? id; // @DataMember(Name="accountId") String? accountId; // @DataMember(Name="name") String? name; // @DataMember(Name="webPropertyId") String? webPropertyId; AnalyticsAccountInfo({this.id,this.accountId,this.name,this.webPropertyId}); AnalyticsAccountInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['Id']; accountId = json['AccountId']; name = json['AccountName']; webPropertyId = json['WebPropertyId']; return this; } Map toJson() => { 'id': id, 'accountId': accountId, 'name': name, 'webPropertyId': webPropertyId }; getTypeName() => "AnalyticsAccountInfo"; TypeContext? context = _ctx; } abstract class IGoogleAnalyticsProviderConfiguration { String? AccountId; String? AccountName; String? Id; String? WebPropertyId; String? ClientId; String? ClientSecret; String? AccessToken; String? TokenType; String? RefreshToken; } class GetAnalyticsAccountsData implements IConvertible { List? Accounts; String? SelectedAccount; String? SelectedProfileId; GetAnalyticsAccountsData({this.Accounts,this.SelectedAccount,this.SelectedProfileId}); GetAnalyticsAccountsData.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Accounts = JsonConverters.fromJson(json['Accounts'],'List',context!); SelectedAccount = json['SelectedAccount']; SelectedProfileId = json['SelectedProfileId']; return this; } Map toJson() => { 'Accounts': JsonConverters.toJson(Accounts,'List',context!), 'SelectedAccount': SelectedAccount, 'SelectedProfileId': SelectedProfileId }; getTypeName() => "GetAnalyticsAccountsData"; TypeContext? context = _ctx; } // @Route("/Sitefinity/Analytics/GetAnalyticsAccounts") // @Route("/GetAnalyticsAccounts") class GetAnalyticsAccountsMessage implements IReturn, IConvertible, IGet { String? SiteId; GetAnalyticsAccountsMessage({this.SiteId}); GetAnalyticsAccountsMessage.fromJson(Map json) { fromMap(json); } fromMap(Map json) { SiteId = json['SiteId']; return this; } Map toJson() => { 'SiteId': SiteId }; createResponse() => GetAnalyticsAccountsData(); getResponseTypeName() => "GetAnalyticsAccountsData"; getTypeName() => "GetAnalyticsAccountsMessage"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'www.asg.com.au', types: { 'AnalyticsAccountInfo': TypeInfo(TypeOf.Class, create:() => AnalyticsAccountInfo()), 'IGoogleAnalyticsProviderConfiguration': TypeInfo(TypeOf.Interface), 'GetAnalyticsAccountsData': TypeInfo(TypeOf.Class, create:() => GetAnalyticsAccountsData()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'GetAnalyticsAccountsMessage': TypeInfo(TypeOf.Class, create:() => GetAnalyticsAccountsMessage()), });