@@ -4,7 +4,9 @@ import http from "node:http";
44import path from "node:path" ;
55
66// Import Third-party Dependencies
7- import { getBuildConfiguration } from "@nodesecure/documentation-ui/node" ;
7+ import {
8+ getBuildConfiguration
9+ } from "@nodesecure/documentation-ui/node" ;
810import * as i18n from "@nodesecure/i18n" ;
911import chokidar from "chokidar" ;
1012import esbuild from "esbuild" ;
@@ -14,12 +16,17 @@ import sirv from "sirv";
1416// Import Internal Dependencies
1517import english from "./i18n/english.js" ;
1618import french from "./i18n/french.js" ;
17- import { context as als , type AsyncStoreContext } from "./workspaces/server/src/ALS.ts" ;
18- import { ViewBuilder } from "./workspaces/server/src/ViewBuilder.class.ts" ;
19- import { cache } from "./workspaces/server/src/cache.ts" ;
20- import { getApiRouter } from "./workspaces/server/src/endpoints/index.ts" ;
21- import { logger } from "./workspaces/server/src/logger.ts" ;
22- import { WebSocketServerInstanciator } from "./workspaces/server/src/websocket/index.ts" ;
19+
20+ import {
21+ PayloadCache
22+ } from "./workspaces/cache/src/index.ts" ;
23+ import {
24+ WebSocketServerInstanciator ,
25+ logger ,
26+ ViewBuilder ,
27+ getApiRouter ,
28+ context as als , type AsyncStoreContext
29+ } from "./workspaces/server/src/index.ts" ;
2330
2431// CONSTANTS
2532const kPublicDir = path . join ( import . meta. dirname , "public" ) ;
@@ -73,10 +80,13 @@ const { hosts: esbuildHosts, port: esbuildPort } = await buildContext.serve({
7380 servedir : kOutDir
7481} ) ;
7582
76- const dataFilePath = await fsAsync . access ( kDefaultPayloadPath ) . then ( ( ) => kDefaultPayloadPath , ( ) => undefined ) ;
83+ const dataFilePath = await fsAsync . access (
84+ kDefaultPayloadPath
85+ ) . then ( ( ) => kDefaultPayloadPath , ( ) => undefined ) ;
86+ const cache = await new PayloadCache ( ) . load ( ) ;
7787
7888if ( dataFilePath === undefined ) {
79- cache . startFromZero = true ;
89+ cache . setCurrentSpec ( null ) ;
8090}
8191
8292const store : AsyncStoreContext = {
@@ -85,7 +95,7 @@ const store: AsyncStoreContext = {
8595 projectRootDir : import . meta. dirname ,
8696 componentsDir : kComponentsDir
8797 } ) ,
88- dataFilePath
98+ cache
8999} ;
90100const htmlWatcher = chokidar . watch ( kComponentsDir , {
91101 persistent : false ,
@@ -129,7 +139,7 @@ function defaultRoute(req: http.IncomingMessage, res: http.ServerResponse) {
129139
130140const apiRouter = getApiRouter ( defaultRoute ) ;
131141
132- const httpServer = http . createServer ( ( req , res ) => als . run ( store , ( ) => apiRouter . lookup ( req , res ) ) )
142+ http . createServer ( ( req , res ) => als . run ( store , ( ) => apiRouter . lookup ( req , res ) ) )
133143 . listen ( kDevPort , ( ) => {
134144 console . log ( `Dev server: http://localhost:${ kDevPort } ` ) ;
135145 open ( `http://localhost:${ kDevPort } ` ) ;
0 commit comments