refactor: member page

This commit is contained in:
bggRGjQaUbCoE
2024-10-14 19:30:35 +08:00
parent 270bf0a4b6
commit 2ce7e33cb5
151 changed files with 66382 additions and 12 deletions

View File

@@ -1,3 +1,5 @@
import 'dart:convert';
import 'package:flutter/material.dart';
class StyleString {
@@ -22,8 +24,8 @@ class Constants {
'11111111111111111111111111111111:1111111111111111:0:0';
static const String userAgent =
'Mozilla/5.0 BiliDroid/1.46.2 (bbcallen@gmail.com) os/android model/vivo mobi_app/android build/1462100 channel/bili innerVer/1462100 osVer/14 network/2';
static const String statistics =
'%7B%22appId%22%3A5%2C%22platform%22%3A3%2C%22version%22%3A%221.46.2%22%2C%22abtest%22%3A%22%22%7D';
static final String statistics = jsonEncode(
{"appId": 5, "platform": 3, "version": "1.46.2", "abtest": ""});
//Uri.encodeComponent('{"appId": 5,"platform": 3,"version": "1.46.2","abtest": ""}');
//内容来自 https://passport.bilibili.com/web/generic/country/list

View File

@@ -0,0 +1,197 @@
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
/// https://github.com/flutter/flutter/issues/18345#issuecomment-1627644396
class DynamicSliverAppBar extends StatefulWidget {
const DynamicSliverAppBar({
this.flexibleSpace,
super.key,
this.leading,
this.automaticallyImplyLeading = true,
this.title,
this.actions,
this.bottom,
this.elevation,
this.scrolledUnderElevation,
this.shadowColor,
this.surfaceTintColor,
this.forceElevated = false,
this.backgroundColor,
this.backgroundGradient,
this.foregroundColor,
this.iconTheme,
this.actionsIconTheme,
this.primary = true,
this.centerTitle,
this.excludeHeaderSemantics = false,
this.titleSpacing,
this.collapsedHeight,
this.expandedHeight,
this.floating = false,
this.pinned = false,
this.snap = false,
this.stretch = false,
this.stretchTriggerOffset = 100.0,
this.onStretchTrigger,
this.shape,
this.toolbarHeight = kToolbarHeight + 20,
this.leadingWidth,
this.toolbarTextStyle,
this.titleTextStyle,
this.systemOverlayStyle,
this.forceMaterialTransparency = false,
this.clipBehavior,
this.appBarClipper,
});
final Widget? flexibleSpace;
final Widget? leading;
final bool automaticallyImplyLeading;
final Widget? title;
final List<Widget>? actions;
final PreferredSizeWidget? bottom;
final double? elevation;
final double? scrolledUnderElevation;
final Color? shadowColor;
final Color? surfaceTintColor;
final bool forceElevated;
final Color? backgroundColor;
/// If backgroundGradient is non null, backgroundColor will be ignored
final LinearGradient? backgroundGradient;
final Color? foregroundColor;
final IconThemeData? iconTheme;
final IconThemeData? actionsIconTheme;
final bool primary;
final bool? centerTitle;
final bool excludeHeaderSemantics;
final double? titleSpacing;
final double? expandedHeight;
final double? collapsedHeight;
final bool floating;
final bool pinned;
final ShapeBorder? shape;
final double toolbarHeight;
final double? leadingWidth;
final TextStyle? toolbarTextStyle;
final TextStyle? titleTextStyle;
final SystemUiOverlayStyle? systemOverlayStyle;
final bool forceMaterialTransparency;
final Clip? clipBehavior;
final bool snap;
final bool stretch;
final double stretchTriggerOffset;
final AsyncCallback? onStretchTrigger;
final CustomClipper<Path>? appBarClipper;
@override
_DynamicSliverAppBarState createState() => _DynamicSliverAppBarState();
}
class _DynamicSliverAppBarState extends State<DynamicSliverAppBar> {
final GlobalKey _childKey = GlobalKey();
// As long as the height is 0 instead of the sliver app bar a sliver to box adapter will be used
// to calculate dynamically the size for the sliver app bar
double _height = 0;
@override
void initState() {
super.initState();
_updateHeight();
}
@override
void didUpdateWidget(covariant DynamicSliverAppBar oldWidget) {
super.didUpdateWidget(oldWidget);
_updateHeight();
}
void _updateHeight() {
// Gets the new height and updates the sliver app bar. Needs to be called after the last frame has been rebuild
// otherwise this will throw an error
WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
if (_childKey.currentContext == null) return;
setState(() {
_height = (_childKey.currentContext!.findRenderObject()! as RenderBox)
.size
.height;
});
});
}
@override
Widget build(BuildContext context) {
//Needed to lay out the flexibleSpace the first time, so we can calculate its intrinsic height
if (_height == 0) {
return SliverToBoxAdapter(
child: Stack(
children: [
Padding(
// Padding which centers the flexible space within the app bar
padding: EdgeInsets.symmetric(
vertical: MediaQuery.paddingOf(context).top / 2),
child: Container(
key: _childKey,
child:
widget.flexibleSpace ?? SizedBox(height: kToolbarHeight)),
),
Positioned.fill(
// 10 is the magic number which the app bar is pushed down within the sliver app bar. Couldnt find exactly where this number
// comes from and found it through trial and error.
top: 10,
child: Align(
alignment: Alignment.topCenter,
child: AppBar(
backgroundColor: Colors.transparent,
elevation: 0,
leading: widget.leading,
actions: widget.actions,
),
),
)
],
),
);
}
return SliverAppBar(
leading: widget.leading,
automaticallyImplyLeading: widget.automaticallyImplyLeading,
title: widget.title,
actions: widget.actions,
bottom: widget.bottom,
elevation: widget.elevation,
scrolledUnderElevation: widget.scrolledUnderElevation,
shadowColor: widget.shadowColor,
surfaceTintColor: widget.surfaceTintColor,
forceElevated: widget.forceElevated,
backgroundColor: widget.backgroundColor,
foregroundColor: widget.foregroundColor,
iconTheme: widget.iconTheme,
actionsIconTheme: widget.actionsIconTheme,
primary: widget.primary,
centerTitle: widget.centerTitle,
excludeHeaderSemantics: widget.excludeHeaderSemantics,
titleSpacing: widget.titleSpacing,
collapsedHeight: widget.collapsedHeight,
floating: widget.floating,
pinned: widget.pinned,
snap: widget.snap,
stretch: widget.stretch,
stretchTriggerOffset: widget.stretchTriggerOffset,
onStretchTrigger: widget.onStretchTrigger,
shape: widget.shape,
toolbarHeight: widget.toolbarHeight,
expandedHeight: _height,
leadingWidth: widget.leadingWidth,
toolbarTextStyle: widget.toolbarTextStyle,
titleTextStyle: widget.titleTextStyle,
systemOverlayStyle: widget.systemOverlayStyle,
forceMaterialTransparency: widget.forceMaterialTransparency,
clipBehavior: widget.clipBehavior,
flexibleSpace: FlexibleSpaceBar(background: widget.flexibleSpace),
);
}
}

View File

