fac-shared-db 1.7.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -25,8 +25,13 @@ export interface IBaqueMarcado extends Document {
|
|
|
25
25
|
criadoEm: Date;
|
|
26
26
|
/** ID da mensagem do anúncio no canal MARCAR_BAQUE, depois de enviado pelo self-bot */
|
|
27
27
|
mensagemId?: string;
|
|
28
|
-
/** "pendente" até o self-bot anunciar no canal da cidade; "enviado" depois */
|
|
29
|
-
status: "pendente" | "enviado";
|
|
28
|
+
/** "pendente" até o self-bot anunciar no canal da cidade; "enviado" até a facção desafiada confirmar; "confirmado" depois */
|
|
29
|
+
status: "pendente" | "enviado" | "confirmado";
|
|
30
|
+
/** Discord ID de quem confirmou (reação ou resposta) — sempre alguém com o cargo da facção desafiada */
|
|
31
|
+
confirmadoPor?: string;
|
|
32
|
+
/** Como foi confirmado */
|
|
33
|
+
confirmadoVia?: "reacao" | "resposta";
|
|
34
|
+
confirmadoEm?: Date;
|
|
30
35
|
}
|
|
31
36
|
export declare const BaqueMarcadoSchema: mongoose.Schema<IBaqueMarcado, mongoose.Model<IBaqueMarcado, any, any, any, any, any, IBaqueMarcado>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
|
|
32
37
|
id: string;
|
|
@@ -136,7 +141,34 @@ export declare const BaqueMarcadoSchema: mongoose.Schema<IBaqueMarcado, mongoose
|
|
|
136
141
|
}, "id"> & {
|
|
137
142
|
id: string;
|
|
138
143
|
}> | undefined;
|
|
139
|
-
status?: mongoose.SchemaDefinitionProperty<"pendente" | "enviado", IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
|
|
144
|
+
status?: mongoose.SchemaDefinitionProperty<"pendente" | "enviado" | "confirmado", IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
|
|
145
|
+
id: string;
|
|
146
|
+
}, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
|
|
147
|
+
_id: mongoose.Types.ObjectId;
|
|
148
|
+
}> & {
|
|
149
|
+
__v: number;
|
|
150
|
+
}, "id"> & {
|
|
151
|
+
id: string;
|
|
152
|
+
}> | undefined;
|
|
153
|
+
confirmadoPor?: mongoose.SchemaDefinitionProperty<string | undefined, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
|
|
154
|
+
id: string;
|
|
155
|
+
}, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
|
|
156
|
+
_id: mongoose.Types.ObjectId;
|
|
157
|
+
}> & {
|
|
158
|
+
__v: number;
|
|
159
|
+
}, "id"> & {
|
|
160
|
+
id: string;
|
|
161
|
+
}> | undefined;
|
|
162
|
+
confirmadoVia?: mongoose.SchemaDefinitionProperty<"reacao" | "resposta" | undefined, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
|
|
163
|
+
id: string;
|
|
164
|
+
}, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
|
|
165
|
+
_id: mongoose.Types.ObjectId;
|
|
166
|
+
}> & {
|
|
167
|
+
__v: number;
|
|
168
|
+
}, "id"> & {
|
|
169
|
+
id: string;
|
|
170
|
+
}> | undefined;
|
|
171
|
+
confirmadoEm?: mongoose.SchemaDefinitionProperty<Date | undefined, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
|
|
140
172
|
id: string;
|
|
141
173
|
}, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
|
|
142
174
|
_id: mongoose.Types.ObjectId;
|
|
@@ -10,6 +10,9 @@ export const BaqueMarcadoSchema = new Schema({
|
|
|
10
10
|
criadoPor: { type: String, required: true, index: true },
|
|
11
11
|
criadoEm: { type: Date, default: Date.now },
|
|
12
12
|
mensagemId: { type: String },
|
|
13
|
-
status: { type: String, default: "pendente", enum: ["pendente", "enviado"], index: true },
|
|
13
|
+
status: { type: String, default: "pendente", enum: ["pendente", "enviado", "confirmado"], index: true },
|
|
14
|
+
confirmadoPor: { type: String },
|
|
15
|
+
confirmadoVia: { type: String, enum: ["reacao", "resposta"] },
|
|
16
|
+
confirmadoEm: { type: Date },
|
|
14
17
|
}, { collection: "baquesmarcados" });
|
|
15
18
|
export const BaqueMarcadoModel = mongoose.model("BaqueMarcado", BaqueMarcadoSchema);
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import mongoose, { type Document } from "mongoose";
|
|
2
|
+
/**
|
|
3
|
+
* Cópia somente-leitura, no banco do PRÓPRIO tenant, do que ele precisa saber
|
|
4
|
+
* da Cidade (fac-shared-db) — catálogo de facções e qual é a própria facção.
|
|
5
|
+
* Escrita pelo fac-control-bot (dono da Cidade) sempre que o catálogo ou o
|
|
6
|
+
* vínculo Servidor→Cidade muda; o tenant só lê. Existe pra evitar que cada
|
|
7
|
+
* bot consumidor (ex: fac-assist-bot) precise abrir uma connection cross-db
|
|
8
|
+
* pro banco do fac-control-bot só pra ler isso. Singleton via configId fixo,
|
|
9
|
+
* mesmo padrão de MarcarAcaoGuildConfig/PedirRecGuildConfig.
|
|
10
|
+
*/
|
|
11
|
+
export interface ICidadeCacheFaccao {
|
|
12
|
+
nome: string;
|
|
13
|
+
cargoFaccaoId: string;
|
|
14
|
+
}
|
|
15
|
+
export interface ICidadeCache extends Document {
|
|
16
|
+
configId: string;
|
|
17
|
+
cidadeNome: string;
|
|
18
|
+
/** Catálogo completo de facções da cidade (inclui a própria) */
|
|
19
|
+
faccoes: ICidadeCacheFaccao[];
|
|
20
|
+
/** Nome da própria facção dentro do catálogo (Servidor.faccaoNome) */
|
|
21
|
+
minhaFaccaoNome?: string;
|
|
22
|
+
/** Cargo Discord da própria facção — denormalizado pra não precisar buscar em `faccoes` */
|
|
23
|
+
minhaFaccaoCargoId?: string;
|
|
24
|
+
atualizadoEm: Date;
|
|
25
|
+
}
|
|
26
|
+
export declare const CidadeCacheSchema: mongoose.Schema<ICidadeCache, mongoose.Model<ICidadeCache, any, any, any, any, any, ICidadeCache>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, ICidadeCache, mongoose.Document<unknown, {}, ICidadeCache, {
|
|
27
|
+
id: string;
|
|
28
|
+
}, mongoose.DefaultSchemaOptions> & Omit<ICidadeCache & Required<{
|
|
29
|
+
_id: mongoose.Types.ObjectId;
|
|
30
|
+
}> & {
|
|
31
|
+
__v: number;
|
|
32
|
+
}, "id"> & {
|
|
33
|
+
id: string;
|
|
34
|
+
}, {
|
|
35
|
+
_id?: mongoose.SchemaDefinitionProperty<mongoose.Types.ObjectId, ICidadeCache, mongoose.Document<unknown, {}, ICidadeCache, {
|
|
36
|
+
id: string;
|
|
37
|
+
}, mongoose.DefaultSchemaOptions> & Omit<ICidadeCache & Required<{
|
|
38
|
+
_id: mongoose.Types.ObjectId;
|
|
39
|
+
}> & {
|
|
40
|
+
__v: number;
|
|
41
|
+
}, "id"> & {
|
|
42
|
+
id: string;
|
|
43
|
+
}> | undefined;
|
|
44
|
+
configId?: mongoose.SchemaDefinitionProperty<string, ICidadeCache, mongoose.Document<unknown, {}, ICidadeCache, {
|
|
45
|
+
id: string;
|
|
46
|
+
}, mongoose.DefaultSchemaOptions> & Omit<ICidadeCache & Required<{
|
|
47
|
+
_id: mongoose.Types.ObjectId;
|
|
48
|
+
}> & {
|
|
49
|
+
__v: number;
|
|
50
|
+
}, "id"> & {
|
|
51
|
+
id: string;
|
|
52
|
+
}> | undefined;
|
|
53
|
+
atualizadoEm?: mongoose.SchemaDefinitionProperty<Date, ICidadeCache, mongoose.Document<unknown, {}, ICidadeCache, {
|
|
54
|
+
id: string;
|
|
55
|
+
}, mongoose.DefaultSchemaOptions> & Omit<ICidadeCache & Required<{
|
|
56
|
+
_id: mongoose.Types.ObjectId;
|
|
57
|
+
}> & {
|
|
58
|
+
__v: number;
|
|
59
|
+
}, "id"> & {
|
|
60
|
+
id: string;
|
|
61
|
+
}> | undefined;
|
|
62
|
+
faccoes?: mongoose.SchemaDefinitionProperty<ICidadeCacheFaccao[], ICidadeCache, mongoose.Document<unknown, {}, ICidadeCache, {
|
|
63
|
+
id: string;
|
|
64
|
+
}, mongoose.DefaultSchemaOptions> & Omit<ICidadeCache & Required<{
|
|
65
|
+
_id: mongoose.Types.ObjectId;
|
|
66
|
+
}> & {
|
|
67
|
+
__v: number;
|
|
68
|
+
}, "id"> & {
|
|
69
|
+
id: string;
|
|
70
|
+
}> | undefined;
|
|
71
|
+
cidadeNome?: mongoose.SchemaDefinitionProperty<string, ICidadeCache, mongoose.Document<unknown, {}, ICidadeCache, {
|
|
72
|
+
id: string;
|
|
73
|
+
}, mongoose.DefaultSchemaOptions> & Omit<ICidadeCache & Required<{
|
|
74
|
+
_id: mongoose.Types.ObjectId;
|
|
75
|
+
}> & {
|
|
76
|
+
__v: number;
|
|
77
|
+
}, "id"> & {
|
|
78
|
+
id: string;
|
|
79
|
+
}> | undefined;
|
|
80
|
+
minhaFaccaoNome?: mongoose.SchemaDefinitionProperty<string | undefined, ICidadeCache, mongoose.Document<unknown, {}, ICidadeCache, {
|
|
81
|
+
id: string;
|
|
82
|
+
}, mongoose.DefaultSchemaOptions> & Omit<ICidadeCache & Required<{
|
|
83
|
+
_id: mongoose.Types.ObjectId;
|
|
84
|
+
}> & {
|
|
85
|
+
__v: number;
|
|
86
|
+
}, "id"> & {
|
|
87
|
+
id: string;
|
|
88
|
+
}> | undefined;
|
|
89
|
+
minhaFaccaoCargoId?: mongoose.SchemaDefinitionProperty<string | undefined, ICidadeCache, mongoose.Document<unknown, {}, ICidadeCache, {
|
|
90
|
+
id: string;
|
|
91
|
+
}, mongoose.DefaultSchemaOptions> & Omit<ICidadeCache & Required<{
|
|
92
|
+
_id: mongoose.Types.ObjectId;
|
|
93
|
+
}> & {
|
|
94
|
+
__v: number;
|
|
95
|
+
}, "id"> & {
|
|
96
|
+
id: string;
|
|
97
|
+
}> | undefined;
|
|
98
|
+
}, ICidadeCache>;
|
|
99
|
+
export declare const CidadeCacheModel: mongoose.Model<ICidadeCache, {}, {}, {}, mongoose.Document<unknown, {}, ICidadeCache, {}, mongoose.DefaultSchemaOptions> & ICidadeCache & Required<{
|
|
100
|
+
_id: mongoose.Types.ObjectId;
|
|
101
|
+
}> & {
|
|
102
|
+
__v: number;
|
|
103
|
+
} & {
|
|
104
|
+
id: string;
|
|
105
|
+
}, any, ICidadeCache>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import mongoose, { Schema } from "mongoose";
|
|
2
|
+
const CidadeCacheFaccaoSchema = new Schema({
|
|
3
|
+
nome: { type: String, required: true },
|
|
4
|
+
cargoFaccaoId: { type: String, required: true },
|
|
5
|
+
}, { _id: false });
|
|
6
|
+
export const CidadeCacheSchema = new Schema({
|
|
7
|
+
configId: { type: String, default: "main", unique: true },
|
|
8
|
+
cidadeNome: { type: String, required: true },
|
|
9
|
+
faccoes: { type: [CidadeCacheFaccaoSchema], default: [] },
|
|
10
|
+
minhaFaccaoNome: { type: String },
|
|
11
|
+
minhaFaccaoCargoId: { type: String },
|
|
12
|
+
atualizadoEm: { type: Date, default: Date.now },
|
|
13
|
+
});
|
|
14
|
+
export const CidadeCacheModel = mongoose.model("CidadeCache", CidadeCacheSchema);
|
package/build/models/index.d.ts
CHANGED
|
@@ -22,6 +22,8 @@ export { CargoConfigModel } from "./CargoConfig.js";
|
|
|
22
22
|
export type { ICargoConfig } from "./CargoConfig.js";
|
|
23
23
|
export { CidadeModel, CidadeSchema } from "./Cidade.js";
|
|
24
24
|
export type { ICidade, ICidadeCanal, ICidadeFaccao } from "./Cidade.js";
|
|
25
|
+
export { CidadeCacheModel, CidadeCacheSchema } from "./CidadeCache.js";
|
|
26
|
+
export type { ICidadeCache, ICidadeCacheFaccao } from "./CidadeCache.js";
|
|
25
27
|
export { CraftConfigModel } from "./CraftConfig.js";
|
|
26
28
|
export type { ICraftConfig } from "./CraftConfig.js";
|
|
27
29
|
export { FarmModel } from "./Farm.js";
|
package/build/models/index.js
CHANGED
|
@@ -10,6 +10,7 @@ export { Caixa2ItemModel, Caixa2ItemSchema } from "./Caixa2Item.js";
|
|
|
10
10
|
export { CanalConfigModel } from "./CanalConfig.js";
|
|
11
11
|
export { CargoConfigModel } from "./CargoConfig.js";
|
|
12
12
|
export { CidadeModel, CidadeSchema } from "./Cidade.js";
|
|
13
|
+
export { CidadeCacheModel, CidadeCacheSchema } from "./CidadeCache.js";
|
|
13
14
|
export { CraftConfigModel } from "./CraftConfig.js";
|
|
14
15
|
export { FarmModel } from "./Farm.js";
|
|
15
16
|
export { FarmValidacaoStateModel } from "./FarmValidacaoState.js";
|