@xyo-network/module-model 2.75.0 → 2.75.2

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 (436) hide show
  1. package/dist/browser/Config.d.cts +60 -0
  2. package/dist/browser/Config.d.cts.map +1 -0
  3. package/dist/browser/Config.js +1 -2
  4. package/dist/browser/Config.js.map +1 -1
  5. package/dist/browser/CreatableModule/CreatableModule.d.cts +23 -0
  6. package/dist/browser/CreatableModule/CreatableModule.d.cts.map +1 -0
  7. package/dist/browser/CreatableModule/CreatableModule.js +0 -1
  8. package/dist/browser/CreatableModule/CreatableModule.js.map +1 -1
  9. package/dist/browser/CreatableModule/CreatableModuleDictionary.d.cts +5 -0
  10. package/dist/browser/CreatableModule/CreatableModuleDictionary.d.cts.map +1 -0
  11. package/dist/browser/CreatableModule/CreatableModuleRegistry.d.cts +9 -0
  12. package/dist/browser/CreatableModule/CreatableModuleRegistry.d.cts.map +1 -0
  13. package/dist/browser/CreatableModule/CreatableModuleRegistry.js +2 -3
  14. package/dist/browser/CreatableModule/CreatableModuleRegistry.js.map +1 -1
  15. package/dist/browser/CreatableModule/LabeledCreatableModuleFactory.d.cts +6 -0
  16. package/dist/browser/CreatableModule/LabeledCreatableModuleFactory.d.cts.map +1 -0
  17. package/dist/browser/CreatableModule/LabeledCreatableModuleFactory.js +1 -2
  18. package/dist/browser/CreatableModule/LabeledCreatableModuleFactory.js.map +1 -1
  19. package/dist/browser/CreatableModule/ModuleFactory.d.cts +25 -0
  20. package/dist/browser/CreatableModule/ModuleFactory.d.cts.map +1 -0
  21. package/dist/browser/CreatableModule/ModuleFactory.js +3 -4
  22. package/dist/browser/CreatableModule/ModuleFactory.js.map +1 -1
  23. package/dist/browser/CreatableModule/ModuleFactoryLocator.d.cts +41 -0
  24. package/dist/browser/CreatableModule/ModuleFactoryLocator.d.cts.map +1 -0
  25. package/dist/browser/CreatableModule/ModuleFactoryLocator.js +4 -19
  26. package/dist/browser/CreatableModule/ModuleFactoryLocator.js.map +1 -1
  27. package/dist/browser/CreatableModule/index.d.cts +7 -0
  28. package/dist/browser/CreatableModule/index.d.cts.map +1 -0
  29. package/dist/browser/CreatableModule/index.js +6 -169
  30. package/dist/browser/CreatableModule/index.js.map +1 -1
  31. package/dist/browser/EventsModels/ModuleBusy.d.cts +9 -0
  32. package/dist/browser/EventsModels/ModuleBusy.d.cts.map +1 -0
  33. package/dist/browser/EventsModels/ModuleError.d.cts +9 -0
  34. package/dist/browser/EventsModels/ModuleError.d.cts.map +1 -0
  35. package/dist/browser/EventsModels/ModuleEventArgs.d.cts +7 -0
  36. package/dist/browser/EventsModels/ModuleEventArgs.d.cts.map +1 -0
  37. package/dist/browser/EventsModels/ModuleEventData.d.cts +6 -0
  38. package/dist/browser/EventsModels/ModuleEventData.d.cts.map +1 -0
  39. package/dist/browser/EventsModels/ModuleQueried.d.cts +14 -0
  40. package/dist/browser/EventsModels/ModuleQueried.d.cts.map +1 -0
  41. package/dist/browser/EventsModels/index.d.cts +6 -0
  42. package/dist/browser/EventsModels/index.d.cts.map +1 -0
  43. package/dist/browser/EventsModels/index.js +5 -0
  44. package/dist/browser/EventsModels/index.js.map +1 -1
  45. package/dist/browser/Labels/Labels.d.cts +26 -0
  46. package/dist/browser/Labels/Labels.d.cts.map +1 -0
  47. package/dist/browser/Labels/Labels.js +1 -2
  48. package/dist/browser/Labels/Labels.js.map +1 -1
  49. package/dist/browser/Labels/index.d.cts +2 -0
  50. package/dist/browser/Labels/index.d.cts.map +1 -0
  51. package/dist/browser/Labels/index.js +1 -11
  52. package/dist/browser/Labels/index.js.map +1 -1
  53. package/dist/browser/ModuleDescription.d.cts +7 -0
  54. package/dist/browser/ModuleDescription.d.cts.map +1 -0
  55. package/dist/browser/ModuleParams.d.cts +11 -0
  56. package/dist/browser/ModuleParams.d.cts.map +1 -0
  57. package/dist/browser/ModuleQueryHandlerResult.d.cts +3 -0
  58. package/dist/browser/ModuleQueryHandlerResult.d.cts.map +1 -0
  59. package/dist/browser/ModuleQueryResult.d.cts +4 -0
  60. package/dist/browser/ModuleQueryResult.d.cts.map +1 -0
  61. package/dist/browser/Queries/Describe/Payload.d.cts +6 -0
  62. package/dist/browser/Queries/Describe/Payload.d.cts.map +1 -0
  63. package/dist/browser/Queries/Describe/Payload.js +1 -2
  64. package/dist/browser/Queries/Describe/Payload.js.map +1 -1
  65. package/dist/browser/Queries/Describe/Query.d.cts +7 -0
  66. package/dist/browser/Queries/Describe/Query.d.cts.map +1 -0
  67. package/dist/browser/Queries/Describe/Query.js +1 -2
  68. package/dist/browser/Queries/Describe/Query.js.map +1 -1
  69. package/dist/browser/Queries/Describe/index.d.cts +3 -0
  70. package/dist/browser/Queries/Describe/index.d.cts.map +1 -0
  71. package/dist/browser/Queries/Describe/index.js +2 -9
  72. package/dist/browser/Queries/Describe/index.js.map +1 -1
  73. package/dist/browser/Queries/Discover.d.cts +7 -0
  74. package/dist/browser/Queries/Discover.d.cts.map +1 -0
  75. package/dist/browser/Queries/Discover.js +1 -2
  76. package/dist/browser/Queries/Discover.js.map +1 -1
  77. package/dist/browser/Queries/Manifest.d.cts +7 -0
  78. package/dist/browser/Queries/Manifest.d.cts.map +1 -0
  79. package/dist/browser/Queries/Manifest.js +1 -2
  80. package/dist/browser/Queries/Manifest.js.map +1 -1
  81. package/dist/browser/Queries/ModuleAddress/Payload.d.cts +9 -0
  82. package/dist/browser/Queries/ModuleAddress/Payload.d.cts.map +1 -0
  83. package/dist/browser/Queries/ModuleAddress/Payload.js +1 -2
  84. package/dist/browser/Queries/ModuleAddress/Payload.js.map +1 -1
  85. package/dist/browser/Queries/ModuleAddress/Query.d.cts +7 -0
  86. package/dist/browser/Queries/ModuleAddress/Query.d.cts.map +1 -0
  87. package/dist/browser/Queries/ModuleAddress/Query.js +1 -2
  88. package/dist/browser/Queries/ModuleAddress/Query.js.map +1 -1
  89. package/dist/browser/Queries/ModuleAddress/index.d.cts +3 -0
  90. package/dist/browser/Queries/ModuleAddress/index.d.cts.map +1 -0
  91. package/dist/browser/Queries/ModuleAddress/index.js +2 -10
  92. package/dist/browser/Queries/ModuleAddress/index.js.map +1 -1
  93. package/dist/browser/Queries/Subscribe.d.cts +17 -0
  94. package/dist/browser/Queries/Subscribe.d.cts.map +1 -0
  95. package/dist/browser/Queries/Subscribe.js +1 -2
  96. package/dist/browser/Queries/Subscribe.js.map +1 -1
  97. package/dist/browser/Queries/index.d.cts +14 -0
  98. package/dist/browser/Queries/index.d.cts.map +1 -0
  99. package/dist/browser/Queries/index.js +5 -30
  100. package/dist/browser/Queries/index.js.map +1 -1
  101. package/dist/browser/index.d.cts +14 -0
  102. package/dist/browser/index.d.cts.map +1 -0
  103. package/dist/browser/index.js +13 -332
  104. package/dist/browser/index.js.map +1 -1
  105. package/dist/browser/instance/ModuleInstance.d.cts +41 -0
  106. package/dist/browser/instance/ModuleInstance.d.cts.map +1 -0
  107. package/dist/browser/instance/ModuleInstance.js +2 -3
  108. package/dist/browser/instance/ModuleInstance.js.map +1 -1
  109. package/dist/browser/instance/ModuleRepository.d.cts +9 -0
  110. package/dist/browser/instance/ModuleRepository.d.cts.map +1 -0
  111. package/dist/browser/instance/asModuleInstance.d.cts +5 -0
  112. package/dist/browser/instance/asModuleInstance.d.cts.map +1 -0
  113. package/dist/browser/instance/asModuleInstance.js +2 -63
  114. package/dist/browser/instance/asModuleInstance.js.map +1 -1
  115. package/dist/browser/instance/index.d.cts +5 -0
  116. package/dist/browser/instance/index.d.cts.map +1 -0
  117. package/dist/browser/instance/index.js +4 -75
  118. package/dist/browser/instance/index.js.map +1 -1
  119. package/dist/browser/instance/isModuleInstance.d.cts +5 -0
  120. package/dist/browser/instance/isModuleInstance.d.cts.map +1 -0
  121. package/dist/browser/instance/isModuleInstance.js +4 -52
  122. package/dist/browser/instance/isModuleInstance.js.map +1 -1
  123. package/dist/browser/lib/duplicateModules.d.cts +12 -0
  124. package/dist/browser/lib/duplicateModules.d.cts.map +1 -0
  125. package/dist/browser/lib/duplicateModules.js +1 -2
  126. package/dist/browser/lib/duplicateModules.js.map +1 -1
  127. package/dist/browser/lib/index.d.cts +3 -0
  128. package/dist/browser/lib/index.d.cts.map +1 -0
  129. package/dist/browser/lib/index.js +2 -32
  130. package/dist/browser/lib/index.js.map +1 -1
  131. package/dist/browser/lib/serializable.d.cts +3 -0
  132. package/dist/browser/lib/serializable.d.cts.map +1 -0
  133. package/dist/browser/lib/serializable.js +4 -5
  134. package/dist/browser/lib/serializable.js.map +1 -1
  135. package/dist/browser/module/IsModuleFactory.d.cts +7 -0
  136. package/dist/browser/module/IsModuleFactory.d.cts.map +1 -0
  137. package/dist/browser/module/IsModuleFactory.js +4 -22
  138. package/dist/browser/module/IsModuleFactory.js.map +1 -1
  139. package/dist/browser/module/Module.d.cts +6 -0
  140. package/dist/browser/module/Module.d.cts.map +1 -0
  141. package/dist/browser/module/ModuleFields.d.cts +18 -0
  142. package/dist/browser/module/ModuleFields.d.cts.map +1 -0
  143. package/dist/browser/module/ModuleQueryFunctions.d.cts +12 -0
  144. package/dist/browser/module/ModuleQueryFunctions.d.cts.map +1 -0
  145. package/dist/browser/module/asModule.d.cts +5 -0
  146. package/dist/browser/module/asModule.d.cts.map +1 -0
  147. package/dist/browser/module/asModule.js +2 -50
  148. package/dist/browser/module/asModule.js.map +1 -1
  149. package/dist/browser/module/asModuleObject.d.cts +5 -0
  150. package/dist/browser/module/asModuleObject.d.cts.map +1 -0
  151. package/dist/browser/module/asModuleObject.js +2 -17
  152. package/dist/browser/module/asModuleObject.js.map +1 -1
  153. package/dist/browser/module/index.d.cts +9 -0
  154. package/dist/browser/module/index.d.cts.map +1 -0
  155. package/dist/browser/module/index.js +8 -60
  156. package/dist/browser/module/index.js.map +1 -1
  157. package/dist/browser/module/isModule.d.cts +5 -0
  158. package/dist/browser/module/isModule.d.cts.map +1 -0
  159. package/dist/browser/module/isModule.js +6 -38
  160. package/dist/browser/module/isModule.js.map +1 -1
  161. package/dist/browser/module/isModuleObject.d.cts +5 -0
  162. package/dist/browser/module/isModuleObject.d.cts.map +1 -0
  163. package/dist/browser/module/isModuleObject.js +3 -4
  164. package/dist/browser/module/isModuleObject.js.map +1 -1
  165. package/dist/browser/withModule.d.cts +7 -0
  166. package/dist/browser/withModule.d.cts.map +1 -0
  167. package/dist/browser/withModule.js +5 -63
  168. package/dist/browser/withModule.js.map +1 -1
  169. package/dist/docs.json +52596 -0
  170. package/dist/node/Config.d.cts +60 -0
  171. package/dist/node/Config.d.cts.map +1 -0
  172. package/dist/node/Config.js +3 -1
  173. package/dist/node/Config.js.map +1 -1
  174. package/dist/node/Config.mjs +2 -1
  175. package/dist/node/Config.mjs.map +1 -1
  176. package/dist/node/CreatableModule/CreatableModule.d.cts +23 -0
  177. package/dist/node/CreatableModule/CreatableModule.d.cts.map +1 -0
  178. package/dist/node/CreatableModule/CreatableModule.js +2 -0
  179. package/dist/node/CreatableModule/CreatableModule.js.map +1 -1
  180. package/dist/node/CreatableModule/CreatableModule.mjs +1 -0
  181. package/dist/node/CreatableModule/CreatableModule.mjs.map +1 -1
  182. package/dist/node/CreatableModule/CreatableModuleDictionary.d.cts +5 -0
  183. package/dist/node/CreatableModule/CreatableModuleDictionary.d.cts.map +1 -0
  184. package/dist/node/CreatableModule/CreatableModuleDictionary.js +2 -0
  185. package/dist/node/CreatableModule/CreatableModuleDictionary.js.map +1 -1
  186. package/dist/node/CreatableModule/CreatableModuleRegistry.d.cts +9 -0
  187. package/dist/node/CreatableModule/CreatableModuleRegistry.d.cts.map +1 -0
  188. package/dist/node/CreatableModule/CreatableModuleRegistry.js +4 -2
  189. package/dist/node/CreatableModule/CreatableModuleRegistry.js.map +1 -1
  190. package/dist/node/CreatableModule/CreatableModuleRegistry.mjs +3 -2
  191. package/dist/node/CreatableModule/CreatableModuleRegistry.mjs.map +1 -1
  192. package/dist/node/CreatableModule/LabeledCreatableModuleFactory.d.cts +6 -0
  193. package/dist/node/CreatableModule/LabeledCreatableModuleFactory.d.cts.map +1 -0
  194. package/dist/node/CreatableModule/LabeledCreatableModuleFactory.js +3 -1
  195. package/dist/node/CreatableModule/LabeledCreatableModuleFactory.js.map +1 -1
  196. package/dist/node/CreatableModule/LabeledCreatableModuleFactory.mjs +2 -1
  197. package/dist/node/CreatableModule/LabeledCreatableModuleFactory.mjs.map +1 -1
  198. package/dist/node/CreatableModule/ModuleFactory.d.cts +25 -0
  199. package/dist/node/CreatableModule/ModuleFactory.d.cts.map +1 -0
  200. package/dist/node/CreatableModule/ModuleFactory.js +7 -4
  201. package/dist/node/CreatableModule/ModuleFactory.js.map +1 -1
  202. package/dist/node/CreatableModule/ModuleFactory.mjs +6 -4
  203. package/dist/node/CreatableModule/ModuleFactory.mjs.map +1 -1
  204. package/dist/node/CreatableModule/ModuleFactoryLocator.d.cts +41 -0
  205. package/dist/node/CreatableModule/ModuleFactoryLocator.d.cts.map +1 -0
  206. package/dist/node/CreatableModule/ModuleFactoryLocator.js +23 -6
  207. package/dist/node/CreatableModule/ModuleFactoryLocator.js.map +1 -1
  208. package/dist/node/CreatableModule/ModuleFactoryLocator.mjs +22 -6
  209. package/dist/node/CreatableModule/ModuleFactoryLocator.mjs.map +1 -1
  210. package/dist/node/CreatableModule/index.d.cts +7 -0
  211. package/dist/node/CreatableModule/index.d.cts.map +1 -0
  212. package/dist/node/CreatableModule/index.js +184 -13
  213. package/dist/node/CreatableModule/index.js.map +1 -1
  214. package/dist/node/CreatableModule/index.mjs +171 -6
  215. package/dist/node/CreatableModule/index.mjs.map +1 -1
  216. package/dist/node/EventsModels/ModuleBusy.d.cts +9 -0
  217. package/dist/node/EventsModels/ModuleBusy.d.cts.map +1 -0
  218. package/dist/node/EventsModels/ModuleBusy.js +2 -0
  219. package/dist/node/EventsModels/ModuleBusy.js.map +1 -1
  220. package/dist/node/EventsModels/ModuleError.d.cts +9 -0
  221. package/dist/node/EventsModels/ModuleError.d.cts.map +1 -0
  222. package/dist/node/EventsModels/ModuleError.js +2 -0
  223. package/dist/node/EventsModels/ModuleError.js.map +1 -1
  224. package/dist/node/EventsModels/ModuleEventArgs.d.cts +7 -0
  225. package/dist/node/EventsModels/ModuleEventArgs.d.cts.map +1 -0
  226. package/dist/node/EventsModels/ModuleEventArgs.js +2 -0
  227. package/dist/node/EventsModels/ModuleEventArgs.js.map +1 -1
  228. package/dist/node/EventsModels/ModuleEventData.d.cts +6 -0
  229. package/dist/node/EventsModels/ModuleEventData.d.cts.map +1 -0
  230. package/dist/node/EventsModels/ModuleEventData.js +2 -0
  231. package/dist/node/EventsModels/ModuleEventData.js.map +1 -1
  232. package/dist/node/EventsModels/ModuleQueried.d.cts +14 -0
  233. package/dist/node/EventsModels/ModuleQueried.d.cts.map +1 -0
  234. package/dist/node/EventsModels/ModuleQueried.js +2 -0
  235. package/dist/node/EventsModels/ModuleQueried.js.map +1 -1
  236. package/dist/node/EventsModels/index.d.cts +6 -0
  237. package/dist/node/EventsModels/index.d.cts.map +1 -0
  238. package/dist/node/EventsModels/index.js +2 -14
  239. package/dist/node/EventsModels/index.js.map +1 -1
  240. package/dist/node/EventsModels/index.mjs +0 -5
  241. package/dist/node/EventsModels/index.mjs.map +1 -1
  242. package/dist/node/Labels/Labels.d.cts +26 -0
  243. package/dist/node/Labels/Labels.d.cts.map +1 -0
  244. package/dist/node/Labels/Labels.js +4 -2
  245. package/dist/node/Labels/Labels.js.map +1 -1
  246. package/dist/node/Labels/Labels.mjs +3 -2
  247. package/dist/node/Labels/Labels.mjs.map +1 -1
  248. package/dist/node/Labels/index.d.cts +2 -0
  249. package/dist/node/Labels/index.d.cts.map +1 -0
  250. package/dist/node/Labels/index.js +19 -3
  251. package/dist/node/Labels/index.js.map +1 -1
  252. package/dist/node/Labels/index.mjs +11 -1
  253. package/dist/node/Labels/index.mjs.map +1 -1
  254. package/dist/node/ModuleDescription.d.cts +7 -0
  255. package/dist/node/ModuleDescription.d.cts.map +1 -0
  256. package/dist/node/ModuleDescription.js +2 -0
  257. package/dist/node/ModuleDescription.js.map +1 -1
  258. package/dist/node/ModuleParams.d.cts +11 -0
  259. package/dist/node/ModuleParams.d.cts.map +1 -0
  260. package/dist/node/ModuleParams.js +2 -0
  261. package/dist/node/ModuleParams.js.map +1 -1
  262. package/dist/node/ModuleQueryHandlerResult.d.cts +3 -0
  263. package/dist/node/ModuleQueryHandlerResult.d.cts.map +1 -0
  264. package/dist/node/ModuleQueryHandlerResult.js +2 -0
  265. package/dist/node/ModuleQueryHandlerResult.js.map +1 -1
  266. package/dist/node/ModuleQueryResult.d.cts +4 -0
  267. package/dist/node/ModuleQueryResult.d.cts.map +1 -0
  268. package/dist/node/ModuleQueryResult.js +2 -0
  269. package/dist/node/ModuleQueryResult.js.map +1 -1
  270. package/dist/node/Queries/Describe/Payload.d.cts +6 -0
  271. package/dist/node/Queries/Describe/Payload.d.cts.map +1 -0
  272. package/dist/node/Queries/Describe/Payload.js +3 -1
  273. package/dist/node/Queries/Describe/Payload.js.map +1 -1
  274. package/dist/node/Queries/Describe/Payload.mjs +2 -1
  275. package/dist/node/Queries/Describe/Payload.mjs.map +1 -1
  276. package/dist/node/Queries/Describe/Query.d.cts +7 -0
  277. package/dist/node/Queries/Describe/Query.d.cts.map +1 -0
  278. package/dist/node/Queries/Describe/Query.js +3 -1
  279. package/dist/node/Queries/Describe/Query.js.map +1 -1
  280. package/dist/node/Queries/Describe/Query.mjs +2 -1
  281. package/dist/node/Queries/Describe/Query.mjs.map +1 -1
  282. package/dist/node/Queries/Describe/index.d.cts +3 -0
  283. package/dist/node/Queries/Describe/index.d.cts.map +1 -0
  284. package/dist/node/Queries/Describe/index.js +18 -5
  285. package/dist/node/Queries/Describe/index.js.map +1 -1
  286. package/dist/node/Queries/Describe/index.mjs +9 -2
  287. package/dist/node/Queries/Describe/index.mjs.map +1 -1
  288. package/dist/node/Queries/Discover.d.cts +7 -0
  289. package/dist/node/Queries/Discover.d.cts.map +1 -0
  290. package/dist/node/Queries/Discover.js +3 -1
  291. package/dist/node/Queries/Discover.js.map +1 -1
  292. package/dist/node/Queries/Discover.mjs +2 -1
  293. package/dist/node/Queries/Discover.mjs.map +1 -1
  294. package/dist/node/Queries/Manifest.d.cts +7 -0
  295. package/dist/node/Queries/Manifest.d.cts.map +1 -0
  296. package/dist/node/Queries/Manifest.js +3 -1
  297. package/dist/node/Queries/Manifest.js.map +1 -1
  298. package/dist/node/Queries/Manifest.mjs +2 -1
  299. package/dist/node/Queries/Manifest.mjs.map +1 -1
  300. package/dist/node/Queries/ModuleAddress/Payload.d.cts +9 -0
  301. package/dist/node/Queries/ModuleAddress/Payload.d.cts.map +1 -0
  302. package/dist/node/Queries/ModuleAddress/Payload.js +3 -1
  303. package/dist/node/Queries/ModuleAddress/Payload.js.map +1 -1
  304. package/dist/node/Queries/ModuleAddress/Payload.mjs +2 -1
  305. package/dist/node/Queries/ModuleAddress/Payload.mjs.map +1 -1
  306. package/dist/node/Queries/ModuleAddress/Query.d.cts +7 -0
  307. package/dist/node/Queries/ModuleAddress/Query.d.cts.map +1 -0
  308. package/dist/node/Queries/ModuleAddress/Query.js +3 -1
  309. package/dist/node/Queries/ModuleAddress/Query.js.map +1 -1
  310. package/dist/node/Queries/ModuleAddress/Query.mjs +2 -1
  311. package/dist/node/Queries/ModuleAddress/Query.mjs.map +1 -1
  312. package/dist/node/Queries/ModuleAddress/index.d.cts +3 -0
  313. package/dist/node/Queries/ModuleAddress/index.d.cts.map +1 -0
  314. package/dist/node/Queries/ModuleAddress/index.js +19 -5
  315. package/dist/node/Queries/ModuleAddress/index.js.map +1 -1
  316. package/dist/node/Queries/ModuleAddress/index.mjs +10 -2
  317. package/dist/node/Queries/ModuleAddress/index.mjs.map +1 -1
  318. package/dist/node/Queries/Subscribe.d.cts +17 -0
  319. package/dist/node/Queries/Subscribe.d.cts.map +1 -0
  320. package/dist/node/Queries/Subscribe.js +3 -1
  321. package/dist/node/Queries/Subscribe.js.map +1 -1
  322. package/dist/node/Queries/Subscribe.mjs +2 -1
  323. package/dist/node/Queries/Subscribe.mjs.map +1 -1
  324. package/dist/node/Queries/index.d.cts +14 -0
  325. package/dist/node/Queries/index.d.cts.map +1 -0
  326. package/dist/node/Queries/index.js +44 -11
  327. package/dist/node/Queries/index.js.map +1 -1
  328. package/dist/node/Queries/index.mjs +30 -5
  329. package/dist/node/Queries/index.mjs.map +1 -1
  330. package/dist/node/index.d.cts +14 -0
  331. package/dist/node/index.d.cts.map +1 -0
  332. package/dist/node/index.js +373 -27
  333. package/dist/node/index.js.map +1 -1
  334. package/dist/node/index.mjs +334 -13
  335. package/dist/node/index.mjs.map +1 -1
  336. package/dist/node/instance/ModuleInstance.d.cts +41 -0
  337. package/dist/node/instance/ModuleInstance.d.cts.map +1 -0
  338. package/dist/node/instance/ModuleInstance.js +4 -2
  339. package/dist/node/instance/ModuleInstance.js.map +1 -1
  340. package/dist/node/instance/ModuleInstance.mjs +3 -2
  341. package/dist/node/instance/ModuleInstance.mjs.map +1 -1
  342. package/dist/node/instance/ModuleRepository.d.cts +9 -0
  343. package/dist/node/instance/ModuleRepository.d.cts.map +1 -0
  344. package/dist/node/instance/ModuleRepository.js +2 -0
  345. package/dist/node/instance/ModuleRepository.js.map +1 -1
  346. package/dist/node/instance/asModuleInstance.d.cts +5 -0
  347. package/dist/node/instance/asModuleInstance.d.cts.map +1 -0
  348. package/dist/node/instance/asModuleInstance.js +64 -2
  349. package/dist/node/instance/asModuleInstance.js.map +1 -1
  350. package/dist/node/instance/asModuleInstance.mjs +63 -2
  351. package/dist/node/instance/asModuleInstance.mjs.map +1 -1
  352. package/dist/node/instance/index.d.cts +5 -0
  353. package/dist/node/instance/index.d.cts.map +1 -0
  354. package/dist/node/instance/index.js +86 -9
  355. package/dist/node/instance/index.js.map +1 -1
  356. package/dist/node/instance/index.mjs +75 -4
  357. package/dist/node/instance/index.mjs.map +1 -1
  358. package/dist/node/instance/isModuleInstance.d.cts +5 -0
  359. package/dist/node/instance/isModuleInstance.d.cts.map +1 -0
  360. package/dist/node/instance/isModuleInstance.js +53 -4
  361. package/dist/node/instance/isModuleInstance.js.map +1 -1
  362. package/dist/node/instance/isModuleInstance.mjs +52 -4
  363. package/dist/node/instance/isModuleInstance.mjs.map +1 -1
  364. package/dist/node/lib/duplicateModules.d.cts +12 -0
  365. package/dist/node/lib/duplicateModules.d.cts.map +1 -0
  366. package/dist/node/lib/duplicateModules.js +3 -1
  367. package/dist/node/lib/duplicateModules.js.map +1 -1
  368. package/dist/node/lib/duplicateModules.mjs +2 -1
  369. package/dist/node/lib/duplicateModules.mjs.map +1 -1
  370. package/dist/node/lib/index.d.cts +3 -0
  371. package/dist/node/lib/index.d.cts.map +1 -0
  372. package/dist/node/lib/index.js +42 -5
  373. package/dist/node/lib/index.js.map +1 -1
  374. package/dist/node/lib/index.mjs +32 -2
  375. package/dist/node/lib/index.mjs.map +1 -1
  376. package/dist/node/lib/serializable.d.cts +3 -0
  377. package/dist/node/lib/serializable.d.cts.map +1 -0
  378. package/dist/node/lib/serializable.js +6 -4
  379. package/dist/node/lib/serializable.js.map +1 -1
  380. package/dist/node/lib/serializable.mjs +5 -4
  381. package/dist/node/lib/serializable.mjs.map +1 -1
  382. package/dist/node/module/IsModuleFactory.d.cts +7 -0
  383. package/dist/node/module/IsModuleFactory.d.cts.map +1 -0
  384. package/dist/node/module/IsModuleFactory.js +28 -7
  385. package/dist/node/module/IsModuleFactory.js.map +1 -1
  386. package/dist/node/module/IsModuleFactory.mjs +24 -6
  387. package/dist/node/module/IsModuleFactory.mjs.map +1 -1
  388. package/dist/node/module/Module.d.cts +6 -0
  389. package/dist/node/module/Module.d.cts.map +1 -0
  390. package/dist/node/module/Module.js +2 -0
  391. package/dist/node/module/Module.js.map +1 -1
  392. package/dist/node/module/ModuleFields.d.cts +18 -0
  393. package/dist/node/module/ModuleFields.d.cts.map +1 -0
  394. package/dist/node/module/ModuleFields.js +2 -0
  395. package/dist/node/module/ModuleFields.js.map +1 -1
  396. package/dist/node/module/ModuleQueryFunctions.d.cts +12 -0
  397. package/dist/node/module/ModuleQueryFunctions.d.cts.map +1 -0
  398. package/dist/node/module/ModuleQueryFunctions.js +2 -0
  399. package/dist/node/module/ModuleQueryFunctions.js.map +1 -1
  400. package/dist/node/module/asModule.d.cts +5 -0
  401. package/dist/node/module/asModule.d.cts.map +1 -0
  402. package/dist/node/module/asModule.js +51 -2
  403. package/dist/node/module/asModule.js.map +1 -1
  404. package/dist/node/module/asModule.mjs +50 -2
  405. package/dist/node/module/asModule.mjs.map +1 -1
  406. package/dist/node/module/asModuleObject.d.cts +5 -0
  407. package/dist/node/module/asModuleObject.d.cts.map +1 -0
  408. package/dist/node/module/asModuleObject.js +18 -2
  409. package/dist/node/module/asModuleObject.js.map +1 -1
  410. package/dist/node/module/asModuleObject.mjs +17 -2
  411. package/dist/node/module/asModuleObject.mjs.map +1 -1
  412. package/dist/node/module/index.d.cts +9 -0
  413. package/dist/node/module/index.d.cts.map +1 -0
  414. package/dist/node/module/index.js +74 -17
  415. package/dist/node/module/index.js.map +1 -1
  416. package/dist/node/module/index.mjs +60 -8
  417. package/dist/node/module/index.mjs.map +1 -1
  418. package/dist/node/module/isModule.d.cts +5 -0
  419. package/dist/node/module/isModule.d.cts.map +1 -0
  420. package/dist/node/module/isModule.js +42 -7
  421. package/dist/node/module/isModule.js.map +1 -1
  422. package/dist/node/module/isModule.mjs +38 -6
  423. package/dist/node/module/isModule.mjs.map +1 -1
  424. package/dist/node/module/isModuleObject.d.cts +5 -0
  425. package/dist/node/module/isModuleObject.d.cts.map +1 -0
  426. package/dist/node/module/isModuleObject.js +5 -3
  427. package/dist/node/module/isModuleObject.js.map +1 -1
  428. package/dist/node/module/isModuleObject.mjs +4 -3
  429. package/dist/node/module/isModuleObject.mjs.map +1 -1
  430. package/dist/node/withModule.d.cts +7 -0
  431. package/dist/node/withModule.d.cts.map +1 -0
  432. package/dist/node/withModule.js +66 -5
  433. package/dist/node/withModule.js.map +1 -1
  434. package/dist/node/withModule.mjs +63 -5
  435. package/dist/node/withModule.mjs.map +1 -1
  436. package/package.json +18 -18
