@sockethub/server 5.0.0-alpha.4 → 5.0.0-alpha.6

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 (105) hide show
  1. package/README.md +54 -60
  2. package/bin/sockethub +4 -3
  3. package/package.json +42 -54
  4. package/res/socket.io.js +4908 -0
  5. package/res/sockethub-client.js +602 -0
  6. package/res/sockethub-client.min.js +19 -0
  7. package/sockethub.config.example.json +2 -3
  8. package/src/bootstrap/init.d.ts +16 -13
  9. package/src/bootstrap/init.test.ts +211 -0
  10. package/src/bootstrap/init.ts +152 -76
  11. package/src/bootstrap/load-platforms.ts +151 -0
  12. package/src/config.test.ts +27 -22
  13. package/src/config.ts +82 -86
  14. package/src/defaults.json +24 -16
  15. package/src/index.ts +61 -22
  16. package/src/janitor.test.ts +191 -169
  17. package/src/janitor.ts +141 -118
  18. package/src/listener.ts +148 -58
  19. package/src/middleware/create-activity-object.test.ts +28 -8
  20. package/src/middleware/create-activity-object.ts +16 -10
  21. package/src/middleware/expand-activity-stream.test.data.ts +331 -345
  22. package/src/middleware/expand-activity-stream.test.ts +65 -66
  23. package/src/middleware/expand-activity-stream.ts +26 -21
  24. package/src/middleware/store-credentials.test.ts +74 -60
  25. package/src/middleware/store-credentials.ts +14 -8
  26. package/src/middleware/validate.test.data.ts +240 -242
  27. package/src/middleware/validate.test.ts +39 -78
  28. package/src/middleware/validate.ts +62 -36
  29. package/src/middleware.test.ts +168 -138
  30. package/src/middleware.ts +57 -55
  31. package/src/platform-instance.test.ts +508 -214
  32. package/src/platform-instance.ts +324 -231
  33. package/src/platform.test.ts +375 -0
  34. package/src/platform.ts +306 -117
  35. package/src/process-manager.ts +75 -51
  36. package/src/routes.test.ts +43 -89
  37. package/src/routes.ts +40 -78
  38. package/src/sentry.test.ts +106 -0
  39. package/src/sentry.ts +19 -0
  40. package/src/sockethub.ts +190 -129
  41. package/src/util.ts +5 -0
  42. package/coverage/tmp/coverage-39338-1663949520416-0.json +0 -1
  43. package/dist/bootstrap/init.d.ts +0 -18
  44. package/dist/bootstrap/init.js +0 -64
  45. package/dist/bootstrap/init.js.map +0 -1
  46. package/dist/bootstrap/platforms.js +0 -75
  47. package/dist/config.d.ts +0 -12
  48. package/dist/config.js +0 -107
  49. package/dist/config.js.map +0 -1
  50. package/dist/defaults.json +0 -28
  51. package/dist/index.d.ts +0 -1
  52. package/dist/index.js +0 -29
  53. package/dist/index.js.map +0 -1
  54. package/dist/janitor.d.ts +0 -30
  55. package/dist/janitor.js +0 -120
  56. package/dist/janitor.js.map +0 -1
  57. package/dist/listener.d.ts +0 -31
  58. package/dist/listener.js +0 -94
  59. package/dist/listener.js.map +0 -1
  60. package/dist/middleware/create-activity-object.d.ts +0 -8
  61. package/dist/middleware/create-activity-object.js +0 -19
  62. package/dist/middleware/create-activity-object.js.map +0 -1
  63. package/dist/middleware/expand-activity-stream.d.ts +0 -3
  64. package/dist/middleware/expand-activity-stream.js +0 -36
  65. package/dist/middleware/expand-activity-stream.js.map +0 -1
  66. package/dist/middleware/expand-activity-stream.test.data.d.ts +0 -480
  67. package/dist/middleware/expand-activity-stream.test.data.js +0 -360
  68. package/dist/middleware/expand-activity-stream.test.data.js.map +0 -1
  69. package/dist/middleware/store-credentials.d.ts +0 -3
  70. package/dist/middleware/store-credentials.js +0 -9
  71. package/dist/middleware/store-credentials.js.map +0 -1
  72. package/dist/middleware/validate.d.ts +0 -2
  73. package/dist/middleware/validate.js +0 -56
  74. package/dist/middleware/validate.js.map +0 -1
  75. package/dist/middleware/validate.test.data.d.ts +0 -532
  76. package/dist/middleware/validate.test.data.js +0 -263
  77. package/dist/middleware/validate.test.data.js.map +0 -1
  78. package/dist/middleware.d.ts +0 -21
  79. package/dist/middleware.js +0 -56
  80. package/dist/middleware.js.map +0 -1
  81. package/dist/platform-instance.d.ts +0 -78
  82. package/dist/platform-instance.js +0 -226
  83. package/dist/platform-instance.js.map +0 -1
  84. package/dist/platform.d.ts +0 -6
  85. package/dist/platform.js +0 -176
  86. package/dist/platform.js.map +0 -1
  87. package/dist/process-manager.d.ts +0 -11
  88. package/dist/process-manager.js +0 -82
  89. package/dist/process-manager.js.map +0 -1
  90. package/dist/routes.d.ts +0 -13
  91. package/dist/routes.js +0 -83
  92. package/dist/routes.js.map +0 -1
  93. package/dist/sockethub.d.ts +0 -18
  94. package/dist/sockethub.js +0 -112
  95. package/dist/sockethub.js.map +0 -1
  96. package/src/bootstrap/platforms.js +0 -75
  97. package/test/init-suite.js +0 -41
  98. package/test/sockethub-suite.js +0 -25
  99. package/tsconfig.json +0 -18
  100. package/views/examples/dummy.ejs +0 -95
  101. package/views/examples/feeds.ejs +0 -90
  102. package/views/examples/irc.ejs +0 -239
  103. package/views/examples/shared.js +0 -72
  104. package/views/examples/xmpp.ejs +0 -217
  105. package/views/index.ejs +0 -17
