@nestia/editor 12.0.0-rc.3 → 12.0.0

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 (90) hide show
  1. package/dist/assets/index-D7-O5u45.js +4140 -0
  2. package/dist/index.html +1 -1
  3. package/lib/NestiaEditorApplication.mjs +66 -3
  4. package/lib/NestiaEditorApplication.mjs.map +1 -1
  5. package/lib/NestiaEditorIframe.js +11 -17
  6. package/lib/NestiaEditorIframe.js.map +1 -1
  7. package/lib/NestiaEditorIframe.mjs +159 -3
  8. package/lib/NestiaEditorIframe.mjs.map +1 -1
  9. package/lib/NestiaEditorModule.mjs +51 -3
  10. package/lib/NestiaEditorModule.mjs.map +1 -1
  11. package/lib/NestiaEditorUploader.js +4 -11
  12. package/lib/NestiaEditorUploader.js.map +1 -1
  13. package/lib/NestiaEditorUploader.mjs +129 -3
  14. package/lib/NestiaEditorUploader.mjs.map +1 -1
  15. package/lib/index.mjs +4 -2
  16. package/lib/internal/NestiaEditorArchiver.d.ts +20 -0
  17. package/lib/internal/NestiaEditorArchiver.js +38 -0
  18. package/lib/internal/NestiaEditorArchiver.js.map +1 -0
  19. package/lib/internal/NestiaEditorArchiver.mjs +24 -0
  20. package/lib/internal/NestiaEditorArchiver.mjs.map +1 -0
  21. package/lib/internal/NestiaEditorComposer.mjs +52 -3
  22. package/lib/internal/NestiaEditorComposer.mjs.map +1 -1
  23. package/lib/internal/NestiaEditorFileUploader.mjs +43 -3
  24. package/lib/internal/NestiaEditorFileUploader.mjs.map +1 -1
  25. package/lib/main.mjs +9 -3
  26. package/lib/main.mjs.map +1 -1
  27. package/package.json +8 -11
  28. package/src/NestiaEditorIframe.tsx +35 -22
  29. package/src/NestiaEditorUploader.tsx +6 -14
  30. package/src/internal/NestiaEditorArchiver.ts +43 -0
  31. package/dist/assets/index-CkZ2qgCJ.js +0 -4310
  32. package/lib/NestiaEditorApplication2.mjs +0 -86
  33. package/lib/NestiaEditorApplication2.mjs.map +0 -1
  34. package/lib/NestiaEditorIframe2.mjs +0 -139
  35. package/lib/NestiaEditorIframe2.mjs.map +0 -1
  36. package/lib/NestiaEditorModule2.mjs +0 -124
  37. package/lib/NestiaEditorModule2.mjs.map +0 -1
  38. package/lib/NestiaEditorUploader2.mjs +0 -90
  39. package/lib/NestiaEditorUploader2.mjs.map +0 -1
  40. package/lib/_virtual/NestiaEditorApplication.mjs +0 -4
  41. package/lib/_virtual/NestiaEditorApplication.mjs.map +0 -1
  42. package/lib/_virtual/NestiaEditorComposer.mjs +0 -4
  43. package/lib/_virtual/NestiaEditorComposer.mjs.map +0 -1
  44. package/lib/_virtual/NestiaEditorFileUploader.mjs +0 -4
  45. package/lib/_virtual/NestiaEditorFileUploader.mjs.map +0 -1
  46. package/lib/_virtual/NestiaEditorIframe.mjs +0 -4
  47. package/lib/_virtual/NestiaEditorIframe.mjs.map +0 -1
  48. package/lib/_virtual/NestiaEditorModule.mjs +0 -4
  49. package/lib/_virtual/NestiaEditorModule.mjs.map +0 -1
  50. package/lib/_virtual/NestiaEditorUploader.mjs +0 -4
  51. package/lib/_virtual/NestiaEditorUploader.mjs.map +0 -1
  52. package/lib/_virtual/_commonjsHelpers.mjs +0 -35
  53. package/lib/_virtual/_commonjsHelpers.mjs.map +0 -1
  54. package/lib/_virtual/_js-yaml.mjs +0 -7
  55. package/lib/_virtual/_js-yaml.mjs.map +0 -1
  56. package/lib/_virtual/_node_fs.mjs +0 -7
  57. package/lib/_virtual/_node_fs.mjs.map +0 -1
  58. package/lib/_virtual/_react-mui-fileuploader.mjs +0 -7
  59. package/lib/_virtual/_react-mui-fileuploader.mjs.map +0 -1
  60. package/lib/_virtual/_react.mjs +0 -7
  61. package/lib/_virtual/_react.mjs.map +0 -1
  62. package/lib/_virtual/client.mjs +0 -7
  63. package/lib/_virtual/client.mjs.map +0 -1
  64. package/lib/_virtual/estree.mjs +0 -7
  65. package/lib/_virtual/estree.mjs.map +0 -1
  66. package/lib/_virtual/index.mjs +0 -4
  67. package/lib/_virtual/index.mjs.map +0 -1
  68. package/lib/_virtual/jsx-runtime.mjs +0 -7
  69. package/lib/_virtual/jsx-runtime.mjs.map +0 -1
  70. package/lib/_virtual/main.mjs +0 -4
  71. package/lib/_virtual/main.mjs.map +0 -1
  72. package/lib/_virtual/material.mjs +0 -7
  73. package/lib/_virtual/material.mjs.map +0 -1
  74. package/lib/_virtual/migrate.mjs +0 -7
  75. package/lib/_virtual/migrate.mjs.map +0 -1
  76. package/lib/_virtual/sdk.mjs +0 -7
  77. package/lib/_virtual/sdk.mjs.map +0 -1
  78. package/lib/_virtual/standalone.mjs +0 -7
  79. package/lib/_virtual/standalone.mjs.map +0 -1
  80. package/lib/_virtual/typescript.mjs +0 -7
  81. package/lib/_virtual/typescript.mjs.map +0 -1
  82. package/lib/index.mjs.map +0 -1
  83. package/lib/index2.mjs +0 -35
  84. package/lib/index2.mjs.map +0 -1
  85. package/lib/internal/NestiaEditorComposer2.mjs +0 -110
  86. package/lib/internal/NestiaEditorComposer2.mjs.map +0 -1
  87. package/lib/internal/NestiaEditorFileUploader2.mjs +0 -51
  88. package/lib/internal/NestiaEditorFileUploader2.mjs.map +0 -1
  89. package/lib/main2.mjs +0 -16
  90. package/lib/main2.mjs.map +0 -1
