types-nora-api 0.0.211 → 0.0.214

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
@@ -776,6 +776,9 @@ type SalaDeJogoDto = {
776
776
  mestre: SalaDeJogo_Mestre;
777
777
  participantes: readonly SalaDeJogo_Participante[];
778
778
  };
779
+ type Brand<T, B extends string> = T & {
780
+ readonly __brand: B;
781
+ };
779
782
  type ExtrairParamsDoTemplate<S extends string, Acc extends Record<string, unknown> = {}> = S extends `${infer _A}[[...${infer P}]]${infer Rest}` ? ExtrairParamsDoTemplate<Rest, Acc & {
780
783
  [K in P]?: string[];
781
784
  }> : S extends `${infer _A}[...${infer P}]${infer Rest}` ? ExtrairParamsDoTemplate<Rest, Acc & {
@@ -785,30 +788,35 @@ type ExtrairParamsDoTemplate<S extends string, Acc extends Record<string, unknow
785
788
  }> : Acc;
786
789
  type PaginaParamsDoTemplate<T extends string> = ExtrairParamsDoTemplate<T>;
787
790
  type TemplateComParams = `${string}[[...${string}]]${string}` | `${string}[...${string}]${string}` | `${string}[${string}]${string}`;
788
- type PaginaEstatica<T extends string> = {
789
- readonly template: T;
790
- readonly href: T;
791
+ type PaginaInfo = {
792
+ readonly label: string;
793
+ readonly comCabecalho?: true;
791
794
  readonly acesso?: AcessoPagina;
792
795
  };
793
- type PaginaDinamica<T extends TemplateComParams> = {
794
- readonly template: T;
796
+ type TemplateBranded<T extends string> = Brand<T, 'PaginaTemplate'>;
797
+ type PaginaEstatica<T extends string> = PaginaInfo & {
798
+ readonly template: TemplateBranded<T>;
799
+ readonly href: T;
800
+ };
801
+ type PaginaDinamica<T extends TemplateComParams> = PaginaInfo & {
802
+ readonly template: TemplateBranded<T>;
795
803
  readonly href: (params: PaginaParamsDoTemplate<T>) => string;
796
- readonly acesso?: AcessoPagina;
797
804
  };
798
805
  type Pagina<T extends string = string> = T extends TemplateComParams ? PaginaDinamica<Extract<T, TemplateComParams>> : PaginaEstatica<T>;
799
806
  type PaginaParams<P extends {
800
807
  template: string;
801
808
  }> = 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
809
  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>;
810
+ declare function pagina<const T extends string>(template: T extends TemplateComParams ? never : T, info: Omit<PaginaInfo, 'acesso'> & {
811
+ acesso?: AcessoPagina;
812
+ } & {
813
+ label: string;
814
+ }): PaginaEstatica<T>;
815
+ declare function paginaDinamica<const T extends TemplateComParams>(template: T, info: Omit<PaginaInfo, 'acesso'> & {
816
+ acesso?: AcessoPagina;
817
+ } & {
818
+ label: string;
819
+ }): PaginaDinamica<T>;
812
820
  declare const PAGINAS: {
813
821
  readonly home: PaginaEstatica<"/">;
814
822
  readonly acessar: PaginaEstatica<"/acessar">;
@@ -826,9 +834,11 @@ declare const PAGINAS: {
826
834
  readonly gerenciarSalas: PaginaEstatica<"/jogo/admin/gerenciar-salas">;
827
835
  };
828
836
  readonly emJogo: PaginaEstatica<"/jogo/em-jogo">;
829
- readonly template: "/jogo";
830
- readonly href: "/jogo";
837
+ readonly label: string;
838
+ readonly comCabecalho?: true;
831
839
  readonly acesso?: AcessoPagina;
840
+ readonly template: TemplateBranded<"/jogo">;
841
+ readonly href: "/jogo";
832
842
  };
833
843
  readonly linhaDoTempo: PaginaEstatica<"/linha-do-tempo">;
834
844
  readonly minhaPagina: PaginaEstatica<"/minha-pagina">;
@@ -840,15 +850,19 @@ declare const PAGINAS: {
840
850
  readonly sessao: PaginaDinamica<"/minhas-paginas/admin/sessao/[id]">;
841
851
  readonly uploads: PaginaEstatica<"/minhas-paginas/admin/uploads">;
842
852
  readonly variaveisAmbiente: PaginaEstatica<"/minhas-paginas/admin/variaveis-ambiente">;
843
- readonly template: "/minhas-paginas/admin";
844
- readonly href: "/minhas-paginas/admin";
853
+ readonly label: string;
854
+ readonly comCabecalho?: true;
845
855
  readonly acesso?: AcessoPagina;
856
+ readonly template: TemplateBranded<"/minhas-paginas/admin">;
857
+ readonly href: "/minhas-paginas/admin";
846
858
  };
847
859
  readonly jogador: {
848
860
  readonly meusPersonagens: PaginaEstatica<"/minhas-paginas/jogador/meus-personagens">;
849
- readonly template: "/minhas-paginas/jogador";
850
- readonly href: "/minhas-paginas/jogador";
861
+ readonly label: string;
862
+ readonly comCabecalho?: true;
851
863
  readonly acesso?: AcessoPagina;
864
+ readonly template: TemplateBranded<"/minhas-paginas/jogador">;
865
+ readonly href: "/minhas-paginas/jogador";
852
866
  };
853
867
  readonly mestre: {
854
868
  readonly aventura: PaginaDinamica<"/minhas-paginas/mestre/aventura/[id]">;
@@ -859,9 +873,11 @@ declare const PAGINAS: {
859
873
  readonly sessoesUnicas: PaginaEstatica<"/minhas-paginas/mestre/rascunhos/sessoes-unicas">;
860
874
  };
861
875
  readonly sessao: PaginaDinamica<"/minhas-paginas/mestre/sessao/[id]">;
862
- readonly template: "/minhas-paginas/mestre";
863
- readonly href: "/minhas-paginas/mestre";
876
+ readonly label: string;
877
+ readonly comCabecalho?: true;
864
878
  readonly acesso?: AcessoPagina;
879
+ readonly template: TemplateBranded<"/minhas-paginas/mestre">;
880
+ readonly href: "/minhas-paginas/mestre";
865
881
  };
866
882
  readonly minhasDisponibilidades: PaginaEstatica<"/minhas-paginas/minhas-disponibilidades">;
867
883
  };
@@ -870,6 +886,18 @@ declare const PAGINAS: {
870
886
  readonly sessaoAovivo: PaginaEstatica<"/sessao-aovivo">;
871
887
  readonly sessao: PaginaDinamica<"/sessao/[id]">;
872
888
  };
889
+ type Folhas<T> = T extends {
890
+ template: string;
891
+ } ? T : T extends Record<string, unknown> ? {
892
+ [K in keyof T]: Folhas<T[K]>;
893
+ }[keyof T] : never;
894
+ type PaginaFolha = Folhas<typeof PAGINAS>;
895
+ type PaginaTemplate = PaginaFolha['template'];
896
+ declare const INFO_POR_TEMPLATE: Readonly<Record<PaginaTemplate, {
897
+ label: string;
898
+ comCabecalho: boolean;
899
+ acesso?: AcessoPagina;
900
+ }>>;
873
901
  interface MensagemChatRecebida {
874
902
  salaId: string;
875
903
  idUsuario: number;
@@ -1422,4 +1450,4 @@ declare const Eventos_EnviaERecebe: {
1422
1450
  };
1423
1451
  };
1424
1452
  };
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 };
1453
+ 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, Brand, ExtrairParamsDoTemplate, PaginaParamsDoTemplate, TemplateComParams, PaginaInfo, TemplateBranded, PaginaEstatica, PaginaDinamica, Pagina, PaginaParams, montarHref, pagina, paginaDinamica, PAGINAS, Folhas, PaginaFolha, PaginaTemplate, INFO_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,95 @@ 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
+ const templateBranded = template;
78
+ if (acesso == null && comCabecalho == null)
79
+ return { template: templateBranded, href: template, label };
76
80
  if (acesso == null)
