@ibgib/core-gib 0.0.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 (330) hide show
  1. package/.vscode/core-gib-snippets.code-snippets +189 -0
  2. package/.vscode/launch.json +24 -0
  3. package/.vscode/settings.json +56 -0
  4. package/.vscode/tasks.json +37 -0
  5. package/CHANGELOG.md +11 -0
  6. package/README.md +215 -0
  7. package/dist/common/aws-constants.d.mts +7 -0
  8. package/dist/common/aws-constants.d.mts.map +1 -0
  9. package/dist/common/aws-constants.mjs +7 -0
  10. package/dist/common/aws-constants.mjs.map +1 -0
  11. package/dist/common/bin/bin-types.d.mts +17 -0
  12. package/dist/common/bin/bin-types.d.mts.map +1 -0
  13. package/dist/common/bin/bin-types.mjs +3 -0
  14. package/dist/common/bin/bin-types.mjs.map +1 -0
  15. package/dist/common/cache/cache-types.d.mts +57 -0
  16. package/dist/common/cache/cache-types.d.mts.map +1 -0
  17. package/dist/common/cache/cache-types.mjs +2 -0
  18. package/dist/common/cache/cache-types.mjs.map +1 -0
  19. package/dist/common/comment/comment-constants.d.mts +11 -0
  20. package/dist/common/comment/comment-constants.d.mts.map +1 -0
  21. package/dist/common/comment/comment-constants.mjs +11 -0
  22. package/dist/common/comment/comment-constants.mjs.map +1 -0
  23. package/dist/common/comment/comment-helper.d.mts +59 -0
  24. package/dist/common/comment/comment-helper.d.mts.map +1 -0
  25. package/dist/common/comment/comment-helper.mjs +173 -0
  26. package/dist/common/comment/comment-helper.mjs.map +1 -0
  27. package/dist/common/comment/comment-types.d.mts +16 -0
  28. package/dist/common/comment/comment-types.d.mts.map +1 -0
  29. package/dist/common/comment/comment-types.mjs +2 -0
  30. package/dist/common/comment/comment-types.mjs.map +1 -0
  31. package/dist/common/display/display-helper.d.mts +19 -0
  32. package/dist/common/display/display-helper.d.mts.map +1 -0
  33. package/dist/common/display/display-helper.mjs +68 -0
  34. package/dist/common/display/display-helper.mjs.map +1 -0
  35. package/dist/common/display/display-types.d.mts +97 -0
  36. package/dist/common/display/display-types.d.mts.map +1 -0
  37. package/dist/common/display/display-types.mjs +37 -0
  38. package/dist/common/display/display-types.mjs.map +1 -0
  39. package/dist/common/encrypt/encrypt-constants.d.mts +27 -0
  40. package/dist/common/encrypt/encrypt-constants.d.mts.map +1 -0
  41. package/dist/common/encrypt/encrypt-constants.mjs +27 -0
  42. package/dist/common/encrypt/encrypt-constants.mjs.map +1 -0
  43. package/dist/common/encrypt/encrypt-types.d.mts +116 -0
  44. package/dist/common/encrypt/encrypt-types.d.mts.map +1 -0
  45. package/dist/common/encrypt/encrypt-types.mjs +9 -0
  46. package/dist/common/encrypt/encrypt-types.mjs.map +1 -0
  47. package/dist/common/error/error-constants.d.mts +9 -0
  48. package/dist/common/error/error-constants.d.mts.map +1 -0
  49. package/dist/common/error/error-constants.mjs +9 -0
  50. package/dist/common/error/error-constants.mjs.map +1 -0
  51. package/dist/common/error/error-helper.d.mts +43 -0
  52. package/dist/common/error/error-helper.d.mts.map +1 -0
  53. package/dist/common/error/error-helper.mjs +167 -0
  54. package/dist/common/error/error-helper.mjs.map +1 -0
  55. package/dist/common/error/error-types.d.mts +58 -0
  56. package/dist/common/error/error-types.d.mts.map +1 -0
  57. package/dist/common/error/error-types.mjs +2 -0
  58. package/dist/common/error/error-types.mjs.map +1 -0
  59. package/dist/common/form/form-helper.d.mts +97 -0
  60. package/dist/common/form/form-helper.d.mts.map +1 -0
  61. package/dist/common/form/form-helper.mjs +185 -0
  62. package/dist/common/form/form-helper.mjs.map +1 -0
  63. package/dist/common/form/form-items.d.mts +229 -0
  64. package/dist/common/form/form-items.d.mts.map +1 -0
  65. package/dist/common/form/form-items.mjs +63 -0
  66. package/dist/common/form/form-items.mjs.map +1 -0
  67. package/dist/common/import-export/import-export-types.d.mts +18 -0
  68. package/dist/common/import-export/import-export-types.d.mts.map +1 -0
  69. package/dist/common/import-export/import-export-types.mjs +2 -0
  70. package/dist/common/import-export/import-export-types.mjs.map +1 -0
  71. package/dist/common/legacy/legacy-types.d.mts +2 -0
  72. package/dist/common/legacy/legacy-types.d.mts.map +1 -0
  73. package/dist/common/legacy/legacy-types.mjs +2 -0
  74. package/dist/common/legacy/legacy-types.mjs.map +1 -0
  75. package/dist/common/link/link-constants.d.mts +2 -0
  76. package/dist/common/link/link-constants.d.mts.map +1 -0
  77. package/dist/common/link/link-constants.mjs +2 -0
  78. package/dist/common/link/link-constants.mjs.map +1 -0
  79. package/dist/common/link/link-helper.d.mts +37 -0
  80. package/dist/common/link/link-helper.d.mts.map +1 -0
  81. package/dist/common/link/link-helper.mjs +143 -0
  82. package/dist/common/link/link-helper.mjs.map +1 -0
  83. package/dist/common/link/link-types.d.mts +14 -0
  84. package/dist/common/link/link-types.d.mts.map +1 -0
  85. package/dist/common/link/link-types.mjs +2 -0
  86. package/dist/common/link/link-types.mjs.map +1 -0
  87. package/dist/common/other/graph-helper.d.mts +166 -0
  88. package/dist/common/other/graph-helper.d.mts.map +1 -0
  89. package/dist/common/other/graph-helper.mjs +710 -0
  90. package/dist/common/other/graph-helper.mjs.map +1 -0
  91. package/dist/common/other/ibgib-helper.d.mts +245 -0
  92. package/dist/common/other/ibgib-helper.d.mts.map +1 -0
  93. package/dist/common/other/ibgib-helper.mjs +641 -0
  94. package/dist/common/other/ibgib-helper.mjs.map +1 -0
  95. package/dist/common/other/other-constants.d.mts +53 -0
  96. package/dist/common/other/other-constants.d.mts.map +1 -0
  97. package/dist/common/other/other-constants.mjs +67 -0
  98. package/dist/common/other/other-constants.mjs.map +1 -0
  99. package/dist/common/other/other-types.d.mts +166 -0
  100. package/dist/common/other/other-types.d.mts.map +1 -0
  101. package/dist/common/other/other-types.mjs +30 -0
  102. package/dist/common/other/other-types.mjs.map +1 -0
  103. package/dist/common/other/svg-constants.d.mts +2 -0
  104. package/dist/common/other/svg-constants.d.mts.map +1 -0
  105. package/dist/common/other/svg-constants.mjs +2 -0
  106. package/dist/common/other/svg-constants.mjs.map +1 -0
  107. package/dist/common/other/svg-helper.d.mts +54 -0
  108. package/dist/common/other/svg-helper.d.mts.map +1 -0
  109. package/dist/common/other/svg-helper.mjs +170 -0
  110. package/dist/common/other/svg-helper.mjs.map +1 -0
  111. package/dist/common/pic/pic-constants.d.mts +13 -0
  112. package/dist/common/pic/pic-constants.d.mts.map +1 -0
  113. package/dist/common/pic/pic-constants.mjs +13 -0
  114. package/dist/common/pic/pic-constants.mjs.map +1 -0
  115. package/dist/common/pic/pic-helper.d.mts +70 -0
  116. package/dist/common/pic/pic-helper.d.mts.map +1 -0
  117. package/dist/common/pic/pic-helper.mjs +235 -0
  118. package/dist/common/pic/pic-helper.mjs.map +1 -0
  119. package/dist/common/pic/pic-types.d.mts +23 -0
  120. package/dist/common/pic/pic-types.d.mts.map +1 -0
  121. package/dist/common/pic/pic-types.mjs +2 -0
  122. package/dist/common/pic/pic-types.mjs.map +1 -0
  123. package/dist/common/root/root-constants.d.mts +40 -0
  124. package/dist/common/root/root-constants.d.mts.map +1 -0
  125. package/dist/common/root/root-constants.mjs +40 -0
  126. package/dist/common/root/root-constants.mjs.map +1 -0
  127. package/dist/common/root/root-types.d.mts +9 -0
  128. package/dist/common/root/root-types.d.mts.map +1 -0
  129. package/dist/common/root/root-types.mjs +2 -0
  130. package/dist/common/root/root-types.mjs.map +1 -0
  131. package/dist/common/tag/tag-constants.d.mts +21 -0
  132. package/dist/common/tag/tag-constants.d.mts.map +1 -0
  133. package/dist/common/tag/tag-constants.mjs +28 -0
  134. package/dist/common/tag/tag-constants.mjs.map +1 -0
  135. package/dist/common/tag/tag-types.d.mts +14 -0
  136. package/dist/common/tag/tag-types.d.mts.map +1 -0
  137. package/dist/common/tag/tag-types.mjs +2 -0
  138. package/dist/common/tag/tag-types.mjs.map +1 -0
  139. package/dist/core-constants.d.mts +89 -0
  140. package/dist/core-constants.d.mts.map +1 -0
  141. package/dist/core-constants.mjs +484 -0
  142. package/dist/core-constants.mjs.map +1 -0
  143. package/dist/core-helper.d.mts +6 -0
  144. package/dist/core-helper.d.mts.map +1 -0
  145. package/dist/core-helper.mjs +28 -0
  146. package/dist/core-helper.mjs.map +1 -0
  147. package/dist/core-types.d.mts +520 -0
  148. package/dist/core-types.d.mts.map +1 -0
  149. package/dist/core-types.mjs +2 -0
  150. package/dist/core-types.mjs.map +1 -0
  151. package/dist/index.d.mts +2 -0
  152. package/dist/index.d.mts.map +1 -0
  153. package/dist/index.mjs +3 -0
  154. package/dist/index.mjs.map +1 -0
  155. package/dist/witness/app/app-base-v1.d.mts +130 -0
  156. package/dist/witness/app/app-base-v1.d.mts.map +1 -0
  157. package/dist/witness/app/app-base-v1.mjs +462 -0
  158. package/dist/witness/app/app-base-v1.mjs.map +1 -0
  159. package/dist/witness/app/app-constants.d.mts +10 -0
  160. package/dist/witness/app/app-constants.d.mts.map +1 -0
  161. package/dist/witness/app/app-constants.mjs +13 -0
  162. package/dist/witness/app/app-constants.mjs.map +1 -0
  163. package/dist/witness/app/app-helper.d.mts +85 -0
  164. package/dist/witness/app/app-helper.d.mts.map +1 -0
  165. package/dist/witness/app/app-helper.mjs +258 -0
  166. package/dist/witness/app/app-helper.mjs.map +1 -0
  167. package/dist/witness/app/app-types.d.mts +211 -0
  168. package/dist/witness/app/app-types.d.mts.map +1 -0
  169. package/dist/witness/app/app-types.mjs +49 -0
  170. package/dist/witness/app/app-types.mjs.map +1 -0
  171. package/dist/witness/app/chat-app/chat-app-types.d.mts +18 -0
  172. package/dist/witness/app/chat-app/chat-app-types.d.mts.map +1 -0
  173. package/dist/witness/app/chat-app/chat-app-types.mjs +25 -0
  174. package/dist/witness/app/chat-app/chat-app-types.mjs.map +1 -0
  175. package/dist/witness/app/flash-app/flash-app-types.d.mts +16 -0
  176. package/dist/witness/app/flash-app/flash-app-types.d.mts.map +1 -0
  177. package/dist/witness/app/flash-app/flash-app-types.mjs +23 -0
  178. package/dist/witness/app/flash-app/flash-app-types.mjs.map +1 -0
  179. package/dist/witness/app/raw-app/raw-app-types.d.mts +18 -0
  180. package/dist/witness/app/raw-app/raw-app-types.d.mts.map +1 -0
  181. package/dist/witness/app/raw-app/raw-app-types.mjs +25 -0
  182. package/dist/witness/app/raw-app/raw-app-types.mjs.map +1 -0
  183. package/dist/witness/app/todo-app/todo-app-types.d.ts +33 -0
  184. package/dist/witness/app/todo-app/todo-app-types.d.ts.map +1 -0
  185. package/dist/witness/app/todo-app/todo-app-types.js +31 -0
  186. package/dist/witness/app/todo-app/todo-app-types.js.map +1 -0
  187. package/dist/witness/robbot/robbot-base-v1.d.ts +432 -0
  188. package/dist/witness/robbot/robbot-base-v1.d.ts.map +1 -0
  189. package/dist/witness/robbot/robbot-base-v1.js +1407 -0
  190. package/dist/witness/robbot/robbot-base-v1.js.map +1 -0
  191. package/dist/witness/robbot/robbot-constants.d.mts +24 -0
  192. package/dist/witness/robbot/robbot-constants.d.mts.map +1 -0
  193. package/dist/witness/robbot/robbot-constants.mjs +24 -0
  194. package/dist/witness/robbot/robbot-constants.mjs.map +1 -0
  195. package/dist/witness/robbot/robbot-helper.d.mts +152 -0
  196. package/dist/witness/robbot/robbot-helper.d.mts.map +1 -0
  197. package/dist/witness/robbot/robbot-helper.mjs +609 -0
  198. package/dist/witness/robbot/robbot-helper.mjs.map +1 -0
  199. package/dist/witness/robbot/robbot-types.d.mts +539 -0
  200. package/dist/witness/robbot/robbot-types.d.mts.map +1 -0
  201. package/dist/witness/robbot/robbot-types.mjs +294 -0
  202. package/dist/witness/robbot/robbot-types.mjs.map +1 -0
  203. package/dist/witness/space/bootstrap/bootstrap-constants.d.mts +14 -0
  204. package/dist/witness/space/bootstrap/bootstrap-constants.d.mts.map +1 -0
  205. package/dist/witness/space/bootstrap/bootstrap-constants.mjs +15 -0
  206. package/dist/witness/space/bootstrap/bootstrap-constants.mjs.map +1 -0
  207. package/dist/witness/space/inner-space-v1.d.ts +63 -0
  208. package/dist/witness/space/inner-space-v1.d.ts.map +1 -0
  209. package/dist/witness/space/inner-space-v1.js +356 -0
  210. package/dist/witness/space/inner-space-v1.js.map +1 -0
  211. package/dist/witness/space/outer-space/outer-space-constants.d.mts +2 -0
  212. package/dist/witness/space/outer-space/outer-space-constants.d.mts.map +1 -0
  213. package/dist/witness/space/outer-space/outer-space-constants.mjs +2 -0
  214. package/dist/witness/space/outer-space/outer-space-constants.mjs.map +1 -0
  215. package/dist/witness/space/outer-space/outer-space-helper.d.mts +28 -0
  216. package/dist/witness/space/outer-space/outer-space-helper.d.mts.map +1 -0
  217. package/dist/witness/space/outer-space/outer-space-helper.mjs +87 -0
  218. package/dist/witness/space/outer-space/outer-space-helper.mjs.map +1 -0
  219. package/dist/witness/space/outer-space/outer-space-types.d.mts +548 -0
  220. package/dist/witness/space/outer-space/outer-space-types.d.mts.map +1 -0
  221. package/dist/witness/space/outer-space/outer-space-types.mjs +118 -0
  222. package/dist/witness/space/outer-space/outer-space-types.mjs.map +1 -0
  223. package/dist/witness/space/space-base-v1.d.mts +147 -0
  224. package/dist/witness/space/space-base-v1.d.mts.map +1 -0
  225. package/dist/witness/space/space-base-v1.mjs +350 -0
  226. package/dist/witness/space/space-base-v1.mjs.map +1 -0
  227. package/dist/witness/space/space-constants.d.mts +181 -0
  228. package/dist/witness/space/space-constants.d.mts.map +1 -0
  229. package/dist/witness/space/space-constants.mjs +192 -0
  230. package/dist/witness/space/space-constants.mjs.map +1 -0
  231. package/dist/witness/space/space-helper.d.mts +666 -0
  232. package/dist/witness/space/space-helper.d.mts.map +1 -0
  233. package/dist/witness/space/space-helper.mjs +2830 -0
  234. package/dist/witness/space/space-helper.mjs.map +1 -0
  235. package/dist/witness/space/space-types.d.mts +422 -0
  236. package/dist/witness/space/space-types.d.mts.map +1 -0
  237. package/dist/witness/space/space-types.mjs +52 -0
  238. package/dist/witness/space/space-types.mjs.map +1 -0
  239. package/dist/witness/witness-base-v1.d.ts +144 -0
  240. package/dist/witness/witness-base-v1.d.ts.map +1 -0
  241. package/dist/witness/witness-base-v1.js +300 -0
  242. package/dist/witness/witness-base-v1.js.map +1 -0
  243. package/dist/witness/witness-constants.d.mts +3 -0
  244. package/dist/witness/witness-constants.d.mts.map +1 -0
  245. package/dist/witness/witness-constants.mjs +3 -0
  246. package/dist/witness/witness-constants.mjs.map +1 -0
  247. package/dist/witness/witness-form-builder.d.mts +45 -0
  248. package/dist/witness/witness-form-builder.d.mts.map +1 -0
  249. package/dist/witness/witness-form-builder.mjs +95 -0
  250. package/dist/witness/witness-form-builder.mjs.map +1 -0
  251. package/dist/witness/witness-helper.d.mts +89 -0
  252. package/dist/witness/witness-helper.d.mts.map +1 -0
  253. package/dist/witness/witness-helper.mjs +229 -0
  254. package/dist/witness/witness-helper.mjs.map +1 -0
  255. package/dist/witness/witness-types.d.mts +211 -0
  256. package/dist/witness/witness-types.d.mts.map +1 -0
  257. package/dist/witness/witness-types.mjs +2 -0
  258. package/dist/witness/witness-types.mjs.map +1 -0
  259. package/jasmine-browser.json +18 -0
  260. package/jasmine.json +6 -0
  261. package/package.json +67 -0
  262. package/src/assumptions.spec.mts +45 -0
  263. package/src/common/aws-constants.mts +5 -0
  264. package/src/common/bin/bin-types.mts +17 -0
  265. package/src/common/cache/cache-types.mts +53 -0
  266. package/src/common/comment/comment-constants.mts +10 -0
  267. package/src/common/comment/comment-helper.mts +211 -0
  268. package/src/common/comment/comment-types.mts +19 -0
  269. package/src/common/display/display-helper.mts +88 -0
  270. package/src/common/display/display-types.mts +108 -0
  271. package/src/common/encrypt/encrypt-constants.mts +28 -0
  272. package/src/common/encrypt/encrypt-types.mts +130 -0
  273. package/src/common/error/error-constants.mts +8 -0
  274. package/src/common/error/error-helper.mts +155 -0
  275. package/src/common/error/error-types.mts +62 -0
  276. package/src/common/form/form-helper.mts +253 -0
  277. package/src/common/form/form-items.mts +236 -0
  278. package/src/common/import-export/import-export-types.mts +18 -0
  279. package/src/common/legacy/about-legacy.md +0 -0
  280. package/src/common/legacy/legacy-types.mts +0 -0
  281. package/src/common/link/link-constants.mts +1 -0
  282. package/src/common/link/link-helper.mts +155 -0
  283. package/src/common/link/link-types.mts +16 -0
  284. package/src/common/other/graph-helper.mts +853 -0
  285. package/src/common/other/ibgib-helper.mts +671 -0
  286. package/src/common/other/other-constants.mts +76 -0
  287. package/src/common/other/other-types.mts +186 -0
  288. package/src/common/other/svg-constants.mts +1 -0
  289. package/src/common/other/svg-helper.mts +238 -0
  290. package/src/common/pic/pic-constants.mts +13 -0
  291. package/src/common/pic/pic-helper.mts +295 -0
  292. package/src/common/pic/pic-types.mts +29 -0
  293. package/src/common/root/root-constants.mts +41 -0
  294. package/src/common/root/root-types.mts +8 -0
  295. package/src/common/tag/tag-constants.mts +34 -0
  296. package/src/common/tag/tag-types.mts +19 -0
  297. package/src/core-constants.mts +506 -0
  298. package/src/core-helper.mts +33 -0
  299. package/src/core-types.mts +519 -0
  300. package/src/helper.spec.mts +64 -0
  301. package/src/index.mts +1 -0
  302. package/src/witness/app/app-base-v1.mts +584 -0
  303. package/src/witness/app/app-constants.mts +16 -0
  304. package/src/witness/app/app-helper.mts +322 -0
  305. package/src/witness/app/app-types.mts +252 -0
  306. package/src/witness/app/chat-app/chat-app-types.mts +40 -0
  307. package/src/witness/app/flash-app/flash-app-types.mts +38 -0
  308. package/src/witness/app/raw-app/raw-app-types.mts +40 -0
  309. package/src/witness/app/todo-app/todo-app-types.ts +59 -0
  310. package/src/witness/robbot/robbot-base-v1.ts +1531 -0
  311. package/src/witness/robbot/robbot-constants.mts +25 -0
  312. package/src/witness/robbot/robbot-helper.mts +676 -0
  313. package/src/witness/robbot/robbot-helper.spec.mts +135 -0
  314. package/src/witness/robbot/robbot-types.mts +797 -0
  315. package/src/witness/space/bootstrap/bootstrap-constants.mts +15 -0
  316. package/src/witness/space/inner-space-v1.ts +372 -0
  317. package/src/witness/space/outer-space/outer-space-constants.mts +1 -0
  318. package/src/witness/space/outer-space/outer-space-helper.mts +91 -0
  319. package/src/witness/space/outer-space/outer-space-types.mts +627 -0
  320. package/src/witness/space/space-base-v1.mts +414 -0
  321. package/src/witness/space/space-constants.mts +208 -0
  322. package/src/witness/space/space-helper.mts +3242 -0
  323. package/src/witness/space/space-types.mts +476 -0
  324. package/src/witness/witness-base-v1.ts +325 -0
  325. package/src/witness/witness-constants.mts +2 -0
  326. package/src/witness/witness-form-builder.mts +128 -0
  327. package/src/witness/witness-helper.mts +256 -0
  328. package/src/witness/witness-types.mts +249 -0
  329. package/tsconfig.json +15 -0
  330. package/tsconfig.test.json +10 -0
