@comake/skl-js-engine 1.5.2 → 1.5.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 (304) hide show
  1. package/package.json +1 -1
  2. package/src/SklEngine.ts +8 -1
  3. package/src/util/TripleUtil.ts +22 -2
  4. package/dist/JsExecutor/PermissionBuilder.d.ts +0 -14
  5. package/dist/JsExecutor/PermissionBuilder.d.ts.map +0 -1
  6. package/dist/JsExecutor/PermissionBuilder.js +0 -58
  7. package/dist/JsExecutor/PermissionBuilder.js.map +0 -1
  8. package/dist/JsExecutor/constants.d.ts +0 -27
  9. package/dist/JsExecutor/constants.d.ts.map +0 -1
  10. package/dist/JsExecutor/constants.js +0 -30
  11. package/dist/JsExecutor/constants.js.map +0 -1
  12. package/dist/JsExecutor/denoUtils.d.ts +0 -10
  13. package/dist/JsExecutor/denoUtils.d.ts.map +0 -1
  14. package/dist/JsExecutor/denoUtils.js +0 -24
  15. package/dist/JsExecutor/denoUtils.js.map +0 -1
  16. package/dist/JsExecutor/errors.d.ts +0 -40
  17. package/dist/JsExecutor/errors.d.ts.map +0 -1
  18. package/dist/JsExecutor/errors.js +0 -67
  19. package/dist/JsExecutor/errors.js.map +0 -1
  20. package/dist/JsExecutor/examples/basic/index.d.ts +0 -1
  21. package/dist/JsExecutor/examples/basic/index.d.ts.map +0 -1
  22. package/dist/JsExecutor/examples/basic/index.js +0 -46
  23. package/dist/JsExecutor/examples/basic/index.js.map +0 -1
  24. package/dist/JsExecutor/examples/basic/process.d.ts +0 -1
  25. package/dist/JsExecutor/examples/basic/process.d.ts.map +0 -1
  26. package/dist/JsExecutor/examples/basic/process.js +0 -34
  27. package/dist/JsExecutor/examples/basic/process.js.map +0 -1
  28. package/dist/JsExecutor/examples/jsExecutor/index.d.ts +0 -2
  29. package/dist/JsExecutor/examples/jsExecutor/index.d.ts.map +0 -1
  30. package/dist/JsExecutor/examples/jsExecutor/index.js +0 -47
  31. package/dist/JsExecutor/examples/jsExecutor/index.js.map +0 -1
  32. package/dist/JsExecutor/examples/jsExecutor/process.d.ts +0 -2
  33. package/dist/JsExecutor/examples/jsExecutor/process.d.ts.map +0 -1
  34. package/dist/JsExecutor/examples/jsExecutor/process.js +0 -58
  35. package/dist/JsExecutor/examples/jsExecutor/process.js.map +0 -1
  36. package/dist/JsExecutor/index.d.ts +0 -7
  37. package/dist/JsExecutor/index.d.ts.map +0 -1
  38. package/dist/JsExecutor/index.js +0 -36
  39. package/dist/JsExecutor/index.js.map +0 -1
  40. package/dist/JsExecutor/jsExecutor.d.ts +0 -68
  41. package/dist/JsExecutor/jsExecutor.d.ts.map +0 -1
  42. package/dist/JsExecutor/jsExecutor.js +0 -171
  43. package/dist/JsExecutor/jsExecutor.js.map +0 -1
  44. package/dist/JsExecutor/jsonRpc/JsonRpcClient.d.ts +0 -165
  45. package/dist/JsExecutor/jsonRpc/JsonRpcClient.d.ts.map +0 -1
  46. package/dist/JsExecutor/jsonRpc/JsonRpcClient.js +0 -335
  47. package/dist/JsExecutor/jsonRpc/JsonRpcClient.js.map +0 -1
  48. package/dist/JsExecutor/jsonRpc/JsonRpcServer.d.ts +0 -125
  49. package/dist/JsExecutor/jsonRpc/JsonRpcServer.d.ts.map +0 -1
  50. package/dist/JsExecutor/jsonRpc/JsonRpcServer.js +0 -391
  51. package/dist/JsExecutor/jsonRpc/JsonRpcServer.js.map +0 -1
  52. package/dist/JsExecutor/jsonRpc/index.d.ts +0 -4
  53. package/dist/JsExecutor/jsonRpc/index.d.ts.map +0 -1
  54. package/dist/JsExecutor/jsonRpc/index.js +0 -23
  55. package/dist/JsExecutor/jsonRpc/index.js.map +0 -1
  56. package/dist/JsExecutor/jsonRpc/types.d.ts +0 -193
  57. package/dist/JsExecutor/jsonRpc/types.d.ts.map +0 -1
  58. package/dist/JsExecutor/jsonRpc/types.js +0 -37
  59. package/dist/JsExecutor/jsonRpc/types.js.map +0 -1
  60. package/dist/JsExecutor/transport/Transport.d.ts +0 -74
  61. package/dist/JsExecutor/transport/Transport.d.ts.map +0 -1
  62. package/dist/JsExecutor/transport/Transport.js +0 -14
  63. package/dist/JsExecutor/transport/Transport.js.map +0 -1
  64. package/dist/JsExecutor/transport/base/BaseTransport.d.ts +0 -51
  65. package/dist/JsExecutor/transport/base/BaseTransport.d.ts.map +0 -1
  66. package/dist/JsExecutor/transport/base/BaseTransport.js +0 -68
  67. package/dist/JsExecutor/transport/base/BaseTransport.js.map +0 -1
  68. package/dist/JsExecutor/transport/index.d.ts +0 -13
  69. package/dist/JsExecutor/transport/index.d.ts.map +0 -1
  70. package/dist/JsExecutor/transport/index.js +0 -36
  71. package/dist/JsExecutor/transport/index.js.map +0 -1
  72. package/dist/JsExecutor/transport/process/ProcessManager.d.ts +0 -96
  73. package/dist/JsExecutor/transport/process/ProcessManager.d.ts.map +0 -1
  74. package/dist/JsExecutor/transport/process/ProcessManager.js +0 -219
  75. package/dist/JsExecutor/transport/process/ProcessManager.js.map +0 -1
  76. package/dist/JsExecutor/transport/stdio/ChildStdioTransport.d.ts +0 -87
  77. package/dist/JsExecutor/transport/stdio/ChildStdioTransport.d.ts.map +0 -1
  78. package/dist/JsExecutor/transport/stdio/ChildStdioTransport.js +0 -219
  79. package/dist/JsExecutor/transport/stdio/ChildStdioTransport.js.map +0 -1
  80. package/dist/JsExecutor/transport/stdio/ParentStdioTransport.d.ts +0 -81
  81. package/dist/JsExecutor/transport/stdio/ParentStdioTransport.d.ts.map +0 -1
  82. package/dist/JsExecutor/transport/stdio/ParentStdioTransport.js +0 -259
  83. package/dist/JsExecutor/transport/stdio/ParentStdioTransport.js.map +0 -1
  84. package/dist/JsExecutor/transport/utils/MessageUtils.d.ts +0 -68
  85. package/dist/JsExecutor/transport/utils/MessageUtils.d.ts.map +0 -1
  86. package/dist/JsExecutor/transport/utils/MessageUtils.js +0 -135
  87. package/dist/JsExecutor/transport/utils/MessageUtils.js.map +0 -1
  88. package/dist/JsExecutor/transport/utils/PollingUtils.d.ts +0 -53
  89. package/dist/JsExecutor/transport/utils/PollingUtils.d.ts.map +0 -1
  90. package/dist/JsExecutor/transport/utils/PollingUtils.js +0 -92
  91. package/dist/JsExecutor/transport/utils/PollingUtils.js.map +0 -1
  92. package/dist/JsExecutor/types.d.ts +0 -113
  93. package/dist/JsExecutor/types.d.ts.map +0 -1
  94. package/dist/JsExecutor/types.js +0 -3
  95. package/dist/JsExecutor/types.js.map +0 -1
  96. package/dist/SklEngine.d.ts +0 -132
  97. package/dist/SklEngine.d.ts.map +0 -1
  98. package/dist/SklEngine.js +0 -1501
  99. package/dist/SklEngine.js.map +0 -1
  100. package/dist/SklEngineOptions.d.ts +0 -58
  101. package/dist/SklEngineOptions.d.ts.map +0 -1
  102. package/dist/SklEngineOptions.js +0 -3
  103. package/dist/SklEngineOptions.js.map +0 -1
  104. package/dist/constants.d.ts +0 -96
  105. package/dist/constants.d.ts.map +0 -1
  106. package/dist/constants.js +0 -103
  107. package/dist/constants.js.map +0 -1
  108. package/dist/customCapabilities.d.ts +0 -22
  109. package/dist/customCapabilities.d.ts.map +0 -1
  110. package/dist/customCapabilities.js +0 -45
  111. package/dist/customCapabilities.js.map +0 -1
  112. package/dist/examples/customCapabilitiesExample.d.ts +0 -2
  113. package/dist/examples/customCapabilitiesExample.d.ts.map +0 -1
  114. package/dist/examples/customCapabilitiesExample.js +0 -59
  115. package/dist/examples/customCapabilitiesExample.js.map +0 -1
  116. package/dist/executor.js +0 -216
  117. package/dist/hooks/globalHooks.d.ts +0 -50
  118. package/dist/hooks/globalHooks.d.ts.map +0 -1
  119. package/dist/hooks/globalHooks.js +0 -164
  120. package/dist/hooks/globalHooks.js.map +0 -1
  121. package/dist/hooks/types.d.ts +0 -9
  122. package/dist/hooks/types.d.ts.map +0 -1
  123. package/dist/hooks/types.js +0 -3
  124. package/dist/hooks/types.js.map +0 -1
  125. package/dist/index.d.ts +0 -41
  126. package/dist/index.d.ts.map +0 -1
  127. package/dist/index.js +0 -68
  128. package/dist/index.js.map +0 -1
  129. package/dist/logger.d.ts +0 -35
  130. package/dist/logger.d.ts.map +0 -1
  131. package/dist/logger.js +0 -119
  132. package/dist/logger.js.map +0 -1
  133. package/dist/mapping/Mapper.d.ts +0 -13
  134. package/dist/mapping/Mapper.d.ts.map +0 -1
  135. package/dist/mapping/Mapper.js +0 -64
  136. package/dist/mapping/Mapper.js.map +0 -1
  137. package/dist/storage/FindOperator.d.ts +0 -19
  138. package/dist/storage/FindOperator.d.ts.map +0 -1
  139. package/dist/storage/FindOperator.js +0 -23
  140. package/dist/storage/FindOperator.js.map +0 -1
  141. package/dist/storage/FindOptionsTypes.d.ts +0 -79
  142. package/dist/storage/FindOptionsTypes.d.ts.map +0 -1
  143. package/dist/storage/FindOptionsTypes.js +0 -3
  144. package/dist/storage/FindOptionsTypes.js.map +0 -1
  145. package/dist/storage/GroupOptionTypes.d.ts +0 -29
  146. package/dist/storage/GroupOptionTypes.d.ts.map +0 -1
  147. package/dist/storage/GroupOptionTypes.js +0 -3
  148. package/dist/storage/GroupOptionTypes.js.map +0 -1
  149. package/dist/storage/operator/And.d.ts +0 -4
  150. package/dist/storage/operator/And.d.ts.map +0 -1
  151. package/dist/storage/operator/And.js +0 -13
  152. package/dist/storage/operator/And.js.map +0 -1
  153. package/dist/storage/operator/Contains.d.ts +0 -3
  154. package/dist/storage/operator/Contains.d.ts.map +0 -1
  155. package/dist/storage/operator/Contains.js +0 -13
  156. package/dist/storage/operator/Contains.js.map +0 -1
  157. package/dist/storage/operator/Equal.d.ts +0 -5
  158. package/dist/storage/operator/Equal.d.ts.map +0 -1
  159. package/dist/storage/operator/Equal.js +0 -13
  160. package/dist/storage/operator/Equal.js.map +0 -1
  161. package/dist/storage/operator/Exists.d.ts +0 -3
  162. package/dist/storage/operator/Exists.d.ts.map +0 -1
  163. package/dist/storage/operator/Exists.js +0 -10
  164. package/dist/storage/operator/Exists.js.map +0 -1
  165. package/dist/storage/operator/GreaterThan.d.ts +0 -4
  166. package/dist/storage/operator/GreaterThan.d.ts.map +0 -1
  167. package/dist/storage/operator/GreaterThan.js +0 -13
  168. package/dist/storage/operator/GreaterThan.js.map +0 -1
  169. package/dist/storage/operator/GreaterThanOrEqual.d.ts +0 -4
  170. package/dist/storage/operator/GreaterThanOrEqual.d.ts.map +0 -1
  171. package/dist/storage/operator/GreaterThanOrEqual.js +0 -13
  172. package/dist/storage/operator/GreaterThanOrEqual.js.map +0 -1
  173. package/dist/storage/operator/In.d.ts +0 -4
  174. package/dist/storage/operator/In.d.ts.map +0 -1
  175. package/dist/storage/operator/In.js +0 -13
  176. package/dist/storage/operator/In.js.map +0 -1
  177. package/dist/storage/operator/Inverse.d.ts +0 -3
  178. package/dist/storage/operator/Inverse.d.ts.map +0 -1
  179. package/dist/storage/operator/Inverse.js +0 -13
  180. package/dist/storage/operator/Inverse.js.map +0 -1
  181. package/dist/storage/operator/InversePath.d.ts +0 -7
  182. package/dist/storage/operator/InversePath.d.ts.map +0 -1
  183. package/dist/storage/operator/InversePath.js +0 -13
  184. package/dist/storage/operator/InversePath.js.map +0 -1
  185. package/dist/storage/operator/InverseRelation.d.ts +0 -9
  186. package/dist/storage/operator/InverseRelation.d.ts.map +0 -1
  187. package/dist/storage/operator/InverseRelation.js +0 -13
  188. package/dist/storage/operator/InverseRelation.js.map +0 -1
  189. package/dist/storage/operator/InverseRelationOrder.d.ts +0 -8
  190. package/dist/storage/operator/InverseRelationOrder.d.ts.map +0 -1
  191. package/dist/storage/operator/InverseRelationOrder.js +0 -13
  192. package/dist/storage/operator/InverseRelationOrder.js.map +0 -1
  193. package/dist/storage/operator/LessThan.d.ts +0 -4
  194. package/dist/storage/operator/LessThan.d.ts.map +0 -1
  195. package/dist/storage/operator/LessThan.js +0 -13
  196. package/dist/storage/operator/LessThan.js.map +0 -1
  197. package/dist/storage/operator/LessThanOrEqual.d.ts +0 -4
  198. package/dist/storage/operator/LessThanOrEqual.d.ts.map +0 -1
  199. package/dist/storage/operator/LessThanOrEqual.js +0 -13
  200. package/dist/storage/operator/LessThanOrEqual.js.map +0 -1
  201. package/dist/storage/operator/Not.d.ts +0 -3
  202. package/dist/storage/operator/Not.d.ts.map +0 -1
  203. package/dist/storage/operator/Not.js +0 -13
  204. package/dist/storage/operator/Not.js.map +0 -1
  205. package/dist/storage/operator/OneOrMorePath.d.ts +0 -7
  206. package/dist/storage/operator/OneOrMorePath.d.ts.map +0 -1
  207. package/dist/storage/operator/OneOrMorePath.js +0 -13
  208. package/dist/storage/operator/OneOrMorePath.js.map +0 -1
  209. package/dist/storage/operator/Or.d.ts +0 -4
  210. package/dist/storage/operator/Or.d.ts.map +0 -1
  211. package/dist/storage/operator/Or.js +0 -13
  212. package/dist/storage/operator/Or.js.map +0 -1
  213. package/dist/storage/operator/Sequence.d.ts +0 -3
  214. package/dist/storage/operator/Sequence.d.ts.map +0 -1
  215. package/dist/storage/operator/Sequence.js +0 -13
  216. package/dist/storage/operator/Sequence.js.map +0 -1
  217. package/dist/storage/operator/SequencePath.d.ts +0 -7
  218. package/dist/storage/operator/SequencePath.d.ts.map +0 -1
  219. package/dist/storage/operator/SequencePath.js +0 -13
  220. package/dist/storage/operator/SequencePath.js.map +0 -1
  221. package/dist/storage/operator/ZeroOrMorePath.d.ts +0 -7
  222. package/dist/storage/operator/ZeroOrMorePath.d.ts.map +0 -1
  223. package/dist/storage/operator/ZeroOrMorePath.js +0 -13
  224. package/dist/storage/operator/ZeroOrMorePath.js.map +0 -1
  225. package/dist/storage/query-adapter/QueryAdapter.d.ts +0 -99
  226. package/dist/storage/query-adapter/QueryAdapter.d.ts.map +0 -1
  227. package/dist/storage/query-adapter/QueryAdapter.js +0 -3
  228. package/dist/storage/query-adapter/QueryAdapter.js.map +0 -1
  229. package/dist/storage/query-adapter/sparql/SparqlQueryAdapter.d.ts +0 -40
  230. package/dist/storage/query-adapter/sparql/SparqlQueryAdapter.d.ts.map +0 -1
  231. package/dist/storage/query-adapter/sparql/SparqlQueryAdapter.js +0 -315
  232. package/dist/storage/query-adapter/sparql/SparqlQueryAdapter.js.map +0 -1
  233. package/dist/storage/query-adapter/sparql/SparqlQueryAdapterOptions.d.ts +0 -34
  234. package/dist/storage/query-adapter/sparql/SparqlQueryAdapterOptions.d.ts.map +0 -1
  235. package/dist/storage/query-adapter/sparql/SparqlQueryAdapterOptions.js +0 -3
  236. package/dist/storage/query-adapter/sparql/SparqlQueryAdapterOptions.js.map +0 -1
  237. package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.d.ts +0 -104
  238. package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.d.ts.map +0 -1
  239. package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.js +0 -1210
  240. package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.js.map +0 -1
  241. package/dist/storage/query-adapter/sparql/SparqlUpdateBuilder.d.ts +0 -41
  242. package/dist/storage/query-adapter/sparql/SparqlUpdateBuilder.d.ts.map +0 -1
  243. package/dist/storage/query-adapter/sparql/SparqlUpdateBuilder.js +0 -305
  244. package/dist/storage/query-adapter/sparql/SparqlUpdateBuilder.js.map +0 -1
  245. package/dist/storage/query-adapter/sparql/VariableGenerator.d.ts +0 -5
  246. package/dist/storage/query-adapter/sparql/VariableGenerator.d.ts.map +0 -1
  247. package/dist/storage/query-adapter/sparql/VariableGenerator.js +0 -14
  248. package/dist/storage/query-adapter/sparql/VariableGenerator.js.map +0 -1
  249. package/dist/storage/query-adapter/sparql/query-executor/InMemorySparqlQueryExecutor.d.ts +0 -19
  250. package/dist/storage/query-adapter/sparql/query-executor/InMemorySparqlQueryExecutor.d.ts.map +0 -1
  251. package/dist/storage/query-adapter/sparql/query-executor/InMemorySparqlQueryExecutor.js +0 -90
  252. package/dist/storage/query-adapter/sparql/query-executor/InMemorySparqlQueryExecutor.js.map +0 -1
  253. package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.d.ts +0 -27
  254. package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.d.ts.map +0 -1
  255. package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.js +0 -116
  256. package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.js.map +0 -1
  257. package/dist/storage/query-adapter/sparql/query-executor/SparqlQueryExecutor.d.ts +0 -34
  258. package/dist/storage/query-adapter/sparql/query-executor/SparqlQueryExecutor.d.ts.map +0 -1
  259. package/dist/storage/query-adapter/sparql/query-executor/SparqlQueryExecutor.js +0 -3
  260. package/dist/storage/query-adapter/sparql/query-executor/SparqlQueryExecutor.js.map +0 -1
  261. package/dist/tools/explain-findall-sparql.d.ts +0 -2
  262. package/dist/tools/explain-findall-sparql.d.ts.map +0 -1
  263. package/dist/tools/explain-findall-sparql.js +0 -303
  264. package/dist/tools/explain-findall-sparql.js.map +0 -1
  265. package/dist/util/PerformanceLogger.d.ts +0 -28
  266. package/dist/util/PerformanceLogger.d.ts.map +0 -1
  267. package/dist/util/PerformanceLogger.js +0 -223
  268. package/dist/util/PerformanceLogger.js.map +0 -1
  269. package/dist/util/ReadCacheHelper.d.ts +0 -14
  270. package/dist/util/ReadCacheHelper.d.ts.map +0 -1
  271. package/dist/util/ReadCacheHelper.js +0 -61
  272. package/dist/util/ReadCacheHelper.js.map +0 -1
  273. package/dist/util/SparqlUtil.d.ts +0 -72
  274. package/dist/util/SparqlUtil.d.ts.map +0 -1
  275. package/dist/util/SparqlUtil.js +0 -456
  276. package/dist/util/SparqlUtil.js.map +0 -1
  277. package/dist/util/TripleUtil.d.ts +0 -10
  278. package/dist/util/TripleUtil.d.ts.map +0 -1
  279. package/dist/util/TripleUtil.js +0 -402
  280. package/dist/util/TripleUtil.js.map +0 -1
  281. package/dist/util/Types.d.ts +0 -271
  282. package/dist/util/Types.d.ts.map +0 -1
  283. package/dist/util/Types.js +0 -3
  284. package/dist/util/Types.js.map +0 -1
  285. package/dist/util/Util.d.ts +0 -26
  286. package/dist/util/Util.d.ts.map +0 -1
  287. package/dist/util/Util.js +0 -138
  288. package/dist/util/Util.js.map +0 -1
  289. package/dist/util/Vocabularies/Shared.d.ts +0 -13
  290. package/dist/util/Vocabularies/Shared.d.ts.map +0 -1
  291. package/dist/util/Vocabularies/Shared.js +0 -96
  292. package/dist/util/Vocabularies/Shared.js.map +0 -1
  293. package/dist/util/Vocabularies/helper.d.ts +0 -5
  294. package/dist/util/Vocabularies/helper.d.ts.map +0 -1
  295. package/dist/util/Vocabularies/helper.js +0 -10
  296. package/dist/util/Vocabularies/helper.js.map +0 -1
  297. package/dist/util/Vocabularies/index.d.ts +0 -8
  298. package/dist/util/Vocabularies/index.d.ts.map +0 -1
  299. package/dist/util/Vocabularies/index.js +0 -114
  300. package/dist/util/Vocabularies/index.js.map +0 -1
  301. package/dist/util/safeJsonStringify.d.ts +0 -1
  302. package/dist/util/safeJsonStringify.d.ts.map +0 -1
  303. package/dist/util/safeJsonStringify.js +0 -19
  304. package/dist/util/safeJsonStringify.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@comake/skl-js-engine",
