fac-shared-db 1.6.0 → 1.7.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.
package/README.md CHANGED
@@ -33,6 +33,7 @@ O script `prepare` compila o TypeScript automaticamente após `npm install`.
33
33
  | `AcaoMarcadaModel` | `acaomarcadas` | Ação escalada no canal de escalação (participantes, escalados, resultado) |
34
34
  | `AcoesConfigModel` | `acoesconfigs` | Singleton: ações disponíveis + calendário semanal |
35
35
  | `AdvertenciaModel` | `advertencias` | Advertências aplicadas a membros (nível, tipo, vencimento) |
36
+ | `BaqueMarcadoModel` | `baquesmarcados` (override explícito) | Baque marcado por uma facção contra outra, dentro da mesma cidade |
36
37
  | `AntiGrabberConfigModel` | `antigrabberconfigs` | Singleton: config do anti-spam de anexos |
37
38
  | `BindsRoupaConfigModel` | `bindsroupaconfigs` | Singleton: grupos de binds de roupa por cargo |
38
39
  | `BlacklistModel` | `blacklist` (override explícito) | Banimento de jogadores, com TTL automático |
@@ -0,0 +1,155 @@
1
+ import mongoose, { type Document } from "mongoose";
2
+ /**
3
+ * Registro de um baque marcado por uma facção contra outra, dentro da mesma
4
+ * cidade. Salvo pelo bot da facção desafiadora (ex: fac-assist-bot) — lido
5
+ * depois pelo self-bot (fac-helper-bot) pra anunciar no canal MARCAR_BAQUE
6
+ * da Cidade (ver Cidade.canais em fac-shared-db).
7
+ */
8
+ export interface IBaqueMarcado extends Document {
9
+ /** Nome da facção desafiada (Cidade.faccoes[].nome) */
10
+ baqueContraNome: string;
11
+ /** Cargo Discord da facção desafiada */
12
+ baqueContraCargoId: string;
13
+ /** Nome da facção desafiadora — sempre a facção dona do servidor que solicitou */
14
+ desafiadorNome: string;
15
+ /** Cargo Discord da facção desafiadora */
16
+ desafiadorCargoId: string;
17
+ /** Data do baque (dd/mm) */
18
+ data: string;
19
+ /** Hora do baque (hh:mm) */
20
+ hora: string;
21
+ /** Tipo de aposta */
22
+ aposta: string;
23
+ /** Discord ID de quem marcou */
24
+ criadoPor: string;
25
+ criadoEm: Date;
26
+ /** ID da mensagem do anúncio no canal MARCAR_BAQUE, depois de enviado pelo self-bot */
27
+ mensagemId?: string;
28
+ /** "pendente" até o self-bot anunciar no canal da cidade; "enviado" depois */
29
+ status: "pendente" | "enviado";
30
+ }
31
+ export declare const BaqueMarcadoSchema: mongoose.Schema<IBaqueMarcado, mongoose.Model<IBaqueMarcado, any, any, any, any, any, IBaqueMarcado>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
32
+ id: string;
33
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
34
+ _id: mongoose.Types.ObjectId;
35
+ }> & {
36
+ __v: number;
37
+ }, "id"> & {
38
+ id: string;
39
+ }, {
40
+ _id?: mongoose.SchemaDefinitionProperty<mongoose.Types.ObjectId, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
41
+ id: string;
42
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
43
+ _id: mongoose.Types.ObjectId;
44
+ }> & {
45
+ __v: number;
46
+ }, "id"> & {
47
+ id: string;
48
+ }> | undefined;
49
+ data?: mongoose.SchemaDefinitionProperty<string, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
50
+ id: string;
51
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
52
+ _id: mongoose.Types.ObjectId;
53
+ }> & {
54
+ __v: number;
55
+ }, "id"> & {
56
+ id: string;
57
+ }> | undefined;
58
+ hora?: mongoose.SchemaDefinitionProperty<string, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
59
+ id: string;
60
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
61
+ _id: mongoose.Types.ObjectId;
62
+ }> & {
63
+ __v: number;
64
+ }, "id"> & {
65
+ id: string;
66
+ }> | undefined;
67
+ criadoPor?: mongoose.SchemaDefinitionProperty<string, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
68
+ id: string;
69
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
70
+ _id: mongoose.Types.ObjectId;
71
+ }> & {
72
+ __v: number;
73
+ }, "id"> & {
74
+ id: string;
75
+ }> | undefined;
76
+ mensagemId?: mongoose.SchemaDefinitionProperty<string | undefined, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
77
+ id: string;
78
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
79
+ _id: mongoose.Types.ObjectId;
80
+ }> & {
81
+ __v: number;
82
+ }, "id"> & {
83
+ id: string;
84
+ }> | undefined;
85
+ criadoEm?: mongoose.SchemaDefinitionProperty<Date, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
86
+ id: string;
87
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
88
+ _id: mongoose.Types.ObjectId;
89
+ }> & {
90
+ __v: number;
91
+ }, "id"> & {
92
+ id: string;
93
+ }> | undefined;
94
+ baqueContraNome?: mongoose.SchemaDefinitionProperty<string, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
95
+ id: string;
96
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
97
+ _id: mongoose.Types.ObjectId;
98
+ }> & {
99
+ __v: number;
100
+ }, "id"> & {
101
+ id: string;
102
+ }> | undefined;
103
+ baqueContraCargoId?: mongoose.SchemaDefinitionProperty<string, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
104
+ id: string;
105
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
106
+ _id: mongoose.Types.ObjectId;
107
+ }> & {
108
+ __v: number;
109
+ }, "id"> & {
110
+ id: string;
111
+ }> | undefined;
112
+ desafiadorNome?: mongoose.SchemaDefinitionProperty<string, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
113
+ id: string;
114
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
115
+ _id: mongoose.Types.ObjectId;
116
+ }> & {
117
+ __v: number;
118
+ }, "id"> & {
119
+ id: string;
120
+ }> | undefined;
121
+ desafiadorCargoId?: mongoose.SchemaDefinitionProperty<string, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
122
+ id: string;
123
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
124
+ _id: mongoose.Types.ObjectId;
125
+ }> & {
126
+ __v: number;
127
+ }, "id"> & {
128
+ id: string;
129
+ }> | undefined;
130
+ aposta?: mongoose.SchemaDefinitionProperty<string, IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
131
+ id: string;
132
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
133
+ _id: mongoose.Types.ObjectId;
134
+ }> & {
135
+ __v: number;
136
+ }, "id"> & {
137
+ id: string;
138
+ }> | undefined;
139
+ status?: mongoose.SchemaDefinitionProperty<"pendente" | "enviado", IBaqueMarcado, mongoose.Document<unknown, {}, IBaqueMarcado, {
140
+ id: string;
141
+ }, mongoose.DefaultSchemaOptions> & Omit<IBaqueMarcado & Required<{
142
+ _id: mongoose.Types.ObjectId;
143
+ }> & {
144
+ __v: number;
145
+ }, "id"> & {
146
+ id: string;
147
+ }> | undefined;
148
+ }, IBaqueMarcado>;
149
+ export declare const BaqueMarcadoModel: mongoose.Model<IBaqueMarcado, {}, {}, {}, mongoose.Document<unknown, {}, IBaqueMarcado, {}, mongoose.DefaultSchemaOptions> & IBaqueMarcado & Required<{
150
+ _id: mongoose.Types.ObjectId;
151
+ }> & {
152
+ __v: number;
153
+ } & {
154
+ id: string;
155
+ }, any, IBaqueMarcado>;
@@ -0,0 +1,15 @@
1
+ import mongoose, { Schema } from "mongoose";
2
+ export const BaqueMarcadoSchema = new Schema({
3
+ baqueContraNome: { type: String, required: true },
4
+ baqueContraCargoId: { type: String, required: true },
5
+ desafiadorNome: { type: String, required: true },
6
+ desafiadorCargoId: { type: String, required: true },
7
+ data: { type: String, required: true },
8
+ hora: { type: String, required: true },
9
+ aposta: { type: String, required: true },
10
+ criadoPor: { type: String, required: true, index: true },
11
+ criadoEm: { type: Date, default: Date.now },
12
+ mensagemId: { type: String },
13
+ status: { type: String, default: "pendente", enum: ["pendente", "enviado"], index: true },
14
+ }, { collection: "baquesmarcados" });
15
+ export const BaqueMarcadoModel = mongoose.model("BaqueMarcado", BaqueMarcadoSchema);
@@ -4,6 +4,8 @@ export { AcoesConfigModel, AcoesConfigSchema } from "./AcoesConfig.js";
4
4
  export type { IAcoesConfig } from "./AcoesConfig.js";