package/dist/index.html CHANGED
@@ -6,7 +6,7 @@
6
6
  content="width=device-width, height=device-height, initial-scale=1, minimum-scale=1.0, maximum-scale=3.0s"
7
7
  />
8
8
  <title>Nestia Editor</title>
9
- <script type="module" src="./assets/index-CkZ2qgCJ.js"></script>
9
+ <script type="module" src="./assets/index-D7-O5u45.js"></script>
10
10
  </head>
11
11
  <body style="width: 100%; height: 100%; margin: 0px; overflow: hidden;">
12
12
  <div id="root" style="width: 100%; height: 100%"></div>
@@ -1,3 +1,66 @@
1
- export { NestiaEditorApplication } from './NestiaEditorApplication2.mjs';
2
- export { __exports as default } from './_virtual/NestiaEditorApplication.mjs';
3
- //# sourceMappingURL=NestiaEditorApplication.mjs.map
1
+ import { NestiaEditorIframe } from "./NestiaEditorIframe.mjs";
2
+ import { NestiaEditorUploader } from "./NestiaEditorUploader.mjs";
3
+ import { Typography } from "@mui/material";
4
+ import React from "react";
5
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
6
+ //#region src/NestiaEditorApplication.tsx
7
+ function NestiaEditorApplication() {
8
+ const [ready, setReady] = React.useState(false);
9
+ const [asset, setAsset] = React.useState(null);
10
+ React.useEffect(() => {
11
+ (async () => {
12
+ try {
13
+ setAsset(await getAsset());
14
+ } catch {
15
+ setAsset(null);
16
+ }
17
+ setReady(true);
18
+ })().catch(() => {});
19
+ }, []);
20
+ if (ready === false) return /* @__PURE__ */ jsx(Fragment, {});
21
+ return asset !== null ? /* @__PURE__ */ jsx(NestiaEditorIframe, {
22
+ swagger: asset.url,
23
+ package: asset.package,
24
+ simulate: asset.simulate,
25
+ e2e: asset.e2e,
26
+ mode: asset.mode
27
+ }) : /* @__PURE__ */ jsxs("div", {
28
+ style: { padding: 25 },
29
+ children: [
30
+ /* @__PURE__ */ jsx(Typography, {
31
+ variant: "h4",
32
+ children: "Nestia Editor"
33
+ }),
34
+ /* @__PURE__ */ jsx("hr", {}),
35
+ /* @__PURE__ */ jsx("br", {}),
36
+ /* @__PURE__ */ jsx(NestiaEditorUploader, {})
37
+ ]
38
+ });
39
+ }
40
+ async function getAsset() {
41
+ const index = window.location.href.indexOf("?");
42
+ const query = new URLSearchParams(index === -1 ? "" : window.location.href.substring(index + 1));
43
+ if (query.has("uploader")) return null;
44
+ const url = query.get("url") ?? await findSwagger("./swagger.json") ?? await findSwagger("./swagger.yaml");
45
+ if (url === null) return null;
46
+ const mode = query.get("mode");
47
+ const packageName = query.get("package") ?? window.package;
48
+ const keyword = query.get("keyword") ?? window.keyword;
49
+ const simulate = query.get("simulate") ?? window.simulate;
50
+ const e2e = query.get("e2e") ?? window.e2e;
51
+ return {
52
+ mode: mode === "nest" ? "nest" : "sdk",
53
+ package: packageName ?? "@ORGANIZATION/PROJECT",
54
+ url,
55
+ keyword: keyword !== null ? keyword === true || keyword === "true" || keyword === "1" : false,
56
+ simulate: simulate !== null ? simulate === true || simulate === "true" || simulate === "1" : false,
57
+ e2e: e2e !== null ? e2e === true || e2e === "true" || e2e === "1" : false
58
+ };
59
+ }
60
+ async function findSwagger(file) {
61
+ return (await fetch(file)).status === 200 ? file : null;
62
+ }
63
+ //#endregion
64
+ export { NestiaEditorApplication };
65
+
66
+ //# sourceMappingURL=NestiaEditorApplication.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaEditorApplication.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"NestiaEditorApplication.mjs","names":[],"sources":[],"mappings":""}
@@ -15,20 +15,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.NestiaEditorIframe = NestiaEditorIframe;
16
16
  const jsx_runtime_1 = require("react/jsx-runtime");
