miqro 7.1.0 → 7.2.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.
Files changed (222) hide show
  1. package/README.md +92 -24
  2. package/build/editor.bundle.js +3 -3
  3. package/build/esm/editor/auth.js +3 -1
  4. package/build/esm/editor/auth.js.map +1 -0
  5. package/build/esm/editor/common/admin-interface.js +1 -0
  6. package/build/esm/editor/common/admin-interface.js.map +1 -0
  7. package/build/esm/editor/common/constants.js +1 -0
  8. package/build/esm/editor/common/constants.js.map +1 -0
  9. package/build/esm/editor/common/constants.server.js +1 -0
  10. package/build/esm/editor/common/constants.server.js.map +1 -0
  11. package/build/esm/editor/common/editor-index.js +1 -0
  12. package/build/esm/editor/common/editor-index.js.map +1 -0
  13. package/build/esm/editor/common/html-encode.js +1 -0
  14. package/build/esm/editor/common/html-encode.js.map +1 -0
  15. package/build/esm/editor/common/log-socket.js +1 -0
  16. package/build/esm/editor/common/log-socket.js.map +1 -0
  17. package/build/esm/editor/common/templates.js +1 -0
  18. package/build/esm/editor/common/templates.js.map +1 -0
  19. package/build/esm/editor/components/api-preview.js +1 -0
  20. package/build/esm/editor/components/api-preview.js.map +1 -0
  21. package/build/esm/editor/components/editor.js +1 -0
  22. package/build/esm/editor/components/editor.js.map +1 -0
  23. package/build/esm/editor/components/file-browser.js +1 -0
  24. package/build/esm/editor/components/file-browser.js.map +1 -0
  25. package/build/esm/editor/components/file-editor-toolbar.js +1 -0
  26. package/build/esm/editor/components/file-editor-toolbar.js.map +1 -0
  27. package/build/esm/editor/components/file-editor.js +1 -0
  28. package/build/esm/editor/components/file-editor.js.map +1 -0
  29. package/build/esm/editor/components/filter-query.js +1 -0
  30. package/build/esm/editor/components/filter-query.js.map +1 -0
  31. package/build/esm/editor/components/highlight-text-area.js +1 -0
  32. package/build/esm/editor/components/highlight-text-area.js.map +1 -0
  33. package/build/esm/editor/components/log-viewer.js +1 -0
  34. package/build/esm/editor/components/log-viewer.js.map +1 -0
  35. package/build/esm/editor/components/new-file.js +1 -0
  36. package/build/esm/editor/components/new-file.js.map +1 -0
  37. package/build/esm/editor/components/scroll-query.js +1 -0
  38. package/build/esm/editor/components/scroll-query.js.map +1 -0
  39. package/build/esm/editor/components/start-page.js +1 -0
  40. package/build/esm/editor/components/start-page.js.map +1 -0
  41. package/build/esm/editor/http/admin/editor/api/fs/delete.api.js +1 -0
  42. package/build/esm/editor/http/admin/editor/api/fs/delete.api.js.map +1 -0
  43. package/build/esm/editor/http/admin/editor/api/fs/read.api.js +3 -2
  44. package/build/esm/editor/http/admin/editor/api/fs/read.api.js.map +1 -0
  45. package/build/esm/editor/http/admin/editor/api/fs/rename.api.js +1 -0
  46. package/build/esm/editor/http/admin/editor/api/fs/rename.api.js.map +1 -0
  47. package/build/esm/editor/http/admin/editor/api/fs/scan.api.js +1 -0
  48. package/build/esm/editor/http/admin/editor/api/fs/scan.api.js.map +1 -0
  49. package/build/esm/editor/http/admin/editor/api/fs/write.api.js +1 -0
  50. package/build/esm/editor/http/admin/editor/api/fs/write.api.js.map +1 -0
  51. package/build/esm/editor/http/admin/editor/api/server/reload.api.js +1 -0
  52. package/build/esm/editor/http/admin/editor/api/server/reload.api.js.map +1 -0
  53. package/build/esm/editor/http/admin/editor/api/server/restart.api.js +1 -0
  54. package/build/esm/editor/http/admin/editor/api/server/restart.api.js.map +1 -0
  55. package/build/esm/editor/http/admin/editor/editor.js +1 -0
  56. package/build/esm/editor/http/admin/editor/editor.js.map +1 -0
  57. package/build/esm/editor/http/admin/editor/index.api.js +1 -0
  58. package/build/esm/editor/http/admin/editor/index.api.js.map +1 -0
  59. package/build/esm/editor/server.js +1 -0
  60. package/build/esm/editor/server.js.map +1 -0
  61. package/build/esm/editor/ws.js +2 -1
  62. package/build/esm/editor/ws.js.map +1 -0
  63. package/build/esm/src/bin/compile.js +1 -0
  64. package/build/esm/src/bin/compile.js.map +1 -0
  65. package/build/esm/src/bin/doc-md.js +1 -0
  66. package/build/esm/src/bin/doc-md.js.map +1 -0
  67. package/build/esm/src/bin/generate-doc.js +1 -0
  68. package/build/esm/src/bin/generate-doc.js.map +1 -0
  69. package/build/esm/src/bin/test.d.ts +2 -1
  70. package/build/esm/src/bin/test.js +3 -2
  71. package/build/esm/src/bin/test.js.map +1 -0
  72. package/build/esm/src/bin/types.js +1 -0
  73. package/build/esm/src/bin/types.js.map +1 -0
  74. package/build/esm/src/cluster.js +1 -0
  75. package/build/esm/src/cluster.js.map +1 -0
  76. package/build/esm/src/common/arguments.d.ts +8 -0
  77. package/build/esm/src/common/arguments.js +78 -1
  78. package/build/esm/src/common/arguments.js.map +1 -0
  79. package/build/esm/src/common/assets.d.ts +1 -1
  80. package/build/esm/src/common/assets.js +2 -1
  81. package/build/esm/src/common/assets.js.map +1 -0
  82. package/build/esm/src/common/checksum.js +1 -0
  83. package/build/esm/src/common/checksum.js.map +1 -0
  84. package/build/esm/src/common/constants.d.ts +1 -0
  85. package/build/esm/src/common/constants.js +2 -0
  86. package/build/esm/src/common/constants.js.map +1 -0
  87. package/build/esm/src/common/content-type.js +1 -0
  88. package/build/esm/src/common/content-type.js.map +1 -0
  89. package/build/esm/src/common/esbuild.js +2 -1
  90. package/build/esm/src/common/esbuild.js.map +1 -0
  91. package/build/esm/src/common/exit.js +1 -0
  92. package/build/esm/src/common/exit.js.map +1 -0
  93. package/build/esm/src/common/fs.js +1 -0
  94. package/build/esm/src/common/fs.js.map +1 -0
  95. package/build/esm/src/common/help.d.ts +1 -1
  96. package/build/esm/src/common/help.js +7 -1
  97. package/build/esm/src/common/help.js.map +1 -0
  98. package/build/esm/src/common/jsx.d.ts +20 -16
  99. package/build/esm/src/common/jsx.js +34 -29
  100. package/build/esm/src/common/jsx.js.map +1 -0
  101. package/build/esm/src/common/jwt.js +1 -0
  102. package/build/esm/src/common/jwt.js.map +1 -0
  103. package/build/esm/src/common/paths.js +1 -0
  104. package/build/esm/src/common/paths.js.map +1 -0
  105. package/build/esm/src/common/watch.js +1 -0
  106. package/build/esm/src/common/watch.js.map +1 -0
  107. package/build/esm/src/inflate/inflate-sea.js +1 -0
  108. package/build/esm/src/inflate/inflate-sea.js.map +1 -0
  109. package/build/esm/src/inflate/inflate.d.ts +5 -1
  110. package/build/esm/src/inflate/inflate.js +6 -5
  111. package/build/esm/src/inflate/inflate.js.map +1 -0
  112. package/build/esm/src/inflate/md.js +1 -0
  113. package/build/esm/src/inflate/md.js.map +1 -0
  114. package/build/esm/src/inflate/setup-auth.d.ts +2 -2
  115. package/build/esm/src/inflate/setup-auth.js +3 -2
  116. package/build/esm/src/inflate/setup-auth.js.map +1 -0
  117. package/build/esm/src/inflate/setup-cors.d.ts +2 -2
  118. package/build/esm/src/inflate/setup-cors.js +3 -2
  119. package/build/esm/src/inflate/setup-cors.js.map +1 -0
  120. package/build/esm/src/inflate/setup-db.d.ts +3 -3
  121. package/build/esm/src/inflate/setup-db.js +6 -5
  122. package/build/esm/src/inflate/setup-db.js.map +1 -0
  123. package/build/esm/src/inflate/setup-error.d.ts +2 -2
  124. package/build/esm/src/inflate/setup-error.js +3 -2
  125. package/build/esm/src/inflate/setup-error.js.map +1 -0
  126. package/build/esm/src/inflate/setup-http.d.ts +7 -2
  127. package/build/esm/src/inflate/setup-http.js +54 -45
  128. package/build/esm/src/inflate/setup-http.js.map +1 -0
  129. package/build/esm/src/inflate/setup-log.d.ts +2 -2
  130. package/build/esm/src/inflate/setup-log.js +3 -2
  131. package/build/esm/src/inflate/setup-log.js.map +1 -0
  132. package/build/esm/src/inflate/setup-middleware.d.ts +2 -2
  133. package/build/esm/src/inflate/setup-middleware.js +3 -2
  134. package/build/esm/src/inflate/setup-middleware.js.map +1 -0
  135. package/build/esm/src/inflate/setup-server-config.d.ts +2 -2
  136. package/build/esm/src/inflate/setup-server-config.js +3 -2
  137. package/build/esm/src/inflate/setup-server-config.js.map +1 -0
  138. package/build/esm/src/inflate/setup-test.d.ts +2 -1
  139. package/build/esm/src/inflate/setup-test.js +3 -2
  140. package/build/esm/src/inflate/setup-test.js.map +1 -0
  141. package/build/esm/src/inflate/setup-ws.d.ts +2 -2
  142. package/build/esm/src/inflate/setup-ws.js +3 -2
  143. package/build/esm/src/inflate/setup-ws.js.map +1 -0
  144. package/build/esm/src/inflate/setup.doc.d.ts +2 -2
  145. package/build/esm/src/inflate/setup.doc.js +5 -4
  146. package/build/esm/src/inflate/setup.doc.js.map +1 -0
  147. package/build/esm/src/inflate/utils/sea-utils.js +1 -0
  148. package/build/esm/src/inflate/utils/sea-utils.js.map +1 -0
  149. package/build/esm/src/lib.js +1 -0
  150. package/build/esm/src/lib.js.map +1 -0
  151. package/build/esm/src/main.js +9 -2
  152. package/build/esm/src/main.js.map +1 -0
  153. package/build/esm/src/services/app.d.ts +5 -2
  154. package/build/esm/src/services/app.js +22 -9
  155. package/build/esm/src/services/app.js.map +1 -0
  156. package/build/esm/src/services/editor.js +1 -0
  157. package/build/esm/src/services/editor.js.map +1 -0
  158. package/build/esm/src/services/hot-reload.d.ts +1 -0
  159. package/build/esm/src/services/hot-reload.js +9 -5
  160. package/build/esm/src/services/hot-reload.js.map +1 -0
  161. package/build/esm/src/services/migrations.d.ts +3 -2
  162. package/build/esm/src/services/migrations.js +5 -4
  163. package/build/esm/src/services/migrations.js.map +1 -0
  164. package/build/esm/src/services/utils/admin-interface.js +1 -0
  165. package/build/esm/src/services/utils/admin-interface.js.map +1 -0
  166. package/build/esm/src/services/utils/cache.js +1 -0
  167. package/build/esm/src/services/utils/cache.js.map +1 -0
  168. package/build/esm/src/services/utils/cluster-cache.js +91 -64
  169. package/build/esm/src/services/utils/cluster-cache.js.map +1 -0
  170. package/build/esm/src/services/utils/cluster-ws.js +1 -0
  171. package/build/esm/src/services/utils/cluster-ws.js.map +1 -0
  172. package/build/esm/src/services/utils/db-manager.js +1 -0
  173. package/build/esm/src/services/utils/db-manager.js.map +1 -0
  174. package/build/esm/src/services/utils/get-route.js +1 -0
  175. package/build/esm/src/services/utils/get-route.js.map +1 -0
  176. package/build/esm/src/services/utils/jwt.js +1 -0
  177. package/build/esm/src/services/utils/jwt.js.map +1 -0
  178. package/build/esm/src/services/utils/log-transport.js +1 -0
  179. package/build/esm/src/services/utils/log-transport.js.map +1 -0
  180. package/build/esm/src/services/utils/log.js +1 -0
  181. package/build/esm/src/services/utils/log.js.map +1 -0
  182. package/build/esm/src/services/utils/middleware.js +1 -0
  183. package/build/esm/src/services/utils/middleware.js.map +1 -0
  184. package/build/esm/src/services/utils/server-interface.js +1 -0
  185. package/build/esm/src/services/utils/server-interface.js.map +1 -0
  186. package/build/esm/src/services/utils/websocketmanager.js +3 -1
  187. package/build/esm/src/services/utils/websocketmanager.js.map +1 -0
  188. package/build/esm/src/types.js +1 -0
  189. package/build/esm/src/types.js.map +1 -0
  190. package/build/lib.cjs +1178 -1153
  191. package/editor/auth.ts +2 -1
  192. package/editor/http/admin/editor/api/fs/read.api.tsx +2 -2
  193. package/editor/ws.ts +1 -1
  194. package/package.json +10 -10
  195. package/sea/install-esbuild.sh +1 -1
  196. package/sea/install-nodejs.sh +1 -1
  197. package/sea/node.version.tag +1 -1
  198. package/src/bin/test.ts +3 -2
  199. package/src/common/arguments.ts +92 -1
  200. package/src/common/assets.ts +2 -2
  201. package/src/common/constants.ts +1 -0
  202. package/src/common/esbuild.ts +1 -1
  203. package/src/common/help.ts +6 -1
  204. package/src/common/jsx.ts +41 -30
  205. package/src/inflate/inflate.ts +9 -5
  206. package/src/inflate/setup-auth.ts +3 -3
  207. package/src/inflate/setup-cors.ts +4 -3
  208. package/src/inflate/setup-db.ts +6 -6
  209. package/src/inflate/setup-error.ts +3 -3
  210. package/src/inflate/setup-http.ts +61 -45
  211. package/src/inflate/setup-log.ts +3 -3
  212. package/src/inflate/setup-middleware.ts +3 -3
  213. package/src/inflate/setup-server-config.ts +3 -3
  214. package/src/inflate/setup-test.ts +3 -3
  215. package/src/inflate/setup-ws.ts +3 -3
  216. package/src/inflate/setup.doc.ts +5 -5
  217. package/src/main.ts +8 -2
  218. package/src/services/app.ts +27 -12
  219. package/src/services/hot-reload.ts +9 -5
  220. package/src/services/migrations.ts +5 -5
  221. package/src/services/utils/cluster-cache.ts +90 -65
  222. package/src/services/utils/websocketmanager.ts +2 -1
