testeranto 0.75.0 → 0.79.4

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 (138) hide show
  1. package/README.md +25 -24
  2. package/TaskMan.Dockerfile +23 -0
  3. package/TaskMan1.Dockerfile +23 -0
  4. package/devBot.dockerfile +12 -0
  5. package/dist/TaskMan.Dockerfile +23 -0
  6. package/dist/common/Node.js +1 -0
  7. package/dist/common/PM/index.js +0 -64
  8. package/dist/common/PM/main.js +278 -7
  9. package/dist/common/PM/node.js +4 -0
  10. package/dist/common/PM/web.js +3 -0
  11. package/dist/common/Project.js +6 -2
  12. package/dist/common/Puppeteer.js +12 -17
  13. package/dist/common/Reporter.js +1 -8
  14. package/dist/common/SubPackages/react-dom/component/web.js +5 -25
  15. package/dist/common/SubPackages/react-dom/jsx/web.js +80 -55
  16. package/dist/common/SubPackages/react-test-renderer/component/index.js +0 -86
  17. package/dist/common/SubPackages/react-test-renderer/component/interface.js +68 -0
  18. package/dist/common/SubPackages/react-test-renderer/component/node.js +2 -2
  19. package/dist/common/SubPackages/react-test-renderer/component/web.js +2 -2
  20. package/dist/common/TaskManBackEnd.js +174 -0
  21. package/dist/common/Types.js +0 -2
  22. package/dist/common/esbuildConfigs/index.js +1 -0
  23. package/dist/common/esbuildConfigs/inputFilesPlugin.js +49 -0
  24. package/dist/common/esbuildConfigs/node.js +3 -1
  25. package/dist/common/esbuildConfigs/web.js +3 -1
  26. package/dist/common/lib/abstractBase.js +222 -17
  27. package/dist/common/lib/basebuilder.js +4 -38
  28. package/dist/common/lib/classBuilder.js +1 -3
  29. package/dist/common/lib/core.js +3 -5
  30. package/dist/common/mongooseSchemas.js +56 -0
  31. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  32. package/dist/common/utils.js +16 -0
  33. package/dist/module/ExampleTab.js +112 -0
  34. package/dist/module/Node.js +1 -0
  35. package/dist/module/PM/index.js +0 -64
  36. package/dist/module/PM/main.js +278 -7
  37. package/dist/module/PM/node.js +4 -0
  38. package/dist/module/PM/web.js +3 -0
  39. package/dist/module/Project.js +6 -2
  40. package/dist/module/Puppeteer.js +12 -17
  41. package/dist/module/Reporter.js +1 -8
  42. package/dist/module/SubPackages/react-dom/component/web.js +5 -25
  43. package/dist/module/SubPackages/react-dom/jsx/web.js +80 -55
  44. package/dist/module/SubPackages/react-test-renderer/component/index.js +1 -59
  45. package/dist/module/SubPackages/react-test-renderer/component/interface.js +39 -0
  46. package/dist/module/SubPackages/react-test-renderer/component/node.js +1 -1
  47. package/dist/module/SubPackages/react-test-renderer/component/web.js +1 -1
  48. package/dist/module/TaskManBackEnd.js +169 -0
  49. package/dist/module/TaskManFrontEnd.js +600 -0
  50. package/dist/module/Types.js +0 -2
  51. package/dist/module/esbuildConfigs/index.js +1 -0
  52. package/dist/module/esbuildConfigs/inputFilesPlugin.js +44 -0
  53. package/dist/module/esbuildConfigs/node.js +3 -1
  54. package/dist/module/esbuildConfigs/web.js +3 -1
  55. package/dist/module/lib/abstractBase.js +222 -17
  56. package/dist/module/lib/basebuilder.js +4 -38
  57. package/dist/module/lib/classBuilder.js +1 -3
  58. package/dist/module/lib/core.js +3 -5
  59. package/dist/module/mongooseSchemas.js +50 -0
  60. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  61. package/dist/module/utils.js +9 -0
  62. package/dist/prebuild/Report.js +117 -36
  63. package/dist/prebuild/TaskManBackEnd.mjs +180 -0
  64. package/dist/prebuild/TaskManFrontEnd.css +12301 -0
  65. package/dist/prebuild/TaskManFrontEnd.js +81737 -0
  66. package/dist/types/Node.d.ts +1 -1
  67. package/dist/types/PM/index.d.ts +2 -1
  68. package/dist/types/PM/main.d.ts +6 -3
  69. package/dist/types/PM/node.d.ts +2 -0
  70. package/dist/types/PM/web.d.ts +1 -0
  71. package/dist/types/SubPackages/puppeteer.d.ts +1 -1
  72. package/dist/types/SubPackages/react/component/node.d.ts +1 -1
  73. package/dist/types/SubPackages/react/component/web.d.ts +1 -1
  74. package/dist/types/SubPackages/react/jsx/node.d.ts +2 -2
  75. package/dist/types/SubPackages/react/jsx/web.d.ts +2 -2
  76. package/dist/types/SubPackages/react-dom/component/node.d.ts +2 -2
  77. package/dist/types/SubPackages/react-dom/component/web.d.ts +8 -2
  78. package/dist/types/SubPackages/react-dom/jsx/node.d.ts +2 -2
  79. package/dist/types/SubPackages/react-dom/jsx/web.d.ts +2 -2
  80. package/dist/types/SubPackages/react-test-renderer/MemoExoticComponent/node.d.ts +2 -2
  81. package/dist/types/SubPackages/react-test-renderer/component/index.d.ts +0 -7
  82. package/dist/types/SubPackages/react-test-renderer/component/interface.d.ts +9 -0
  83. package/dist/types/SubPackages/react-test-renderer/component/node.d.ts +1 -2
  84. package/dist/types/SubPackages/react-test-renderer/component/web.d.ts +1 -2
  85. package/dist/types/SubPackages/react-test-renderer/fc/node.d.ts +1 -1
  86. package/dist/types/SubPackages/react-test-renderer/fc/web.d.ts +1 -1
  87. package/dist/types/SubPackages/react-test-renderer/jsx/node.d.ts +1 -2
  88. package/dist/types/SubPackages/react-test-renderer/jsx/web.d.ts +1 -2
  89. package/dist/types/SubPackages/react-test-renderer/jsx-promised/node.d.ts +1 -2
  90. package/dist/types/SubPackages/react-test-renderer/jsx-promised/web.d.ts +1 -2
  91. package/dist/types/TaskManBackEnd.d.ts +1 -0
  92. package/dist/types/Types.d.ts +19 -19
  93. package/dist/types/Web.d.ts +1 -1
  94. package/dist/types/esbuildConfigs/inputFilesPlugin.d.ts +5 -0
  95. package/dist/types/lib/abstractBase.d.ts +8 -8
  96. package/dist/types/lib/basebuilder.d.ts +1 -1
  97. package/dist/types/lib/classBuilder.d.ts +1 -1
  98. package/dist/types/lib/core.d.ts +1 -1
  99. package/dist/types/lib/index.d.ts +5 -5
  100. package/dist/types/lib/types.d.ts +15 -13
  101. package/dist/types/mongooseSchemas.d.ts +124 -0
  102. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  103. package/dist/types/utils.d.ts +2 -0
  104. package/docker-compose-dev.yml +9 -0
  105. package/docker-compose-prod.yml +18 -0
  106. package/package.json +20 -7
  107. package/src/ExampleTab.tsx +219 -0
  108. package/src/Node.ts +31 -2
  109. package/src/PM/index.ts +6 -83
  110. package/src/PM/main.ts +389 -11
  111. package/src/PM/node.ts +6 -0
  112. package/src/PM/web.ts +4 -0
  113. package/src/Project.ts +10 -2
  114. package/src/Puppeteer.ts +16 -17
  115. package/src/Report.tsx +17 -40
  116. package/src/Reporter.ts +1 -9
  117. package/src/SubPackages/react-dom/component/web.ts +10 -30
  118. package/src/SubPackages/react-dom/jsx/web.ts +111 -74
  119. package/src/SubPackages/react-test-renderer/component/index.ts +0 -66
  120. package/src/SubPackages/react-test-renderer/component/interface.ts +48 -0
  121. package/src/SubPackages/react-test-renderer/component/node.ts +2 -1
  122. package/src/SubPackages/react-test-renderer/component/web.ts +2 -1
  123. package/src/TaskManBackEnd.ts +218 -0
  124. package/src/TaskManFrontEnd.tsx +1222 -0
  125. package/src/Types.ts +136 -28
  126. package/src/Web.ts +32 -2
  127. package/src/esbuildConfigs/index.ts +1 -0
  128. package/src/esbuildConfigs/inputFilesPlugin.ts +65 -0
  129. package/src/esbuildConfigs/node.ts +3 -1
  130. package/src/esbuildConfigs/web.ts +4 -0
  131. package/src/lib/abstractBase.ts +337 -34
  132. package/src/lib/basebuilder.ts +17 -52
  133. package/src/lib/classBuilder.ts +14 -2
  134. package/src/lib/core.ts +18 -7
  135. package/src/lib/index.ts +115 -7
  136. package/src/lib/types.ts +143 -35
  137. package/src/mongooseSchemas.ts +105 -0
  138. package/src/utils.ts +15 -0