17
17
  const material_1 = require("@mui/material");
18
- const sdk_1 = __importDefault(require("@stackblitz/sdk"));
19
18
  const js_yaml_1 = require("js-yaml");
20
19
  const react_1 = __importDefault(require("react"));
20
+ const NestiaEditorArchiver_1 = require("./internal/NestiaEditorArchiver");
21
21
  const NestiaEditorComposer_1 = require("./internal/NestiaEditorComposer");
22
22
  function NestiaEditorIframe(props) {
23
- const [id] = react_1.default.useState(`reactia-editor-div-${Math.random().toString().substring(2)}`);
23
+ var _a;
24
24
  const [step, setStep] = react_1.default.useState(0);
25
25
  const [fetchError, setFetchError] = react_1.default.useState(null);
26
26
  const [operations, setOperationCount] = react_1.default.useState({});
27
27
  const [composerError, setComposerError] = react_1.default.useState(null);
28
+ const [files, setFiles] = react_1.default.useState(null);
29
+ const archive = NestiaEditorArchiver_1.NestiaEditorArchiver.name((_a = props.package) !== null && _a !== void 0 ? _a : "@ORGANIZATION/PROJECT");
28
30
  react_1.default.useEffect(() => {
29
31
  (() => __awaiter(this, void 0, void 0, function* () {
30
- var _a;
31
- var _b;
32
32
  // LOADING OPENAPI DOCUMENTS
33
33
  setStep(0);
34
34
  const document = typeof props.swagger === "string"
@@ -65,23 +65,14 @@ function NestiaEditorIframe(props) {
65
65
  setComposerError(result.errors);
66
66
  return;
67
67
  }
68
- // COMPOSING STACKBLITZ PROJECT
68
+ // READY TO DOWNLOAD
69
69
  setStep(2);
70
- sdk_1.default.embedProject(id, {
71
- title: (_b = (_a = document.info) === null || _a === void 0 ? void 0 : _a.title) !== null && _b !== void 0 ? _b : "Nestia Editor",
72
- template: "node",
73
- files: result.data.files,
74
- }, {
75
- width: "100%",
76
- height: "100%",
77
- openFile: result.data.openFile,
78
- startScript: result.data.startScript, // no problem
79
- });
70
+ setFiles(result.data.files);
80
71
  }))().catch((exp) => {
81
72
  console.error("unknown error", exp);
82
73
  });
83
74
  }, []);
84
- return ((0, jsx_runtime_1.jsx)("div", { id: id, style: {
75
+ return ((0, jsx_runtime_1.jsx)("div", { style: {
85
76
  width: "100%",
86
77
  height: "100%",
87
78
  overflow: "hidden",
@@ -90,7 +81,10 @@ function NestiaEditorIframe(props) {
90
81
  overflow: "auto",
91
82
  }, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h4", children: "Nestia Editor" }), (0, jsx_runtime_1.jsx)("hr", {}), (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsxs)(material_1.Stepper, { activeStep: step, orientation: "vertical", nonLinear: true, children: [(0, jsx_runtime_1.jsxs)(material_1.Step, { children: [(0, jsx_runtime_1.jsx)(material_1.StepLabel, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h5", children: "Loading OpenAPI Document" }) }), (0, jsx_runtime_1.jsxs)(material_1.StepContent, { children: [(0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsx)(material_1.CircularProgress, { size: 100, color: "success" }), (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsx)("br", {}), typeof props.swagger === "string" ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("p", { children: "Fetching OpenAPI Document from" }), (0, jsx_runtime_1.jsx)("p", { children: (0, jsx_runtime_1.jsx)("a", { href: props.swagger, target: "_blank", children: props.swagger }) })] })) : ("Delivering OpenAPI Document to the composer"), fetchError !== null ? ((0, jsx_runtime_1.jsxs)(material_1.Alert, { severity: "error", children: [(0, jsx_runtime_1.jsx)(material_1.AlertTitle, { children: "Fetch Error" }), fetchError] })) : null] })] }, 0), (0, jsx_runtime_1.jsxs)(material_1.Step, { children: [(0, jsx_runtime_1.jsx)(material_1.StepLabel, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h5", children: "Generating Software Development Kit" }) }), (0, jsx_runtime_1.jsxs)(material_1.StepContent, { children: [(0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsx)(material_1.CircularProgress, { size: 100, color: "success" }), (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsx)("br", {}), "Generating SDK functions...", (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsxs)("ul", { children: [(0, jsx_runtime_1.jsxs)("li", { children: ["total operations: #", Object.values(operations)
92
83
  .reduce((a, b) => a + b, 0)
93
- .toLocaleString()] }), Object.entries(operations).map(([method, count]) => ((0, jsx_runtime_1.jsxs)("li", { children: [method, ": #", count.toLocaleString()] })))] }), composerError !== null ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsxs)(material_1.Alert, { severity: "error", children: [(0, jsx_runtime_1.jsx)(material_1.AlertTitle, { children: "Composition Error" }), (0, jsx_runtime_1.jsx)("pre", { children: JSON.stringify(composerError, null, 2) })] })] })) : null] })] }, 1), (0, jsx_runtime_1.jsxs)(material_1.Step, { children: [(0, jsx_runtime_1.jsx)(material_1.StepLabel, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h5", children: "Composing TypeScript Project" }) }), (0, jsx_runtime_1.jsx)(material_1.StepContent, {})] }, 2)] })] }) }));
84
+ .toLocaleString()] }), Object.entries(operations).map(([method, count]) => ((0, jsx_runtime_1.jsxs)("li", { children: [method, ": #", count.toLocaleString()] })))] }), composerError !== null ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsxs)(material_1.Alert, { severity: "error", children: [(0, jsx_runtime_1.jsx)(material_1.AlertTitle, { children: "Composition Error" }), (0, jsx_runtime_1.jsx)("pre", { children: JSON.stringify(composerError, null, 2) })] })] })) : null] })] }, 1), (0, jsx_runtime_1.jsxs)(material_1.Step, { children: [(0, jsx_runtime_1.jsx)(material_1.StepLabel, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h5", children: "Downloading TypeScript Project" }) }), (0, jsx_runtime_1.jsxs)(material_1.StepContent, { children: [(0, jsx_runtime_1.jsx)("br", {}), files !== null ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("p", { children: [Object.keys(files).length.toLocaleString(), " files are ready."] }), (0, jsx_runtime_1.jsxs)(material_1.Button, { variant: "contained", color: "success", size: "large", onClick: () => NestiaEditorArchiver_1.NestiaEditorArchiver.download({
85
+ name: archive,
86
+ files,
87
+ }), children: ["Download ", archive] })] })) : null] })] }, 2)] })] }) }));
94
88
  }
