/* Options: Date: 2026-08-17 08:23:53 Version: 6.10 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stubbur-app.azurewebsites.net //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: WebshopProductGetRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class WebshopVariantSummary implements IConvertible { int? id; int? productId; String? size; String? color; int? stockOnHand; int? quantitySold; int? availableQuantity; String? status; WebshopVariantSummary({this.id,this.productId,this.size,this.color,this.stockOnHand,this.quantitySold,this.availableQuantity,this.status}); WebshopVariantSummary.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; productId = json['productId']; size = json['size']; color = json['color']; stockOnHand = json['stockOnHand']; quantitySold = json['quantitySold']; availableQuantity = json['availableQuantity']; status = json['status']; return this; } Map toJson() => { 'id': id, 'productId': productId, 'size': size, 'color': color, 'stockOnHand': stockOnHand, 'quantitySold': quantitySold, 'availableQuantity': availableQuantity, 'status': status }; getTypeName() => "WebshopVariantSummary"; TypeContext? context = _ctx; } class WebshopProductSummary implements IConvertible { int? id; int? ownerId; String? name; String? description; String? category; String? subCategory; int? defaultPriceMinor; String? imageUrl; int? viewOrder; String? status; int? payoutInfoId; int? legacyItemId; List? variants; WebshopProductSummary({this.id,this.ownerId,this.name,this.description,this.category,this.subCategory,this.defaultPriceMinor,this.imageUrl,this.viewOrder,this.status,this.payoutInfoId,this.legacyItemId,this.variants}); WebshopProductSummary.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; ownerId = json['ownerId']; name = json['name']; description = json['description']; category = json['category']; subCategory = json['subCategory']; defaultPriceMinor = json['defaultPriceMinor']; imageUrl = json['imageUrl']; viewOrder = json['viewOrder']; status = json['status']; payoutInfoId = json['payoutInfoId']; legacyItemId = json['legacyItemId']; variants = JsonConverters.fromJson(json['variants'],'List',context!); return this; } Map toJson() => { 'id': id, 'ownerId': ownerId, 'name': name, 'description': description, 'category': category, 'subCategory': subCategory, 'defaultPriceMinor': defaultPriceMinor, 'imageUrl': imageUrl, 'viewOrder': viewOrder, 'status': status, 'payoutInfoId': payoutInfoId, 'legacyItemId': legacyItemId, 'variants': JsonConverters.toJson(variants,'List',context!) }; getTypeName() => "WebshopProductSummary"; TypeContext? context = _ctx; } class WebshopProductResult implements IConvertible { WebshopProductSummary? product; int? statusCode; String? message; WebshopProductResult({this.product,this.statusCode,this.message}); WebshopProductResult.fromJson(Map json) { fromMap(json); } fromMap(Map json) { product = JsonConverters.fromJson(json['product'],'WebshopProductSummary',context!); statusCode = json['statusCode']; message = json['message']; return this; } Map toJson() => { 'product': JsonConverters.toJson(product,'WebshopProductSummary',context!), 'statusCode': statusCode, 'message': message }; getTypeName() => "WebshopProductResult"; TypeContext? context = _ctx; } // @Route("/Webshop/Product/{Id}", "GET") class WebshopProductGetRequest implements IReturn, IConvertible { int? id; int? ownerId; WebshopProductGetRequest({this.id,this.ownerId}); WebshopProductGetRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; ownerId = json['ownerId']; return this; } Map toJson() => { 'id': id, 'ownerId': ownerId }; createResponse() => WebshopProductResult(); getResponseTypeName() => "WebshopProductResult"; getTypeName() => "WebshopProductGetRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: { 'WebshopVariantSummary': TypeInfo(TypeOf.Class, create:() => WebshopVariantSummary()), 'WebshopProductSummary': TypeInfo(TypeOf.Class, create:() => WebshopProductSummary()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'WebshopProductResult': TypeInfo(TypeOf.Class, create:() => WebshopProductResult()), 'WebshopProductGetRequest': TypeInfo(TypeOf.Class, create:() => WebshopProductGetRequest()), });