5
5
  export { AdvertenciaModel } from "./Advertencia.js";
6
6
  export type { IAdvertencia, TipoAdvertencia } from "./Advertencia.js";
7
+ export { BaqueMarcadoModel, BaqueMarcadoSchema } from "./BaqueMarcado.js";
8
+ export type { IBaqueMarcado } from "./BaqueMarcado.js";
7
9
  export { AntiGrabberConfigModel } from "./AntiGrabberConfig.js";
8
10
  export type { IAntiGrabberConfig } from "./AntiGrabberConfig.js";
9
11
  export { BindsRoupaConfigModel } from "./BindsRoupaConfig.js";
@@ -1,6 +1,7 @@
1
1
  export { AcaoMarcadaModel, AcaoMarcadaSchema } from "./AcaoMarcada.js";
2
2
  export { AcoesConfigModel, AcoesConfigSchema } from "./AcoesConfig.js";
3
3
  export { AdvertenciaModel } from "./Advertencia.js";
4
+ export { BaqueMarcadoModel, BaqueMarcadoSchema } from "./BaqueMarcado.js";
4
5
  export { AntiGrabberConfigModel } from "./AntiGrabberConfig.js";
5
6
  export { BindsRoupaConfigModel } from "./BindsRoupaConfig.js";
6
7
  export { BlacklistModel, BlacklistSchema } from "./Blacklist.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fac-shared-db",
3
- "version": "1.6.0",
3
+ "version": "1.7.0",
4
4
  "type": "module",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",