77
- return { template, href: template };
78
- return { template, href: template, acesso };
81
+ return { template: templateBranded, href: template, label, comCabecalho };
82
+ if (comCabecalho == null)
83
+ return { template: templateBranded, href: template, label, acesso };
84
+ return { template: templateBranded, href: template, label, comCabecalho, acesso };
79
85
  }
80
- function paginaDinamica(template, acesso) {
86
+ function paginaDinamica(template, info) {
81
87
  const href = (params) => montarHref(template, params);
88
+ const { label, comCabecalho, acesso } = info;
89
+ const templateBranded = template;
90
+ if (acesso == null && comCabecalho == null)
91
+ return { template: templateBranded, href, label };
82
92
  if (acesso == null)
83
- return { template, href };
84
- return { template, href, acesso };
93
+ return { template: templateBranded, href, label, comCabecalho };
94
+ if (comCabecalho == null)
95
+ return { template: templateBranded, href, label, acesso };
96
+ return { template: templateBranded, href, label, comCabecalho, acesso };
85
97
  }
86
- // @tipoCompartilhadoFront
87
98
  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]]'),
99
+ home: pagina('/', { label: 'Página Inicial', comCabecalho: true }),
100
+ acessar: pagina('/acessar', { label: 'Acessar' }),
101
+ cadastrar: pagina('/cadastrar', { label: 'Cadastrar' }),
102
+ aventura: paginaDinamica('/aventura/[id]', { label: 'Aventura' }),
103
+ aventuras: pagina('/aventuras', { label: 'Aventuras' }),
104
+ definicoes: paginaDinamica('/definicoes/[[...slug]]', { label: 'Definições', comCabecalho: true }),
105
+ dicas: paginaDinamica('/dicas/[[...slug]]', { label: 'Dicas', comCabecalho: true }),
95
106
  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 }),
