vortez 5.0.0-dev.18 → 5.0.0-dev.19

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 (66) hide show
  1. package/.gitignore +9 -4
  2. package/README.md +681 -176
  3. package/build/Vortez.d.ts +1 -0
  4. package/build/Vortez.js +1 -0
  5. package/build/Vortez.js.map +1 -1
  6. package/build/server/Response.d.ts +1 -1
  7. package/build/server/Response.js +1 -1
  8. package/build/server/Response.js.map +1 -1
  9. package/build/server/Server.d.ts +4 -4
  10. package/build/server/Server.js +5 -5
  11. package/build/server/Server.js.map +1 -1
  12. package/build/server/ServerDebug.d.ts +10 -1
  13. package/build/server/ServerDebug.js +85 -17
  14. package/build/server/ServerDebug.js.map +1 -1
  15. package/build/server/config/Config.d.ts +274 -47
  16. package/build/server/config/Config.js +68 -47
  17. package/build/server/config/Config.js.map +1 -1
  18. package/build/server/config/{ConfigLoader.d.ts → Loader.d.ts} +4 -5
  19. package/build/server/config/{ConfigLoader.js → Loader.js} +7 -10
  20. package/build/server/config/Loader.js.map +1 -0
  21. package/build/server/router/Router.d.ts +87 -30
  22. package/build/server/router/Router.js +110 -48
  23. package/build/server/router/Router.js.map +1 -1
  24. package/build/server/router/algorithm/Algorithm.d.ts +39 -0
  25. package/build/server/router/algorithm/Algorithm.js +20 -0
  26. package/build/server/router/algorithm/Algorithm.js.map +1 -0
  27. package/build/server/router/algorithm/FIFO.d.ts +15 -0
  28. package/build/server/router/algorithm/FIFO.js +24 -0
  29. package/build/server/router/algorithm/FIFO.js.map +1 -0
  30. package/build/server/router/algorithm/Tree.d.ts +38 -0
  31. package/build/server/router/algorithm/Tree.js +126 -0
  32. package/build/server/router/algorithm/Tree.js.map +1 -0
  33. package/build/server/router/middleware/WsMiddleware.js +1 -1
  34. package/build/server/router/middleware/WsMiddleware.js.map +1 -1
  35. package/build/utilities/Flatten.d.ts +56 -0
  36. package/build/utilities/Flatten.js +59 -0
  37. package/build/utilities/Flatten.js.map +1 -0
  38. package/build/utilities/Utilities.d.ts +7 -58
  39. package/build/utilities/Utilities.js +8 -33
  40. package/build/utilities/Utilities.js.map +1 -1
  41. package/build/utilities/schema/Introspection.d.ts +24 -0
  42. package/build/utilities/schema/Introspection.js +87 -0
  43. package/build/utilities/schema/Introspection.js.map +1 -0
  44. package/build/utilities/schema/JSONSchema.d.ts +68 -0
  45. package/build/utilities/schema/JSONSchema.js +13 -0
  46. package/build/utilities/schema/JSONSchema.js.map +1 -0
  47. package/build/utilities/schema/Schema.d.ts +253 -0
  48. package/build/utilities/schema/Schema.js +241 -0
  49. package/build/utilities/schema/Schema.js.map +1 -0
  50. package/build/utilities/schema/SchemaError.d.ts +10 -0
  51. package/build/utilities/schema/SchemaError.js +13 -0
  52. package/build/utilities/schema/SchemaError.js.map +1 -0
  53. package/build/utilities/schema/Validator.d.ts +94 -0
  54. package/build/utilities/schema/Validator.js +246 -0
  55. package/build/utilities/schema/Validator.js.map +1 -0
  56. package/package.json +1 -1
  57. package/tests/config/config.js +233 -0
  58. package/tests/router.js +596 -0
  59. package/tests/schema/schema.js +368 -0
  60. package/tests/test.env +0 -0
  61. package/tests/test.js +3 -3
  62. package/build/server/config/ConfigLoader.js.map +0 -1
  63. package/build/server/config/ConfigValidator.d.ts +0 -71
  64. package/build/server/config/ConfigValidator.js +0 -131
  65. package/build/server/config/ConfigValidator.js.map +0 -1
  66. package/examples/in-docs.js +0 -96
