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 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 PaginaEstatica<T extends string> = {
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?: AcessoPagina): PaginaEstatica<T>;
811
- declare function paginaDinamica<const T extends TemplateComParams>(template: T, acesso?: AcessoPagina): PaginaDinamica<T>;
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, Folhas, PaginaFolha, PaginaTemplate, montarHref, pagina, paginaDinamica, PAGINAS, 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 };
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, acesso) {
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
- return { template, href: template, acesso };
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, acesso) {
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
- return { template, href, acesso };
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 };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "types-nora-api",
3
- "version": "0.0.211",
3
+ "version": "0.0.212",
4
4
  "description": "Tipagem da Nora-Api compartilhada com o universodomedo.com",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",