types-nora-api 0.0.211 → 0.0.212
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/dist/classes.d.ts +43 -18
- package/dist/classes.js +75 -43
- package/package.json +1 -1
package/dist/classes.d.ts
CHANGED
|
@@ -785,30 +785,34 @@ type ExtrairParamsDoTemplate<S extends string, Acc extends Record<string, unknow
|
|
|
785
785
|
}> : Acc;
|
|
786
786
|
type PaginaParamsDoTemplate<T extends string> = ExtrairParamsDoTemplate<T>;
|
|
787
787
|
type TemplateComParams = `${string}[[...${string}]]${string}` | `${string}[...${string}]${string}` | `${string}[${string}]${string}`;
|
|
788
|
-
type
|
|
788
|
+
type PaginaInfo = {
|
|
789
|
+
readonly label: string;
|
|
790
|
+
readonly comCabecalho?: true;
|
|
791
|
+
readonly acesso?: AcessoPagina;
|
|
792
|
+
};
|
|
793
|
+
type PaginaEstatica<T extends string> = PaginaInfo & {
|
|
789
794
|
readonly template: T;
|
|
790
795
|
readonly href: T;
|
|
791
|
-
readonly acesso?: AcessoPagina;
|
|
792
796
|
};
|
|
793
|
-
type PaginaDinamica<T extends TemplateComParams> = {
|
|
797
|
+
type PaginaDinamica<T extends TemplateComParams> = PaginaInfo & {
|
|
794
798
|
readonly template: T;
|
|
795
799
|
readonly href: (params: PaginaParamsDoTemplate<T>) => string;
|
|
796
|
-
readonly acesso?: AcessoPagina;
|
|
797
800
|
};
|
|
798
801
|
type Pagina<T extends string = string> = T extends TemplateComParams ? PaginaDinamica<Extract<T, TemplateComParams>> : PaginaEstatica<T>;
|
|
799
802
|
type PaginaParams<P extends {
|
|
800
803
|
template: string;
|
|
801
804
|
}> = PaginaParamsDoTemplate<P['template']>;
|
|
802
|
-
type Folhas<T> = T extends {
|
|
803
|
-
template: string;
|
|
804
|
-
} ? T : T extends Record<string, unknown> ? {
|
|
805
|
-
[K in keyof T]: Folhas<T[K]>;
|
|
806
|
-
}[keyof T] : never;
|
|
807
|
-
type PaginaFolha = Folhas<typeof PAGINAS>;
|
|
808
|
-
type PaginaTemplate = PaginaFolha['template'];
|
|
809
805
|
declare function montarHref(template: string, params: Record<string, unknown>): string;
|
|
810
|
-
declare function pagina<const T extends string>(template: T extends TemplateComParams ? never : T, acesso
|
|
811
|
-
|
|
806
|
+
declare function pagina<const T extends string>(template: T extends TemplateComParams ? never : T, info: Omit<PaginaInfo, 'acesso'> & {
|
|
807
|
+
acesso?: AcessoPagina;
|
|
808
|
+
} & {
|
|
809
|
+
label: string;
|
|
810
|
+
}): PaginaEstatica<T>;
|
|
811
|
+
declare function paginaDinamica<const T extends TemplateComParams>(template: T, info: Omit<PaginaInfo, 'acesso'> & {
|
|
812
|
+
acesso?: AcessoPagina;
|
|
813
|
+
} & {
|
|
814
|
+
label: string;
|
|
815
|
+
}): PaginaDinamica<T>;
|
|
812
816
|
declare const PAGINAS: {
|
|
813
817
|
readonly home: PaginaEstatica<"/">;
|
|
814
818
|
readonly acessar: PaginaEstatica<"/acessar">;
|
|
@@ -826,9 +830,11 @@ declare const PAGINAS: {
|
|
|
826
830
|
readonly gerenciarSalas: PaginaEstatica<"/jogo/admin/gerenciar-salas">;
|
|
827
831
|
};
|
|
828
832
|
readonly emJogo: PaginaEstatica<"/jogo/em-jogo">;
|
|
833
|
+
readonly label: string;
|
|
834
|
+
readonly comCabecalho?: true;
|
|
835
|
+
readonly acesso?: AcessoPagina;
|
|
829
836
|
readonly template: "/jogo";
|
|
830
837
|
readonly href: "/jogo";
|
|
831
|
-
readonly acesso?: AcessoPagina;
|
|
832
838
|
};
|
|
833
839
|
readonly linhaDoTempo: PaginaEstatica<"/linha-do-tempo">;
|
|
834
840
|
readonly minhaPagina: PaginaEstatica<"/minha-pagina">;
|
|
@@ -840,15 +846,19 @@ declare const PAGINAS: {
|
|
|
840
846
|
readonly sessao: PaginaDinamica<"/minhas-paginas/admin/sessao/[id]">;
|
|
841
847
|
readonly uploads: PaginaEstatica<"/minhas-paginas/admin/uploads">;
|
|
842
848
|
readonly variaveisAmbiente: PaginaEstatica<"/minhas-paginas/admin/variaveis-ambiente">;
|
|
849
|
+
readonly label: string;
|
|
850
|
+
readonly comCabecalho?: true;
|
|
851
|
+
readonly acesso?: AcessoPagina;
|
|
843
852
|
readonly template: "/minhas-paginas/admin";
|
|
844
853
|
readonly href: "/minhas-paginas/admin";
|
|
845
|
-
readonly acesso?: AcessoPagina;
|
|
846
854
|
};
|
|
847
855
|
readonly jogador: {
|
|
848
856
|
readonly meusPersonagens: PaginaEstatica<"/minhas-paginas/jogador/meus-personagens">;
|
|
857
|
+
readonly label: string;
|
|
858
|
+
readonly comCabecalho?: true;
|
|
859
|
+
readonly acesso?: AcessoPagina;
|
|
849
860
|
readonly template: "/minhas-paginas/jogador";
|
|
850
861
|
readonly href: "/minhas-paginas/jogador";
|
|
851
|
-
readonly acesso?: AcessoPagina;
|
|
852
862
|
};
|
|
853
863
|
readonly mestre: {
|
|
854
864
|
readonly aventura: PaginaDinamica<"/minhas-paginas/mestre/aventura/[id]">;
|
|
@@ -859,9 +869,11 @@ declare const PAGINAS: {
|
|
|
859
869
|
readonly sessoesUnicas: PaginaEstatica<"/minhas-paginas/mestre/rascunhos/sessoes-unicas">;
|
|
860
870
|
};
|
|
861
871
|
readonly sessao: PaginaDinamica<"/minhas-paginas/mestre/sessao/[id]">;
|
|
872
|
+
readonly label: string;
|
|
873
|
+
readonly comCabecalho?: true;
|
|
874
|
+
readonly acesso?: AcessoPagina;
|
|
862
875
|
readonly template: "/minhas-paginas/mestre";
|
|
863
876
|
readonly href: "/minhas-paginas/mestre";
|
|
864
|
-
readonly acesso?: AcessoPagina;
|
|
865
877
|
};
|
|
866
878
|
readonly minhasDisponibilidades: PaginaEstatica<"/minhas-paginas/minhas-disponibilidades">;
|
|
867
879
|
};
|
|
@@ -870,6 +882,19 @@ declare const PAGINAS: {
|
|
|
870
882
|
readonly sessaoAovivo: PaginaEstatica<"/sessao-aovivo">;
|
|
871
883
|
readonly sessao: PaginaDinamica<"/sessao/[id]">;
|
|
872
884
|
};
|
|
885
|
+
type Folhas<T> = T extends {
|
|
886
|
+
template: string;
|
|
887
|
+
} ? T : T extends Record<string, unknown> ? {
|
|
888
|
+
[K in keyof T]: Folhas<T[K]>;
|
|
889
|
+
}[keyof T] : never;
|
|
890
|
+
type PaginaFolha = Folhas<typeof PAGINAS>;
|
|
891
|
+
type PaginaTemplate = PaginaFolha['template'];
|
|
892
|
+
declare const INFO_POR_TEMPLATE: Readonly<Record<PaginaTemplate, {
|
|
893
|
+
label: string;
|
|
894
|
+
comCabecalho: boolean;
|
|
895
|
+
acesso?: AcessoPagina;
|
|
896
|
+
}>>;
|
|
897
|
+
declare const ACESSO_POR_TEMPLATE: Readonly<Record<PaginaTemplate, AcessoPagina | undefined>>;
|
|
873
898
|
interface MensagemChatRecebida {
|
|
874
899
|
salaId: string;
|
|
875
900
|
idUsuario: number;
|
|
@@ -1422,4 +1447,4 @@ declare const Eventos_EnviaERecebe: {
|
|
|
1422
1447
|
};
|
|
1423
1448
|
};
|
|
1424
1449
|
};
|
|
1425
|
-
export { CAPACIDADES, IPermissoesEstado, PermissoesEstadoDto, IPermissoesItem, PermissoesItemDto, IPermissoesUsuario, PermissoesUsuarioDto, IPermissoesUsuariosHistorico, PermissoesUsuariosHistoricoDto, IArcoAventura, ArcoAventuraDto, IAventura, AventuraDto, IConviteGrupoAventuraPersonagem, ConviteGrupoAventuraPersonagemDto, IGrupoAventura, GrupoAventuraDto, IGrupoAventuraPersonagem, GrupoAventuraPersonagemDto, IRespostaConvite, RespostaConviteDto, IVariavelAmbiente, VariavelAmbienteDto, IConquista, ConquistaDto, ITipoConquista, TipoConquistaDto, IDetalheSessaoAventura, DetalheSessaoAventuraDto, IDetalheSessaoCanonica, DetalheSessaoCanonicaDto, CapituloSessaoCanonica, IDetalheSessaoUnica, DetalheSessaoUnicaDto, IParticipanteSessaoUnica, ParticipanteSessaoUnicaDto, ICoeficienteGanhoEstatisticaClasse, CoeficienteGanhoEstatisticaClasseDto, IGanhoNivelClasse, GanhoNivelClasseDto, DadosDoTipoGanho, DadosGanho_Atributos, DadosGanho_Pericias, DadosGanho_Estatisticas, DadosGanho_Classes, DadosGanho_ValorMaximoAtributo, DadosGanho_PontosHabilidadesEspeciais, DadosGanho_PontosHabilidadesParanormais, DadosGanho_PontosHabilidadeElemental, IGanhoRelativoCoeficienteAtributo, GanhoRelativoCoeficienteAtributoDto, ITipoGanhoNivel, TipoGanhoNivelDto, IGeracao, GeracaoDto, IImagem, ImagemDto, ITipoImagem, TipoImagemDto, IAlcance, AlcanceDto, IAtributo, AtributoDto, ICategoriaRitual, CategoriaRitualDto, ICirculoRitual, CirculoRitualDto, IClasse, ClasseDto, IDuracao, DuracaoDto, IElemento, ElementoDto, IEstatisticaDanificavel, EstatisticaDanificavelDto, IExecucao, ExecucaoDto, IFormatoAlcance, FormatoAlcanceDto, ILinhaEfeito, LinhaEfeitoDto, INivel, NivelDto, INivelComponente, NivelComponenteDto, INivelProficiencia, NivelProficienciaDto, INivelRitual, NivelRitualDto, IPatentePericia, PatentePericiaDto, IPericia, PericiaDto, IProficiencia, ProficienciaDto, ITipoAlvo, TipoAlvoDto, ITipoCategoria, TipoCategoriaDto, ITipoDano, TipoDanoDto, ITipoEfeito, TipoEfeitoDto, ITipoItem, TipoItemDto, ITipoProficiencia, TipoProficienciaDto, ILink, LinkDto, ITipoLink, TipoLinkDto, IDificuldadeSessao, DificuldadeSessaoDto, IEstiloSessaoMestrada, EstiloSessaoMestradaDto, ITipoSessao, TipoSessaoDto, IPerfilAdmin, PerfilAdminDto, IPerfilJogador, PerfilJogadorDto, IPerfilMestre, PerfilMestreDto, IFichaPersonagem, FichaPersonagemDto, ObjetoFicha, DetalheEvolucao, DetalhesExtras, FichaDeJogo, AtributoFicha, PericiaFicha, EstatisticaDanificavelFicha, DetalheFicha, RegistroPericiaLivre, IInformacaoPersonagem, InformacaoPersonagemDto, IPersonagem, PersonagemDto, PersonagemSalaJogoDto, IResumoPersonagemAventura, ResumoPersonagemAventuraDto, ITipoPersonagem, TipoPersonagemDto, IDetalheRascunhoAventura, DetalheRascunhoAventuraDto, IDetalheRascunhoSessaoUnicaCanonica, DetalheRascunhoSessaoUnicaCanonicaDto, IDetalheRascunhoSessaoUnicaNaoCanonica, DetalheRascunhoSessaoUnicaNaoCanonicaDto, IRascunho, RascunhoDto, IEstudo, EstudoDto, IRegistroSessao, RegistroSessaoDto, ISessao, SessaoDto, SessaoDadosGerais, ParticipanteSessao, AuthSession, ICustomizacaoUsuario, CustomizacaoUsuarioDto, IDisponibilidadeUsuario, DisponibilidadeUsuarioDto, ListaDisponibilidadesUsuario, DisponibilidadesDDS, JanelaDisponibilidade, IUsuario, UsuarioDto, SalaDeJogo_Codigo, SalaDeJogoParams, SalaDeJogo_Tipo, SalaDeJogo_Estado, SalaDeJogo_TipoMestre, SalaDeJogo_Mestre, SalaDeJogo_Mestre_Mestrada, SalaDeJogo_Mestre_Inteligente, SalaDeJogo_TipoParticipante, SalaDeJogo_Participante, SalaDeJogo_Participante_Narrador, SalaDeJogo_Participante_Jogador, SalaDeJogo_FUNC_AtualizaParticipanteParams, SalaDeJogoDto, ExtrairParamsDoTemplate, PaginaParamsDoTemplate, TemplateComParams, PaginaEstatica, PaginaDinamica, Pagina, PaginaParams,
|
|
1450
|
+
export { CAPACIDADES, IPermissoesEstado, PermissoesEstadoDto, IPermissoesItem, PermissoesItemDto, IPermissoesUsuario, PermissoesUsuarioDto, IPermissoesUsuariosHistorico, PermissoesUsuariosHistoricoDto, IArcoAventura, ArcoAventuraDto, IAventura, AventuraDto, IConviteGrupoAventuraPersonagem, ConviteGrupoAventuraPersonagemDto, IGrupoAventura, GrupoAventuraDto, IGrupoAventuraPersonagem, GrupoAventuraPersonagemDto, IRespostaConvite, RespostaConviteDto, IVariavelAmbiente, VariavelAmbienteDto, IConquista, ConquistaDto, ITipoConquista, TipoConquistaDto, IDetalheSessaoAventura, DetalheSessaoAventuraDto, IDetalheSessaoCanonica, DetalheSessaoCanonicaDto, CapituloSessaoCanonica, IDetalheSessaoUnica, DetalheSessaoUnicaDto, IParticipanteSessaoUnica, ParticipanteSessaoUnicaDto, ICoeficienteGanhoEstatisticaClasse, CoeficienteGanhoEstatisticaClasseDto, IGanhoNivelClasse, GanhoNivelClasseDto, DadosDoTipoGanho, DadosGanho_Atributos, DadosGanho_Pericias, DadosGanho_Estatisticas, DadosGanho_Classes, DadosGanho_ValorMaximoAtributo, DadosGanho_PontosHabilidadesEspeciais, DadosGanho_PontosHabilidadesParanormais, DadosGanho_PontosHabilidadeElemental, IGanhoRelativoCoeficienteAtributo, GanhoRelativoCoeficienteAtributoDto, ITipoGanhoNivel, TipoGanhoNivelDto, IGeracao, GeracaoDto, IImagem, ImagemDto, ITipoImagem, TipoImagemDto, IAlcance, AlcanceDto, IAtributo, AtributoDto, ICategoriaRitual, CategoriaRitualDto, ICirculoRitual, CirculoRitualDto, IClasse, ClasseDto, IDuracao, DuracaoDto, IElemento, ElementoDto, IEstatisticaDanificavel, EstatisticaDanificavelDto, IExecucao, ExecucaoDto, IFormatoAlcance, FormatoAlcanceDto, ILinhaEfeito, LinhaEfeitoDto, INivel, NivelDto, INivelComponente, NivelComponenteDto, INivelProficiencia, NivelProficienciaDto, INivelRitual, NivelRitualDto, IPatentePericia, PatentePericiaDto, IPericia, PericiaDto, IProficiencia, ProficienciaDto, ITipoAlvo, TipoAlvoDto, ITipoCategoria, TipoCategoriaDto, ITipoDano, TipoDanoDto, ITipoEfeito, TipoEfeitoDto, ITipoItem, TipoItemDto, ITipoProficiencia, TipoProficienciaDto, ILink, LinkDto, ITipoLink, TipoLinkDto, IDificuldadeSessao, DificuldadeSessaoDto, IEstiloSessaoMestrada, EstiloSessaoMestradaDto, ITipoSessao, TipoSessaoDto, IPerfilAdmin, PerfilAdminDto, IPerfilJogador, PerfilJogadorDto, IPerfilMestre, PerfilMestreDto, IFichaPersonagem, FichaPersonagemDto, ObjetoFicha, DetalheEvolucao, DetalhesExtras, FichaDeJogo, AtributoFicha, PericiaFicha, EstatisticaDanificavelFicha, DetalheFicha, RegistroPericiaLivre, IInformacaoPersonagem, InformacaoPersonagemDto, IPersonagem, PersonagemDto, PersonagemSalaJogoDto, IResumoPersonagemAventura, ResumoPersonagemAventuraDto, ITipoPersonagem, TipoPersonagemDto, IDetalheRascunhoAventura, DetalheRascunhoAventuraDto, IDetalheRascunhoSessaoUnicaCanonica, DetalheRascunhoSessaoUnicaCanonicaDto, IDetalheRascunhoSessaoUnicaNaoCanonica, DetalheRascunhoSessaoUnicaNaoCanonicaDto, IRascunho, RascunhoDto, IEstudo, EstudoDto, IRegistroSessao, RegistroSessaoDto, ISessao, SessaoDto, SessaoDadosGerais, ParticipanteSessao, AuthSession, ICustomizacaoUsuario, CustomizacaoUsuarioDto, IDisponibilidadeUsuario, DisponibilidadeUsuarioDto, ListaDisponibilidadesUsuario, DisponibilidadesDDS, JanelaDisponibilidade, IUsuario, UsuarioDto, SalaDeJogo_Codigo, SalaDeJogoParams, SalaDeJogo_Tipo, SalaDeJogo_Estado, SalaDeJogo_TipoMestre, SalaDeJogo_Mestre, SalaDeJogo_Mestre_Mestrada, SalaDeJogo_Mestre_Inteligente, SalaDeJogo_TipoParticipante, SalaDeJogo_Participante, SalaDeJogo_Participante_Narrador, SalaDeJogo_Participante_Jogador, SalaDeJogo_FUNC_AtualizaParticipanteParams, SalaDeJogoDto, ExtrairParamsDoTemplate, PaginaParamsDoTemplate, TemplateComParams, PaginaInfo, PaginaEstatica, PaginaDinamica, Pagina, PaginaParams, montarHref, pagina, paginaDinamica, PAGINAS, Folhas, PaginaFolha, PaginaTemplate, INFO_POR_TEMPLATE, ACESSO_POR_TEMPLATE, MensagemChatRecebida, SalaChat, SalaChatFront, MensagemChatPayload, SOCKET_AcessoUsuario, SOCKET_UsuarioExistente, TelemetryConnectionInfo, WsEventAudienceUnico, WsEventAudienceMultiplo, WsEventAudience, TelemetryEventLog, TelemetrySnapshot, WsErrorResponse, WsUnauthorizedErrorResponse, WsResult, isWsErrorResponse, isWsUnauthorizedErrorResponse, wsErro, wsUnauthorized, wsMap, wsChain, EventoTipo, EmitDelivery, EventoAuthDefault, EventoEnvia, EventoEmite, EventoEnviaERecebe, EventoSchema, GatewayDef, createGateway, EventosWebSocket, isRecord, getEmitDelivery, WsEmitTarget, WsEmitParams, EventosEmiteMap, EventoEmiteAny, PaletaCores, EstruturaPaginaDefinicao, ConteudoItem, DefinicaoElemento, ListaItem, AventuraEstado, EstadoPendenciaPersonagem, EstadoPendenciaAdministrativaPersonagem, EstadoOcupacaoPersonagem, EstadoSessao, DiaDaSemana, obtemDiaDaSemanaPorExtensoPorDDS, NumeroHora24, NumeroMomento, MomentoFormatado24, MomentoFormatado, CargoExibicaoUsuario, CargosUsuario, ObjetoAutenticacao, ObjetoCache, ObjetoPendeciaPersonagem, TipoVariavelAmbiente, ObjetoEvolucaoCompleto, ObjetoEvolucao, ObjetoGanhosEvolucao, GanhoEstatistica, FormatoMomento, DetalheUtilizacaoRascunho, EstiloSessao, PathTokenPadrao, TituloSessaoInteligente, Capacidade, LISTA_CAPACIDADES, PermissaoItemMinimo, ListaCapacidadesNecessarias, AcessoPagina, Gateways, EventoTipoLiteral, FiltraEventosPorTipo, criarEventosFiltrados, Eventos_Envia, Eventos_Emite, Eventos_EnviaERecebe };
|
package/dist/classes.js
CHANGED
|
@@ -72,67 +72,99 @@ function montarHref(template, params) {
|
|
|
72
72
|
const cleaned = out.replace(/\/+/g, '/').replace(/\/$/, '');
|
|
73
73
|
return cleaned === '' ? '/' : cleaned;
|
|
74
74
|
}
|
|
75
|
-
function pagina(template,
|
|
75
|
+
function pagina(template, info) {
|
|
76
|
+
const { label, comCabecalho, acesso } = info;
|
|
77
|
+
if (acesso == null && comCabecalho == null)
|
|
78
|
+
return { template, href: template, label };
|
|
76
79
|
if (acesso == null)
|
|
77
|
-
return { template, href: template };
|
|
78
|
-
|
|
80
|
+
return { template, href: template, label, comCabecalho };
|
|
81
|
+
if (comCabecalho == null)
|
|
82
|
+
return { template, href: template, label, acesso };
|
|
83
|
+
return { template, href: template, label, comCabecalho, acesso };
|
|
79
84
|
}
|
|
80
|
-
function paginaDinamica(template,
|
|
85
|
+
function paginaDinamica(template, info) {
|
|
81
86
|
const href = (params) => montarHref(template, params);
|
|
87
|
+
const { label, comCabecalho, acesso } = info;
|
|
88
|
+
if (acesso == null && comCabecalho == null)
|
|
89
|
+
return { template, href, label };
|
|
82
90
|
if (acesso == null)
|
|
83
|
-
return { template, href };
|
|
84
|
-
|
|
91
|
+
return { template, href, label, comCabecalho };
|
|
92
|
+
if (comCabecalho == null)
|
|
93
|
+
return { template, href, label, acesso };
|
|
94
|
+
return { template, href, label, comCabecalho, acesso };
|
|
85
95
|
}
|
|
86
|
-
// @tipoCompartilhadoFront
|
|
87
96
|
const PAGINAS = {
|
|
88
|
-
home: pagina('/'),
|
|
89
|
-
acessar: pagina('/acessar'),
|
|
90
|
-
cadastrar: pagina('/cadastrar'),
|
|
91
|
-
aventura: paginaDinamica('/aventura/[id]'),
|
|
92
|
-
aventuras: pagina('/aventuras'),
|
|
93
|
-
definicoes: paginaDinamica('/definicoes/[[...slug]]'),
|
|
94
|
-
dicas: paginaDinamica('/dicas/[[...slug]]'),
|
|
97
|
+
home: pagina('/', { label: 'Página Inicial', comCabecalho: true }),
|
|
98
|
+
acessar: pagina('/acessar', { label: 'Acessar' }),
|
|
99
|
+
cadastrar: pagina('/cadastrar', { label: 'Cadastrar' }),
|
|
100
|
+
aventura: paginaDinamica('/aventura/[id]', { label: 'Aventura' }),
|
|
101
|
+
aventuras: pagina('/aventuras', { label: 'Aventuras' }),
|
|
102
|
+
definicoes: paginaDinamica('/definicoes/[[...slug]]', { label: 'Definições', comCabecalho: true }),
|
|
103
|
+
dicas: paginaDinamica('/dicas/[[...slug]]', { label: 'Dicas', comCabecalho: true }),
|
|
95
104
|
jogo: {
|
|
96
|
-
...pagina('/jogo', { autenticado: true }),
|
|
97
|
-
jogador: pagina('/jogo/jogador', { autenticado: true }),
|
|
98
|
-
mestre: { sessoesMestre: pagina('/jogo/mestre/sessoes-mestre', { autenticado: true }) },
|
|
99
|
-
admin: { gerenciarSalas: pagina('/jogo/admin/gerenciar-salas', { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] }) },
|
|
100
|
-
emJogo: pagina('/jogo/em-jogo', { autenticado: true }),
|
|
105
|
+
...pagina('/jogo', { label: 'Jogo', acesso: { autenticado: true } }),
|
|
106
|
+
jogador: pagina('/jogo/jogador', { label: 'Jogo - Jogador', acesso: { autenticado: true } }),
|
|
107
|
+
mestre: { sessoesMestre: pagina('/jogo/mestre/sessoes-mestre', { label: 'Mestre - Sessões', acesso: { autenticado: true } }) },
|
|
108
|
+
admin: { gerenciarSalas: pagina('/jogo/admin/gerenciar-salas', { label: 'Admin - Gerenciar Salas', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }) },
|
|
109
|
+
emJogo: pagina('/jogo/em-jogo', { label: 'Em Jogo', acesso: { autenticado: true } }),
|
|
101
110
|
},
|
|
102
|
-
linhaDoTempo: pagina('/linha-do-tempo'),
|
|
103
|
-
minhaPagina: pagina('/minha-pagina'),
|
|
111
|
+
linhaDoTempo: pagina('/linha-do-tempo', { label: 'Linha do Tempo' }),
|
|
112
|
+
minhaPagina: pagina('/minha-pagina', { label: 'Minha Página' }),
|
|
104
113
|
minhasPaginas: {
|
|
105
114
|
admin: {
|
|
106
|
-
...pagina('/minhas-paginas/admin', { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] }),
|
|
107
|
-
aventura: paginaDinamica('/minhas-paginas/admin/aventura/[id]', { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] }),
|
|
108
|
-
aventuras: pagina('/minhas-paginas/admin/aventuras', { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] }),
|
|
109
|
-
dashboardWs: pagina('/minhas-paginas/admin/dashboard-ws', { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] }),
|
|
110
|
-
sessao: paginaDinamica('/minhas-paginas/admin/sessao/[id]', { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] }),
|
|
111
|
-
uploads: pagina('/minhas-paginas/admin/uploads', { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] }),
|
|
112
|
-
variaveisAmbiente: pagina('/minhas-paginas/admin/variaveis-ambiente', { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] }),
|
|
115
|
+
...pagina('/minhas-paginas/admin', { label: 'Administração', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
|
|
116
|
+
aventura: paginaDinamica('/minhas-paginas/admin/aventura/[id]', { label: 'Admin - Aventura', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
|
|
117
|
+
aventuras: pagina('/minhas-paginas/admin/aventuras', { label: 'Admin - Aventuras', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
|
|
118
|
+
dashboardWs: pagina('/minhas-paginas/admin/dashboard-ws', { label: 'Admin - Dashboard WS', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
|
|
119
|
+
sessao: paginaDinamica('/minhas-paginas/admin/sessao/[id]', { label: 'Admin - Sessão', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
|
|
120
|
+
uploads: pagina('/minhas-paginas/admin/uploads', { label: 'Admin - Uploads', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
|
|
121
|
+
variaveisAmbiente: pagina('/minhas-paginas/admin/variaveis-ambiente', { label: 'Admin - Variáveis de Ambiente', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
|
|
113
122
|
},
|
|
114
123
|
jogador: {
|
|
115
|
-
...pagina('/minhas-paginas/jogador', { autenticado: true }),
|
|
116
|
-
meusPersonagens: pagina('/minhas-paginas/jogador/meus-personagens', { autenticado: true }),
|
|
124
|
+
...pagina('/minhas-paginas/jogador', { label: 'Área do Jogador', acesso: { autenticado: true } }),
|
|
125
|
+
meusPersonagens: pagina('/minhas-paginas/jogador/meus-personagens', { label: 'Meus Personagens', acesso: { autenticado: true } }),
|
|
117
126
|
},
|
|
118
127
|
mestre: {
|
|
119
|
-
...pagina('/minhas-paginas/mestre', { autenticado: true }),
|
|
120
|
-
aventura: paginaDinamica('/minhas-paginas/mestre/aventura/[id]', { autenticado: true }),
|
|
121
|
-
aventuras: pagina('/minhas-paginas/mestre/aventuras', { autenticado: true }),
|
|
122
|
-
personagens: pagina('/minhas-paginas/mestre/personagens', { autenticado: true }),
|
|
128
|
+
...pagina('/minhas-paginas/mestre', { label: 'Área do Mestre', acesso: { autenticado: true } }),
|
|
129
|
+
aventura: paginaDinamica('/minhas-paginas/mestre/aventura/[id]', { label: 'Mestre - Aventura', acesso: { autenticado: true } }),
|
|
130
|
+
aventuras: pagina('/minhas-paginas/mestre/aventuras', { label: 'Mestre - Aventuras', acesso: { autenticado: true } }),
|
|
131
|
+
personagens: pagina('/minhas-paginas/mestre/personagens', { label: 'Mestre - Personagens', acesso: { autenticado: true } }),
|
|
123
132
|
rascunhos: {
|
|
124
|
-
aventuras: pagina('/minhas-paginas/mestre/rascunhos/aventuras', { autenticado: true }),
|
|
125
|
-
sessoesUnicas: pagina('/minhas-paginas/mestre/rascunhos/sessoes-unicas', { autenticado: true }),
|
|
133
|
+
aventuras: pagina('/minhas-paginas/mestre/rascunhos/aventuras', { label: 'Rascunhos - Aventuras', acesso: { autenticado: true } }),
|
|
134
|
+
sessoesUnicas: pagina('/minhas-paginas/mestre/rascunhos/sessoes-unicas', { label: 'Rascunhos - Sessões Únicas', acesso: { autenticado: true } }),
|
|
126
135
|
},
|
|
127
|
-
sessao: paginaDinamica('/minhas-paginas/mestre/sessao/[id]', { autenticado: true }),
|
|
136
|
+
sessao: paginaDinamica('/minhas-paginas/mestre/sessao/[id]', { label: 'Mestre - Sessão', acesso: { autenticado: true } }),
|
|
128
137
|
},
|
|
129
|
-
minhasDisponibilidades: pagina('/minhas-paginas/minhas-disponibilidades', { autenticado: true }),
|
|
138
|
+
minhasDisponibilidades: pagina('/minhas-paginas/minhas-disponibilidades', { label: 'Minhas Disponibilidades', acesso: { autenticado: true } }),
|
|
130
139
|
},
|
|
131
|
-
personagens: pagina('/personagens', { autenticado: true }),
|
|
132
|
-
sessoes: pagina('/sessoes', { autenticado: true }),
|
|
133
|
-
sessaoAovivo: pagina('/sessao-aovivo', { autenticado: true }),
|
|
134
|
-
sessao: paginaDinamica('/sessao/[id]', { autenticado: true }),
|
|
140
|
+
personagens: pagina('/personagens', { label: 'Personagens', acesso: { autenticado: true } }),
|
|
141
|
+
sessoes: pagina('/sessoes', { label: 'Sessões', acesso: { autenticado: true } }),
|
|
142
|
+
sessaoAovivo: pagina('/sessao-aovivo', { label: 'Sessão Ao Vivo', acesso: { autenticado: true } }),
|
|
143
|
+
sessao: paginaDinamica('/sessao/[id]', { label: 'Sessão', acesso: { autenticado: true } }),
|
|
135
144
|
};
|
|
145
|
+
const INFO_POR_TEMPLATE = (() => {
|
|
146
|
+
const out = {};
|
|
147
|
+
const stack = [PAGINAS];
|
|
148
|
+
while (stack.length > 0) {
|
|
149
|
+
const cur = stack.pop();
|
|
150
|
+
if (typeof cur === 'object' && cur !== null && 'template' in cur && typeof cur.template === 'string' && 'label' in cur) {
|
|
151
|
+
const folha = cur;
|
|
152
|
+
out[folha.template] = { label: folha.label, comCabecalho: folha.comCabecalho === true, acesso: folha.acesso };
|
|
153
|
+
continue;
|
|
154
|
+
}
|
|
155
|
+
if (typeof cur === 'object' && cur !== null) {
|
|
156
|
+
for (const value of Object.values(cur))
|
|
157
|
+
stack.push(value);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return out;
|
|
161
|
+
})();
|
|
162
|
+
const ACESSO_POR_TEMPLATE = (() => {
|
|
163
|
+
const out = {};
|
|
164
|
+
for (const [k, v] of Object.entries(INFO_POR_TEMPLATE))
|
|
165
|
+
out[k] = v.acesso;
|
|
166
|
+
return out;
|
|
167
|
+
})();
|
|
136
168
|
function isWsErrorResponse(payload) { return !!payload && typeof payload === "object" && payload._wsErro === true; }
|
|
137
169
|
function isWsUnauthorizedErrorResponse(payload) { return isWsErrorResponse(payload) && payload.code === "UNAUTHORIZED"; }
|
|
138
170
|
function wsErro(mensagem, extra) { return { _wsErro: true, mensagem, ...(extra ?? {}) }; }
|
|
@@ -341,4 +373,4 @@ function criarEventosFiltrados(tipo) {
|
|
|
341
373
|
const Eventos_Envia = criarEventosFiltrados('envia');
|
|
342
374
|
const Eventos_Emite = criarEventosFiltrados('emite');
|
|
343
375
|
const Eventos_EnviaERecebe = criarEventosFiltrados('envia-e-recebe');
|
|
344
|
-
export { CAPACIDADES, AuthSession, SalaDeJogo_Tipo, SalaDeJogo_Estado, SalaDeJogo_TipoMestre, SalaDeJogo_TipoParticipante, montarHref, pagina, paginaDinamica, PAGINAS, isWsErrorResponse, isWsUnauthorizedErrorResponse, wsErro, wsUnauthorized, wsMap, wsChain, createGateway, EventosWebSocket, isRecord, getEmitDelivery, AventuraEstado, EstadoPendenciaPersonagem, EstadoPendenciaAdministrativaPersonagem, EstadoOcupacaoPersonagem, EstadoSessao, DiaDaSemana, obtemDiaDaSemanaPorExtensoPorDDS, CargoExibicaoUsuario, FormatoMomento, EstiloSessao, PathTokenPadrao, LISTA_CAPACIDADES, criarEventosFiltrados, Eventos_Envia, Eventos_Emite, Eventos_EnviaERecebe };
|
|
376
|
+
export { CAPACIDADES, AuthSession, SalaDeJogo_Tipo, SalaDeJogo_Estado, SalaDeJogo_TipoMestre, SalaDeJogo_TipoParticipante, montarHref, pagina, paginaDinamica, PAGINAS, INFO_POR_TEMPLATE, ACESSO_POR_TEMPLATE, isWsErrorResponse, isWsUnauthorizedErrorResponse, wsErro, wsUnauthorized, wsMap, wsChain, createGateway, EventosWebSocket, isRecord, getEmitDelivery, AventuraEstado, EstadoPendenciaPersonagem, EstadoPendenciaAdministrativaPersonagem, EstadoOcupacaoPersonagem, EstadoSessao, DiaDaSemana, obtemDiaDaSemanaPorExtensoPorDDS, CargoExibicaoUsuario, FormatoMomento, EstiloSessao, PathTokenPadrao, LISTA_CAPACIDADES, criarEventosFiltrados, Eventos_Envia, Eventos_Emite, Eventos_EnviaERecebe };
|