@@ -1,96 +0,0 @@
1
- //@ts-check
2
- // en caso de haber instalado el modulo desde npm usar:
3
- // import Vortez from 'vortez';
4
- import Vortez from '../build/Vortez.js';
5
-
6
- const server = new Vortez(3000, undefined, {
7
- privKey: "",
8
- pubKey: "",
9
- port: 443
10
- });
11
-
12
- // | RULE PARAMS EXAMPLE |
13
- server.addAction('ALL', '/User/$UserID/Post/$PostID', (request, response) => {
14
- response.sendJson({
15
- url: request.url,
16
- ruleParams: request.ruleParams
17
- });
18
- /* Esto devolverá lo siguiente si la ruta fuera /User/111111/Post/222222
19
- {
20
- "Url": "/User/111111/Post/222222"
21
- "RuleParams": {
22
- "UserID": "111111",
23
- "PostID": "222222"
24
- }
25
- }
26
- */
27
- });
28
-
29
- // | AUTH EXEC EXAMPLE |
30
- server.addFile('/FileWA', 'changes.md', (Request) => {
31
- return Request.queryParams.has('Auth') && Request.queryParams.get('Auth') == 'AuthYes'
32
- });
33
-
34
- // | FOLDER RULE EXAMPLE |
35
- server.addFolder('/MyFolder', 'Test');
36
-
37
- // | FILE RULE EXAMPLE |
38
- server.addFile('/MyFile', 'changes.md');
39
-
40
- // | ACTION RULE EXAMPLE |
41
-
42
- server.addAction('GET', '/', (request, response) => {
43
- if (request.cookies.has('User_ID')) {
44
- response.send("El User_ID que estas usando es:" + request.cookies.get('User_ID'));
45
- } else {
46
- response.sendFile('./ErrorUsuario.html');
47
- }
48
- }
49
- );
50
-
51
- // | WBB SOCKET RULE EXAMPLE |
52
-
53
- const Conexiones = new Set();
54
- server.addWebSocket('/Test/WS-Chat', (request, socket) => {
55
- console.log('[WS] CM: Conexión nueva')
56
- Conexiones.forEach((Usuario) => Usuario.Send("Un usuario se conecto"));
57
- Conexiones.add(socket);
58
- socket.on('finish', () => Conexiones.delete(socket));
59
- socket.on('error', (error) => console.log('[WS-Error]:', error));
60
- socket.on('message', (data, info) => {
61
- //console.log(Info.OPCode);
62
- if (info.opCode == 1) {
63
- console.log('[WS] MSS:', data.toString());
64
- Conexiones.forEach((Usuario) => {
65
- if (Usuario !== socket) Usuario.Send(data.toString());
66
- });
67
- } else if (info.opCode == 8) {
68
- Conexiones.forEach((Usuario) => Usuario.Send("Un usuario se desconecto"));
69
- }
70
- });
71
- });
72
-
73
- // | ADD RULE METHOD EXAMPLE |
74
- server.addRules(
75
- /*
76
- este constructor acepta 5 parámetros para crearse correctamente:
77
- Tipo, Método, UrlRule, Content, AuthExec.
78
- AuthExec es opcional.
79
- */
80
- new Vortez.Rule('Folder', 'GET', '/MyFolder2/', 'Test/', () => true),
81
- new Vortez.Rule('File', 'GET', '/MyFile2/*', 'changes.md', () => true),
82
- new Vortez.Rule('Action', 'GET', '/2', (request, response) => {
83
- if (request.cookies.has('User_ID')) {
84
- response.send("El User_ID que estas usando es:" + request.cookies.get('User_ID'));
85
- } else {
86
- response.sendFile('./ErrorUsuario.html');
87
- }
88
- }),
89
- new Vortez.Rule('Action', 'GET', '/2', (request, response) => {
90
- if (request.cookies.has('User_ID')) {
91
- response.send("El User_ID que estas usando es:" + request.cookies.get('User_ID'));
92
- } else {
93
- response.sendFile('./ErrorUsuario.html');
94
- }
95
- })
96
- );