95
89
  const getDocument = (url) => __awaiter(void 0, void 0, void 0, function* () {
96
90
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaEditorIframe.js","sourceRoot":"","sources":["../src/NestiaEditorIframe.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NestiaEditorIframe.js","sourceRoot":"","sources":["../src/NestiaEditorIframe.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,159 @@
1
- export { NestiaEditorIframe } from './NestiaEditorIframe2.mjs';
2
- export { __exports as default } from './_virtual/NestiaEditorIframe.mjs';
3
- //# sourceMappingURL=NestiaEditorIframe.mjs.map
1
+ import { NestiaEditorArchiver } from "./internal/NestiaEditorArchiver.mjs";
2
+ import { NestiaEditorComposer } from "./internal/NestiaEditorComposer.mjs";
3
+ import { Alert, AlertTitle, Button, CircularProgress, Step, StepContent, StepLabel, Stepper, Typography } from "@mui/material";
4
+ import React from "react";
5
+ import { load } from "js-yaml";
6
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
7
+ //#region src/NestiaEditorIframe.tsx
8
+ function NestiaEditorIframe(props) {
9
+ const [step, setStep] = React.useState(0);
10
+ const [fetchError, setFetchError] = React.useState(null);
11
+ const [operations, setOperationCount] = React.useState({});
12
+ const [composerError, setComposerError] = React.useState(null);
13
+ const [files, setFiles] = React.useState(null);
14
+ const archive = NestiaEditorArchiver.name(props.package ?? "@ORGANIZATION/PROJECT");
15
+ React.useEffect(() => {
16
+ (async () => {
17
+ setStep(0);
18
+ const document = typeof props.swagger === "string" ? await getDocument(props.swagger) : props.swagger;
19
+ if (typeof document === "string") {
20
+ setFetchError(document);
21
+ return;
22
+ } else setOperationCount(aggregateOperation(document));
23
+ setStep(1);
24
+ const result = await (async () => {
25
+ try {
26
+ return await NestiaEditorComposer[props.mode ?? "sdk"]({
27
+ document,
28
+ keyword: props.keyword ?? true,
29
+ simulate: props.simulate ?? true,
30
+ e2e: props.e2e ?? true,
31
+ package: props.package ?? "@ORGANIZATION/PROJECT"
32
+ });
33
+ } catch (exp) {
34
+ return {
35
+ success: false,
36
+ errors: exp,
37
+ data: void 0
38
+ };
39
+ }
40
+ })();
41
+ if (result.success === false) {
42
+ setComposerError(result.errors);
43
+ return;
44
+ }
45
+ setStep(2);
46
+ setFiles(result.data.files);
47
+ })().catch((exp) => {
48
+ console.error("unknown error", exp);
49
+ });
50
+ }, []);
51
+ return /* @__PURE__ */ jsx("div", {
52
+ style: {
53
+ width: "100%",
54
+ height: "100%",
55
+ overflow: "hidden"
56
+ },
57
+ children: /* @__PURE__ */ jsxs("div", {
58
+ style: {
59
+ padding: 25,
60
+ overflow: "auto"
61
+ },
62
+ children: [
63
+ /* @__PURE__ */ jsx(Typography, {
64
+ variant: "h4",
65
+ children: "Nestia Editor"
66
+ }),
67
+ /* @__PURE__ */ jsx("hr", {}),
68
+ /* @__PURE__ */ jsx("br", {}),
69
+ /* @__PURE__ */ jsxs(Stepper, {
70
+ activeStep: step,
71
+ orientation: "vertical",
72
+ nonLinear: true,
73
+ children: [
74
+ /* @__PURE__ */ jsxs(Step, { children: [/* @__PURE__ */ jsx(StepLabel, { children: /* @__PURE__ */ jsx(Typography, {
75
+ variant: "h5",
76
+ children: "Loading OpenAPI Document"
77
+ }) }), /* @__PURE__ */ jsxs(StepContent, { children: [
78
+ /* @__PURE__ */ jsx("br", {}),
79
+ /* @__PURE__ */ jsx(CircularProgress, {
80
+ size: 100,
81
+ color: "success"
82
+ }),
83
+ /* @__PURE__ */ jsx("br", {}),
84
+ /* @__PURE__ */ jsx("br", {}),
85
+ typeof props.swagger === "string" ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("p", { children: "Fetching OpenAPI Document from" }), /* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx("a", {
86
+ href: props.swagger,
87
+ target: "_blank",
88
+ children: props.swagger
89
+ }) })] }) : "Delivering OpenAPI Document to the composer",
90
+ fetchError !== null ? /* @__PURE__ */ jsxs(Alert, {
91
+ severity: "error",
92
+ children: [/* @__PURE__ */ jsx(AlertTitle, { children: "Fetch Error" }), fetchError]
93
+ }) : null
94
+ ] })] }, 0),
95
+ /* @__PURE__ */ jsxs(Step, { children: [/* @__PURE__ */ jsx(StepLabel, { children: /* @__PURE__ */ jsx(Typography, {
96
+ variant: "h5",
97
+ children: "Generating Software Development Kit"
98
+ }) }), /* @__PURE__ */ jsxs(StepContent, { children: [
99
+ /* @__PURE__ */ jsx("br", {}),
100
+ /* @__PURE__ */ jsx(CircularProgress, {
101
+ size: 100,
102
+ color: "success"
103
+ }),
104
+ /* @__PURE__ */ jsx("br", {}),
105
+ /* @__PURE__ */ jsx("br", {}),
106
+ "Generating SDK functions...",
107
+ /* @__PURE__ */ jsx("br", {}),
108
+ /* @__PURE__ */ jsxs("ul", { children: [/* @__PURE__ */ jsxs("li", { children: ["total operations: #", Object.values(operations).reduce((a, b) => a + b, 0).toLocaleString()] }), Object.entries(operations).map(([method, count]) => /* @__PURE__ */ jsxs("li", { children: [
109
+ method,
110
+ ": #",
111
+ count.toLocaleString()
112
+ ] }))] }),
113
+ composerError !== null ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("br", {}), /* @__PURE__ */ jsxs(Alert, {
114
+ severity: "error",
115
+ children: [/* @__PURE__ */ jsx(AlertTitle, { children: "Composition Error" }), /* @__PURE__ */ jsx("pre", { children: JSON.stringify(composerError, null, 2) })]
116
+ })] }) : null
117
+ ] })] }, 1),
118
+ /* @__PURE__ */ jsxs(Step, { children: [/* @__PURE__ */ jsx(StepLabel, { children: /* @__PURE__ */ jsx(Typography, {
119
+ variant: "h5",
120
+ children: "Downloading TypeScript Project"
121
+ }) }), /* @__PURE__ */ jsxs(StepContent, { children: [/* @__PURE__ */ jsx("br", {}), files !== null ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs("p", { children: [Object.keys(files).length.toLocaleString(), " files are ready."] }), /* @__PURE__ */ jsxs(Button, {
122
+ variant: "contained",
123
+ color: "success",
124
+ size: "large",
125
+ onClick: () => NestiaEditorArchiver.download({
126
+ name: archive,
127
+ files
128
+ }),
129
+ children: ["Download ", archive]
130
+ })] }) : null] })] }, 2)
131
+ ]
132
+ })
133
+ ]
134
+ })
135
+ });
136
+ }
137
+ const getDocument = async (url) => {
138
+ try {
139
+ const response = await fetch(url);
140
+ if (response.status !== 200) return await response.text();
141
+ else if (url.endsWith(".yaml")) return load(await response.text());
142
+ return await response.json();
143
+ } catch (error) {
144
+ if (error instanceof Error) return error.message;
145
+ return "Unknown error";
146
+ }
147
+ };
148
+ const aggregateOperation = (document) => {
149
+ const map = {};
150
+ if (!(typeof document === "object" && document !== null)) return map;
151
+ for (const collection of Object.values(document.paths ?? {})) if (typeof collection === "object" && collection !== null) {
152
+ for (const [method] of Object.entries(collection)) if (method === "head" || method === "get" || method === "post" || method === "patch" || method === "put" || method === "delete") map[method] = (map[method] ?? 0) + 1;
153
+ }
154
+ return map;
155
+ };
156
+ //#endregion
157
+ export { NestiaEditorIframe };
158
+
159
+ //# sourceMappingURL=NestiaEditorIframe.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaEditorIframe.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"NestiaEditorIframe.mjs","names":[],"sources":[],"mappings":""}
@@ -1,3 +1,51 @@
1
- export { NestiaEditorModule } from './NestiaEditorModule2.mjs';
2
- export { __exports as default } from './_virtual/NestiaEditorModule.mjs';
3
- //# sourceMappingURL=NestiaEditorModule.mjs.map
1
+ import * as fs from "fs";
2
+ //#region src/NestiaEditorModule.ts
3
+ let NestiaEditorModule;
4
+ (function(_NestiaEditorModule) {
5
+ _NestiaEditorModule.setup = async (props) => {
6
+ const prefix = "/" + [getGlobalPrefix(props.application), props.path].join("/").split("/").filter((str) => str.length !== 0).join("/");
7
+ const adaptor = props.application.getHttpAdapter();
8
+ const staticFiles = [
9
+ {
10
+ path: "/index.html",
11
+ type: "text/html",
12
+ content: await getIndex(props)
13
+ },
14
+ {
15
+ path: "/swagger.json",
16
+ type: "application/json",
17
+ content: JSON.stringify(typeof props.swagger === "string" ? await getSwagger(props.swagger) : props.swagger, null, 2)
18
+ },
19
+ await getJavaScript()
20
+ ];
21
+ for (const f of staticFiles) adaptor.get(prefix + f.path, (_, res) => {
22
+ res.type(f.type);
23
+ return res.send(f.content);
24
+ });
25
+ for (const p of ["", "/"]) adaptor.get(prefix + p, (_, res) => {
26
+ return res.redirect(prefix + "/index.html");
27
+ });
28
+ };
29
+ const getGlobalPrefix = (app) => typeof app.config?.globalPrefix === "string" ? app.config.globalPrefix : "";
30
+ })(NestiaEditorModule || (NestiaEditorModule = {}));
31
+ const getIndex = async (props) => {
32
+ return (await fs.promises.readFile(`${__dirname}/../dist/index.html`, "utf8")).replace(`"@ORGANIZATION/PROJECT"`, JSON.stringify(props.package ?? "@ORGANIZATION/PROJECT")).replace("window.simulate = false", `window.simulate = ${!!props.simulate}`).replace("window.e2e = false", `window.e2e = ${!!props.e2e}`);
33
+ };
34
+ const getJavaScript = async () => {
35
+ const path = (await fs.promises.readdir(`${__dirname}/../dist/assets`))[0];
36
+ if (path === void 0) throw new Error("Unreachable code, no JS file exists.");
37
+ return {
38
+ path: `/assets/${path}`,
39
+ type: "application/javascript",
40
+ content: await fs.promises.readFile(`${__dirname}/../dist/assets/${path}`, "utf8")
41
+ };
42
+ };
43
+ const getSwagger = async (url) => {
44
+ const response = await fetch(url);
45
+ if (response.status !== 200) throw new Error(`Failed to fetch Swagger document from ${url}`);
46
+ return response.json();
47
+ };
48
+ //#endregion
49
+ export { NestiaEditorModule };
50
+
51
+ //# sourceMappingURL=NestiaEditorModule.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaEditorModule.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"NestiaEditorModule.mjs","names":[],"sources":[],"mappings":""}
@@ -15,8 +15,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.NestiaEditorUploader = NestiaEditorUploader;
16
16
  const jsx_runtime_1 = require("react/jsx-runtime");
