@bsb/base 9.0.1 → 9.0.3

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 (56) hide show
  1. package/README.md +5 -8
  2. package/lib/schemas/config-default.plugin.json +1 -1
  3. package/lib/schemas/events-default.plugin.json +1 -1
  4. package/lib/schemas/observable-default.plugin.json +1 -1
  5. package/lib/serviceBase/plugins.js +10 -20
  6. package/lib/serviceBase/plugins.js.map +1 -1
  7. package/lib/tests/mocks.d.ts +37 -0
  8. package/lib/tests/mocks.js +164 -0
  9. package/lib/tests/mocks.js.map +1 -0
  10. package/lib/tests/sb/plugins/events/broadcast.d.ts +30 -0
  11. package/lib/tests/sb/plugins/events/broadcast.js +357 -0
  12. package/lib/tests/sb/plugins/events/broadcast.js.map +1 -0
  13. package/lib/tests/sb/plugins/events/emit.d.ts +30 -0
  14. package/lib/tests/sb/plugins/events/emit.js +353 -0
  15. package/lib/tests/sb/plugins/events/emit.js.map +1 -0
  16. package/lib/tests/sb/plugins/events/emitAndReturn.d.ts +30 -0
  17. package/lib/tests/sb/plugins/events/emitAndReturn.js +382 -0
  18. package/lib/tests/sb/plugins/events/emitAndReturn.js.map +1 -0
  19. package/lib/{plugins/service-default1/client.d.ts → tests/sb/plugins/events/emitStreamAndReceiveStream.d.ts} +4 -16
  20. package/lib/tests/sb/plugins/events/emitStreamAndReceiveStream.js +298 -0
  21. package/lib/tests/sb/plugins/events/emitStreamAndReceiveStream.js.map +1 -0
  22. package/lib/tests/sb/plugins/events/index.d.ts +28 -0
  23. package/lib/tests/sb/plugins/events/index.js +69 -0
  24. package/lib/tests/sb/plugins/events/index.js.map +1 -0
  25. package/lib/tests/trace.d.ts +41 -0
  26. package/lib/tests/trace.js +85 -0
  27. package/lib/tests/trace.js.map +1 -0
  28. package/lib/tests.d.ts +27 -0
  29. package/lib/{plugins/service-default4/index.js → tests.js} +16 -35
  30. package/lib/tests.js.map +1 -0
  31. package/package.json +92 -91
  32. package/lib/plugins/service-benchmarkify/index.d.ts +0 -312
  33. package/lib/plugins/service-benchmarkify/index.js +0 -138
  34. package/lib/plugins/service-benchmarkify/index.js.map +0 -1
  35. package/lib/plugins/service-default0/index.d.ts +0 -287
  36. package/lib/plugins/service-default0/index.js +0 -118
  37. package/lib/plugins/service-default0/index.js.map +0 -1
  38. package/lib/plugins/service-default1/client.js +0 -70
  39. package/lib/plugins/service-default1/client.js.map +0 -1
  40. package/lib/plugins/service-default1/index.d.ts +0 -304
  41. package/lib/plugins/service-default1/index.js +0 -179
  42. package/lib/plugins/service-default1/index.js.map +0 -1
  43. package/lib/plugins/service-default2/index.d.ts +0 -359
  44. package/lib/plugins/service-default2/index.js +0 -137
  45. package/lib/plugins/service-default2/index.js.map +0 -1
  46. package/lib/plugins/service-default3/index.d.ts +0 -119
  47. package/lib/plugins/service-default3/index.js +0 -88
  48. package/lib/plugins/service-default3/index.js.map +0 -1
  49. package/lib/plugins/service-default4/index.d.ts +0 -81
  50. package/lib/plugins/service-default4/index.js.map +0 -1
  51. package/lib/schemas/service-benchmarkify.json +0 -229
  52. package/lib/schemas/service-default0.json +0 -216
  53. package/lib/schemas/service-default1.json +0 -242
  54. package/lib/schemas/service-default2.json +0 -268
  55. package/lib/schemas/service-default3.json +0 -65
  56. package/lib/schemas/service-default4.json +0 -33