@@ -1,217 +0,0 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <title>Sockethub Example XMPP Chat</title>
5
- <style>
6
- * { margin: 0; padding: 0; box-sizing: border-box; }
7
- body { font: 0.8em Helvetica, Arial; }
8
- h3 { color: #6B6767; font-size: 0.8em; margin-bottom: 1em; }
9
- form#chat { background: #000; padding: 0.3em; position: fixed; bottom: 0; width: 100%; }
10
- input { border: 0; padding: 5%; }
11
- button { width: 20%; background: rgb(130, 224, 255); border: none; padding: 5%; }
12
- button.invis { background-color: rgba(0, 0, 0, 0); color: rgba(0, 0, 0, 0);}
13
- button:hover { cursor: pointer; }
14
- .messageInput { width: 80%; }
15
- #messages { list-style-type: none; margin: 0; padding: 0; }
16
- #messages li { padding: 0.1em 1%; }
17
- #messages li:nth-child(odd) { background: #eee; }
18
- .modal { position: fixed; top: 15%; left: 5%; width: 90%;
19
- line-height: 1em; padding: 3% 0 3%;
20
- background-color: #f1c40f; text-align: center;
21
- z-index: 10; outline: 9999px solid rgba(0,0,0,0.5); }
22
- @media only screen and (max-width: 1050px) {
23
- body { font: 1em Helvetica, Arial; }
24
- h3 { color: #6B6767; font-size: 1em; margin-bottom: 1.5em; }
25
- input { border: 0; padding: 3%; width: 70%; font-size: 1em; }
26
- button { width: 20%; border: none; padding: 3%; font-size: 1em; }
27
- }
28
- @media only screen and (max-width: 5000px) {
29
- body { font: 0.9em Helvetica, Arial; }
30
- h3 { color: #6B6767; font-size: 1.2em; margin-bottom: 1.5em; }
31
- .modal input { border: 0; padding: 2%; width: 80%; font-size: 0.8em; }
32
- .modal button { width: 10%; border: none; padding: 2%; font-size: 0.8em; }
33
- input { padding: 1%; }
34
- button { padding: 1%; width: 10%; }
35
- .messageInput { width: 90%; }
36
- }
37
- </style>
38
- </head>
39
- <body>
40
- <div class="modal">
41
- <h3>Click `Join` to connect to the XMPP server.</h3>
42
- <form id="intro" action="">
43
- <input id="userAddress" autocomplete="off" value="username@jabber.org"><button class="invis" disabled>&nbsp;</button>
44
- <input id="password" type="password" autocomplete="off" value="password"><button class="invis" disabled>&nbsp;</button>
45
- <input id="resource" autocomplete="off" value="SockethubExample" disabled><button id="join">Join</button>
46
- </form>
47
- </div>
48
-
49
- <ul id="messages"></ul>
50
- <form id="chat" action="">
51
- <input id="m" autocomplete="off" class="messageInput" disabled><button id="send" disabled>Send</button>
52
- </form>
53
-
54
- <script src="<%= address %>jquery.js"></script>
55
- <script src="<%= address %>socket.io.js"></script>
56
- <script src="<%= address %>sockethub-client.js"></script>
57
- <script src="<%= address %>examples/shared.js"></script>
58
-
59
- <script>
60
- debug = function (msg, obj) { console.log(msg, obj); };
61
- let counter = 0;
62
- const examplesShared = new ExamplesShared();
63
- localStorage.debug = 'sockethub:*';
64
- let config = {
65
- type: 'credentials',
66
- userAddress: 'username@jabber.org',
67
- password: '123456',
68
- resource: 'Home'
69
- };
70
- let actorString = '';
71
-
72
- const sc = new SockethubClient(io('<%= address %>', { path: '/sockethub' }));
73
-
74
- // creates an ActivityStreams object for our actor (us)
75
- function __updateActor(username) {
76
- console.log('updating actor object for: ' + username);
77
- // our xmpp user info
78
- config.userAddress = username; // set global userAddress
79
- actorString = config.userAddress + '/' + config.resource;
80
- const asObject = {
81
- id: actorString,
82
- type: "person",
83
- name: new URL('http://' + username).username,
84
- url: "http://sockethub.org",
85
- image: {
86
- url: "http://example.org/image.jpg",
87
- mediaType: "image/jpeg",
88
- width: 250,
89
- height: 250
90
- }
91
- };
92
- console.log('creating activity stream object ', asObject);
93
- sc.ActivityStreams.Object.create(asObject);
94
- }
95
-
96
- function handleMessage(text) {
97
- return (msg) => {
98
- console.log(text);
99
- if (msg.error) {
100
- debug('error: ', msg);
101
- console.error(msg.error);
102
- } else if (msg['type'] === 'connect') {
103
- $('.modal').css('display', 'none');
104
- } else if (msg['type'] === 'join') {
105
- $('input#m').prop('disabled', false);
106
- $('button#send').prop('disabled', false);
107
- } else {
108
- examplesShared.processIncomingMessage(msg);
109
- }
110
- };
111
- }
112
- // handle incoming messages from the Sockethub server
113
- sc.socket.on('message', handleMessage("incoming message"));
114
-
115
- $('.actor').click(function (e) {
116
- e.preventDefault();
117
- console.log('e: ', e);
118
- });
119
-
120
- // handler for user input, emit messages to Sockethub server
121
- $('#chat').submit(function (e) {
122
- e.preventDefault();
123
- const input = $('#m').val();
124
- let [targetId, text_message] = input.split(':');
125
-
126
- if (!text_message) {
127
- text_message = targetId;
128
- targetId = undefined;
129
- }
130
-
131
- let target = {
132
- id: 'kosmos-random@kosmos.chat',
133
- type: 'room'
134
- }
135
- if (targetId) {
136
- target = {
137
- id: targetId,
138
- type: 'room'
139
- }
140
- }
141
-
142
- const msg = {
143
- type: 'send',
144
- context: 'xmpp',
145
- actor: actorString,
146
- object: {
147
- type: 'message',
148
- content: text_message
149
- },
150
- target: target
151
- };
152
-
153
- debug('sending message: ', msg);
154
- sc.socket.emit('message', msg, handleMessage('callback from sent message'));
155
- $('#m').val('');
156
- return false;
157
- });
158
-
159
- // handler for user input, emit messages to Sockethub server
160
- $('#join').click(function (e) {
161
- e.preventDefault();
162
- config.userAddress = $('#userAddress').val();
163
- config.password = $('#password').val();
164
- config.resource = $('#resource').val();
165
-
166
- __updateActor(config.userAddress);
167
-
168
- setTimeout(function () {
169
- // sending irc credentials to Sockethub server
170
- const credentials = {
171
- actor: actorString,
172
- type: 'credentials',
173
- context: 'xmpp',
174
- object: config
175
- };
176
- debug('sending credentials: ', credentials);
177
- sc.socket.emit('credentials', credentials, (err) => {
178
- if (err) {
179
- console.error('failed to create credentials: ', err);
180
- } else {
181
- console.log('completed credentials');
182
- }
183
- });
184
-
185
- const connectMsg = {
186
- type: 'connect',
187
- context: 'xmpp',
188
- actor: actorString,
189
- object: {
190
- type: 'message',
191
- content: `debug:${++counter}`
192
- }
193
- };
194
- debug('sending connect message: ', connectMsg);
195
- sc.socket.emit('message', connectMsg, handleMessage('callback from connect'));
196
-
197
- const joinMsg = {
198
- type: 'join',
199
- context: 'xmpp',
200
- actor: actorString,
201
- target: {
202
- type: 'room',
203
- id: 'kosmos-random@kosmos.chat'
204
- },
205
- object: {
206
- type: 'message',
207
- content: `debug:${counter}`
208
- }
209
- };
210
- debug('sending join message: ', joinMsg);
211
- sc.socket.emit('message', joinMsg, handleMessage('callback from join'));
212
- }, 100);
213
- return false;
214
- });
215
- </script>
216
- </body>
217
- </html>
package/views/index.ejs DELETED
@@ -1,17 +0,0 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <title>Sockethub</title>
5
- </head>
6
- <body>
7
- <h1>Welcome to Sockethub</h1>
8
- <div>
9
- <ul class="examples">
10
- <li class="example"><a href="/examples/dummy">Dummy Example</a></li>
11
- <li class="example"><a href="/examples/feeds">Atom/RSS Feeds Example</a></li>
12
- <li class="example"><a href="/examples/irc">IRC Example</a></li>
13
- <li class="example"><a href="/examples/xmpp">XMPP Example</a></li>
14
- </ul>
15
- </div>
16
- </body>
17
- </html>