@proteinjs/server-api 1.4.3 → 1.5.1

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/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.5.0](https://github.com/brentbahry/server/compare/@proteinjs/server-api@1.4.3...@proteinjs/server-api@1.5.0) (2024-08-26)
7
+
8
+
9
+ ### Features
10
+
11
+ * add static options to server config ([d00ef75](https://github.com/brentbahry/server/commit/d00ef753af82cdca466d6bf8b273633283a7a20a))
12
+
13
+
14
+
15
+
16
+
6
17
  ## [1.4.2](https://github.com/brentbahry/server/compare/@proteinjs/server-api@1.4.1...@proteinjs/server-api@1.4.2) (2024-08-16)
7
18
 
8
19
  **Note:** Version bump only for package @proteinjs/server-api
@@ -17,7 +17,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  require("@proteinjs/reflection");
19
19
  /** Generate Source Graph */
20
- var sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/server-api/IEnvRepo\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"IEnvRepo\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/EnvInfo.ts\",\"qualifiedName\":\"@proteinjs/server-api/IEnvRepo\",\"properties\":[],\"methods\":[{\"name\":\"getEnv\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/reflection/Loadable\"},{\"v\":\"@proteinjs/server-api/EnvRepo\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"EnvRepo\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/EnvRepo.ts\",\"qualifiedName\":\"@proteinjs/server-api/EnvRepo\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"getEnv\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"setEnv\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"env\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"IEnvRepo\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/IEnvRepo\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/RequestListener\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"RequestListener\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/RequestListener.ts\",\"qualifiedName\":\"@proteinjs/server-api/RequestListener\",\"properties\":[],\"methods\":[{\"name\":\"beforeRequest\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"request\",\"type\":{\"packageName\":\"\",\"name\":\"express.Request\",\"filePath\":null,\"qualifiedName\":\"/express.Request\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"response\",\"type\":{\"packageName\":\"\",\"name\":\"express.Response\",\"filePath\":null,\"qualifiedName\":\"/express.Response\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"afterRequest\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"request\",\"type\":{\"packageName\":\"\",\"name\":\"express.Request\",\"filePath\":null,\"qualifiedName\":\"/express.Request\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"response\",\"type\":{\"packageName\":\"\",\"name\":\"express.Response\",\"filePath\":null,\"qualifiedName\":\"/express.Response\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/Route\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Route\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/Route.ts\",\"qualifiedName\":\"@proteinjs/server-api/Route\",\"properties\":[{\"name\":\"path\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"method\",\"type\":{\"packageName\":\"\",\"name\":\"'get' | 'post' | 'put' | 'patch' | 'delete'\",\"filePath\":null,\"qualifiedName\":\"/'get' | 'post' | 'put' | 'patch' | 'delete'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"useHttp\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"onRequest\",\"type\":{\"packageName\":\"\",\"name\":\"(request: express.Request, response: express.Response) => Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/(request: express.Request, response: express.Response) => Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/ServerRenderedScript.ts\",\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/StartupTask\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"StartupTask\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/StartupTask.ts\",\"qualifiedName\":\"@proteinjs/server-api/StartupTask\",\"properties\":[{\"name\":\"name\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"when\",\"type\":{\"packageName\":\"\",\"name\":\"'before server config' | 'after server config' | 'after server start'\",\"filePath\":null,\"qualifiedName\":\"/'before server config' | 'after server config' | 'after server start'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"run\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"BrowserGlobalDataStorage\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/global/BrowserGlobalDataStorage.ts\",\"qualifiedName\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"environment\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataStorage\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalDataStorage\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/GlobalDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataStorage\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/global/Global.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataStorage\",\"properties\":[{\"name\":\"environment\",\"type\":{\"packageName\":\"\",\"name\":\"'node' | 'browser'\",\"filePath\":null,\"qualifiedName\":\"/'node' | 'browser'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":{\"packageName\":\"\",\"name\":\"void\",\"filePath\":null,\"qualifiedName\":\"/void\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/GlobalDataCache\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataCache\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/global/GlobalDataCache.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataCache\",\"properties\":[{\"name\":\"key\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"create\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[\"/T\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataScriptTag\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/global/GlobalDataScriptTag.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"BrowserSessionDataStorage\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/session/BrowserSessionDataStorage.ts\",\"qualifiedName\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"environment\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataStorage\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionDataStorage\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/SessionDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataStorage\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/session/Session.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataStorage\",\"properties\":[{\"name\":\"environment\",\"type\":{\"packageName\":\"\",\"name\":\"'node' | 'browser'\",\"filePath\":null,\"qualifiedName\":\"/'node' | 'browser'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":{\"packageName\":\"\",\"name\":\"void\",\"filePath\":null,\"qualifiedName\":\"/void\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/SessionDataCache\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataCache\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/session/SessionDataCache.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataCache\",\"properties\":[{\"name\":\"key\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"create\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"sessionId\",\"type\":{\"packageName\":\"\",\"name\":\"string | undefined\",\"filePath\":null,\"qualifiedName\":\"/string | undefined\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"user\",\"type\":{\"packageName\":\"\",\"name\":\"string | undefined\",\"filePath\":null,\"qualifiedName\":\"/string | undefined\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/T\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/SessionDataScriptTag\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataScriptTag\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/session/SessionDataScriptTag.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataScriptTag\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}}],\"edges\":[{\"v\":\"@proteinjs/server-api/IEnvRepo\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/EnvRepo\",\"w\":\"@proteinjs/server-api/IEnvRepo\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/RequestListener\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/Route\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/ServerRenderedScript\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/StartupTask\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"w\":\"@proteinjs/server-api/GlobalDataStorage\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataStorage\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataCache\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"w\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"w\":\"@proteinjs/server-api/SessionDataStorage\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/SessionDataStorage\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/SessionDataCache\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/SessionDataScriptTag\",\"w\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":\"implements interface\"}]}";
20
+ var sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/server-api/IEnvRepo\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"IEnvRepo\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/EnvInfo.ts\",\"qualifiedName\":\"@proteinjs/server-api/IEnvRepo\",\"properties\":[],\"methods\":[{\"name\":\"getEnv\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/reflection/Loadable\"},{\"v\":\"@proteinjs/server-api/EnvRepo\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"EnvRepo\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/EnvRepo.ts\",\"qualifiedName\":\"@proteinjs/server-api/EnvRepo\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"getEnv\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"setEnv\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"env\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"IEnvRepo\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/IEnvRepo\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/RequestListener\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"RequestListener\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/RequestListener.ts\",\"qualifiedName\":\"@proteinjs/server-api/RequestListener\",\"properties\":[],\"methods\":[{\"name\":\"beforeRequest\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"request\",\"type\":{\"packageName\":\"\",\"name\":\"express.Request\",\"filePath\":null,\"qualifiedName\":\"/express.Request\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"response\",\"type\":{\"packageName\":\"\",\"name\":\"express.Response\",\"filePath\":null,\"qualifiedName\":\"/express.Response\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"afterRequest\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"request\",\"type\":{\"packageName\":\"\",\"name\":\"express.Request\",\"filePath\":null,\"qualifiedName\":\"/express.Request\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"response\",\"type\":{\"packageName\":\"\",\"name\":\"express.Response\",\"filePath\":null,\"qualifiedName\":\"/express.Response\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/Route\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Route\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/Route.ts\",\"qualifiedName\":\"@proteinjs/server-api/Route\",\"properties\":[{\"name\":\"path\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"method\",\"type\":{\"packageName\":\"\",\"name\":\"'get' | 'post' | 'put' | 'patch' | 'delete'\",\"filePath\":null,\"qualifiedName\":\"/'get' | 'post' | 'put' | 'patch' | 'delete'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"useHttp\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"onRequest\",\"type\":{\"packageName\":\"\",\"name\":\"(request: express.Request, response: express.Response) => Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/(request: express.Request, response: express.Response) => Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/ServerRenderedScript.ts\",\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/StartupTask\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"StartupTask\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/StartupTask.ts\",\"qualifiedName\":\"@proteinjs/server-api/StartupTask\",\"properties\":[{\"name\":\"name\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"when\",\"type\":{\"packageName\":\"\",\"name\":\"'before server config' | 'after server config' | 'after server start'\",\"filePath\":null,\"qualifiedName\":\"/'before server config' | 'after server config' | 'after server start'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"run\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"BrowserGlobalDataStorage\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/global/BrowserGlobalDataStorage.ts\",\"qualifiedName\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"environment\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataStorage\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalDataStorage\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/GlobalDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataStorage\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/global/Global.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataStorage\",\"properties\":[{\"name\":\"environment\",\"type\":{\"packageName\":\"\",\"name\":\"'node' | 'browser'\",\"filePath\":null,\"qualifiedName\":\"/'node' | 'browser'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":{\"packageName\":\"\",\"name\":\"void\",\"filePath\":null,\"qualifiedName\":\"/void\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/GlobalDataCache\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataCache\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/global/GlobalDataCache.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataCache\",\"properties\":[{\"name\":\"key\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"create\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[\"/T\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataScriptTag\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/global/GlobalDataScriptTag.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"BrowserSessionDataStorage\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/session/BrowserSessionDataStorage.ts\",\"qualifiedName\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"environment\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataStorage\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionDataStorage\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/SessionDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataStorage\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/session/Session.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataStorage\",\"properties\":[{\"name\":\"environment\",\"type\":{\"packageName\":\"\",\"name\":\"'node' | 'browser'\",\"filePath\":null,\"qualifiedName\":\"/'node' | 'browser'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":{\"packageName\":\"\",\"name\":\"void\",\"filePath\":null,\"qualifiedName\":\"/void\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/SessionDataCache\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataCache\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/session/SessionDataCache.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataCache\",\"properties\":[{\"name\":\"key\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"create\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"sessionId\",\"type\":{\"packageName\":\"\",\"name\":\"string | undefined\",\"filePath\":null,\"qualifiedName\":\"/string | undefined\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"user\",\"type\":{\"packageName\":\"\",\"name\":\"string | undefined\",\"filePath\":null,\"qualifiedName\":\"/string | undefined\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/T\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/SessionDataScriptTag\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataScriptTag\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/session/SessionDataScriptTag.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataScriptTag\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}}],\"edges\":[{\"v\":\"@proteinjs/server-api/IEnvRepo\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/EnvRepo\",\"w\":\"@proteinjs/server-api/IEnvRepo\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/RequestListener\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/Route\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/ServerRenderedScript\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/StartupTask\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"w\":\"@proteinjs/server-api/GlobalDataStorage\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataStorage\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataCache\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"w\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"w\":\"@proteinjs/server-api/SessionDataStorage\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/SessionDataStorage\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/SessionDataCache\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/SessionDataScriptTag\",\"w\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":\"implements interface\"}]}";
21
21
  /** Generate Source Links */
22
22
  var EnvRepo_1 = require("../src/EnvRepo");
23
23
  var BrowserGlobalDataStorage_1 = require("../src/global/BrowserGlobalDataStorage");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../generated/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,iCAA+B;AAG/B,4BAA4B;AAE5B,IAAM,WAAW,GAAG,0zrBAA0zrB,CAAC;AAG/0rB,4BAA4B;AAE5B,0CAAyC;AACzC,mFAAkF;AAClF,yEAAwE;AACxE,sFAAqF;AACrF,4EAA2E;AAE3E,IAAM,WAAW,GAAG;IACnB,+BAA+B,EAAE,iBAAO;IACxC,gDAAgD,EAAE,mDAAwB;IAC1E,2CAA2C,EAAE,yCAAmB;IAChE,iDAAiD,EAAE,qDAAyB;IAC5E,4CAA4C,EAAE,2CAAoB;CAClE,CAAC;AAGF,kCAAkC;AAElC,oDAAyD;AACzD,6BAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAGjD,2CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../generated/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,iCAA+B;AAG/B,4BAA4B;AAE5B,IAAM,WAAW,GAAG,ovrBAAovrB,CAAC;AAGzwrB,4BAA4B;AAE5B,0CAAyC;AACzC,mFAAkF;AAClF,yEAAwE;AACxE,sFAAqF;AACrF,4EAA2E;AAE3E,IAAM,WAAW,GAAG;IACnB,+BAA+B,EAAE,iBAAO;IACxC,gDAAgD,EAAE,mDAAwB;IAC1E,2CAA2C,EAAE,yCAAmB;IAChE,iDAAiD,EAAE,qDAAyB;IAC5E,4CAA4C,EAAE,2CAAoB;CAClE,CAAC;AAGF,kCAAkC;AAElC,oDAAyD;AACzD,6BAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAGjD,2CAAyB"}
@@ -1,5 +1,6 @@
1
1
  import express from 'express';
2
2
  import expressSession from 'express-session';
3
+ import serveStatic = require('serve-static');
3
4
  type MakeMandatory<T, K extends keyof T> = Omit<T, K> & Required<Pick<T, K>>;
4
5
  export interface ServerConfig {
5
6
  /**
@@ -13,6 +14,7 @@ export interface ServerConfig {
13
14
  authenticate?: (username: string, password: string) => Promise<true | string>;
14
15
  staticContent?: {
15
16
  staticContentDir?: string;
17
+ staticOptions?: serveStatic.ServeStaticOptions;
16
18
  /** @deprecated use bundlesDir instead */
17
19
  bundlePaths?: string[];
18
20
  /** Dir containing bundles; relative from `staticContentDir`. */
@@ -1 +1 @@
1
- {"version":3,"file":"ServerConfig.d.ts","sourceRoot":"","sources":["../../src/ServerConfig.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,cAAc,MAAM,iBAAiB,CAAC;AAE7C,KAAK,aAAa,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE7E,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC;IAC1E,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;IAC9E,aAAa,CAAC,EAAE;QACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,yCAAyC;QACzC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,gEAAgE;QAChE,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,uCAAuC;QACvC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,8CAA8C;QAC9C,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,gIAAgI;IAChI,eAAe,CAAC,EAAE;QAChB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE;QACR,qBAAqB,CAAC,EAAE,OAAO,CAAC;QAChC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACpH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACnH,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH"}
1
+ {"version":3,"file":"ServerConfig.d.ts","sourceRoot":"","sources":["../../src/ServerConfig.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,cAAc,MAAM,iBAAiB,CAAC;AAC7C,OAAO,WAAW,GAAG,QAAQ,cAAc,CAAC,CAAC;AAE7C,KAAK,aAAa,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE7E,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC;IAC1E,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;IAC9E,aAAa,CAAC,EAAE;QACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,aAAa,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC;QAC/C,yCAAyC;QACzC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,gEAAgE;QAChE,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,uCAAuC;QACvC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,8CAA8C;QAC9C,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,gIAAgI;IAChI,eAAe,CAAC,EAAE;QAChB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE;QACR,qBAAqB,CAAC,EAAE,OAAO,CAAC;QAChC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACpH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACnH,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH"}
@@ -5,7 +5,7 @@ import '@proteinjs/reflection';
5
5
 
6
6
  /** Generate Source Graph */
7
7
 
8
- const sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/server-api/IEnvRepo\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"IEnvRepo\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/EnvInfo.ts\",\"qualifiedName\":\"@proteinjs/server-api/IEnvRepo\",\"properties\":[],\"methods\":[{\"name\":\"getEnv\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/reflection/Loadable\"},{\"v\":\"@proteinjs/server-api/EnvRepo\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"EnvRepo\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/EnvRepo.ts\",\"qualifiedName\":\"@proteinjs/server-api/EnvRepo\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"getEnv\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"setEnv\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"env\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"IEnvRepo\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/IEnvRepo\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/RequestListener\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"RequestListener\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/RequestListener.ts\",\"qualifiedName\":\"@proteinjs/server-api/RequestListener\",\"properties\":[],\"methods\":[{\"name\":\"beforeRequest\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"request\",\"type\":{\"packageName\":\"\",\"name\":\"express.Request\",\"filePath\":null,\"qualifiedName\":\"/express.Request\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"response\",\"type\":{\"packageName\":\"\",\"name\":\"express.Response\",\"filePath\":null,\"qualifiedName\":\"/express.Response\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"afterRequest\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"request\",\"type\":{\"packageName\":\"\",\"name\":\"express.Request\",\"filePath\":null,\"qualifiedName\":\"/express.Request\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"response\",\"type\":{\"packageName\":\"\",\"name\":\"express.Response\",\"filePath\":null,\"qualifiedName\":\"/express.Response\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/Route\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Route\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/Route.ts\",\"qualifiedName\":\"@proteinjs/server-api/Route\",\"properties\":[{\"name\":\"path\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"method\",\"type\":{\"packageName\":\"\",\"name\":\"'get' | 'post' | 'put' | 'patch' | 'delete'\",\"filePath\":null,\"qualifiedName\":\"/'get' | 'post' | 'put' | 'patch' | 'delete'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"useHttp\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"onRequest\",\"type\":{\"packageName\":\"\",\"name\":\"(request: express.Request, response: express.Response) => Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/(request: express.Request, response: express.Response) => Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/ServerRenderedScript.ts\",\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/StartupTask\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"StartupTask\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/StartupTask.ts\",\"qualifiedName\":\"@proteinjs/server-api/StartupTask\",\"properties\":[{\"name\":\"name\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"when\",\"type\":{\"packageName\":\"\",\"name\":\"'before server config' | 'after server config' | 'after server start'\",\"filePath\":null,\"qualifiedName\":\"/'before server config' | 'after server config' | 'after server start'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"run\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"BrowserGlobalDataStorage\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/global/BrowserGlobalDataStorage.ts\",\"qualifiedName\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"environment\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataStorage\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalDataStorage\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/GlobalDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataStorage\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/global/Global.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataStorage\",\"properties\":[{\"name\":\"environment\",\"type\":{\"packageName\":\"\",\"name\":\"'node' | 'browser'\",\"filePath\":null,\"qualifiedName\":\"/'node' | 'browser'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":{\"packageName\":\"\",\"name\":\"void\",\"filePath\":null,\"qualifiedName\":\"/void\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/GlobalDataCache\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataCache\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/global/GlobalDataCache.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataCache\",\"properties\":[{\"name\":\"key\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"create\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[\"/T\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataScriptTag\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/global/GlobalDataScriptTag.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"BrowserSessionDataStorage\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/session/BrowserSessionDataStorage.ts\",\"qualifiedName\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"environment\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataStorage\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionDataStorage\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/SessionDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataStorage\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/session/Session.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataStorage\",\"properties\":[{\"name\":\"environment\",\"type\":{\"packageName\":\"\",\"name\":\"'node' | 'browser'\",\"filePath\":null,\"qualifiedName\":\"/'node' | 'browser'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":{\"packageName\":\"\",\"name\":\"void\",\"filePath\":null,\"qualifiedName\":\"/void\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/SessionDataCache\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataCache\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/session/SessionDataCache.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataCache\",\"properties\":[{\"name\":\"key\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"create\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"sessionId\",\"type\":{\"packageName\":\"\",\"name\":\"string | undefined\",\"filePath\":null,\"qualifiedName\":\"/string | undefined\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"user\",\"type\":{\"packageName\":\"\",\"name\":\"string | undefined\",\"filePath\":null,\"qualifiedName\":\"/string | undefined\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/T\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/SessionDataScriptTag\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataScriptTag\",\"filePath\":\"/Users/brentbahry/workspaces/n3xa/packages/proteinjs/packages/server/packages/api/src/session/SessionDataScriptTag.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataScriptTag\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}}],\"edges\":[{\"v\":\"@proteinjs/server-api/IEnvRepo\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/EnvRepo\",\"w\":\"@proteinjs/server-api/IEnvRepo\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/RequestListener\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/Route\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/ServerRenderedScript\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/StartupTask\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"w\":\"@proteinjs/server-api/GlobalDataStorage\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataStorage\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataCache\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"w\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"w\":\"@proteinjs/server-api/SessionDataStorage\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/SessionDataStorage\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/SessionDataCache\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/SessionDataScriptTag\",\"w\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":\"implements interface\"}]}";
8
+ const sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/server-api/IEnvRepo\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"IEnvRepo\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/EnvInfo.ts\",\"qualifiedName\":\"@proteinjs/server-api/IEnvRepo\",\"properties\":[],\"methods\":[{\"name\":\"getEnv\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/reflection/Loadable\"},{\"v\":\"@proteinjs/server-api/EnvRepo\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"EnvRepo\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/EnvRepo.ts\",\"qualifiedName\":\"@proteinjs/server-api/EnvRepo\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"getEnv\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"setEnv\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"env\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Env\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/Env\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"IEnvRepo\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/IEnvRepo\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/RequestListener\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"RequestListener\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/RequestListener.ts\",\"qualifiedName\":\"@proteinjs/server-api/RequestListener\",\"properties\":[],\"methods\":[{\"name\":\"beforeRequest\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"request\",\"type\":{\"packageName\":\"\",\"name\":\"express.Request\",\"filePath\":null,\"qualifiedName\":\"/express.Request\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"response\",\"type\":{\"packageName\":\"\",\"name\":\"express.Response\",\"filePath\":null,\"qualifiedName\":\"/express.Response\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"afterRequest\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"request\",\"type\":{\"packageName\":\"\",\"name\":\"express.Request\",\"filePath\":null,\"qualifiedName\":\"/express.Request\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"response\",\"type\":{\"packageName\":\"\",\"name\":\"express.Response\",\"filePath\":null,\"qualifiedName\":\"/express.Response\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/Route\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"Route\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/Route.ts\",\"qualifiedName\":\"@proteinjs/server-api/Route\",\"properties\":[{\"name\":\"path\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"method\",\"type\":{\"packageName\":\"\",\"name\":\"'get' | 'post' | 'put' | 'patch' | 'delete'\",\"filePath\":null,\"qualifiedName\":\"/'get' | 'post' | 'put' | 'patch' | 'delete'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"useHttp\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"onRequest\",\"type\":{\"packageName\":\"\",\"name\":\"(request: express.Request, response: express.Response) => Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/(request: express.Request, response: express.Response) => Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/ServerRenderedScript.ts\",\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/StartupTask\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"StartupTask\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/StartupTask.ts\",\"qualifiedName\":\"@proteinjs/server-api/StartupTask\",\"properties\":[{\"name\":\"name\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"when\",\"type\":{\"packageName\":\"\",\"name\":\"'before server config' | 'after server config' | 'after server start'\",\"filePath\":null,\"qualifiedName\":\"/'before server config' | 'after server config' | 'after server start'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"run\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"BrowserGlobalDataStorage\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/global/BrowserGlobalDataStorage.ts\",\"qualifiedName\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"environment\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataStorage\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalDataStorage\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/GlobalDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataStorage\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/global/Global.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataStorage\",\"properties\":[{\"name\":\"environment\",\"type\":{\"packageName\":\"\",\"name\":\"'node' | 'browser'\",\"filePath\":null,\"qualifiedName\":\"/'node' | 'browser'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":{\"packageName\":\"\",\"name\":\"void\",\"filePath\":null,\"qualifiedName\":\"/void\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/GlobalData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/GlobalDataCache\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataCache\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/global/GlobalDataCache.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataCache\",\"properties\":[{\"name\":\"key\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"create\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[\"/T\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"GlobalDataScriptTag\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/global/GlobalDataScriptTag.ts\",\"qualifiedName\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"BrowserSessionDataStorage\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/session/BrowserSessionDataStorage.ts\",\"qualifiedName\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"environment\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataStorage\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionDataStorage\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/SessionDataStorage\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataStorage\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/session/Session.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataStorage\",\"properties\":[{\"name\":\"environment\",\"type\":{\"packageName\":\"\",\"name\":\"'node' | 'browser'\",\"filePath\":null,\"qualifiedName\":\"/'node' | 'browser'\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"setData\",\"returnType\":{\"packageName\":\"\",\"name\":\"void\",\"filePath\":null,\"qualifiedName\":\"/void\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"data\",\"type\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getData\",\"returnType\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/SessionData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/SessionDataCache\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataCache\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/session/SessionDataCache.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataCache\",\"properties\":[{\"name\":\"key\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"create\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"sessionId\",\"type\":{\"packageName\":\"\",\"name\":\"string | undefined\",\"filePath\":null,\"qualifiedName\":\"/string | undefined\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"user\",\"type\":{\"packageName\":\"\",\"name\":\"string | undefined\",\"filePath\":null,\"qualifiedName\":\"/string | undefined\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/T\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/server-api/SessionDataScriptTag\",\"value\":{\"packageName\":\"@proteinjs/server-api\",\"name\":\"SessionDataScriptTag\",\"filePath\":\"/Users/brentbahry/repos/n3xa/packages/proteinjs/packages/server/packages/api/src/session/SessionDataScriptTag.ts\",\"qualifiedName\":\"@proteinjs/server-api/SessionDataScriptTag\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[{\"name\":\"script\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"ServerRenderedScript\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/ServerRenderedScript\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}}],\"edges\":[{\"v\":\"@proteinjs/server-api/IEnvRepo\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/EnvRepo\",\"w\":\"@proteinjs/server-api/IEnvRepo\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/RequestListener\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/Route\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/ServerRenderedScript\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/StartupTask\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/BrowserGlobalDataStorage\",\"w\":\"@proteinjs/server-api/GlobalDataStorage\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataStorage\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataCache\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/GlobalDataScriptTag\",\"w\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/BrowserSessionDataStorage\",\"w\":\"@proteinjs/server-api/SessionDataStorage\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/server-api/SessionDataStorage\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/SessionDataCache\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/server-api/SessionDataScriptTag\",\"w\":\"@proteinjs/server-api/ServerRenderedScript\",\"value\":\"implements interface\"}]}";
9
9
 
10
10
 
11
11
  /** Generate Source Links */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@proteinjs/server-api",
3
- "version": "1.4.3",
3
+ "version": "1.5.1",
4
4
  "description": "Server apis only (server implementation in @proteinjs/server)",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -21,10 +21,10 @@
21
21
  "watch": "reflection-watch"
22
22
  },
23
23
  "dependencies": {
24
- "@proteinjs/reflection": "1.1.9"
24
+ "@proteinjs/reflection": "1.1.10"
25
25
  },
26
26
  "devDependencies": {
27
- "@proteinjs/reflection-build": "1.0.24",
27
+ "@proteinjs/reflection-build": "1.0.25",
28
28
  "@types/body-parser": "1.19.0",
29
29
  "@types/compression": "1.7.0",
30
30
  "@types/cookie-parser": "1.4.2",
@@ -1,5 +1,6 @@
1
1
  import express from 'express';
2
2
  import expressSession from 'express-session';
3
+ import serveStatic = require('serve-static');
3
4
 
4
5
  type MakeMandatory<T, K extends keyof T> = Omit<T, K> & Required<Pick<T, K>>;
5
6
 
@@ -15,6 +16,7 @@ export interface ServerConfig {
15
16
  authenticate?: (username: string, password: string) => Promise<true | string>;
16
17
  staticContent?: {
17
18
  staticContentDir?: string;
19
+ staticOptions?: serveStatic.ServeStaticOptions;
18
20
  /** @deprecated use bundlesDir instead */
19
21
  bundlePaths?: string[];
20
22
  /** Dir containing bundles; relative from `staticContentDir`. */