17
17
  const material_1 = require("@mui/material");
18
- const sdk_1 = __importDefault(require("@stackblitz/sdk"));
19
18
  const react_1 = __importDefault(require("react"));
19
+ const NestiaEditorArchiver_1 = require("./internal/NestiaEditorArchiver");
20
20
  const NestiaEditorComposer_1 = require("./internal/NestiaEditorComposer");
21
21
  const NestiaEditorFileUploader_1 = require("./internal/NestiaEditorFileUploader");
22
22
  function NestiaEditorUploader(props) {
@@ -41,8 +41,6 @@ function NestiaEditorUploader(props) {
41
41
  handleError(error);
42
42
  };
43
43
  const generate = () => __awaiter(this, void 0, void 0, function* () {
44
- var _a;
45
- var _b;
46
44
  if (document === null)
47
45
  return;
48
46
  setProgress(true);
@@ -55,14 +53,9 @@ function NestiaEditorUploader(props) {
55
53
  package: name,
56
54
  });
57
55
  if (result.success === true) {
58
- sdk_1.default.openProject({
59
- title: (_b = (_a = document.info) === null || _a === void 0 ? void 0 : _a.title) !== null && _b !== void 0 ? _b : "Nestia Editor",
60
- template: "node",
56
+ NestiaEditorArchiver_1.NestiaEditorArchiver.download({
57
+ name: NestiaEditorArchiver_1.NestiaEditorArchiver.name(name),
61
58
  files: result.data.files,
62
- }, {
63
- newWindow: true,
64
- openFile: result.data.openFile,
65
- startScript: result.data.startScript,
66
59
  });
67
60
  }
68
61
  else {
@@ -74,6 +67,6 @@ function NestiaEditorUploader(props) {
74
67
  }
75
68
  setProgress(false);
76
69
  });
77
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(NestiaEditorFileUploader_1.NestiaEditorFileUploader, { onChange: handleSwagger }), (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsxs)(material_1.FormControl, { fullWidth: true, style: { paddingLeft: 15 }, children: [(0, jsx_runtime_1.jsx)(material_1.TextField, { onChange: (e) => setName(e.target.value), defaultValue: name, label: "Package Name", variant: "outlined" }), (0, jsx_runtime_1.jsx)(material_1.FormLabel, { style: { paddingTop: 20 }, children: " Mode " }), (0, jsx_runtime_1.jsxs)(material_1.RadioGroup, { defaultValue: mode, onChange: (_e, value) => setMode(value), style: { paddingLeft: 15 }, children: [(0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { value: "sdk", control: (0, jsx_runtime_1.jsx)(material_1.Radio, {}), label: "Software Development Kit" }), (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { value: "nest", control: (0, jsx_runtime_1.jsx)(material_1.Radio, {}), label: "NestJS Project" })] }), (0, jsx_runtime_1.jsx)(material_1.FormLabel, { style: { paddingTop: 20 }, children: " Options " }), (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { label: "Keyword Parameter", style: { paddingTop: 5, paddingLeft: 15 }, control: (0, jsx_runtime_1.jsx)(material_1.Switch, { checked: keyword, onChange: () => setKeyword(!keyword) }) }), (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { label: "Mockup Simulator", style: { paddingTop: 5, paddingLeft: 15 }, control: (0, jsx_runtime_1.jsx)(material_1.Switch, { checked: simulate, onChange: () => setSimulate(!simulate) }) }), (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { label: "E2E Test Functions", style: { paddingLeft: 15 }, control: (0, jsx_runtime_1.jsx)(material_1.Switch, { checked: e2e, onChange: () => setE2e(!e2e) }) })] }), (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsx)(material_1.Button, { component: "a", fullWidth: true, variant: "contained", color: "info", size: "large", disabled: progress === true || document === null, onClick: () => generate(), children: progress ? "Generating..." : "Generate Editor" })] }));
70
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(NestiaEditorFileUploader_1.NestiaEditorFileUploader, { onChange: handleSwagger }), (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsxs)(material_1.FormControl, { fullWidth: true, style: { paddingLeft: 15 }, children: [(0, jsx_runtime_1.jsx)(material_1.TextField, { onChange: (e) => setName(e.target.value), defaultValue: name, label: "Package Name", variant: "outlined" }), (0, jsx_runtime_1.jsx)(material_1.FormLabel, { style: { paddingTop: 20 }, children: " Mode " }), (0, jsx_runtime_1.jsxs)(material_1.RadioGroup, { defaultValue: mode, onChange: (_e, value) => setMode(value), style: { paddingLeft: 15 }, children: [(0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { value: "sdk", control: (0, jsx_runtime_1.jsx)(material_1.Radio, {}), label: "Software Development Kit" }), (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { value: "nest", control: (0, jsx_runtime_1.jsx)(material_1.Radio, {}), label: "NestJS Project" })] }), (0, jsx_runtime_1.jsx)(material_1.FormLabel, { style: { paddingTop: 20 }, children: " Options " }), (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { label: "Keyword Parameter", style: { paddingTop: 5, paddingLeft: 15 }, control: (0, jsx_runtime_1.jsx)(material_1.Switch, { checked: keyword, onChange: () => setKeyword(!keyword) }) }), (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { label: "Mockup Simulator", style: { paddingTop: 5, paddingLeft: 15 }, control: (0, jsx_runtime_1.jsx)(material_1.Switch, { checked: simulate, onChange: () => setSimulate(!simulate) }) }), (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { label: "E2E Test Functions", style: { paddingLeft: 15 }, control: (0, jsx_runtime_1.jsx)(material_1.Switch, { checked: e2e, onChange: () => setE2e(!e2e) }) })] }), (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsx)(material_1.Button, { component: "a", fullWidth: true, variant: "contained", color: "info", size: "large", disabled: progress === true || document === null, onClick: () => generate(), children: progress ? "Generating..." : "Download Project" })] }));
78
71
  }