@@ -0,0 +1,218 @@
1
+ import express from "express";
2
+ import { MongoClient } from "mongodb";
3
+ import mongoose from "mongoose";
4
+ import path from "path";
5
+ import fs from "fs";
6
+ import {
7
+ ganttSchema,
8
+ IKanban,
9
+ IUser,
10
+ kanbanSchema,
11
+ userSchema,
12
+ featuresSchema,
13
+ IGantt,
14
+ RoomSchema,
15
+ HuddleSchema,
16
+ IChatChannel,
17
+ channelsFeature,
18
+ chatCatMessageSchema,
19
+ } from "./mongooseSchemas";
20
+
21
+ // export const chatChannel = new mongoose.Schema<IChatChannel>({
22
+ // // name: { type: String, required: true },
23
+ // users: [
24
+ // {
25
+ // type: mongoose.Schema.Types.ObjectId,
26
+ // ref: "User",
27
+ // required: true,
28
+ // },
29
+ // ],
30
+ // });
31
+
32
+ const app = express();
33
+ const port = 3000;
34
+
35
+ function findTextFiles(dir: string, fileList: string[] = []) {
36
+ const files = fs.readdirSync(dir);
37
+
38
+ for (const file of files) {
39
+ const filePath = path.join(dir, file);
40
+ const fileStat = fs.statSync(filePath);
41
+
42
+ if (fileStat.isDirectory() && file !== "node_modules") {
43
+ findTextFiles(filePath, fileList); // Recursive call for subdirectories
44
+ } else if (path.extname(file) === ".txt") {
45
+ fileList.push(filePath);
46
+ } else if (path.extname(file) === ".md") {
47
+ fileList.push(filePath);
48
+ }
49
+ }
50
+ return fileList;
51
+ }
52
+
53
+ function listToTree(fileList) {
54
+ const root: { name: string; children: any[] } = {
55
+ name: "root",
56
+ children: [],
57
+ };
58
+ for (const path of fileList) {
59
+ const parts = path.split("/");
60
+ let current = root;
61
+ for (let i = 0; i < parts.length; i++) {
62
+ const part = parts[i];
63
+ if (!part) continue; // Skip empty parts (e.g., from leading '/')
64
+ let child = current.children.find((c) => c.name === part);
65
+ if (!child) {
66
+ child = { name: part, children: [] };
67
+ current.children.push(child);
68
+ }
69
+ current = child;
70
+ }
71
+ }
72
+ return root.children;
73
+ }
74
+
75
+ new MongoClient(`mongodb://${process.env.MONGO_HOST || "127.0.0.1"}:27017`)
76
+ .connect()
77
+ .then(async (conn) => {
78
+ const db = conn.db("taskman");
79
+ await mongoose.connect(
80
+ `mongodb://${process.env.MONGO_HOST || "127.0.0.1"}:27017/taskman`
81
+ );
82
+
83
+ const usersModel = mongoose.model<IUser>("User", userSchema);
84
+ const kanbanModel = mongoose.model<IKanban>("Kanban", kanbanSchema);
85
+ const ganttModel = mongoose.model<IGantt>("Gantt", ganttSchema);
86
+ const featuresModel = mongoose.model<any>("Features", featuresSchema);
87
+ // const roomsModel = mongoose.model<any>("Rooms", RoomSchema);
88
+ // const huddleModdle = mongoose.model<any>("Huddles", HuddleSchema);
89
+
90
+ const MessagesModel = mongoose.model<any>("Messages", chatCatMessageSchema);
91
+
92
+ const ChatChannel = mongoose.model("ChatChannel", channelsFeature);
93
+ const huddleModdle = ChatChannel.discriminator("Huddle", HuddleSchema);
94
+ const roomsModel = ChatChannel.discriminator("Room", RoomSchema);
95
+
96
+ app.get("/TaskManFrontend.js", (req, res) => {
97
+ res.sendFile(`${process.cwd()}/dist/prebuild/TaskManFrontEnd.js`);
98
+ });
99
+
100
+ app.get("/TaskManFrontEnd.css", (req, res) => {
101
+ res.sendFile(`${process.cwd()}/dist/prebuild/TaskManFrontEnd.css`);
102
+ });
103
+
104
+ // app.get(`/preMergeCheck`, async (req, res) => {
105
+ // const commit = req.params["commit"];
106
+ // // res.json(await keyedModels[key].find({}));
107
+ // });
108
+
109
+ // app.get("/TaskManFrontend.js", (req, res) => {
110
+ // res.sendFile(
111
+ // `${process.cwd()}/node_modules/testeranto/dist/prebuild/TaskManFrontEnd.js`
112
+ // );
113
+ // });
114
+
115
+ // app.get("/TaskManFrontEnd.css", (req, res) => {
116
+ // res.sendFile(
117
+ // `${process.cwd()}/node_modules/testeranto/dist/prebuild/TaskManFrontEnd.css`
118
+ // );
119
+ // });
120
+
121
+ app.get("/testeranto.json", (req, res) => {
122
+ res.sendFile(`${process.cwd()}/docs/testeranto.json`);
123
+ });
124
+
125
+ app.get("/", (req, res) => {
126
+ res.send(`<!DOCTYPE html>
127
+ <html lang="en">
128
+
129
+ <head>
130
+ <meta name="description" content="Webpage description goes here" />
131
+ <meta charset="utf-8" />
132
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
133
+ <meta name="author" content="" />
134
+
135
+ <title>TaskMan</title>
136
+
137
+ <link rel="stylesheet" href="/TaskManFrontEnd.css" />
138
+ <script type="module" src="/TaskManFrontEnd.js"></script>
139
+ </head>
140
+
141
+ <body><div id="root">react is loading</div></body>
142
+
143
+ </html>`);
144
+ });
145
+
146
+ app.listen(port, () => {
147
+ console.log(`Example app listening on port ${port}`);
148
+ });
149
+
150
+ ///////////////////////////////////////////////
151
+
152
+ const keyedModels = {
153
+ users: usersModel,
154
+ kanbans: kanbanModel,
155
+ features: featuresModel,
156
+ gantts: ganttModel,
157
+ rooms: roomsModel,
158
+ huddles: huddleModdle,
159
+ messages: MessagesModel,
160
+ };
161
+
162
+ Object.keys(keyedModels).forEach((key) => {
163
+ app.get(`/${key}.json`, async (req, res) => {
164
+ console.log("GET", key, keyedModels[key]);
165
+ res.json(await keyedModels[key].find({}));
166
+ });
167
+
168
+ app.get(`/${key}/:id.json`, async (req, res) => {
169
+ res.json(
170
+ await keyedModels[key]
171
+ .find({ id: { $eq: req.params["id"] } })
172
+ .toArray()
173
+ );
174
+ });
175
+
176
+ app.post(`/${key}/:id.json`, async (req, res) => {
177
+ res.json(
178
+ await keyedModels[key]
179
+ .find({ id: { $eq: req.params["id"] } })
180
+ .toArray()
181
+ );
182
+ });
183
+
184
+ app.post(`/${key}.json`, async (req, res) => {
185
+ res.json(
186
+ await keyedModels[key]
187
+ .find({ id: { $eq: req.params["id"] } })
188
+ .toArray()
189
+ );
190
+ });
191
+ });
192
+
193
+ app.use("/docs", express.static(path.join(process.cwd(), "docs")));
194
+
195
+ app.get("/docGal/fs.json", (req, res) => {
196
+ const directoryPath = "./"; // Replace with the desired directory path
197
+ // const textFiles = findTextFiles(directoryPath);
198
+ res.json(listToTree(findTextFiles(directoryPath)));
199
+ // res.send(`<!DOCTYPE html>
200
+ // <html lang="en">
201
+
202
+ // <head>
203
+ // <meta name="description" content="Webpage description goes here" />
204
+ // <meta charset="utf-8" />
205
+ // <meta name="viewport" content="width=device-width, initial-scale=1" />
206
+ // <meta name="author" content="" />
207
+
208
+ // <title>TaskMan</title>
209
+
210
+ // <link rel="stylesheet" href="/TaskManFrontEnd.css" />
211
+ // <script type="module" src="/TaskManFrontEnd.js"></script>
212
+ // </head>
213
+
214
+ // <body><div id="root">react is loading</div></body>
215
+
216
+ // </html>`);
217
+ });
218
+ });