34 lines
831 B
TypeScript
34 lines
831 B
TypeScript
![]() |
|
||
|
import { RootPathResolver } from "../dom/RootPathResolver";
|
||
|
import { App } from "./App";
|
||
|
|
||
|
export class AppPathConverter
|
||
|
{
|
||
|
#app:App;
|
||
|
|
||
|
// root: relative to root => ::/en/store
|
||
|
// absolute: internet/localhost => https://rokojori.com/en/store || localhost/en/store
|
||
|
// relative: to current page => ../en/store
|
||
|
|
||
|
constructor( app:App )
|
||
|
{
|
||
|
this.#app = app;
|
||
|
}
|
||
|
|
||
|
rootToRelative( rootPath:string )
|
||
|
{
|
||
|
// ::/en/store/
|
||
|
// -> ../../en/store
|
||
|
|
||
|
let page = this.#app.pageHandler.currentPage;
|
||
|
let rootToken = RootPathResolver.rootToken;
|
||
|
let pathToRoot = this.#app.pageHandler.rootPathResolver.getRootPath( page );
|
||
|
|
||
|
console.log( "PathToRoot", page, pathToRoot );
|
||
|
|
||
|
let value = rootPath;
|
||
|
value = value.replace( rootToken, pathToRoot );
|
||
|
|
||
|
return value;
|
||
|
}
|
||
|
}
|