@@ -15,23 +15,23 @@ import { describeFilePath, mkdirASync, writeFileASync } from "../common/fs.js";
15
15
  import { inflateMD2HTML } from "./md.js";
16
16
  import { setupMiddleware } from "./setup-middleware.js";
17
17
  import { setupError } from "./setup-error.js";
18
- export async function setupHTTPRouter(server, logger, hotreload, servicePath, service, routeFileMap, staticFileMap, inflateDir, inflateSea, errors, inflateParallel) {
18
+ export async function setupHTTPRouter(importOptions, inflateOptions, server, logger, hotreload, servicePath, service, routeFileMap, staticFileMap, inflateDir, inflateSea, errors, inflateParallel) {
19
19
  const mainRouter = new Router();
20
20
  const apiRouterPath = getHTTPRouterPath(servicePath); //resolve(process.cwd(), service, "http");
21
21
  let middlewareConfig = null;
22
- await setupError(logger, servicePath, service, mainRouter, inflateDir, inflateSea, errors);
23
- await setupCORS(logger, servicePath, service, mainRouter, inflateDir, inflateSea, errors);
24
- await setupAUTH(logger, servicePath, service, mainRouter, inflateDir, inflateSea, errors);
25
- middlewareConfig = await setupMiddleware(logger, servicePath, service, mainRouter, inflateDir, inflateSea, errors);
22
+ await setupError(logger, servicePath, service, mainRouter, inflateDir, inflateSea, importOptions, errors);
23
+ await setupCORS(logger, servicePath, service, mainRouter, inflateDir, inflateSea, importOptions, errors);
24
+ await setupAUTH(logger, servicePath, service, mainRouter, inflateDir, inflateSea, importOptions, errors);
25
+ middlewareConfig = await setupMiddleware(logger, servicePath, service, mainRouter, inflateDir, inflateSea, importOptions, errors);
26
26
  if (apiRouterPath) {
27
27
  logger.trace("setting up http routes from [%s]", service);
28
- const { router: httpRouter } = await createRouterFromDirectory(server, hotreload, service, logger, apiRouterPath, errors, routeFileMap, staticFileMap, inflateDir, inflateSea, inflateParallel);
28
+ const { router: httpRouter } = await createRouterFromDirectory(importOptions, inflateOptions, server, hotreload, service, logger, apiRouterPath, errors, routeFileMap, staticFileMap, inflateDir, inflateSea, inflateParallel);
29
29
  mainRouter.use(httpRouter);
30
30
  }
31
31
  const staticFilesPath = getStaticFilesPath(servicePath); //resolve(process.cwd(), service, "static");
32
32
  if (staticFilesPath) {
33
33
  logger.trace("setting up static file routes from [%s]", service);
34
- const staticRouter = await createStaticRouterFromDirectory(service, logger, staticFilesPath, inflateDir, routeFileMap, staticFileMap, inflateParallel);
34
+ const staticRouter = await createStaticRouterFromDirectory(inflateOptions, service, logger, staticFilesPath, inflateDir, routeFileMap, staticFileMap, inflateParallel);
35
35
  mainRouter.use(staticRouter);
36
36
  }
37
37
  if (middlewareConfig && middlewareConfig.post) {
@@ -41,7 +41,7 @@ export async function setupHTTPRouter(server, logger, hotreload, servicePath, se
41
41
  }
42
42
  return mainRouter;
43
43
  }
44
- async function createStaticRoute(service, logger, router, dir, file, inflateDir, routeFileMap, staticFileMap) {
44
+ async function createStaticRoute(inflateJSXOptions, service, logger, router, dir, file, inflateDir, routeFileMap, staticFileMap) {
45
45
  return new Promise(async (resolve, reject) => {
46
46
  try {
47
47
  logger.trace("creating static route for [%s]", file.filePath);
@@ -60,8 +60,8 @@ async function createStaticRoute(service, logger, router, dir, file, inflateDir,
60
60
  filePath: file.filePath,
61
61
  previewMethod: "html"
62
62
  };
63
- if (inflateDir) {
64
- const inflatePath = join(inflateDir, service, "static", path);
63
+ if (inflateDir && (inflateJSXOptions.inflateOnlyAssets || inflateJSXOptions.inflateOnlyAssets === undefined)) {
64
+ const inflatePath = join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path);
65
65
  mkdir(dirname(inflatePath), {
66
66
  recursive: true
67
67
  }, (err) => {
@@ -80,7 +80,7 @@ async function createStaticRoute(service, logger, router, dir, file, inflateDir,
80
80
  method: "GET",
81
81
  path: normalizePath(path),
82
82
  body: Buffer.from(body),
83
- inflatePath: inflateDir ? join(inflateDir, service, "static", path) : undefined
83
+ inflatePath: inflateDir ? join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path) : undefined
84
84
  };
85
85
  }
86
86
  }
@@ -121,14 +121,14 @@ async function createStaticRoute(service, logger, router, dir, file, inflateDir,
121
121
  }
122
122
  });
123
123
  }
124
- async function createStaticRouterFromDirectory(service, logger, dir, inflateDir, routeFileMap, staticFileMap, inflateParallel) {
124
+ async function createStaticRouterFromDirectory(inflateOptions, service, logger, dir, inflateDir, routeFileMap, staticFileMap, inflateParallel) {
125
125
  const router = new Router();
126
126
  const maxParallel = inflateParallel ? inflateParallel : 1;
127
127
  logger.debug("loading static directory with parallel [%s]", maxParallel);
128
128
  let tR = [];
129
129
  const files = scanFiles(dir);
130
130
  for (const file of files) {
131
- tR.push(await createStaticRoute(service, logger, router, dir, file, inflateDir, routeFileMap, staticFileMap));
131
+ tR.push(await createStaticRoute(inflateOptions, service, logger, router, dir, file, inflateDir, routeFileMap, staticFileMap));
132
132
  if (tR.length >= maxParallel) {
133
133
  await Promise.all(tR);
134
134
  tR = [];
@@ -140,7 +140,7 @@ async function createStaticRouterFromDirectory(service, logger, dir, inflateDir,
140
140
  }
141
141
  return router;
142
142
  }
143
- async function createRouterFromDirectory(server, hotreload, service, logger, dir, errors = [], routeFileMap = {}, staticFileMap = null, inflateDir, inflateSea, inflateParallel) {
143
+ async function createRouterFromDirectory(importOptions, inflateJSXOptions, server, hotreload, service, logger, dir, errors = [], routeFileMap = {}, staticFileMap = null, inflateDir, inflateSea, inflateParallel) {
144
144
  const router = new Router();
145
145
  const maxParallel = inflateParallel ? inflateParallel : 1;
146
146
  server.logger.debug("loading http directory with parallel [%s]", maxParallel);
@@ -163,7 +163,11 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
163
163
  logger.warn("ignoring [%s]", file.filePath);
164
164
  return resolve();
165
165
  case ".api": {
166
- const module = await importAPIRoute(file.filePath, logger);
166
+ if (inflateJSXOptions.inflateOnlyAssets) {
167
+ logger.warn("ignoring [%s]", file.filePath);
168
+ return resolve();
169
+ }
170
+ const module = await importAPIRoute(file.filePath, importOptions, logger);
167
171
  const routes = getRoutes(join("/", dirname(relative(dir, file.filePath))), file.subName, module);
168
172
  routeFileMap[file.filePath] = {
169
173
  routes,
@@ -171,7 +175,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
171
175
  filePath: file.filePath,
172
176
  previewMethod: "api"
173
177
  };
174
- const inflatedCode = inflateDir ? await inflateJSX(file.filePath, {
178
+ const inflatedCode = inflateDir && inflateSea && (!inflateJSXOptions.inflateOnlyAssets || inflateJSXOptions.inflateOnlyAssets === undefined) ? await inflateJSX(file.filePath, {
175
179
  // embemedJSX: false,
176
180
  minify: false,
177
181
  useExport: true,
@@ -190,7 +194,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
190
194
  }*/
191
195
  if (inflateDir && r.defaultInflatePath && inflateSea) {
192
196
  const rPath = r.defaultInflatePath;
193
- const inflatePath = join(inflateDir, service, "http", rPath + ".api.cjs");
197
+ const inflatePath = join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "http", rPath + ".api.cjs");
194
198
  await mkdirASync(dirname(inflatePath), {
195
199
  recursive: true
196
200
  });
@@ -203,7 +207,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
203
207
  return resolve();
204
208
  }
205
209
  case ".json": {
206
- const module = await importJSONModule(file.filePath, logger);
210
+ const module = await importJSONModule(file.filePath, importOptions, logger);
207
211
  const routes = getRoutes(join("/", dirname(relative(dir, file.filePath))), file.subName + ".json", module.apiOptions);
208
212
  routeFileMap[file.filePath] = {
209
213
  routes,
@@ -213,11 +217,11 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
213
217
  };
214
218
  for (const r of routes) {
215
219
  const contentType = CONTENT_TYPE_MAP[".json"] ? CONTENT_TYPE_MAP[".json"] : DEFAULT_CONTENT_TYPE;
216
- if (inflateDir) {
220
+ if (inflateDir && (inflateJSXOptions.inflateOnlyAssets || inflateJSXOptions.inflateOnlyAssets === undefined)) {
217
221
  if (r.inflatePath) {
218
222
  //if (r.method === "GET" || r.method === "get") {
219
223
  const rPath = r.inflatePath;
220
- const inflatePath = join(inflateDir, service, "static", rPath);
224
+ const inflatePath = join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", rPath);
221
225
  await mkdirASync(dirname(inflatePath), {
222
226
  recursive: true
223
227
  });
@@ -238,7 +242,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
238
242
  previewMethod: "html",
239
243
  path: r.path,
240
244
  body: Buffer.from(JSON_STATIC),
241
- inflatePath: inflateDir ? join(inflateDir, service, "static", r.inflatePath) : undefined
245
+ inflatePath: inflateDir ? join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", r.inflatePath) : undefined
242
246
  };
243
247
  }
244
248
  }
@@ -258,7 +262,11 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
258
262
  return resolve();
259
263
  }
260
264
  case ".html": {
261
- const module = await importHTMLModule(file.filePath, logger);
265
+ if (inflateJSXOptions.inflateOnlyAssets) {
266
+ logger.warn("ignoring [%s]", file.filePath);
267
+ return resolve();
268
+ }
269
+ const module = await importHTMLModule(file.filePath, importOptions, logger);
262
270
  const routes = getRoutes(join("/", dirname(relative(dir, file.filePath))), file.subName + ".html", module.apiOptions);
263
271
  routeFileMap[file.filePath] = {
264
272
  routes,
@@ -268,11 +276,11 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
268
276
  };
269
277
  for (const r of routes) {
270
278
  const contentType = CONTENT_TYPE_MAP[".html"] ? CONTENT_TYPE_MAP[".html"] : DEFAULT_CONTENT_TYPE;
271
- if (inflateDir) {
279
+ if (inflateDir && (!inflateJSXOptions.inflateOnlyAssets || inflateJSXOptions.inflateOnlyAssets === undefined)) {
272
280
  if (r.inflatePath) {
273
281
  //if (r.method === "GET" || r.method === "get") {
274
282
  const rPath = r.inflatePath;
275
- const inflatePath = join(inflateDir, service, "static", rPath);
283
+ const inflatePath = join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", rPath);
276
284
  await mkdirASync(dirname(inflatePath), {
277
285
  recursive: true
278
286
  });
@@ -285,7 +293,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
285
293
  logger.log("writing [%s]", relative(cwd(), inflatePath));
286
294
  await writeFileASync(inflatePath, HTML_STATIC);
287
295
  //}
288
- if (staticFileMap && inflateSea) {
296
+ if (staticFileMap && inflateSea && (!inflateJSXOptions.inflateOnlyAssets || inflateJSXOptions.inflateOnlyAssets === undefined)) {
289
297
  staticFileMap[file.filePath + r.method + r.path] = {
290
298
  filePath: file.filePath,
291
299
  contentType,
@@ -293,7 +301,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
293
301
  previewMethod: "html",
294
302
  path: r.path,
295
303
  body: Buffer.from(HTML_STATIC),
296
- inflatePath: inflateDir ? join(inflateDir, service, "static", r.inflatePath) : undefined
304
+ inflatePath: inflateDir ? join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", r.inflatePath) : undefined
297
305
  };
298
306
  }
299
307
  }
@@ -318,7 +326,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
318
326
  default: {
319
327
  // allow fall-through when extension is .js and .ts because is a static route without embemedJSX
320
328
  if (file.ext !== ".js" && file.ext !== ".ts") {
321
- const code = await inflateJSX(file.filePath, {
329
+ const code = inflateJSXOptions.noMinify ? readFileSync(file.filePath).toString() : await inflateJSX(file.filePath, {
322
330
  // embemedJSX: true,
323
331
  minify: file.subExt === ".min" ? true : false,
324
332
  useExport: true,
@@ -335,8 +343,8 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
335
343
  service,
336
344
  previewMethod: "html"
337
345
  };
338
- if (inflateDir) {
339
- const inflatePath = join(inflateDir, service, "static", path);
346
+ if (inflateDir && (inflateJSXOptions.inflateOnlyAssets || inflateJSXOptions.inflateOnlyAssets === undefined)) {
347
+ const inflatePath = join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path);
340
348
  await mkdirASync(dirname(inflatePath), {
341
349
  recursive: true
342
350
  });
@@ -350,7 +358,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
350
358
  previewMethod: "html",
351
359
  path,
352
360
  body: Buffer.from(code),
353
- inflatePath: inflateDir ? join(inflateDir, service, "static", path) : undefined
361
+ inflatePath: inflateDir ? join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path) : undefined
354
362
  };
355
363
  }
356
364
  }
@@ -384,8 +392,8 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
384
392
  filePath: file.filePath,
385
393
  previewMethod: "html"
386
394
  };
387
- if (inflateDir) {
388
- const inflatePath = join(inflateDir, service, "static", path);
395
+ if (inflateDir && (inflateJSXOptions.inflateOnlyAssets || inflateJSXOptions.inflateOnlyAssets === undefined)) {
396
+ const inflatePath = join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path);
389
397
  await mkdirASync(dirname(inflatePath), {
390
398
  recursive: true
391
399
  });
@@ -399,7 +407,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
399
407
  previewMethod: "html",
400
408
  path,
401
409
  body: Buffer.from(code),
402
- inflatePath: inflateDir ? join(inflateDir, service, "static", path) : undefined
410
+ inflatePath: inflateDir ? join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path) : undefined
403
411
  };
404
412
  }
405
413
  }
@@ -426,7 +434,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
426
434
  }
427
435
  case ".bundle":
428
436
  case ".min": {
429
- const code = await inflateJSX(file.filePath, {
437
+ const code = inflateJSXOptions.noMinify ? readFileSync(file.filePath).toString() : await inflateJSX(file.filePath, {
430
438
  // embemedJSX: false,
431
439
  minify: file.subExt === ".min" ? true : false,
432
440
  useExport: true,
@@ -443,8 +451,8 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
443
451
  service,
444
452
  previewMethod: "html"
445
453
  };
446
- if (inflateDir) {
447
- const inflatePath = join(inflateDir, service, "static", path);
454
+ if (inflateDir && (inflateJSXOptions.inflateOnlyAssets || inflateJSXOptions.inflateOnlyAssets === undefined)) {
455
+ const inflatePath = join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path);
448
456
  await mkdirASync(dirname(inflatePath), {
449
457
  recursive: true
450
458
  });
@@ -458,7 +466,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
458
466
  previewMethod: "html",
459
467
  path,
460
468
  body: Buffer.from(code),
461
- inflatePath: inflateDir ? join(inflateDir, service, "static", path) : undefined
469
+ inflatePath: inflateDir ? join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path) : undefined
462
470
  };
463
471
  }
464
472
  }
@@ -500,8 +508,8 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
500
508
  filePath: file.filePath,
501
509
  previewMethod: "html"
502
510
  };
503
- if (inflateDir) {
504
- const inflatePath = join(inflateDir, service, "static", path);
511
+ if (inflateDir && (inflateJSXOptions.inflateOnlyAssets || inflateJSXOptions.inflateOnlyAssets === undefined)) {
512
+ const inflatePath = join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path);
505
513
  await mkdirASync(dirname(inflatePath), {
506
514
  recursive: true
507
515
  });
@@ -515,7 +523,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
515
523
  previewMethod: "html",
516
524
  path,
517
525
  body: Buffer.from(code),
518
- inflatePath: inflateDir ? join(inflateDir, service, "static", path) : undefined
526
+ inflatePath: inflateDir ? join(inflateDir, !inflateJSXOptions.inflateFlat ? service : "", "static", path) : undefined
519
527
  };
520
528
  }
521
529
  }
@@ -533,7 +541,7 @@ async function createRouterFromDirectory(server, hotreload, service, logger, dir
533
541
  }
534
542
  }
535
543
  }
536
- await createStaticRoute(service, logger, router, dir, file, inflateDir, routeFileMap, staticFileMap);
544
+ await createStaticRoute(inflateJSXOptions, service, logger, router, dir, file, inflateDir, routeFileMap, staticFileMap);
537
545
  return resolve();
538
546
  }
539
547
  }
@@ -584,17 +592,18 @@ export function scanFiles(path, ret = []) {
584
592
  return ret;
585
593
  }
586
594
  function getHTML(hotreload, req, res, url, basePath, out) {
587
- let HTML = `<!DOCTYPE html>\n${jsx2HTML(out, createNodeRuntime({
595
+ let HTML = `<!DOCTYPE html>\n${hotreload ? `${getHotReloadScript()}\n` : ""}${jsx2HTML(out, createNodeRuntime({
588
596
  url,
589
597
  basePath
590
598
  }))}`;
591
599
  //console.log("GET_HTML[%s] [%o]", HTML, out);
592
- if (hotreload) {
593
- HTML += getHotReloadScript();
594
- }
600
+ /*if (hotreload) {
601
+ HTML += getHotReloadScript()
602
+ }*/
595
603
  return HTML;
596
604
  }
597
605
  async function getJSON(req, res, url, basePath, out) {
598
606
  const toRender = await (typeof out === "function" ? out(req, res) : out);
599
607
  return JSON.stringify(toRender, undefined, 2);
600
608
  }
609
+ //# sourceMappingURL=setup-http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-http.js","sourceRoot":"","sources":["../../../../src/inflate/setup-http.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { Logger } from "@miqro/core";
2
- import { InflateError } from "../common/jsx.js";
2
+ import { ImportJSXFileOptions, InflateError } from "../common/jsx.js";
3
3
  import { LogConfig } from "../types.js";
4
4
  export interface LogConfigMap {
5
5
  [service: string]: LogConfig | undefined;
6
6
  }
7
- export declare function setupLogConfig(logger: Logger, servicePath: string, service: string, logConfigMap: LogConfigMap, inflateDir: string | undefined | false, errors: InflateError[]): Promise<void>;
7
+ export declare function setupLogConfig(logger: Logger, servicePath: string, service: string, logConfigMap: LogConfigMap, inflateDir: string | undefined | false, options: ImportJSXFileOptions, errors: InflateError[]): Promise<void>;
@@ -3,12 +3,12 @@ import { getLogConfigPath } from "../common/paths.js";
3
3
  import { dirname, relative, resolve } from "node:path";
4
4
  import { mkdirSync, writeFileSync } from "node:fs";
5
5
  import { cwd } from "node:process";
6
- export async function setupLogConfig(logger, servicePath, service, logConfigMap, inflateDir, errors) {
6
+ export async function setupLogConfig(logger, servicePath, service, logConfigMap, inflateDir, options, errors) {
7
7
  const logPath = getLogConfigPath(servicePath); // resolve(process.cwd(), service, "server.ts");
8
8
  if (logPath) {
9
9
  try {
10
10
  //logger.debug("setting up server config from [%s]", join(service, basename(serverPath)));
11
- const logConfig = await importLogConfigModule(logPath, logger);
11
+ const logConfig = await importLogConfigModule(logPath, options, logger);
12
12
  logConfigMap[service] = logConfig;
13
13
  if (inflateDir) {
14
14
  const inflatePath = resolve(inflateDir, service, "log.cjs");
@@ -35,3 +35,4 @@ export async function setupLogConfig(logger, servicePath, service, logConfigMap,
35
35
  }
36
36
  }
37
37
  }
38
+ //# sourceMappingURL=setup-log.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-log.js","sourceRoot":"","sources":["../../../../src/inflate/setup-log.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,qBAAqB,EAAgB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAOnC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,WAAmB,EAAE,OAAe,EAAE,YAA0B,EAAE,UAAsC,EAAE,OAA6B,EAAE,MAAsB;IAClN,MAAM,OAAO,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,gDAAgD;IAC/F,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,0FAA0F;YAE1F,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACxE,YAAY,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;YAElC,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;gBAC5D,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;oBAC9B,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;gBACzD,aAAa,CAAC,WAAW,EAAE,MAAM,UAAU,CAAC,OAAO,EAAE;oBACnD,qBAAqB;oBACrB,MAAM,EAAE,KAAK;oBACb,SAAS,EAAE,IAAI;oBACf,QAAQ,EAAE,MAAM;oBAChB,MAAM;iBACP,CAAC,CAAC,CAAC;YACN,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import { Logger, Router } from "@miqro/core";
2
- import { InflateError } from "../common/jsx.js";
2
+ import { ImportJSXFileOptions, InflateError } from "../common/jsx.js";
3
3
  import { MiddlewareConfig } from "../types.js";
4
- export declare function setupMiddleware(logger: Logger, servicePath: string, service: string, mainRouter: Router, inflateDir: string | undefined | false, inflateSea: boolean, errors: InflateError[]): Promise<MiddlewareConfig | null>;
4
+ export declare function setupMiddleware(logger: Logger, servicePath: string, service: string, mainRouter: Router, inflateDir: string | undefined | false, inflateSea: boolean, options: ImportJSXFileOptions, errors: InflateError[]): Promise<MiddlewareConfig | null>;
@@ -3,11 +3,11 @@ import { getMiddlewareConfigPath } from "../common/paths.js";
3
3
  import { basename, dirname, join, relative, resolve } from "node:path";
4
4
  import { mkdirSync, writeFileSync } from "node:fs";
5
5
  import { cwd } from "node:process";
6
- export async function setupMiddleware(logger, servicePath, service, mainRouter, inflateDir, inflateSea, errors) {
6
+ export async function setupMiddleware(logger, servicePath, service, mainRouter, inflateDir, inflateSea, options, errors) {
7
7
  const middlewarePath = getMiddlewareConfigPath(servicePath); //resolve(process.cwd(), service, "auth.ts");
8
8
  if (middlewarePath) {
9
9
  try {
10
- const middewareModule = await importMiddlewareConfigModule(middlewarePath, logger);
10
+ const middewareModule = await importMiddlewareConfigModule(middlewarePath, options, logger);
11
11
  logger.debug("setting up middleware from [%s]", join(service, basename(middlewarePath)));
12
12
  if (middewareModule && middewareModule.middleware) {
13
13
  for (const m of middewareModule.middleware) {
@@ -41,3 +41,4 @@ export async function setupMiddleware(logger, servicePath, service, mainRouter,
41
41
  }
42
42
  return null;
43
43
  }
44
+ //# sourceMappingURL=setup-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-middleware.js","sourceRoot":"","sources":["../../../../src/inflate/setup-middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,4BAA4B,EAAgB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAChH,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAGnC,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,WAAmB,EAAE,OAAe,EAAE,UAAkB,EAAE,UAAsC,EAAE,UAAmB,EAAE,OAA6B,EAAE,MAAsB;IAChO,MAAM,cAAc,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC,6CAA6C;IAE1G,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,MAAM,4BAA4B,CAAC,cAAc,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5F,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACzF,IAAI,eAAe,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC;gBAClD,KAAK,MAAM,CAAC,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC;oBAC3C,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;YACD,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;gBAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;gBACnE,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;oBAC9B,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;gBACzD,aAAa,CAAC,WAAW,EAAE,MAAM,UAAU,CAAC,cAAc,EAAE;oBAC1D,qBAAqB;oBACrB,MAAM,EAAE,KAAK;oBACb,QAAQ,EAAE,MAAM;oBAChB,SAAS,EAAE,IAAI;oBACf,MAAM;iBACP,CAAC,CAAC,CAAC;YACN,CAAC;YACD,OAAO,eAAe,CAAC;QAEzB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,cAAc;gBACxB,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,cAAc,CAAC,CAAC;YAC7C,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { Logger } from "@miqro/core";
2
- import { InflateError } from "../common/jsx.js";
2
+ import { ImportJSXFileOptions, InflateError } from "../common/jsx.js";
3
3
  import { ServerConfig } from "../types.js";
4
4
  export interface ServerConfigMap {
5
5
  [service: string]: ServerConfig | undefined;
6
6
  }
7
- export declare function setupServerConfig(logger: Logger, servicePath: string, service: string, serverConfigMap: ServerConfigMap, inflateDir: string | undefined | false, errors: InflateError[]): Promise<void>;
7
+ export declare function setupServerConfig(logger: Logger, servicePath: string, service: string, serverConfigMap: ServerConfigMap, inflateDir: string | undefined | false, errors: InflateError[], options: ImportJSXFileOptions): Promise<void>;
@@ -3,12 +3,12 @@ import { dirname, relative, resolve } from "node:path";
3
3
  import { cwd } from "node:process";
4
4
  import { importServerConfigModule, inflateJSX } from "../common/jsx.js";
5
5
  import { getServerConfigPath } from "../common/paths.js";
6
- export async function setupServerConfig(logger, servicePath, service, serverConfigMap, inflateDir, errors) {
6
+ export async function setupServerConfig(logger, servicePath, service, serverConfigMap, inflateDir, errors, options) {
7
7
  const serverPath = getServerConfigPath(servicePath); // resolve(process.cwd(), service, "server.ts");
8
8
  if (serverPath) {
9
9
  try {
10
10
  //logger.debug("setting up server config from [%s]", join(service, basename(serverPath)));
11
- const serverConfig = await importServerConfigModule(serverPath, logger);
11
+ const serverConfig = await importServerConfigModule(serverPath, options, logger);
12
12
  serverConfigMap[service] = serverConfig;
13
13
  if (inflateDir) {
14
14
  const inflatePath = resolve(inflateDir, service, "server.cjs");
@@ -35,3 +35,4 @@ export async function setupServerConfig(logger, servicePath, service, serverConf
35
35
  }
36
36
  }
37
37
  }
38
+ //# sourceMappingURL=setup-server-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-server-config.js","sourceRoot":"","sources":["../../../../src/inflate/setup-server-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAEnC,OAAO,EAAwB,wBAAwB,EAAgB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC5G,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAOzD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAc,EAAE,WAAmB,EAAE,OAAe,EAAE,eAAgC,EAAE,UAAsC,EAAE,MAAsB,EAAE,OAA6B;IAE3N,MAAM,UAAU,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,gDAAgD;IACrG,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,CAAC;YACH,0FAA0F;YAE1F,MAAM,YAAY,GAAG,MAAM,wBAAwB,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACjF,eAAe,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC;YAGxC,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;gBAC/D,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;oBAC9B,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;gBACzD,aAAa,CAAC,WAAW,EAAE,MAAM,UAAU,CAAC,UAAU,EAAE;oBACtD,qBAAqB;oBACrB,MAAM,EAAE,KAAK;oBACb,QAAQ,EAAE,MAAM;oBAChB,SAAS,EAAE,IAAI;oBACf,MAAM;iBACP,CAAC,CAAC,CAAC;YACN,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,UAAU;gBACpB,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,UAAU,CAAC,CAAC;YACzC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,2 +1,3 @@
1
+ import { ImportJSXFileOptions } from "../common/jsx.js";
1
2
  import { Logger } from "@miqro/core";
2
- export declare function setupTests(logger: Logger, servicePath: string): Promise<void>;
3
+ export declare function setupTests(logger: Logger, servicePath: string, options: ImportJSXFileOptions): Promise<void>;
@@ -1,7 +1,7 @@
1
1
  import { importJSXFile } from "../common/jsx.js";
2
2
  import { scanFiles } from "./setup-http.js";
3
3
  import { resolve } from "node:path";
4
- export async function setupTests(logger, servicePath) {
4
+ export async function setupTests(logger, servicePath, options) {
5
5
  logger.debug("setting up tests from [%s]", servicePath);
6
6
  const files = scanFiles(resolve(servicePath));
7
7
  await Promise.allSettled(files.map((file) => {
@@ -12,10 +12,11 @@ export async function setupTests(logger, servicePath) {
12
12
  case ".tsx": {
13
13
  switch (file.subExt) {
14
14
  case ".test":
15
- return importJSXFile(file.filePath, logger);
15
+ return importJSXFile(file.filePath, options, logger);
16
16
  }
17
17
  }
18
18
  }
19
19
  return Promise.resolve();
20
20
  }));
21
21
  }
22
+ //# sourceMappingURL=setup-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-test.js","sourceRoot":"","sources":["../../../../src/inflate/setup-test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwB,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAc,EAAE,WAAmB,EAAE,OAA6B;IACjG,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,WAAW,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9C,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC;YACjB,KAAK,MAAM,CAAC;YACZ,KAAK,KAAK,CAAC;YACX,KAAK,KAAK,CAAC;YACX,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;oBACpB,KAAK,OAAO;wBACV,OAAO,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import { Logger } from "@miqro/core";
2
- import { InflateError } from "../common/jsx.js";
2
+ import { ImportJSXFileOptions, InflateError } from "../common/jsx.js";
3
3
  import { WSConfig } from "../types.js";
4
- export declare function inflateWSConfig(logger: Logger, servicePath: string, service: string, wsConfigList: WSConfig[] | undefined, inflateDir: string | undefined | false, errors: InflateError[]): Promise<void>;
4
+ export declare function inflateWSConfig(logger: Logger, servicePath: string, service: string, wsConfigList: WSConfig[] | undefined, inflateDir: string | undefined | false, errors: InflateError[], options: ImportJSXFileOptions): Promise<void>;
@@ -3,12 +3,12 @@ import { cwd } from "node:process";
3
3
  import { mkdirSync, writeFileSync } from "node:fs";
4
4
  import { importWSConfigModule, inflateJSX } from "../common/jsx.js";
5
5
  import { getWSConfigPath } from "../common/paths.js";
6
- export async function inflateWSConfig(logger, servicePath, service, wsConfigList, inflateDir, errors) {
6
+ export async function inflateWSConfig(logger, servicePath, service, wsConfigList, inflateDir, errors, options) {
7
7
  const wsPath = getWSConfigPath(servicePath); // resolve(process.cwd(), service, "ws.ts");
8
8
  if (wsPath) {
9
9
  try {
10
10
  logger.debug("importing websocket socket for service [%s]", service);
11
- const wsConfig = await importWSConfigModule(wsPath, logger);
11
+ const wsConfig = await importWSConfigModule(wsPath, options, logger);
12
12
  if (wsConfig && wsConfigList.filter(c => c.path === wsConfig.path).length > 0) {
13
13
  throw new Error(`ws path [${wsConfig.path}] already defined! from [${wsPath}]`);
14
14
  }
@@ -44,3 +44,4 @@ export async function inflateWSConfig(logger, servicePath, service, wsConfigList
44
44
  }
45
45
  }
46
46
  }
47
+ //# sourceMappingURL=setup-ws.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-ws.js","sourceRoot":"","sources":["../../../../src/inflate/setup-ws.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAwB,oBAAoB,EAAgB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACxG,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,WAAmB,EAAE,OAAe,EAAE,YAAoC,EAAE,UAAsC,EAAE,MAAsB,EAAE,OAA6B;IAC7N,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,4CAA4C;IAEzF,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE,OAAO,CAAC,CAAC;YACrE,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACrE,IAAI,QAAQ,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9E,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,CAAC,IAAI,4BAA4B,MAAM,GAAG,CAAC,CAAC;YAClF,CAAC;iBAAM,IAAI,YAAY,EAAE,CAAC;gBACxB,MAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;gBAClG,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,8DAA8D;YAChE,CAAC;YAED,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC3D,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;oBAC9B,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;gBACzD,aAAa,CAAC,WAAW,EAAE,MAAM,UAAU,CAAC,MAAM,EAAE;oBAClD,qBAAqB;oBACrB,MAAM,EAAE,KAAK;oBACb,QAAQ,EAAE,MAAM;oBAChB,SAAS,EAAE,IAAI;oBACf,MAAM;iBACP,CAAC,CAAC,CAAC;YACN,CAAC;YACD,sBAAsB;QACxB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAChB,eAAe;QACjB,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import { Logger, Router } from "@miqro/core";
2
- import { InflateError } from "../common/jsx.js";
2
+ import { ImportJSXFileOptions, InflateError } from "../common/jsx.js";
3
3
  import { RouteFileMap, StaticFileMap } from "./setup-http.js";
4
- export declare function setupDoc(logger: Logger, servicePath: string, service: string, mainRouter: Router, fileMap: RouteFileMap, staticFileMap: StaticFileMap, inflateDir: string | undefined | false, errors: InflateError[]): Promise<any>;
4
+ export declare function setupDoc(logger: Logger, servicePath: string, service: string, mainRouter: Router, fileMap: RouteFileMap, staticFileMap: StaticFileMap, inflateDir: string | undefined | false, errors: InflateError[], options: ImportJSXFileOptions, inflateFlat: boolean): Promise<any>;
@@ -5,11 +5,11 @@ import { mkdirSync, writeFileSync } from "node:fs";
5
5
  import { cwd } from "node:process";
6
6
  import { getDocOutput } from "../bin/generate-doc.js";
7
7
  import { CONTENT_TYPE_MAP } from "../common/content-type.js";
8
- export async function setupDoc(logger, servicePath, service, mainRouter, fileMap, staticFileMap, inflateDir, errors) {
8
+ export async function setupDoc(logger, servicePath, service, mainRouter, fileMap, staticFileMap, inflateDir, errors, options, inflateFlat) {
9
9
  const docPath = getDocConfigPath(servicePath); //resolve(process.cwd(), service, "auth.ts");
10
10
  if (docPath) {
11
11
  try {
12
- const docModule = await importDocConfigModule(docPath, logger);
12
+ const docModule = await importDocConfigModule(docPath, options, logger);
13
13
  logger.debug("setting up error handling from [%s]", join(service, basename(docPath)));
14
14
  if (docModule && docModule.publish) {
15
15
  const paths = Object.keys(docModule.publish);
@@ -40,7 +40,7 @@ export async function setupDoc(logger, servicePath, service, mainRouter, fileMap
40
40
  }
41
41
  });
42
42
  if (inflateDir) {
43
- const inflatePath = join(inflateDir, service, "static", path);
43
+ const inflatePath = join(inflateDir, !inflateFlat ? service : "", "static", path);
44
44
  mkdirSync(dirname(inflatePath), {
45
45
  recursive: true
46
46
  });
@@ -63,7 +63,7 @@ export async function setupDoc(logger, servicePath, service, mainRouter, fileMap
63
63
  method: "GET",
64
64
  path,
65
65
  body: Buffer.from(body),
66
- inflatePath: inflateDir ? join(inflateDir, service, "static", path) : undefined
66
+ inflatePath: inflateDir ? join(inflateDir, !inflateFlat ? service : "", "static", path) : undefined
67
67
  };
68
68
  }
69
69
  }
@@ -81,3 +81,4 @@ export async function setupDoc(logger, servicePath, service, mainRouter, fileMap
81
81
  }
82
82
  return null;
83
83
  }
84
+ //# sourceMappingURL=setup.doc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.doc.js","sourceRoot":"","sources":["../../../../src/inflate/setup.doc.ts"],"names":[],"mappings":"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"}