miqro 7.3.5 → 8.0.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 (203) hide show
  1. package/README.md +3 -7
  2. package/build/esm/{src/bin → bin}/types.js +1 -2
  3. package/build/esm/{src/common → common}/arguments.d.ts +0 -2
  4. package/build/esm/{src/common → common}/arguments.js +5 -38
  5. package/build/esm/{src/common → common}/assets.js +1 -1
  6. package/build/esm/{src/common → common}/constants.d.ts +11 -0
  7. package/build/esm/{editor/common/templates.js → common/constants.js} +14 -0
  8. package/build/esm/{src/common → common}/esbuild.js +0 -1
  9. package/build/esm/common/help.d.ts +3 -0
  10. package/build/esm/{src/common → common}/help.js +0 -1
  11. package/build/esm/{src/inflate → inflate}/inflate-sea.js +3 -0
  12. package/build/esm/inflate/md.d.ts +1 -0
  13. package/build/esm/inflate/md.js +4 -0
  14. package/build/esm/{src/inflate → inflate}/setup-http.js +2 -3
  15. package/build/esm/{src/main.js → main.js} +0 -1
  16. package/build/esm/{src/services → services}/app.d.ts +0 -1
  17. package/build/esm/{src/services → services}/app.js +1 -53
  18. package/build/esm/{src/services → services}/utils/server-interface.js +18 -3
  19. package/build/esm/{src/services → services}/utils/websocketmanager.d.ts +0 -1
  20. package/build/esm/{src/services → services}/utils/websocketmanager.js +10 -20
  21. package/build/esm/{src/types.d.ts → types.d.ts} +2 -1
  22. package/build/lib.cjs +8297 -11619
  23. package/package.json +11 -23
  24. package/build/editor.bundle.js +0 -12329
  25. package/build/esm/editor/auth.d.ts +0 -6
  26. package/build/esm/editor/auth.js +0 -44
  27. package/build/esm/editor/common/constants.d.ts +0 -4
  28. package/build/esm/editor/common/constants.js +0 -20
  29. package/build/esm/editor/common/constants.server.d.ts +0 -2
  30. package/build/esm/editor/common/constants.server.js +0 -4
  31. package/build/esm/editor/common/editor-index.d.ts +0 -2
  32. package/build/esm/editor/common/editor-index.js +0 -14
  33. package/build/esm/editor/common/html-encode.d.ts +0 -1
  34. package/build/esm/editor/common/html-encode.js +0 -14
  35. package/build/esm/editor/common/log-socket.d.ts +0 -15
  36. package/build/esm/editor/common/log-socket.js +0 -71
  37. package/build/esm/editor/common/templates.d.ts +0 -11
  38. package/build/esm/editor/components/api-preview.d.ts +0 -11
  39. package/build/esm/editor/components/api-preview.js +0 -92
  40. package/build/esm/editor/components/editor.d.ts +0 -16
  41. package/build/esm/editor/components/editor.js +0 -367
  42. package/build/esm/editor/components/file-browser.d.ts +0 -37
  43. package/build/esm/editor/components/file-browser.js +0 -127
  44. package/build/esm/editor/components/file-editor-toolbar.d.ts +0 -22
  45. package/build/esm/editor/components/file-editor-toolbar.js +0 -95
  46. package/build/esm/editor/components/file-editor.d.ts +0 -32
  47. package/build/esm/editor/components/file-editor.js +0 -61
  48. package/build/esm/editor/components/filter-query.d.ts +0 -1
  49. package/build/esm/editor/components/filter-query.js +0 -23
  50. package/build/esm/editor/components/highlight-text-area.d.ts +0 -11
  51. package/build/esm/editor/components/highlight-text-area.js +0 -127
  52. package/build/esm/editor/components/log-viewer.d.ts +0 -6
  53. package/build/esm/editor/components/log-viewer.js +0 -71
  54. package/build/esm/editor/components/new-file.d.ts +0 -10
  55. package/build/esm/editor/components/new-file.js +0 -119
  56. package/build/esm/editor/components/scroll-query.d.ts +0 -7
  57. package/build/esm/editor/components/scroll-query.js +0 -22
  58. package/build/esm/editor/components/start-page.d.ts +0 -13
  59. package/build/esm/editor/components/start-page.js +0 -32
  60. package/build/esm/editor/http/admin/editor/api/fs/delete.api.d.ts +0 -4
  61. package/build/esm/editor/http/admin/editor/api/fs/delete.api.js +0 -30
  62. package/build/esm/editor/http/admin/editor/api/fs/read.api.d.ts +0 -7
  63. package/build/esm/editor/http/admin/editor/api/fs/read.api.js +0 -50
  64. package/build/esm/editor/http/admin/editor/api/fs/rename.api.d.ts +0 -7
  65. package/build/esm/editor/http/admin/editor/api/fs/rename.api.js +0 -40
  66. package/build/esm/editor/http/admin/editor/api/fs/scan.api.d.ts +0 -26
  67. package/build/esm/editor/http/admin/editor/api/fs/scan.api.js +0 -150
  68. package/build/esm/editor/http/admin/editor/api/fs/write.api.d.ts +0 -3
  69. package/build/esm/editor/http/admin/editor/api/fs/write.api.js +0 -39
  70. package/build/esm/editor/http/admin/editor/api/server/reload.api.d.ts +0 -10
  71. package/build/esm/editor/http/admin/editor/api/server/reload.api.js +0 -46
  72. package/build/esm/editor/http/admin/editor/api/server/restart.api.d.ts +0 -10
  73. package/build/esm/editor/http/admin/editor/api/server/restart.api.js +0 -46
  74. package/build/esm/editor/http/admin/editor/editor.d.ts +0 -1
  75. package/build/esm/editor/http/admin/editor/editor.js +0 -8
  76. package/build/esm/editor/http/admin/editor/index.api.d.ts +0 -3
  77. package/build/esm/editor/http/admin/editor/index.api.js +0 -23
  78. package/build/esm/editor/server.d.ts +0 -3
  79. package/build/esm/editor/server.js +0 -49
  80. package/build/esm/editor/ws.d.ts +0 -3
  81. package/build/esm/editor/ws.js +0 -12
  82. package/build/esm/src/common/constants.js +0 -14
  83. package/build/esm/src/common/help.d.ts +0 -3
  84. package/build/esm/src/inflate/md.d.ts +0 -3
  85. package/build/esm/src/inflate/md.js +0 -22
  86. package/build/esm/src/services/editor.d.ts +0 -3
  87. package/build/esm/src/services/editor.js +0 -66
  88. package/build/esm/src/services/utils/admin-interface.d.ts +0 -3
  89. package/build/esm/src/services/utils/admin-interface.js +0 -33
  90. package/build/style.css +0 -620
  91. package/editor/auth.ts +0 -53
  92. package/editor/common/constants.server.ts +0 -5
  93. package/editor/common/constants.ts +0 -21
  94. package/editor/common/editor-index.tsx +0 -17
  95. package/editor/common/html-encode.ts +0 -14
  96. package/editor/common/log-socket.tsx +0 -87
  97. package/editor/common/templates.ts +0 -481
  98. package/editor/components/api-preview.tsx +0 -118
  99. package/editor/components/editor.tsx +0 -496
  100. package/editor/components/file-browser.tsx +0 -311
  101. package/editor/components/file-editor-toolbar.tsx +0 -194
  102. package/editor/components/file-editor.tsx +0 -125
  103. package/editor/components/filter-query.tsx +0 -26
  104. package/editor/components/highlight-text-area.tsx +0 -148
  105. package/editor/components/log-viewer.tsx +0 -113
  106. package/editor/components/new-file.tsx +0 -172
  107. package/editor/components/scroll-query.tsx +0 -25
  108. package/editor/components/start-page.tsx +0 -52
  109. package/editor/http/admin/editor/api/fs/delete.api.tsx +0 -32
  110. package/editor/http/admin/editor/api/fs/read.api.tsx +0 -55
  111. package/editor/http/admin/editor/api/fs/rename.api.tsx +0 -41
  112. package/editor/http/admin/editor/api/fs/scan.api.tsx +0 -181
  113. package/editor/http/admin/editor/api/fs/write.api.tsx +0 -41
  114. package/editor/http/admin/editor/api/server/reload.api.ts +0 -53
  115. package/editor/http/admin/editor/api/server/restart.api.tsx +0 -52
  116. package/editor/http/admin/editor/editor.tsx +0 -10
  117. package/editor/http/admin/editor/index.api.tsx +0 -43
  118. package/editor/server.ts +0 -57
  119. package/editor/ws.ts +0 -17
  120. /package/build/esm/{src/bin → bin}/compile.d.ts +0 -0
  121. /package/build/esm/{src/bin → bin}/compile.js +0 -0
  122. /package/build/esm/{src/bin → bin}/doc-md.d.ts +0 -0
  123. /package/build/esm/{src/bin → bin}/doc-md.js +0 -0
  124. /package/build/esm/{src/bin → bin}/generate-doc.d.ts +0 -0
  125. /package/build/esm/{src/bin → bin}/generate-doc.js +0 -0
  126. /package/build/esm/{src/bin → bin}/test.d.ts +0 -0
  127. /package/build/esm/{src/bin → bin}/test.js +0 -0
  128. /package/build/esm/{src/bin → bin}/types.d.ts +0 -0
  129. /package/build/esm/{src/cluster.d.ts → cluster.d.ts} +0 -0
  130. /package/build/esm/{src/cluster.js → cluster.js} +0 -0
  131. /package/build/esm/{src/common → common}/admin-interface.d.ts +0 -0
  132. /package/build/esm/{src/common → common}/admin-interface.js +0 -0
  133. /package/build/esm/{src/common → common}/assets.d.ts +0 -0
  134. /package/build/esm/{src/common → common}/checksum.d.ts +0 -0
  135. /package/build/esm/{src/common → common}/checksum.js +0 -0
  136. /package/build/esm/{src/common → common}/content-type.d.ts +0 -0
  137. /package/build/esm/{src/common → common}/content-type.js +0 -0
  138. /package/build/esm/{src/common → common}/esbuild.d.ts +0 -0
  139. /package/build/esm/{src/common → common}/exit.d.ts +0 -0
  140. /package/build/esm/{src/common → common}/exit.js +0 -0
  141. /package/build/esm/{src/common → common}/fs.d.ts +0 -0
  142. /package/build/esm/{src/common → common}/fs.js +0 -0
  143. /package/build/esm/{src/common → common}/jsx.d.ts +0 -0
  144. /package/build/esm/{src/common → common}/jsx.js +0 -0
  145. /package/build/esm/{src/common → common}/jwt.d.ts +0 -0
  146. /package/build/esm/{src/common → common}/jwt.js +0 -0
  147. /package/build/esm/{src/common → common}/paths.d.ts +0 -0
  148. /package/build/esm/{src/common → common}/paths.js +0 -0
  149. /package/build/esm/{src/common → common}/watch.d.ts +0 -0
  150. /package/build/esm/{src/common → common}/watch.js +0 -0
  151. /package/build/esm/{src/inflate → inflate}/inflate-sea.d.ts +0 -0
  152. /package/build/esm/{src/inflate → inflate}/inflate.d.ts +0 -0
  153. /package/build/esm/{src/inflate → inflate}/inflate.js +0 -0
  154. /package/build/esm/{src/inflate → inflate}/setup-auth.d.ts +0 -0
  155. /package/build/esm/{src/inflate → inflate}/setup-auth.js +0 -0
  156. /package/build/esm/{src/inflate → inflate}/setup-cors.d.ts +0 -0
  157. /package/build/esm/{src/inflate → inflate}/setup-cors.js +0 -0
  158. /package/build/esm/{src/inflate → inflate}/setup-db.d.ts +0 -0
  159. /package/build/esm/{src/inflate → inflate}/setup-db.js +0 -0
  160. /package/build/esm/{src/inflate → inflate}/setup-error.d.ts +0 -0
  161. /package/build/esm/{src/inflate → inflate}/setup-error.js +0 -0
  162. /package/build/esm/{src/inflate → inflate}/setup-http.d.ts +0 -0
  163. /package/build/esm/{src/inflate → inflate}/setup-log.d.ts +0 -0
  164. /package/build/esm/{src/inflate → inflate}/setup-log.js +0 -0
  165. /package/build/esm/{src/inflate → inflate}/setup-middleware.d.ts +0 -0
  166. /package/build/esm/{src/inflate → inflate}/setup-middleware.js +0 -0
  167. /package/build/esm/{src/inflate → inflate}/setup-server-config.d.ts +0 -0
  168. /package/build/esm/{src/inflate → inflate}/setup-server-config.js +0 -0
  169. /package/build/esm/{src/inflate → inflate}/setup-test.d.ts +0 -0
  170. /package/build/esm/{src/inflate → inflate}/setup-test.js +0 -0
  171. /package/build/esm/{src/inflate → inflate}/setup-ws.d.ts +0 -0
  172. /package/build/esm/{src/inflate → inflate}/setup-ws.js +0 -0
  173. /package/build/esm/{src/inflate → inflate}/setup.doc.d.ts +0 -0
  174. /package/build/esm/{src/inflate → inflate}/setup.doc.js +0 -0
  175. /package/build/esm/{src/inflate → inflate}/utils/sea-utils.d.ts +0 -0
  176. /package/build/esm/{src/inflate → inflate}/utils/sea-utils.js +0 -0
  177. /package/build/esm/{src/lib.d.ts → lib.d.ts} +0 -0
  178. /package/build/esm/{src/lib.js → lib.js} +0 -0
  179. /package/build/esm/{src/main.d.ts → main.d.ts} +0 -0
  180. /package/build/esm/{src/services → services}/hot-reload.d.ts +0 -0
  181. /package/build/esm/{src/services → services}/hot-reload.js +0 -0
  182. /package/build/esm/{src/services → services}/migrations.d.ts +0 -0
  183. /package/build/esm/{src/services → services}/migrations.js +0 -0
  184. /package/build/esm/{src/services → services}/utils/cache.d.ts +0 -0
  185. /package/build/esm/{src/services → services}/utils/cache.js +0 -0
  186. /package/build/esm/{src/services → services}/utils/cluster-cache.d.ts +0 -0
  187. /package/build/esm/{src/services → services}/utils/cluster-cache.js +0 -0
  188. /package/build/esm/{src/services → services}/utils/cluster-ws.d.ts +0 -0
  189. /package/build/esm/{src/services → services}/utils/cluster-ws.js +0 -0
  190. /package/build/esm/{src/services → services}/utils/db-manager.d.ts +0 -0
  191. /package/build/esm/{src/services → services}/utils/db-manager.js +0 -0
  192. /package/build/esm/{src/services → services}/utils/get-route.d.ts +0 -0
  193. /package/build/esm/{src/services → services}/utils/get-route.js +0 -0
  194. /package/build/esm/{src/services → services}/utils/jwt.d.ts +0 -0
  195. /package/build/esm/{src/services → services}/utils/jwt.js +0 -0
  196. /package/build/esm/{src/services → services}/utils/log-transport.d.ts +0 -0
  197. /package/build/esm/{src/services → services}/utils/log-transport.js +0 -0
  198. /package/build/esm/{src/services → services}/utils/log.d.ts +0 -0
  199. /package/build/esm/{src/services → services}/utils/log.js +0 -0
  200. /package/build/esm/{src/services → services}/utils/middleware.d.ts +0 -0
  201. /package/build/esm/{src/services → services}/utils/middleware.js +0 -0
  202. /package/build/esm/{src/services → services}/utils/server-interface.d.ts +0 -0
  203. /package/build/esm/{src/types.js → types.js} +0 -0
