melhorias em contrução de rotas

This commit is contained in:
Luiz Silva 2025-09-08 09:52:13 -03:00
parent 5ed3207ecf
commit cb86027ff9
5 changed files with 7 additions and 5 deletions

View file

@ -32,7 +32,7 @@ class TipagemRotas {
}) { }) {
this._partesCaminho = []; this._partesCaminho = [];
this._acaoIr = acaoIr; this._acaoIr = acaoIr;
this._partesCaminho = (Array.isArray(caminho) ? caminho : [caminho]).flatMap((a) => a.split("/")).filter(Boolean); this._partesCaminho = (Array.isArray(caminho) ? caminho : [caminho]).filter(Boolean).map((a) => String(a)).flatMap((a) => a.split("/")).filter(Boolean);
this.rotulo = rotulo; this.rotulo = rotulo;
} }
/** Retorna o caminho completo da rota /** Retorna o caminho completo da rota

View file

@ -166,7 +166,7 @@ declare class TipagemRotas<T extends {
** export const mCaminho = new TipagemRotas<{q:string}>("aplicacao","funcionalidade") ** export const mCaminho = new TipagemRotas<{q:string}>("aplicacao","funcionalidade")
*/ */
constructor({ caminho, acaoIr, rotulo, }: { constructor({ caminho, acaoIr, rotulo, }: {
caminho: string[] | string; caminho: (string | null | undefined)[] | string;
acaoIr?: undefined | ((endereco: string) => undefined); acaoIr?: undefined | ((endereco: string) => undefined);
/** Rotulo da página /** Rotulo da página
* Inicio | Controle * Inicio | Controle

File diff suppressed because one or more lines are too long

View file

@ -1,6 +1,6 @@
{ {
"name": "p-comuns", "name": "p-comuns",
"version": "0.222.0", "version": "0.223.0",
"description": "", "description": "",
"main": "./dist-back/index.js", "main": "./dist-back/index.js",
"module": "./dist-front/index.mjs", "module": "./dist-front/index.mjs",

View file

@ -22,7 +22,7 @@ export class TipagemRotas<T extends { [q: string]: string | undefined }> {
acaoIr, acaoIr,
rotulo, rotulo,
}: { }: {
caminho: string[] | string caminho: (string | null | undefined)[] | string
acaoIr?: undefined | ((endereco: string) => undefined) acaoIr?: undefined | ((endereco: string) => undefined)
/** Rotulo da página /** Rotulo da página
@ -33,6 +33,8 @@ export class TipagemRotas<T extends { [q: string]: string | undefined }> {
this._acaoIr = acaoIr this._acaoIr = acaoIr
this._partesCaminho = (Array.isArray(caminho) ? caminho : [caminho]) this._partesCaminho = (Array.isArray(caminho) ? caminho : [caminho])
.filter(Boolean)
.map((a) => String(a))
.flatMap((a) => a.split("/")) .flatMap((a) => a.split("/"))
.filter(Boolean) .filter(Boolean)
this.rotulo = rotulo this.rotulo = rotulo