@@ -0,0 +1,95 @@
1
+ import { GLOBAL_LOG_A_LOT } from '../core-constants.mjs';
2
+ import { DynamicFormBuilder } from '../common/form/form-helper.mjs';
3
+ const logalot = GLOBAL_LOG_A_LOT || false;
4
+ /**
5
+ * Fluent-style builder helper class.
6
+ *
7
+ * I'm making this to share common fields' settings among witness classes.
8
+ *
9
+ * Descend from this class for sharing other commonalities.
10
+ */
11
+ export class WitnessFormBuilder extends DynamicFormBuilder {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.lc = `[${WitnessFormBuilder.name}]`;
15
+ }
16
+ allowPrimitiveArgs({ of, required = true, }) {
17
+ this.addItem({
18
+ // witness.data.allowPrimitiveArgs
19
+ name: "allowPrimitiveArgs",
20
+ description: `Technical setting on if this ${this.what} accepts primitive incoming ibgibs`,
21
+ label: "Allow Primitive Args",
22
+ dataType: 'toggle',
23
+ value: of ?? true,
24
+ readonly: true,
25
+ required,
26
+ });
27
+ return this;
28
+ }
29
+ catchAllErrors({ of, required = true, }) {
30
+ this.addItem({
31
+ // witness.data.catchAllErrors
32
+ name: "catchAllErrors",
33
+ description: `Technical setting on what the ${this.what} does when it encounters an internal error.`,
34
+ label: "Catch All Errors",
35
+ dataType: 'toggle',
36
+ value: of ?? true,
37
+ readonly: true,
38
+ required,
39
+ });
40
+ return this;
41
+ }
42
+ persistOptsAndResultIbGibs({ of, required = true, }) {
43
+ this.addItem({
44
+ // witness.data.persistOptsAndResultIbGibs
45
+ name: "persistOptsAndResultIbGibs",
46
+ description: `Technical setting on if the ${this.what} maintains an audit trail of all of its inputs/outputs.`,
47
+ label: "Persist Opts and Result IbGibs",
48
+ dataType: 'toggle',
49
+ value: of ?? false,
50
+ readonly: true,
51
+ required,
52
+ });
53
+ return this;
54
+ }
55
+ trace({ of, required, }) {
56
+ this.addItem({
57
+ // witness.data.trace
58
+ name: "trace",
59
+ description: `Technical setting on if the ${this.what}'s activity should be traced (logged to the console).`,
60
+ label: "Trace",
61
+ dataType: 'toggle',
62
+ value: of ?? false,
63
+ readonly: true,
64
+ required,
65
+ });
66
+ return this;
67
+ }
68
+ /**
69
+ * Includes common witness fields.
70
+ *
71
+ * All common fields default to `true`, so set any you want to skip to
72
+ * `false`.
73
+ *
74
+ * @returns `this` for fluent builder
75
+ */
76
+ commonWitnessFields({ data, allowPrimitiveArgs = true, catchAllErrors = true, persistOptsAndResultIbGibs = true, trace = true, version = true, }) {
77
+ if (allowPrimitiveArgs) {
78
+ this.allowPrimitiveArgs({ of: data.allowPrimitiveArgs });
79
+ }
80
+ if (catchAllErrors) {
81
+ this.catchAllErrors({ of: data.catchAllErrors });
82
+ }
83
+ if (persistOptsAndResultIbGibs) {
84
+ this.persistOptsAndResultIbGibs({ of: data.persistOptsAndResultIbGibs });
85
+ }
86
+ if (trace) {
87
+ this.trace({ of: data.trace });
88
+ }
89
+ if (version) {
90
+ this.version({ of: data.version });
91
+ }
92
+ return this;
93
+ }
94
+ }
95
+ //# sourceMappingURL=witness-form-builder.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-form-builder.mjs","sourceRoot":"","sources":["../../src/witness/witness-form-builder.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ import { Ib } from '@ibgib/ts-gib';
2
+ import { IbGib_V1, IbGibRel8ns_V1 } from '@ibgib/ts-gib/dist/V1/index.mjs';
3
+ /**
4
+ * Builds the ib for the witness arg ibgib.
5
+ *
6
+ * @returns ib that we'll use when creating a witness arg.
7
+ */
8
+ export declare function getArgIb(ibMetadata: string | undefined): string;
9
+ /**
10
+ * helper function that checks if an incoming `ib` or `ibGib.ib` indicates that
11
+ * it is an arg ibGib used with witnesses.
12
+ *
13
+ * ## notes
14
+ * * atow, this basically just checks to see if it starts with
15
+ * `WITNESS_ARG_METADATA_STRING` (`witness_arg`).
16
+ *
17
+ * @throws if neither `ib` nor `ibGib` are provided.
18
+ *
19
+ * @returns true if the ib/ibGib.ib indicates an arg ibgib, else false
20
+ *
21
+ * @see {@link argy_}
22
+ */
23
+ export declare function isArg({ ib, ibGib, }: {
24
+ ib?: Ib;
25
+ ibGib?: IbGib_V1;
26
+ }): boolean;
27
+ /**
28
+ * Builds the ib for the witness result ibgib.
29
+ *
30
+ * @returns ib that we'll use when creating a witness result.
31
+ */
32
+ export declare function getResultIb(ibMetadata: string | undefined): string;
33
+ /**
34
+ * helper function that checks if an incoming `ib` or `ibGib.ib` indicates that
35
+ * it is a result ibGib used with witnesses.
36
+ *
37
+ * ## notes
38
+ * * atow, this basically just checks to see if it starts with
39
+ * `WITNESS_ARG_METADATA_STRING` (`witness_arg`).
40
+ *
41
+ * @throws if neither `ib` nor `ibGib` are provided.
42
+ *
43
+ * @returns true if the ib/ibGib.ib indicates a result ibgib, else false
44
+ *
45
+ * @see {@link resulty_}
46
+ */
47
+ export declare function isResult({ ib, ibGib, }: {
48
+ ib?: Ib;
49
+ ibGib?: IbGib_V1;
50
+ }): boolean;
51
+ /**
52
+ * This builds the arg ibGib for a witness function.
53
+ *
54
+ * By default, this is considered a one-off ibGib. As such,
55
+ * there is no dna and no uuid. The timestamp will be included, which
56
+ * adds some metadata (and makes for a most-often unique tjp). If there
57
+ * is something that needs to reference this result, it can use the
58
+ * the ibgib's address.
59
+ *
60
+ * @returns Result (wrapper) ibGib for a `witness` function.
61
+ */
62
+ export declare function argy_<TArgData, TArgRel8ns extends IbGibRel8ns_V1, TArgIbGib extends IbGib_V1<TArgData, TArgRel8ns> = IbGib_V1<TArgData, TArgRel8ns>>({ argData, ibMetadata, noTimestamp, }: {
63
+ argData: TArgData;
64
+ ibMetadata?: string;
65
+ noTimestamp?: boolean;
66
+ }): Promise<TArgIbGib>;
67
+ /**
68
+ * This builds the result ibGib for a witness function.
69
+ *
70
+ * By default, the result is considered a one-off ibGib. As such,
71
+ * there is no dna and no uuid. The timestamp will be included, which
72
+ * adds some metadata (and makes for a most-often unique tjp). If there
73
+ * is something that needs to reference this result, it can use the
74
+ * the ibgib's address.
75
+ *
76
+ * @returns Result (wrapper) ibGib for a `witness` function.
77
+ */
78
+ export declare function resulty_<TResultData, TResultIbGib extends IbGib_V1<TResultData> = IbGib_V1<TResultData>>({ resultData, ibMetadata, noTimestamp, }: {
79
+ resultData: TResultData;
80
+ ibMetadata?: string;
81
+ noTimestamp?: boolean;
82
+ }): Promise<TResultIbGib>;
83
+ /**
84
+ * If valid, returns null.
85
+ */
86
+ export declare function validateWitnessClassname({ classname, }: {
87
+ classname: string;
88
+ }): string | null;
89
+ //# sourceMappingURL=witness-helper.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-helper.d.mts","sourceRoot":"","sources":["../../src/witness/witness-helper.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACnC,OAAO,EACH,QAAQ,EAAE,cAAc,EAC3B,MAAM,iCAAiC,CAAC;AAQzC;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAY/D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,EAClB,EAAE,EACF,KAAK,GACR,EAAE;IACC,EAAE,CAAC,EAAE,EAAE,CAAC;IACR,KAAK,CAAC,EAAE,QAAQ,CAAC;CACpB,GAAG,OAAO,CAoBV;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYlE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,QAAQ,CAAC,EACrB,EAAE,EACF,KAAK,GACR,EAAE;IACC,EAAE,CAAC,EAAE,EAAE,CAAC;IACR,KAAK,CAAC,EAAE,QAAQ,CAAC;CACpB,GAAG,OAAO,CAoBV;AACD;;;;;;;;;;GAUG;AACH,wBAAsB,KAAK,CACvB,QAAQ,EACR,UAAU,SAAS,cAAc,EACjC,SAAS,SAAS,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAC9C,GAAG,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,EAChC,OAAO,EACP,UAAU,EACV,WAAW,GACd,EAAE;IACC,OAAO,EAAE,QAAQ,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,OAAO,CAAC,SAAS,CAAC,CA0BzB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,QAAQ,CAAC,WAAW,EAAE,YAAY,SAAS,QAAQ,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,EAAE,EAC5G,UAAU,EACV,UAAU,EACV,WAAW,GACd,EAAE;IACC,UAAU,EAAE,WAAW,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,OAAO,CAAC,YAAY,CAAC,CA0BxB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,EACrC,SAAS,GACZ,EAAE;IACC,SAAS,EAAE,MAAM,CAAC;CACrB,GAAG,MAAM,GAAG,IAAI,CAiBhB"}
@@ -0,0 +1,229 @@
1
+ import { CLASSNAME_REGEXP } from '@ibgib/helper-gib';
2
+ import { Factory_V1 as factory, sha256v1, } from '@ibgib/ts-gib/dist/V1/index.mjs';
3
+ import { GLOBAL_LOG_A_LOT } from '../core-constants.mjs';
4
+ import { WITNESS_ARG_METADATA_STRING, WITNESS_RESULT_METADATA_STRING } from './witness-constants.mjs';
5
+ const logalot = GLOBAL_LOG_A_LOT || false;
6
+ /**
7
+ * Builds the ib for the witness arg ibgib.
8
+ *
9
+ * @returns ib that we'll use when creating a witness arg.
10
+ */
11
+ export function getArgIb(ibMetadata) {
12
+ const lc = `[${getArgIb.name}]`;
13
+ try {
14
+ const ib = ibMetadata ?
15
+ `${WITNESS_ARG_METADATA_STRING} ${ibMetadata}` :
16
+ WITNESS_ARG_METADATA_STRING;
17
+ if (logalot) {
18
+ console.log(`${lc} ${ib}`);
19
+ }
20
+ return ib;
21
+ }
22
+ catch (error) {
23
+ console.error(`${lc} ${error.message}`);
24
+ throw error;
25
+ }
26
+ }
27
+ /**
28
+ * helper function that checks if an incoming `ib` or `ibGib.ib` indicates that
29
+ * it is an arg ibGib used with witnesses.
30
+ *
31
+ * ## notes
32
+ * * atow, this basically just checks to see if it starts with
33
+ * `WITNESS_ARG_METADATA_STRING` (`witness_arg`).
34
+ *
35
+ * @throws if neither `ib` nor `ibGib` are provided.
36
+ *
37
+ * @returns true if the ib/ibGib.ib indicates an arg ibgib, else false
38
+ *
39
+ * @see {@link argy_}
40
+ */
41
+ export function isArg({ ib, ibGib, }) {
42
+ const lc = `[${isArg.name}]`;
43
+ try {
44
+ if (logalot) {
45
+ console.log(`${lc} starting...`);
46
+ }
47
+ if (!ib) {
48
+ if (ibGib) {
49
+ ib = ibGib.ib;
50
+ }
51
+ else {
52
+ throw new Error(`either ib or ibGib required (E: c052a9d76df867626f9ba17141cdce22)`);
53
+ }
54
+ }
55
+ return ib.startsWith(WITNESS_ARG_METADATA_STRING);
56
+ }
57
+ catch (error) {
58
+ console.error(`${lc} ${error.message}`);
59
+ throw error;
60
+ }
61
+ finally {
62
+ if (logalot) {
63
+ console.log(`${lc} complete.`);
64
+ }
65
+ }
66
+ }
67
+ /**
68
+ * Builds the ib for the witness result ibgib.
69
+ *
70
+ * @returns ib that we'll use when creating a witness result.
71
+ */
72
+ export function getResultIb(ibMetadata) {
73
+ const lc = `[${getResultIb.name}]`;
74
+ try {
75
+ const ib = ibMetadata ?
76
+ `${WITNESS_RESULT_METADATA_STRING} ${ibMetadata}` :
77
+ WITNESS_RESULT_METADATA_STRING;
78
+ if (logalot) {
79
+ console.log(`${lc} ${ib}`);
80
+ }
81
+ return ib;
82
+ }
83
+ catch (error) {
84
+ console.error(`${lc} ${error.message}`);
85
+ throw error;
86
+ }
87
+ }
88
+ /**
89
+ * helper function that checks if an incoming `ib` or `ibGib.ib` indicates that
90
+ * it is a result ibGib used with witnesses.
91
+ *
92
+ * ## notes
93
+ * * atow, this basically just checks to see if it starts with
94
+ * `WITNESS_ARG_METADATA_STRING` (`witness_arg`).
95
+ *
96
+ * @throws if neither `ib` nor `ibGib` are provided.
97
+ *
98
+ * @returns true if the ib/ibGib.ib indicates a result ibgib, else false
99
+ *
100
+ * @see {@link resulty_}
101
+ */
102
+ export function isResult({ ib, ibGib, }) {
103
+ const lc = `[${isResult.name}]`;
104
+ try {
105
+ if (logalot) {
106
+ console.log(`${lc} starting...`);
107
+ }
108
+ if (!ib) {
109
+ if (ibGib) {
110
+ ib = ibGib.ib;
111
+ }
112
+ else {
113
+ throw new Error(`either ib or ibGib required (E: 7d32a54825764d8ea72a8a38cac14224)`);
114
+ }
115
+ }
116
+ return ib.startsWith(WITNESS_RESULT_METADATA_STRING);
117
+ }
118
+ catch (error) {
119
+ console.error(`${lc} ${error.message}`);
120
+ throw error;
121
+ }
122
+ finally {
123
+ if (logalot) {
124
+ console.log(`${lc} complete.`);
125
+ }
126
+ }
127
+ }
128
+ /**
129
+ * This builds the arg ibGib for a witness function.
130
+ *
131
+ * By default, this is considered a one-off ibGib. As such,
132
+ * there is no dna and no uuid. The timestamp will be included, which
133
+ * adds some metadata (and makes for a most-often unique tjp). If there
134
+ * is something that needs to reference this result, it can use the
135
+ * the ibgib's address.
136
+ *
137
+ * @returns Result (wrapper) ibGib for a `witness` function.
138
+ */
139
+ export async function argy_({ argData, ibMetadata, noTimestamp, }) {
140
+ const lc = `[${argy_.name}]`;
141
+ try {
142
+ const resArgIbGib = await factory.firstGen({
143
+ ib: getArgIb(ibMetadata),
144
+ parentIbGib: factory.primitive({ ib: WITNESS_ARG_METADATA_STRING }),
145
+ data: argData,
146
+ dna: false,
147
+ noTimestamp,
148
+ });
149
+ if (resArgIbGib.newIbGib) {
150
+ const { newIbGib: resultIbGib } = resArgIbGib;
151
+ // clear out past, disregard any intermediate ibgibs.
152
+ resultIbGib.rel8ns.past = [];
153
+ resultIbGib.gib = await sha256v1(resultIbGib);
154
+ return resultIbGib;
155
+ }
156
+ else {
157
+ throw new Error(`create ibGib failed`);
158
+ }
159
+ }
160
+ catch (error) {
161
+ console.error(`${lc} ${error.message}`);
162
+ throw error;
163
+ }
164
+ }
165
+ /**
166
+ * This builds the result ibGib for a witness function.
167
+ *
168
+ * By default, the result is considered a one-off ibGib. As such,
169
+ * there is no dna and no uuid. The timestamp will be included, which
170
+ * adds some metadata (and makes for a most-often unique tjp). If there
171
+ * is something that needs to reference this result, it can use the
172
+ * the ibgib's address.
173
+ *
174
+ * @returns Result (wrapper) ibGib for a `witness` function.
175
+ */
176
+ export async function resulty_({ resultData, ibMetadata, noTimestamp, }) {
177
+ const lc = `[${resulty_.name}]`;
178
+ try {
179
+ const resResultIbGib = await factory.firstGen({
180
+ ib: getResultIb(ibMetadata),
181
+ parentIbGib: factory.primitive({ ib: WITNESS_RESULT_METADATA_STRING }),
182
+ data: resultData,
183
+ dna: false,
184
+ noTimestamp,
185
+ });
186
+ if (resResultIbGib?.newIbGib) {
187
+ const { newIbGib: resultIbGib } = resResultIbGib;
188
+ // clear out past, disregard any intermediate ibgibs.
189
+ resultIbGib.rel8ns.past = [];
190
+ resultIbGib.gib = await sha256v1(resultIbGib);
191
+ return resultIbGib;
192
+ }
193
+ else {
194
+ throw new Error(`create ibGib failed`);
195
+ }
196
+ }
197
+ catch (error) {
198
+ console.error(`${lc} ${error.message}`);
199
+ throw error;
200
+ }
201
+ }
202
+ /**
203
+ * If valid, returns null.
204
+ */
205
+ export function validateWitnessClassname({ classname, }) {
206
+ const lc = `[${validateWitnessClassname.name}]`;
207
+ try {
208
+ if (logalot) {
209
+ console.log(`${lc} starting...`);
210
+ }
211
+ if (!classname) {
212
+ throw new Error(`classname required (E: b1c7b455d58fdd8d77acd15bdf017722)`);
213
+ }
214
+ if (!classname.match(CLASSNAME_REGEXP)) {
215
+ return `classname (${classname}) must match regex ${CLASSNAME_REGEXP}`;
216
+ }
217
+ return null;
218
+ }
219
+ catch (error) {
220
+ console.error(`${lc} ${error.message}`);
221
+ throw error;
222
+ }
223
+ finally {
224
+ if (logalot) {
225
+ console.log(`${lc} complete.`);
226
+ }
227
+ }
228
+ }
229
+ //# sourceMappingURL=witness-helper.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-helper.mjs","sourceRoot":"","sources":["../../src/witness/witness-helper.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,211 @@
1
+ import { IbGibRel8ns_V1, IbGib_V1 } from '@ibgib/ts-gib/dist/V1/index.mjs';
2
+ import { IbGib, IbGibWithDataAndRel8ns, IbGibRel8ns, IbGibAddr } from '@ibgib/ts-gib';
3
+ import { ErrorIbGib_V1 } from '../common/error/error-types.mjs';
4
+ /**
5
+ * A witness is a lot like an ibGib analog for a function.
6
+ * Now remember in FP, a function takes a single arg, and
7
+ * multiple args are actually reified single-arg functions
8
+ * that are curried.
9
+ *
10
+ * So an ibGib witness is an ibGib that has a single function: `witness`.
11
+ * What can it witness? Another ibGib. What does it return? An ibGib.
12
+ *
13
+ * ## notes
14
+ *
15
+ * I'm not smart enough to descend this from just IbGib, so I'm doing
16
+ * IbGibwithDataAndRel8ns. This is more of a convenience anyway.
17
+ */
18
+ export interface Witness<TIbGibIn extends IbGib, TIbGibOut extends IbGib, TData = any, TRel8ns extends IbGibRel8ns = IbGibRel8ns> extends IbGibWithDataAndRel8ns<TData, TRel8ns> {
19
+ witness(arg: TIbGibIn): Promise<TIbGibOut | undefined>;
20
+ }
21
+ /**
22
+ * Data that corresponds to all witnesses being implemented in V1.
23
+ *
24
+ * This should be expanded only sparingly, and all properties should be optional.
25
+ */
26
+ export interface WitnessData_V1 {
27
+ /**
28
+ * @optional string for tracking version control of witness.
29
+ */
30
+ version?: string;
31
+ /**
32
+ * @optional Name for the witness.
33
+ */
34
+ name?: string;
35
+ /**
36
+ * @optional classname of the witness.
37
+ */
38
+ classname?: string;
39
+ /**
40
+ * @optional description of the witness.
41
+ */
42
+ description?: string;
43
+ /**
44
+ * @optional
45
+ *
46
+ * If true, then this will allow primitive args when validating incoming
47
+ * args.
48
+ *
49
+ * so if you want a witness to be able to witness, e.g., "16816^gib", then
50
+ * set this to truthy. Otherwise, this will flag this as a validation error.
51
+ */
52
+ allowPrimitiveArgs?: boolean;
53
+ /**
54
+ * If true, any calls to `witness` should have the opt and result ibGibs
55
+ * persisted, regardless of what the actual opt/result is. This is
56
+ * ultimately up to the witness itself though.
57
+ *
58
+ * This is like providing a persistent logging feature for the witness
59
+ * itself, as opposed to ephemeral logging via {@link trace}.
60
+ *
61
+ * ## implementation
62
+ *
63
+ * In the case of V1, WitnessBase_V1<...> has an empty function
64
+ */
65
+ persistOptsAndResultIbGibs?: boolean;
66
+ /**
67
+ * @optional
68
+ *
69
+ * "Should" be a unique identifier for the witness.
70
+ */
71
+ uuid?: string;
72
+ /**
73
+ * @optional configuration for `witness` call.
74
+ *
75
+ * If true, then this space will not catch an error in `witnessImpl`
76
+ * function.
77
+ *
78
+ * ## notes
79
+ *
80
+ * Descendants of Witness who don't override the base `witness` function
81
+ * (but rather override `witnessImpl` as expected) don't need to check
82
+ * for this explicitly, since it is referenced in the base `witness`
83
+ * function implementation.
84
+ */
85
+ catchAllErrors?: boolean;
86
+ /**
87
+ * @optional arg for verbose logging.
88
+ *
89
+ * Space implementations can check this value directly, or if
90
+ * they descend from `WitnessBase`, then there is a property
91
+ * that safely navigates this value.
92
+ */
93
+ trace?: boolean;
94
+ }
95
+ /**
96
+ * marker interface atm
97
+ */
98
+ export interface WitnessRel8ns_V1 extends IbGibRel8ns_V1 {
99
+ }
100
+ /**
101
+ * This interface simply types our data and rel8ns to V1 style.
102
+ */
103
+ export interface Witness_V1<TDataIn extends any, TRel8nsIn extends IbGibRel8ns_V1, TIbGibIn extends IbGib_V1<TDataIn, TRel8nsIn>, TDataOut extends any, TRel8nsOut extends IbGibRel8ns_V1, TIbGibOut extends IbGib_V1<TDataOut, TRel8nsOut> | ErrorIbGib_V1, TData extends WitnessData_V1 = any, TRel8ns extends WitnessRel8ns_V1 = WitnessRel8ns_V1> extends Witness<TIbGibIn, TIbGibOut, TData, TRel8ns> {
104
+ }
105
+ /**
106
+ * Base information for cmd with optional modifiers to interact with a witness.
107
+ *
108
+ * Note that it is not necessary for a witness to listen to these types of
109
+ * ibgibs, this is just convenient plumbing for those who wish to listen to
110
+ * command-style ibgibs.
111
+ */
112
+ export interface WitnessCmdData<TCmds, TCmdModifiers> {
113
+ /**
114
+ * Not really in use atm, but will use in the future.
115
+ */
116
+ version?: string;
117
+ /**
118
+ * The `cmd` property is the name of the command, analogous to a function
119
+ * name.
120
+ */
121
+ cmd: TCmds | string;
122
+ /**
123
+ * Optional modifier flag(s) to the command.
124
+ *
125
+ * ## notes
126
+ *
127
+ * An implementing class can always use/extend these or extend the interface
128
+ * of the options data.
129
+ */
130
+ cmdModifiers?: (TCmdModifiers | string)[];
131
+ /**
132
+ * Addrs of ibgibs to get/delete
133
+ */
134
+ ibGibAddrs?: IbGibAddr[];
135
+ }
136
+ export interface WitnessCmdRel8ns extends IbGibRel8ns_V1 {
137
+ }
138
+ export interface WitnessCmdIbGib<TIbGib extends IbGib, TCmds, TCmdModifiers, TCmdData extends WitnessCmdData<TCmds, TCmdModifiers>, TCmdRel8ns extends WitnessCmdRel8ns> extends IbGib_V1<TCmdData, TCmdRel8ns> {
139
+ /**
140
+ * When putting ibGibs, we don't want to persist the entire graph in the
141
+ * data object. So these ibGibs live on the ibGib arg object itself.
142
+ *
143
+ * If only ibGibs are passed in, and not their corresponding ibGibAddrs in
144
+ * the `TOptsData`, then you can't confirm cryptographically if the ibGibs
145
+ * are legit. But if you include their corresponding ibGibAddrs in that
146
+ * data, then the space can confirm that the ibGibs have not been altered
147
+ * from the expected cryptographic audit trail.
148
+ *
149
+ * This doesn't mean that the ibGibs are kosher completely, but at least
150
+ * there is internal agreement and an audit trail.
151
+ *
152
+ * ## example
153
+ *
154
+ * For an example, check out sync space saga
155
+ */
156
+ ibGibs?: TIbGib[];
157
+ }
158
+ export interface WitnessResultData {
159
+ /**
160
+ * The address of the options ibGib that corresponds this space result.
161
+ *
162
+ * So if you called `space.witness(opts)` which produced this result, this is
163
+ * `getIbGibAddr({ibGib: opts})`.
164
+ *
165
+ * Perhaps I should have this as a rel8n on the actual result ibGib instead of here
166
+ * in the data.
167
+ */
168
+ optsAddr: IbGibAddr;
169
+ /**
170
+ * true if the operation executed successfully.
171
+ *
172
+ * If this is a `canGet` or `canPut` `cmd`, this does NOT indicate if you
173
+ * can or can't. For that, see the `can` property of this interface.
174
+ */
175
+ success?: boolean;
176
+ /**
177
+ * Any error messages go here. If this is populated, then the `success`
178
+ * *should* be false (but obvious the interface can't guarantee implementation).
179
+ */
180
+ errors?: string[];
181
+ /**
182
+ * Any warnings that don't cause this operation to explicitly fail, i.e. `errors`
183
+ * is falsy/empty.
184
+ */
185
+ warnings?: string[];
186
+ /**
187
+ * If getting address(es), they will be here.
188
+ */
189
+ addrs?: IbGibAddr[];
190
+ /**
191
+ * Addresses for ibGibs which had errors.
192
+ */
193
+ addrsErrored?: IbGibAddr[];
194
+ }
195
+ export interface WitnessResultRel8ns extends IbGibRel8ns_V1 {
196
+ }
197
+ /**
198
+ * Optional witness result ibgib interface.
199
+ *
200
+ * You do NOT have to use this class when returning results for witness ibgibs.
201
+ * This is provided as convenience plumbing for when you do want a standard-ish
202
+ * special result ibgib.
203
+ */
204
+ export interface WitnessResultIbGib<TIbGib extends IbGib, TResultData extends WitnessResultData, TResultRel8ns extends WitnessResultRel8ns> extends IbGibWithDataAndRel8ns<TResultData, TResultRel8ns> {
205
+ /**
206
+ * When expecting ibGibs back, we don't want to persist the graph. So this property of
207
+ * ibGibs lives on the ibGib result object, but not in the `data` property.
208
+ */
209
+ ibGibs?: TIbGib[];
210
+ }
211
+ //# sourceMappingURL=witness-types.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-types.d.mts","sourceRoot":"","sources":["../../src/witness/witness-types.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=witness-types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-types.mjs","sourceRoot":"","sources":["../../src/witness/witness-types.mts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ {
2
+ "srcDir": "dist",
3
+ "srcFiles": [
4
+ "**/*[!spec].mjs"
5
+ ],
6
+ "specDir": "dist",
7
+ "specFiles": [
8
+ "**/*.spec.mjs"
9
+ ],
10
+ "env": {
11
+ "stopSpecOnExpectationFailure": false,
12
+ "stopOnSpecFailure": false,
13
+ "random": true
14
+ },
15
+ "browser": {
16
+ "name": "headlessChrome"
17
+ }
18
+ }
package/jasmine.json ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "spec_dir": "dist",
3
+ "spec_files": [
4
+ "**/*.spec.mjs"
5
+ ]
6
+ }