@@ -1,6 +0,0 @@
1
- import { AuthConfig } from "../src/types.js";
2
- export declare const ADMIN_EDITOR_AUTH_KEY = "$$ADMIN_EDITOR_AUTH_KEY$$";
3
- export declare const ADMIN_EDITOR_AUTH_QUERY = "key";
4
- export declare const ADMIN_EDITOR_AUTH_COOKIE = "$$ADMIN_EDITOR_AUTH_KEY$$";
5
- declare const _default: AuthConfig;
6
- export default _default;
@@ -1,44 +0,0 @@
1
- import { timingSafeEqual } from "node:crypto";
2
- export const ADMIN_EDITOR_AUTH_KEY = "$$ADMIN_EDITOR_AUTH_KEY$$";
3
- export const ADMIN_EDITOR_AUTH_QUERY = "key";
4
- export const ADMIN_EDITOR_AUTH_COOKIE = ADMIN_EDITOR_AUTH_KEY;
5
- export default {
6
- authService: {
7
- verify: async (args) => {
8
- const adminInterface = args.req.editor;
9
- const serverInterface = args.req.server;
10
- const KEY = (adminInterface ? adminInterface.getCache() : serverInterface.cache).get(ADMIN_EDITOR_AUTH_KEY);
11
- const validSesson = {
12
- username: "username",
13
- account: "account",
14
- groups: [],
15
- token: args.token
16
- };
17
- const queryToken = args.req.query[ADMIN_EDITOR_AUTH_QUERY];
18
- const cookieToken = args.req.cookies[ADMIN_EDITOR_AUTH_COOKIE];
19
- //console.log("\n\nqueryToken[%s] cookieToken[%s] KEY[%s]\n\n", queryToken, cookieToken, KEY);
20
- if (queryToken) {
21
- const queryBuf = Buffer.from(String(queryToken));
22
- const keyBuf = Buffer.from(KEY);
23
- if (typeof queryToken === "string" && queryBuf.length === keyBuf.length && timingSafeEqual(queryBuf, keyBuf)) {
24
- args.res.setCookie(ADMIN_EDITOR_AUTH_COOKIE, KEY, {
25
- expires: new Date(Date.now() + 1000 * 60 * 60 * 24),
26
- httpOnly: true,
27
- //secure: args.req.secure,
28
- sameSite: "strict",
29
- path: "/",
30
- });
31
- args.req.searchParams.delete(ADMIN_EDITOR_AUTH_QUERY);
32
- const queryString = args.req.searchParams.toString();
33
- const redirect = args.req.path + (queryString ? "?" + queryString : "");
34
- await args.res.redirect(redirect);
35
- return validSesson;
36
- }
37
- }
38
- else if (cookieToken) {
39
- return cookieToken === KEY ? validSesson : null;
40
- }
41
- return null;
42
- },
43
- }
44
- };
@@ -1,4 +0,0 @@
1
- export declare const BASEEDITOR_PATH = "/admin/editor";
2
- export declare const LOG_SOCKET_PATH = "/admin/socket";
3
- export declare const LOG_WRITE_EVENT = "LogWrite";
4
- export declare const SUPPORTED_LANGUAGES: string[];
@@ -1,20 +0,0 @@
1
- export const BASEEDITOR_PATH = "/admin/editor";
2
- export const LOG_SOCKET_PATH = "/admin/socket";
3
- export const LOG_WRITE_EVENT = "LogWrite";
4
- export const SUPPORTED_LANGUAGES = [
5
- "text",
6
- "json",
7
- "javascript",
8
- "typescript",
9
- "dockerfile",
10
- "yaml",
11
- "xml",
12
- "html",
13
- "css",
14
- "scss",
15
- "markdown",
16
- "c",
17
- "cpp",
18
- "bash",
19
- "python"
20
- ];
@@ -1,2 +0,0 @@
1
- export declare const PORT: string;
2
- export declare const BASE_PATH: string;
@@ -1,4 +0,0 @@
1
- import { resolve } from "node:path";
2
- import { cwd } from "node:process";
3
- export const PORT = process.env["PORT"] ? process.env["PORT"] : "8080";
4
- export const BASE_PATH = resolve(cwd());
@@ -1,2 +0,0 @@
1
- import { AdminRequest } from "../../src/common/admin-interface.js";
2
- export declare function EditorIndex(editorCSS: string, editorJS: string, enableHotReload: boolean): (req: AdminRequest, res: any) => Promise<void>;
@@ -1,14 +0,0 @@
1
- import { scanDir } from "../http/admin/editor/api/fs/scan.api.js";
2
- import { parseInflateErrors } from "../http/admin/editor/api/server/restart.api.js";
3
- import { HTMLEncode } from "./html-encode.js";
4
- export function EditorIndex(editorCSS, editorJS, enableHotReload) {
5
- return async function editorIndex(req, res) {
6
- const admin = req.editor;
7
- const errors = parseInflateErrors(admin ? admin.getInflateErrors() : []);
8
- const files = scanDir(req);
9
- const migrations = admin ? admin.getMigrations().map(m => m.name) : [];
10
- const services = admin ? admin.getServices() : ["."];
11
- const hotReload = enableHotReload ? (admin ? admin.getHotReloadHTML() : "") : "";
12
- res.html(`<!DOCTYPE html><html><body><style>${editorCSS}</style><script type="module">${editorJS}</script><editor-component class="main-container" reloadstring="${req.uuid}" migrations="${HTMLEncode(JSON.stringify(migrations))}" services="${HTMLEncode(JSON.stringify(services))}" errors="${HTMLEncode(JSON.stringify(errors))}" files="${HTMLEncode(JSON.stringify(files))}"><noscript>Enable JavaScript</noscript></editor-component>${hotReload}</body></html>`);
13
- };
14
- }
@@ -1 +0,0 @@
1
- export declare function HTMLEncode(str: string): string;
@@ -1,14 +0,0 @@
1
- export function HTMLEncode(str) {
2
- let i = str.length;
3
- const aRet = [];
4
- while (i--) {
5
- const iC = str[i].charCodeAt(0);
6
- if (iC < 65 || iC > 127 || (iC > 90 && iC < 97)) {
7
- aRet[i] = '&#' + iC + ';';
8
- }
9
- else {
10
- aRet[i] = str[i];
11
- }
12
- }
13
- return aRet.join('');
14
- }
@@ -1,15 +0,0 @@
1
- interface LogLine {
2
- out: string;
3
- identifier: string;
4
- level: "error" | "warn" | "debug" | "trace" | "info";
5
- }
6
- export interface LogSocket {
7
- lines: LogLine[];
8
- clearLog: () => void;
9
- getMaxlogsize: () => number | "unlimited";
10
- setMaxLogSize: (val: number | "unlimited") => void;
11
- }
12
- export declare function useLogSocket(options: {
13
- disableLog?: boolean;
14
- }): LogSocket;
15
- export {};
@@ -1,71 +0,0 @@
1
- import * as jsx from "@miqro/jsx";
2
- export function useLogSocket(options) {
3
- const [_, setmaxLogSize, getMaxlogsize] = jsx.useState(1000000);
4
- const [__, setlines, getLines] = jsx.useState([]);
5
- const refresh = jsx.useRefresh();
6
- jsx.useEffect(() => {
7
- let timeout;
8
- function setupSocket() {
9
- try {
10
- if (options.disableLog) {
11
- return;
12
- }
13
- console.log("setting up log socket");
14
- const socket = new WebSocket("/admin/socket");
15
- socket.addEventListener("error", (err) => {
16
- console.error(err);
17
- clearTimeout(timeout);
18
- timeout = setTimeout(() => {
19
- setupSocket();
20
- }, 1000);
21
- });
22
- socket.addEventListener("open", () => {
23
- console.log("log socket open");
24
- clearTimeout(timeout);
25
- socket.addEventListener("message", (msg) => {
26
- const lines = getLines();
27
- const data = JSON.parse(msg.data);
28
- //console.log(data.out);
29
- const maxLogSize = getMaxlogsize();
30
- if (maxLogSize !== "unlimited" && lines.length >= maxLogSize) {
31
- lines.splice(0, (lines.length - maxLogSize) + 1);
32
- }
33
- lines.push(data);
34
- setlines(lines);
35
- refresh();
36
- });
37
- });
38
- socket.addEventListener("close", () => {
39
- console.log("log socket close");
40
- clearTimeout(timeout);
41
- timeout = setTimeout(() => {
42
- setupSocket();
43
- }, 1000);
44
- });
45
- }
46
- catch (e) {
47
- console.error(e);
48
- clearTimeout(timeout);
49
- timeout = setTimeout(() => {
50
- setupSocket();
51
- }, 1000);
52
- }
53
- }
54
- setupSocket();
55
- }, []);
56
- return {
57
- lines: getLines(),
58
- clearLog: () => {
59
- setlines([]);
60
- },
61
- getMaxlogsize,
62
- setMaxLogSize: (newValue) => {
63
- if (newValue === "unlimited") {
64
- setmaxLogSize(newValue);
65
- }
66
- else {
67
- setmaxLogSize(newValue);
68
- }
69
- }
70
- };
71
- }
@@ -1,11 +0,0 @@
1
- export declare const TEMPLATES: {
2
- [name: string]: {
3
- displayName: string;
4
- template?: ((filename: string, httpPath: string) => string);
5
- httpSufix?: string;
6
- sufix?: string;
7
- prefix?: string;
8
- language: string;
9
- filename?: string;
10
- };
11
- };
@@ -1,11 +0,0 @@
1
- export declare function APIPReview(props: {
2
- apiPreview?: {
3
- path: string;
4
- method: string;
5
- }[];
6
- isPanelVisible: (panel: string) => boolean;
7
- }): JSX.Element;
8
- export declare namespace APIPReview {
9
- var asFragment: boolean;
10
- var shadowInit: boolean;
11
- }
@@ -1,92 +0,0 @@
1
- import { HighlightTextArea } from "./highlight-text-area.js";
2
- import * as jsx from "@miqro/jsx";
3
- import JSX from "@miqro/jsx";
4
- const DEFAULT_HEADERS = `{"content-type": "application/json"}`;
5
- const DEFAULT_BODY = `{}`;
6
- export function APIPReview(props) {
7
- const pathRef = jsx.useRef();
8
- const methodRef = jsx.useRef();
9
- const headersRef = jsx.useRef();
10
- const bodyRef = jsx.useRef();
11
- const [headers, setHeaders] = jsx.useState(DEFAULT_HEADERS);
12
- const [body, setBody] = jsx.useState(DEFAULT_BODY);
13
- const [responseStatus, setresponseStatus] = jsx.useState(null);
14
- const [responseHeaders, setresponseHeaders] = jsx.useState(null);
15
- const [responseBody, setresponseBody] = jsx.useState(null);
16
- const { path, method } = props.apiPreview ? props.apiPreview[0] : { path: "", method: "" };
17
- jsx.useEffect(() => {
18
- setresponseStatus(null);
19
- setresponseHeaders(null);
20
- setresponseBody(null);
21
- /*setHeaders(DEFAULT_HEADERS);
22
- setBody(DEFAULT_BODY);*/
23
- }, [path]);
24
- const useBody = String(method).toLocaleLowerCase() !== "get";
25
- function submit() {
26
- try {
27
- if (methodRef.current && pathRef.current && headersRef.current) {
28
- setHeaders(headersRef.current.value);
29
- if (bodyRef.current) {
30
- setBody(bodyRef.current.value);
31
- }
32
- fetch(pathRef.current.value, useBody && bodyRef.current ? {
33
- method: methodRef.current.value,
34
- headers: JSON.parse(headersRef.current.value),
35
- body: bodyRef.current.value
36
- } : {
37
- method: methodRef.current.value,
38
- headers: JSON.parse(headersRef.current.value),
39
- }).then(async (r) => {
40
- setresponseStatus(r.status);
41
- const headers = {};
42
- r.headers.forEach((value, key) => {
43
- headers[key] = value;
44
- });
45
- setresponseHeaders(JSON.stringify(headers, undefined, 2));
46
- const text = await r.text();
47
- setresponseBody(text);
48
- try {
49
- setresponseBody(JSON.stringify(JSON.parse(text), undefined, 2));
50
- }
51
- catch (e) {
52
- // ignore
53
- }
54
- }).catch(e => {
55
- console.error(e);
56
- });
57
- }
58
- }
59
- catch (e) {
60
- console.error(e);
61
- }
62
- }
63
- return JSX.createElement("div", { style: `${!props.isPanelVisible("right") ? "display: none;" : ""}${props.apiPreview ? "" : " display: none; "}margin:0; padding: 0; overflow: auto; max-height: 100%; width:100%;` },
64
- JSX.createElement("form", { onsubmit: ev => {
65
- ev.preventDefault();
66
- submit();
67
- } },
68
- JSX.createElement("p", null, "path"),
69
- JSX.createElement("input", { style: "width: calc(100% - 4 * var(--file-browser-separation));", type: "text", value: path, ref: pathRef }),
70
- JSX.createElement("p", null, "method"),
71
- JSX.createElement("input", { style: "width: calc(100% - 4 * var(--file-browser-separation));", type: "text", value: method, ref: methodRef }),
72
- JSX.createElement("p", null, "headers"),
73
- JSX.createElement("input", { style: "width: calc(100% - 4 * var(--file-browser-separation));", type: "text", value: headers, ref: headersRef }),
74
- useBody ?
75
- JSX.createElement(JSX.Fragment, null,
76
- JSX.createElement("p", null, "body"),
77
- JSX.createElement("input", { style: "width: calc(100% - 4 * var(--file-browser-separation));", type: "text", value: body, ref: bodyRef })) :
78
- JSX.createElement(JSX.Fragment, null),
79
- JSX.createElement("button", { style: "margin-top: var(--file-browser-separation); width: 100%;", class: "btn", onclick: ev => {
80
- ev.preventDefault();
81
- submit();
82
- } }, "submit"),
83
- JSX.createElement("div", null,
84
- JSX.createElement("p", null, "response status"),
85
- JSX.createElement("p", null, responseStatus),
86
- JSX.createElement("p", null, "response headers"),
87
- JSX.createElement(HighlightTextArea, { content: responseHeaders ? responseHeaders : "null", language: "json", disabled: "true" }),
88
- JSX.createElement("p", null, "response body"),
89
- JSX.createElement(HighlightTextArea, { content: responseBody ? responseBody : "null", language: "json", disabled: "true" }))));
90
- }
91
- APIPReview.asFragment = true;
92
- APIPReview.shadowInit = false;
@@ -1,16 +0,0 @@
1
- export declare function Editor(props: {
2
- disablelog?: boolean;
3
- disablepreview?: boolean;
4
- disablereload?: boolean;
5
- migrations: string;
6
- services: string;
7
- reloadstring: string;
8
- files: string;
9
- initialcurrent: string;
10
- classname?: string;
11
- errors: string;
12
- }): JSX.Element;
13
- export declare namespace Editor {
14
- var asFragment: boolean;
15
- var shadowInit: boolean;
16
- }