79
72
  //# sourceMappingURL=NestiaEditorUploader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaEditorUploader.js","sourceRoot":"","sources":["../src/NestiaEditorUploader.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NestiaEditorUploader.js","sourceRoot":"","sources":["../src/NestiaEditorUploader.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,129 @@
1
- export { NestiaEditorUploader } from './NestiaEditorUploader2.mjs';
2
- export { __exports as default } from './_virtual/NestiaEditorUploader.mjs';
3
- //# sourceMappingURL=NestiaEditorUploader.mjs.map
1
+ import { NestiaEditorArchiver } from "./internal/NestiaEditorArchiver.mjs";
2
+ import { NestiaEditorComposer } from "./internal/NestiaEditorComposer.mjs";
3
+ import { NestiaEditorFileUploader } from "./internal/NestiaEditorFileUploader.mjs";
4
+ import { Button, FormControl, FormControlLabel, FormLabel, Radio, RadioGroup, Switch, TextField } from "@mui/material";
5
+ import React from "react";
6
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
7
+ //#region src/NestiaEditorUploader.tsx
8
+ function NestiaEditorUploader(props) {
9
+ const [mode, setMode] = React.useState("sdk");
10
+ const [keyword, setKeyword] = React.useState(true);
11
+ const [simulate, setSimulate] = React.useState(true);
12
+ const [e2e, setE2e] = React.useState(true);
13
+ const [name, setName] = React.useState("@ORGINIZATION/PROJECT");
14
+ const [document, setDocument] = React.useState(null);
15
+ const [progress, setProgress] = React.useState(false);
16
+ const handleError = (error) => {
17
+ if (props.onError) props.onError(error);
18
+ else alert(error);
19
+ };
20
+ const handleSwagger = (document, error) => {
21
+ setDocument(document);
22
+ if (error !== null) handleError(error);
23
+ };
24
+ const generate = async () => {
25
+ if (document === null) return;
26
+ setProgress(true);
27
+ try {
28
+ const result = await NestiaEditorComposer[mode]({
29
+ document,
30
+ keyword,
31
+ e2e,
32
+ simulate,
33
+ package: name
34
+ });
35
+ if (result.success === true) NestiaEditorArchiver.download({
36
+ name: NestiaEditorArchiver.name(name),
37
+ files: result.data.files
38
+ });
39
+ else handleError(JSON.stringify(result.errors, null, 2));
40
+ } catch (exp) {
41
+ handleError(exp instanceof Error ? exp.message : "unknown error");
42
+ }
43
+ setProgress(false);
44
+ };
45
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
46
+ /* @__PURE__ */ jsx(NestiaEditorFileUploader, { onChange: handleSwagger }),
47
+ /* @__PURE__ */ jsx("br", {}),
48
+ /* @__PURE__ */ jsxs(FormControl, {
49
+ fullWidth: true,
50
+ style: { paddingLeft: 15 },
51
+ children: [
52
+ /* @__PURE__ */ jsx(TextField, {
53
+ onChange: (e) => setName(e.target.value),
54
+ defaultValue: name,
55
+ label: "Package Name",
56
+ variant: "outlined"
57
+ }),
58
+ /* @__PURE__ */ jsx(FormLabel, {
59
+ style: { paddingTop: 20 },
60
+ children: " Mode "
61
+ }),
62
+ /* @__PURE__ */ jsxs(RadioGroup, {
63
+ defaultValue: mode,
64
+ onChange: (_e, value) => setMode(value),
65
+ style: { paddingLeft: 15 },
66
+ children: [/* @__PURE__ */ jsx(FormControlLabel, {
67
+ value: "sdk",
68
+ control: /* @__PURE__ */ jsx(Radio, {}),
69
+ label: "Software Development Kit"
70
+ }), /* @__PURE__ */ jsx(FormControlLabel, {
71
+ value: "nest",
72
+ control: /* @__PURE__ */ jsx(Radio, {}),
73
+ label: "NestJS Project"
74
+ })]
75
+ }),
76
+ /* @__PURE__ */ jsx(FormLabel, {
77
+ style: { paddingTop: 20 },
78
+ children: " Options "
79
+ }),
80
+ /* @__PURE__ */ jsx(FormControlLabel, {
81
+ label: "Keyword Parameter",
82
+ style: {
83
+ paddingTop: 5,
84
+ paddingLeft: 15
85
+ },
86
+ control: /* @__PURE__ */ jsx(Switch, {
87
+ checked: keyword,
88
+ onChange: () => setKeyword(!keyword)
89
+ })
90
+ }),
91
+ /* @__PURE__ */ jsx(FormControlLabel, {
92
+ label: "Mockup Simulator",
93
+ style: {
94
+ paddingTop: 5,
95
+ paddingLeft: 15
96
+ },
97
+ control: /* @__PURE__ */ jsx(Switch, {
98
+ checked: simulate,
99
+ onChange: () => setSimulate(!simulate)
100
+ })
101
+ }),
102
+ /* @__PURE__ */ jsx(FormControlLabel, {
103
+ label: "E2E Test Functions",
104
+ style: { paddingLeft: 15 },
105
+ control: /* @__PURE__ */ jsx(Switch, {
106
+ checked: e2e,
107
+ onChange: () => setE2e(!e2e)
108
+ })
109
+ })
110
+ ]
111
+ }),
112
+ /* @__PURE__ */ jsx("br", {}),
113
+ /* @__PURE__ */ jsx("br", {}),
114
+ /* @__PURE__ */ jsx(Button, {
115
+ component: "a",
116
+ fullWidth: true,
117
+ variant: "contained",
118
+ color: "info",
119
+ size: "large",
120
+ disabled: progress === true || document === null,
121
+ onClick: () => generate(),
122
+ children: progress ? "Generating..." : "Download Project"
123
+ })
124
+ ] });
125
+ }
126
+ //#endregion
127
+ export { NestiaEditorUploader };
128
+
129
+ //# sourceMappingURL=NestiaEditorUploader.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaEditorUploader.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"NestiaEditorUploader.mjs","names":[],"sources":[],"mappings":""}
package/lib/index.mjs CHANGED
@@ -1,2 +1,4 @@
1
- export { default } from './index2.mjs';
2
- //# sourceMappingURL=index.mjs.map
1
+ import { NestiaEditorIframe } from "./NestiaEditorIframe.mjs";
2
+ import { NestiaEditorUploader } from "./NestiaEditorUploader.mjs";
3
+ import { NestiaEditorApplication } from "./NestiaEditorApplication.mjs";
4
+ export { NestiaEditorApplication, NestiaEditorIframe, NestiaEditorUploader };