/* Options: Date: 2024-12-22 12:00:51 Version: 8.51 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://techstacks.io //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: QueryTechStacks.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class TechnologyStackBase { int? id; String? name; String? vendorName; String? description; String? appUrl; String? screenshotUrl; DateTime? created; String? createdBy; DateTime? lastModified; String? lastModifiedBy; bool? isLocked; String? ownerId; String? slug; // @StringLength(2147483647) String? details; // @StringLength(2147483647) String? detailsHtml; DateTime? lastStatusUpdate; int? organizationId; int? commentsPostId; int? viewCount; int? favCount; TechnologyStackBase({this.id,this.name,this.vendorName,this.description,this.appUrl,this.screenshotUrl,this.created,this.createdBy,this.lastModified,this.lastModifiedBy,this.isLocked,this.ownerId,this.slug,this.details,this.detailsHtml,this.lastStatusUpdate,this.organizationId,this.commentsPostId,this.viewCount,this.favCount}); TechnologyStackBase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; name = json['name']; vendorName = json['vendorName']; description = json['description']; appUrl = json['appUrl']; screenshotUrl = json['screenshotUrl']; created = JsonConverters.fromJson(json['created'],'DateTime',context!); createdBy = json['createdBy']; lastModified = JsonConverters.fromJson(json['lastModified'],'DateTime',context!); lastModifiedBy = json['lastModifiedBy']; isLocked = json['isLocked']; ownerId = json['ownerId']; slug = json['slug']; details = json['details']; detailsHtml = json['detailsHtml']; lastStatusUpdate = JsonConverters.fromJson(json['lastStatusUpdate'],'DateTime',context!); organizationId = json['organizationId']; commentsPostId = json['commentsPostId']; viewCount = json['viewCount']; favCount = json['favCount']; return this; } Map toJson() => { 'id': id, 'name': name, 'vendorName': vendorName, 'description': description, 'appUrl': appUrl, 'screenshotUrl': screenshotUrl, 'created': JsonConverters.toJson(created,'DateTime',context!), 'createdBy': createdBy, 'lastModified': JsonConverters.toJson(lastModified,'DateTime',context!), 'lastModifiedBy': lastModifiedBy, 'isLocked': isLocked, 'ownerId': ownerId, 'slug': slug, 'details': details, 'detailsHtml': detailsHtml, 'lastStatusUpdate': JsonConverters.toJson(lastStatusUpdate,'DateTime',context!), 'organizationId': organizationId, 'commentsPostId': commentsPostId, 'viewCount': viewCount, 'favCount': favCount }; getTypeName() => "TechnologyStackBase"; TypeContext? context = _ctx; } class TechnologyStack extends TechnologyStackBase implements IConvertible { TechnologyStack(); TechnologyStack.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); getTypeName() => "TechnologyStack"; TypeContext? context = _ctx; } class TechnologyStackView implements IConvertible { int? id; String? name; String? vendorName; String? description; String? appUrl; String? screenshotUrl; DateTime? created; String? createdBy; DateTime? lastModified; String? lastModifiedBy; bool? isLocked; String? ownerId; String? slug; String? details; String? detailsHtml; DateTime? lastStatusUpdate; int? organizationId; int? commentsPostId; int? viewCount; int? favCount; TechnologyStackView({this.id,this.name,this.vendorName,this.description,this.appUrl,this.screenshotUrl,this.created,this.createdBy,this.lastModified,this.lastModifiedBy,this.isLocked,this.ownerId,this.slug,this.details,this.detailsHtml,this.lastStatusUpdate,this.organizationId,this.commentsPostId,this.viewCount,this.favCount}); TechnologyStackView.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; name = json['name']; vendorName = json['vendorName']; description = json['description']; appUrl = json['appUrl']; screenshotUrl = json['screenshotUrl']; created = JsonConverters.fromJson(json['created'],'DateTime',context!); createdBy = json['createdBy']; lastModified = JsonConverters.fromJson(json['lastModified'],'DateTime',context!); lastModifiedBy = json['lastModifiedBy']; isLocked = json['isLocked']; ownerId = json['ownerId']; slug = json['slug']; details = json['details']; detailsHtml = json['detailsHtml']; lastStatusUpdate = JsonConverters.fromJson(json['lastStatusUpdate'],'DateTime',context!); organizationId = json['organizationId']; commentsPostId = json['commentsPostId']; viewCount = json['viewCount']; favCount = json['favCount']; return this; } Map toJson() => { 'id': id, 'name': name, 'vendorName': vendorName, 'description': description, 'appUrl': appUrl, 'screenshotUrl': screenshotUrl, 'created': JsonConverters.toJson(created,'DateTime',context!), 'createdBy': createdBy, 'lastModified': JsonConverters.toJson(lastModified,'DateTime',context!), 'lastModifiedBy': lastModifiedBy, 'isLocked': isLocked, 'ownerId': ownerId, 'slug': slug, 'details': details, 'detailsHtml': detailsHtml, 'lastStatusUpdate': JsonConverters.toJson(lastStatusUpdate,'DateTime',context!), 'organizationId': organizationId, 'commentsPostId': commentsPostId, 'viewCount': viewCount, 'favCount': favCount }; getTypeName() => "TechnologyStackView"; TypeContext? context = _ctx; } // @Route("/techstacks/query") class QueryTechStacks extends QueryDb2 implements IReturn>, IConvertible, IGet { List? ids; String? name; String? vendorName; String? nameContains; String? vendorNameContains; String? descriptionContains; QueryTechStacks({this.ids,this.name,this.vendorName,this.nameContains,this.vendorNameContains,this.descriptionContains}); QueryTechStacks.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); ids = JsonConverters.fromJson(json['ids'],'List',context!); name = json['name']; vendorName = json['vendorName']; nameContains = json['nameContains']; vendorNameContains = json['vendorNameContains']; descriptionContains = json['descriptionContains']; return this; } Map toJson() => super.toJson()..addAll({ 'ids': JsonConverters.toJson(ids,'List',context!), 'name': name, 'vendorName': vendorName, 'nameContains': nameContains, 'vendorNameContains': vendorNameContains, 'descriptionContains': descriptionContains }); createResponse() => QueryResponse(); getResponseTypeName() => "QueryResponse"; getTypeName() => "QueryTechStacks"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'techstacks.io', types: { 'TechnologyStackBase': TypeInfo(TypeOf.AbstractClass), 'TechnologyStack': TypeInfo(TypeOf.Class, create:() => TechnologyStack()), 'TechnologyStackView': TypeInfo(TypeOf.Class, create:() => TechnologyStackView()), 'QueryResponse': TypeInfo(TypeOf.Class, create:() => QueryResponse()), 'QueryTechStacks': TypeInfo(TypeOf.Class, create:() => QueryTechStacks()), 'List': TypeInfo(TypeOf.Class, create:() => []), });