3
- "version": "1.5.2",
3
+ "version": "1.5.4",
4
4
  "description": "Standard Knowledge Language Javascript Engine",
5
5
  "keywords": [
6
6
  "skl",
package/src/SklEngine.ts CHANGED
@@ -1518,11 +1518,18 @@ export class SKLEngine implements SKLEngineInterface {
1518
1518
  await this.isInvalidTokenError(error, integratedProductId) &&
1519
1519
  securityCredentials
1520
1520
  ) {
1521
+ const refreshCapabilityConfig = capabilityConfig
1522
+ ? {
1523
+ ...capabilityConfig,
1524
+ stream: false,
1525
+ buffer: false
1526
+ }
1527
+ : undefined;
1521
1528
  const refreshedConfiguration = await this.refreshSecurityCredentials(
1522
1529
  securityCredentials,
1523
1530
  integratedProductId,
1524
1531
  account,
1525
- capabilityConfig
1532
+ refreshCapabilityConfig
1526
1533
  );
1527
1534
  response = await openApiExecutor.executeOperation(
1528
1535
  operationId,
@@ -283,7 +283,13 @@ async function frameWithRelationsOrNonBlankNodes(
283
283
  if (orderedNodeIds && orderedNodeIds.length > 0) {
284
284
  const nonBlankNodeIds = orderedNodeIds.filter((id: string): boolean => !id.startsWith('_:'));
285
285
  if (nonBlankNodeIds.length > 0) {
286
- frame['@id'] = nonBlankNodeIds as any;
286
+ const nonBlankNodeSet = new Set(
287
+ Object.keys(nodesById).filter((nodeId: string): boolean => !nodeId.startsWith(BLANK_NODE_PREFIX))
288
+ );
289
+ const matchingNodeIds = nonBlankNodeIds.filter((nodeId: string): boolean => nonBlankNodeSet.has(nodeId));
290
+ if (matchingNodeIds.length > 0) {
291
+ frame['@id'] = matchingNodeIds as any;
292
+ }
287
293
  }
288
294
  }
289
295
  }
@@ -299,7 +305,17 @@ async function frameWithRelationsOrNonBlankNodes(
299
305
  const results = await jsonld.frame({ '@graph': nodesValue }, frame);
300
306
  if (Array.isArray(results['@graph'])) {
301
307
  results['@graph'] = results['@graph'].filter(
302
- (node: NodeObject): boolean => !node['@id']?.startsWith(BLANK_NODE_PREFIX)
308
+ (node: NodeObject): boolean => (
309
+ !node['@id']?.startsWith(BLANK_NODE_PREFIX) &&
310
+ (
311
+ Object.keys(node).length > 0 &&
312
+ (
313
+ !!node['@id'] ||
314
+ !!node['@type'] ||
315
+ Object.entries(node).some(([ key, value ]): boolean => key !== '@context' && value !== null)
316
+ )
317
+ )
318
+ )
303
319
  );
304
320
  }
305
321
  if (typeof frame === 'object' && '@context' in frame && Object.keys(frame['@context']!).length > 0) {
@@ -367,6 +383,10 @@ export async function triplesToJsonld(
367
383
  if ('@graph' in framed) {
368
384
  return sortNodesByOrder(framed['@graph'] as NodeObject[], orderedNodeIds ?? nodeIdOrder);
369
385
  }
386
+ const { '@context': _unusedContext, ...framedWithoutContext } = framed;
387
+ if (Object.keys(framedWithoutContext).length === 0) {
388
+ return [];
389
+ }
370
390
  return framed;
371
391
  }
372
392
 
@@ -1,14 +0,0 @@
1
- import type { PermissionConfig } from './types';
2
- /**
3
- * Builds Deno permissions array based on options
4
- * @param config - Permission configuration
5
- * @returns Array of permission strings for Deno command
6
- */
7
- export declare function buildDenoPermissions(config: PermissionConfig): string[];
8
- /**
9
- * Validates permission configuration
10
- * @param config - Permission configuration to validate
11
- * @throws Error if configuration is invalid
12
- */
13
- export declare function validatePermissionConfig(config: PermissionConfig): void;
14
- //# sourceMappingURL=PermissionBuilder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PermissionBuilder.d.ts","sourceRoot":"","sources":["../../src/JsExecutor/PermissionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,EAAE,CAuBvE;AAaD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAWvE"}
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validatePermissionConfig = exports.buildDenoPermissions = void 0;
4
- /**
5
- * Builds Deno permissions array based on options
6
- * @param config - Permission configuration
7
- * @returns Array of permission strings for Deno command
8
- */
9
- function buildDenoPermissions(config) {
10
- const permissions = [];
11
- // Add network permissions if enabled
12
- if (config.allowNetwork) {
13
- if (config.allowedDomains.length > 0) {
14
- permissions.push(`--allow-net=${config.allowedDomains.join(',')}`);
15
- }
16
- else {
17
- permissions.push('--allow-net');
18
- }
19
- }
20
- // Add env permissions if enabled
21
- if (config.allowEnv) {
22
- permissions.push('--allow-env');
23
- }
24
- // Add read permissions if enabled
25
- if (config.allowRead) {
26
- permissions.push('--allow-read');
27
- }
28
- return permissions;
29
- }
30
- exports.buildDenoPermissions = buildDenoPermissions;
31
- /**
32
- * Basic domain validation
33
- * @param domain - Domain to validate
34
- * @returns True if domain format is valid
35
- */
36
- function isValidDomain(domain) {
37
- // Basic domain validation - can be enhanced as needed
38
- const domainRegex = /^[\dA-Za-z]([\dA-Za-z-]{0,61}[\dA-Za-z])?(\.[\dA-Za-z]([\dA-Za-z-]{0,61}[\dA-Za-z])?)*$/u;
39
- return domainRegex.test(domain) && domain.length <= 253;
40
- }
41
- /**
42
- * Validates permission configuration
43
- * @param config - Permission configuration to validate
44
- * @throws Error if configuration is invalid
45
- */
46
- function validatePermissionConfig(config) {
47
- if (config.allowedDomains.length > 0 && !config.allowNetwork) {
48
- throw new Error('allowedDomains specified but allowNetwork is false');
49
- }
50
- // Validate domain format
51
- for (const domain of config.allowedDomains) {
52
- if (!isValidDomain(domain)) {
53
- throw new Error(`Invalid domain format: ${domain}`);
54
- }
55
- }
56
- }
57
- exports.validatePermissionConfig = validatePermissionConfig;
58
- //# sourceMappingURL=PermissionBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PermissionBuilder.js","sourceRoot":"","sources":["../../src/JsExecutor/PermissionBuilder.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,SAAgB,oBAAoB,CAAC,MAAwB;IAC3D,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,qCAAqC;IACrC,IAAI,MAAM,CAAC,YAAY,EAAE;QACvB,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YACpC,WAAW,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACpE;aAAM;YACL,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SACjC;KACF;IAED,iCAAiC;IACjC,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KACjC;IAED,kCAAkC;IAClC,IAAI,MAAM,CAAC,SAAS,EAAE;QACpB,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KAClC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAvBD,oDAuBC;AAED;;;;GAIG;AACH,SAAS,aAAa,CAAC,MAAc;IACnC,sDAAsD;IACtD,MAAM,WAAW,GAAG,0FAA0F,CAAC;IAC/G,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;AAC1D,CAAC;AAED;;;;GAIG;AACH,SAAgB,wBAAwB,CAAC,MAAwB;IAC/D,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QAC5D,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;KACvE;IAED,yBAAyB;IACzB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,cAAc,EAAE;QAC1C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;SACrD;KACF;AACH,CAAC;AAXD,4DAWC","sourcesContent":["import type { PermissionConfig } from './types';\n\n/**\n * Builds Deno permissions array based on options\n * @param config - Permission configuration\n * @returns Array of permission strings for Deno command\n */\nexport function buildDenoPermissions(config: PermissionConfig): string[] {\n const permissions: string[] = [];\n\n // Add network permissions if enabled\n if (config.allowNetwork) {\n if (config.allowedDomains.length > 0) {\n permissions.push(`--allow-net=${config.allowedDomains.join(',')}`);\n } else {\n permissions.push('--allow-net');\n }\n }\n\n // Add env permissions if enabled\n if (config.allowEnv) {\n permissions.push('--allow-env');\n }\n\n // Add read permissions if enabled\n if (config.allowRead) {\n permissions.push('--allow-read');\n }\n\n return permissions;\n}\n\n/**\n * Basic domain validation\n * @param domain - Domain to validate\n * @returns True if domain format is valid\n */\nfunction isValidDomain(domain: string): boolean {\n // Basic domain validation - can be enhanced as needed\n const domainRegex = /^[\\dA-Za-z]([\\dA-Za-z-]{0,61}[\\dA-Za-z])?(\\.[\\dA-Za-z]([\\dA-Za-z-]{0,61}[\\dA-Za-z])?)*$/u;\n return domainRegex.test(domain) && domain.length <= 253;\n}\n\n/**\n * Validates permission configuration\n * @param config - Permission configuration to validate\n * @throws Error if configuration is invalid\n */\nexport function validatePermissionConfig(config: PermissionConfig): void {\n if (config.allowedDomains.length > 0 && !config.allowNetwork) {\n throw new Error('allowedDomains specified but allowNetwork is false');\n }\n\n // Validate domain format\n for (const domain of config.allowedDomains) {\n if (!isValidDomain(domain)) {\n throw new Error(`Invalid domain format: ${domain}`);\n }\n }\n}\n"]}
@@ -1,27 +0,0 @@
1
- /**
2
- * Constants for JSExecutor configuration
3
- */
4
- export declare const EXECUTION_CONSTANTS: {
5
- readonly defaultTimeout: number;
6
- readonly defaultFunctionName: "main";
7
- readonly maxOutputLength: 500;
8
- readonly denoCommand: "deno";
9
- readonly denoFlags: readonly ["run", "--unstable-detect-cjs", "--quiet", "--unstable-sloppy-imports"];
10
- readonly processSignals: {
11
- readonly term: "SIGTERM";
12
- };
13
- };
14
- /**
15
- * Default execution options
16
- */
17
- export declare const DEFAULT_EXECUTION_OPTIONS: {
18
- readonly timeout: number;
19
- readonly functionName: "main";
20
- readonly allowNetwork: false;
21
- readonly allowedDomains: readonly [];
22
- readonly allowEnv: true;
23
- readonly allowRead: false;
24
- readonly debugMode: false;
25
- readonly retries: 0;
26
- };
27
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/JsExecutor/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;CAStB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;CAS5B,CAAC"}
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_EXECUTION_OPTIONS = exports.EXECUTION_CONSTANTS = void 0;
4
- /**
5
- * Constants for JSExecutor configuration
6
- */
7
- exports.EXECUTION_CONSTANTS = {
8
- defaultTimeout: 60 * 60 * 1000,
9
- defaultFunctionName: 'main',
10
- maxOutputLength: 500,
11
- denoCommand: 'deno',
12
- denoFlags: ['run', '--unstable-detect-cjs', '--quiet', '--unstable-sloppy-imports'],
13
- processSignals: {
14
- term: 'SIGTERM'
15
- }
16
- };
17
- /**
18
- * Default execution options
19
- */
20
- exports.DEFAULT_EXECUTION_OPTIONS = {
21
- timeout: exports.EXECUTION_CONSTANTS.defaultTimeout,
22
- functionName: exports.EXECUTION_CONSTANTS.defaultFunctionName,
23
- allowNetwork: false,
24
- allowedDomains: [],
25
- allowEnv: true,
26
- allowRead: false,
27
- debugMode: false,
28
- retries: 0
29
- };
30
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/JsExecutor/constants.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,mBAAmB,GAAG;IACjC,cAAc,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;IAC9B,mBAAmB,EAAE,MAAM;IAC3B,eAAe,EAAE,GAAG;IACpB,WAAW,EAAE,MAAM;IACnB,SAAS,EAAE,CAAE,KAAK,EAAE,uBAAuB,EAAE,SAAS,EAAE,2BAA2B,CAAE;IACrF,cAAc,EAAE;QACd,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AAEX;;GAEG;AACU,QAAA,yBAAyB,GAAG;IACvC,OAAO,EAAE,2BAAmB,CAAC,cAAc;IAC3C,YAAY,EAAE,2BAAmB,CAAC,mBAAmB;IACrD,YAAY,EAAE,KAAK;IACnB,cAAc,EAAE,EAAE;IAClB,QAAQ,EAAE,IAAI;IACd,SAAS,EAAE,KAAK;IAChB,SAAS,EAAE,KAAK;IAChB,OAAO,EAAE,CAAC;CACF,CAAC","sourcesContent":["/**\n * Constants for JSExecutor configuration\n */\nexport const EXECUTION_CONSTANTS = {\n defaultTimeout: 60 * 60 * 1000,\n defaultFunctionName: 'main',\n maxOutputLength: 500,\n denoCommand: 'deno',\n denoFlags: [ 'run', '--unstable-detect-cjs', '--quiet', '--unstable-sloppy-imports' ],\n processSignals: {\n term: 'SIGTERM'\n }\n} as const;\n\n/**\n * Default execution options\n */\nexport const DEFAULT_EXECUTION_OPTIONS = {\n timeout: EXECUTION_CONSTANTS.defaultTimeout,\n functionName: EXECUTION_CONSTANTS.defaultFunctionName,\n allowNetwork: false,\n allowedDomains: [],\n allowEnv: true,\n allowRead: false,\n debugMode: false,\n retries: 0\n} as const;\n"]}
@@ -1,10 +0,0 @@
1
- /// <reference types="node" />
2
- import type { ChildProcess } from 'node:child_process';
3
- /**
4
- * Spawns a Deno process with the given arguments
5
- * @param commandArgs - Command line arguments for Deno
6
- * @returns The spawned child process
7
- * @throws ProcessSpawnError if the process fails to spawn
8
- */
9
- export declare function spawnDenoProcess(commandArgs: string[]): ChildProcess;
10
- //# sourceMappingURL=denoUtils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"denoUtils.d.ts","sourceRoot":"","sources":["../../src/JsExecutor/denoUtils.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKvD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,YAAY,CAQpE"}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.spawnDenoProcess = void 0;
4
- const node_child_process_1 = require("node:child_process");
5
- const constants_1 = require("./constants");
6
- const errors_1 = require("./errors");
7
- /**
8
- * Spawns a Deno process with the given arguments
9
- * @param commandArgs - Command line arguments for Deno
10
- * @returns The spawned child process
11
- * @throws ProcessSpawnError if the process fails to spawn
12
- */
13
- function spawnDenoProcess(commandArgs) {
14
- try {
15
- return (0, node_child_process_1.spawn)(constants_1.EXECUTION_CONSTANTS.denoCommand, commandArgs, {
16
- stdio: ['pipe', 'pipe', 'pipe']
17
- });
18
- }
19
- catch (error) {
20
- throw new errors_1.ProcessSpawnError(error);
21
- }
22
- }
23
- exports.spawnDenoProcess = spawnDenoProcess;
24
- //# sourceMappingURL=denoUtils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"denoUtils.js","sourceRoot":"","sources":["../../src/JsExecutor/denoUtils.ts"],"names":[],"mappings":";;;AACA,2DAA2C;AAC3C,2CAAkD;AAClD,qCAA6C;AAE7C;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,WAAqB;IACpD,IAAI;QACF,OAAO,IAAA,0BAAK,EAAC,+BAAmB,CAAC,WAAW,EAAE,WAAW,EAAE;YACzD,KAAK,EAAE,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAE;SAClC,CAAC,CAAC;KACJ;IAAC,OAAO,KAAc,EAAE;QACvB,MAAM,IAAI,0BAAiB,CAAC,KAAc,CAAC,CAAC;KAC7C;AACH,CAAC;AARD,4CAQC","sourcesContent":["import type { ChildProcess } from 'node:child_process';\nimport { spawn } from 'node:child_process';\nimport { EXECUTION_CONSTANTS } from './constants';\nimport { ProcessSpawnError } from './errors';\n\n/**\n * Spawns a Deno process with the given arguments\n * @param commandArgs - Command line arguments for Deno\n * @returns The spawned child process\n * @throws ProcessSpawnError if the process fails to spawn\n */\nexport function spawnDenoProcess(commandArgs: string[]): ChildProcess {\n try {\n return spawn(EXECUTION_CONSTANTS.denoCommand, commandArgs, {\n stdio: [ 'pipe', 'pipe', 'pipe' ]\n });\n } catch (error: unknown) {\n throw new ProcessSpawnError(error as Error);\n }\n}\n"]}
@@ -1,40 +0,0 @@
1
- /**
2
- * Custom error classes for better error handling in JSExecutor
3
- */
4
- /**
5
- * Error thrown when code execution times out
6
- */
7
- export declare class ExecutionTimeoutError extends Error {
8
- constructor(timeout: number);
9
- }
10
- /**
11
- * Error thrown when the Deno process fails to spawn
12
- */
13
- export declare class ProcessSpawnError extends Error {
14
- constructor(originalError: Error);
15
- }
16
- /**
17
- * Error thrown when the executor output cannot be parsed
18
- */
19
- export declare class OutputParsingError extends Error {
20
- constructor(rawOutput: string, originalError: Error);
21
- }
22
- /**
23
- * Error thrown when code execution fails in general
24
- */
25
- export declare class CodeExecutionError extends Error {
26
- constructor(message: string);
27
- }
28
- /**
29
- * Error thrown when the JSExecutor is not initialized
30
- */
31
- export declare class NotInitializedError extends Error {
32
- constructor(message: string);
33
- }
34
- /**
35
- * Error thrown when the JSExecutor is already initialized
36
- */
37
- export declare class AlreadyInitializedError extends Error {
38
- constructor(message: string);
39
- }
40
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/JsExecutor/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;gBAC3B,OAAO,EAAE,MAAM;CAInC;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;gBACvB,aAAa,EAAE,KAAK;CAIxC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;gBACxB,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK;CAI3D;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;gBACxB,OAAO,EAAE,MAAM;CAInC;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM;CAInC;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM;CAInC"}
@@ -1,67 +0,0 @@
1
- "use strict";
2
- /**
3
- * Custom error classes for better error handling in JSExecutor
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.AlreadyInitializedError = exports.NotInitializedError = exports.CodeExecutionError = exports.OutputParsingError = exports.ProcessSpawnError = exports.ExecutionTimeoutError = void 0;
7
- /**
8
- * Error thrown when code execution times out
9
- */
10
- class ExecutionTimeoutError extends Error {
11
- constructor(timeout) {
12
- super(`Execution timed out after ${timeout}ms`);
13
- this.name = 'ExecutionTimeoutError';
14
- }
15
- }
16
- exports.ExecutionTimeoutError = ExecutionTimeoutError;
17
- /**
18
- * Error thrown when the Deno process fails to spawn
19
- */
20
- class ProcessSpawnError extends Error {
21
- constructor(originalError) {
22
- super(`Failed to spawn Deno process: ${originalError.message}`);
23
- this.name = 'ProcessSpawnError';
24
- }
25
- }
26
- exports.ProcessSpawnError = ProcessSpawnError;
27
- /**
28
- * Error thrown when the executor output cannot be parsed
29
- */
30
- class OutputParsingError extends Error {
31
- constructor(rawOutput, originalError) {
32
- super(`Failed to parse output: ${originalError.message}`);
33
- this.name = 'OutputParsingError';
34
- }
35
- }
36
- exports.OutputParsingError = OutputParsingError;
37
- /**
38
- * Error thrown when code execution fails in general
39
- */
40
- class CodeExecutionError extends Error {
41
- constructor(message) {
42
- super(`Failed to execute code: ${message}`);
43
- this.name = 'CodeExecutionError';
44
- }
45
- }
46
- exports.CodeExecutionError = CodeExecutionError;
47
- /**
48
- * Error thrown when the JSExecutor is not initialized
49
- */
50
- class NotInitializedError extends Error {
51
- constructor(message) {
52
- super(message);
53
- this.name = 'NotInitializedError';
54
- }
55
- }
56
- exports.NotInitializedError = NotInitializedError;
57
- /**
58
- * Error thrown when the JSExecutor is already initialized
59
- */
60
- class AlreadyInitializedError extends Error {
61
- constructor(message) {
62
- super(message);
63
- this.name = 'AlreadyInitializedError';
64
- }
65
- }
66
- exports.AlreadyInitializedError = AlreadyInitializedError;
67
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/JsExecutor/errors.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH;;GAEG;AACH,MAAa,qBAAsB,SAAQ,KAAK;IAC9C,YAAmB,OAAe;QAChC,KAAK,CAAC,6BAA6B,OAAO,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AALD,sDAKC;AAED;;GAEG;AACH,MAAa,iBAAkB,SAAQ,KAAK;IAC1C,YAAmB,aAAoB;QACrC,KAAK,CAAC,iCAAiC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AALD,8CAKC;AAED;;GAEG;AACH,MAAa,kBAAmB,SAAQ,KAAK;IAC3C,YAAmB,SAAiB,EAAE,aAAoB;QACxD,KAAK,CAAC,2BAA2B,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AALD,gDAKC;AAED;;GAEG;AACH,MAAa,kBAAmB,SAAQ,KAAK;IAC3C,YAAmB,OAAe;QAChC,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AALD,gDAKC;AAED;;GAEG;AACH,MAAa,mBAAoB,SAAQ,KAAK;IAC5C,YAAmB,OAAe;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AALD,kDAKC;AAED;;GAEG;AACH,MAAa,uBAAwB,SAAQ,KAAK;IAChD,YAAmB,OAAe;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AALD,0DAKC","sourcesContent":["/**\n * Custom error classes for better error handling in JSExecutor\n */\n\n/**\n * Error thrown when code execution times out\n */\nexport class ExecutionTimeoutError extends Error {\n public constructor(timeout: number) {\n super(`Execution timed out after ${timeout}ms`);\n this.name = 'ExecutionTimeoutError';\n }\n}\n\n/**\n * Error thrown when the Deno process fails to spawn\n */\nexport class ProcessSpawnError extends Error {\n public constructor(originalError: Error) {\n super(`Failed to spawn Deno process: ${originalError.message}`);\n this.name = 'ProcessSpawnError';\n }\n}\n\n/**\n * Error thrown when the executor output cannot be parsed\n */\nexport class OutputParsingError extends Error {\n public constructor(rawOutput: string, originalError: Error) {\n super(`Failed to parse output: ${originalError.message}`);\n this.name = 'OutputParsingError';\n }\n}\n\n/**\n * Error thrown when code execution fails in general\n */\nexport class CodeExecutionError extends Error {\n public constructor(message: string) {\n super(`Failed to execute code: ${message}`);\n this.name = 'CodeExecutionError';\n }\n}\n\n/**\n * Error thrown when the JSExecutor is not initialized\n */\nexport class NotInitializedError extends Error {\n public constructor(message: string) {\n super(message);\n this.name = 'NotInitializedError';\n }\n}\n\n/**\n * Error thrown when the JSExecutor is already initialized\n */\nexport class AlreadyInitializedError extends Error {\n public constructor(message: string) {\n super(message);\n this.name = 'AlreadyInitializedError';\n }\n}\n"]}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/JsExecutor/examples/basic/index.ts"],"names":[],"mappings":""}
@@ -1,46 +0,0 @@
1
- "use strict";
2
- // /* eslint-disable func-style */
3
- // /* eslint-disable no-console */
4
- // import path from 'node:path';
5
- // import { JsonRpcServer } from '../../transport/JsonRpcServer';
6
- // import { StdioTransport } from '../../transport/StdioTransport';
7
- // const server = new JsonRpcServer();
8
- // // Register methods that the child process can call
9
- // server.registerMethod('getTime', async(): Promise<{ result: string }> => {
10
- // console.log('📅 Child requested current time');
11
- // return {
12
- // result: new Date().toISOString()
13
- // };
14
- // });
15
- // // Handle notifications from child
16
- // server.registerMethod('childNotification', async(params: { message: string; timestamp: string }): Promise<void> => {
17
- // console.log('📨 Received notification from child:', params);
18
- // // Notifications don't return responses
19
- // });
20
- // const stdioTransport = new StdioTransport(path.resolve(__dirname, './process.ts'), server);
21
- // stdioTransport.setName('basic-example-parent');
22
- // const main = async(): Promise<void> => {
23
- // console.log('🚀 Starting parent process');
24
- // await stdioTransport.initialize();
25
- // console.log('✅ Child process initialized');
26
- // // Example: Make some calls to the child process using the new ergonomic API
27
- // try {
28
- // // Test basic ping
29
- // // const pingResult = await stdioTransport.request('ping');
30
- // // console.log('🏓 Ping result:', pingResult);
31
- // // // Test child calling back to parent
32
- // const callParentResult = await stdioTransport.request('callParent');
33
- // console.log('🔄 Child callback result:', callParentResult);
34
- // // // Test child sending notification
35
- // // const notifyResult = await stdioTransport.request('sendNotification');
36
- // // console.log('📤 Notification test result:', notifyResult);
37
- // // // Test execute code method
38
- // // const executeResult = await stdioTransport.request('executeCode', 'console.log("Hello from executed code!")');
39
- // // console.log('⚡ Execute result:', executeResult);
40
- // await stdioTransport.close();
41
- // } catch (error: unknown) {
42
- // console.error('❌ Error testing child methods:', (error as Error).message);
43
- // }
44
- // };
45
- // main().catch(console.error);
46
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/JsExecutor/examples/basic/index.ts"],"names":[],"mappings":";AAAA,kCAAkC;AAClC,kCAAkC;AAClC,gCAAgC;AAChC,iEAAiE;AACjE,mEAAmE;AAEnE,sCAAsC;AAEtC,sDAAsD;AACtD,6EAA6E;AAC7E,oDAAoD;AACpD,aAAa;AACb,uCAAuC;AACvC,OAAO;AACP,MAAM;AAEN,qCAAqC;AACrC,uHAAuH;AACvH,iEAAiE;AACjE,4CAA4C;AAC5C,MAAM;AAEN,8FAA8F;AAC9F,kDAAkD;AAElD,2CAA2C;AAC3C,+CAA+C;AAC/C,uCAAuC;AACvC,gDAAgD;AAEhD,iFAAiF;AACjF,UAAU;AACV,yBAAyB;AACzB,kEAAkE;AAClE,qDAAqD;AAErD,8CAA8C;AAC9C,2EAA2E;AAC3E,kEAAkE;AAElE,4CAA4C;AAC5C,gFAAgF;AAChF,oEAAoE;AAEpE,qCAAqC;AACrC,wHAAwH;AACxH,0DAA0D;AAC1D,oCAAoC;AACpC,+BAA+B;AAC/B,iFAAiF;AACjF,MAAM;AACN,KAAK;AAEL,+BAA+B","sourcesContent":["// /* eslint-disable func-style */\n// /* eslint-disable no-console */\n// import path from 'node:path';\n// import { JsonRpcServer } from '../../transport/JsonRpcServer';\n// import { StdioTransport } from '../../transport/StdioTransport';\n\n// const server = new JsonRpcServer();\n\n// // Register methods that the child process can call\n// server.registerMethod('getTime', async(): Promise<{ result: string }> => {\n// console.log('📅 Child requested current time');\n// return {\n// result: new Date().toISOString()\n// };\n// });\n\n// // Handle notifications from child\n// server.registerMethod('childNotification', async(params: { message: string; timestamp: string }): Promise<void> => {\n// console.log('📨 Received notification from child:', params);\n// // Notifications don't return responses\n// });\n\n// const stdioTransport = new StdioTransport(path.resolve(__dirname, './process.ts'), server);\n// stdioTransport.setName('basic-example-parent');\n\n// const main = async(): Promise<void> => {\n// console.log('🚀 Starting parent process');\n// await stdioTransport.initialize();\n// console.log('✅ Child process initialized');\n\n// // Example: Make some calls to the child process using the new ergonomic API\n// try {\n// // Test basic ping\n// // const pingResult = await stdioTransport.request('ping');\n// // console.log('🏓 Ping result:', pingResult);\n\n// // // Test child calling back to parent\n// const callParentResult = await stdioTransport.request('callParent');\n// console.log('🔄 Child callback result:', callParentResult);\n\n// // // Test child sending notification\n// // const notifyResult = await stdioTransport.request('sendNotification');\n// // console.log('📤 Notification test result:', notifyResult);\n\n// // // Test execute code method\n// // const executeResult = await stdioTransport.request('executeCode', 'console.log(\"Hello from executed code!\")');\n// // console.log('⚡ Execute result:', executeResult);\n// await stdioTransport.close();\n// } catch (error: unknown) {\n// console.error('❌ Error testing child methods:', (error as Error).message);\n// }\n// };\n\n// main().catch(console.error);\n"]}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=process.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../../../src/JsExecutor/examples/basic/process.ts"],"names":[],"mappings":""}
@@ -1,34 +0,0 @@
1
- "use strict";
2
- // /* eslint-disable @typescript-eslint/ban-ts-comment */
3
- // // @ts-nocheck
4
- // import { BidirectionalStdioTransport } from '../../transport/StdioTransport.ts';
5
- // // Create a single transport that handles both server and client functionality
6
- // const transport = new BidirectionalStdioTransport();
7
- // transport.setName('basic-example-process');
8
- // // Register methods that the parent can call (server functionality)
9
- // transport.registerMethod('executeCode', async(message: string): Promise<{ result: string }> => ({
10
- // result: 'Hello from the process'
11
- // }));
12
- // transport.registerMethod('ping', async(): Promise<string> => 'pong');
13
- // // Register a method that demonstrates calling back to the parent (client functionality)
14
- // transport.registerMethod('callParent', async(): Promise<{ result: string }> => {
15
- // try {
16
- // // Call the parent's getTime method
17
- // const result = await transport.request('getTime');
18
- // return { result: `Parent getTime returned: ${JSON.stringify(result)}` };
19
- // } catch (error: unknown) {
20
- // return { result: `Error calling parent: ${(error as Error).message}` };
21
- // }
22
- // });
23
- // // Register a method that sends notifications to parent
24
- // transport.registerMethod('sendNotification', async(): Promise<{ result: string }> => {
25
- // // Send a notification (no response expected)
26
- // await transport.notify('childNotification', {
27
- // message: 'Hello from child process',
28
- // timestamp: new Date().toISOString()
29
- // });
30
- // return { result: 'Notification sent to parent' };
31
- // });
32
- // // Initialize the transport (this sets up stdio communication)
33
- // await transport.initialize();
34
- //# sourceMappingURL=process.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"process.js","sourceRoot":"","sources":["../../../../src/JsExecutor/examples/basic/process.ts"],"names":[],"mappings":";AAAA,yDAAyD;AAEzD,iBAAiB;AACjB,mFAAmF;AAEnF,iFAAiF;AACjF,uDAAuD;AACvD,8CAA8C;AAE9C,sEAAsE;AACtE,oGAAoG;AACpG,qCAAqC;AACrC,OAAO;AAEP,wEAAwE;AAExE,2FAA2F;AAC3F,mFAAmF;AACnF,UAAU;AACV,0CAA0C;AAC1C,yDAAyD;AACzD,+EAA+E;AAC/E,+BAA+B;AAC/B,8EAA8E;AAC9E,MAAM;AACN,MAAM;AAEN,0DAA0D;AAC1D,yFAAyF;AACzF,kDAAkD;AAClD,kDAAkD;AAClD,2CAA2C;AAC3C,0CAA0C;AAC1C,QAAQ;AACR,sDAAsD;AACtD,MAAM;AAEN,iEAAiE;AACjE,gCAAgC","sourcesContent":["// /* eslint-disable @typescript-eslint/ban-ts-comment */\n\n// // @ts-nocheck\n// import { BidirectionalStdioTransport } from '../../transport/StdioTransport.ts';\n\n// // Create a single transport that handles both server and client functionality\n// const transport = new BidirectionalStdioTransport();\n// transport.setName('basic-example-process');\n\n// // Register methods that the parent can call (server functionality)\n// transport.registerMethod('executeCode', async(message: string): Promise<{ result: string }> => ({\n// result: 'Hello from the process'\n// }));\n\n// transport.registerMethod('ping', async(): Promise<string> => 'pong');\n\n// // Register a method that demonstrates calling back to the parent (client functionality)\n// transport.registerMethod('callParent', async(): Promise<{ result: string }> => {\n// try {\n// // Call the parent's getTime method\n// const result = await transport.request('getTime');\n// return { result: `Parent getTime returned: ${JSON.stringify(result)}` };\n// } catch (error: unknown) {\n// return { result: `Error calling parent: ${(error as Error).message}` };\n// }\n// });\n\n// // Register a method that sends notifications to parent\n// transport.registerMethod('sendNotification', async(): Promise<{ result: string }> => {\n// // Send a notification (no response expected)\n// await transport.notify('childNotification', {\n// message: 'Hello from child process',\n// timestamp: new Date().toISOString()\n// });\n// return { result: 'Notification sent to parent' };\n// });\n\n// // Initialize the transport (this sets up stdio communication)\n// await transport.initialize();\n"]}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/JsExecutor/examples/jsExecutor/index.ts"],"names":[],"mappings":""}
@@ -1,47 +0,0 @@
1
- "use strict";
2
- /* eslint-disable func-style */
3
- /* eslint-disable no-console */
4
- var __importDefault = (this && this.__importDefault) || function (mod) {
5
- return (mod && mod.__esModule) ? mod : { "default": mod };
6
- };
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- const node_path_1 = __importDefault(require("node:path"));
9
- const jsExecutor_1 = require("../../jsExecutor");
10
- const jsExecutor = new jsExecutor_1.JSExecutor(node_path_1.default.resolve(__dirname, './process.ts'), {
11
- async getTime() {
12
- return new Date().toISOString();
13
- }
14
- });
15
- const main = async () => {
16
- await jsExecutor.initialize();
17
- try {
18
- const result = await jsExecutor.execute(`
19
- async function main() {
20
- // Using SKL accessor - this gets converted to request('getTime', ...)
21
- return await SKL.getTime({}, {
22
- timeout: 50000,
23
- retries: 0
24
- });
25
-
26
- // Alternative: direct request call (still works)
27
- // return await request('getTime', {}, {
28
- // timeout: 50000,
29
- // retries: 0
30
- // });
31
- }
32
- `, {}, {
33
- timeout: 50000,
34
- functionName: 'main',
35
- retries: 0
36
- });
37
- console.log({ result });
38
- }
39
- catch (error) {
40
- console.error({ error });
41
- }
42
- finally {
43
- await jsExecutor.shutdown();
44
- }
45
- };
46
- main().catch(console.error);
47
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/JsExecutor/examples/jsExecutor/index.ts"],"names":[],"mappings":";AAAA,+BAA+B;AAC/B,+BAA+B;;;;;AAE/B,0DAA6B;AAC7B,iDAA8C;AAE9C,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,mBAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE;IACzE,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,IAAI,GAAG,KAAK,IAAkB,EAAE;IACpC,MAAM,UAAU,CAAC,UAAU,EAAE,CAAC;IAE9B,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CACrC;;;;;;;;;;;;;;CAcL,EACK,EAAE,EACF;YACE,OAAO,EAAE,KAAK;YACd,YAAY,EAAE,MAAM;YACpB,OAAO,EAAE,CAAC;SACX,CACF,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;KAEzB;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;KAC1B;YAAS;QACR,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC;KAC7B;AACH,CAAC,CAAC;AAEF,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC","sourcesContent":["/* eslint-disable func-style */\n/* eslint-disable no-console */\n\nimport path from 'node:path';\nimport { JSExecutor } from '../../jsExecutor';\n\nconst jsExecutor = new JSExecutor(path.resolve(__dirname, './process.ts'), {\n async getTime(): Promise<string> {\n return new Date().toISOString();\n }\n});\n\nconst main = async(): Promise<void> => {\n await jsExecutor.initialize();\n\n try {\n const result = await jsExecutor.execute(\n `\n async function main() {\n // Using SKL accessor - this gets converted to request('getTime', ...)\n return await SKL.getTime({}, {\n timeout: 50000,\n retries: 0\n });\n \n // Alternative: direct request call (still works)\n // return await request('getTime', {}, {\n // timeout: 50000,\n // retries: 0\n // });\n }\n`,\n {},\n {\n timeout: 50000,\n functionName: 'main',\n retries: 0\n }\n );\n\n console.log({ result });\n \n } catch (error) {\n console.error({ error });\n } finally {\n await jsExecutor.shutdown();\n }\n};\n\nmain().catch(console.error);\n"]}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=process.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../../../src/JsExecutor/examples/jsExecutor/process.ts"],"names":[],"mappings":""}