@atria/server 0.0.6 → 0.0.7

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/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  HTTP runtime server for atria development.
4
4
 
5
- This package serves files from `.atria/runtime` and powers the `atria dev` command in local development.
5
+ This package powers `atria dev` by serving `public/` for the public site and `.atria/runtime` for the back-office host.
6
6
 
7
7
  ## Install
8
8
 
@@ -27,7 +27,9 @@ await server.close();
27
27
 
28
28
  ## Behavior
29
29
 
30
- - Serves static files from `<projectRoot>/.atria/runtime`.
31
- - Responds to `GET /api/health` with `{ "ok": true }`.
32
- - Falls back to `index.html` for non-file routes.
33
- - Blocks path traversal attempts outside runtime directory.
30
+ - Serves `localhost` from `<projectRoot>/public`.
31
+ - Serves `admin.localhost` from `<projectRoot>/.atria/runtime`.
32
+ - Responds to `GET /api/health` with `{ "ok": true, "site": "public" | "admin" }`.
33
+ - Returns `404` for missing public files/pages (serving `public/404.html` when present).
34
+ - Uses SPA-style `index.html` fallback only for `admin.localhost` non-file routes.
35
+ - Blocks path traversal attempts outside the configured public/admin roots.
package/dist/server.js CHANGED
@@ -1,8 +1,7 @@
1
1
  import { createServer } from "node:http";
2
2
  import { promises as fs } from "node:fs";
3
3
  import path from "node:path";
4
- import { ATRIA_RUNTIME_DIR } from "@atria/shared";
5
- const PUBLIC_OUTPUT_DIR = "public";
4
+ import { ATRIA_RUNTIME_DIR, PUBLIC_OUTPUT_DIR } from "@atria/shared";
6
5
  const DEV_PUBLIC_HOST = "localhost";
7
6
  const DEV_ADMIN_HOST = "admin.localhost";
8
7
  const MIME_TYPES = {
@@ -53,26 +52,69 @@ const resolveSiteTarget = (hostname) => {
53
52
  }
54
53
  return null;
55
54
  };