@@ -1,242 +0,0 @@
1
- {
2
- "pluginName": "service-default1",
3
- "version": "1.0.0",
4
- "events": {
5
- "data.processed": {
6
- "type": "fire-and-forget",
7
- "category": "emitEvents",
8
- "description": "Emitted when data processing is complete",
9
- "inputSchema": {
10
- "description": "Data processing result",
11
- "type": "object",
12
- "properties": {
13
- "itemId": {
14
- "description": "Processed item ID",
15
- "type": "string"
16
- },
17
- "result": {
18
- "description": "Processing result",
19
- "oneOf": []
20
- },
21
- "processingTime": {
22
- "description": "Processing time in milliseconds",
23
- "type": "number",
24
- "format": "double"
25
- }
26
- },
27
- "required": [
28
- "itemId",
29
- "result",
30
- "processingTime"
31
- ]
32
- },
33
- "outputSchema": null
34
- },
35
- "data.received": {
36
- "type": "fire-and-forget",
37
- "category": "onEvents",
38
- "description": "Handle incoming data for processing",
39
- "inputSchema": {
40
- "description": "Received data parameters",
41
- "type": "object",
42
- "properties": {
43
- "itemId": {
44
- "description": "Received item ID",
45
- "type": "string"
46
- },
47
- "data": {
48
- "description": "Data payload",
49
- "oneOf": []
50
- },
51
- "source": {
52
- "description": "Data source",
53
- "type": "string"
54
- }
55
- },
56
- "required": [
57
- "itemId",
58
- "data",
59
- "source"
60
- ]
61
- },
62
- "outputSchema": null
63
- },
64
- "calculation.request": {
65
- "type": "returnable",
66
- "category": "emitReturnableEvents",
67
- "description": "Request calculation from external service",
68
- "inputSchema": {
69
- "description": "Calculation request parameters",
70
- "type": "object",
71
- "properties": {
72
- "operation": {
73
- "description": "Calculation operation",
74
- "type": "string",
75
- "enum": [
76
- "add",
77
- "subtract",
78
- "multiply",
79
- "divide"
80
- ]
81
- },
82
- "operands": {
83
- "description": "List of operands",
84
- "type": "array",
85
- "items": {
86
- "description": "Operand",
87
- "type": "number",
88
- "format": "double"
89
- },
90
- "minItems": 2
91
- }
92
- },
93
- "required": [
94
- "operation",
95
- "operands"
96
- ]
97
- },
98
- "outputSchema": {
99
- "description": "Calculation result",
100
- "type": "number",
101
- "format": "double"
102
- }
103
- },
104
- "text.transform": {
105
- "type": "returnable",
106
- "category": "onReturnableEvents",
107
- "description": "Transform text according to specified operation",
108
- "inputSchema": {
109
- "description": "Text transformation parameters",
110
- "type": "object",
111
- "properties": {
112
- "text": {
113
- "description": "Text to transform",
114
- "type": "string"
115
- },
116
- "transformation": {
117
- "description": "Transformation type",
118
- "type": "string",
119
- "enum": [
120
- "uppercase",
121
- "lowercase",
122
- "reverse",
123
- "capitalize"
124
- ]
125
- }
126
- },
127
- "required": [
128
- "text",
129
- "transformation"
130
- ]
131
- },
132
- "outputSchema": {
133
- "description": "Transformed text",
134
- "type": "string"
135
- }
136
- },
137
- "calculate": {
138
- "type": "returnable",
139
- "category": "onReturnableEvents",
140
- "description": "Calculate with two numbers",
141
- "inputSchema": {
142
- "description": "Calculation parameters",
143
- "type": "object",
144
- "properties": {
145
- "a": {
146
- "description": "First number",
147
- "type": "number",
148
- "format": "double"
149
- },
150
- "b": {
151
- "description": "Second number",
152
- "type": "number",
153
- "format": "double"
154
- }
155
- },
156
- "required": [
157
- "a",
158
- "b"
159
- ]
160
- },
161
- "outputSchema": {
162
- "description": "Calculation result",
163
- "type": "number",
164
- "format": "double"
165
- }
166
- },
167
- "service.status": {
168
- "type": "broadcast",
169
- "category": "emitBroadcast",
170
- "description": "Broadcast service status updates",
171
- "inputSchema": {
172
- "description": "Service status parameters",
173
- "type": "object",
174
- "properties": {
175
- "status": {
176
- "description": "Service status",
177
- "type": "string",
178
- "enum": [
179
- "starting",
180
- "ready",
181
- "busy",
182
- "stopping"
183
- ]
184
- },
185
- "timestamp": {
186
- "description": "Status timestamp",
187
- "type": "string",
188
- "format": "datetime"
189
- },
190
- "details": {
191
- "description": "Status details",
192
- "type": "string"
193
- }
194
- },
195
- "required": [
196
- "status",
197
- "timestamp"
198
- ]
199
- },
200
- "outputSchema": null
201
- },
202
- "config.updated": {
203
- "type": "broadcast",
204
- "category": "onBroadcast",
205
- "description": "Listen for configuration update broadcasts",
206
- "inputSchema": {
207
- "description": "Config update parameters",
208
- "type": "object",
209
- "properties": {
210
- "section": {
211
- "description": "Configuration section",
212
- "type": "string"
213
- },
214
- "changes": {
215
- "description": "Configuration changes",
216
- "oneOf": [
217
- {
218
- "description": "Setting value",
219
- "oneOf": []
220
- }
221
- ]
222
- },
223
- "version": {
224
- "description": "Configuration version",
225
- "type": "string"
226
- }
227
- },
228
- "required": [
229
- "section",
230
- "changes",
231
- "version"
232
- ]
233
- },
234
- "outputSchema": null
235
- }
236
- },
237
- "pluginType": "service",
238
- "configSchema": {
239
- "$schema": "https://json-schema.org/draft/2020-12/schema",
240
- "type": "null"
241
- }
242
- }
@@ -1,268 +0,0 @@
1
- {
2
- "pluginName": "service-default2",
3
- "version": "1.0.0",
4
- "events": {
5
- "task.completed": {
6
- "type": "fire-and-forget",
7
- "category": "emitEvents",
8
- "description": "Emitted when a task is completed",
9
- "inputSchema": {
10
- "description": "Task completion parameters",
11
- "type": "object",
12
- "properties": {
13
- "taskId": {
14
- "description": "Task identifier",
15
- "type": "string"
16
- },
17
- "duration": {
18
- "description": "Task duration in milliseconds",
19
- "type": "number",
20
- "format": "double"
21
- },
22
- "success": {
23
- "description": "Whether the task completed successfully",
24
- "type": "boolean"
25
- }
26
- },
27
- "required": [
28
- "taskId",
29
- "duration",
30
- "success"
31
- ]
32
- },
33
- "outputSchema": null
34
- },
35
- "task.assigned": {
36
- "type": "fire-and-forget",
37
- "category": "onEvents",
38
- "description": "Handle new task assignments",
39
- "inputSchema": {
40
- "description": "Task assignment parameters",
41
- "type": "object",
42
- "properties": {
43
- "taskId": {
44
- "description": "Task identifier",
45
- "type": "string"
46
- },
47
- "type": {
48
- "description": "Task type",
49
- "type": "string"
50
- },
51
- "priority": {
52
- "description": "Task priority level",
53
- "type": "string",
54
- "enum": [
55
- "low",
56
- "medium",
57
- "high",
58
- "urgent"
59
- ]
60
- }
61
- },
62
- "required": [
63
- "taskId",
64
- "type",
65
- "priority"
66
- ]
67
- },
68
- "outputSchema": null
69
- },
70
- "resource.request": {
71
- "type": "returnable",
72
- "category": "emitReturnableEvents",
73
- "description": "Request resource allocation",
74
- "inputSchema": {
75
- "description": "Resource request parameters",
76
- "type": "object",
77
- "properties": {
78
- "resourceType": {
79
- "description": "Type of resource requested",
80
- "type": "string"
81
- },
82
- "amount": {
83
- "description": "Amount of resources needed",
84
- "type": "number",
85
- "format": "double"
86
- },
87
- "timeout": {
88
- "description": "Request timeout in milliseconds",
89
- "type": "number",
90
- "format": "double"
91
- }
92
- },
93
- "required": [
94
- "resourceType",
95
- "amount"
96
- ]
97
- },
98
- "outputSchema": {
99
- "description": "Resource allocation response",
100
- "type": "object",
101
- "properties": {
102
- "allocated": {
103
- "description": "Whether resources were allocated",
104
- "type": "boolean"
105
- },
106
- "resourceId": {
107
- "description": "Allocated resource identifier",
108
- "type": "string"
109
- },
110
- "waitTime": {
111
- "description": "Wait time in milliseconds",
112
- "type": "number",
113
- "format": "double"
114
- }
115
- },
116
- "required": [
117
- "allocated"
118
- ]
119
- }
120
- },
121
- "calculate": {
122
- "type": "returnable",
123
- "category": "onReturnableEvents",
124
- "description": "Calculate with two numbers",
125
- "inputSchema": {
126
- "description": "Calculate input parameters",
127
- "type": "object",
128
- "properties": {
129
- "a": {
130
- "description": "First number",
131
- "type": "number",
132
- "format": "double"
133
- },
134
- "b": {
135
- "description": "Second number",
136
- "type": "number",
137
- "format": "double"
138
- }
139
- },
140
- "required": [
141
- "a",
142
- "b"
143
- ]
144
- },
145
- "outputSchema": {
146
- "description": "Calculation result",
147
- "type": "number",
148
- "format": "double"
149
- }
150
- },
151
- "health.check": {
152
- "type": "returnable",
153
- "category": "onReturnableEvents",
154
- "description": "Perform health check",
155
- "inputSchema": {
156
- "description": "Health check parameters",
157
- "type": "object",
158
- "properties": {
159
- "includeDetails": {
160
- "description": "Whether to include detailed information",
161
- "type": "boolean"
162
- }
163
- },
164
- "required": [
165
- "includeDetails"
166
- ]
167
- },
168
- "outputSchema": {
169
- "description": "Health check response",
170
- "type": "object",
171
- "properties": {
172
- "status": {
173
- "description": "Service health status",
174
- "type": "string",
175
- "enum": [
176
- "healthy",
177
- "degraded",
178
- "unhealthy"
179
- ]
180
- },
181
- "uptime": {
182
- "description": "Service uptime in milliseconds",
183
- "type": "number",
184
- "format": "double"
185
- },
186
- "details": {
187
- "description": "Health check details",
188
- "oneOf": [
189
- {
190
- "description": "Detail value",
191
- "oneOf": []
192
- }
193
- ]
194
- }
195
- },
196
- "required": [
197
- "status",
198
- "uptime"
199
- ]
200
- }
201
- },
202
- "metrics.report": {
203
- "type": "broadcast",
204
- "category": "emitBroadcast",
205
- "description": "Broadcast performance metrics",
206
- "inputSchema": {
207
- "description": "Metrics report parameters",
208
- "type": "object",
209
- "properties": {
210
- "timestamp": {
211
- "description": "Metrics timestamp",
212
- "type": "string",
213
- "format": "datetime"
214
- },
215
- "metrics": {
216
- "description": "Performance metrics",
217
- "oneOf": [
218
- {
219
- "description": "Metric value",
220
- "type": "number",
221
- "format": "double"
222
- }
223
- ]
224
- },
225
- "period": {
226
- "description": "Reporting period",
227
- "type": "string"
228
- }
229
- },
230
- "required": [
231
- "timestamp",
232
- "metrics",
233
- "period"
234
- ]
235
- },
236
- "outputSchema": null
237
- },
238
- "emergency.stop": {
239
- "type": "broadcast",
240
- "category": "onBroadcast",
241
- "description": "Listen for emergency stop broadcasts",
242
- "inputSchema": {
243
- "description": "Emergency stop parameters",
244
- "type": "object",
245
- "properties": {
246
- "reason": {
247
- "description": "Emergency stop reason",
248
- "type": "string"
249
- },
250
- "immediate": {
251
- "description": "Whether to stop immediately without cleanup",
252
- "type": "boolean"
253
- }
254
- },
255
- "required": [
256
- "reason",
257
- "immediate"
258
- ]
259
- },
260
- "outputSchema": null
261
- }
262
- },
263
- "pluginType": "service",
264
- "configSchema": {
265
- "$schema": "https://json-schema.org/draft/2020-12/schema",
266
- "type": "null"
267
- }
268
- }
@@ -1,65 +0,0 @@
1
- {
2
- "pluginName": "service-default3",
3
- "version": "1.0.0",
4
- "events": {
5
- "calculate": {
6
- "type": "returnable",
7
- "category": "emitReturnableEvents",
8
- "description": "Calculate with two numbers",
9
- "inputSchema": {
10
- "description": "Calculate input parameters",
11
- "type": "object",
12
- "properties": {
13
- "a": {
14
- "description": "First number",
15
- "type": "number",
16
- "format": "double"
17
- },
18
- "b": {
19
- "description": "Second number",
20
- "type": "number",
21
- "format": "double"
22
- }
23
- },
24
- "required": [
25
- "a",
26
- "b"
27
- ]
28
- },
29
- "outputSchema": {
30
- "description": "Calculation result",
31
- "type": "number",
32
- "format": "double"
33
- }
34
- },
35
- "onReverseReturnable": {
36
- "type": "returnable",
37
- "category": "onReturnableEvents",
38
- "description": "Reverse a string",
39
- "inputSchema": {
40
- "description": "Reverse input parameters",
41
- "type": "object",
42
- "properties": {
43
- "text": {
44
- "description": "Text to reverse",
45
- "type": "string"
46
- }
47
- },
48
- "required": [
49
- "text"
50
- ]
51
- },
52
- "outputSchema": {
53
- "description": "Reversed text",
54
- "type": "string"
55
- }
56
- }
57
- },
58
- "pluginType": "service",
59
- "configSchema": {
60
- "$schema": "https://json-schema.org/draft/2020-12/schema",
61
- "type": "object",
62
- "properties": {},
63
- "additionalProperties": false
64
- }
65
- }
@@ -1,33 +0,0 @@
1
- {
2
- "pluginName": "service-default4",
3
- "version": "1.0.0",
4
- "events": {
5
- "onReverseReturnable": {
6
- "type": "returnable",
7
- "category": "emitReturnableEvents",
8
- "description": "Reverse text string",
9
- "inputSchema": {
10
- "description": "Reverse input parameters",
11
- "type": "object",
12
- "properties": {
13
- "text": {
14
- "description": "Text to reverse",
15
- "type": "string"
16
- }
17
- },
18
- "required": [
19
- "text"
20
- ]
21
- },
22
- "outputSchema": {
23
- "description": "Reversed text",
24
- "type": "string"
25
- }
26
- }
27
- },
28
- "pluginType": "service",
29
- "configSchema": {
30
- "$schema": "https://json-schema.org/draft/2020-12/schema",
31
- "type": "null"
32
- }
33
- }