107
+ ...pagina('/jogo', { label: 'Jogo', acesso: { autenticado: true } }),
108
+ jogador: pagina('/jogo/jogador', { label: 'Jogo - Jogador', acesso: { autenticado: true } }),
109
+ mestre: { sessoesMestre: pagina('/jogo/mestre/sessoes-mestre', { label: 'Mestre - Sessões', acesso: { autenticado: true } }) },
110
+ admin: { gerenciarSalas: pagina('/jogo/admin/gerenciar-salas', { label: 'Admin - Gerenciar Salas', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }) },
111
+ emJogo: pagina('/jogo/em-jogo', { label: 'Em Jogo', acesso: { autenticado: true } }),
101
112
  },
102
- linhaDoTempo: pagina('/linha-do-tempo'),
103
- minhaPagina: pagina('/minha-pagina'),
113
+ linhaDoTempo: pagina('/linha-do-tempo', { label: 'Linha do Tempo' }),
114
+ minhaPagina: pagina('/minha-pagina', { label: 'Minha Página' }),
104
115
  minhasPaginas: {
105
116
  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] }),
117
+ ...pagina('/minhas-paginas/admin', { label: 'Administração', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
118
+ aventura: paginaDinamica('/minhas-paginas/admin/aventura/[id]', { label: 'Admin - Aventura', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
119
+ aventuras: pagina('/minhas-paginas/admin/aventuras', { label: 'Admin - Aventuras', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
120
+ dashboardWs: pagina('/minhas-paginas/admin/dashboard-ws', { label: 'Admin - Dashboard WS', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
121
+ sessao: paginaDinamica('/minhas-paginas/admin/sessao/[id]', { label: 'Admin - Sessão', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
122
+ uploads: pagina('/minhas-paginas/admin/uploads', { label: 'Admin - Uploads', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
123
+ variaveisAmbiente: pagina('/minhas-paginas/admin/variaveis-ambiente', { label: 'Admin - Variáveis de Ambiente', acesso: { listaDeCapacidadesNecessarias: [CAPACIDADES.ADMINISTRADOR__SUDO__BURLAR_CAPACIDADES] } }),
113
124
  },
114
125
  jogador: {
115
- ...pagina('/minhas-paginas/jogador', { autenticado: true }),
116
- meusPersonagens: pagina('/minhas-paginas/jogador/meus-personagens', { autenticado: true }),
126
+ ...pagina('/minhas-paginas/jogador', { label: 'Área do Jogador', acesso: { autenticado: true } }),
127
+ meusPersonagens: pagina('/minhas-paginas/jogador/meus-personagens', { label: 'Meus Personagens', acesso: { autenticado: true } }),
117
128
  },
118
129
  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 }),
130
+ ...pagina('/minhas-paginas/mestre', { label: 'Área do Mestre', acesso: { autenticado: true } }),
131
+ aventura: paginaDinamica('/minhas-paginas/mestre/aventura/[id]', { label: 'Mestre - Aventura', acesso: { autenticado: true } }),
132
+ aventuras: pagina('/minhas-paginas/mestre/aventuras', { label: 'Mestre - Aventuras', acesso: { autenticado: true } }),
133
+ personagens: pagina('/minhas-paginas/mestre/personagens', { label: 'Mestre - Personagens', acesso: { autenticado: true } }),
123
134
  rascunhos: {
124
- aventuras: pagina('/minhas-paginas/mestre/rascunhos/aventuras', { autenticado: true }),
125
- sessoesUnicas: pagina('/minhas-paginas/mestre/rascunhos/sessoes-unicas', { autenticado: true }),
135
+ aventuras: pagina('/minhas-paginas/mestre/rascunhos/aventuras', { label: 'Rascunhos - Aventuras', acesso: { autenticado: true } }),
136
+ sessoesUnicas: pagina('/minhas-paginas/mestre/rascunhos/sessoes-unicas', { label: 'Rascunhos - Sessões Únicas', acesso: { autenticado: true } }),
126
137
  },
127
- sessao: paginaDinamica('/minhas-paginas/mestre/sessao/[id]', { autenticado: true }),
138
+ sessao: paginaDinamica('/minhas-paginas/mestre/sessao/[id]', { label: 'Mestre - Sessão', acesso: { autenticado: true } }),
128
139
  },
129
- minhasDisponibilidades: pagina('/minhas-paginas/minhas-disponibilidades', { autenticado: true }),
140
+ minhasDisponibilidades: pagina('/minhas-paginas/minhas-disponibilidades', { label: 'Minhas Disponibilidades', acesso: { autenticado: true } }),
130
141
  },
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 }),
142
+ personagens: pagina('/personagens', { label: 'Personagens', acesso: { autenticado: true } }),
143
+ sessoes: pagina('/sessoes', { label: 'Sessões', acesso: { autenticado: true } }),
144
+ sessaoAovivo: pagina('/sessao-aovivo', { label: 'Sessão Ao Vivo', acesso: { autenticado: true } }),
145
+ sessao: paginaDinamica('/sessao/[id]', { label: 'Sessão', acesso: { autenticado: true } }),
135
146
  };
147
+ const INFO_POR_TEMPLATE = (() => {
148
+ const out = {};
149
+ const stack = [PAGINAS];
150
+ while (stack.length > 0) {
151
+ const cur = stack.pop();
152
+ if (typeof cur === 'object' && cur !== null && 'template' in cur && typeof cur.template === 'string' && 'label' in cur) {
153
+ const folha = cur;
154
+ out[folha.template] = { label: folha.label, comCabecalho: folha.comCabecalho === true, acesso: folha.acesso };
155
+ continue;
156
+ }
157
+ if (typeof cur === 'object' && cur !== null) {
158
+ for (const value of Object.values(cur))
159
+ stack.push(value);
160
+ }
161
+ }
162
+ return out;
163
+ })();
136
164
  function isWsErrorResponse(payload) { return !!payload && typeof payload === "object" && payload._wsErro === true; }
137
165
  function isWsUnauthorizedErrorResponse(payload) { return isWsErrorResponse(payload) && payload.code === "UNAUTHORIZED"; }
138
166
  function wsErro(mensagem, extra) { return { _wsErro: true, mensagem, ...(extra ?? {}) }; }
@@ -341,4 +369,4 @@ function criarEventosFiltrados(tipo) {
341
369
  const Eventos_Envia = criarEventosFiltrados('envia');
342
370
  const Eventos_Emite = criarEventosFiltrados('emite');
343
371
  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 };
372
+ export { CAPACIDADES, AuthSession, SalaDeJogo_Tipo, SalaDeJogo_Estado, SalaDeJogo_TipoMestre, SalaDeJogo_TipoParticipante, montarHref, pagina, paginaDinamica, PAGINAS, INFO_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.214",
4
4
  "description": "Tipagem da Nora-Api compartilhada com o universodomedo.com",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",