Files
discord-decomp/_bundle/Module6288.js
T
2026-11-01 12:12:55 +02:00

189 lines
5.2 KiB
JavaScript

// Metro module 6288 (f6289).
import { MessageType, MESSAGE_TYPE, reflectionMergePartial, UnknownFieldHandler, WireType } from "./Module1307";
import { ThemeAwareAsset } from "./Module6278";
import { CTAButton } from "./Module6270";
import { LocalizedString } from "./Module6268";
import { HelpArticle } from "./Module6269";
import { $callWithNewTarget } from "../_hermes/prelude";
function $mk78232($env) {
return () => ThemeAwareAsset;
}
function $mk78233($env) {
return () => CTAButton;
}
function $mk78234($env) {
return () => LocalizedString;
}
function $mk78235($env) {
return () => LocalizedString;
}
function $mk78236($env) {
return () => HelpArticle;
}
let c4004_3;
let env4004;
const r3 = env4004 = {};
class BillingSettingsBanner$Type extends MessageType {
constructor() {
const r1 = env4004;
const r2 = [{
no: 1,
name: "header",
kind: "scalar",
T: 9
}, {
no: 2,
name: "body",
kind: "scalar",
T: 9
}, {
no: 3,
name: "asset",
kind: "message",
T: $mk78232(r1)
}, {
no: 4,
name: "button",
kind: "message",
T: $mk78233(r1)
}, {
no: 5,
name: "header_localized",
kind: "message",
T: $mk78234(r1)
}, {
no: 6,
name: "body_localized",
kind: "message",
T: $mk78235(r1)
}, {
no: 7,
name: "help_article",
kind: "message",
T: $mk78236(r1)
}];
super("discord_protos.premium_marketing.v1.BillingSettingsBanner", r2);
}
create(a0) {
const r1 = {
header: "",
body: ""
};
globalThis.globalThis.Object.defineProperty(r1, MESSAGE_TYPE, {
enumerable: false,
value: this
});
if (a0 !== void 0) {
reflectionMergePartial(this, r1, a0);
}
return r1;
}
internalBinaryRead(a0, a1, a2, a3) {
const r10 = a3 == null ? this.create() : a3;
const r13 = a0.pos + a1;
while (a0.pos < r13) {
const [r24, r23] = a0.tag();
if (r24 === 1) {
r10.header = a0.string();
} else if (r24 === 2) {
r10.body = a0.string();
} else if (r24 === 3) {
r10.asset = ThemeAwareAsset.internalBinaryRead(a0, a0.uint32(), a2, r10.asset);
} else if (r24 === 4) {
r10.button = CTAButton.internalBinaryRead(a0, a0.uint32(), a2, r10.button);
} else if (r24 === 5) {
r10.headerLocalized = LocalizedString.internalBinaryRead(a0, a0.uint32(), a2, r10.headerLocalized);
} else if (r24 === 6) {
r10.bodyLocalized = LocalizedString.internalBinaryRead(a0, a0.uint32(), a2, r10.bodyLocalized);
} else if (r24 === 7) {
r10.helpArticle = HelpArticle.internalBinaryRead(a0, a0.uint32(), a2, r10.helpArticle);
} else {
let readUnknownField = a2.readUnknownField;
if (readUnknownField === "throw") {
throw new globalThis.globalThis.Error(`Unknown field ${r24} (wire type ${r23}) for ${this.typeName}`);
}
const r39 = a0.skip(r23);
if (readUnknownField !== false) {
if (readUnknownField === true) {
readUnknownField = UnknownFieldHandler.onRead;
}
readUnknownField(this.typeName, r10, r24, r23, r39);
}
}
}
return r10;
}
internalBinaryWrite(a0, a1, a2) {
if (a0.header !== "") {
a1.tag(1, WireType.LengthDelimited).string(a0.header);
}
if (a0.body !== "") {
a1.tag(2, WireType.LengthDelimited).string(a0.body);
}
if (a0.asset) {
ThemeAwareAsset.internalBinaryWrite(a0.asset, a1.tag(3, WireType.LengthDelimited).fork(), a2).join();
}
if (a0.button) {
CTAButton.internalBinaryWrite(a0.button, a1.tag(4, WireType.LengthDelimited).fork(), a2).join();
}
if (a0.headerLocalized) {
LocalizedString.internalBinaryWrite(a0.headerLocalized, a1.tag(5, WireType.LengthDelimited).fork(), a2).join();
}
if (a0.bodyLocalized) {
LocalizedString.internalBinaryWrite(a0.bodyLocalized, a1.tag(6, WireType.LengthDelimited).fork(), a2).join();
}
if (a0.helpArticle) {
HelpArticle.internalBinaryWrite(a0.helpArticle, a1.tag(7, WireType.LengthDelimited).fork(), a2).join();
}
let writeUnknownFields = a2.writeUnknownFields;
if (writeUnknownFields !== false) {
if (writeUnknownFields == 1) {
writeUnknownFields = UnknownFieldHandler.onWrite;
}
writeUnknownFields(this.typeName, a0, a1);
}
return a1;
}
}
c4004_3 = BillingSettingsBanner$Type;
const prototypeOf = Object.getPrototypeOf(BillingSettingsBanner$Type);
const r33 = [{
no: 1,
name: "header",
kind: "scalar",
T: 9
}, {
no: 2,
name: "body",
kind: "scalar",
T: 9
}, {
no: 3,
name: "asset",
kind: "message",
T: $mk78232(r3)
}, {
no: 4,
name: "button",
kind: "message",
T: $mk78233(r3)
}, {
no: 5,
name: "header_localized",
kind: "message",
T: $mk78234(r3)
}, {
no: 6,
name: "body_localized",
kind: "message",
T: $mk78235(r3)
}, {
no: 7,
name: "help_article",
kind: "message",
T: $mk78236(r3)
}];
const r44 = Object.create(BillingSettingsBanner$Type.prototype);
const r45 = $callWithNewTarget(prototypeOf, r44, BillingSettingsBanner$Type, "discord_protos.premium_marketing.v1.BillingSettingsBanner", r33);
export const BillingSettingsBanner = r45 instanceof Object ? r45 : r44;