156 lines
4.0 KiB
JavaScript
156 lines
4.0 KiB
JavaScript
// Metro module 1922 (f1923).
|
|
import { Table, TableTransaction } from "./TableTransaction";
|
|
import { Ordering, ConflictOptions } from "./Module1914";
|
|
class MessageDao {
|
|
constructor(a0, a1, a2, r8 = true) {
|
|
this.originalPrefix = a0;
|
|
this.table = new Table([a0], a1, a2, r8);
|
|
}
|
|
get prefix() {
|
|
return this.table.prefix;
|
|
}
|
|
withoutLogging() {
|
|
const originalPrefix = this.originalPrefix;
|
|
const tableId = this.table.tableId;
|
|
const database = this.table.database;
|
|
const r17 = {
|
|
__proto__: MessageDao.prototype
|
|
};
|
|
r17.originalPrefix = originalPrefix;
|
|
r17.table = new Table([originalPrefix], tableId, database, false);
|
|
return r17;
|
|
}
|
|
get(a0, a1, a2) {
|
|
return this.table.get([a0, a1, a2.padStart(19, "0")]);
|
|
}
|
|
getLatest(a0, a1, a2) {
|
|
return this.table.getMany([a0, a1], {
|
|
ordering: Ordering.Descending,
|
|
limit: a2
|
|
});
|
|
}
|
|
getRange(a0, a1, a2, a3, a4) {
|
|
return this.table.getRange([a0, a1, a2.padStart(19, "0")], [a0, a1, a3.padStart(19, "0")], a4);
|
|
}
|
|
getMostRecents(a0) {
|
|
return this.table.messages.getLatest(a0);
|
|
}
|
|
put(a0, a1, a2, r5 = ConflictOptions.Replace) {
|
|
const table = this.table;
|
|
const generation = a2.id.padStart(19, "0");
|
|
return table.put({
|
|
key: [a0, a1, generation],
|
|
data: a2,
|
|
generation
|
|
}, r5);
|
|
}
|
|
putAll(c13340_0, c13340_1, a2, r4 = ConflictOptions.Replace) {
|
|
return this.table.putAll(a2.map((item) => {
|
|
const generation = item.id.padStart(19, "0");
|
|
return {
|
|
key: [c13340_0, c13340_1, generation],
|
|
data: item,
|
|
generation
|
|
};
|
|
}), r4);
|
|
}
|
|
deleteAll() {
|
|
return this.table.delete();
|
|
}
|
|
deleteGuild(a0) {
|
|
return this.table.delete([a0]);
|
|
}
|
|
deleteChannel(a0, a1) {
|
|
return this.table.delete([a0, a1]);
|
|
}
|
|
deleteMessage(a0, a1, a2) {
|
|
return this.table.delete([a0, a1, a2.padStart(19, "0")]);
|
|
}
|
|
transaction(c13341_0, a1) {
|
|
return this.table.transaction((a0) => {
|
|
const r10 = {
|
|
__proto__: MessageDaoTransaction.prototype
|
|
};
|
|
r10.transaction = a0;
|
|
return c13341_0(r10);
|
|
}, a1);
|
|
}
|
|
upgradeTransaction(a0) {
|
|
const transaction2 = this.table.upgradeTransaction(a0);
|
|
const r11 = {
|
|
__proto__: MessageDaoTransaction.prototype
|
|
};
|
|
r11.transaction = transaction2;
|
|
return r11;
|
|
}
|
|
}
|
|
class MessageDaoTransaction {
|
|
constructor(a0) {
|
|
this.transaction = a0;
|
|
}
|
|
static fromTableTransaction(a0) {
|
|
const r7 = {
|
|
__proto__: MessageDaoTransaction.prototype
|
|
};
|
|
r7.transaction = a0;
|
|
return r7;
|
|
}
|
|
static fromDatabaseTransaction(a0, a1, a2) {
|
|
const tableTransaction = new TableTransaction(a0, a1, a2);
|
|
const r20 = {
|
|
__proto__: MessageDaoTransaction.prototype
|
|
};
|
|
r20.transaction = tableTransaction;
|
|
return r20;
|
|
}
|
|
put(a0, a1, a2, r5 = ConflictOptions.Replace) {
|
|
const transaction2 = this.transaction;
|
|
const generation = a2.id.padStart(19, "0");
|
|
transaction2.put({
|
|
key: [a0, a1, generation],
|
|
data: a2,
|
|
generation
|
|
}, r5);
|
|
}
|
|
putAll(c13342_0, c13342_1, a2, r4 = ConflictOptions.Replace) {
|
|
this.transaction.putAll(a2.map((item) => {
|
|
const generation = item.id.padStart(19, "0");
|
|
return {
|
|
key: [c13342_0, c13342_1, generation],
|
|
data: item,
|
|
generation
|
|
};
|
|
}), r4);
|
|
}
|
|
replaceChannel(a0, a1, a2) {
|
|
this.deleteChannel(a0, a1);
|
|
this.putAll(a0, a1, a2);
|
|
}
|
|
deleteAll() {
|
|
this.transaction.delete();
|
|
}
|
|
deleteGuild(a0) {
|
|
this.transaction.delete([a0]);
|
|
}
|
|
deleteChannel(a0, a1) {
|
|
this.transaction.delete([a0, a1]);
|
|
}
|
|
deleteMessage(a0, a1, a2) {
|
|
this.transaction.delete([a0, a1, a2.padStart(19, "0")]);
|
|
}
|
|
trimOrphans(a0) {
|
|
this.transaction.messages.trimOrphans(a0);
|
|
}
|
|
trimChannel(a0, a1, a2) {
|
|
this.transaction.messages.trimChannel([a0, a1], a2);
|
|
}
|
|
trimChannelsIn(a0, a1) {
|
|
this.transaction.messages.trimChannelsIn(a0, a1);
|
|
}
|
|
trimChannelsNotIn(a0, a1) {
|
|
this.transaction.messages.trimChannelsNotIn(a0, a1);
|
|
}
|
|
}
|
|
export { MessageDao };
|
|
export { MessageDaoTransaction };
|