@@ -0,0 +1 @@
1
+ {"version":3,"file":"duplicateModules.d.ts","sourceRoot":"","sources":["../../../src/lib/duplicateModules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,UAAW,MAAM,SAAS,MAAM,SAAS,MAAM,EAAE,oBAE7E,CAAA"}
@@ -16,12 +16,14 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/duplicateModules.ts
19
21
  var duplicateModules_exports = {};
20
22
  __export(duplicateModules_exports, {
21
23
  duplicateModules: () => duplicateModules
22
24
  });
23
25
  module.exports = __toCommonJS(duplicateModules_exports);
24
- const duplicateModules = (value, index, array) => {
26
+ var duplicateModules = (value, index, array) => {
25
27
  return array.findIndex((v) => v.address === value.address) === index;
26
28
  };
27
29
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/duplicateModules.ts"],"sourcesContent":["import { Module } from '../module'\n\n/**\n * Used to filter duplicates from an array of modules\n * @example: modulesArray.filter(duplicateModules)\n * @param value Current Module\n * @param index Current Module's index\n * @param array Module Array\n * @returns True if the Module's address is the first occurrence of\n * that address in the array, false otherwise\n */\nexport const duplicateModules = (value: Module, index: number, array: Module[]): value is Module => {\n return array.findIndex((v) => v.address === value.address) === index\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAWO,MAAM,mBAAmB,CAAC,OAAe,OAAe,UAAqC;AAClG,SAAO,MAAM,UAAU,CAAC,MAAM,EAAE,YAAY,MAAM,OAAO,MAAM;AACjE;","names":[]}
1
+ {"version":3,"sources":["../../../src/lib/duplicateModules.ts"],"sourcesContent":["import { Module } from '../module'\n\n/**\n * Used to filter duplicates from an array of modules\n * @example: modulesArray.filter(duplicateModules)\n * @param value Current Module\n * @param index Current Module's index\n * @param array Module Array\n * @returns True if the Module's address is the first occurrence of\n * that address in the array, false otherwise\n */\nexport const duplicateModules = (value: Module, index: number, array: Module[]): value is Module => {\n return array.findIndex((v) => v.address === value.address) === index\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAWO,IAAM,mBAAmB,CAAC,OAAe,OAAe,UAAqC;AAClG,SAAO,MAAM,UAAU,CAAC,MAAM,EAAE,YAAY,MAAM,OAAO,MAAM;AACjE;","names":[]}
@@ -1,4 +1,5 @@
1
- const duplicateModules = (value, index, array) => {
1
+ // src/lib/duplicateModules.ts
2
+ var duplicateModules = (value, index, array) => {
2
3
  return array.findIndex((v) => v.address === value.address) === index;
3
4
  };
4
5
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/duplicateModules.ts"],"sourcesContent":["import { Module } from '../module'\n\n/**\n * Used to filter duplicates from an array of modules\n * @example: modulesArray.filter(duplicateModules)\n * @param value Current Module\n * @param index Current Module's index\n * @param array Module Array\n * @returns True if the Module's address is the first occurrence of\n * that address in the array, false otherwise\n */\nexport const duplicateModules = (value: Module, index: number, array: Module[]): value is Module => {\n return array.findIndex((v) => v.address === value.address) === index\n}\n"],"mappings":"AAWO,MAAM,mBAAmB,CAAC,OAAe,OAAe,UAAqC;AAClG,SAAO,MAAM,UAAU,CAAC,MAAM,EAAE,YAAY,MAAM,OAAO,MAAM;AACjE;","names":[]}
1
+ {"version":3,"sources":["../../../src/lib/duplicateModules.ts"],"sourcesContent":["import { Module } from '../module'\n\n/**\n * Used to filter duplicates from an array of modules\n * @example: modulesArray.filter(duplicateModules)\n * @param value Current Module\n * @param index Current Module's index\n * @param array Module Array\n * @returns True if the Module's address is the first occurrence of\n * that address in the array, false otherwise\n */\nexport const duplicateModules = (value: Module, index: number, array: Module[]): value is Module => {\n return array.findIndex((v) => v.address === value.address) === index\n}\n"],"mappings":";AAWO,IAAM,mBAAmB,CAAC,OAAe,OAAe,UAAqC;AAClG,SAAO,MAAM,UAAU,CAAC,MAAM,EAAE,YAAY,MAAM,OAAO,MAAM;AACjE;","names":[]}
@@ -0,0 +1,3 @@
1
+ export * from './duplicateModules';
2
+ export * from './serializable';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA"}
@@ -3,6 +3,10 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
6
10
  var __copyProps = (to, from, except, desc) => {
7
11
  if (from && typeof from === "object" || typeof from === "function") {
8
12
  for (let key of __getOwnPropNames(from))
@@ -11,15 +15,48 @@ var __copyProps = (to, from, except, desc) => {
11
15
  }
12
16
  return to;
13
17
  };
14
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/index.ts
16
21
  var lib_exports = {};
22
+ __export(lib_exports, {
23
+ duplicateModules: () => duplicateModules,
24
+ serializable: () => serializable,
25
+ serializableField: () => serializableField
26
+ });
17
27
  module.exports = __toCommonJS(lib_exports);
18
- __reExport(lib_exports, require("./duplicateModules"), module.exports);
19
- __reExport(lib_exports, require("./serializable"), module.exports);
28
+
29
+ // src/lib/duplicateModules.ts
30
+ var duplicateModules = (value, index, array) => {
31
+ return array.findIndex((v) => v.address === value.address) === index;
32
+ };
33
+
34
+ // src/lib/serializable.ts
35
+ var import_lodash = require("@xylabs/lodash");
36
+ var JSONPrimitiveChecks = [import_lodash.isUndefined, import_lodash.isNull, import_lodash.isBoolean, import_lodash.isNumber, import_lodash.isString];
37
+ var JSONComplexChecks = [import_lodash.isPlainObject, import_lodash.isArray];
38
+ var serializable = (field, depth) => {
39
+ let depthExceeded = false;
40
+ const decrementDepth = () => depth ? depth-- : void 0;
41
+ const recursiveSerializable = (field2) => {
42
+ if (depth !== void 0 && depth < 1) {
43
+ depthExceeded = true;
44
+ return false;
45
+ }
46
+ decrementDepth();
47
+ const nestedSerializable = (field3) => (0, import_lodash.overSome)(JSONComplexChecks)(field3) && (0, import_lodash.every)(field3, recursiveSerializable);
48
+ return (0, import_lodash.overSome)([...JSONPrimitiveChecks, nestedSerializable])(field2);
49
+ };
50
+ const valid = recursiveSerializable(field);
51
+ return depthExceeded ? null : valid;
52
+ };
53
+ var serializableField = (field) => {
54
+ return (0, import_lodash.overSome)([...JSONPrimitiveChecks, ...JSONComplexChecks])(field);
55
+ };
20
56
  // Annotate the CommonJS export names for ESM import in node:
21
57
  0 && (module.exports = {
22
- ...require("./duplicateModules"),
23
- ...require("./serializable")
58
+ duplicateModules,
59
+ serializable,
60
+ serializableField
24
61
  });
25
62
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/index.ts"],"sourcesContent":["export * from './duplicateModules'\nexport * from './serializable'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,wBAAc,+BAAd;AACA,wBAAc,2BADd;","names":[]}
1
+ {"version":3,"sources":["../../../src/lib/index.ts","../../../src/lib/duplicateModules.ts","../../../src/lib/serializable.ts"],"sourcesContent":["export * from './duplicateModules'\nexport * from './serializable'\n","import { Module } from '../module'\n\n/**\n * Used to filter duplicates from an array of modules\n * @example: modulesArray.filter(duplicateModules)\n * @param value Current Module\n * @param index Current Module's index\n * @param array Module Array\n * @returns True if the Module's address is the first occurrence of\n * that address in the array, false otherwise\n */\nexport const duplicateModules = (value: Module, index: number, array: Module[]): value is Module => {\n return array.findIndex((v) => v.address === value.address) === index\n}\n","// Inspired by https://stackoverflow.com/a/49079549/2803259\n\nimport { every, isArray, isBoolean, isNull, isNumber, isPlainObject, isString, isUndefined, overSome } from '@xylabs/lodash'\n\nconst JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString]\nconst JSONComplexChecks = [isPlainObject, isArray]\n\nexport const serializable = (field: unknown, depth?: number): boolean | null => {\n let depthExceeded = false\n const decrementDepth = () => (depth ? depth-- : undefined)\n\n const recursiveSerializable = (field: unknown) => {\n if (depth !== undefined && depth < 1) {\n depthExceeded = true\n return false\n }\n\n // decrement during every recursion\n decrementDepth()\n\n const nestedSerializable = (field: unknown): boolean => overSome(JSONComplexChecks)(field) && every(field as object, recursiveSerializable)\n\n return overSome([...JSONPrimitiveChecks, nestedSerializable])(field)\n }\n\n const valid = recursiveSerializable(field)\n\n return depthExceeded ? null : valid\n}\n\nexport const serializableField = (field: unknown) => {\n return overSome([...JSONPrimitiveChecks, ...JSONComplexChecks])(field)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACWO,IAAM,mBAAmB,CAAC,OAAe,OAAe,UAAqC;AAClG,SAAO,MAAM,UAAU,CAAC,MAAM,EAAE,YAAY,MAAM,OAAO,MAAM;AACjE;;;ACXA,oBAA4G;AAE5G,IAAM,sBAAsB,CAAC,2BAAa,sBAAQ,yBAAW,wBAAU,sBAAQ;AAC/E,IAAM,oBAAoB,CAAC,6BAAe,qBAAO;AAE1C,IAAM,eAAe,CAAC,OAAgB,UAAmC;AAC9E,MAAI,gBAAgB;AACpB,QAAM,iBAAiB,MAAO,QAAQ,UAAU;AAEhD,QAAM,wBAAwB,CAACA,WAAmB;AAChD,QAAI,UAAU,UAAa,QAAQ,GAAG;AACpC,sBAAgB;AAChB,aAAO;AAAA,IACT;AAGA,mBAAe;AAEf,UAAM,qBAAqB,CAACA,eAA4B,wBAAS,iBAAiB,EAAEA,MAAK,SAAK,qBAAMA,QAAiB,qBAAqB;AAE1I,eAAO,wBAAS,CAAC,GAAG,qBAAqB,kBAAkB,CAAC,EAAEA,MAAK;AAAA,EACrE;AAEA,QAAM,QAAQ,sBAAsB,KAAK;AAEzC,SAAO,gBAAgB,OAAO;AAChC;AAEO,IAAM,oBAAoB,CAAC,UAAmB;AACnD,aAAO,wBAAS,CAAC,GAAG,qBAAqB,GAAG,iBAAiB,CAAC,EAAE,KAAK;AACvE;","names":["field"]}
@@ -1,3 +1,33 @@
1
- export * from "./duplicateModules";
2
- export * from "./serializable";
1
+ // src/lib/duplicateModules.ts
2
+ var duplicateModules = (value, index, array) => {
3
+ return array.findIndex((v) => v.address === value.address) === index;
4
+ };
5
+
6
+ // src/lib/serializable.ts
7
+ import { every, isArray, isBoolean, isNull, isNumber, isPlainObject, isString, isUndefined, overSome } from "@xylabs/lodash";
8
+ var JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString];
9
+ var JSONComplexChecks = [isPlainObject, isArray];
10
+ var serializable = (field, depth) => {
11
+ let depthExceeded = false;
12
+ const decrementDepth = () => depth ? depth-- : void 0;
13
+ const recursiveSerializable = (field2) => {
14
+ if (depth !== void 0 && depth < 1) {
15
+ depthExceeded = true;
16
+ return false;
17
+ }
18
+ decrementDepth();
19
+ const nestedSerializable = (field3) => overSome(JSONComplexChecks)(field3) && every(field3, recursiveSerializable);
20
+ return overSome([...JSONPrimitiveChecks, nestedSerializable])(field2);
21
+ };
22
+ const valid = recursiveSerializable(field);
23
+ return depthExceeded ? null : valid;
24
+ };
25
+ var serializableField = (field) => {
26
+ return overSome([...JSONPrimitiveChecks, ...JSONComplexChecks])(field);
27
+ };
28
+ export {
29
+ duplicateModules,
30
+ serializable,
31
+ serializableField
32
+ };
3
33
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/index.ts"],"sourcesContent":["export * from './duplicateModules'\nexport * from './serializable'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../src/lib/duplicateModules.ts","../../../src/lib/serializable.ts"],"sourcesContent":["import { Module } from '../module'\n\n/**\n * Used to filter duplicates from an array of modules\n * @example: modulesArray.filter(duplicateModules)\n * @param value Current Module\n * @param index Current Module's index\n * @param array Module Array\n * @returns True if the Module's address is the first occurrence of\n * that address in the array, false otherwise\n */\nexport const duplicateModules = (value: Module, index: number, array: Module[]): value is Module => {\n return array.findIndex((v) => v.address === value.address) === index\n}\n","// Inspired by https://stackoverflow.com/a/49079549/2803259\n\nimport { every, isArray, isBoolean, isNull, isNumber, isPlainObject, isString, isUndefined, overSome } from '@xylabs/lodash'\n\nconst JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString]\nconst JSONComplexChecks = [isPlainObject, isArray]\n\nexport const serializable = (field: unknown, depth?: number): boolean | null => {\n let depthExceeded = false\n const decrementDepth = () => (depth ? depth-- : undefined)\n\n const recursiveSerializable = (field: unknown) => {\n if (depth !== undefined && depth < 1) {\n depthExceeded = true\n return false\n }\n\n // decrement during every recursion\n decrementDepth()\n\n const nestedSerializable = (field: unknown): boolean => overSome(JSONComplexChecks)(field) && every(field as object, recursiveSerializable)\n\n return overSome([...JSONPrimitiveChecks, nestedSerializable])(field)\n }\n\n const valid = recursiveSerializable(field)\n\n return depthExceeded ? null : valid\n}\n\nexport const serializableField = (field: unknown) => {\n return overSome([...JSONPrimitiveChecks, ...JSONComplexChecks])(field)\n}\n"],"mappings":";AAWO,IAAM,mBAAmB,CAAC,OAAe,OAAe,UAAqC;AAClG,SAAO,MAAM,UAAU,CAAC,MAAM,EAAE,YAAY,MAAM,OAAO,MAAM;AACjE;;;ACXA,SAAS,OAAO,SAAS,WAAW,QAAQ,UAAU,eAAe,UAAU,aAAa,gBAAgB;AAE5G,IAAM,sBAAsB,CAAC,aAAa,QAAQ,WAAW,UAAU,QAAQ;AAC/E,IAAM,oBAAoB,CAAC,eAAe,OAAO;AAE1C,IAAM,eAAe,CAAC,OAAgB,UAAmC;AAC9E,MAAI,gBAAgB;AACpB,QAAM,iBAAiB,MAAO,QAAQ,UAAU;AAEhD,QAAM,wBAAwB,CAACA,WAAmB;AAChD,QAAI,UAAU,UAAa,QAAQ,GAAG;AACpC,sBAAgB;AAChB,aAAO;AAAA,IACT;AAGA,mBAAe;AAEf,UAAM,qBAAqB,CAACA,WAA4B,SAAS,iBAAiB,EAAEA,MAAK,KAAK,MAAMA,QAAiB,qBAAqB;AAE1I,WAAO,SAAS,CAAC,GAAG,qBAAqB,kBAAkB,CAAC,EAAEA,MAAK;AAAA,EACrE;AAEA,QAAM,QAAQ,sBAAsB,KAAK;AAEzC,SAAO,gBAAgB,OAAO;AAChC;AAEO,IAAM,oBAAoB,CAAC,UAAmB;AACnD,SAAO,SAAS,CAAC,GAAG,qBAAqB,GAAG,iBAAiB,CAAC,EAAE,KAAK;AACvE;","names":["field"]}
@@ -0,0 +1,3 @@
1
+ export declare const serializable: (field: unknown, depth?: number) => boolean | null;
2
+ export declare const serializableField: (field: unknown) => boolean;
3
+ //# sourceMappingURL=serializable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializable.d.ts","sourceRoot":"","sources":["../../../src/lib/serializable.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,YAAY,UAAW,OAAO,UAAU,MAAM,KAAG,OAAO,GAAG,IAqBvE,CAAA;AAED,eAAO,MAAM,iBAAiB,UAAW,OAAO,YAE/C,CAAA"}
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/serializable.ts
19
21
  var serializable_exports = {};
20
22
  __export(serializable_exports, {
21
23
  serializable: () => serializable,
@@ -23,9 +25,9 @@ __export(serializable_exports, {
23
25
  });
24
26
  module.exports = __toCommonJS(serializable_exports);
25
27
  var import_lodash = require("@xylabs/lodash");
26
- const JSONPrimitiveChecks = [import_lodash.isUndefined, import_lodash.isNull, import_lodash.isBoolean, import_lodash.isNumber, import_lodash.isString];
27
- const JSONComplexChecks = [import_lodash.isPlainObject, import_lodash.isArray];
28
- const serializable = (field, depth) => {
28
+ var JSONPrimitiveChecks = [import_lodash.isUndefined, import_lodash.isNull, import_lodash.isBoolean, import_lodash.isNumber, import_lodash.isString];
29
+ var JSONComplexChecks = [import_lodash.isPlainObject, import_lodash.isArray];
30
+ var serializable = (field, depth) => {
29
31
  let depthExceeded = false;
30
32
  const decrementDepth = () => depth ? depth-- : void 0;
31
33
  const recursiveSerializable = (field2) => {
@@ -40,7 +42,7 @@ const serializable = (field, depth) => {
40
42
  const valid = recursiveSerializable(field);
41
43
  return depthExceeded ? null : valid;
42
44
  };
43
- const serializableField = (field) => {
45
+ var serializableField = (field) => {
44
46
  return (0, import_lodash.overSome)([...JSONPrimitiveChecks, ...JSONComplexChecks])(field);
45
47
  };
46
48
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/serializable.ts"],"sourcesContent":["// Inspired by https://stackoverflow.com/a/49079549/2803259\n\nimport { every, isArray, isBoolean, isNull, isNumber, isPlainObject, isString, isUndefined, overSome } from '@xylabs/lodash'\n\nconst JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString]\nconst JSONComplexChecks = [isPlainObject, isArray]\n\nexport const serializable = (field: unknown, depth?: number): boolean | null => {\n let depthExceeded = false\n const decrementDepth = () => (depth ? depth-- : undefined)\n\n const recursiveSerializable = (field: unknown) => {\n if (depth !== undefined && depth < 1) {\n depthExceeded = true\n return false\n }\n\n // decrement during every recursion\n decrementDepth()\n\n const nestedSerializable = (field: unknown): boolean => overSome(JSONComplexChecks)(field) && every(field as object, recursiveSerializable)\n\n return overSome([...JSONPrimitiveChecks, nestedSerializable])(field)\n }\n\n const valid = recursiveSerializable(field)\n\n return depthExceeded ? null : valid\n}\n\nexport const serializableField = (field: unknown) => {\n return overSome([...JSONPrimitiveChecks, ...JSONComplexChecks])(field)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAA4G;AAE5G,MAAM,sBAAsB,CAAC,2BAAa,sBAAQ,yBAAW,wBAAU,sBAAQ;AAC/E,MAAM,oBAAoB,CAAC,6BAAe,qBAAO;AAE1C,MAAM,eAAe,CAAC,OAAgB,UAAmC;AAC9E,MAAI,gBAAgB;AACpB,QAAM,iBAAiB,MAAO,QAAQ,UAAU;AAEhD,QAAM,wBAAwB,CAACA,WAAmB;AAChD,QAAI,UAAU,UAAa,QAAQ,GAAG;AACpC,sBAAgB;AAChB,aAAO;AAAA,IACT;AAGA,mBAAe;AAEf,UAAM,qBAAqB,CAACA,eAA4B,wBAAS,iBAAiB,EAAEA,MAAK,SAAK,qBAAMA,QAAiB,qBAAqB;AAE1I,eAAO,wBAAS,CAAC,GAAG,qBAAqB,kBAAkB,CAAC,EAAEA,MAAK;AAAA,EACrE;AAEA,QAAM,QAAQ,sBAAsB,KAAK;AAEzC,SAAO,gBAAgB,OAAO;AAChC;AAEO,MAAM,oBAAoB,CAAC,UAAmB;AACnD,aAAO,wBAAS,CAAC,GAAG,qBAAqB,GAAG,iBAAiB,CAAC,EAAE,KAAK;AACvE;","names":["field"]}
1
+ {"version":3,"sources":["../../../src/lib/serializable.ts"],"sourcesContent":["// Inspired by https://stackoverflow.com/a/49079549/2803259\n\nimport { every, isArray, isBoolean, isNull, isNumber, isPlainObject, isString, isUndefined, overSome } from '@xylabs/lodash'\n\nconst JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString]\nconst JSONComplexChecks = [isPlainObject, isArray]\n\nexport const serializable = (field: unknown, depth?: number): boolean | null => {\n let depthExceeded = false\n const decrementDepth = () => (depth ? depth-- : undefined)\n\n const recursiveSerializable = (field: unknown) => {\n if (depth !== undefined && depth < 1) {\n depthExceeded = true\n return false\n }\n\n // decrement during every recursion\n decrementDepth()\n\n const nestedSerializable = (field: unknown): boolean => overSome(JSONComplexChecks)(field) && every(field as object, recursiveSerializable)\n\n return overSome([...JSONPrimitiveChecks, nestedSerializable])(field)\n }\n\n const valid = recursiveSerializable(field)\n\n return depthExceeded ? null : valid\n}\n\nexport const serializableField = (field: unknown) => {\n return overSome([...JSONPrimitiveChecks, ...JSONComplexChecks])(field)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAA4G;AAE5G,IAAM,sBAAsB,CAAC,2BAAa,sBAAQ,yBAAW,wBAAU,sBAAQ;AAC/E,IAAM,oBAAoB,CAAC,6BAAe,qBAAO;AAE1C,IAAM,eAAe,CAAC,OAAgB,UAAmC;AAC9E,MAAI,gBAAgB;AACpB,QAAM,iBAAiB,MAAO,QAAQ,UAAU;AAEhD,QAAM,wBAAwB,CAACA,WAAmB;AAChD,QAAI,UAAU,UAAa,QAAQ,GAAG;AACpC,sBAAgB;AAChB,aAAO;AAAA,IACT;AAGA,mBAAe;AAEf,UAAM,qBAAqB,CAACA,eAA4B,wBAAS,iBAAiB,EAAEA,MAAK,SAAK,qBAAMA,QAAiB,qBAAqB;AAE1I,eAAO,wBAAS,CAAC,GAAG,qBAAqB,kBAAkB,CAAC,EAAEA,MAAK;AAAA,EACrE;AAEA,QAAM,QAAQ,sBAAsB,KAAK;AAEzC,SAAO,gBAAgB,OAAO;AAChC;AAEO,IAAM,oBAAoB,CAAC,UAAmB;AACnD,aAAO,wBAAS,CAAC,GAAG,qBAAqB,GAAG,iBAAiB,CAAC,EAAE,KAAK;AACvE;","names":["field"]}
@@ -1,7 +1,8 @@
1
+ // src/lib/serializable.ts
1
2
  import { every, isArray, isBoolean, isNull, isNumber, isPlainObject, isString, isUndefined, overSome } from "@xylabs/lodash";
2
- const JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString];
3
- const JSONComplexChecks = [isPlainObject, isArray];
4
- const serializable = (field, depth) => {
3
+ var JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString];
4
+ var JSONComplexChecks = [isPlainObject, isArray];
5
+ var serializable = (field, depth) => {
5
6
  let depthExceeded = false;
6
7
  const decrementDepth = () => depth ? depth-- : void 0;
7
8
  const recursiveSerializable = (field2) => {
@@ -16,7 +17,7 @@ const serializable = (field, depth) => {
16
17
  const valid = recursiveSerializable(field);
17
18
  return depthExceeded ? null : valid;
18
19
  };
19
- const serializableField = (field) => {
20
+ var serializableField = (field) => {
20
21
  return overSome([...JSONPrimitiveChecks, ...JSONComplexChecks])(field);
21
22
  };
22
23
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/serializable.ts"],"sourcesContent":["// Inspired by https://stackoverflow.com/a/49079549/2803259\n\nimport { every, isArray, isBoolean, isNull, isNumber, isPlainObject, isString, isUndefined, overSome } from '@xylabs/lodash'\n\nconst JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString]\nconst JSONComplexChecks = [isPlainObject, isArray]\n\nexport const serializable = (field: unknown, depth?: number): boolean | null => {\n let depthExceeded = false\n const decrementDepth = () => (depth ? depth-- : undefined)\n\n const recursiveSerializable = (field: unknown) => {\n if (depth !== undefined && depth < 1) {\n depthExceeded = true\n return false\n }\n\n // decrement during every recursion\n decrementDepth()\n\n const nestedSerializable = (field: unknown): boolean => overSome(JSONComplexChecks)(field) && every(field as object, recursiveSerializable)\n\n return overSome([...JSONPrimitiveChecks, nestedSerializable])(field)\n }\n\n const valid = recursiveSerializable(field)\n\n return depthExceeded ? null : valid\n}\n\nexport const serializableField = (field: unknown) => {\n return overSome([...JSONPrimitiveChecks, ...JSONComplexChecks])(field)\n}\n"],"mappings":"AAEA,SAAS,OAAO,SAAS,WAAW,QAAQ,UAAU,eAAe,UAAU,aAAa,gBAAgB;AAE5G,MAAM,sBAAsB,CAAC,aAAa,QAAQ,WAAW,UAAU,QAAQ;AAC/E,MAAM,oBAAoB,CAAC,eAAe,OAAO;AAE1C,MAAM,eAAe,CAAC,OAAgB,UAAmC;AAC9E,MAAI,gBAAgB;AACpB,QAAM,iBAAiB,MAAO,QAAQ,UAAU;AAEhD,QAAM,wBAAwB,CAACA,WAAmB;AAChD,QAAI,UAAU,UAAa,QAAQ,GAAG;AACpC,sBAAgB;AAChB,aAAO;AAAA,IACT;AAGA,mBAAe;AAEf,UAAM,qBAAqB,CAACA,WAA4B,SAAS,iBAAiB,EAAEA,MAAK,KAAK,MAAMA,QAAiB,qBAAqB;AAE1I,WAAO,SAAS,CAAC,GAAG,qBAAqB,kBAAkB,CAAC,EAAEA,MAAK;AAAA,EACrE;AAEA,QAAM,QAAQ,sBAAsB,KAAK;AAEzC,SAAO,gBAAgB,OAAO;AAChC;AAEO,MAAM,oBAAoB,CAAC,UAAmB;AACnD,SAAO,SAAS,CAAC,GAAG,qBAAqB,GAAG,iBAAiB,CAAC,EAAE,KAAK;AACvE;","names":["field"]}
1
+ {"version":3,"sources":["../../../src/lib/serializable.ts"],"sourcesContent":["// Inspired by https://stackoverflow.com/a/49079549/2803259\n\nimport { every, isArray, isBoolean, isNull, isNumber, isPlainObject, isString, isUndefined, overSome } from '@xylabs/lodash'\n\nconst JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString]\nconst JSONComplexChecks = [isPlainObject, isArray]\n\nexport const serializable = (field: unknown, depth?: number): boolean | null => {\n let depthExceeded = false\n const decrementDepth = () => (depth ? depth-- : undefined)\n\n const recursiveSerializable = (field: unknown) => {\n if (depth !== undefined && depth < 1) {\n depthExceeded = true\n return false\n }\n\n // decrement during every recursion\n decrementDepth()\n\n const nestedSerializable = (field: unknown): boolean => overSome(JSONComplexChecks)(field) && every(field as object, recursiveSerializable)\n\n return overSome([...JSONPrimitiveChecks, nestedSerializable])(field)\n }\n\n const valid = recursiveSerializable(field)\n\n return depthExceeded ? null : valid\n}\n\nexport const serializableField = (field: unknown) => {\n return overSome([...JSONPrimitiveChecks, ...JSONComplexChecks])(field)\n}\n"],"mappings":";AAEA,SAAS,OAAO,SAAS,WAAW,QAAQ,UAAU,eAAe,UAAU,aAAa,gBAAgB;AAE5G,IAAM,sBAAsB,CAAC,aAAa,QAAQ,WAAW,UAAU,QAAQ;AAC/E,IAAM,oBAAoB,CAAC,eAAe,OAAO;AAE1C,IAAM,eAAe,CAAC,OAAgB,UAAmC;AAC9E,MAAI,gBAAgB;AACpB,QAAM,iBAAiB,MAAO,QAAQ,UAAU;AAEhD,QAAM,wBAAwB,CAACA,WAAmB;AAChD,QAAI,UAAU,UAAa,QAAQ,GAAG;AACpC,sBAAgB;AAChB,aAAO;AAAA,IACT;AAGA,mBAAe;AAEf,UAAM,qBAAqB,CAACA,WAA4B,SAAS,iBAAiB,EAAEA,MAAK,KAAK,MAAMA,QAAiB,qBAAqB;AAE1I,WAAO,SAAS,CAAC,GAAG,qBAAqB,kBAAkB,CAAC,EAAEA,MAAK;AAAA,EACrE;AAEA,QAAM,QAAQ,sBAAsB,KAAK;AAEzC,SAAO,gBAAgB,OAAO;AAChC;AAEO,IAAM,oBAAoB,CAAC,UAAmB;AACnD,SAAO,SAAS,CAAC,GAAG,qBAAqB,GAAG,iBAAiB,CAAC,EAAE,KAAK;AACvE;","names":["field"]}
@@ -0,0 +1,7 @@
1
+ import { ObjectTypeCheck } from '@xyo-network/object';
2
+ import { Module } from './Module';
3
+ export type ModuleTypeCheck<T extends Module = Module> = ObjectTypeCheck<T>;
4
+ export declare class IsModuleFactory<T extends Module = Module> {
5
+ create(expectedQueries?: string[], additionalChecks?: ObjectTypeCheck[]): ModuleTypeCheck<T>;
6
+ }
7
+ //# sourceMappingURL=IsModuleFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsModuleFactory.d.ts","sourceRoot":"","sources":["../../../src/module/IsModuleFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAIrD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,eAAe,CAAC,CAAC,CAAC,CAAA;AAE3E,qBAAa,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACpD,MAAM,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,gBAAgB,CAAC,EAAE,eAAe,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC;CAW7F"}
@@ -16,23 +16,44 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/module/IsModuleFactory.ts
19
21
  var IsModuleFactory_exports = {};
20
22
  __export(IsModuleFactory_exports, {
21
23
  IsModuleFactory: () => IsModuleFactory
22
24
  });
23
25
  module.exports = __toCommonJS(IsModuleFactory_exports);
24
- var import_asModuleObject = require("./asModuleObject");
25
- var import_isModuleObject = require("./isModuleObject");
26
- class IsModuleFactory {
26
+
27
+ // src/module/asModuleObject.ts
28
+ var import_object2 = require("@xyo-network/object");
29
+
30
+ // src/module/isModuleObject.ts
31
+ var import_object = require("@xyo-network/object");
32
+ var requiredModuleFunctions = {
33
+ address: "string",
34
+ config: "object",
35
+ params: "object",
36
+ queries: "array",
37
+ query: "function",
38
+ queryable: "function"
39
+ };
40
+ var factory = new import_object.IsObjectFactory();
41
+ var isModuleObject = factory.create(requiredModuleFunctions);
42
+
43
+ // src/module/asModuleObject.ts
44
+ var asModuleObject = import_object2.AsObjectFactory.create(isModuleObject);
45
+
46
+ // src/module/IsModuleFactory.ts
47
+ var IsModuleFactory = class {
27
48
  create(expectedQueries, additionalChecks) {
28
49
  return (obj, config) => {
29
- const module2 = (0, import_asModuleObject.asModuleObject)(obj);
30
- const result = (0, import_isModuleObject.isModuleObject)(module2, config) && (expectedQueries?.reduce((prev, query) => prev && obj.queries.includes(query), true) ?? true) && //perform additional checks
31
- (additionalChecks?.reduce((prev, check) => prev && check(obj, config), true) ?? true);
50
+ const module2 = asModuleObject(obj);
51
+ const result = isModuleObject(module2, config) && ((expectedQueries == null ? void 0 : expectedQueries.reduce((prev, query) => prev && obj.queries.includes(query), true)) ?? true) && //perform additional checks
52
+ ((additionalChecks == null ? void 0 : additionalChecks.reduce((prev, check) => prev && check(obj, config), true)) ?? true);
32
53
  return result;
33
54
  };
34
55
  }
35
- }
56
+ };
36
57
  // Annotate the CommonJS export names for ESM import in node:
37
58
  0 && (module.exports = {
38
59
  IsModuleFactory
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/module/IsModuleFactory.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { ObjectTypeCheck } from '@xyo-network/object'\n\nimport { asModuleObject } from './asModuleObject'\nimport { isModuleObject } from './isModuleObject'\nimport { Module } from './Module'\n\nexport type ModuleTypeCheck<T extends Module = Module> = ObjectTypeCheck<T>\n\nexport class IsModuleFactory<T extends Module = Module> {\n create(expectedQueries?: string[], additionalChecks?: ObjectTypeCheck[]): ModuleTypeCheck<T> {\n return (obj: any, config): obj is T => {\n const module = asModuleObject(obj)\n const result =\n isModuleObject(module, config) &&\n (expectedQueries?.reduce((prev, query) => prev && obj.queries.includes(query), true) ?? true) &&\n //perform additional checks\n (additionalChecks?.reduce((prev, check) => prev && check(obj, config), true) ?? true)\n return result\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,4BAA+B;AAC/B,4BAA+B;AAKxB,MAAM,gBAA2C;AAAA,EACtD,OAAO,iBAA4B,kBAA0D;AAC3F,WAAO,CAAC,KAAU,WAAqB;AACrC,YAAMA,cAAS,sCAAe,GAAG;AACjC,YAAM,aACJ,sCAAeA,SAAQ,MAAM,MAC5B,iBAAiB,OAAO,CAAC,MAAM,UAAU,QAAQ,IAAI,QAAQ,SAAS,KAAK,GAAG,IAAI,KAAK;AAAA,OAEvF,kBAAkB,OAAO,CAAC,MAAM,UAAU,QAAQ,MAAM,KAAK,MAAM,GAAG,IAAI,KAAK;AAClF,aAAO;AAAA,IACT;AAAA,EACF;AACF;","names":["module"]}
1
+ {"version":3,"sources":["../../../src/module/IsModuleFactory.ts","../../../src/module/asModuleObject.ts","../../../src/module/isModuleObject.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { ObjectTypeCheck } from '@xyo-network/object'\n\nimport { asModuleObject } from './asModuleObject'\nimport { isModuleObject } from './isModuleObject'\nimport { Module } from './Module'\n\nexport type ModuleTypeCheck<T extends Module = Module> = ObjectTypeCheck<T>\n\nexport class IsModuleFactory<T extends Module = Module> {\n create(expectedQueries?: string[], additionalChecks?: ObjectTypeCheck[]): ModuleTypeCheck<T> {\n return (obj: any, config): obj is T => {\n const module = asModuleObject(obj)\n const result =\n isModuleObject(module, config) &&\n (expectedQueries?.reduce((prev, query) => prev && obj.queries.includes(query), true) ?? true) &&\n //perform additional checks\n (additionalChecks?.reduce((prev, check) => prev && check(obj, config), true) ?? true)\n return result\n }\n }\n}\n","import { AsObjectFactory } from '@xyo-network/object'\n\nimport { isModuleObject } from './isModuleObject'\n\nexport const asModuleObject = AsObjectFactory.create(isModuleObject)\n","import { IsObjectFactory, ObjectTypeCheck, ObjectTypeShape } from '@xyo-network/object'\n\nimport { Module } from './Module'\n\nexport const requiredModuleFunctions: ObjectTypeShape = {\n address: 'string',\n config: 'object',\n params: 'object',\n queries: 'array',\n query: 'function',\n queryable: 'function',\n}\n\nconst factory = new IsObjectFactory<Module>()\n\nexport const isModuleObject: ObjectTypeCheck<Module> = factory.create(requiredModuleFunctions)\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,IAAAA,iBAAgC;;;ACAhC,oBAAkE;AAI3D,IAAM,0BAA2C;AAAA,EACtD,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,OAAO;AAAA,EACP,WAAW;AACb;AAEA,IAAM,UAAU,IAAI,8BAAwB;AAErC,IAAM,iBAA0C,QAAQ,OAAO,uBAAuB;;;ADXtF,IAAM,iBAAiB,+BAAgB,OAAO,cAAc;;;ADK5D,IAAM,kBAAN,MAAiD;AAAA,EACtD,OAAO,iBAA4B,kBAA0D;AAC3F,WAAO,CAAC,KAAU,WAAqB;AACrC,YAAMC,UAAS,eAAe,GAAG;AACjC,YAAM,SACJ,eAAeA,SAAQ,MAAM,OAC5B,mDAAiB,OAAO,CAAC,MAAM,UAAU,QAAQ,IAAI,QAAQ,SAAS,KAAK,GAAG,UAAS;AAAA,QAEvF,qDAAkB,OAAO,CAAC,MAAM,UAAU,QAAQ,MAAM,KAAK,MAAM,GAAG,UAAS;AAClF,aAAO;AAAA,IACT;AAAA,EACF;AACF;","names":["import_object","module"]}
@@ -1,15 +1,33 @@
1
- import { asModuleObject } from "./asModuleObject";
2
- import { isModuleObject } from "./isModuleObject";
3
- class IsModuleFactory {
1
+ // src/module/asModuleObject.ts
2
+ import { AsObjectFactory } from "@xyo-network/object";
3
+
4
+ // src/module/isModuleObject.ts
5
+ import { IsObjectFactory } from "@xyo-network/object";
6
+ var requiredModuleFunctions = {
7
+ address: "string",
8
+ config: "object",
9
+ params: "object",
10
+ queries: "array",
11
+ query: "function",
12
+ queryable: "function"
13
+ };
14
+ var factory = new IsObjectFactory();
15
+ var isModuleObject = factory.create(requiredModuleFunctions);
16
+
17
+ // src/module/asModuleObject.ts
18
+ var asModuleObject = AsObjectFactory.create(isModuleObject);
19
+
20
+ // src/module/IsModuleFactory.ts
21
+ var IsModuleFactory = class {
4
22
  create(expectedQueries, additionalChecks) {
5
23
  return (obj, config) => {
6
24
  const module = asModuleObject(obj);
7
- const result = isModuleObject(module, config) && (expectedQueries?.reduce((prev, query) => prev && obj.queries.includes(query), true) ?? true) && //perform additional checks
8
- (additionalChecks?.reduce((prev, check) => prev && check(obj, config), true) ?? true);
25
+ const result = isModuleObject(module, config) && ((expectedQueries == null ? void 0 : expectedQueries.reduce((prev, query) => prev && obj.queries.includes(query), true)) ?? true) && //perform additional checks
26
+ ((additionalChecks == null ? void 0 : additionalChecks.reduce((prev, check) => prev && check(obj, config), true)) ?? true);
9
27
  return result;
10
28
  };
11
29
  }
12
- }
30
+ };
13
31
  export {
14
32
  IsModuleFactory
15
33
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/module/IsModuleFactory.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { ObjectTypeCheck } from '@xyo-network/object'\n\nimport { asModuleObject } from './asModuleObject'\nimport { isModuleObject } from './isModuleObject'\nimport { Module } from './Module'\n\nexport type ModuleTypeCheck<T extends Module = Module> = ObjectTypeCheck<T>\n\nexport class IsModuleFactory<T extends Module = Module> {\n create(expectedQueries?: string[], additionalChecks?: ObjectTypeCheck[]): ModuleTypeCheck<T> {\n return (obj: any, config): obj is T => {\n const module = asModuleObject(obj)\n const result =\n isModuleObject(module, config) &&\n (expectedQueries?.reduce((prev, query) => prev && obj.queries.includes(query), true) ?? true) &&\n //perform additional checks\n (additionalChecks?.reduce((prev, check) => prev && check(obj, config), true) ?? true)\n return result\n }\n }\n}\n"],"mappings":"AAGA,SAAS,sBAAsB;AAC/B,SAAS,sBAAsB;AAKxB,MAAM,gBAA2C;AAAA,EACtD,OAAO,iBAA4B,kBAA0D;AAC3F,WAAO,CAAC,KAAU,WAAqB;AACrC,YAAM,SAAS,eAAe,GAAG;AACjC,YAAM,SACJ,eAAe,QAAQ,MAAM,MAC5B,iBAAiB,OAAO,CAAC,MAAM,UAAU,QAAQ,IAAI,QAAQ,SAAS,KAAK,GAAG,IAAI,KAAK;AAAA,OAEvF,kBAAkB,OAAO,CAAC,MAAM,UAAU,QAAQ,MAAM,KAAK,MAAM,GAAG,IAAI,KAAK;AAClF,aAAO;AAAA,IACT;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/module/asModuleObject.ts","../../../src/module/isModuleObject.ts","../../../src/module/IsModuleFactory.ts"],"sourcesContent":["import { AsObjectFactory } from '@xyo-network/object'\n\nimport { isModuleObject } from './isModuleObject'\n\nexport const asModuleObject = AsObjectFactory.create(isModuleObject)\n","import { IsObjectFactory, ObjectTypeCheck, ObjectTypeShape } from '@xyo-network/object'\n\nimport { Module } from './Module'\n\nexport const requiredModuleFunctions: ObjectTypeShape = {\n address: 'string',\n config: 'object',\n params: 'object',\n queries: 'array',\n query: 'function',\n queryable: 'function',\n}\n\nconst factory = new IsObjectFactory<Module>()\n\nexport const isModuleObject: ObjectTypeCheck<Module> = factory.create(requiredModuleFunctions)\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { ObjectTypeCheck } from '@xyo-network/object'\n\nimport { asModuleObject } from './asModuleObject'\nimport { isModuleObject } from './isModuleObject'\nimport { Module } from './Module'\n\nexport type ModuleTypeCheck<T extends Module = Module> = ObjectTypeCheck<T>\n\nexport class IsModuleFactory<T extends Module = Module> {\n create(expectedQueries?: string[], additionalChecks?: ObjectTypeCheck[]): ModuleTypeCheck<T> {\n return (obj: any, config): obj is T => {\n const module = asModuleObject(obj)\n const result =\n isModuleObject(module, config) &&\n (expectedQueries?.reduce((prev, query) => prev && obj.queries.includes(query), true) ?? true) &&\n //perform additional checks\n (additionalChecks?.reduce((prev, check) => prev && check(obj, config), true) ?? true)\n return result\n }\n }\n}\n"],"mappings":";AAAA,SAAS,uBAAuB;;;ACAhC,SAAS,uBAAyD;AAI3D,IAAM,0BAA2C;AAAA,EACtD,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,OAAO;AAAA,EACP,WAAW;AACb;AAEA,IAAM,UAAU,IAAI,gBAAwB;AAErC,IAAM,iBAA0C,QAAQ,OAAO,uBAAuB;;;ADXtF,IAAM,iBAAiB,gBAAgB,OAAO,cAAc;;;AEK5D,IAAM,kBAAN,MAAiD;AAAA,EACtD,OAAO,iBAA4B,kBAA0D;AAC3F,WAAO,CAAC,KAAU,WAAqB;AACrC,YAAM,SAAS,eAAe,GAAG;AACjC,YAAM,SACJ,eAAe,QAAQ,MAAM,OAC5B,mDAAiB,OAAO,CAAC,MAAM,UAAU,QAAQ,IAAI,QAAQ,SAAS,KAAK,GAAG,UAAS;AAAA,QAEvF,qDAAkB,OAAO,CAAC,MAAM,UAAU,QAAQ,MAAM,KAAK,MAAM,GAAG,UAAS;AAClF,aAAO;AAAA,IACT;AAAA,EACF;AACF;","names":[]}
@@ -0,0 +1,6 @@
1
+ import { EventFunctions } from '@xyo-network/module-events';
2
+ import { ModuleEventData } from '../EventsModels';
3
+ import { ModuleParams } from '../ModuleParams';
4
+ import { ModuleFields } from './ModuleFields';
5
+ export type Module<TParams extends ModuleParams = ModuleParams, TEventData extends ModuleEventData<object> = ModuleEventData<object>> = ModuleFields<TParams> & EventFunctions<TEventData>;
6
+ //# sourceMappingURL=Module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Module.d.ts","sourceRoot":"","sources":["../../../src/module/Module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,MAAM,MAAM,MAAM,CAChB,OAAO,SAAS,YAAY,GAAG,YAAY,EAC3C,UAAU,SAAS,eAAe,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,IAClE,YAAY,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,CAAA"}
@@ -12,6 +12,8 @@ var __copyProps = (to, from, except, desc) => {
12
12
  return to;
13
13
  };
14
14
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // src/module/Module.ts
15
17
  var Module_exports = {};
16
18
  module.exports = __toCommonJS(Module_exports);
17
19
  //# sourceMappingURL=Module.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/module/Module.ts"],"sourcesContent":["import { EventFunctions } from '@xyo-network/module-events'\n\nimport { ModuleEventData } from '../EventsModels'\nimport { ModuleParams } from '../ModuleParams'\nimport { ModuleFields } from './ModuleFields'\n\nexport type Module<\n TParams extends ModuleParams = ModuleParams,\n TEventData extends ModuleEventData<object> = ModuleEventData<object>,\n> = ModuleFields<TParams> & EventFunctions<TEventData>\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../../src/module/Module.ts"],"sourcesContent":["import { EventFunctions } from '@xyo-network/module-events'\n\nimport { ModuleEventData } from '../EventsModels'\nimport { ModuleParams } from '../ModuleParams'\nimport { ModuleFields } from './ModuleFields'\n\nexport type Module<\n TParams extends ModuleParams = ModuleParams,\n TEventData extends ModuleEventData<object> = ModuleEventData<object>,\n> = ModuleFields<TParams> & EventFunctions<TEventData>\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1,18 @@
1
+ import { QueryBoundWitness } from '@xyo-network/boundwitness-builder';
2
+ import { Payload } from '@xyo-network/payload-model';
3
+ import { Promisable } from '@xyo-network/promise';
4
+ import { ModuleConfig } from '../Config';
5
+ import { ModuleParams } from '../ModuleParams';
6
+ import { ModuleQueryResult } from '../ModuleQueryResult';
7
+ export type ModuleFields<TParams extends ModuleParams = ModuleParams> = {
8
+ address: string;
9
+ config: TParams['config'];
10
+ params: TParams;
11
+ previousHash: () => Promisable<string | undefined>;
12
+ queries: string[];
13
+ query: <T extends QueryBoundWitness = QueryBoundWitness, TConf extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConf) => Promisable<ModuleQueryResult>;
14
+ queryable: <T extends QueryBoundWitness = QueryBoundWitness, TConf extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConf) => Promisable<boolean>;
15
+ start?: () => Promisable<boolean>;
16
+ stop?: () => Promisable<boolean>;
17
+ };
18
+ //# sourceMappingURL=ModuleFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModuleFields.d.ts","sourceRoot":"","sources":["../../../src/module/ModuleFields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,YAAY,GAAG,YAAY,IAAI;IACtE,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;IAEzB,MAAM,EAAE,OAAO,CAAA;IAEf,YAAY,EAAE,MAAM,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAElD,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,KAAK,EAAE,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB,EAAE,KAAK,SAAS,YAAY,GAAG,YAAY,EAChG,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,OAAO,EAAE,EACpB,WAAW,CAAC,EAAE,KAAK,KAChB,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAClC,SAAS,EAAE,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB,EAAE,KAAK,SAAS,YAAY,GAAG,YAAY,EACpG,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,OAAO,EAAE,EACpB,WAAW,CAAC,EAAE,KAAK,KAChB,UAAU,CAAC,OAAO,CAAC,CAAA;IAExB,KAAK,CAAC,EAAE,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;IACjC,IAAI,CAAC,EAAE,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;CACjC,CAAA"}
@@ -12,6 +12,8 @@ var __copyProps = (to, from, except, desc) => {
12
12
  return to;
13
13
  };
14
14
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // src/module/ModuleFields.ts
15
17
  var ModuleFields_exports = {};
16
18
  module.exports = __toCommonJS(ModuleFields_exports);
17
19
  //# sourceMappingURL=ModuleFields.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/module/ModuleFields.ts"],"sourcesContent":["import { QueryBoundWitness } from '@xyo-network/boundwitness-builder'\nimport { Payload } from '@xyo-network/payload-model'\nimport { Promisable } from '@xyo-network/promise'\n\nimport { ModuleConfig } from '../Config'\nimport { ModuleParams } from '../ModuleParams'\nimport { ModuleQueryResult } from '../ModuleQueryResult'\n\nexport type ModuleFields<TParams extends ModuleParams = ModuleParams> = {\n address: string\n config: TParams['config']\n\n params: TParams\n\n previousHash: () => Promisable<string | undefined>\n\n queries: string[]\n query: <T extends QueryBoundWitness = QueryBoundWitness, TConf extends ModuleConfig = ModuleConfig>(\n query: T,\n payloads?: Payload[],\n queryConfig?: TConf,\n ) => Promisable<ModuleQueryResult>\n queryable: <T extends QueryBoundWitness = QueryBoundWitness, TConf extends ModuleConfig = ModuleConfig>(\n query: T,\n payloads?: Payload[],\n queryConfig?: TConf,\n ) => Promisable<boolean>\n\n start?: () => Promisable<boolean>\n stop?: () => Promisable<boolean>\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../../src/module/ModuleFields.ts"],"sourcesContent":["import { QueryBoundWitness } from '@xyo-network/boundwitness-builder'\nimport { Payload } from '@xyo-network/payload-model'\nimport { Promisable } from '@xyo-network/promise'\n\nimport { ModuleConfig } from '../Config'\nimport { ModuleParams } from '../ModuleParams'\nimport { ModuleQueryResult } from '../ModuleQueryResult'\n\nexport type ModuleFields<TParams extends ModuleParams = ModuleParams> = {\n address: string\n config: TParams['config']\n\n params: TParams\n\n previousHash: () => Promisable<string | undefined>\n\n queries: string[]\n query: <T extends QueryBoundWitness = QueryBoundWitness, TConf extends ModuleConfig = ModuleConfig>(\n query: T,\n payloads?: Payload[],\n queryConfig?: TConf,\n ) => Promisable<ModuleQueryResult>\n queryable: <T extends QueryBoundWitness = QueryBoundWitness, TConf extends ModuleConfig = ModuleConfig>(\n query: T,\n payloads?: Payload[],\n queryConfig?: TConf,\n ) => Promisable<boolean>\n\n start?: () => Promisable<boolean>\n stop?: () => Promisable<boolean>\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1,12 @@
1
+ import { ModuleManifestPayload } from '@xyo-network/manifest-model';
2
+ import { Payload } from '@xyo-network/payload-model';
3
+ import { Promisable } from '@xyo-network/promise';
4
+ import { ModuleDescription } from '../ModuleDescription';
5
+ import { AddressPreviousHashPayload } from '../Queries';
6
+ export type ModuleQueryFunctions = {
7
+ describe: () => Promise<ModuleDescription>;
8
+ discover: () => Promisable<Payload[]>;
9
+ manifest: (ignoreAddresses?: string[]) => Promisable<ModuleManifestPayload>;
10
+ moduleAddress: () => Promisable<AddressPreviousHashPayload[]>;
11
+ };
12
+ //# sourceMappingURL=ModuleQueryFunctions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModuleQueryFunctions.d.ts","sourceRoot":"","sources":["../../../src/module/ModuleQueryFunctions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA;AAEvD,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC1C,QAAQ,EAAE,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC,CAAA;IACrC,QAAQ,EAAE,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,KAAK,UAAU,CAAC,qBAAqB,CAAC,CAAA;IAC3E,aAAa,EAAE,MAAM,UAAU,CAAC,0BAA0B,EAAE,CAAC,CAAA;CAC9D,CAAA"}
@@ -12,6 +12,8 @@ var __copyProps = (to, from, except, desc) => {
12
12
  return to;
13
13
  };
14
14
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // src/module/ModuleQueryFunctions.ts
15
17
  var ModuleQueryFunctions_exports = {};
16
18
  module.exports = __toCommonJS(ModuleQueryFunctions_exports);
17
19
  //# sourceMappingURL=ModuleQueryFunctions.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/module/ModuleQueryFunctions.ts"],"sourcesContent":["import { ModuleManifestPayload } from '@xyo-network/manifest-model'\nimport { Payload } from '@xyo-network/payload-model'\nimport { Promisable } from '@xyo-network/promise'\n\nimport { ModuleDescription } from '../ModuleDescription'\nimport { AddressPreviousHashPayload } from '../Queries'\n\nexport type ModuleQueryFunctions = {\n describe: () => Promise<ModuleDescription>\n discover: () => Promisable<Payload[]>\n manifest: (ignoreAddresses?: string[]) => Promisable<ModuleManifestPayload>\n moduleAddress: () => Promisable<AddressPreviousHashPayload[]>\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../../src/module/ModuleQueryFunctions.ts"],"sourcesContent":["import { ModuleManifestPayload } from '@xyo-network/manifest-model'\nimport { Payload } from '@xyo-network/payload-model'\nimport { Promisable } from '@xyo-network/promise'\n\nimport { ModuleDescription } from '../ModuleDescription'\nimport { AddressPreviousHashPayload } from '../Queries'\n\nexport type ModuleQueryFunctions = {\n describe: () => Promise<ModuleDescription>\n discover: () => Promisable<Payload[]>\n manifest: (ignoreAddresses?: string[]) => Promisable<ModuleManifestPayload>\n moduleAddress: () => Promisable<AddressPreviousHashPayload[]>\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1,5 @@
1
+ export declare const asModule: {
2
+ <TObject extends import("./Module").Module>(obj: object | null | undefined, config?: import("@xyo-network/object").ObjectTypeConfig | undefined): TObject | undefined;
3
+ <TObject_1 extends import("./Module").Module>(obj: object | null | undefined, assert: string | (() => string), config?: import("@xyo-network/object").ObjectTypeConfig | undefined): TObject_1;
4
+ };
5
+ //# sourceMappingURL=asModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asModule.d.ts","sourceRoot":"","sources":["../../../src/module/asModule.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,QAAQ;;;CAAmC,CAAA"}
@@ -16,14 +16,63 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/module/asModule.ts
19
21
  var asModule_exports = {};
20
22
  __export(asModule_exports, {
21
23
  asModule: () => asModule
22
24
  });
23
25
  module.exports = __toCommonJS(asModule_exports);
26
+ var import_object3 = require("@xyo-network/object");
27
+
28
+ // src/Queries/Discover.ts
29
+ var ModuleDiscoverQuerySchema = "network.xyo.query.module.discover";
30
+
31
+ // src/module/asModuleObject.ts
32
+ var import_object2 = require("@xyo-network/object");
33
+
34
+ // src/module/isModuleObject.ts
24
35
  var import_object = require("@xyo-network/object");
25
- var import_isModule = require("./isModule");
26
- const asModule = import_object.AsObjectFactory.create(import_isModule.isModule);
36
+ var requiredModuleFunctions = {
37
+ address: "string",
38
+ config: "object",
39
+ params: "object",
40
+ queries: "array",
41
+ query: "function",
42
+ queryable: "function"
43
+ };
44
+ var factory = new import_object.IsObjectFactory();
45
+ var isModuleObject = factory.create(requiredModuleFunctions);
46
+
47
+ // src/module/asModuleObject.ts
48
+ var asModuleObject = import_object2.AsObjectFactory.create(isModuleObject);
49
+
50
+ // src/module/IsModuleFactory.ts
51
+ var IsModuleFactory = class {
52
+ create(expectedQueries, additionalChecks) {
53
+ return (obj, config) => {
54
+ const module2 = asModuleObject(obj);
55
+ const result = isModuleObject(module2, config) && ((expectedQueries == null ? void 0 : expectedQueries.reduce((prev, query) => prev && obj.queries.includes(query), true)) ?? true) && //perform additional checks
56
+ ((additionalChecks == null ? void 0 : additionalChecks.reduce((prev, check) => prev && check(obj, config), true)) ?? true);
57
+ return result;
58
+ };
59
+ }
60
+ };
61
+
62
+ // src/module/isModule.ts
63
+ var requiredModuleQueries = [
64
+ /* We need to update this once live module conform */
65
+ //ModuleDescribeQuerySchema,
66
+ //ModuleAddressQuerySchema,
67
+ ModuleDiscoverQuerySchema
68
+ //ModuleManifestQuerySchema,
69
+ //ModuleSubscribeQuerySchema,
70
+ ];
71
+ var factory2 = new IsModuleFactory();
72
+ var isModule = factory2.create(requiredModuleQueries, [isModuleObject]);
73
+
74
+ // src/module/asModule.ts
75
+ var asModule = import_object3.AsObjectFactory.create(isModule);
27
76
  // Annotate the CommonJS export names for ESM import in node:
28
77
  0 && (module.exports = {
29
78
  asModule
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/module/asModule.ts"],"sourcesContent":["import { AsObjectFactory } from '@xyo-network/object'\n\nimport { isModule } from './isModule'\n\nexport const asModule = AsObjectFactory.create(isModule)\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAgC;AAEhC,sBAAyB;AAElB,MAAM,WAAW,8BAAgB,OAAO,wBAAQ;","names":[]}
1
+ {"version":3,"sources":["../../../src/module/asModule.ts","../../../src/Queries/Discover.ts","../../../src/module/asModuleObject.ts","../../../src/module/isModuleObject.ts","../../../src/module/IsModuleFactory.ts","../../../src/module/isModule.ts"],"sourcesContent":["import { AsObjectFactory } from '@xyo-network/object'\n\nimport { isModule } from './isModule'\n\nexport const asModule = AsObjectFactory.create(isModule)\n","import { Query } from '@xyo-network/payload-model'\n\nexport type ModuleDiscoverQuerySchema = 'network.xyo.query.module.discover'\nexport const ModuleDiscoverQuerySchema: ModuleDiscoverQuerySchema = 'network.xyo.query.module.discover'\n\nexport type ModuleDiscoverQuery = Query<{\n schema: ModuleDiscoverQuerySchema\n}>\n","import { AsObjectFactory } from '@xyo-network/object'\n\nimport { isModuleObject } from './isModuleObject'\n\nexport const asModuleObject = AsObjectFactory.create(isModuleObject)\n","import { IsObjectFactory, ObjectTypeCheck, ObjectTypeShape } from '@xyo-network/object'\n\nimport { Module } from './Module'\n\nexport const requiredModuleFunctions: ObjectTypeShape = {\n address: 'string',\n config: 'object',\n params: 'object',\n queries: 'array',\n query: 'function',\n queryable: 'function',\n}\n\nconst factory = new IsObjectFactory<Module>()\n\nexport const isModuleObject: ObjectTypeCheck<Module> = factory.create(requiredModuleFunctions)\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { ObjectTypeCheck } from '@xyo-network/object'\n\nimport { asModuleObject } from './asModuleObject'\nimport { isModuleObject } from './isModuleObject'\nimport { Module } from './Module'\n\nexport type ModuleTypeCheck<T extends Module = Module> = ObjectTypeCheck<T>\n\nexport class IsModuleFactory<T extends Module = Module> {\n create(expectedQueries?: string[], additionalChecks?: ObjectTypeCheck[]): ModuleTypeCheck<T> {\n return (obj: any, config): obj is T => {\n const module = asModuleObject(obj)\n const result =\n isModuleObject(module, config) &&\n (expectedQueries?.reduce((prev, query) => prev && obj.queries.includes(query), true) ?? true) &&\n //perform additional checks\n (additionalChecks?.reduce((prev, check) => prev && check(obj, config), true) ?? true)\n return result\n }\n }\n}\n","import { ObjectTypeCheck } from '@xyo-network/object'\n\nimport { ModuleDiscoverQuerySchema } from '../Queries'\nimport { IsModuleFactory } from './IsModuleFactory'\nimport { isModuleObject } from './isModuleObject'\nimport { Module } from './Module'\n\nexport const requiredModuleQueries: string[] = [\n /* We need to update this once live module conform */\n //ModuleDescribeQuerySchema,\n //ModuleAddressQuerySchema,\n ModuleDiscoverQuerySchema,\n //ModuleManifestQuerySchema,\n //ModuleSubscribeQuerySchema,\n]\n\n//we do not use IsInstanceFactory here to prevent a cycle\nconst factory = new IsModuleFactory<Module>()\n\nexport const isModule: ObjectTypeCheck<Module> = factory.create(requiredModuleQueries, [isModuleObject])\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,iBAAgC;;;ACGzB,IAAM,4BAAuD;;;ACHpE,IAAAC,iBAAgC;;;ACAhC,oBAAkE;AAI3D,IAAM,0BAA2C;AAAA,EACtD,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,OAAO;AAAA,EACP,WAAW;AACb;AAEA,IAAM,UAAU,IAAI,8BAAwB;AAErC,IAAM,iBAA0C,QAAQ,OAAO,uBAAuB;;;ADXtF,IAAM,iBAAiB,+BAAgB,OAAO,cAAc;;;AEK5D,IAAM,kBAAN,MAAiD;AAAA,EACtD,OAAO,iBAA4B,kBAA0D;AAC3F,WAAO,CAAC,KAAU,WAAqB;AACrC,YAAMC,UAAS,eAAe,GAAG;AACjC,YAAM,SACJ,eAAeA,SAAQ,MAAM,OAC5B,mDAAiB,OAAO,CAAC,MAAM,UAAU,QAAQ,IAAI,QAAQ,SAAS,KAAK,GAAG,UAAS;AAAA,QAEvF,qDAAkB,OAAO,CAAC,MAAM,UAAU,QAAQ,MAAM,KAAK,MAAM,GAAG,UAAS;AAClF,aAAO;AAAA,IACT;AAAA,EACF;AACF;;;ACdO,IAAM,wBAAkC;AAAA;AAAA;AAAA;AAAA,EAI7C;AAAA;AAAA;AAGF;AAGA,IAAMC,WAAU,IAAI,gBAAwB;AAErC,IAAM,WAAoCA,SAAQ,OAAO,uBAAuB,CAAC,cAAc,CAAC;;;ALfhG,IAAM,WAAW,+BAAgB,OAAO,QAAQ;","names":["import_object","import_object","module","factory"]}