@@ -24,6 +24,7 @@ class NetworkImgLayer extends StatelessWidget {
this.semanticsLabel,
this.ignoreHeight,
this.radius,
this.imageBuilder,
});
final String? src;
@@ -37,6 +38,7 @@ class NetworkImgLayer extends StatelessWidget {
final String? semanticsLabel;
final bool? ignoreHeight;
final double? radius;
final ImageWidgetBuilder? imageBuilder;
@override
Widget build(BuildContext context) {
@@ -84,6 +86,7 @@ class NetworkImgLayer extends StatelessWidget {
placeholder(context),
placeholder: (BuildContext context, String url) =>
placeholder(context),
imageBuilder: imageBuilder,
),
)
: placeholder(context);

View File

@@ -0,0 +1,86 @@
import 'dart:math';
import 'dart:ui';
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';
class StickySliverToBoxAdapter extends SingleChildRenderObjectWidget {
const StickySliverToBoxAdapter({super.key, super.child});
@override
RenderObject createRenderObject(BuildContext context) =>
_StickyRenderSliverToBoxAdapter();
}
class _StickyRenderSliverToBoxAdapter extends RenderSliverSingleBoxAdapter {
//查找前一个吸顶的section
RenderSliver? _prev() {
if (parent is RenderViewportBase) {
RenderSliver? current = this;
while (current != null) {
current = (parent as RenderViewportBase).childBefore(current);
if (current is _StickyRenderSliverToBoxAdapter &&
current.geometry != null) {
return current;
}
}
}
return null;
}
// 必须重写,否则点击事件失效。
@override
double childMainAxisPosition(covariant RenderBox child) => 0.0;
@override
void performLayout() {
if (child == null) {
geometry = SliverGeometry.zero;
return;
}
final SliverConstraints constraints = this.constraints;
//摆放子View并把constraints传递给子View
child!.layout(constraints.asBoxConstraints(), parentUsesSize: true);
//获取子View在滑动主轴方向的尺寸
final double childExtent;
switch (constraints.axis) {
case Axis.horizontal:
childExtent = child!.size.width;
case Axis.vertical:
childExtent = child!.size.height;
}
final double minExtent = childExtent;
final double minAllowedExtent = constraints.remainingPaintExtent > minExtent
? minExtent
: constraints.remainingPaintExtent;
final double maxExtent = childExtent;
final double paintExtent = maxExtent;
final double clampedPaintExtent = clampDouble(
paintExtent,
minAllowedExtent,
constraints.remainingPaintExtent,
);
final double layoutExtent = maxExtent - constraints.scrollOffset;
geometry = SliverGeometry(
scrollExtent: maxExtent,
paintOrigin: min(constraints.overlap, 0.0),
paintExtent: clampedPaintExtent,
layoutExtent: clampDouble(layoutExtent, 0.0, clampedPaintExtent),
maxPaintExtent: maxExtent,
maxScrollObstructionExtent: minExtent,
hasVisualOverflow:
true, // Conservatively say we do have overflow to avoid complexity.
);
//上推关键代码: 当前吸顶的Sliver被覆盖了多少前一个吸顶的Sliver就移动多少
RenderSliver? prev = _prev();
if (prev != null && constraints.overlap > 0) {
setChildParentData(
_prev()!,
constraints.copyWith(scrollOffset: constraints.overlap),
_prev()!.geometry!);
}
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,783 @@
//
// Generated code. Do not modify.
// source: bilibili/dagw/component/avatar/common/common.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import
import 'dart:core' as $core;
import 'package:protobuf/protobuf.dart' as $pb;
import 'common.pbenum.dart';
export 'common.pbenum.dart';
class BasicRenderSpec extends $pb.GeneratedMessage {
factory BasicRenderSpec({
$core.double? opacity,
}) {
final $result = create();
if (opacity != null) {
$result.opacity = opacity;
}
return $result;
}
BasicRenderSpec._() : super();
factory BasicRenderSpec.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory BasicRenderSpec.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'BasicRenderSpec', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..a<$core.double>(1, _omitFieldNames ? '' : 'opacity', $pb.PbFieldType.OD)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
BasicRenderSpec clone() => BasicRenderSpec()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
BasicRenderSpec copyWith(void Function(BasicRenderSpec) updates) => super.copyWith((message) => updates(message as BasicRenderSpec)) as BasicRenderSpec;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static BasicRenderSpec create() => BasicRenderSpec._();
BasicRenderSpec createEmptyInstance() => create();
static $pb.PbList<BasicRenderSpec> createRepeated() => $pb.PbList<BasicRenderSpec>();
@$core.pragma('dart2js:noInline')
static BasicRenderSpec getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<BasicRenderSpec>(create);
static BasicRenderSpec? _defaultInstance;
@$pb.TagNumber(1)
$core.double get opacity => $_getN(0);
@$pb.TagNumber(1)
set opacity($core.double v) { $_setDouble(0, v); }
@$pb.TagNumber(1)
$core.bool hasOpacity() => $_has(0);
@$pb.TagNumber(1)
void clearOpacity() => clearField(1);
}
class ColorConfig extends $pb.GeneratedMessage {
factory ColorConfig({
$core.bool? isDarkModeAware,
ColorSpec? day,
ColorSpec? night,
}) {
final $result = create();
if (isDarkModeAware != null) {
$result.isDarkModeAware = isDarkModeAware;
}
if (day != null) {
$result.day = day;
}
if (night != null) {
$result.night = night;
}
return $result;
}
ColorConfig._() : super();
factory ColorConfig.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory ColorConfig.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ColorConfig', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..aOB(1, _omitFieldNames ? '' : 'isDarkModeAware')
..aOM<ColorSpec>(2, _omitFieldNames ? '' : 'day', subBuilder: ColorSpec.create)
..aOM<ColorSpec>(3, _omitFieldNames ? '' : 'night', subBuilder: ColorSpec.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
ColorConfig clone() => ColorConfig()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
ColorConfig copyWith(void Function(ColorConfig) updates) => super.copyWith((message) => updates(message as ColorConfig)) as ColorConfig;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static ColorConfig create() => ColorConfig._();
ColorConfig createEmptyInstance() => create();
static $pb.PbList<ColorConfig> createRepeated() => $pb.PbList<ColorConfig>();
@$core.pragma('dart2js:noInline')
static ColorConfig getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ColorConfig>(create);
static ColorConfig? _defaultInstance;
@$pb.TagNumber(1)
$core.bool get isDarkModeAware => $_getBF(0);
@$pb.TagNumber(1)
set isDarkModeAware($core.bool v) { $_setBool(0, v); }
@$pb.TagNumber(1)
$core.bool hasIsDarkModeAware() => $_has(0);
@$pb.TagNumber(1)
void clearIsDarkModeAware() => clearField(1);
@$pb.TagNumber(2)
ColorSpec get day => $_getN(1);
@$pb.TagNumber(2)
set day(ColorSpec v) { setField(2, v); }
@$pb.TagNumber(2)
$core.bool hasDay() => $_has(1);
@$pb.TagNumber(2)
void clearDay() => clearField(2);
@$pb.TagNumber(2)
ColorSpec ensureDay() => $_ensure(1);
@$pb.TagNumber(3)
ColorSpec get night => $_getN(2);
@$pb.TagNumber(3)
set night(ColorSpec v) { setField(3, v); }
@$pb.TagNumber(3)
$core.bool hasNight() => $_has(2);
@$pb.TagNumber(3)
void clearNight() => clearField(3);
@$pb.TagNumber(3)
ColorSpec ensureNight() => $_ensure(2);
}
class ColorSpec extends $pb.GeneratedMessage {
factory ColorSpec({
$core.String? argb,
}) {
final $result = create();
if (argb != null) {
$result.argb = argb;
}
return $result;
}
ColorSpec._() : super();
factory ColorSpec.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory ColorSpec.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ColorSpec', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'argb')
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
ColorSpec clone() => ColorSpec()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
ColorSpec copyWith(void Function(ColorSpec) updates) => super.copyWith((message) => updates(message as ColorSpec)) as ColorSpec;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static ColorSpec create() => ColorSpec._();
ColorSpec createEmptyInstance() => create();
static $pb.PbList<ColorSpec> createRepeated() => $pb.PbList<ColorSpec>();
@$core.pragma('dart2js:noInline')
static ColorSpec getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ColorSpec>(create);
static ColorSpec? _defaultInstance;
@$pb.TagNumber(1)
$core.String get argb => $_getSZ(0);
@$pb.TagNumber(1)
set argb($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasArgb() => $_has(0);
@$pb.TagNumber(1)
void clearArgb() => clearField(1);
}
class LayerGeneralSpec extends $pb.GeneratedMessage {
factory LayerGeneralSpec({
PositionSpec? posSpec,
SizeSpec? sizeSpec,
BasicRenderSpec? renderSpec,
}) {
final $result = create();
if (posSpec != null) {
$result.posSpec = posSpec;
}
if (sizeSpec != null) {
$result.sizeSpec = sizeSpec;
}
if (renderSpec != null) {
$result.renderSpec = renderSpec;
}
return $result;
}
LayerGeneralSpec._() : super();
factory LayerGeneralSpec.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory LayerGeneralSpec.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LayerGeneralSpec', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..aOM<PositionSpec>(1, _omitFieldNames ? '' : 'posSpec', subBuilder: PositionSpec.create)
..aOM<SizeSpec>(2, _omitFieldNames ? '' : 'sizeSpec', subBuilder: SizeSpec.create)
..aOM<BasicRenderSpec>(3, _omitFieldNames ? '' : 'renderSpec', subBuilder: BasicRenderSpec.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
LayerGeneralSpec clone() => LayerGeneralSpec()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
LayerGeneralSpec copyWith(void Function(LayerGeneralSpec) updates) => super.copyWith((message) => updates(message as LayerGeneralSpec)) as LayerGeneralSpec;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static LayerGeneralSpec create() => LayerGeneralSpec._();
LayerGeneralSpec createEmptyInstance() => create();
static $pb.PbList<LayerGeneralSpec> createRepeated() => $pb.PbList<LayerGeneralSpec>();
@$core.pragma('dart2js:noInline')
static LayerGeneralSpec getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<LayerGeneralSpec>(create);
static LayerGeneralSpec? _defaultInstance;
@$pb.TagNumber(1)
PositionSpec get posSpec => $_getN(0);
@$pb.TagNumber(1)
set posSpec(PositionSpec v) { setField(1, v); }
@$pb.TagNumber(1)
$core.bool hasPosSpec() => $_has(0);
@$pb.TagNumber(1)
void clearPosSpec() => clearField(1);
@$pb.TagNumber(1)
PositionSpec ensurePosSpec() => $_ensure(0);
@$pb.TagNumber(2)
SizeSpec get sizeSpec => $_getN(1);
@$pb.TagNumber(2)
set sizeSpec(SizeSpec v) { setField(2, v); }
@$pb.TagNumber(2)
$core.bool hasSizeSpec() => $_has(1);
@$pb.TagNumber(2)
void clearSizeSpec() => clearField(2);
@$pb.TagNumber(2)
SizeSpec ensureSizeSpec() => $_ensure(1);
@$pb.TagNumber(3)
BasicRenderSpec get renderSpec => $_getN(2);
@$pb.TagNumber(3)
set renderSpec(BasicRenderSpec v) { setField(3, v); }
@$pb.TagNumber(3)
$core.bool hasRenderSpec() => $_has(2);
@$pb.TagNumber(3)
void clearRenderSpec() => clearField(3);
@$pb.TagNumber(3)
BasicRenderSpec ensureRenderSpec() => $_ensure(2);
}
class MaskProperty extends $pb.GeneratedMessage {
factory MaskProperty({
LayerGeneralSpec? generalSpec,
ResourceSource? maskSrc,
}) {
final $result = create();
if (generalSpec != null) {
$result.generalSpec = generalSpec;
}
if (maskSrc != null) {
$result.maskSrc = maskSrc;
}
return $result;
}
MaskProperty._() : super();
factory MaskProperty.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory MaskProperty.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'MaskProperty', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..aOM<LayerGeneralSpec>(1, _omitFieldNames ? '' : 'generalSpec', subBuilder: LayerGeneralSpec.create)
..aOM<ResourceSource>(2, _omitFieldNames ? '' : 'maskSrc', subBuilder: ResourceSource.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
MaskProperty clone() => MaskProperty()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
MaskProperty copyWith(void Function(MaskProperty) updates) => super.copyWith((message) => updates(message as MaskProperty)) as MaskProperty;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static MaskProperty create() => MaskProperty._();
MaskProperty createEmptyInstance() => create();
static $pb.PbList<MaskProperty> createRepeated() => $pb.PbList<MaskProperty>();
@$core.pragma('dart2js:noInline')
static MaskProperty getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<MaskProperty>(create);
static MaskProperty? _defaultInstance;
@$pb.TagNumber(1)
LayerGeneralSpec get generalSpec => $_getN(0);
@$pb.TagNumber(1)
set generalSpec(LayerGeneralSpec v) { setField(1, v); }
@$pb.TagNumber(1)
$core.bool hasGeneralSpec() => $_has(0);
@$pb.TagNumber(1)
void clearGeneralSpec() => clearField(1);
@$pb.TagNumber(1)
LayerGeneralSpec ensureGeneralSpec() => $_ensure(0);
@$pb.TagNumber(2)
ResourceSource get maskSrc => $_getN(1);
@$pb.TagNumber(2)
set maskSrc(ResourceSource v) { setField(2, v); }
@$pb.TagNumber(2)
$core.bool hasMaskSrc() => $_has(1);
@$pb.TagNumber(2)
void clearMaskSrc() => clearField(2);
@$pb.TagNumber(2)
ResourceSource ensureMaskSrc() => $_ensure(1);
}
class NativeDrawRes extends $pb.GeneratedMessage {
factory NativeDrawRes({
$core.int? drawType,
$core.int? fillMode,
ColorConfig? colorConfig,
$core.double? edgeWeight,
}) {
final $result = create();
if (drawType != null) {
$result.drawType = drawType;
}
if (fillMode != null) {
$result.fillMode = fillMode;
}
if (colorConfig != null) {
$result.colorConfig = colorConfig;
}
if (edgeWeight != null) {
$result.edgeWeight = edgeWeight;
}
return $result;
}
NativeDrawRes._() : super();
factory NativeDrawRes.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory NativeDrawRes.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'NativeDrawRes', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..a<$core.int>(1, _omitFieldNames ? '' : 'drawType', $pb.PbFieldType.O3)
..a<$core.int>(2, _omitFieldNames ? '' : 'fillMode', $pb.PbFieldType.O3)
..aOM<ColorConfig>(3, _omitFieldNames ? '' : 'colorConfig', subBuilder: ColorConfig.create)
..a<$core.double>(4, _omitFieldNames ? '' : 'edgeWeight', $pb.PbFieldType.OD)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
NativeDrawRes clone() => NativeDrawRes()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
NativeDrawRes copyWith(void Function(NativeDrawRes) updates) => super.copyWith((message) => updates(message as NativeDrawRes)) as NativeDrawRes;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static NativeDrawRes create() => NativeDrawRes._();
NativeDrawRes createEmptyInstance() => create();
static $pb.PbList<NativeDrawRes> createRepeated() => $pb.PbList<NativeDrawRes>();
@$core.pragma('dart2js:noInline')
static NativeDrawRes getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<NativeDrawRes>(create);
static NativeDrawRes? _defaultInstance;
@$pb.TagNumber(1)
$core.int get drawType => $_getIZ(0);
@$pb.TagNumber(1)
set drawType($core.int v) { $_setSignedInt32(0, v); }
@$pb.TagNumber(1)
$core.bool hasDrawType() => $_has(0);
@$pb.TagNumber(1)
void clearDrawType() => clearField(1);
@$pb.TagNumber(2)
$core.int get fillMode => $_getIZ(1);
@$pb.TagNumber(2)
set fillMode($core.int v) { $_setSignedInt32(1, v); }
@$pb.TagNumber(2)
$core.bool hasFillMode() => $_has(1);
@$pb.TagNumber(2)
void clearFillMode() => clearField(2);
@$pb.TagNumber(3)
ColorConfig get colorConfig => $_getN(2);
@$pb.TagNumber(3)
set colorConfig(ColorConfig v) { setField(3, v); }
@$pb.TagNumber(3)
$core.bool hasColorConfig() => $_has(2);
@$pb.TagNumber(3)
void clearColorConfig() => clearField(3);
@$pb.TagNumber(3)
ColorConfig ensureColorConfig() => $_ensure(2);
@$pb.TagNumber(4)
$core.double get edgeWeight => $_getN(3);
@$pb.TagNumber(4)
set edgeWeight($core.double v) { $_setDouble(3, v); }
@$pb.TagNumber(4)
$core.bool hasEdgeWeight() => $_has(3);
@$pb.TagNumber(4)
void clearEdgeWeight() => clearField(4);
}
class PositionSpec extends $pb.GeneratedMessage {
factory PositionSpec({
$core.int? coordinatePos,
$core.double? axisX,
$core.double? axisY,
}) {
final $result = create();
if (coordinatePos != null) {
$result.coordinatePos = coordinatePos;
}
if (axisX != null) {
$result.axisX = axisX;
}
if (axisY != null) {
$result.axisY = axisY;
}
return $result;
}
PositionSpec._() : super();
factory PositionSpec.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory PositionSpec.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'PositionSpec', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..a<$core.int>(1, _omitFieldNames ? '' : 'coordinatePos', $pb.PbFieldType.O3)
..a<$core.double>(2, _omitFieldNames ? '' : 'axisX', $pb.PbFieldType.OD)
..a<$core.double>(3, _omitFieldNames ? '' : 'axisY', $pb.PbFieldType.OD)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
PositionSpec clone() => PositionSpec()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
PositionSpec copyWith(void Function(PositionSpec) updates) => super.copyWith((message) => updates(message as PositionSpec)) as PositionSpec;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static PositionSpec create() => PositionSpec._();
PositionSpec createEmptyInstance() => create();
static $pb.PbList<PositionSpec> createRepeated() => $pb.PbList<PositionSpec>();
@$core.pragma('dart2js:noInline')
static PositionSpec getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<PositionSpec>(create);
static PositionSpec? _defaultInstance;
@$pb.TagNumber(1)
$core.int get coordinatePos => $_getIZ(0);
@$pb.TagNumber(1)
set coordinatePos($core.int v) { $_setSignedInt32(0, v); }
@$pb.TagNumber(1)
$core.bool hasCoordinatePos() => $_has(0);
@$pb.TagNumber(1)
void clearCoordinatePos() => clearField(1);
@$pb.TagNumber(2)
$core.double get axisX => $_getN(1);
@$pb.TagNumber(2)
set axisX($core.double v) { $_setDouble(1, v); }
@$pb.TagNumber(2)
$core.bool hasAxisX() => $_has(1);
@$pb.TagNumber(2)
void clearAxisX() => clearField(2);
@$pb.TagNumber(3)
$core.double get axisY => $_getN(2);
@$pb.TagNumber(3)
set axisY($core.double v) { $_setDouble(2, v); }
@$pb.TagNumber(3)
$core.bool hasAxisY() => $_has(2);
@$pb.TagNumber(3)
void clearAxisY() => clearField(3);
}
class RemoteRes extends $pb.GeneratedMessage {
factory RemoteRes({
$core.String? url,
$core.String? bfsStyle,
}) {
final $result = create();
if (url != null) {
$result.url = url;
}
if (bfsStyle != null) {
$result.bfsStyle = bfsStyle;
}
return $result;
}
RemoteRes._() : super();
factory RemoteRes.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory RemoteRes.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'RemoteRes', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'url')
..aOS(2, _omitFieldNames ? '' : 'bfsStyle')
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
RemoteRes clone() => RemoteRes()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
RemoteRes copyWith(void Function(RemoteRes) updates) => super.copyWith((message) => updates(message as RemoteRes)) as RemoteRes;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static RemoteRes create() => RemoteRes._();
RemoteRes createEmptyInstance() => create();
static $pb.PbList<RemoteRes> createRepeated() => $pb.PbList<RemoteRes>();
@$core.pragma('dart2js:noInline')
static RemoteRes getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<RemoteRes>(create);
static RemoteRes? _defaultInstance;
@$pb.TagNumber(1)
$core.String get url => $_getSZ(0);
@$pb.TagNumber(1)
set url($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasUrl() => $_has(0);
@$pb.TagNumber(1)
void clearUrl() => clearField(1);
@$pb.TagNumber(2)
$core.String get bfsStyle => $_getSZ(1);
@$pb.TagNumber(2)
set bfsStyle($core.String v) { $_setString(1, v); }
@$pb.TagNumber(2)
$core.bool hasBfsStyle() => $_has(1);
@$pb.TagNumber(2)
void clearBfsStyle() => clearField(2);
}
enum ResourceSource_Res {
remote,
local,
draw,
notSet
}
class ResourceSource extends $pb.GeneratedMessage {
factory ResourceSource({
$core.int? srcType,
$core.int? placeholder,
RemoteRes? remote,
ResourceSource_LocalRes? local,
NativeDrawRes? draw,
}) {
final $result = create();
if (srcType != null) {
$result.srcType = srcType;
}
if (placeholder != null) {
$result.placeholder = placeholder;
}
if (remote != null) {
$result.remote = remote;
}
if (local != null) {
$result.local = local;
}
if (draw != null) {
$result.draw = draw;
}
return $result;
}
ResourceSource._() : super();
factory ResourceSource.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory ResourceSource.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static const $core.Map<$core.int, ResourceSource_Res> _ResourceSource_ResByTag = {
3 : ResourceSource_Res.remote,
4 : ResourceSource_Res.local,
5 : ResourceSource_Res.draw,
0 : ResourceSource_Res.notSet
};
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ResourceSource', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..oo(0, [3, 4, 5])
..a<$core.int>(1, _omitFieldNames ? '' : 'srcType', $pb.PbFieldType.O3)
..a<$core.int>(2, _omitFieldNames ? '' : 'placeholder', $pb.PbFieldType.O3)
..aOM<RemoteRes>(3, _omitFieldNames ? '' : 'remote', subBuilder: RemoteRes.create)
..e<ResourceSource_LocalRes>(4, _omitFieldNames ? '' : 'local', $pb.PbFieldType.OE, defaultOrMaker: ResourceSource_LocalRes.LOCAL_RES_INVALID, valueOf: ResourceSource_LocalRes.valueOf, enumValues: ResourceSource_LocalRes.values)
..aOM<NativeDrawRes>(5, _omitFieldNames ? '' : 'draw', subBuilder: NativeDrawRes.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
ResourceSource clone() => ResourceSource()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
ResourceSource copyWith(void Function(ResourceSource) updates) => super.copyWith((message) => updates(message as ResourceSource)) as ResourceSource;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static ResourceSource create() => ResourceSource._();
ResourceSource createEmptyInstance() => create();
static $pb.PbList<ResourceSource> createRepeated() => $pb.PbList<ResourceSource>();
@$core.pragma('dart2js:noInline')
static ResourceSource getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ResourceSource>(create);
static ResourceSource? _defaultInstance;
ResourceSource_Res whichRes() => _ResourceSource_ResByTag[$_whichOneof(0)]!;
void clearRes() => clearField($_whichOneof(0));
@$pb.TagNumber(1)
$core.int get srcType => $_getIZ(0);
@$pb.TagNumber(1)
set srcType($core.int v) { $_setSignedInt32(0, v); }
@$pb.TagNumber(1)
$core.bool hasSrcType() => $_has(0);
@$pb.TagNumber(1)
void clearSrcType() => clearField(1);
@$pb.TagNumber(2)
$core.int get placeholder => $_getIZ(1);
@$pb.TagNumber(2)
set placeholder($core.int v) { $_setSignedInt32(1, v); }
@$pb.TagNumber(2)
$core.bool hasPlaceholder() => $_has(1);
@$pb.TagNumber(2)
void clearPlaceholder() => clearField(2);
@$pb.TagNumber(3)
RemoteRes get remote => $_getN(2);
@$pb.TagNumber(3)
set remote(RemoteRes v) { setField(3, v); }
@$pb.TagNumber(3)
$core.bool hasRemote() => $_has(2);
@$pb.TagNumber(3)
void clearRemote() => clearField(3);
@$pb.TagNumber(3)
RemoteRes ensureRemote() => $_ensure(2);
@$pb.TagNumber(4)
ResourceSource_LocalRes get local => $_getN(3);
@$pb.TagNumber(4)
set local(ResourceSource_LocalRes v) { setField(4, v); }
@$pb.TagNumber(4)
$core.bool hasLocal() => $_has(3);
@$pb.TagNumber(4)
void clearLocal() => clearField(4);
@$pb.TagNumber(5)
NativeDrawRes get draw => $_getN(4);
@$pb.TagNumber(5)
set draw(NativeDrawRes v) { setField(5, v); }
@$pb.TagNumber(5)
$core.bool hasDraw() => $_has(4);
@$pb.TagNumber(5)
void clearDraw() => clearField(5);
@$pb.TagNumber(5)
NativeDrawRes ensureDraw() => $_ensure(4);
}
class SizeSpec extends $pb.GeneratedMessage {
factory SizeSpec({
$core.double? width,
$core.double? height,
}) {
final $result = create();
if (width != null) {
$result.width = width;
}
if (height != null) {
$result.height = height;
}
return $result;
}
SizeSpec._() : super();
factory SizeSpec.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory SizeSpec.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SizeSpec', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.common'), createEmptyInstance: create)
..a<$core.double>(1, _omitFieldNames ? '' : 'width', $pb.PbFieldType.OD)
..a<$core.double>(2, _omitFieldNames ? '' : 'height', $pb.PbFieldType.OD)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
SizeSpec clone() => SizeSpec()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
SizeSpec copyWith(void Function(SizeSpec) updates) => super.copyWith((message) => updates(message as SizeSpec)) as SizeSpec;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static SizeSpec create() => SizeSpec._();
SizeSpec createEmptyInstance() => create();
static $pb.PbList<SizeSpec> createRepeated() => $pb.PbList<SizeSpec>();
@$core.pragma('dart2js:noInline')
static SizeSpec getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<SizeSpec>(create);
static SizeSpec? _defaultInstance;
@$pb.TagNumber(1)
$core.double get width => $_getN(0);
@$pb.TagNumber(1)
set width($core.double v) { $_setDouble(0, v); }
@$pb.TagNumber(1)
$core.bool hasWidth() => $_has(0);
@$pb.TagNumber(1)
void clearWidth() => clearField(1);
@$pb.TagNumber(2)
$core.double get height => $_getN(1);
@$pb.TagNumber(2)
set height($core.double v) { $_setDouble(1, v); }
@$pb.TagNumber(2)
$core.bool hasHeight() => $_has(1);
@$pb.TagNumber(2)
void clearHeight() => clearField(2);
}
const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names');
const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names');

View File

@@ -0,0 +1,42 @@
//
// Generated code. Do not modify.
// source: bilibili/dagw/component/avatar/common/common.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import
import 'dart:core' as $core;
import 'package:protobuf/protobuf.dart' as $pb;
class ResourceSource_LocalRes extends $pb.ProtobufEnum {
static const ResourceSource_LocalRes LOCAL_RES_INVALID = ResourceSource_LocalRes._(0, _omitEnumNames ? '' : 'LOCAL_RES_INVALID');
static const ResourceSource_LocalRes LOCAL_RES_ICON_VIP = ResourceSource_LocalRes._(1, _omitEnumNames ? '' : 'LOCAL_RES_ICON_VIP');
static const ResourceSource_LocalRes LOCAL_RES_ICON_SMALL_VIP = ResourceSource_LocalRes._(2, _omitEnumNames ? '' : 'LOCAL_RES_ICON_SMALL_VIP');
static const ResourceSource_LocalRes LOCAL_RES_ICON_PERSONAL_VERIFY = ResourceSource_LocalRes._(3, _omitEnumNames ? '' : 'LOCAL_RES_ICON_PERSONAL_VERIFY');
static const ResourceSource_LocalRes LOCAL_RES_ICON_ENTERPRISE_VERIFY = ResourceSource_LocalRes._(4, _omitEnumNames ? '' : 'LOCAL_RES_ICON_ENTERPRISE_VERIFY');
static const ResourceSource_LocalRes LOCAL_RES_ICON_NFT_MAINLAND = ResourceSource_LocalRes._(5, _omitEnumNames ? '' : 'LOCAL_RES_ICON_NFT_MAINLAND');
static const ResourceSource_LocalRes LOCAL_RES_DEFAULT_AVATAR = ResourceSource_LocalRes._(6, _omitEnumNames ? '' : 'LOCAL_RES_DEFAULT_AVATAR');
static const $core.List<ResourceSource_LocalRes> values = <ResourceSource_LocalRes> [
LOCAL_RES_INVALID,
LOCAL_RES_ICON_VIP,
LOCAL_RES_ICON_SMALL_VIP,
LOCAL_RES_ICON_PERSONAL_VERIFY,
LOCAL_RES_ICON_ENTERPRISE_VERIFY,
LOCAL_RES_ICON_NFT_MAINLAND,
LOCAL_RES_DEFAULT_AVATAR,
];
static final $core.Map<$core.int, ResourceSource_LocalRes> _byValue = $pb.ProtobufEnum.initByValue(values);
static ResourceSource_LocalRes? valueOf($core.int value) => _byValue[value];
const ResourceSource_LocalRes._($core.int v, $core.String n) : super(v, n);
}
const _omitEnumNames = $core.bool.fromEnvironment('protobuf.omit_enum_names');

View File

@@ -0,0 +1,194 @@
//
// Generated code. Do not modify.
// source: bilibili/dagw/component/avatar/common/common.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import
import 'dart:convert' as $convert;
import 'dart:core' as $core;
import 'dart:typed_data' as $typed_data;
@$core.Deprecated('Use basicRenderSpecDescriptor instead')
const BasicRenderSpec$json = {
'1': 'BasicRenderSpec',
'2': [
{'1': 'opacity', '3': 1, '4': 1, '5': 1, '10': 'opacity'},
],
};
/// Descriptor for `BasicRenderSpec`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List basicRenderSpecDescriptor = $convert.base64Decode(
'Cg9CYXNpY1JlbmRlclNwZWMSGAoHb3BhY2l0eRgBIAEoAVIHb3BhY2l0eQ==');
@$core.Deprecated('Use colorConfigDescriptor instead')
const ColorConfig$json = {
'1': 'ColorConfig',
'2': [
{'1': 'is_dark_mode_aware', '3': 1, '4': 1, '5': 8, '10': 'isDarkModeAware'},
{'1': 'day', '3': 2, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.ColorSpec', '10': 'day'},
{'1': 'night', '3': 3, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.ColorSpec', '10': 'night'},
],
};
/// Descriptor for `ColorConfig`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List colorConfigDescriptor = $convert.base64Decode(
'CgtDb2xvckNvbmZpZxIrChJpc19kYXJrX21vZGVfYXdhcmUYASABKAhSD2lzRGFya01vZGVBd2'
'FyZRJCCgNkYXkYAiABKAsyMC5iaWxpYmlsaS5kYWd3LmNvbXBvbmVudC5hdmF0YXIuY29tbW9u'
'LkNvbG9yU3BlY1IDZGF5EkYKBW5pZ2h0GAMgASgLMjAuYmlsaWJpbGkuZGFndy5jb21wb25lbn'
'QuYXZhdGFyLmNvbW1vbi5Db2xvclNwZWNSBW5pZ2h0');
@$core.Deprecated('Use colorSpecDescriptor instead')
const ColorSpec$json = {
'1': 'ColorSpec',
'2': [
{'1': 'argb', '3': 1, '4': 1, '5': 9, '10': 'argb'},
],
};
/// Descriptor for `ColorSpec`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List colorSpecDescriptor = $convert.base64Decode(
'CglDb2xvclNwZWMSEgoEYXJnYhgBIAEoCVIEYXJnYg==');
@$core.Deprecated('Use layerGeneralSpecDescriptor instead')
const LayerGeneralSpec$json = {
'1': 'LayerGeneralSpec',
'2': [
{'1': 'pos_spec', '3': 1, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.PositionSpec', '10': 'posSpec'},
{'1': 'size_spec', '3': 2, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.SizeSpec', '10': 'sizeSpec'},
{'1': 'render_spec', '3': 3, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.BasicRenderSpec', '10': 'renderSpec'},
],
};
/// Descriptor for `LayerGeneralSpec`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List layerGeneralSpecDescriptor = $convert.base64Decode(
'ChBMYXllckdlbmVyYWxTcGVjEk4KCHBvc19zcGVjGAEgASgLMjMuYmlsaWJpbGkuZGFndy5jb2'
'1wb25lbnQuYXZhdGFyLmNvbW1vbi5Qb3NpdGlvblNwZWNSB3Bvc1NwZWMSTAoJc2l6ZV9zcGVj'
'GAIgASgLMi8uYmlsaWJpbGkuZGFndy5jb21wb25lbnQuYXZhdGFyLmNvbW1vbi5TaXplU3BlY1'
'IIc2l6ZVNwZWMSVwoLcmVuZGVyX3NwZWMYAyABKAsyNi5iaWxpYmlsaS5kYWd3LmNvbXBvbmVu'
'dC5hdmF0YXIuY29tbW9uLkJhc2ljUmVuZGVyU3BlY1IKcmVuZGVyU3BlYw==');
@$core.Deprecated('Use maskPropertyDescriptor instead')
const MaskProperty$json = {
'1': 'MaskProperty',
'2': [
{'1': 'general_spec', '3': 1, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.LayerGeneralSpec', '10': 'generalSpec'},
{'1': 'mask_src', '3': 2, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.ResourceSource', '10': 'maskSrc'},
],
};
/// Descriptor for `MaskProperty`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List maskPropertyDescriptor = $convert.base64Decode(
'CgxNYXNrUHJvcGVydHkSWgoMZ2VuZXJhbF9zcGVjGAEgASgLMjcuYmlsaWJpbGkuZGFndy5jb2'
'1wb25lbnQuYXZhdGFyLmNvbW1vbi5MYXllckdlbmVyYWxTcGVjUgtnZW5lcmFsU3BlYxJQCght'
'YXNrX3NyYxgCIAEoCzI1LmJpbGliaWxpLmRhZ3cuY29tcG9uZW50LmF2YXRhci5jb21tb24uUm'
'Vzb3VyY2VTb3VyY2VSB21hc2tTcmM=');
@$core.Deprecated('Use nativeDrawResDescriptor instead')
const NativeDrawRes$json = {
'1': 'NativeDrawRes',
'2': [
{'1': 'draw_type', '3': 1, '4': 1, '5': 5, '10': 'drawType'},
{'1': 'fill_mode', '3': 2, '4': 1, '5': 5, '10': 'fillMode'},
{'1': 'color_config', '3': 3, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.ColorConfig', '10': 'colorConfig'},
{'1': 'edge_weight', '3': 4, '4': 1, '5': 1, '10': 'edgeWeight'},
],
};
/// Descriptor for `NativeDrawRes`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List nativeDrawResDescriptor = $convert.base64Decode(
'Cg1OYXRpdmVEcmF3UmVzEhsKCWRyYXdfdHlwZRgBIAEoBVIIZHJhd1R5cGUSGwoJZmlsbF9tb2'
'RlGAIgASgFUghmaWxsTW9kZRJVCgxjb2xvcl9jb25maWcYAyABKAsyMi5iaWxpYmlsaS5kYWd3'
'LmNvbXBvbmVudC5hdmF0YXIuY29tbW9uLkNvbG9yQ29uZmlnUgtjb2xvckNvbmZpZxIfCgtlZG'
'dlX3dlaWdodBgEIAEoAVIKZWRnZVdlaWdodA==');
@$core.Deprecated('Use positionSpecDescriptor instead')
const PositionSpec$json = {
'1': 'PositionSpec',
'2': [
{'1': 'coordinate_pos', '3': 1, '4': 1, '5': 5, '10': 'coordinatePos'},
{'1': 'axis_x', '3': 2, '4': 1, '5': 1, '10': 'axisX'},
{'1': 'axis_y', '3': 3, '4': 1, '5': 1, '10': 'axisY'},
],
};
/// Descriptor for `PositionSpec`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List positionSpecDescriptor = $convert.base64Decode(
'CgxQb3NpdGlvblNwZWMSJQoOY29vcmRpbmF0ZV9wb3MYASABKAVSDWNvb3JkaW5hdGVQb3MSFQ'
'oGYXhpc194GAIgASgBUgVheGlzWBIVCgZheGlzX3kYAyABKAFSBWF4aXNZ');
@$core.Deprecated('Use remoteResDescriptor instead')
const RemoteRes$json = {
'1': 'RemoteRes',
'2': [
{'1': 'url', '3': 1, '4': 1, '5': 9, '10': 'url'},
{'1': 'bfs_style', '3': 2, '4': 1, '5': 9, '10': 'bfsStyle'},
],
};
/// Descriptor for `RemoteRes`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List remoteResDescriptor = $convert.base64Decode(
'CglSZW1vdGVSZXMSEAoDdXJsGAEgASgJUgN1cmwSGwoJYmZzX3N0eWxlGAIgASgJUghiZnNTdH'
'lsZQ==');
@$core.Deprecated('Use resourceSourceDescriptor instead')
const ResourceSource$json = {
'1': 'ResourceSource',
'2': [
{'1': 'src_type', '3': 1, '4': 1, '5': 5, '10': 'srcType'},
{'1': 'placeholder', '3': 2, '4': 1, '5': 5, '10': 'placeholder'},
{'1': 'remote', '3': 3, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.RemoteRes', '9': 0, '10': 'remote'},
{'1': 'local', '3': 4, '4': 1, '5': 14, '6': '.bilibili.dagw.component.avatar.common.ResourceSource.LocalRes', '9': 0, '10': 'local'},
{'1': 'draw', '3': 5, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.NativeDrawRes', '9': 0, '10': 'draw'},
],
'4': [ResourceSource_LocalRes$json],
'8': [
{'1': 'res'},
],
};
@$core.Deprecated('Use resourceSourceDescriptor instead')
const ResourceSource_LocalRes$json = {
'1': 'LocalRes',
'2': [
{'1': 'LOCAL_RES_INVALID', '2': 0},
{'1': 'LOCAL_RES_ICON_VIP', '2': 1},
{'1': 'LOCAL_RES_ICON_SMALL_VIP', '2': 2},
{'1': 'LOCAL_RES_ICON_PERSONAL_VERIFY', '2': 3},
{'1': 'LOCAL_RES_ICON_ENTERPRISE_VERIFY', '2': 4},
{'1': 'LOCAL_RES_ICON_NFT_MAINLAND', '2': 5},
{'1': 'LOCAL_RES_DEFAULT_AVATAR', '2': 6},
],
};
/// Descriptor for `ResourceSource`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List resourceSourceDescriptor = $convert.base64Decode(
'Cg5SZXNvdXJjZVNvdXJjZRIZCghzcmNfdHlwZRgBIAEoBVIHc3JjVHlwZRIgCgtwbGFjZWhvbG'
'RlchgCIAEoBVILcGxhY2Vob2xkZXISSgoGcmVtb3RlGAMgASgLMjAuYmlsaWJpbGkuZGFndy5j'
'b21wb25lbnQuYXZhdGFyLmNvbW1vbi5SZW1vdGVSZXNIAFIGcmVtb3RlElYKBWxvY2FsGAQgAS'
'gOMj4uYmlsaWJpbGkuZGFndy5jb21wb25lbnQuYXZhdGFyLmNvbW1vbi5SZXNvdXJjZVNvdXJj'
'ZS5Mb2NhbFJlc0gAUgVsb2NhbBJKCgRkcmF3GAUgASgLMjQuYmlsaWJpbGkuZGFndy5jb21wb2'
'5lbnQuYXZhdGFyLmNvbW1vbi5OYXRpdmVEcmF3UmVzSABSBGRyYXci4AEKCExvY2FsUmVzEhUK'
'EUxPQ0FMX1JFU19JTlZBTElEEAASFgoSTE9DQUxfUkVTX0lDT05fVklQEAESHAoYTE9DQUxfUk'
'VTX0lDT05fU01BTExfVklQEAISIgoeTE9DQUxfUkVTX0lDT05fUEVSU09OQUxfVkVSSUZZEAMS'
'JAogTE9DQUxfUkVTX0lDT05fRU5URVJQUklTRV9WRVJJRlkQBBIfChtMT0NBTF9SRVNfSUNPTl'
'9ORlRfTUFJTkxBTkQQBRIcChhMT0NBTF9SRVNfREVGQVVMVF9BVkFUQVIQBkIFCgNyZXM=');
@$core.Deprecated('Use sizeSpecDescriptor instead')
const SizeSpec$json = {
'1': 'SizeSpec',
'2': [
{'1': 'width', '3': 1, '4': 1, '5': 1, '10': 'width'},
{'1': 'height', '3': 2, '4': 1, '5': 1, '10': 'height'},
],
};
/// Descriptor for `SizeSpec`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List sizeSpecDescriptor = $convert.base64Decode(
'CghTaXplU3BlYxIUCgV3aWR0aBgBIAEoAVIFd2lkdGgSFgoGaGVpZ2h0GAIgASgBUgZoZWlnaH'
'Q=');

View File

@@ -0,0 +1,849 @@
//
// Generated code. Do not modify.
// source: bilibili/dagw/component/avatar/v1/avatar.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import
import 'dart:core' as $core;
import 'package:fixnum/fixnum.dart' as $fixnum;
import 'package:protobuf/protobuf.dart' as $pb;
import '../common/common.pb.dart' as $0;
import 'plugin.pb.dart' as $1;
class AvatarItem extends $pb.GeneratedMessage {
factory AvatarItem({
$0.SizeSpec? containerSize,
$core.Iterable<LayerGroup>? layers,
LayerGroup? fallbackLayers,
$fixnum.Int64? mid,
}) {
final $result = create();
if (containerSize != null) {
$result.containerSize = containerSize;
}
if (layers != null) {
$result.layers.addAll(layers);
}
if (fallbackLayers != null) {
$result.fallbackLayers = fallbackLayers;
}
if (mid != null) {
$result.mid = mid;
}
return $result;
}
AvatarItem._() : super();
factory AvatarItem.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory AvatarItem.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'AvatarItem', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..aOM<$0.SizeSpec>(1, _omitFieldNames ? '' : 'containerSize', subBuilder: $0.SizeSpec.create)
..pc<LayerGroup>(2, _omitFieldNames ? '' : 'layers', $pb.PbFieldType.PM, subBuilder: LayerGroup.create)
..aOM<LayerGroup>(3, _omitFieldNames ? '' : 'fallbackLayers', subBuilder: LayerGroup.create)
..aInt64(4, _omitFieldNames ? '' : 'mid')
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
AvatarItem clone() => AvatarItem()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
AvatarItem copyWith(void Function(AvatarItem) updates) => super.copyWith((message) => updates(message as AvatarItem)) as AvatarItem;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static AvatarItem create() => AvatarItem._();
AvatarItem createEmptyInstance() => create();
static $pb.PbList<AvatarItem> createRepeated() => $pb.PbList<AvatarItem>();
@$core.pragma('dart2js:noInline')
static AvatarItem getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<AvatarItem>(create);
static AvatarItem? _defaultInstance;
@$pb.TagNumber(1)
$0.SizeSpec get containerSize => $_getN(0);
@$pb.TagNumber(1)
set containerSize($0.SizeSpec v) { setField(1, v); }
@$pb.TagNumber(1)
$core.bool hasContainerSize() => $_has(0);
@$pb.TagNumber(1)
void clearContainerSize() => clearField(1);
@$pb.TagNumber(1)
$0.SizeSpec ensureContainerSize() => $_ensure(0);
@$pb.TagNumber(2)
$core.List<LayerGroup> get layers => $_getList(1);
@$pb.TagNumber(3)
LayerGroup get fallbackLayers => $_getN(2);
@$pb.TagNumber(3)
set fallbackLayers(LayerGroup v) { setField(3, v); }
@$pb.TagNumber(3)
$core.bool hasFallbackLayers() => $_has(2);
@$pb.TagNumber(3)
void clearFallbackLayers() => clearField(3);
@$pb.TagNumber(3)
LayerGroup ensureFallbackLayers() => $_ensure(2);
@$pb.TagNumber(4)
$fixnum.Int64 get mid => $_getI64(3);
@$pb.TagNumber(4)
set mid($fixnum.Int64 v) { $_setInt64(3, v); }
@$pb.TagNumber(4)
$core.bool hasMid() => $_has(3);
@$pb.TagNumber(4)
void clearMid() => clearField(4);
}
enum BasicLayerResource_Payload {
resImage,
resAnimation,
resNativeDraw,
notSet
}
class BasicLayerResource extends $pb.GeneratedMessage {
factory BasicLayerResource({
$core.int? resType,
ResImage? resImage,
ResAnimation? resAnimation,
ResNativeDraw? resNativeDraw,
}) {
final $result = create();
if (resType != null) {
$result.resType = resType;
}
if (resImage != null) {
$result.resImage = resImage;
}
if (resAnimation != null) {
$result.resAnimation = resAnimation;
}
if (resNativeDraw != null) {
$result.resNativeDraw = resNativeDraw;
}
return $result;
}
BasicLayerResource._() : super();
factory BasicLayerResource.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory BasicLayerResource.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static const $core.Map<$core.int, BasicLayerResource_Payload> _BasicLayerResource_PayloadByTag = {
2 : BasicLayerResource_Payload.resImage,
3 : BasicLayerResource_Payload.resAnimation,
4 : BasicLayerResource_Payload.resNativeDraw,
0 : BasicLayerResource_Payload.notSet
};
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'BasicLayerResource', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..oo(0, [2, 3, 4])
..a<$core.int>(1, _omitFieldNames ? '' : 'resType', $pb.PbFieldType.O3)
..aOM<ResImage>(2, _omitFieldNames ? '' : 'resImage', subBuilder: ResImage.create)
..aOM<ResAnimation>(3, _omitFieldNames ? '' : 'resAnimation', subBuilder: ResAnimation.create)
..aOM<ResNativeDraw>(4, _omitFieldNames ? '' : 'resNativeDraw', subBuilder: ResNativeDraw.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
BasicLayerResource clone() => BasicLayerResource()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
BasicLayerResource copyWith(void Function(BasicLayerResource) updates) => super.copyWith((message) => updates(message as BasicLayerResource)) as BasicLayerResource;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static BasicLayerResource create() => BasicLayerResource._();
BasicLayerResource createEmptyInstance() => create();
static $pb.PbList<BasicLayerResource> createRepeated() => $pb.PbList<BasicLayerResource>();
@$core.pragma('dart2js:noInline')
static BasicLayerResource getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<BasicLayerResource>(create);
static BasicLayerResource? _defaultInstance;
BasicLayerResource_Payload whichPayload() => _BasicLayerResource_PayloadByTag[$_whichOneof(0)]!;
void clearPayload() => clearField($_whichOneof(0));
@$pb.TagNumber(1)
$core.int get resType => $_getIZ(0);
@$pb.TagNumber(1)
set resType($core.int v) { $_setSignedInt32(0, v); }
@$pb.TagNumber(1)
$core.bool hasResType() => $_has(0);
@$pb.TagNumber(1)
void clearResType() => clearField(1);
@$pb.TagNumber(2)
ResImage get resImage => $_getN(1);
@$pb.TagNumber(2)
set resImage(ResImage v) { setField(2, v); }
@$pb.TagNumber(2)
$core.bool hasResImage() => $_has(1);
@$pb.TagNumber(2)
void clearResImage() => clearField(2);
@$pb.TagNumber(2)
ResImage ensureResImage() => $_ensure(1);
@$pb.TagNumber(3)
ResAnimation get resAnimation => $_getN(2);
@$pb.TagNumber(3)
set resAnimation(ResAnimation v) { setField(3, v); }
@$pb.TagNumber(3)
$core.bool hasResAnimation() => $_has(2);
@$pb.TagNumber(3)
void clearResAnimation() => clearField(3);
@$pb.TagNumber(3)
ResAnimation ensureResAnimation() => $_ensure(2);
/// /
@$pb.TagNumber(4)
ResNativeDraw get resNativeDraw => $_getN(3);
@$pb.TagNumber(4)
set resNativeDraw(ResNativeDraw v) { setField(4, v); }
@$pb.TagNumber(4)
$core.bool hasResNativeDraw() => $_has(3);
@$pb.TagNumber(4)
void clearResNativeDraw() => clearField(4);
@$pb.TagNumber(4)
ResNativeDraw ensureResNativeDraw() => $_ensure(3);
}
class GeneralConfig extends $pb.GeneratedMessage {
factory GeneralConfig({
$core.Map<$core.String, $core.String>? webCssStyle,
}) {
final $result = create();
if (webCssStyle != null) {
$result.webCssStyle.addAll(webCssStyle);
}
return $result;
}
GeneralConfig._() : super();
factory GeneralConfig.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory GeneralConfig.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GeneralConfig', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..m<$core.String, $core.String>(1, _omitFieldNames ? '' : 'webCssStyle', entryClassName: 'GeneralConfig.WebCssStyleEntry', keyFieldType: $pb.PbFieldType.OS, valueFieldType: $pb.PbFieldType.OS, packageName: const $pb.PackageName('bilibili.dagw.component.avatar.v1'))
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
GeneralConfig clone() => GeneralConfig()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
GeneralConfig copyWith(void Function(GeneralConfig) updates) => super.copyWith((message) => updates(message as GeneralConfig)) as GeneralConfig;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static GeneralConfig create() => GeneralConfig._();
GeneralConfig createEmptyInstance() => create();
static $pb.PbList<GeneralConfig> createRepeated() => $pb.PbList<GeneralConfig>();
@$core.pragma('dart2js:noInline')
static GeneralConfig getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GeneralConfig>(create);
static GeneralConfig? _defaultInstance;
@$pb.TagNumber(1)
$core.Map<$core.String, $core.String> get webCssStyle => $_getMap(0);
}
class Layer extends $pb.GeneratedMessage {
factory Layer({
$core.String? layerId,
$core.bool? visible,
$0.LayerGeneralSpec? generalSpec,
LayerConfig? layerConfig,
BasicLayerResource? resource,
}) {
final $result = create();
if (layerId != null) {
$result.layerId = layerId;
}
if (visible != null) {
$result.visible = visible;
}
if (generalSpec != null) {
$result.generalSpec = generalSpec;
}
if (layerConfig != null) {
$result.layerConfig = layerConfig;
}
if (resource != null) {
$result.resource = resource;
}
return $result;
}
Layer._() : super();
factory Layer.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory Layer.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Layer', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'layerId')
..aOB(2, _omitFieldNames ? '' : 'visible')
..aOM<$0.LayerGeneralSpec>(3, _omitFieldNames ? '' : 'generalSpec', subBuilder: $0.LayerGeneralSpec.create)
..aOM<LayerConfig>(4, _omitFieldNames ? '' : 'layerConfig', subBuilder: LayerConfig.create)
..aOM<BasicLayerResource>(5, _omitFieldNames ? '' : 'resource', subBuilder: BasicLayerResource.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
Layer clone() => Layer()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
Layer copyWith(void Function(Layer) updates) => super.copyWith((message) => updates(message as Layer)) as Layer;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static Layer create() => Layer._();
Layer createEmptyInstance() => create();
static $pb.PbList<Layer> createRepeated() => $pb.PbList<Layer>();
@$core.pragma('dart2js:noInline')
static Layer getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Layer>(create);
static Layer? _defaultInstance;
@$pb.TagNumber(1)
$core.String get layerId => $_getSZ(0);
@$pb.TagNumber(1)
set layerId($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasLayerId() => $_has(0);
@$pb.TagNumber(1)
void clearLayerId() => clearField(1);
@$pb.TagNumber(2)
$core.bool get visible => $_getBF(1);
@$pb.TagNumber(2)
set visible($core.bool v) { $_setBool(1, v); }
@$pb.TagNumber(2)
$core.bool hasVisible() => $_has(1);
@$pb.TagNumber(2)
void clearVisible() => clearField(2);
@$pb.TagNumber(3)
$0.LayerGeneralSpec get generalSpec => $_getN(2);
@$pb.TagNumber(3)
set generalSpec($0.LayerGeneralSpec v) { setField(3, v); }
@$pb.TagNumber(3)
$core.bool hasGeneralSpec() => $_has(2);
@$pb.TagNumber(3)
void clearGeneralSpec() => clearField(3);
@$pb.TagNumber(3)
$0.LayerGeneralSpec ensureGeneralSpec() => $_ensure(2);
@$pb.TagNumber(4)
LayerConfig get layerConfig => $_getN(3);
@$pb.TagNumber(4)
set layerConfig(LayerConfig v) { setField(4, v); }
@$pb.TagNumber(4)
$core.bool hasLayerConfig() => $_has(3);
@$pb.TagNumber(4)
void clearLayerConfig() => clearField(4);
@$pb.TagNumber(4)
LayerConfig ensureLayerConfig() => $_ensure(3);
@$pb.TagNumber(5)
BasicLayerResource get resource => $_getN(4);
@$pb.TagNumber(5)
set resource(BasicLayerResource v) { setField(5, v); }
@$pb.TagNumber(5)
$core.bool hasResource() => $_has(4);
@$pb.TagNumber(5)
void clearResource() => clearField(5);
@$pb.TagNumber(5)
BasicLayerResource ensureResource() => $_ensure(4);
}
class LayerConfig extends $pb.GeneratedMessage {
factory LayerConfig({
$core.Map<$core.String, LayerTagConfig>? tags,
$core.bool? isCritical,
$core.bool? allowOverPaint,
$0.MaskProperty? layerMask,
}) {
final $result = create();
if (tags != null) {
$result.tags.addAll(tags);
}
if (isCritical != null) {
$result.isCritical = isCritical;
}
if (allowOverPaint != null) {
$result.allowOverPaint = allowOverPaint;
}
if (layerMask != null) {
$result.layerMask = layerMask;
}
return $result;
}
LayerConfig._() : super();
factory LayerConfig.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory LayerConfig.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LayerConfig', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..m<$core.String, LayerTagConfig>(1, _omitFieldNames ? '' : 'tags', entryClassName: 'LayerConfig.TagsEntry', keyFieldType: $pb.PbFieldType.OS, valueFieldType: $pb.PbFieldType.OM, valueCreator: LayerTagConfig.create, valueDefaultOrMaker: LayerTagConfig.getDefault, packageName: const $pb.PackageName('bilibili.dagw.component.avatar.v1'))
..aOB(2, _omitFieldNames ? '' : 'isCritical')
..aOB(3, _omitFieldNames ? '' : 'allowOverPaint')
..aOM<$0.MaskProperty>(4, _omitFieldNames ? '' : 'layerMask', subBuilder: $0.MaskProperty.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
LayerConfig clone() => LayerConfig()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
LayerConfig copyWith(void Function(LayerConfig) updates) => super.copyWith((message) => updates(message as LayerConfig)) as LayerConfig;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static LayerConfig create() => LayerConfig._();
LayerConfig createEmptyInstance() => create();
static $pb.PbList<LayerConfig> createRepeated() => $pb.PbList<LayerConfig>();
@$core.pragma('dart2js:noInline')
static LayerConfig getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<LayerConfig>(create);
static LayerConfig? _defaultInstance;
@$pb.TagNumber(1)
$core.Map<$core.String, LayerTagConfig> get tags => $_getMap(0);
@$pb.TagNumber(2)
$core.bool get isCritical => $_getBF(1);
@$pb.TagNumber(2)
set isCritical($core.bool v) { $_setBool(1, v); }
@$pb.TagNumber(2)
$core.bool hasIsCritical() => $_has(1);
@$pb.TagNumber(2)
void clearIsCritical() => clearField(2);
@$pb.TagNumber(3)
$core.bool get allowOverPaint => $_getBF(2);
@$pb.TagNumber(3)
set allowOverPaint($core.bool v) { $_setBool(2, v); }
@$pb.TagNumber(3)
$core.bool hasAllowOverPaint() => $_has(2);
@$pb.TagNumber(3)
void clearAllowOverPaint() => clearField(3);
@$pb.TagNumber(4)
$0.MaskProperty get layerMask => $_getN(3);
@$pb.TagNumber(4)
set layerMask($0.MaskProperty v) { setField(4, v); }
@$pb.TagNumber(4)
$core.bool hasLayerMask() => $_has(3);
@$pb.TagNumber(4)
void clearLayerMask() => clearField(4);
@$pb.TagNumber(4)
$0.MaskProperty ensureLayerMask() => $_ensure(3);
}
class LayerGroup extends $pb.GeneratedMessage {
factory LayerGroup({
$core.String? groupId,
$core.Iterable<Layer>? layers,
$0.MaskProperty? groupMask,
$core.bool? isCriticalGroup,
}) {
final $result = create();
if (groupId != null) {
$result.groupId = groupId;
}
if (layers != null) {
$result.layers.addAll(layers);
}
if (groupMask != null) {
$result.groupMask = groupMask;
}
if (isCriticalGroup != null) {
$result.isCriticalGroup = isCriticalGroup;
}
return $result;
}
LayerGroup._() : super();
factory LayerGroup.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory LayerGroup.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LayerGroup', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'groupId')
..pc<Layer>(2, _omitFieldNames ? '' : 'layers', $pb.PbFieldType.PM, subBuilder: Layer.create)
..aOM<$0.MaskProperty>(3, _omitFieldNames ? '' : 'groupMask', subBuilder: $0.MaskProperty.create)
..aOB(4, _omitFieldNames ? '' : 'isCriticalGroup')
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
LayerGroup clone() => LayerGroup()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
LayerGroup copyWith(void Function(LayerGroup) updates) => super.copyWith((message) => updates(message as LayerGroup)) as LayerGroup;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static LayerGroup create() => LayerGroup._();
LayerGroup createEmptyInstance() => create();
static $pb.PbList<LayerGroup> createRepeated() => $pb.PbList<LayerGroup>();
@$core.pragma('dart2js:noInline')
static LayerGroup getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<LayerGroup>(create);
static LayerGroup? _defaultInstance;
@$pb.TagNumber(1)
$core.String get groupId => $_getSZ(0);
@$pb.TagNumber(1)
set groupId($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasGroupId() => $_has(0);
@$pb.TagNumber(1)
void clearGroupId() => clearField(1);
@$pb.TagNumber(2)
$core.List<Layer> get layers => $_getList(1);
@$pb.TagNumber(3)
$0.MaskProperty get groupMask => $_getN(2);
@$pb.TagNumber(3)
set groupMask($0.MaskProperty v) { setField(3, v); }
@$pb.TagNumber(3)
$core.bool hasGroupMask() => $_has(2);
@$pb.TagNumber(3)
void clearGroupMask() => clearField(3);
@$pb.TagNumber(3)
$0.MaskProperty ensureGroupMask() => $_ensure(2);
@$pb.TagNumber(4)
$core.bool get isCriticalGroup => $_getBF(3);
@$pb.TagNumber(4)
set isCriticalGroup($core.bool v) { $_setBool(3, v); }
@$pb.TagNumber(4)
$core.bool hasIsCriticalGroup() => $_has(3);
@$pb.TagNumber(4)
void clearIsCriticalGroup() => clearField(4);
}
enum LayerTagConfig_Config {
generalConfig,
gyroConfig,
commentDoubleClickConfig,
liveAnimeConfig,
notSet
}
class LayerTagConfig extends $pb.GeneratedMessage {
factory LayerTagConfig({
$core.int? configType,
GeneralConfig? generalConfig,
$1.GyroConfig? gyroConfig,
$1.CommentDoubleClickConfig? commentDoubleClickConfig,
$1.LiveAnimeConfig? liveAnimeConfig,
}) {
final $result = create();
if (configType != null) {
$result.configType = configType;
}
if (generalConfig != null) {
$result.generalConfig = generalConfig;
}
if (gyroConfig != null) {
$result.gyroConfig = gyroConfig;
}
if (commentDoubleClickConfig != null) {
$result.commentDoubleClickConfig = commentDoubleClickConfig;
}
if (liveAnimeConfig != null) {
$result.liveAnimeConfig = liveAnimeConfig;
}
return $result;
}
LayerTagConfig._() : super();
factory LayerTagConfig.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory LayerTagConfig.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static const $core.Map<$core.int, LayerTagConfig_Config> _LayerTagConfig_ConfigByTag = {
2 : LayerTagConfig_Config.generalConfig,
3 : LayerTagConfig_Config.gyroConfig,
4 : LayerTagConfig_Config.commentDoubleClickConfig,
5 : LayerTagConfig_Config.liveAnimeConfig,
0 : LayerTagConfig_Config.notSet
};
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LayerTagConfig', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..oo(0, [2, 3, 4, 5])
..a<$core.int>(1, _omitFieldNames ? '' : 'configType', $pb.PbFieldType.O3)
..aOM<GeneralConfig>(2, _omitFieldNames ? '' : 'generalConfig', subBuilder: GeneralConfig.create)
..aOM<$1.GyroConfig>(3, _omitFieldNames ? '' : 'gyroConfig', subBuilder: $1.GyroConfig.create)
..aOM<$1.CommentDoubleClickConfig>(4, _omitFieldNames ? '' : 'commentDoubleClickConfig', protoName: 'comment_doubleClick_config', subBuilder: $1.CommentDoubleClickConfig.create)
..aOM<$1.LiveAnimeConfig>(5, _omitFieldNames ? '' : 'liveAnimeConfig', subBuilder: $1.LiveAnimeConfig.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
LayerTagConfig clone() => LayerTagConfig()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
LayerTagConfig copyWith(void Function(LayerTagConfig) updates) => super.copyWith((message) => updates(message as LayerTagConfig)) as LayerTagConfig;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static LayerTagConfig create() => LayerTagConfig._();
LayerTagConfig createEmptyInstance() => create();
static $pb.PbList<LayerTagConfig> createRepeated() => $pb.PbList<LayerTagConfig>();
@$core.pragma('dart2js:noInline')
static LayerTagConfig getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<LayerTagConfig>(create);
static LayerTagConfig? _defaultInstance;
LayerTagConfig_Config whichConfig() => _LayerTagConfig_ConfigByTag[$_whichOneof(0)]!;
void clearConfig() => clearField($_whichOneof(0));
@$pb.TagNumber(1)
$core.int get configType => $_getIZ(0);
@$pb.TagNumber(1)
set configType($core.int v) { $_setSignedInt32(0, v); }
@$pb.TagNumber(1)
$core.bool hasConfigType() => $_has(0);
@$pb.TagNumber(1)
void clearConfigType() => clearField(1);
@$pb.TagNumber(2)
GeneralConfig get generalConfig => $_getN(1);
@$pb.TagNumber(2)
set generalConfig(GeneralConfig v) { setField(2, v); }
@$pb.TagNumber(2)
$core.bool hasGeneralConfig() => $_has(1);
@$pb.TagNumber(2)
void clearGeneralConfig() => clearField(2);
@$pb.TagNumber(2)
GeneralConfig ensureGeneralConfig() => $_ensure(1);
@$pb.TagNumber(3)
$1.GyroConfig get gyroConfig => $_getN(2);
@$pb.TagNumber(3)
set gyroConfig($1.GyroConfig v) { setField(3, v); }
@$pb.TagNumber(3)
$core.bool hasGyroConfig() => $_has(2);
@$pb.TagNumber(3)
void clearGyroConfig() => clearField(3);
@$pb.TagNumber(3)
$1.GyroConfig ensureGyroConfig() => $_ensure(2);
@$pb.TagNumber(4)
$1.CommentDoubleClickConfig get commentDoubleClickConfig => $_getN(3);
@$pb.TagNumber(4)
set commentDoubleClickConfig($1.CommentDoubleClickConfig v) { setField(4, v); }
@$pb.TagNumber(4)
$core.bool hasCommentDoubleClickConfig() => $_has(3);
@$pb.TagNumber(4)
void clearCommentDoubleClickConfig() => clearField(4);
@$pb.TagNumber(4)
$1.CommentDoubleClickConfig ensureCommentDoubleClickConfig() => $_ensure(3);
@$pb.TagNumber(5)
$1.LiveAnimeConfig get liveAnimeConfig => $_getN(4);
@$pb.TagNumber(5)
set liveAnimeConfig($1.LiveAnimeConfig v) { setField(5, v); }
@$pb.TagNumber(5)
$core.bool hasLiveAnimeConfig() => $_has(4);
@$pb.TagNumber(5)
void clearLiveAnimeConfig() => clearField(5);
@$pb.TagNumber(5)
$1.LiveAnimeConfig ensureLiveAnimeConfig() => $_ensure(4);
}
class ResAnimation extends $pb.GeneratedMessage {
factory ResAnimation({
$0.ResourceSource? webpSrc,
}) {
final $result = create();
if (webpSrc != null) {
$result.webpSrc = webpSrc;
}
return $result;
}
ResAnimation._() : super();
factory ResAnimation.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory ResAnimation.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ResAnimation', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..aOM<$0.ResourceSource>(1, _omitFieldNames ? '' : 'webpSrc', subBuilder: $0.ResourceSource.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
ResAnimation clone() => ResAnimation()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
ResAnimation copyWith(void Function(ResAnimation) updates) => super.copyWith((message) => updates(message as ResAnimation)) as ResAnimation;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static ResAnimation create() => ResAnimation._();
ResAnimation createEmptyInstance() => create();
static $pb.PbList<ResAnimation> createRepeated() => $pb.PbList<ResAnimation>();
@$core.pragma('dart2js:noInline')
static ResAnimation getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ResAnimation>(create);
static ResAnimation? _defaultInstance;
@$pb.TagNumber(1)
$0.ResourceSource get webpSrc => $_getN(0);
@$pb.TagNumber(1)
set webpSrc($0.ResourceSource v) { setField(1, v); }
@$pb.TagNumber(1)
$core.bool hasWebpSrc() => $_has(0);
@$pb.TagNumber(1)
void clearWebpSrc() => clearField(1);
@$pb.TagNumber(1)
$0.ResourceSource ensureWebpSrc() => $_ensure(0);
}
class ResImage extends $pb.GeneratedMessage {
factory ResImage({
$0.ResourceSource? imageSrc,
}) {
final $result = create();
if (imageSrc != null) {
$result.imageSrc = imageSrc;
}
return $result;
}
ResImage._() : super();
factory ResImage.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory ResImage.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ResImage', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..aOM<$0.ResourceSource>(1, _omitFieldNames ? '' : 'imageSrc', subBuilder: $0.ResourceSource.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
ResImage clone() => ResImage()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
ResImage copyWith(void Function(ResImage) updates) => super.copyWith((message) => updates(message as ResImage)) as ResImage;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static ResImage create() => ResImage._();
ResImage createEmptyInstance() => create();
static $pb.PbList<ResImage> createRepeated() => $pb.PbList<ResImage>();
@$core.pragma('dart2js:noInline')
static ResImage getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ResImage>(create);
static ResImage? _defaultInstance;
@$pb.TagNumber(1)
$0.ResourceSource get imageSrc => $_getN(0);
@$pb.TagNumber(1)
set imageSrc($0.ResourceSource v) { setField(1, v); }
@$pb.TagNumber(1)
$core.bool hasImageSrc() => $_has(0);
@$pb.TagNumber(1)
void clearImageSrc() => clearField(1);
@$pb.TagNumber(1)
$0.ResourceSource ensureImageSrc() => $_ensure(0);
}
class ResNativeDraw extends $pb.GeneratedMessage {
factory ResNativeDraw({
$0.ResourceSource? drawSrc,
}) {
final $result = create();
if (drawSrc != null) {
$result.drawSrc = drawSrc;
}
return $result;
}
ResNativeDraw._() : super();
factory ResNativeDraw.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory ResNativeDraw.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ResNativeDraw', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1'), createEmptyInstance: create)
..aOM<$0.ResourceSource>(1, _omitFieldNames ? '' : 'drawSrc', subBuilder: $0.ResourceSource.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
ResNativeDraw clone() => ResNativeDraw()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
ResNativeDraw copyWith(void Function(ResNativeDraw) updates) => super.copyWith((message) => updates(message as ResNativeDraw)) as ResNativeDraw;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static ResNativeDraw create() => ResNativeDraw._();
ResNativeDraw createEmptyInstance() => create();
static $pb.PbList<ResNativeDraw> createRepeated() => $pb.PbList<ResNativeDraw>();
@$core.pragma('dart2js:noInline')
static ResNativeDraw getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ResNativeDraw>(create);
static ResNativeDraw? _defaultInstance;
@$pb.TagNumber(1)
$0.ResourceSource get drawSrc => $_getN(0);
@$pb.TagNumber(1)
set drawSrc($0.ResourceSource v) { setField(1, v); }
@$pb.TagNumber(1)
$core.bool hasDrawSrc() => $_has(0);
@$pb.TagNumber(1)
void clearDrawSrc() => clearField(1);
@$pb.TagNumber(1)
$0.ResourceSource ensureDrawSrc() => $_ensure(0);
}
const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names');
const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names');

View File

@@ -0,0 +1,11 @@
//
// Generated code. Do not modify.
// source: bilibili/dagw/component/avatar/v1/avatar.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import

View File

@@ -0,0 +1,222 @@
//
// Generated code. Do not modify.
// source: bilibili/dagw/component/avatar/v1/avatar.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import
import 'dart:convert' as $convert;
import 'dart:core' as $core;
import 'dart:typed_data' as $typed_data;
@$core.Deprecated('Use avatarItemDescriptor instead')
const AvatarItem$json = {
'1': 'AvatarItem',
'2': [
{'1': 'container_size', '3': 1, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.SizeSpec', '10': 'containerSize'},
{'1': 'layers', '3': 2, '4': 3, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.LayerGroup', '10': 'layers'},
{'1': 'fallback_layers', '3': 3, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.LayerGroup', '10': 'fallbackLayers'},
{'1': 'mid', '3': 4, '4': 1, '5': 3, '10': 'mid'},
],
};
/// Descriptor for `AvatarItem`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List avatarItemDescriptor = $convert.base64Decode(
'CgpBdmF0YXJJdGVtElYKDmNvbnRhaW5lcl9zaXplGAEgASgLMi8uYmlsaWJpbGkuZGFndy5jb2'
'1wb25lbnQuYXZhdGFyLmNvbW1vbi5TaXplU3BlY1INY29udGFpbmVyU2l6ZRJFCgZsYXllcnMY'
'AiADKAsyLS5iaWxpYmlsaS5kYWd3LmNvbXBvbmVudC5hdmF0YXIudjEuTGF5ZXJHcm91cFIGbG'
'F5ZXJzElYKD2ZhbGxiYWNrX2xheWVycxgDIAEoCzItLmJpbGliaWxpLmRhZ3cuY29tcG9uZW50'
'LmF2YXRhci52MS5MYXllckdyb3VwUg5mYWxsYmFja0xheWVycxIQCgNtaWQYBCABKANSA21pZA'
'==');
@$core.Deprecated('Use basicLayerResourceDescriptor instead')
const BasicLayerResource$json = {
'1': 'BasicLayerResource',
'2': [
{'1': 'res_type', '3': 1, '4': 1, '5': 5, '10': 'resType'},
{'1': 'res_image', '3': 2, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.ResImage', '9': 0, '10': 'resImage'},
{'1': 'res_animation', '3': 3, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.ResAnimation', '9': 0, '10': 'resAnimation'},
{'1': 'res_native_draw', '3': 4, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.ResNativeDraw', '9': 0, '10': 'resNativeDraw'},
],
'8': [
{'1': 'payload'},
],
};
/// Descriptor for `BasicLayerResource`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List basicLayerResourceDescriptor = $convert.base64Decode(
'ChJCYXNpY0xheWVyUmVzb3VyY2USGQoIcmVzX3R5cGUYASABKAVSB3Jlc1R5cGUSSgoJcmVzX2'
'ltYWdlGAIgASgLMisuYmlsaWJpbGkuZGFndy5jb21wb25lbnQuYXZhdGFyLnYxLlJlc0ltYWdl'
'SABSCHJlc0ltYWdlElYKDXJlc19hbmltYXRpb24YAyABKAsyLy5iaWxpYmlsaS5kYWd3LmNvbX'
'BvbmVudC5hdmF0YXIudjEuUmVzQW5pbWF0aW9uSABSDHJlc0FuaW1hdGlvbhJaCg9yZXNfbmF0'
'aXZlX2RyYXcYBCABKAsyMC5iaWxpYmlsaS5kYWd3LmNvbXBvbmVudC5hdmF0YXIudjEuUmVzTm'
'F0aXZlRHJhd0gAUg1yZXNOYXRpdmVEcmF3QgkKB3BheWxvYWQ=');
@$core.Deprecated('Use generalConfigDescriptor instead')
const GeneralConfig$json = {
'1': 'GeneralConfig',
'2': [
{'1': 'web_css_style', '3': 1, '4': 3, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.GeneralConfig.WebCssStyleEntry', '10': 'webCssStyle'},
],
'3': [GeneralConfig_WebCssStyleEntry$json],
};
@$core.Deprecated('Use generalConfigDescriptor instead')
const GeneralConfig_WebCssStyleEntry$json = {
'1': 'WebCssStyleEntry',
'2': [
{'1': 'key', '3': 1, '4': 1, '5': 9, '10': 'key'},
{'1': 'value', '3': 2, '4': 1, '5': 9, '10': 'value'},
],
'7': {'7': true},
};
/// Descriptor for `GeneralConfig`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List generalConfigDescriptor = $convert.base64Decode(
'Cg1HZW5lcmFsQ29uZmlnEmUKDXdlYl9jc3Nfc3R5bGUYASADKAsyQS5iaWxpYmlsaS5kYWd3Lm'
'NvbXBvbmVudC5hdmF0YXIudjEuR2VuZXJhbENvbmZpZy5XZWJDc3NTdHlsZUVudHJ5Ugt3ZWJD'
'c3NTdHlsZRo+ChBXZWJDc3NTdHlsZUVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGA'
'IgASgJUgV2YWx1ZToCOAE=');
@$core.Deprecated('Use layerDescriptor instead')
const Layer$json = {
'1': 'Layer',
'2': [
{'1': 'layer_id', '3': 1, '4': 1, '5': 9, '10': 'layerId'},
{'1': 'visible', '3': 2, '4': 1, '5': 8, '10': 'visible'},
{'1': 'general_spec', '3': 3, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.LayerGeneralSpec', '10': 'generalSpec'},
{'1': 'layer_config', '3': 4, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.LayerConfig', '10': 'layerConfig'},
{'1': 'resource', '3': 5, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.BasicLayerResource', '10': 'resource'},
],
};
/// Descriptor for `Layer`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List layerDescriptor = $convert.base64Decode(
'CgVMYXllchIZCghsYXllcl9pZBgBIAEoCVIHbGF5ZXJJZBIYCgd2aXNpYmxlGAIgASgIUgd2aX'
'NpYmxlEloKDGdlbmVyYWxfc3BlYxgDIAEoCzI3LmJpbGliaWxpLmRhZ3cuY29tcG9uZW50LmF2'
'YXRhci5jb21tb24uTGF5ZXJHZW5lcmFsU3BlY1ILZ2VuZXJhbFNwZWMSUQoMbGF5ZXJfY29uZm'
'lnGAQgASgLMi4uYmlsaWJpbGkuZGFndy5jb21wb25lbnQuYXZhdGFyLnYxLkxheWVyQ29uZmln'
'UgtsYXllckNvbmZpZxJRCghyZXNvdXJjZRgFIAEoCzI1LmJpbGliaWxpLmRhZ3cuY29tcG9uZW'
'50LmF2YXRhci52MS5CYXNpY0xheWVyUmVzb3VyY2VSCHJlc291cmNl');
@$core.Deprecated('Use layerConfigDescriptor instead')
const LayerConfig$json = {
'1': 'LayerConfig',
'2': [
{'1': 'tags', '3': 1, '4': 3, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.LayerConfig.TagsEntry', '10': 'tags'},
{'1': 'is_critical', '3': 2, '4': 1, '5': 8, '10': 'isCritical'},
{'1': 'allow_over_paint', '3': 3, '4': 1, '5': 8, '10': 'allowOverPaint'},
{'1': 'layer_mask', '3': 4, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.MaskProperty', '10': 'layerMask'},
],
'3': [LayerConfig_TagsEntry$json],
};
@$core.Deprecated('Use layerConfigDescriptor instead')
const LayerConfig_TagsEntry$json = {
'1': 'TagsEntry',
'2': [
{'1': 'key', '3': 1, '4': 1, '5': 9, '10': 'key'},
{'1': 'value', '3': 2, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.LayerTagConfig', '10': 'value'},
],
'7': {'7': true},
};
/// Descriptor for `LayerConfig`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List layerConfigDescriptor = $convert.base64Decode(
'CgtMYXllckNvbmZpZxJMCgR0YWdzGAEgAygLMjguYmlsaWJpbGkuZGFndy5jb21wb25lbnQuYX'
'ZhdGFyLnYxLkxheWVyQ29uZmlnLlRhZ3NFbnRyeVIEdGFncxIfCgtpc19jcml0aWNhbBgCIAEo'
'CFIKaXNDcml0aWNhbBIoChBhbGxvd19vdmVyX3BhaW50GAMgASgIUg5hbGxvd092ZXJQYWludB'
'JSCgpsYXllcl9tYXNrGAQgASgLMjMuYmlsaWJpbGkuZGFndy5jb21wb25lbnQuYXZhdGFyLmNv'
'bW1vbi5NYXNrUHJvcGVydHlSCWxheWVyTWFzaxpqCglUYWdzRW50cnkSEAoDa2V5GAEgASgJUg'
'NrZXkSRwoFdmFsdWUYAiABKAsyMS5iaWxpYmlsaS5kYWd3LmNvbXBvbmVudC5hdmF0YXIudjEu'
'TGF5ZXJUYWdDb25maWdSBXZhbHVlOgI4AQ==');
@$core.Deprecated('Use layerGroupDescriptor instead')
const LayerGroup$json = {
'1': 'LayerGroup',
'2': [
{'1': 'group_id', '3': 1, '4': 1, '5': 9, '10': 'groupId'},
{'1': 'layers', '3': 2, '4': 3, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.Layer', '10': 'layers'},
{'1': 'group_mask', '3': 3, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.MaskProperty', '10': 'groupMask'},
{'1': 'is_critical_group', '3': 4, '4': 1, '5': 8, '10': 'isCriticalGroup'},
],
};
/// Descriptor for `LayerGroup`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List layerGroupDescriptor = $convert.base64Decode(
'CgpMYXllckdyb3VwEhkKCGdyb3VwX2lkGAEgASgJUgdncm91cElkEkAKBmxheWVycxgCIAMoCz'
'IoLmJpbGliaWxpLmRhZ3cuY29tcG9uZW50LmF2YXRhci52MS5MYXllclIGbGF5ZXJzElIKCmdy'
'b3VwX21hc2sYAyABKAsyMy5iaWxpYmlsaS5kYWd3LmNvbXBvbmVudC5hdmF0YXIuY29tbW9uLk'
'1hc2tQcm9wZXJ0eVIJZ3JvdXBNYXNrEioKEWlzX2NyaXRpY2FsX2dyb3VwGAQgASgIUg9pc0Ny'
'aXRpY2FsR3JvdXA=');
@$core.Deprecated('Use layerTagConfigDescriptor instead')
const LayerTagConfig$json = {
'1': 'LayerTagConfig',
'2': [
{'1': 'config_type', '3': 1, '4': 1, '5': 5, '10': 'configType'},
{'1': 'general_config', '3': 2, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.GeneralConfig', '9': 0, '10': 'generalConfig'},
{'1': 'gyro_config', '3': 3, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.plugin.GyroConfig', '9': 0, '10': 'gyroConfig'},
{'1': 'comment_doubleClick_config', '3': 4, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.plugin.CommentDoubleClickConfig', '9': 0, '10': 'commentDoubleClickConfig'},
{'1': 'live_anime_config', '3': 5, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.plugin.LiveAnimeConfig', '9': 0, '10': 'liveAnimeConfig'},
],
'8': [
{'1': 'config'},
],
};
/// Descriptor for `LayerTagConfig`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List layerTagConfigDescriptor = $convert.base64Decode(
'Cg5MYXllclRhZ0NvbmZpZxIfCgtjb25maWdfdHlwZRgBIAEoBVIKY29uZmlnVHlwZRJZCg5nZW'
'5lcmFsX2NvbmZpZxgCIAEoCzIwLmJpbGliaWxpLmRhZ3cuY29tcG9uZW50LmF2YXRhci52MS5H'
'ZW5lcmFsQ29uZmlnSABSDWdlbmVyYWxDb25maWcSVwoLZ3lyb19jb25maWcYAyABKAsyNC5iaW'
'xpYmlsaS5kYWd3LmNvbXBvbmVudC5hdmF0YXIudjEucGx1Z2luLkd5cm9Db25maWdIAFIKZ3ly'
'b0NvbmZpZxKCAQoaY29tbWVudF9kb3VibGVDbGlja19jb25maWcYBCABKAsyQi5iaWxpYmlsaS'
'5kYWd3LmNvbXBvbmVudC5hdmF0YXIudjEucGx1Z2luLkNvbW1lbnREb3VibGVDbGlja0NvbmZp'
'Z0gAUhhjb21tZW50RG91YmxlQ2xpY2tDb25maWcSZwoRbGl2ZV9hbmltZV9jb25maWcYBSABKA'
'syOS5iaWxpYmlsaS5kYWd3LmNvbXBvbmVudC5hdmF0YXIudjEucGx1Z2luLkxpdmVBbmltZUNv'
'bmZpZ0gAUg9saXZlQW5pbWVDb25maWdCCAoGY29uZmln');
@$core.Deprecated('Use resAnimationDescriptor instead')
const ResAnimation$json = {
'1': 'ResAnimation',
'2': [
{'1': 'webp_src', '3': 1, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.ResourceSource', '10': 'webpSrc'},
],
};
/// Descriptor for `ResAnimation`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List resAnimationDescriptor = $convert.base64Decode(
'CgxSZXNBbmltYXRpb24SUAoId2VicF9zcmMYASABKAsyNS5iaWxpYmlsaS5kYWd3LmNvbXBvbm'
'VudC5hdmF0YXIuY29tbW9uLlJlc291cmNlU291cmNlUgd3ZWJwU3Jj');
@$core.Deprecated('Use resImageDescriptor instead')
const ResImage$json = {
'1': 'ResImage',
'2': [
{'1': 'image_src', '3': 1, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.ResourceSource', '10': 'imageSrc'},
],
};
/// Descriptor for `ResImage`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List resImageDescriptor = $convert.base64Decode(
'CghSZXNJbWFnZRJSCglpbWFnZV9zcmMYASABKAsyNS5iaWxpYmlsaS5kYWd3LmNvbXBvbmVudC'
'5hdmF0YXIuY29tbW9uLlJlc291cmNlU291cmNlUghpbWFnZVNyYw==');
@$core.Deprecated('Use resNativeDrawDescriptor instead')
const ResNativeDraw$json = {
'1': 'ResNativeDraw',
'2': [
{'1': 'draw_src', '3': 1, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.ResourceSource', '10': 'drawSrc'},
],
};
/// Descriptor for `ResNativeDraw`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List resNativeDrawDescriptor = $convert.base64Decode(
'Cg1SZXNOYXRpdmVEcmF3ElAKCGRyYXdfc3JjGAEgASgLMjUuYmlsaWJpbGkuZGFndy5jb21wb2'
'5lbnQuYXZhdGFyLmNvbW1vbi5SZXNvdXJjZVNvdXJjZVIHZHJhd1NyYw==');

View File

@@ -0,0 +1,699 @@
//
// Generated code. Do not modify.
// source: bilibili/dagw/component/avatar/v1/plugin.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import
import 'dart:core' as $core;
import 'package:fixnum/fixnum.dart' as $fixnum;
import 'package:protobuf/protobuf.dart' as $pb;
import '../common/common.pb.dart' as $0;
class CommentDoubleClickConfig extends $pb.GeneratedMessage {
factory CommentDoubleClickConfig({
Interaction? interaction,
$core.double? animationScale,
}) {
final $result = create();
if (interaction != null) {
$result.interaction = interaction;
}
if (animationScale != null) {
$result.animationScale = animationScale;
}
return $result;
}
CommentDoubleClickConfig._() : super();
factory CommentDoubleClickConfig.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory CommentDoubleClickConfig.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'CommentDoubleClickConfig', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..aOM<Interaction>(1, _omitFieldNames ? '' : 'interaction', subBuilder: Interaction.create)
..a<$core.double>(2, _omitFieldNames ? '' : 'animationScale', $pb.PbFieldType.OD)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
CommentDoubleClickConfig clone() => CommentDoubleClickConfig()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
CommentDoubleClickConfig copyWith(void Function(CommentDoubleClickConfig) updates) => super.copyWith((message) => updates(message as CommentDoubleClickConfig)) as CommentDoubleClickConfig;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static CommentDoubleClickConfig create() => CommentDoubleClickConfig._();
CommentDoubleClickConfig createEmptyInstance() => create();
static $pb.PbList<CommentDoubleClickConfig> createRepeated() => $pb.PbList<CommentDoubleClickConfig>();
@$core.pragma('dart2js:noInline')
static CommentDoubleClickConfig getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<CommentDoubleClickConfig>(create);
static CommentDoubleClickConfig? _defaultInstance;
@$pb.TagNumber(1)
Interaction get interaction => $_getN(0);
@$pb.TagNumber(1)
set interaction(Interaction v) { setField(1, v); }
@$pb.TagNumber(1)
$core.bool hasInteraction() => $_has(0);
@$pb.TagNumber(1)
void clearInteraction() => clearField(1);
@$pb.TagNumber(1)
Interaction ensureInteraction() => $_ensure(0);
@$pb.TagNumber(2)
$core.double get animationScale => $_getN(1);
@$pb.TagNumber(2)
set animationScale($core.double v) { $_setDouble(1, v); }
@$pb.TagNumber(2)
$core.bool hasAnimationScale() => $_has(1);
@$pb.TagNumber(2)
void clearAnimationScale() => clearField(2);
}
class GyroConfig extends $pb.GeneratedMessage {
factory GyroConfig({
NFTImageV2? gyroscope,
}) {
final $result = create();
if (gyroscope != null) {
$result.gyroscope = gyroscope;
}
return $result;
}
GyroConfig._() : super();
factory GyroConfig.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory GyroConfig.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GyroConfig', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..aOM<NFTImageV2>(1, _omitFieldNames ? '' : 'gyroscope', subBuilder: NFTImageV2.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
GyroConfig clone() => GyroConfig()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
GyroConfig copyWith(void Function(GyroConfig) updates) => super.copyWith((message) => updates(message as GyroConfig)) as GyroConfig;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static GyroConfig create() => GyroConfig._();
GyroConfig createEmptyInstance() => create();
static $pb.PbList<GyroConfig> createRepeated() => $pb.PbList<GyroConfig>();
@$core.pragma('dart2js:noInline')
static GyroConfig getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GyroConfig>(create);
static GyroConfig? _defaultInstance;
@$pb.TagNumber(1)
NFTImageV2 get gyroscope => $_getN(0);
@$pb.TagNumber(1)
set gyroscope(NFTImageV2 v) { setField(1, v); }
@$pb.TagNumber(1)
$core.bool hasGyroscope() => $_has(0);
@$pb.TagNumber(1)
void clearGyroscope() => clearField(1);
@$pb.TagNumber(1)
NFTImageV2 ensureGyroscope() => $_ensure(0);
}
class GyroscopeContentV2 extends $pb.GeneratedMessage {
factory GyroscopeContentV2({
$core.String? fileUrl,
$core.double? scale,
$core.Iterable<PhysicalOrientationV2>? physicalOrientation,
}) {
final $result = create();
if (fileUrl != null) {
$result.fileUrl = fileUrl;
}
if (scale != null) {
$result.scale = scale;
}
if (physicalOrientation != null) {
$result.physicalOrientation.addAll(physicalOrientation);
}
return $result;
}
GyroscopeContentV2._() : super();
factory GyroscopeContentV2.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory GyroscopeContentV2.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GyroscopeContentV2', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'fileUrl')
..a<$core.double>(2, _omitFieldNames ? '' : 'scale', $pb.PbFieldType.OF)
..pc<PhysicalOrientationV2>(3, _omitFieldNames ? '' : 'physicalOrientation', $pb.PbFieldType.PM, subBuilder: PhysicalOrientationV2.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
GyroscopeContentV2 clone() => GyroscopeContentV2()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
GyroscopeContentV2 copyWith(void Function(GyroscopeContentV2) updates) => super.copyWith((message) => updates(message as GyroscopeContentV2)) as GyroscopeContentV2;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static GyroscopeContentV2 create() => GyroscopeContentV2._();
GyroscopeContentV2 createEmptyInstance() => create();
static $pb.PbList<GyroscopeContentV2> createRepeated() => $pb.PbList<GyroscopeContentV2>();
@$core.pragma('dart2js:noInline')
static GyroscopeContentV2 getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GyroscopeContentV2>(create);
static GyroscopeContentV2? _defaultInstance;
@$pb.TagNumber(1)
$core.String get fileUrl => $_getSZ(0);
@$pb.TagNumber(1)
set fileUrl($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasFileUrl() => $_has(0);
@$pb.TagNumber(1)
void clearFileUrl() => clearField(1);
@$pb.TagNumber(2)
$core.double get scale => $_getN(1);
@$pb.TagNumber(2)
set scale($core.double v) { $_setFloat(1, v); }
@$pb.TagNumber(2)
$core.bool hasScale() => $_has(1);
@$pb.TagNumber(2)
void clearScale() => clearField(2);
@$pb.TagNumber(3)
$core.List<PhysicalOrientationV2> get physicalOrientation => $_getList(2);
}
class GyroscopeEntityV2 extends $pb.GeneratedMessage {
factory GyroscopeEntityV2({
$core.String? displayType,
$core.Iterable<GyroscopeContentV2>? contents,
}) {
final $result = create();
if (displayType != null) {
$result.displayType = displayType;
}
if (contents != null) {
$result.contents.addAll(contents);
}
return $result;
}
GyroscopeEntityV2._() : super();
factory GyroscopeEntityV2.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory GyroscopeEntityV2.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GyroscopeEntityV2', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'displayType')
..pc<GyroscopeContentV2>(2, _omitFieldNames ? '' : 'contents', $pb.PbFieldType.PM, subBuilder: GyroscopeContentV2.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
GyroscopeEntityV2 clone() => GyroscopeEntityV2()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
GyroscopeEntityV2 copyWith(void Function(GyroscopeEntityV2) updates) => super.copyWith((message) => updates(message as GyroscopeEntityV2)) as GyroscopeEntityV2;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static GyroscopeEntityV2 create() => GyroscopeEntityV2._();
GyroscopeEntityV2 createEmptyInstance() => create();
static $pb.PbList<GyroscopeEntityV2> createRepeated() => $pb.PbList<GyroscopeEntityV2>();
@$core.pragma('dart2js:noInline')
static GyroscopeEntityV2 getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GyroscopeEntityV2>(create);
static GyroscopeEntityV2? _defaultInstance;
@$pb.TagNumber(1)
$core.String get displayType => $_getSZ(0);
@$pb.TagNumber(1)
set displayType($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasDisplayType() => $_has(0);
@$pb.TagNumber(1)
void clearDisplayType() => clearField(1);
@$pb.TagNumber(2)
$core.List<GyroscopeContentV2> get contents => $_getList(1);
}
class Interaction extends $pb.GeneratedMessage {
factory Interaction({
$core.String? nftId,
$core.bool? enabled,
$core.String? itype,
$core.String? metadataUrl,
}) {
final $result = create();
if (nftId != null) {
$result.nftId = nftId;
}
if (enabled != null) {
$result.enabled = enabled;
}
if (itype != null) {
$result.itype = itype;
}
if (metadataUrl != null) {
$result.metadataUrl = metadataUrl;
}
return $result;
}
Interaction._() : super();
factory Interaction.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory Interaction.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Interaction', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'nftId')
..aOB(2, _omitFieldNames ? '' : 'enabled')
..aOS(3, _omitFieldNames ? '' : 'itype')
..aOS(4, _omitFieldNames ? '' : 'metadataUrl')
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
Interaction clone() => Interaction()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
Interaction copyWith(void Function(Interaction) updates) => super.copyWith((message) => updates(message as Interaction)) as Interaction;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static Interaction create() => Interaction._();
Interaction createEmptyInstance() => create();
static $pb.PbList<Interaction> createRepeated() => $pb.PbList<Interaction>();
@$core.pragma('dart2js:noInline')
static Interaction getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Interaction>(create);
static Interaction? _defaultInstance;
@$pb.TagNumber(1)
$core.String get nftId => $_getSZ(0);
@$pb.TagNumber(1)
set nftId($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasNftId() => $_has(0);
@$pb.TagNumber(1)
void clearNftId() => clearField(1);
@$pb.TagNumber(2)
$core.bool get enabled => $_getBF(1);
@$pb.TagNumber(2)
set enabled($core.bool v) { $_setBool(1, v); }
@$pb.TagNumber(2)
$core.bool hasEnabled() => $_has(1);
@$pb.TagNumber(2)
void clearEnabled() => clearField(2);
@$pb.TagNumber(3)
$core.String get itype => $_getSZ(2);
@$pb.TagNumber(3)
set itype($core.String v) { $_setString(2, v); }
@$pb.TagNumber(3)
$core.bool hasItype() => $_has(2);
@$pb.TagNumber(3)
void clearItype() => clearField(3);
@$pb.TagNumber(4)
$core.String get metadataUrl => $_getSZ(3);
@$pb.TagNumber(4)
set metadataUrl($core.String v) { $_setString(3, v); }
@$pb.TagNumber(4)
$core.bool hasMetadataUrl() => $_has(3);
@$pb.TagNumber(4)
void clearMetadataUrl() => clearField(4);
}
class LiveAnimeConfig extends $pb.GeneratedMessage {
factory LiveAnimeConfig({
$core.bool? isLive,
}) {
final $result = create();
if (isLive != null) {
$result.isLive = isLive;
}
return $result;
}
LiveAnimeConfig._() : super();
factory LiveAnimeConfig.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory LiveAnimeConfig.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LiveAnimeConfig', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..aOB(1, _omitFieldNames ? '' : 'isLive')
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
LiveAnimeConfig clone() => LiveAnimeConfig()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
LiveAnimeConfig copyWith(void Function(LiveAnimeConfig) updates) => super.copyWith((message) => updates(message as LiveAnimeConfig)) as LiveAnimeConfig;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static LiveAnimeConfig create() => LiveAnimeConfig._();
LiveAnimeConfig createEmptyInstance() => create();
static $pb.PbList<LiveAnimeConfig> createRepeated() => $pb.PbList<LiveAnimeConfig>();
@$core.pragma('dart2js:noInline')
static LiveAnimeConfig getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<LiveAnimeConfig>(create);
static LiveAnimeConfig? _defaultInstance;
@$pb.TagNumber(1)
$core.bool get isLive => $_getBF(0);
@$pb.TagNumber(1)
set isLive($core.bool v) { $_setBool(0, v); }
@$pb.TagNumber(1)
$core.bool hasIsLive() => $_has(0);
@$pb.TagNumber(1)
void clearIsLive() => clearField(1);
}
class LiveAnimeItem extends $pb.GeneratedMessage {
factory LiveAnimeItem({
$0.ColorConfig? color,
$core.double? startRatio,
$core.double? endRatio,
$core.double? startStroke,
$core.double? startOpacity,
$fixnum.Int64? phase,
}) {
final $result = create();
if (color != null) {
$result.color = color;
}
if (startRatio != null) {
$result.startRatio = startRatio;
}
if (endRatio != null) {
$result.endRatio = endRatio;
}
if (startStroke != null) {
$result.startStroke = startStroke;
}
if (startOpacity != null) {
$result.startOpacity = startOpacity;
}
if (phase != null) {
$result.phase = phase;
}
return $result;
}
LiveAnimeItem._() : super();
factory LiveAnimeItem.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory LiveAnimeItem.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LiveAnimeItem', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..aOM<$0.ColorConfig>(1, _omitFieldNames ? '' : 'color', subBuilder: $0.ColorConfig.create)
..a<$core.double>(2, _omitFieldNames ? '' : 'startRatio', $pb.PbFieldType.OD)
..a<$core.double>(3, _omitFieldNames ? '' : 'endRatio', $pb.PbFieldType.OD)
..a<$core.double>(4, _omitFieldNames ? '' : 'startStroke', $pb.PbFieldType.OD)
..a<$core.double>(5, _omitFieldNames ? '' : 'startOpacity', $pb.PbFieldType.OD)
..aInt64(6, _omitFieldNames ? '' : 'phase')
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
LiveAnimeItem clone() => LiveAnimeItem()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
LiveAnimeItem copyWith(void Function(LiveAnimeItem) updates) => super.copyWith((message) => updates(message as LiveAnimeItem)) as LiveAnimeItem;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static LiveAnimeItem create() => LiveAnimeItem._();
LiveAnimeItem createEmptyInstance() => create();
static $pb.PbList<LiveAnimeItem> createRepeated() => $pb.PbList<LiveAnimeItem>();
@$core.pragma('dart2js:noInline')
static LiveAnimeItem getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<LiveAnimeItem>(create);
static LiveAnimeItem? _defaultInstance;
@$pb.TagNumber(1)
$0.ColorConfig get color => $_getN(0);
@$pb.TagNumber(1)
set color($0.ColorConfig v) { setField(1, v); }
@$pb.TagNumber(1)
$core.bool hasColor() => $_has(0);
@$pb.TagNumber(1)
void clearColor() => clearField(1);
@$pb.TagNumber(1)
$0.ColorConfig ensureColor() => $_ensure(0);
@$pb.TagNumber(2)
$core.double get startRatio => $_getN(1);
@$pb.TagNumber(2)
set startRatio($core.double v) { $_setDouble(1, v); }
@$pb.TagNumber(2)
$core.bool hasStartRatio() => $_has(1);
@$pb.TagNumber(2)
void clearStartRatio() => clearField(2);
@$pb.TagNumber(3)
$core.double get endRatio => $_getN(2);
@$pb.TagNumber(3)
set endRatio($core.double v) { $_setDouble(2, v); }
@$pb.TagNumber(3)
$core.bool hasEndRatio() => $_has(2);
@$pb.TagNumber(3)
void clearEndRatio() => clearField(3);
@$pb.TagNumber(4)
$core.double get startStroke => $_getN(3);
@$pb.TagNumber(4)
set startStroke($core.double v) { $_setDouble(3, v); }
@$pb.TagNumber(4)
$core.bool hasStartStroke() => $_has(3);
@$pb.TagNumber(4)
void clearStartStroke() => clearField(4);
@$pb.TagNumber(5)
$core.double get startOpacity => $_getN(4);
@$pb.TagNumber(5)
set startOpacity($core.double v) { $_setDouble(4, v); }
@$pb.TagNumber(5)
$core.bool hasStartOpacity() => $_has(4);
@$pb.TagNumber(5)
void clearStartOpacity() => clearField(5);
@$pb.TagNumber(6)
$fixnum.Int64 get phase => $_getI64(5);
@$pb.TagNumber(6)
set phase($fixnum.Int64 v) { $_setInt64(5, v); }
@$pb.TagNumber(6)
$core.bool hasPhase() => $_has(5);
@$pb.TagNumber(6)
void clearPhase() => clearField(6);
}
class NFTImageV2 extends $pb.GeneratedMessage {
factory NFTImageV2({
$core.Iterable<GyroscopeEntityV2>? gyroscope,
}) {
final $result = create();
if (gyroscope != null) {
$result.gyroscope.addAll(gyroscope);
}
return $result;
}
NFTImageV2._() : super();
factory NFTImageV2.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory NFTImageV2.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'NFTImageV2', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..pc<GyroscopeEntityV2>(1, _omitFieldNames ? '' : 'gyroscope', $pb.PbFieldType.PM, subBuilder: GyroscopeEntityV2.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
NFTImageV2 clone() => NFTImageV2()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
NFTImageV2 copyWith(void Function(NFTImageV2) updates) => super.copyWith((message) => updates(message as NFTImageV2)) as NFTImageV2;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static NFTImageV2 create() => NFTImageV2._();
NFTImageV2 createEmptyInstance() => create();
static $pb.PbList<NFTImageV2> createRepeated() => $pb.PbList<NFTImageV2>();
@$core.pragma('dart2js:noInline')
static NFTImageV2 getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<NFTImageV2>(create);
static NFTImageV2? _defaultInstance;
@$pb.TagNumber(1)
$core.List<GyroscopeEntityV2> get gyroscope => $_getList(0);
}
class PhysicalOrientationAnimation extends $pb.GeneratedMessage {
factory PhysicalOrientationAnimation({
$core.String? type,
$core.String? bezier,
}) {
final $result = create();
if (type != null) {
$result.type = type;
}
if (bezier != null) {
$result.bezier = bezier;
}
return $result;
}
PhysicalOrientationAnimation._() : super();
factory PhysicalOrientationAnimation.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory PhysicalOrientationAnimation.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'PhysicalOrientationAnimation', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'type')
..aOS(3, _omitFieldNames ? '' : 'bezier')
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
PhysicalOrientationAnimation clone() => PhysicalOrientationAnimation()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
PhysicalOrientationAnimation copyWith(void Function(PhysicalOrientationAnimation) updates) => super.copyWith((message) => updates(message as PhysicalOrientationAnimation)) as PhysicalOrientationAnimation;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static PhysicalOrientationAnimation create() => PhysicalOrientationAnimation._();
PhysicalOrientationAnimation createEmptyInstance() => create();
static $pb.PbList<PhysicalOrientationAnimation> createRepeated() => $pb.PbList<PhysicalOrientationAnimation>();
@$core.pragma('dart2js:noInline')
static PhysicalOrientationAnimation getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<PhysicalOrientationAnimation>(create);
static PhysicalOrientationAnimation? _defaultInstance;
@$pb.TagNumber(1)
$core.String get type => $_getSZ(0);
@$pb.TagNumber(1)
set type($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasType() => $_has(0);
@$pb.TagNumber(1)
void clearType() => clearField(1);
@$pb.TagNumber(3)
$core.String get bezier => $_getSZ(1);
@$pb.TagNumber(3)
set bezier($core.String v) { $_setString(1, v); }
@$pb.TagNumber(3)
$core.bool hasBezier() => $_has(1);
@$pb.TagNumber(3)
void clearBezier() => clearField(3);
}
class PhysicalOrientationV2 extends $pb.GeneratedMessage {
factory PhysicalOrientationV2({
$core.String? type,
$core.Iterable<PhysicalOrientationAnimation>? animations,
}) {
final $result = create();
if (type != null) {
$result.type = type;
}
if (animations != null) {
$result.animations.addAll(animations);
}
return $result;
}
PhysicalOrientationV2._() : super();
factory PhysicalOrientationV2.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
factory PhysicalOrientationV2.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'PhysicalOrientationV2', package: const $pb.PackageName(_omitMessageNames ? '' : 'bilibili.dagw.component.avatar.v1.plugin'), createEmptyInstance: create)
..aOS(1, _omitFieldNames ? '' : 'type')
..pc<PhysicalOrientationAnimation>(3, _omitFieldNames ? '' : 'animations', $pb.PbFieldType.PM, subBuilder: PhysicalOrientationAnimation.create)
..hasRequiredFields = false
;
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
PhysicalOrientationV2 clone() => PhysicalOrientationV2()..mergeFromMessage(this);
@$core.Deprecated(
'Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
PhysicalOrientationV2 copyWith(void Function(PhysicalOrientationV2) updates) => super.copyWith((message) => updates(message as PhysicalOrientationV2)) as PhysicalOrientationV2;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static PhysicalOrientationV2 create() => PhysicalOrientationV2._();
PhysicalOrientationV2 createEmptyInstance() => create();
static $pb.PbList<PhysicalOrientationV2> createRepeated() => $pb.PbList<PhysicalOrientationV2>();
@$core.pragma('dart2js:noInline')
static PhysicalOrientationV2 getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<PhysicalOrientationV2>(create);
static PhysicalOrientationV2? _defaultInstance;
@$pb.TagNumber(1)
$core.String get type => $_getSZ(0);
@$pb.TagNumber(1)
set type($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasType() => $_has(0);
@$pb.TagNumber(1)
void clearType() => clearField(1);
@$pb.TagNumber(3)
$core.List<PhysicalOrientationAnimation> get animations => $_getList(1);
}
const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names');
const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names');

View File

@@ -0,0 +1,11 @@
//
// Generated code. Do not modify.
// source: bilibili/dagw/component/avatar/v1/plugin.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import

View File

@@ -0,0 +1,167 @@
//
// Generated code. Do not modify.
// source: bilibili/dagw/component/avatar/v1/plugin.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import
import 'dart:convert' as $convert;
import 'dart:core' as $core;
import 'dart:typed_data' as $typed_data;
@$core.Deprecated('Use commentDoubleClickConfigDescriptor instead')
const CommentDoubleClickConfig$json = {
'1': 'CommentDoubleClickConfig',
'2': [
{'1': 'interaction', '3': 1, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.plugin.Interaction', '10': 'interaction'},
{'1': 'animation_scale', '3': 2, '4': 1, '5': 1, '10': 'animationScale'},
],
};
/// Descriptor for `CommentDoubleClickConfig`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List commentDoubleClickConfigDescriptor = $convert.base64Decode(
'ChhDb21tZW50RG91YmxlQ2xpY2tDb25maWcSVwoLaW50ZXJhY3Rpb24YASABKAsyNS5iaWxpYm'
'lsaS5kYWd3LmNvbXBvbmVudC5hdmF0YXIudjEucGx1Z2luLkludGVyYWN0aW9uUgtpbnRlcmFj'
'dGlvbhInCg9hbmltYXRpb25fc2NhbGUYAiABKAFSDmFuaW1hdGlvblNjYWxl');
@$core.Deprecated('Use gyroConfigDescriptor instead')
const GyroConfig$json = {
'1': 'GyroConfig',
'2': [
{'1': 'gyroscope', '3': 1, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.plugin.NFTImageV2', '10': 'gyroscope'},
],
};
/// Descriptor for `GyroConfig`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List gyroConfigDescriptor = $convert.base64Decode(
'CgpHeXJvQ29uZmlnElIKCWd5cm9zY29wZRgBIAEoCzI0LmJpbGliaWxpLmRhZ3cuY29tcG9uZW'
'50LmF2YXRhci52MS5wbHVnaW4uTkZUSW1hZ2VWMlIJZ3lyb3Njb3Bl');
@$core.Deprecated('Use gyroscopeContentV2Descriptor instead')
const GyroscopeContentV2$json = {
'1': 'GyroscopeContentV2',
'2': [
{'1': 'file_url', '3': 1, '4': 1, '5': 9, '10': 'fileUrl'},
{'1': 'scale', '3': 2, '4': 1, '5': 2, '10': 'scale'},
{'1': 'physical_orientation', '3': 3, '4': 3, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.plugin.PhysicalOrientationV2', '10': 'physicalOrientation'},
],
};
/// Descriptor for `GyroscopeContentV2`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List gyroscopeContentV2Descriptor = $convert.base64Decode(
'ChJHeXJvc2NvcGVDb250ZW50VjISGQoIZmlsZV91cmwYASABKAlSB2ZpbGVVcmwSFAoFc2NhbG'
'UYAiABKAJSBXNjYWxlEnIKFHBoeXNpY2FsX29yaWVudGF0aW9uGAMgAygLMj8uYmlsaWJpbGku'
'ZGFndy5jb21wb25lbnQuYXZhdGFyLnYxLnBsdWdpbi5QaHlzaWNhbE9yaWVudGF0aW9uVjJSE3'
'BoeXNpY2FsT3JpZW50YXRpb24=');
@$core.Deprecated('Use gyroscopeEntityV2Descriptor instead')
const GyroscopeEntityV2$json = {
'1': 'GyroscopeEntityV2',
'2': [
{'1': 'display_type', '3': 1, '4': 1, '5': 9, '10': 'displayType'},
{'1': 'contents', '3': 2, '4': 3, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.plugin.GyroscopeContentV2', '10': 'contents'},
],
};
/// Descriptor for `GyroscopeEntityV2`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List gyroscopeEntityV2Descriptor = $convert.base64Decode(
'ChFHeXJvc2NvcGVFbnRpdHlWMhIhCgxkaXNwbGF5X3R5cGUYASABKAlSC2Rpc3BsYXlUeXBlEl'
'gKCGNvbnRlbnRzGAIgAygLMjwuYmlsaWJpbGkuZGFndy5jb21wb25lbnQuYXZhdGFyLnYxLnBs'
'dWdpbi5HeXJvc2NvcGVDb250ZW50VjJSCGNvbnRlbnRz');
@$core.Deprecated('Use interactionDescriptor instead')
const Interaction$json = {
'1': 'Interaction',
'2': [
{'1': 'nft_id', '3': 1, '4': 1, '5': 9, '10': 'nftId'},
{'1': 'enabled', '3': 2, '4': 1, '5': 8, '10': 'enabled'},
{'1': 'itype', '3': 3, '4': 1, '5': 9, '10': 'itype'},
{'1': 'metadata_url', '3': 4, '4': 1, '5': 9, '10': 'metadataUrl'},
],
};
/// Descriptor for `Interaction`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List interactionDescriptor = $convert.base64Decode(
'CgtJbnRlcmFjdGlvbhIVCgZuZnRfaWQYASABKAlSBW5mdElkEhgKB2VuYWJsZWQYAiABKAhSB2'
'VuYWJsZWQSFAoFaXR5cGUYAyABKAlSBWl0eXBlEiEKDG1ldGFkYXRhX3VybBgEIAEoCVILbWV0'
'YWRhdGFVcmw=');
@$core.Deprecated('Use liveAnimeConfigDescriptor instead')
const LiveAnimeConfig$json = {
'1': 'LiveAnimeConfig',
'2': [
{'1': 'is_live', '3': 1, '4': 1, '5': 8, '10': 'isLive'},
],
};
/// Descriptor for `LiveAnimeConfig`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List liveAnimeConfigDescriptor = $convert.base64Decode(
'Cg9MaXZlQW5pbWVDb25maWcSFwoHaXNfbGl2ZRgBIAEoCFIGaXNMaXZl');
@$core.Deprecated('Use liveAnimeItemDescriptor instead')
const LiveAnimeItem$json = {
'1': 'LiveAnimeItem',
'2': [
{'1': 'color', '3': 1, '4': 1, '5': 11, '6': '.bilibili.dagw.component.avatar.common.ColorConfig', '10': 'color'},
{'1': 'start_ratio', '3': 2, '4': 1, '5': 1, '10': 'startRatio'},
{'1': 'end_ratio', '3': 3, '4': 1, '5': 1, '10': 'endRatio'},
{'1': 'start_stroke', '3': 4, '4': 1, '5': 1, '10': 'startStroke'},
{'1': 'start_opacity', '3': 5, '4': 1, '5': 1, '10': 'startOpacity'},
{'1': 'phase', '3': 6, '4': 1, '5': 3, '10': 'phase'},
],
};
/// Descriptor for `LiveAnimeItem`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List liveAnimeItemDescriptor = $convert.base64Decode(
'Cg1MaXZlQW5pbWVJdGVtEkgKBWNvbG9yGAEgASgLMjIuYmlsaWJpbGkuZGFndy5jb21wb25lbn'
'QuYXZhdGFyLmNvbW1vbi5Db2xvckNvbmZpZ1IFY29sb3ISHwoLc3RhcnRfcmF0aW8YAiABKAFS'
'CnN0YXJ0UmF0aW8SGwoJZW5kX3JhdGlvGAMgASgBUghlbmRSYXRpbxIhCgxzdGFydF9zdHJva2'
'UYBCABKAFSC3N0YXJ0U3Ryb2tlEiMKDXN0YXJ0X29wYWNpdHkYBSABKAFSDHN0YXJ0T3BhY2l0'
'eRIUCgVwaGFzZRgGIAEoA1IFcGhhc2U=');
@$core.Deprecated('Use nFTImageV2Descriptor instead')
const NFTImageV2$json = {
'1': 'NFTImageV2',
'2': [
{'1': 'gyroscope', '3': 1, '4': 3, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.plugin.GyroscopeEntityV2', '10': 'gyroscope'},
],
};
/// Descriptor for `NFTImageV2`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List nFTImageV2Descriptor = $convert.base64Decode(
'CgpORlRJbWFnZVYyElkKCWd5cm9zY29wZRgBIAMoCzI7LmJpbGliaWxpLmRhZ3cuY29tcG9uZW'
'50LmF2YXRhci52MS5wbHVnaW4uR3lyb3Njb3BlRW50aXR5VjJSCWd5cm9zY29wZQ==');
@$core.Deprecated('Use physicalOrientationAnimationDescriptor instead')
const PhysicalOrientationAnimation$json = {
'1': 'PhysicalOrientationAnimation',
'2': [
{'1': 'type', '3': 1, '4': 1, '5': 9, '10': 'type'},
{'1': 'bezier', '3': 3, '4': 1, '5': 9, '10': 'bezier'},
],
};
/// Descriptor for `PhysicalOrientationAnimation`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List physicalOrientationAnimationDescriptor = $convert.base64Decode(
'ChxQaHlzaWNhbE9yaWVudGF0aW9uQW5pbWF0aW9uEhIKBHR5cGUYASABKAlSBHR5cGUSFgoGYm'
'V6aWVyGAMgASgJUgZiZXppZXI=');
@$core.Deprecated('Use physicalOrientationV2Descriptor instead')
const PhysicalOrientationV2$json = {
'1': 'PhysicalOrientationV2',
'2': [
{'1': 'type', '3': 1, '4': 1, '5': 9, '10': 'type'},
{'1': 'animations', '3': 3, '4': 3, '5': 11, '6': '.bilibili.dagw.component.avatar.v1.plugin.PhysicalOrientationAnimation', '10': 'animations'},
],
};
/// Descriptor for `PhysicalOrientationV2`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List physicalOrientationV2Descriptor = $convert.base64Decode(
'ChVQaHlzaWNhbE9yaWVudGF0aW9uVjISEgoEdHlwZRgBIAEoCVIEdHlwZRJmCgphbmltYXRpb2'
'5zGAMgAygLMkYuYmlsaWJpbGkuZGFndy5jb21wb25lbnQuYXZhdGFyLnYxLnBsdWdpbi5QaHlz'
'aWNhbE9yaWVudGF0aW9uQW5pbWF0aW9uUgphbmltYXRpb25z');

View File

@@ -0,0 +1,224 @@
//
// Generated code. Do not modify.
// source: google/protobuf/any.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import
import 'dart:core' as $core;
import 'package:protobuf/protobuf.dart' as $pb;
import 'package:protobuf/src/protobuf/mixins/well_known.dart' as $mixin;
/// `Any` contains an arbitrary serialized protocol buffer message along with a
/// URL that describes the type of the serialized message.
///
/// Protobuf library provides support to pack/unpack Any values in the form
/// of utility functions or additional generated methods of the Any type.
///
/// Example 1: Pack and unpack a message in C++.
///
/// Foo foo = ...;
/// Any any;
/// any.PackFrom(foo);
/// ...
/// if (any.UnpackTo(&foo)) {
/// ...
/// }
///
/// Example 2: Pack and unpack a message in Java.
///
/// Foo foo = ...;
/// Any any = Any.pack(foo);
/// ...
/// if (any.is(Foo.class)) {
/// foo = any.unpack(Foo.class);
/// }
/// // or ...
/// if (any.isSameTypeAs(Foo.getDefaultInstance())) {
/// foo = any.unpack(Foo.getDefaultInstance());
/// }
///
/// Example 3: Pack and unpack a message in Python.
///
/// foo = Foo(...)
/// any = Any()
/// any.Pack(foo)
/// ...
/// if any.Is(Foo.DESCRIPTOR):
/// any.Unpack(foo)
/// ...
///
/// Example 4: Pack and unpack a message in Go
///
/// foo := &pb.Foo{...}
/// any, err := anypb.New(foo)
/// if err != nil {
/// ...
/// }
/// ...
/// foo := &pb.Foo{}
/// if err := any.UnmarshalTo(foo); err != nil {
/// ...
/// }
///
/// The pack methods provided by protobuf library will by default use
/// 'type.googleapis.com/full.type.name' as the type URL and the unpack
/// methods only use the fully qualified type name after the last '/'
/// in the type URL, for example "foo.bar.com/x/y.z" will yield type
/// name "y.z".
///
/// JSON
/// ====
/// The JSON representation of an `Any` value uses the regular
/// representation of the deserialized, embedded message, with an
/// additional field `@type` which contains the type URL. Example:
///
/// package google.profile;
/// message Person {
/// string first_name = 1;
/// string last_name = 2;
/// }
///
/// {
/// "@type": "type.googleapis.com/google.profile.Person",
/// "firstName": <string>,
/// "lastName": <string>
/// }
///
/// If the embedded message type is well-known and has a custom JSON
/// representation, that representation will be embedded adding a field
/// `value` which holds the custom JSON in addition to the `@type`
/// field. Example (for message [google.protobuf.Duration][]):
///
/// {
/// "@type": "type.googleapis.com/google.protobuf.Duration",
/// "value": "1.212s"
/// }
class Any extends $pb.GeneratedMessage with $mixin.AnyMixin {
factory Any({
$core.String? typeUrl,
$core.List<$core.int>? value,
}) {
final result = create();
if (typeUrl != null) {
result.typeUrl = typeUrl;
}
if (value != null) {
result.value = value;
}
return result;
}
Any._() : super();
factory Any.fromBuffer($core.List<$core.int> i,
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(i, r);
factory Any.fromJson($core.String i,
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(i, r);
static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'Any',
package:
const $pb.PackageName(_omitMessageNames ? '' : 'google.protobuf'),
createEmptyInstance: create,
toProto3Json: $mixin.AnyMixin.toProto3JsonHelper,
fromProto3Json: $mixin.AnyMixin.fromProto3JsonHelper)
..aOS(1, _omitFieldNames ? '' : 'typeUrl')
..a<$core.List<$core.int>>(
2, _omitFieldNames ? '' : 'value', $pb.PbFieldType.OY)
..hasRequiredFields = false;
@$core.Deprecated('Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
'Will be removed in next major version')
Any clone() => Any()..mergeFromMessage(this);
@$core.Deprecated('Using this can add significant overhead to your binary. '
'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
'Will be removed in next major version')
Any copyWith(void Function(Any) updates) =>
super.copyWith((message) => updates(message as Any)) as Any;
$pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline')
static Any create() => Any._();
Any createEmptyInstance() => create();
static $pb.PbList<Any> createRepeated() => $pb.PbList<Any>();
@$core.pragma('dart2js:noInline')
static Any getDefault() =>
_defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Any>(create);
static Any? _defaultInstance;
/// A URL/resource name that uniquely identifies the type of the serialized
/// protocol buffer message. This string must contain at least
/// one "/" character. The last segment of the URL's path must represent
/// the fully qualified name of the type (as in
/// `path/google.protobuf.Duration`). The name should be in a canonical form
/// (e.g., leading "." is not accepted).
///
/// In practice, teams usually precompile into the binary all types that they
/// expect it to use in the context of Any. However, for URLs which use the
/// scheme `http`, `https`, or no scheme, one can optionally set up a type
/// server that maps type URLs to message definitions as follows:
///
/// * If no scheme is provided, `https` is assumed.
/// * An HTTP GET on the URL must yield a [google.protobuf.Type][]
/// value in binary format, or produce an error.
/// * Applications are allowed to cache lookup results based on the
/// URL, or have them precompiled into a binary to avoid any
/// lookup. Therefore, binary compatibility needs to be preserved
/// on changes to types. (Use versioned type names to manage
/// breaking changes.)
///
/// Note: this functionality is not currently available in the official
/// protobuf release, and it is not used for type URLs beginning with
/// type.googleapis.com. As of May 2023, there are no widely used type server
/// implementations and no plans to implement one.
///
/// Schemes other than `http`, `https` (or the empty scheme) might be
/// used with implementation specific semantics.
@$pb.TagNumber(1)
$core.String get typeUrl => $_getSZ(0);
@$pb.TagNumber(1)
set typeUrl($core.String v) {
$_setString(0, v);
}
@$pb.TagNumber(1)
$core.bool hasTypeUrl() => $_has(0);
@$pb.TagNumber(1)
void clearTypeUrl() => clearField(1);
/// Must be a valid serialized protocol buffer of the above specified type.
@$pb.TagNumber(2)
$core.List<$core.int> get value => $_getN(1);
@$pb.TagNumber(2)
set value($core.List<$core.int> v) {
$_setBytes(1, v);
}
@$pb.TagNumber(2)
$core.bool hasValue() => $_has(1);
@$pb.TagNumber(2)
void clearValue() => clearField(2);
/// Creates a new [Any] encoding [message].
///
/// The [typeUrl] will be [typeUrlPrefix]/`fullName` where `fullName` is
/// the fully qualified name of the type of [message].
static Any pack($pb.GeneratedMessage message,
{$core.String typeUrlPrefix = 'type.googleapis.com'}) {
final result = create();
$mixin.AnyMixin.packIntoAny(result, message, typeUrlPrefix: typeUrlPrefix);
return result;
}
}
const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names');
const _omitMessageNames =
$core.bool.fromEnvironment('protobuf.omit_message_names');

View File

@@ -0,0 +1,10 @@
//
// Generated code. Do not modify.
// source: google/protobuf/any.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import

View File

@@ -0,0 +1,27 @@
//
// Generated code. Do not modify.
// source: google/protobuf/any.proto
//
// @dart = 2.12
// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import
import 'dart:convert' as $convert;
import 'dart:core' as $core;
import 'dart:typed_data' as $typed_data;
@$core.Deprecated('Use anyDescriptor instead')
const Any$json = {
'1': 'Any',
'2': [
{'1': 'type_url', '3': 1, '4': 1, '5': 9, '10': 'typeUrl'},
{'1': 'value', '3': 2, '4': 1, '5': 12, '10': 'value'},
],
};
/// Descriptor for `Any`. Decode as a `google.protobuf.DescriptorProto`.
final $typed_data.Uint8List anyDescriptor = $convert.base64Decode(
'CgNBbnkSGQoIdHlwZV91cmwYASABKAlSB3R5cGVVcmwSFAoFdmFsdWUYAiABKAxSBXZhbHVl');

View File

@@ -1,3 +1,4 @@
import 'package:PiliPalaX/grpc/app/dynamic/v2/dynamic.pbgrpc.dart';
import 'package:PiliPalaX/grpc/app/main/community/reply/v1/reply.pbgrpc.dart';
import 'package:PiliPalaX/grpc/app/playeronline/v1/playeronline.pbgrpc.dart';
import 'package:PiliPalaX/grpc/app/show/popular/v1/popular.pbgrpc.dart';
@@ -8,6 +9,7 @@ class GrpcClient {
PlayerOnlineClient? _playerOnlineClient;
PopularClient? _popularClient;
ReplyClient? _replyClient;
DynamicClient? _dynamicClient;
GrpcClient._internal() {
_channel = ClientChannel(
@@ -37,6 +39,11 @@ class GrpcClient {
return _replyClient!;
}
DynamicClient get dynamicClient {
_dynamicClient ??= DynamicClient(_channel!);
return _dynamicClient!;
}
Future<void> shutdown() async {
await _channel?.shutdown();
}

View File

@@ -1,6 +1,7 @@
import 'dart:convert';
import 'package:PiliPalaX/common/constants.dart';
import 'package:PiliPalaX/grpc/app/dynamic/v2/dynamic.pb.dart';
import 'package:PiliPalaX/grpc/app/main/community/reply/v1/reply.pb.dart';
import 'package:PiliPalaX/grpc/app/playeronline/v1/playeronline.pbgrpc.dart';
import 'package:PiliPalaX/grpc/app/show/popular/v1/popular.pb.dart';
@@ -9,7 +10,7 @@ import 'package:PiliPalaX/grpc/fawkes/fawkes.pb.dart';
import 'package:PiliPalaX/grpc/grpc_client.dart';
import 'package:PiliPalaX/grpc/locale/locale.pb.dart';
import 'package:PiliPalaX/grpc/metadata/metadata.pb.dart';
import 'package:PiliPalaX/grpc/network/network.pb.dart';
import 'package:PiliPalaX/grpc/network/network.pb.dart' as network;
import 'package:PiliPalaX/grpc/restriction/restriction.pb.dart';
import 'package:PiliPalaX/utils/login.dart';
import 'package:PiliPalaX/utils/storage.dart';
@@ -74,9 +75,9 @@ class GrpcRepo {
..fp = ''
..fts = Int64())
.writeToBuffer()),
'x-bili-network-bin': base64Encode((Network()
..type = NetworkType.WIFI
..tf = TFType.TF_UNKNOWN
'x-bili-network-bin': base64Encode((network.Network()
..type = network.NetworkType.WIFI
..tf = network.TFType.TF_UNKNOWN
..oid = '')
.writeToBuffer()),
'x-bili-restriction-bin': base64Encode((Restriction()
@@ -174,4 +175,20 @@ class GrpcRepo {
return {'status': true, 'data': response};
});
}
static Future dynSpace({
required int uid,
required int page,
}) async {
return await _request(() async {
final request = DynSpaceReq()
..hostUid = Int64(uid)
..localTime = 8
..page = Int64(page)
..from = 'space';
final response = await GrpcClient.instance.dynamicClient
.dynSpace(request, options: options);
return {'status': true, 'data': response};
});
}
}

View File

@@ -283,6 +283,8 @@ class Api {
// https://api.bilibili.com/x/space/wbi/acc/info?mid=503427686&token=&platform=web&web_location=1550101&w_rid=d709892496ce93e3d94d6d37c95bde91&wts=1689301482
static const String memberInfo = '/x/space/wbi/acc/info';
static const String space = '${HttpString.appBaseUrl}/x/v2/space';
// 用户名片信息
static const String memberCardInfo = '/x/web-interface/card';

View File

@@ -211,7 +211,7 @@ class LoginHttp {
String passwordEncrypted =
Encrypter(RSA(publicKey: publicKey)).encrypt(salt + password).base64;
Map<String, dynamic> data = {
Map<String, String> data = {
'appkey': Constants.appKey,
'bili_local_id': deviceId,
'build': '1462100',
@@ -288,7 +288,7 @@ class LoginHttp {
required String key,
}) async {
dynamic publicKey = RSAKeyParser().parse(key);
Map<String, dynamic> data = {
Map<String, String> data = {
'appkey': Constants.appKey,
'bili_local_id': deviceId,
'build': '1462100',

View File

@@ -1,5 +1,13 @@
import 'dart:convert';
import 'dart:io';
import 'package:PiliPalaX/common/constants.dart';
import 'package:PiliPalaX/http/constants.dart';
import 'package:PiliPalaX/http/loading_state.dart';
import 'package:PiliPalaX/models/space/data.dart';
import 'package:PiliPalaX/models/space/space.dart';
import 'package:PiliPalaX/utils/login.dart';
import 'package:PiliPalaX/utils/storage.dart';
import 'package:dio/dio.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart' hide FormData;
@@ -39,11 +47,57 @@ class MemberHttp {
};
}
static Future<LoadingState> space({
int? mid,
}) async {
Map<String, String> data = {
'access_key': GStorage.localCache
.get(LocalCacheKey.accessKey, defaultValue: {})['value'] ??
'',
'appkey': Constants.appKey,
'build': '1462100',
'c_locale': 'zh_CN',
'channel': 'yingyongbao',
'mobi_app': 'android_hd',
'platform': 'android',
's_locale': 'zh_CN',
'statistics': Constants.statistics,
'ts': (DateTime.now().millisecondsSinceEpoch ~/ 1000).toString(),
'vmid': mid.toString(),
};
String sign = Utils.appSign(
data,
Constants.appKey,
Constants.appSec,
);
data['sign'] = sign;
int? _mid = GStorage.userInfo.get('userInfoCache')?.mid;
dynamic res = await Request().get(
Api.space,
data: data,
options: Options(
headers: {
'env': 'prod',
'app-key': 'android_hd',
'x-bili-mid': _mid,
'bili-http-engine': 'cronet',
'user-agent': Constants.userAgent,
},
),
);
if (res.data['code'] == 0) {
return LoadingState.success(Data.fromJson(res.data['data']));
} else {
return LoadingState.error(res.data['message']);
}
}
static Future memberInfo({
int? mid,
String token = '',
dynamic wwebid,
}) async {
space(mid: mid);
Map params = await WbiSign().makSign({
'mid': mid,
'token': token,

View File

@@ -79,7 +79,7 @@ class VideoHttp {
// 添加额外的loginState变量模拟未登录状态
static Future<LoadingState> rcmdVideoListApp(
{bool loginStatus = true, required int freshIdx}) async {
var data = {
Map<String, String> data = {
'access_key': loginStatus
? (localCache
.get(LocalCacheKey.accessKey, defaultValue: {})['value'] ??

View File

@@ -0,0 +1,20 @@
import 'package:json_annotation/json_annotation.dart';
part 'achieve.g.dart';
@JsonSerializable()
class Achieve {
@JsonKey(name: 'is_default')
bool? isDefault;
String? image;
@JsonKey(name: 'achieve_url')
String? achieveUrl;
Achieve({this.isDefault, this.image, this.achieveUrl});
factory Achieve.fromJson(Map<String, dynamic> json) {
return _$AchieveFromJson(json);
}
Map<String, dynamic> toJson() => _$AchieveToJson(this);
}

View File

@@ -0,0 +1,19 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'achieve.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Achieve _$AchieveFromJson(Map<String, dynamic> json) => Achieve(
isDefault: json['is_default'] as bool?,
image: json['image'] as String?,
achieveUrl: json['achieve_url'] as String?,
);
Map<String, dynamic> _$AchieveToJson(Achieve instance) => <String, dynamic>{
'is_default': instance.isDefault,
'image': instance.image,
'achieve_url': instance.achieveUrl,
};

View File

@@ -0,0 +1,24 @@
import 'package:json_annotation/json_annotation.dart';
import 'episodic_button.dart';
import 'item.dart';
import 'order.dart';
part 'archive.g.dart';
@JsonSerializable()
class Archive {
@JsonKey(name: 'episodic_button')
EpisodicButton? episodicButton;
List<Order>? order;
int? count;
List<Item>? item;
Archive({this.episodicButton, this.order, this.count, this.item});
factory Archive.fromJson(Map<String, dynamic> json) {
return _$ArchiveFromJson(json);
}
Map<String, dynamic> toJson() => _$ArchiveToJson(this);
}

View File

@@ -0,0 +1,28 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'archive.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Archive _$ArchiveFromJson(Map<String, dynamic> json) => Archive(
episodicButton: json['episodic_button'] == null
? null
: EpisodicButton.fromJson(
json['episodic_button'] as Map<String, dynamic>),
order: (json['order'] as List<dynamic>?)
?.map((e) => Order.fromJson(e as Map<String, dynamic>))
.toList(),
count: (json['count'] as num?)?.toInt(),
item: (json['item'] as List<dynamic>?)
?.map((e) => Item.fromJson(e as Map<String, dynamic>))
.toList(),
);
Map<String, dynamic> _$ArchiveToJson(Archive instance) => <String, dynamic>{
'episodic_button': instance.episodicButton,
'order': instance.order,
'count': instance.count,
'item': instance.item,
};

View File

@@ -0,0 +1,20 @@
import 'package:json_annotation/json_annotation.dart';
part 'article.g.dart';
@JsonSerializable()
class Article {
int? count;
List<dynamic>? item;
@JsonKey(name: 'lists_count')
int? listsCount;
List<dynamic>? lists;
Article({this.count, this.item, this.listsCount, this.lists});
factory Article.fromJson(Map<String, dynamic> json) {
return _$ArticleFromJson(json);
}
Map<String, dynamic> toJson() => _$ArticleToJson(this);
}

View File

@@ -0,0 +1,21 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'article.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Article _$ArticleFromJson(Map<String, dynamic> json) => Article(
count: (json['count'] as num?)?.toInt(),
item: json['item'] as List<dynamic>?,
listsCount: (json['lists_count'] as num?)?.toInt(),
lists: json['lists'] as List<dynamic>?,
);
Map<String, dynamic> _$ArticleToJson(Article instance) => <String, dynamic>{
'count': instance.count,
'item': instance.item,
'lists_count': instance.listsCount,
'lists': instance.lists,
};

View File

@@ -0,0 +1,18 @@
import 'package:json_annotation/json_annotation.dart';
part 'attention_tip.g.dart';
@JsonSerializable()
class AttentionTip {
@JsonKey(name: 'card_num')
int? cardNum;
String? tip;
AttentionTip({this.cardNum, this.tip});
factory AttentionTip.fromJson(Map<String, dynamic> json) {
return _$AttentionTipFromJson(json);
}
Map<String, dynamic> toJson() => _$AttentionTipToJson(this);
}

View File

@@ -0,0 +1,18 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'attention_tip.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
AttentionTip _$AttentionTipFromJson(Map<String, dynamic> json) => AttentionTip(
cardNum: (json['card_num'] as num?)?.toInt(),
tip: json['tip'] as String?,
);
Map<String, dynamic> _$AttentionTipToJson(AttentionTip instance) =>
<String, dynamic>{
'card_num': instance.cardNum,
'tip': instance.tip,
};

View File

@@ -0,0 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
part 'audios.g.dart';
@JsonSerializable()
class Audios {
int? count;
List<dynamic>? item;
Audios({this.count, this.item});
factory Audios.fromJson(Map<String, dynamic> json) {
return _$AudiosFromJson(json);
}
Map<String, dynamic> toJson() => _$AudiosToJson(this);
}

View File

@@ -0,0 +1,17 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'audios.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Audios _$AudiosFromJson(Map<String, dynamic> json) => Audios(
count: (json['count'] as num?)?.toInt(),
item: json['item'] as List<dynamic>?,
);
Map<String, dynamic> _$AudiosToJson(Audios instance) => <String, dynamic>{
'count': instance.count,
'item': instance.item,
};

View File

@@ -0,0 +1,23 @@
import 'package:json_annotation/json_annotation.dart';
import 'container_size.dart';
import 'fallback_layers.dart';
part 'avatar.g.dart';
@JsonSerializable()
class Avatar {
@JsonKey(name: 'container_size')
ContainerSize? containerSize;
@JsonKey(name: 'fallback_layers')
FallbackLayers? fallbackLayers;
String? mid;
Avatar({this.containerSize, this.fallbackLayers, this.mid});
factory Avatar.fromJson(Map<String, dynamic> json) {
return _$AvatarFromJson(json);
}
Map<String, dynamic> toJson() => _$AvatarToJson(this);
}

View File

@@ -0,0 +1,25 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'avatar.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Avatar _$AvatarFromJson(Map<String, dynamic> json) => Avatar(
containerSize: json['container_size'] == null
? null
: ContainerSize.fromJson(
json['container_size'] as Map<String, dynamic>),
fallbackLayers: json['fallback_layers'] == null
? null
: FallbackLayers.fromJson(
json['fallback_layers'] as Map<String, dynamic>),
mid: json['mid'] as String?,
);
Map<String, dynamic> _$AvatarToJson(Avatar instance) => <String, dynamic>{
'container_size': instance.containerSize,
'fallback_layers': instance.fallbackLayers,
'mid': instance.mid,
};

View File

@@ -0,0 +1,14 @@
class AvatarLayer {
AvatarLayer();
factory AvatarLayer.fromJson(Map<String, dynamic> json) {
// TODO: implement fromJson
throw UnimplementedError('AvatarLayer.fromJson($json) is not implemented');
}
Map<String, dynamic> toJson() {
// TODO: implement toJson
throw UnimplementedError();
}
}

148
lib/models/space/card.dart Normal file
View File

@@ -0,0 +1,148 @@
import 'package:PiliPalaX/models/space/space_tag_bottom.dart';
import 'package:json_annotation/json_annotation.dart';
import 'achieve.dart';
import 'avatar.dart';
import 'entrance.dart';
import 'honours.dart';
import 'level_info.dart';
import 'likes.dart';
import 'nameplate.dart';
import 'nft_certificate.dart';
import 'official_verify.dart';
import 'pendant.dart';
import 'pr_info.dart';
import 'profession.dart';
import 'profession_verify.dart';
import 'relation.dart';
import 'school.dart';
import 'vip.dart';
part 'card.g.dart';
@JsonSerializable()
class Card {
Avatar? avatar;
String? mid;
String? name;
bool? approve;
String? rank;
String? face;
@JsonKey(name: 'DisplayRank')
String? displayRank;
int? regtime;
int? spacesta;
String? birthday;
String? place;
String? description;
int? article;
dynamic attentions;
int fans;
int? friend;
int attention;
String? sign;
@JsonKey(name: 'level_info')
LevelInfo? levelInfo;
Pendant? pendant;
Nameplate? nameplate;
@JsonKey(name: 'official_verify')
OfficialVerify? officialVerify;
@JsonKey(name: 'profession_verify')
ProfessionVerify? professionVerify;
Vip? vip;
int? silence;
@JsonKey(name: 'end_time')
int? endTime;
@JsonKey(name: 'silence_url')
String? silenceUrl;
Likes? likes;
Achieve? achieve;
@JsonKey(name: 'pendant_url')
String? pendantUrl;
@JsonKey(name: 'pendant_title')
String? pendantTitle;
// @JsonKey(name: 'pr_info')
// PrInfo? prInfo;
Relation? relation;
@JsonKey(name: 'is_deleted')
int? isDeleted;
Honours? honours;
// Profession? profession;
// School? school;
@JsonKey(name: 'space_tag')
List<dynamic>? spaceTag;
@JsonKey(name: 'face_nft_new')
int? faceNftNew;
@JsonKey(name: 'has_face_nft')
bool? hasFaceNft;
@JsonKey(name: 'nft_certificate')
NftCertificate? nftCertificate;
Entrance? entrance;
@JsonKey(name: 'nft_id')
String? nftId;
@JsonKey(name: 'nft_face_icon')
dynamic nftFaceIcon;
@JsonKey(name: 'space_tag_bottom')
List<Item>? spaceTagBottom;
@JsonKey(name: 'digital_id')
String? digitalId;
@JsonKey(name: 'digital_type')
int? digitalType;
@JsonKey(name: 'has_digital_asset')
bool? hasDigitalAsset;
Card({
this.avatar,
this.mid,
this.name,
this.approve,
this.rank,
this.face,
this.displayRank,
this.regtime,
this.spacesta,
this.birthday,
this.place,
this.description,
this.article,
this.attentions,
required this.fans,
this.friend,
required this.attention,
this.sign,
this.levelInfo,
this.pendant,
this.nameplate,
this.officialVerify,
this.professionVerify,
this.vip,
this.silence,
this.endTime,
this.silenceUrl,
this.likes,
this.achieve,
this.pendantUrl,
this.pendantTitle,
// this.prInfo,
this.relation,
this.isDeleted,
this.honours,
// this.profession,
// this.school,
this.spaceTag,
this.faceNftNew,
this.hasFaceNft,
this.nftCertificate,
this.entrance,
this.nftId,
this.nftFaceIcon,
this.spaceTagBottom,
this.digitalId,
this.digitalType,
this.hasDigitalAsset,
});
factory Card.fromJson(Map<String, dynamic> json) => _$CardFromJson(json);
Map<String, dynamic> toJson() => _$CardToJson(this);
}

View File

@@ -0,0 +1,146 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'card.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Card _$CardFromJson(Map<String, dynamic> json) => Card(
avatar: json['avatar'] == null
? null
: Avatar.fromJson(json['avatar'] as Map<String, dynamic>),
mid: json['mid'] as String?,
name: json['name'] as String?,
approve: json['approve'] as bool?,
rank: json['rank'] as String?,
face: json['face'] as String?,
displayRank: json['DisplayRank'] as String?,
regtime: (json['regtime'] as num?)?.toInt(),
spacesta: (json['spacesta'] as num?)?.toInt(),
birthday: json['birthday'] as String?,
place: json['place'] as String?,
description: json['description'] as String?,
article: (json['article'] as num?)?.toInt(),
attentions: json['attentions'],
fans: (json['fans'] as num?)?.toInt() ?? 0,
friend: (json['friend'] as num?)?.toInt(),
attention: (json['attention'] as num?)?.toInt() ?? 0,
sign: json['sign'] as String?,
levelInfo: json['level_info'] == null
? null
: LevelInfo.fromJson(json['level_info'] as Map<String, dynamic>),
pendant: json['pendant'] == null
? null
: Pendant.fromJson(json['pendant'] as Map<String, dynamic>),
nameplate: json['nameplate'] == null
? null
: Nameplate.fromJson(json['nameplate'] as Map<String, dynamic>),
officialVerify: json['official_verify'] == null
? null
: OfficialVerify.fromJson(
json['official_verify'] as Map<String, dynamic>),
professionVerify: json['profession_verify'] == null
? null
: ProfessionVerify.fromJson(
json['profession_verify'] as Map<String, dynamic>),
vip: json['vip'] == null
? null
: Vip.fromJson(json['vip'] as Map<String, dynamic>),
silence: (json['silence'] as num?)?.toInt(),
endTime: (json['end_time'] as num?)?.toInt(),
silenceUrl: json['silence_url'] as String?,
likes: json['likes'] == null
? null
: Likes.fromJson(json['likes'] as Map<String, dynamic>),
achieve: json['achieve'] == null
? null
: Achieve.fromJson(json['achieve'] as Map<String, dynamic>),
pendantUrl: json['pendant_url'] as String?,
pendantTitle: json['pendant_title'] as String?,
// prInfo: json['pr_info'] == null
// ? null
// : PrInfo.fromJson(json['pr_info'] as Map<String, dynamic>),
relation: json['relation'] == null
? null
: Relation.fromJson(json['relation'] as Map<String, dynamic>),
isDeleted: (json['is_deleted'] as num?)?.toInt(),
honours: json['honours'] == null
? null
: Honours.fromJson(json['honours'] as Map<String, dynamic>),
// profession: json['profession'] == null
// ? null
// : Profession.fromJson(json['profession'] as Map<String, dynamic>),
// school: json['school'] == null
// ? null
// : School.fromJson(json['school'] as Map<String, dynamic>),
spaceTag: json['space_tag'] as List<dynamic>?,
faceNftNew: (json['face_nft_new'] as num?)?.toInt(),
hasFaceNft: json['has_face_nft'] as bool?,
nftCertificate: json['nft_certificate'] == null
? null
: NftCertificate.fromJson(
json['nft_certificate'] as Map<String, dynamic>),
entrance: json['entrance'] == null
? null
: Entrance.fromJson(json['entrance'] as Map<String, dynamic>),
nftId: json['nft_id'] as String?,
nftFaceIcon: json['nft_face_icon'],
spaceTagBottom: (json['space_tag_bottom'] as List<dynamic>?)
?.map((item) => Item.fromJson(item))
.toList(),
digitalId: json['digital_id'] as String?,
digitalType: (json['digital_type'] as num?)?.toInt(),
hasDigitalAsset: json['has_digital_asset'] as bool?,
);
Map<String, dynamic> _$CardToJson(Card instance) => <String, dynamic>{
'avatar': instance.avatar,
'mid': instance.mid,
'name': instance.name,
'approve': instance.approve,
'rank': instance.rank,
'face': instance.face,
'DisplayRank': instance.displayRank,
'regtime': instance.regtime,
'spacesta': instance.spacesta,
'birthday': instance.birthday,
'place': instance.place,
'description': instance.description,
'article': instance.article,
'attentions': instance.attentions,
'fans': instance.fans,
'friend': instance.friend,
'attention': instance.attention,
'sign': instance.sign,
'level_info': instance.levelInfo,
'pendant': instance.pendant,
'nameplate': instance.nameplate,
'official_verify': instance.officialVerify,
'profession_verify': instance.professionVerify,
'vip': instance.vip,
'silence': instance.silence,
'end_time': instance.endTime,
'silence_url': instance.silenceUrl,
'likes': instance.likes,
'achieve': instance.achieve,
'pendant_url': instance.pendantUrl,
'pendant_title': instance.pendantTitle,
// 'pr_info': instance.prInfo,
'relation': instance.relation,
'is_deleted': instance.isDeleted,
'honours': instance.honours,
// 'profession': instance.profession,
// 'school': instance.school,
'space_tag': instance.spaceTag,
'face_nft_new': instance.faceNftNew,
'has_face_nft': instance.hasFaceNft,
'nft_certificate': instance.nftCertificate,
'entrance': instance.entrance,
'nft_id': instance.nftId,
'nft_face_icon': instance.nftFaceIcon,
'space_tag_bottom': instance.spaceTagBottom,
'digital_id': instance.digitalId,
'digital_type': instance.digitalType,
'has_digital_asset': instance.hasDigitalAsset,
};

View File

@@ -0,0 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
part 'coin_archive.g.dart';
@JsonSerializable()
class CoinArchive {
int? count;
List<dynamic>? item;
CoinArchive({this.count, this.item});
factory CoinArchive.fromJson(Map<String, dynamic> json) {
return _$CoinArchiveFromJson(json);
}
Map<String, dynamic> toJson() => _$CoinArchiveToJson(this);
}

View File

@@ -0,0 +1,18 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'coin_archive.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
CoinArchive _$CoinArchiveFromJson(Map<String, dynamic> json) => CoinArchive(
count: (json['count'] as num?)?.toInt(),
item: json['item'] as List<dynamic>?,
);
Map<String, dynamic> _$CoinArchiveToJson(CoinArchive instance) =>
<String, dynamic>{
'count': instance.count,
'item': instance.item,
};

View File

@@ -0,0 +1,22 @@
import 'package:json_annotation/json_annotation.dart';
import 'day.dart';
import 'night.dart';
part 'color_config.g.dart';
@JsonSerializable()
class ColorConfig {
@JsonKey(name: 'is_dark_mode_aware')
bool? isDarkModeAware;
Day? day;
Night? night;
ColorConfig({this.isDarkModeAware, this.day, this.night});
factory ColorConfig.fromJson(Map<String, dynamic> json) {
return _$ColorConfigFromJson(json);
}
Map<String, dynamic> toJson() => _$ColorConfigToJson(this);
}

View File

@@ -0,0 +1,24 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'color_config.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
ColorConfig _$ColorConfigFromJson(Map<String, dynamic> json) => ColorConfig(
isDarkModeAware: json['is_dark_mode_aware'] as bool?,
day: json['day'] == null
? null
: Day.fromJson(json['day'] as Map<String, dynamic>),
night: json['night'] == null
? null
: Night.fromJson(json['night'] as Map<String, dynamic>),
);
Map<String, dynamic> _$ColorConfigToJson(ColorConfig instance) =>
<String, dynamic>{
'is_dark_mode_aware': instance.isDarkModeAware,
'day': instance.day,
'night': instance.night,
};

View File

@@ -0,0 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
part 'colour.g.dart';
@JsonSerializable()
class Colour {
String? dark;
String? normal;
Colour({this.dark, this.normal});
factory Colour.fromJson(Map<String, dynamic> json) {
return _$ColourFromJson(json);
}
Map<String, dynamic> toJson() => _$ColourToJson(this);
}

View File

@@ -0,0 +1,17 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'colour.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Colour _$ColourFromJson(Map<String, dynamic> json) => Colour(
dark: json['dark'] as String?,
normal: json['normal'] as String?,
);
Map<String, dynamic> _$ColourToJson(Colour instance) => <String, dynamic>{
'dark': instance.dark,
'normal': instance.normal,
};

View File

@@ -0,0 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
part 'container_size.g.dart';
@JsonSerializable()
class ContainerSize {
double? width;
double? height;
ContainerSize({this.width, this.height});
factory ContainerSize.fromJson(Map<String, dynamic> json) {
return _$ContainerSizeFromJson(json);
}
Map<String, dynamic> toJson() => _$ContainerSizeToJson(this);
}

View File

@@ -0,0 +1,19 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'container_size.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
ContainerSize _$ContainerSizeFromJson(Map<String, dynamic> json) =>
ContainerSize(
width: (json['width'] as num?)?.toDouble(),
height: (json['height'] as num?)?.toDouble(),
);
Map<String, dynamic> _$ContainerSizeToJson(ContainerSize instance) =>
<String, dynamic>{
'width': instance.width,
'height': instance.height,
};

View File

@@ -0,0 +1,83 @@
import 'package:json_annotation/json_annotation.dart';
import 'archive.dart';
import 'article.dart';
import 'attention_tip.dart';
import 'audios.dart';
import 'card.dart';
import 'coin_archive.dart';
import 'fans_effect.dart';
import 'favourite2.dart';
import 'images.dart';
import 'like_archive.dart';
import 'season.dart';
import 'series.dart';
import 'setting.dart';
import 'tab.dart';
import 'tab2.dart';
part 'data.g.dart';
@JsonSerializable()
class Data {
int? relation;
@JsonKey(name: 'guest_relation')
int? guestRelation;
@JsonKey(name: 'default_tab')
String? defaultTab;
@JsonKey(name: 'is_params')
bool? isParams;
Setting? setting;
Tab? tab;
Card? card;
Images? images;
Archive? archive;
Series? series;
Article? article;
Season? season;
@JsonKey(name: 'coin_archive')
CoinArchive? coinArchive;
@JsonKey(name: 'like_archive')
LikeArchive? likeArchive;
Audios? audios;
Favourite2? favourite2;
@JsonKey(name: 'attention_tip')
AttentionTip? attentionTip;
@JsonKey(name: 'fans_effect')
// FansEffect? fansEffect;
List<Tab2>? tab2;
@JsonKey(name: 'nft_face_button')
dynamic nftFaceButton;
@JsonKey(name: 'digital_button')
dynamic digitalButton;
dynamic entry;
Data({
this.relation,
this.guestRelation,
this.defaultTab,
this.isParams,
this.setting,
this.tab,
this.card,
this.images,
this.archive,
this.series,
this.article,
this.season,
this.coinArchive,
this.likeArchive,
this.audios,
this.favourite2,
this.attentionTip,
// this.fansEffect,
this.tab2,
this.nftFaceButton,
this.digitalButton,
this.entry,
});
factory Data.fromJson(Map<String, dynamic> json) => _$DataFromJson(json);
Map<String, dynamic> toJson() => _$DataToJson(this);
}

View File

@@ -0,0 +1,88 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'data.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Data _$DataFromJson(Map<String, dynamic> json) => Data(
relation: (json['relation'] as num?)?.toInt(),
guestRelation: (json['guest_relation'] as num?)?.toInt(),
defaultTab: json['default_tab'] as String?,
isParams: json['is_params'] as bool?,
setting: json['setting'] == null
? null
: Setting.fromJson(json['setting'] as Map<String, dynamic>),
tab: json['tab'] == null
? null
: Tab.fromJson(json['tab'] as Map<String, dynamic>),
card: json['card'] == null
? null
: Card.fromJson(json['card'] as Map<String, dynamic>),
images: json['images'] == null
? null
: Images.fromJson(json['images'] as Map<String, dynamic>),
archive: json['archive'] == null
? null
: Archive.fromJson(json['archive'] as Map<String, dynamic>),
series: json['series'] == null
? null
: Series.fromJson(json['series'] as Map<String, dynamic>),
article: json['article'] == null
? null
: Article.fromJson(json['article'] as Map<String, dynamic>),
season: json['season'] == null
? null
: Season.fromJson(json['season'] as Map<String, dynamic>),
coinArchive: json['coin_archive'] == null
? null
: CoinArchive.fromJson(json['coin_archive'] as Map<String, dynamic>),
likeArchive: json['like_archive'] == null
? null
: LikeArchive.fromJson(json['like_archive'] as Map<String, dynamic>),
audios: json['audios'] == null
? null
: Audios.fromJson(json['audios'] as Map<String, dynamic>),
favourite2: json['favourite2'] == null
? null
: Favourite2.fromJson(json['favourite2'] as Map<String, dynamic>),
attentionTip: json['attention_tip'] == null
? null
: AttentionTip.fromJson(
json['attention_tip'] as Map<String, dynamic>),
// fansEffect: json['fans_effect'] == null
// ? null
// : FansEffect.fromJson(json['fans_effect'] as Map<String, dynamic>),
tab2: (json['tab2'] as List<dynamic>?)
?.map((e) => Tab2.fromJson(e as Map<String, dynamic>))
.toList(),
nftFaceButton: json['nft_face_button'],
digitalButton: json['digital_button'],
entry: json['entry'],
);
Map<String, dynamic> _$DataToJson(Data instance) => <String, dynamic>{
'relation': instance.relation,
'guest_relation': instance.guestRelation,
'default_tab': instance.defaultTab,
'is_params': instance.isParams,
'setting': instance.setting,
'tab': instance.tab,
'card': instance.card,
'images': instance.images,
'archive': instance.archive,
'series': instance.series,
'article': instance.article,
'season': instance.season,
'coin_archive': instance.coinArchive,
'like_archive': instance.likeArchive,
'audios': instance.audios,
'favourite2': instance.favourite2,
'attention_tip': instance.attentionTip,
// 'fans_effect': instance.fansEffect,
'tab2': instance.tab2,
'nft_face_button': instance.nftFaceButton,
'digital_button': instance.digitalButton,
'entry': instance.entry,
};

14
lib/models/space/day.dart Normal file
View File

@@ -0,0 +1,14 @@
import 'package:json_annotation/json_annotation.dart';
part 'day.g.dart';
@JsonSerializable()
class Day {
String? argb;
Day({this.argb});
factory Day.fromJson(Map<String, dynamic> json) => _$DayFromJson(json);
Map<String, dynamic> toJson() => _$DayToJson(this);
}

View File

@@ -0,0 +1,15 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'day.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Day _$DayFromJson(Map<String, dynamic> json) => Day(
argb: json['argb'] as String?,
);
Map<String, dynamic> _$DayToJson(Day instance) => <String, dynamic>{
'argb': instance.argb,
};

View File

@@ -0,0 +1,47 @@
import 'package:json_annotation/json_annotation.dart';
part 'digital_info.g.dart';
@JsonSerializable()
class DigitalInfo {
bool? active;
@JsonKey(name: 'nft_type')
int? nftType;
@JsonKey(name: 'background_handle')
int? backgroundHandle;
@JsonKey(name: 'animation_first_frame')
String? animationFirstFrame;
@JsonKey(name: 'music_album')
dynamic musicAlbum;
dynamic animation;
@JsonKey(name: 'nft_region_title')
String? nftRegionTitle;
@JsonKey(name: 'card_id')
int? cardId;
@JsonKey(name: 'cut_space_bg')
String? cutSpaceBg;
@JsonKey(name: 'part_type')
int? partType;
@JsonKey(name: 'item_jump_url')
String? itemJumpUrl;
DigitalInfo({
this.active,
this.nftType,
this.backgroundHandle,
this.animationFirstFrame,
this.musicAlbum,
this.animation,
this.nftRegionTitle,
this.cardId,
this.cutSpaceBg,
this.partType,
this.itemJumpUrl,
});
factory DigitalInfo.fromJson(Map<String, dynamic> json) {
return _$DigitalInfoFromJson(json);
}
Map<String, dynamic> toJson() => _$DigitalInfoToJson(this);
}

View File

@@ -0,0 +1,36 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'digital_info.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
DigitalInfo _$DigitalInfoFromJson(Map<String, dynamic> json) => DigitalInfo(
active: json['active'] as bool?,
nftType: (json['nft_type'] as num?)?.toInt(),
backgroundHandle: (json['background_handle'] as num?)?.toInt(),
animationFirstFrame: json['animation_first_frame'] as String?,
musicAlbum: json['music_album'],
animation: json['animation'],
nftRegionTitle: json['nft_region_title'] as String?,
cardId: (json['card_id'] as num?)?.toInt(),
cutSpaceBg: json['cut_space_bg'] as String?,
partType: (json['part_type'] as num?)?.toInt(),
itemJumpUrl: json['item_jump_url'] as String?,
);
Map<String, dynamic> _$DigitalInfoToJson(DigitalInfo instance) =>
<String, dynamic>{
'active': instance.active,
'nft_type': instance.nftType,
'background_handle': instance.backgroundHandle,
'animation_first_frame': instance.animationFirstFrame,
'music_album': instance.musicAlbum,
'animation': instance.animation,
'nft_region_title': instance.nftRegionTitle,
'card_id': instance.cardId,
'cut_space_bg': instance.cutSpaceBg,
'part_type': instance.partType,
'item_jump_url': instance.itemJumpUrl,
};

View File

@@ -0,0 +1,21 @@
import 'package:json_annotation/json_annotation.dart';
import 'color_config.dart';
part 'draw.g.dart';
@JsonSerializable()
class Draw {
@JsonKey(name: 'draw_type')
int? drawType;
@JsonKey(name: 'fill_mode')
int? fillMode;
@JsonKey(name: 'color_config')
ColorConfig? colorConfig;
Draw({this.drawType, this.fillMode, this.colorConfig});
factory Draw.fromJson(Map<String, dynamic> json) => _$DrawFromJson(json);
Map<String, dynamic> toJson() => _$DrawToJson(this);
}

View File

@@ -0,0 +1,21 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'draw.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Draw _$DrawFromJson(Map<String, dynamic> json) => Draw(
drawType: (json['draw_type'] as num?)?.toInt(),
fillMode: (json['fill_mode'] as num?)?.toInt(),
colorConfig: json['color_config'] == null
? null
: ColorConfig.fromJson(json['color_config'] as Map<String, dynamic>),
);
Map<String, dynamic> _$DrawToJson(Draw instance) => <String, dynamic>{
'draw_type': instance.drawType,
'fill_mode': instance.fillMode,
'color_config': instance.colorConfig,
};

View File

@@ -0,0 +1,20 @@
import 'package:json_annotation/json_annotation.dart';
import 'draw.dart';
part 'draw_src.g.dart';
@JsonSerializable()
class DrawSrc {
@JsonKey(name: 'src_type')
int? srcType;
Draw? draw;
DrawSrc({this.srcType, this.draw});
factory DrawSrc.fromJson(Map<String, dynamic> json) {
return _$DrawSrcFromJson(json);
}
Map<String, dynamic> toJson() => _$DrawSrcToJson(this);
}

View File

@@ -0,0 +1,19 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'draw_src.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
DrawSrc _$DrawSrcFromJson(Map<String, dynamic> json) => DrawSrc(
srcType: (json['src_type'] as num?)?.toInt(),
draw: json['draw'] == null
? null
: Draw.fromJson(json['draw'] as Map<String, dynamic>),
);
Map<String, dynamic> _$DrawSrcToJson(DrawSrc instance) => <String, dynamic>{
'src_type': instance.srcType,
'draw': instance.draw,
};

View File

@@ -0,0 +1,20 @@
import 'package:json_annotation/json_annotation.dart';
part 'entrance.g.dart';
@JsonSerializable()
class Entrance {
String? icon;
@JsonKey(name: 'jump_url')
String? jumpUrl;
@JsonKey(name: 'is_show_entrance')
bool? isShowEntrance;
Entrance({this.icon, this.jumpUrl, this.isShowEntrance});
factory Entrance.fromJson(Map<String, dynamic> json) {
return _$EntranceFromJson(json);
}
Map<String, dynamic> toJson() => _$EntranceToJson(this);
}

View File

@@ -0,0 +1,19 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'entrance.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Entrance _$EntranceFromJson(Map<String, dynamic> json) => Entrance(
icon: json['icon'] as String?,
jumpUrl: json['jump_url'] as String?,
isShowEntrance: json['is_show_entrance'] as bool?,
);
Map<String, dynamic> _$EntranceToJson(Entrance instance) => <String, dynamic>{
'icon': instance.icon,
'jump_url': instance.jumpUrl,
'is_show_entrance': instance.isShowEntrance,
};

View File

@@ -0,0 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
part 'entrance_button.g.dart';
@JsonSerializable()
class EntranceButton {
String? uri;
String? title;
EntranceButton({this.uri, this.title});
factory EntranceButton.fromJson(Map<String, dynamic> json) {
return _$EntranceButtonFromJson(json);
}
Map<String, dynamic> toJson() => _$EntranceButtonToJson(this);
}

View File

@@ -0,0 +1,19 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'entrance_button.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
EntranceButton _$EntranceButtonFromJson(Map<String, dynamic> json) =>
EntranceButton(
uri: json['uri'] as String?,
title: json['title'] as String?,
);
Map<String, dynamic> _$EntranceButtonToJson(EntranceButton instance) =>
<String, dynamic>{
'uri': instance.uri,
'title': instance.title,
};

View File

@@ -0,0 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
part 'episodic_button.g.dart';
@JsonSerializable()
class EpisodicButton {
String? text;
String? uri;
EpisodicButton({this.text, this.uri});
factory EpisodicButton.fromJson(Map<String, dynamic> json) {
return _$EpisodicButtonFromJson(json);
}
Map<String, dynamic> toJson() => _$EpisodicButtonToJson(this);
}

View File

@@ -0,0 +1,19 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'episodic_button.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
EpisodicButton _$EpisodicButtonFromJson(Map<String, dynamic> json) =>
EpisodicButton(
text: json['text'] as String?,
uri: json['uri'] as String?,
);
Map<String, dynamic> _$EpisodicButtonToJson(EpisodicButton instance) =>
<String, dynamic>{
'text': instance.text,
'uri': instance.uri,
};

View File

@@ -0,0 +1,20 @@
import 'package:json_annotation/json_annotation.dart';
import 'layer.dart';
part 'fallback_layers.g.dart';
@JsonSerializable()
class FallbackLayers {
List<Layer>? layers;
@JsonKey(name: 'is_critical_group')
bool? isCriticalGroup;
FallbackLayers({this.layers, this.isCriticalGroup});
factory FallbackLayers.fromJson(Map<String, dynamic> json) {
return _$FallbackLayersFromJson(json);
}
Map<String, dynamic> toJson() => _$FallbackLayersToJson(this);
}

View File

@@ -0,0 +1,21 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'fallback_layers.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
FallbackLayers _$FallbackLayersFromJson(Map<String, dynamic> json) =>
FallbackLayers(
layers: (json['layers'] as List<dynamic>?)
?.map((e) => Layer.fromJson(e as Map<String, dynamic>))
.toList(),
isCriticalGroup: json['is_critical_group'] as bool?,
);
Map<String, dynamic> _$FallbackLayersToJson(FallbackLayers instance) =>
<String, dynamic>{
'layers': instance.layers,
'is_critical_group': instance.isCriticalGroup,
};

View File

@@ -0,0 +1,14 @@
class FansEffect {
FansEffect();
factory FansEffect.fromJson(Map<String, dynamic> json) {
// TODO: implement fromJson
throw UnimplementedError('FansEffect.fromJson($json) is not implemented');
}
Map<String, dynamic> toJson() {
// TODO: implement toJson
throw UnimplementedError();
}
}

View File

@@ -0,0 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
part 'favourite2.g.dart';
@JsonSerializable()
class Favourite2 {
int? count;
List<dynamic>? item;
Favourite2({this.count, this.item});
factory Favourite2.fromJson(Map<String, dynamic> json) {
return _$Favourite2FromJson(json);
}
Map<String, dynamic> toJson() => _$Favourite2ToJson(this);
}

View File

@@ -0,0 +1,18 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'favourite2.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Favourite2 _$Favourite2FromJson(Map<String, dynamic> json) => Favourite2(
count: (json['count'] as num?)?.toInt(),
item: json['item'] as List<dynamic>?,
);
Map<String, dynamic> _$Favourite2ToJson(Favourite2 instance) =>
<String, dynamic>{
'count': instance.count,
'item': instance.item,
};

View File

@@ -0,0 +1,25 @@
import 'package:json_annotation/json_annotation.dart';
import 'pos_spec.dart';
import 'render_spec.dart';
import 'size_spec.dart';
part 'general_spec.g.dart';
@JsonSerializable()
class GeneralSpec {
@JsonKey(name: 'pos_spec')
PosSpec? posSpec;
@JsonKey(name: 'size_spec')
SizeSpec? sizeSpec;
@JsonKey(name: 'render_spec')
RenderSpec? renderSpec;
GeneralSpec({this.posSpec, this.sizeSpec, this.renderSpec});
factory GeneralSpec.fromJson(Map<String, dynamic> json) {
return _$GeneralSpecFromJson(json);
}
Map<String, dynamic> toJson() => _$GeneralSpecToJson(this);
}

View File

@@ -0,0 +1,26 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'general_spec.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
GeneralSpec _$GeneralSpecFromJson(Map<String, dynamic> json) => GeneralSpec(
posSpec: json['pos_spec'] == null
? null
: PosSpec.fromJson(json['pos_spec'] as Map<String, dynamic>),
sizeSpec: json['size_spec'] == null
? null
: SizeSpec.fromJson(json['size_spec'] as Map<String, dynamic>),
renderSpec: json['render_spec'] == null
? null
: RenderSpec.fromJson(json['render_spec'] as Map<String, dynamic>),
);
Map<String, dynamic> _$GeneralSpecToJson(GeneralSpec instance) =>
<String, dynamic>{
'pos_spec': instance.posSpec,
'size_spec': instance.sizeSpec,
'render_spec': instance.renderSpec,
};

View File

@@ -0,0 +1,19 @@
import 'package:json_annotation/json_annotation.dart';
import 'colour.dart';
part 'honours.g.dart';
@JsonSerializable()
class Honours {
Colour? colour;
List<dynamic>? tags;
Honours({this.colour, this.tags});
factory Honours.fromJson(Map<String, dynamic> json) {
return _$HonoursFromJson(json);
}
Map<String, dynamic> toJson() => _$HonoursToJson(this);
}

View File

@@ -0,0 +1,19 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'honours.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Honours _$HonoursFromJson(Map<String, dynamic> json) => Honours(
colour: json['colour'] == null
? null
: Colour.fromJson(json['colour'] as Map<String, dynamic>),
tags: json['tags'] as List<dynamic>?,
);
Map<String, dynamic> _$HonoursToJson(Honours instance) => <String, dynamic>{
'colour': instance.colour,
'tags': instance.tags,
};

View File

@@ -0,0 +1,43 @@
import 'package:json_annotation/json_annotation.dart';
import 'digital_info.dart';
import 'entrance_button.dart';
import 'purchase_button.dart';
part 'images.g.dart';
@JsonSerializable()
class Images {
String? imgUrl;
@JsonKey(name: 'night_imgurl')
String? nightImgurl;
@JsonKey(name: 'has_garb')
bool? hasGarb;
@JsonKey(name: 'goods_available')
bool? goodsAvailable;
@JsonKey(name: 'purchase_button')
PurchaseButton? purchaseButton;
@JsonKey(name: 'entrance_button')
EntranceButton? entranceButton;
@JsonKey(name: 'digital_info')
DigitalInfo? digitalInfo;
@JsonKey(name: 'collection_top_simple')
dynamic collectionTopSimple;
Images({
this.imgUrl,
this.nightImgurl,
this.hasGarb,
this.goodsAvailable,
this.purchaseButton,
this.entranceButton,
this.digitalInfo,
this.collectionTopSimple,
});
factory Images.fromJson(Map<String, dynamic> json) {
return _$ImagesFromJson(json);
}
Map<String, dynamic> toJson() => _$ImagesToJson(this);
}

View File

@@ -0,0 +1,37 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'images.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Images _$ImagesFromJson(Map<String, dynamic> json) => Images(
imgUrl: json['imgUrl'] as String?,
nightImgurl: json['night_imgurl'] as String?,
hasGarb: json['has_garb'] as bool?,
goodsAvailable: json['goods_available'] as bool?,
purchaseButton: json['purchase_button'] == null
? null
: PurchaseButton.fromJson(
json['purchase_button'] as Map<String, dynamic>),
entranceButton: json['entrance_button'] == null
? null
: EntranceButton.fromJson(
json['entrance_button'] as Map<String, dynamic>),
digitalInfo: json['digital_info'] == null
? null
: DigitalInfo.fromJson(json['digital_info'] as Map<String, dynamic>),
collectionTopSimple: json['collection_top_simple'],
);
Map<String, dynamic> _$ImagesToJson(Images instance) => <String, dynamic>{
'imgUrl': instance.imgUrl,
'night_imgurl': instance.nightImgurl,
'has_garb': instance.hasGarb,
'goods_available': instance.goodsAvailable,
'purchase_button': instance.purchaseButton,
'entrance_button': instance.entranceButton,
'digital_info': instance.digitalInfo,
'collection_top_simple': instance.collectionTopSimple,
};

View File

@@ -0,0 +1,96 @@
import 'package:json_annotation/json_annotation.dart';
import 'three_point.dart';
part 'item.g.dart';
@JsonSerializable()
class Item {
String? title;
String? subtitle;
String? tname;
String? cover;
@JsonKey(name: 'cover_icon')
String? coverIcon;
String? uri;
String? param;
String? goto;
String? length;
int? duration;
@JsonKey(name: 'is_popular')
bool? isPopular;
@JsonKey(name: 'is_steins')
bool? isSteins;
@JsonKey(name: 'is_ugcpay')
bool? isUgcpay;
@JsonKey(name: 'is_cooperation')
bool? isCooperation;
@JsonKey(name: 'is_pgc')
bool? isPgc;
@JsonKey(name: 'is_live_playback')
bool? isLivePlayback;
@JsonKey(name: 'is_pugv')
bool? isPugv;
@JsonKey(name: 'is_fold')
bool? isFold;
@JsonKey(name: 'is_oneself')
bool? isOneself;
int? play;
int? danmaku;
int? ctime;
@JsonKey(name: 'ugc_pay')
int? ugcPay;
String? author;
bool? state;
String? bvid;
int? videos;
// @JsonKey(name: 'three_point')
// List<ThreePoint>? threePoint;
@JsonKey(name: 'first_cid')
int? firstCid;
@JsonKey(name: 'view_content')
String? viewContent;
@JsonKey(name: 'icon_type')
int? iconType;
@JsonKey(name: 'publish_time_text')
String? publishTimeText;
Item({
this.title,
this.subtitle,
this.tname,
this.cover,
this.coverIcon,
this.uri,
this.param,
this.goto,
this.length,
this.duration,
this.isPopular,
this.isSteins,
this.isUgcpay,
this.isCooperation,
this.isPgc,
this.isLivePlayback,
this.isPugv,
this.isFold,
this.isOneself,
this.play,
this.danmaku,
this.ctime,
this.ugcPay,
this.author,
this.state,
this.bvid,
this.videos,
// this.threePoint,
this.firstCid,
this.viewContent,
this.iconType,
this.publishTimeText,
});
factory Item.fromJson(Map<String, dynamic> json) => _$ItemFromJson(json);
Map<String, dynamic> toJson() => _$ItemToJson(this);
}

View File

@@ -0,0 +1,79 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'item.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Item _$ItemFromJson(Map<String, dynamic> json) => Item(
title: json['title'] as String?,
subtitle: json['subtitle'] as String?,
tname: json['tname'] as String?,
cover: json['cover'] as String?,
coverIcon: json['cover_icon'] as String?,
uri: json['uri'] as String?,
param: json['param'] as String?,
goto: json['goto'] as String?,
length: json['length'] as String?,
duration: (json['duration'] as num?)?.toInt(),
isPopular: json['is_popular'] as bool?,
isSteins: json['is_steins'] as bool?,
isUgcpay: json['is_ugcpay'] as bool?,
isCooperation: json['is_cooperation'] as bool?,
isPgc: json['is_pgc'] as bool?,
isLivePlayback: json['is_live_playback'] as bool?,
isPugv: json['is_pugv'] as bool?,
isFold: json['is_fold'] as bool?,
isOneself: json['is_oneself'] as bool?,
play: (json['play'] as num?)?.toInt(),
danmaku: (json['danmaku'] as num?)?.toInt(),
ctime: (json['ctime'] as num?)?.toInt(),
ugcPay: (json['ugc_pay'] as num?)?.toInt(),
author: json['author'] as String?,
state: json['state'] as bool?,
bvid: json['bvid'] as String?,
videos: (json['videos'] as num?)?.toInt(),
// threePoint: (json['three_point'] as List<dynamic>?)
// ?.map((e) => ThreePoint.fromJson(e as Map<String, dynamic>))
// .toList(),
firstCid: (json['first_cid'] as num?)?.toInt(),
viewContent: json['view_content'] as String?,
iconType: (json['icon_type'] as num?)?.toInt(),
publishTimeText: json['publish_time_text'] as String?,
);
Map<String, dynamic> _$ItemToJson(Item instance) => <String, dynamic>{
'title': instance.title,
'subtitle': instance.subtitle,
'tname': instance.tname,
'cover': instance.cover,
'cover_icon': instance.coverIcon,
'uri': instance.uri,
'param': instance.param,
'goto': instance.goto,
'length': instance.length,
'duration': instance.duration,
'is_popular': instance.isPopular,
'is_steins': instance.isSteins,
'is_ugcpay': instance.isUgcpay,
'is_cooperation': instance.isCooperation,
'is_pgc': instance.isPgc,
'is_live_playback': instance.isLivePlayback,
'is_pugv': instance.isPugv,
'is_fold': instance.isFold,
'is_oneself': instance.isOneself,
'play': instance.play,
'danmaku': instance.danmaku,
'ctime': instance.ctime,
'ugc_pay': instance.ugcPay,
'author': instance.author,
'state': instance.state,
'bvid': instance.bvid,
'videos': instance.videos,
// 'three_point': instance.threePoint,
'first_cid': instance.firstCid,
'view_content': instance.viewContent,
'icon_type': instance.iconType,
'publish_time_text': instance.publishTimeText,
};

View File

@@ -0,0 +1,35 @@
import 'package:json_annotation/json_annotation.dart';
part 'label.g.dart';
@JsonSerializable()
class Label {
String? path;
String? text;
@JsonKey(name: 'label_theme')
String? labelTheme;
@JsonKey(name: 'text_color')
String? textColor;
@JsonKey(name: 'bg_style')
int? bgStyle;
@JsonKey(name: 'bg_color')
String? bgColor;
@JsonKey(name: 'border_color')
String? borderColor;
String? image;
Label({
this.path,
this.text,
this.labelTheme,
this.textColor,
this.bgStyle,
this.bgColor,
this.borderColor,
this.image,
});
factory Label.fromJson(Map<String, dynamic> json) => _$LabelFromJson(json);
Map<String, dynamic> toJson() => _$LabelToJson(this);
}

View File

@@ -0,0 +1,29 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'label.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Label _$LabelFromJson(Map<String, dynamic> json) => Label(
path: json['path'] as String?,
text: json['text'] as String?,
labelTheme: json['label_theme'] as String?,
textColor: json['text_color'] as String?,
bgStyle: (json['bg_style'] as num?)?.toInt(),
bgColor: json['bg_color'] as String?,
borderColor: json['border_color'] as String?,
image: json['image'] as String?,
);
Map<String, dynamic> _$LabelToJson(Label instance) => <String, dynamic>{
'path': instance.path,
'text': instance.text,
'label_theme': instance.labelTheme,
'text_color': instance.textColor,
'bg_style': instance.bgStyle,
'bg_color': instance.bgColor,
'border_color': instance.borderColor,
'image': instance.image,
};

View File

@@ -0,0 +1,23 @@
import 'package:json_annotation/json_annotation.dart';
import 'general_spec.dart';
import 'layer_config.dart';
import 'resource.dart';
part 'layer.g.dart';
@JsonSerializable()
class Layer {
bool? visible;
@JsonKey(name: 'general_spec')
GeneralSpec? generalSpec;
@JsonKey(name: 'layer_config')
LayerConfig? layerConfig;
Resource? resource;
Layer({this.visible, this.generalSpec, this.layerConfig, this.resource});
factory Layer.fromJson(Map<String, dynamic> json) => _$LayerFromJson(json);
Map<String, dynamic> toJson() => _$LayerToJson(this);
}

View File

@@ -0,0 +1,27 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'layer.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Layer _$LayerFromJson(Map<String, dynamic> json) => Layer(
visible: json['visible'] as bool?,
generalSpec: json['general_spec'] == null
? null
: GeneralSpec.fromJson(json['general_spec'] as Map<String, dynamic>),
layerConfig: json['layer_config'] == null
? null
: LayerConfig.fromJson(json['layer_config'] as Map<String, dynamic>),
resource: json['resource'] == null
? null
: Resource.fromJson(json['resource'] as Map<String, dynamic>),
);
Map<String, dynamic> _$LayerToJson(Layer instance) => <String, dynamic>{
'visible': instance.visible,
'general_spec': instance.generalSpec,
'layer_config': instance.layerConfig,
'resource': instance.resource,
};

View File

@@ -0,0 +1,23 @@
import 'package:json_annotation/json_annotation.dart';
import 'tags.dart';
part 'layer_config.g.dart';
@JsonSerializable()
class LayerConfig {
// Tags? tags;
@JsonKey(name: 'is_critical')
bool? isCritical;
LayerConfig({
// this.tags,
this.isCritical,
});
factory LayerConfig.fromJson(Map<String, dynamic> json) {
return _$LayerConfigFromJson(json);
}
Map<String, dynamic> toJson() => _$LayerConfigToJson(this);
}

View File

@@ -0,0 +1,20 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'layer_config.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
LayerConfig _$LayerConfigFromJson(Map<String, dynamic> json) => LayerConfig(
// tags: json['tags'] == null
// ? null
// : Tags.fromJson(json['tags'] as Map<String, dynamic>),
isCritical: json['is_critical'] as bool?,
);
Map<String, dynamic> _$LayerConfigToJson(LayerConfig instance) =>
<String, dynamic>{
// 'tags': instance.tags,
'is_critical': instance.isCritical,
};

View File

@@ -0,0 +1,35 @@
import 'package:json_annotation/json_annotation.dart';
import 'senior_inquiry.dart';
part 'level_info.g.dart';
@JsonSerializable()
class LevelInfo {
@JsonKey(name: 'current_level')
int? currentLevel;
@JsonKey(name: 'current_min')
int? currentMin;
@JsonKey(name: 'current_exp')
int? currentExp;
@JsonKey(name: 'next_exp')
dynamic nextExp;
int? identity;
@JsonKey(name: 'senior_inquiry')
SeniorInquiry? seniorInquiry;
LevelInfo({
this.currentLevel,
this.currentMin,
this.currentExp,
this.nextExp,
this.identity,
this.seniorInquiry,
});
factory LevelInfo.fromJson(Map<String, dynamic> json) {
return _$LevelInfoFromJson(json);
}
Map<String, dynamic> toJson() => _$LevelInfoToJson(this);
}

View File

@@ -0,0 +1,28 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'level_info.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
LevelInfo _$LevelInfoFromJson(Map<String, dynamic> json) => LevelInfo(
currentLevel: (json['current_level'] as num?)?.toInt(),
currentMin: (json['current_min'] as num?)?.toInt(),
currentExp: (json['current_exp'] as num?)?.toInt(),
nextExp: json['next_exp'],
identity: (json['identity'] as num?)?.toInt(),
seniorInquiry: json['senior_inquiry'] == null
? null
: SeniorInquiry.fromJson(
json['senior_inquiry'] as Map<String, dynamic>),
);
Map<String, dynamic> _$LevelInfoToJson(LevelInfo instance) => <String, dynamic>{
'current_level': instance.currentLevel,
'current_min': instance.currentMin,
'current_exp': instance.currentExp,
'next_exp': instance.nextExp,
'identity': instance.identity,
'senior_inquiry': instance.seniorInquiry,
};

View File

@@ -0,0 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
part 'like_archive.g.dart';
@JsonSerializable()
class LikeArchive {
int? count;
List<dynamic>? item;
LikeArchive({this.count, this.item});
factory LikeArchive.fromJson(Map<String, dynamic> json) {
return _$LikeArchiveFromJson(json);
}
Map<String, dynamic> toJson() => _$LikeArchiveToJson(this);
}

View File

@@ -0,0 +1,18 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'like_archive.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
LikeArchive _$LikeArchiveFromJson(Map<String, dynamic> json) => LikeArchive(
count: (json['count'] as num?)?.toInt(),
item: json['item'] as List<dynamic>?,
);
Map<String, dynamic> _$LikeArchiveToJson(LikeArchive instance) =>
<String, dynamic>{
'count': instance.count,
'item': instance.item,
};

View File

@@ -0,0 +1,20 @@
import 'package:json_annotation/json_annotation.dart';
part 'likes.g.dart';
@JsonSerializable()
class Likes {
@JsonKey(name: 'like_num')
int likeNum;
@JsonKey(name: 'skr_tip')
String? skrTip;
Likes({
required this.likeNum,
this.skrTip,
});
factory Likes.fromJson(Map<String, dynamic> json) => _$LikesFromJson(json);
Map<String, dynamic> toJson() => _$LikesToJson(this);
}

View File

@@ -0,0 +1,17 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'likes.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Likes _$LikesFromJson(Map<String, dynamic> json) => Likes(
likeNum: (json['like_num'] as num?)?.toInt() ?? 0,
skrTip: json['skr_tip'] as String?,
);
Map<String, dynamic> _$LikesToJson(Likes instance) => <String, dynamic>{
'like_num': instance.likeNum,
'skr_tip': instance.skrTip,
};

View File

@@ -0,0 +1,29 @@
import 'package:json_annotation/json_annotation.dart';
part 'nameplate.g.dart';
@JsonSerializable()
class Nameplate {
int? nid;
String? name;
String? image;
@JsonKey(name: 'image_small')
String? imageSmall;
String? level;
String? condition;
Nameplate({
this.nid,
this.name,
this.image,
this.imageSmall,
this.level,
this.condition,
});
factory Nameplate.fromJson(Map<String, dynamic> json) {
return _$NameplateFromJson(json);
}
Map<String, dynamic> toJson() => _$NameplateToJson(this);
}

View File

@@ -0,0 +1,25 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'nameplate.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Nameplate _$NameplateFromJson(Map<String, dynamic> json) => Nameplate(
nid: (json['nid'] as num?)?.toInt(),
name: json['name'] as String?,
image: json['image'] as String?,
imageSmall: json['image_small'] as String?,
level: json['level'] as String?,
condition: json['condition'] as String?,
);
Map<String, dynamic> _$NameplateToJson(Nameplate instance) => <String, dynamic>{
'nid': instance.nid,
'name': instance.name,
'image': instance.image,
'image_small': instance.imageSmall,
'level': instance.level,
'condition': instance.condition,
};

View File

@@ -0,0 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
part 'nft_certificate.g.dart';
@JsonSerializable()
class NftCertificate {
@JsonKey(name: 'detail_url')
String? detailUrl;
NftCertificate({this.detailUrl});
factory NftCertificate.fromJson(Map<String, dynamic> json) {
return _$NftCertificateFromJson(json);
}
Map<String, dynamic> toJson() => _$NftCertificateToJson(this);
}

View File

@@ -0,0 +1,17 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'nft_certificate.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
NftCertificate _$NftCertificateFromJson(Map<String, dynamic> json) =>
NftCertificate(
detailUrl: json['detail_url'] as String?,
);
Map<String, dynamic> _$NftCertificateToJson(NftCertificate instance) =>
<String, dynamic>{
'detail_url': instance.detailUrl,
};

View File

@@ -0,0 +1,14 @@
import 'package:json_annotation/json_annotation.dart';
part 'night.g.dart';
@JsonSerializable()
class Night {
String? argb;
Night({this.argb});
factory Night.fromJson(Map<String, dynamic> json) => _$NightFromJson(json);
Map<String, dynamic> toJson() => _$NightToJson(this);
}

View File

@@ -0,0 +1,15 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'night.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Night _$NightFromJson(Map<String, dynamic> json) => Night(
argb: json['argb'] as String?,
);
Map<String, dynamic> _$NightToJson(Night instance) => <String, dynamic>{
'argb': instance.argb,
};

View File

@@ -0,0 +1,29 @@
import 'package:json_annotation/json_annotation.dart';
part 'official_verify.g.dart';
@JsonSerializable()
class OfficialVerify {
int? type;
String? desc;
int? role;
String? title;
String? icon;
@JsonKey(name: 'splice_title')
String? spliceTitle;
OfficialVerify({
this.type,
this.desc,
this.role,
this.title,
this.icon,
this.spliceTitle,
});
factory OfficialVerify.fromJson(Map<String, dynamic> json) {
return _$OfficialVerifyFromJson(json);
}
Map<String, dynamic> toJson() => _$OfficialVerifyToJson(this);
}

View File

@@ -0,0 +1,27 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'official_verify.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
OfficialVerify _$OfficialVerifyFromJson(Map<String, dynamic> json) =>
OfficialVerify(
type: (json['type'] as num?)?.toInt(),
desc: json['desc'] as String?,
role: (json['role'] as num?)?.toInt(),
title: json['title'] as String?,
icon: json['icon'] as String?,
spliceTitle: json['splice_title'] as String?,
);
Map<String, dynamic> _$OfficialVerifyToJson(OfficialVerify instance) =>
<String, dynamic>{
'type': instance.type,
'desc': instance.desc,
'role': instance.role,
'title': instance.title,
'icon': instance.icon,
'splice_title': instance.spliceTitle,
};

View File

@@ -0,0 +1,15 @@
import 'package:json_annotation/json_annotation.dart';
part 'order.g.dart';
@JsonSerializable()
class Order {
String? title;
String? value;
Order({this.title, this.value});
factory Order.fromJson(Map<String, dynamic> json) => _$OrderFromJson(json);
Map<String, dynamic> toJson() => _$OrderToJson(this);
}

View File

@@ -0,0 +1,17 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'order.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
Order _$OrderFromJson(Map<String, dynamic> json) => Order(
title: json['title'] as String?,
value: json['value'] as String?,
);
Map<String, dynamic> _$OrderToJson(Order instance) => <String, dynamic>{
'title': instance.title,
'value': instance.value,
};

Some files were not shown because too many files have changed in this diff Show More