56
- const resolveRequestFile = async (runtimeDir, requestPath) => {
55
+ const resolveRootIndexFile = async (rootDir) => {
56
+ const rootIndexPath = path.join(rootDir, "index.html");
57
+ try {
58
+ const rootIndexStats = await fs.stat(rootIndexPath);
59
+ if (rootIndexStats.isFile()) {
60
+ return { type: "file", filePath: rootIndexPath };
61
+ }
62
+ }
63
+ catch {
64
+ // fall through to not found
65
+ }
66
+ return { type: "not-found" };
67
+ };
68
+ const resolveRequestFile = async (rootDir, requestPath, mode) => {
57
69
  const normalizedPath = requestPath === "/" ? "index.html" : requestPath.replace(/^\/+/, "");
58
- const filePath = path.join(runtimeDir, normalizedPath);
59
- if (normalizedPath !== "index.html" && !isInsideDirectory(runtimeDir, filePath)) {
60
- return null;
70
+ const filePath = path.join(rootDir, normalizedPath);
71
+ if (!isInsideDirectory(rootDir, filePath)) {
72
+ return { type: "forbidden" };
61
73
  }
62
74
  try {
63
75
  const fileStats = await fs.stat(filePath);
64
76
  if (fileStats.isDirectory()) {
65
- return path.join(filePath, "index.html");
77
+ const directoryIndexPath = path.join(filePath, "index.html");
78
+ if (!isInsideDirectory(rootDir, directoryIndexPath)) {
79
+ return { type: "forbidden" };
80
+ }
81
+ try {
82
+ const directoryIndexStats = await fs.stat(directoryIndexPath);
83
+ if (directoryIndexStats.isFile()) {
84
+ return { type: "file", filePath: directoryIndexPath };
85
+ }
86
+ }
87
+ catch {
88
+ // fall through to not found/fallback response
89
+ }
90
+ return mode === "spa-fallback" ? resolveRootIndexFile(rootDir) : { type: "not-found" };
66
91
  }
67
- return filePath;
92
+ if (fileStats.isFile()) {
93
+ return { type: "file", filePath };
94
+ }
95
+ return { type: "not-found" };
68
96
  }
69
97
  catch {
70
- if (path.extname(normalizedPath)) {
71
- return null;
98
+ if (mode === "spa-fallback" && !path.extname(normalizedPath)) {
99
+ return resolveRootIndexFile(rootDir);
72
100
  }
73
- return path.join(runtimeDir, "index.html");
101
+ return { type: "not-found" };
74
102
  }
75
103
  };
104
+ const respondWithPublicNotFound = async (response, publicDir) => {
105
+ const notFoundPagePath = path.join(publicDir, "404.html");
106
+ try {
107
+ const notFoundPage = await fs.readFile(notFoundPagePath);
108
+ response.writeHead(404, { "content-type": MIME_TYPES[".html"] });
109
+ response.end(notFoundPage);
110
+ return;
111
+ }
112
+ catch {
113
+ // Fall back to plain text when public/404.html is unavailable.
114
+ }
115
+ response.writeHead(404, { "content-type": MIME_TYPES[".txt"] });
116
+ response.end("Not Found");
117
+ };
76
118
  const closeServer = async (server) => new Promise((resolve, reject) => {
77
119
  server.close((error) => {
78
120
  if (error) {
@@ -88,7 +130,7 @@ export const startDevServer = async (options) => {
88
130
  const publicOutputDir = path.join(options.projectRoot, PUBLIC_OUTPUT_DIR);
89
131
  await fs.access(runtimeDir);
90
132
  const hasPublicOutput = await directoryExists(publicOutputDir);
91
- const publicDir = hasPublicOutput ? publicOutputDir : runtimeDir;
133
+ const publicDir = publicOutputDir;
92
134
  const publicFallbackToRuntime = !hasPublicOutput;
93
135
  const server = createServer(async (request, response) => {
94
136
  try {
@@ -107,14 +149,24 @@ export const startDevServer = async (options) => {
107
149
  return;
108
150
  }
109
151
  const rootDir = siteTarget === "admin" ? runtimeDir : publicDir;
110
- const targetFile = await resolveRequestFile(rootDir, decodeURIComponent(requestUrl.pathname));
111
- if (!targetFile) {
152
+ const mode = siteTarget === "admin" ? "spa-fallback" : "strict";
153
+ const targetFile = await resolveRequestFile(rootDir, decodeURIComponent(requestUrl.pathname), mode);
154
+ if (targetFile.type === "forbidden") {
112
155
  response.writeHead(403, { "content-type": MIME_TYPES[".txt"] });
113
156
  response.end("Forbidden");
114
157
  return;
115
158
  }
116
- const fileBuffer = await fs.readFile(targetFile);
117
- const extension = path.extname(targetFile);
159
+ if (targetFile.type === "not-found") {
160
+ if (siteTarget === "public") {
161
+ await respondWithPublicNotFound(response, publicDir);
162
+ return;
163
+ }
164
+ response.writeHead(404, { "content-type": MIME_TYPES[".txt"] });
165
+ response.end("Not Found");
166
+ return;
167
+ }
168
+ const fileBuffer = await fs.readFile(targetFile.filePath);
169
+ const extension = path.extname(targetFile.filePath);
118
170
  const contentType = MIME_TYPES[extension] ?? "application/octet-stream";
119
171
  response.writeHead(200, { "content-type": contentType });
120
172
  response.end(fileBuffer);
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAoC,MAAM,WAAW,CAAC;AAC3E,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACrE,MAAM,eAAe,GAAG,WAAW,CAAC;AACpC,MAAM,cAAc,GAAG,iBAAiB,CAAC;AA0BzC,MAAM,UAAU,GAA2B;IACzC,OAAO,EAAE,0BAA0B;IACnC,KAAK,EAAE,gCAAgC;IACvC,MAAM,EAAE,yBAAyB;IACjC,OAAO,EAAE,iCAAiC;IAC1C,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,2BAA2B;CACpC,CAAC;AAEF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;AAChF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAExD,MAAM,iBAAiB,GAAG,CAAC,QAAgB,EAAE,UAAkB,EAAW,EAAE;IAC1E,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACzD,OAAO,YAAY,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjG,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,KAAK,EAAE,aAAqB,EAAoB,EAAE;IACxE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3C,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,UAA8B,EAAiB,EAAE;IAC7E,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;IACnD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,UAAU,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACtD,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,QAAuB,EAAqB,EAAE;IACvE,IAAI,QAAQ,KAAK,IAAI,IAAI,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,KAAK,EAAE,OAAe,EAAiC,EAAE;IACpF,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC;YAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;QACnD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,4BAA4B;IAC9B,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,KAAK,EAC9B,OAAe,EACf,WAAmB,EACnB,IAAwB,EACO,EAAE;IACjC,MAAM,cAAc,GAAG,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5F,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAEpD,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC1C,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;YAC5B,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC7D,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,CAAC,EAAE,CAAC;gBACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAC/B,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,mBAAmB,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAC9D,IAAI,mBAAmB,CAAC,MAAM,EAAE,EAAE,CAAC;oBACjC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;gBACxD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,8CAA8C;YAChD,CAAC;YAED,OAAO,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QACzF,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YACvB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QACpC,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,IAAI,KAAK,cAAc,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAC7D,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAC/B,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,KAAK,EACrC,QAAwB,EACxB,SAAiB,EACF,EAAE;IACjB,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC1D,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACzD,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACjE,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,OAAO;IACT,CAAC;IAAC,MAAM,CAAC;QACP,+DAA+D;IACjE,CAAC;IAED,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAChE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,KAAK,EAAE,MAAc,EAAiB,EAAE,CAC1D,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,KAAK,CAAC,CAAC;YACd,OAAO;QACT,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,OAA8B,EACJ,EAAE;IAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC;IACzC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IACrE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IAE1E,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC5B,MAAM,eAAe,GAAG,MAAM,eAAe,CAAC,eAAe,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,eAAe,CAAC;IAClC,MAAM,uBAAuB,GAAG,CAAC,eAAe,CAAC;IAEjD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;QACtD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5D,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChE,QAAQ,CAAC,GAAG,CAAC,qBAAqB,eAAe,OAAO,cAAc,GAAG,CAAC,CAAC;gBAC3E,OAAO;YACT,CAAC;YAED,MAAM,WAAW,GAAG,QAAQ,IAAI,eAAe,CAAC;YAChD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,WAAW,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAExF,IAAI,UAAU,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;gBAC1C,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACjE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;gBAC7D,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,MAAM,IAAI,GAAG,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;YAChE,MAAM,UAAU,GAAG,MAAM,kBAAkB,CACzC,OAAO,EACP,kBAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,EACvC,IAAI,CACL,CAAC;YAEF,IAAI,UAAU,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACpC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC1B,OAAO;YACT,CAAC;YAED,IAAI,UAAU,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACpC,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;oBAC5B,MAAM,yBAAyB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBACrD,OAAO;gBACT,CAAC;gBAED,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC1B,OAAO;YACT,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,0BAA0B,CAAC;YAExE,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;YACzD,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;YACrC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5B,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,GAAG,EAAE,UAAU,eAAe,IAAI,OAAO,CAAC,IAAI,EAAE;QAChD,SAAS,EAAE,UAAU,eAAe,IAAI,OAAO,CAAC,IAAI,EAAE;QACtD,QAAQ,EAAE,UAAU,cAAc,IAAI,OAAO,CAAC,IAAI,EAAE;QACpD,gBAAgB,EAAE,SAAS;QAC3B,eAAe,EAAE,UAAU;QAC3B,uBAAuB;QACvB,KAAK,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC;KACjC,CAAC;AACJ,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atria/server",
3
- "version": "0.0.6",
3
+ "version": "0.0.7",
4
4
  "description": "HTTP server and runtime delivery for atria",
5
5
  "keywords": [
6
6
  "atria",
@@ -24,7 +24,7 @@
24
24
  "dist"
25
25
  ],
26
26
  "dependencies": {
27
- "@atria/shared": "0.0.6"
27
+ "@atria/shared": "0.0.7"
28
28
  },
29
29
  "publishConfig": {
30
30
  "access": "public"