@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,52 @@
1
+ import { ENCRYPTION_REL8N_NAME } from '../../common/encrypt/encrypt-constants.mjs';
2
+ import { BOOTSTRAP_DATA_DEFAULT_SPACE_ID_KEY, BOOTSTRAP_DATA_KNOWN_SPACE_IDS_KEY } from './bootstrap/bootstrap-constants.mjs';
3
+ /** Cmds for interacting with ibgib spaces. */
4
+ export const IbGibSpaceOptionsCmd = {
5
+ /** Retrieve ibGib(s) out of the space (does not remove them). */
6
+ get: 'get',
7
+ /** Registers/imports ibGib(s) into the space. */
8
+ put: 'put',
9
+ /** Delete an ibGib from a space */
10
+ delete: 'delete',
11
+ };
12
+ /**
13
+ * Flags to affect the command's interpretation.
14
+ */
15
+ export const IbGibSpaceOptionsCmdModifier = {
16
+ /**
17
+ * Only interested if possibility to do command.
18
+ *
19
+ * This can be due to authorization or other.
20
+ */
21
+ can: 'can',
22
+ /**
23
+ * Only return the addresses of ibgibs
24
+ */
25
+ addrs: 'addrs',
26
+ /**
27
+ * Only interested in the latest one(s).
28
+ *
29
+ * The incoming addr(s) should be the tjp(s), since "latest"
30
+ * only makes sense with unique timelines which are referenced by
31
+ * their tjps.
32
+ *
33
+ * ## notes
34
+ *
35
+ * ATOW I'm actually using this in the aws dynamodb ibgib space to
36
+ * get "newer" ibgibs, not just the latest.
37
+ */
38
+ latest: 'latest',
39
+ /**
40
+ * Ask to get updates on tjps in ibGibAddrs.
41
+ */
42
+ watch: 'watch',
43
+ /*
44
+ * Ask to stop getting updates on tjps in ibGibAddrs.
45
+ */
46
+ unwatch: 'unwatch',
47
+ /**
48
+ * Get the tjp ibgibs/addrs for given ibgib(s)
49
+ */
50
+ tjps: 'tjps',
51
+ };
52
+ //# sourceMappingURL=space-types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"space-types.mjs","sourceRoot":"","sources":["../../../src/witness/space/space-types.mts"],"names":[],"mappings":"AAQA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,mCAAmC,EAAE,kCAAkC,EAAE,MAAM,qCAAqC,CAAC;AA0F9H,+CAA+C;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,iEAAiE;IACjE,GAAG,EAAE,KAA6B;IAClC,iDAAiD;IACjD,GAAG,EAAE,KAA6B;IAClC,mCAAmC;IACnC,MAAM,EAAE,QAAgC;CAC3C,CAAA;AAOD;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IACxC;;;;OAIG;IACH,GAAG,EAAE,KAAqC;IAC1C;;OAEG;IACH,KAAK,EAAE,OAAuC;IAC9C;;;;;;;;;;;OAWG;IACH,MAAM,EAAE,QAAwC;IAChD;;OAEG;IACH,KAAK,EAAE,OAAuC;IAC9C;;OAEG;IACH,OAAO,EAAE,SAAyC;IAClD;;OAEG;IACH,IAAI,EAAE,MAAsC;CAC/C,CAAA"}
@@ -0,0 +1,144 @@
1
+ import { IbGibRel8ns } from '@ibgib/ts-gib';
2
+ import { IbGib_V1, IbGibRel8ns_V1 } from '@ibgib/ts-gib/dist/V1/index.mjs';
3
+ import { WitnessData_V1, WitnessRel8ns_V1, Witness_V1 } from './witness-types.mjs';
4
+ import { ErrorIbGib_V1 } from '../common/error/error-types.mjs';
5
+ export declare abstract class WitnessBase_V1<TOptionsData extends any, TOptionsRel8ns extends IbGibRel8ns_V1, TOptionsIbGib extends IbGib_V1<TOptionsData, TOptionsRel8ns>, TResultData extends any, TResultRel8ns extends IbGibRel8ns_V1, TResultIbGib extends IbGib_V1<TResultData, TResultRel8ns> | ErrorIbGib_V1, TData extends WitnessData_V1 = any, TRel8ns extends IbGibRel8ns_V1 = IbGibRel8ns_V1> implements Witness_V1<TOptionsData, TOptionsRel8ns, TOptionsIbGib, // options arg
6
+ TResultData, TResultRel8ns, TResultIbGib, // result
7
+ TData, TRel8ns> {
8
+ /**
9
+ * Log context for convenience with logging. (Ignore if you don't want to use this.)
10
+ */
11
+ protected lc: string;
12
+ /**
13
+ * Optional arg for verbose logging.
14
+ */
15
+ protected set trace(value: boolean);
16
+ protected get trace(): boolean;
17
+ /**
18
+ * Optional configuration for `witness` call.
19
+ * If true, then this space will catch any error that propagates up
20
+ * from the `witnessImpl` function.
21
+ *
22
+ * ## notes
23
+ *
24
+ * Descendants of Witness who don't override the base `witness` function
25
+ * (but rather override `witnessImpl` as expected) don't need to check
26
+ * for this explicitly, since it is referenced in the base `witness`
27
+ * function implementation.
28
+ */
29
+ protected set catchAllErrors(value: boolean);
30
+ protected get catchAllErrors(): boolean;
31
+ /**
32
+ * Used per use case in implementing class.
33
+ *
34
+ * This property is a simple property (no getter/setter with backing
35
+ * fields). This is to simplify usage with DTOs (Data Transfer Objects) for
36
+ * storing in spaces.
37
+ */
38
+ ib: string;
39
+ /**
40
+ * Used per use case in implementing class.
41
+ *
42
+ * This property is a simple property (no getter/setter with backing
43
+ * fields). This is to simplify usage with DTOs (Data Transfer Objects) for
44
+ * storing in spaces.
45
+ */
46
+ gib: string | undefined;
47
+ /**
48
+ * Used per use case in implementing class.
49
+ *
50
+ * This property is a simple property (no getter/setter with backing
51
+ * fields). This is to simplify usage with DTOs (Data Transfer Objects) for
52
+ * storing in spaces.
53
+ */
54
+ data: TData | undefined;
55
+ /**
56
+ * Used per use case in implementing class.
57
+ *
58
+ * This property is a simple property (no getter/setter with backing
59
+ * fields). This is to simplify usage with DTOs (Data Transfer Objects) for
60
+ * storing in spaces.
61
+ */
62
+ rel8ns: TRel8ns | undefined;
63
+ constructor(initialData?: TData, initialRel8ns?: TRel8ns);
64
+ /**
65
+ * Creates a data transfer object (dto) snapshot out of this
66
+ * witness' `ib`, `gib`, `data` and `rel8ns` properties.
67
+ *
68
+ * I say "snapshot" because this copies each property
69
+ * (`ib`, `gib`, `data`, `rel8ns`).
70
+ *
71
+ * ## thoughts
72
+ *
73
+ * Witness classes need to be able to persist their ibgib
74
+ * just as regular data. But witnesses have the additional
75
+ * layer of behavior (e.g. the `witness` function) that
76
+ * will not persist (until we get more integrated version control
77
+ * types of functionality in ibgib).
78
+ *
79
+ * @returns dto ibgib object with just clones of this.ib/gib/data/rel8ns props.
80
+ *
81
+ * @see {loadIbGibDto}
82
+ */
83
+ toIbGibDto(): IbGib_V1<TData, TRel8ns>;
84
+ /**
85
+ * (Re)hydrates this witness class with the ibgib information from the dto.
86
+ *
87
+ * ## notes
88
+ *
89
+ * * You can extend this function for witness-specific behavior when loading.
90
+ *
91
+ * @param dto ib, gib, data & rel8ns to load for this witness ibgib instance.
92
+ *
93
+ * @see {toIbGibDto}
94
+ */
95
+ loadIbGibDto(dto: IbGib_V1<TData, TRel8ns>): Promise<void>;
96
+ /**
97
+ * The primary function of a witness is...well... to witness things.
98
+ *
99
+ * So this is the base implementation that includes validation
100
+ * plumbing, tracing, error checking/catching - all depending
101
+ * on witness configuration.
102
+ *
103
+ *
104
+ * ## usage
105
+ *
106
+ * Only override this function if you really want custom handling of
107
+ * the plumbing. Instead override `witnessImpl`.
108
+ *
109
+ * {@see validateThis}
110
+ * {@see validateWitnessArg}
111
+ *
112
+ * @param arg
113
+ * @returns
114
+ */
115
+ witness(arg: TOptionsIbGib): Promise<TResultIbGib | undefined>;
116
+ protected abstract witnessImpl(arg: TOptionsIbGib): Promise<TResultIbGib | undefined>;
117
+ /**
118
+ * Validate the incoming arg.
119
+ *
120
+ * Override this in descending classes per use case.
121
+ */
122
+ protected validateWitnessArg(arg: TOptionsIbGib): Promise<string[]>;
123
+ /**
124
+ * Validate this witness object, checking its own `data` and `rel8ns`, and
125
+ * possibly other state.
126
+ *
127
+ * ## notes
128
+ *
129
+ * ATOW base implementation of this just checks for non-falsy
130
+ * `this.ib` and `this.gib`
131
+ */
132
+ protected validateThis(): Promise<string[]>;
133
+ /**
134
+ * Empty implementation in this base class.
135
+ *
136
+ * @see {@link WitnessData_V1.persistOptsAndResultIbGibs}
137
+ */
138
+ protected persistOptsAndResultIbGibs({ arg, result }: {
139
+ arg: TOptionsIbGib;
140
+ result: TResultIbGib | undefined;
141
+ }): Promise<void>;
142
+ }
143
+ export type WitnessAny = WitnessBase_V1<any, IbGibRel8ns_V1, IbGib_V1, any, IbGibRel8ns, IbGib_V1, WitnessData_V1, WitnessRel8ns_V1>;
144
+ //# sourceMappingURL=witness-base-v1.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-base-v1.d.ts","sourceRoot":"","sources":["../../src/witness/witness-base-v1.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAa,MAAM,iCAAiC,CAAC;AAItF,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAG,MAAM,qBAAqB,CAAC;AAEpF,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAMhE,8BAAsB,cAAc,CAChC,YAAY,SAAS,GAAG,EACxB,cAAc,SAAS,cAAc,EACrC,aAAa,SAAS,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC,EAC5D,WAAW,SAAS,GAAG,EACvB,aAAa,SAAS,cAAc,EACpC,YAAY,SAAS,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,aAAa,EACzE,KAAK,SAAS,cAAc,GAAG,GAAG,EAClC,OAAO,SAAS,cAAc,GAAG,cAAc,CAE/C,YAAW,UAAU,CACjB,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc;AAC3D,WAAW,EAAE,aAAa,EAAE,YAAY,EAAK,SAAS;AACtD,KAAK,EAAE,OAAO,CACjB;IAED;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,CAA8B;IAElD;;OAEG;IACH,SAAS,KAAK,KAAK,CAAC,KAAK,EAAE,OAAO,EASjC;IACD,SAAS,KAAK,KAAK,IAAI,OAAO,CAAsC;IAEpE;;;;;;;;;;;OAWG;IACH,SAAS,KAAK,cAAc,CAAC,KAAK,EAAE,OAAO,EAS1C;IACD,SAAS,KAAK,cAAc,IAAI,OAAO,CAKtC;IAID;;;;;;OAMG;IACH,EAAE,EAAE,MAAM,CAAM;IAEhB;;;;;;OAMG;IACH,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IAExB;;;;;;OAMG;IACH,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;IAExB;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC;gBAIhB,WAAW,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,EAAE,OAAO;IAKxD;;;;;;;;;;;;;;;;;;OAkBG;IACH,UAAU,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IActC;;;;;;;;;;OAUG;IACH,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA0B1D;;;;;;;;;;;;;;;;;;OAkBG;IACG,OAAO,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAmCpE,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAErF;;;;OAIG;cACa,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA4BzE;;;;;;;;OAQG;cACa,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAajD;;;;OAIG;IACH,SAAS,CAAC,0BAA0B,CAAC,EACjC,GAAG,EACH,MAAM,EACT,EAAE;QACC,GAAG,EAAE,aAAa,CAAC;QACnB,MAAM,EAAE,YAAY,GAAG,SAAS,CAAA;KACnC,GAAG,OAAO,CAAC,IAAI,CAAC;CAMpB;AAED,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,300 @@
1
+ import * as h from '@ibgib/helper-gib';
2
+ import { getIbGibAddr } from '@ibgib/ts-gib';
3
+ import { sha256v1, } from '@ibgib/ts-gib/dist/V1/index.mjs';
4
+ import { getGibInfo } from '@ibgib/ts-gib/dist/V1/transforms/transform-helper.mjs';
5
+ import { validateGib, validateIb, validateIbGibIntrinsically } from '@ibgib/ts-gib/dist/V1/validate-helper.mjs';
6
+ import { toDto } from '../common/other/ibgib-helper.mjs';
7
+ import { GLOBAL_LOG_A_LOT } from '../core-constants.mjs';
8
+ const logalot = GLOBAL_LOG_A_LOT || false;
9
+ export class WitnessBase_V1 {
10
+ /**
11
+ * Optional arg for verbose logging.
12
+ */
13
+ set trace(value) {
14
+ const lc = `${this.lc}[set trace]`;
15
+ if (value === (this.data?.trace || false)) {
16
+ return;
17
+ }
18
+ if (this.data) {
19
+ this.data.trace = value;
20
+ delete this.gib; // gib is invalid now
21
+ }
22
+ else {
23
+ console.warn(`${lc} data is falsy. Can't set.`);
24
+ }
25
+ }
26
+ get trace() { return this.data?.trace ?? false; }
27
+ /**
28
+ * Optional configuration for `witness` call.
29
+ * If true, then this space will catch any error that propagates up
30
+ * from the `witnessImpl` function.
31
+ *
32
+ * ## notes
33
+ *
34
+ * Descendants of Witness who don't override the base `witness` function
35
+ * (but rather override `witnessImpl` as expected) don't need to check
36
+ * for this explicitly, since it is referenced in the base `witness`
37
+ * function implementation.
38
+ */
39
+ set catchAllErrors(value) {
40
+ const lc = `${this.lc}[set catchAllErrors]`;
41
+ if (value === this.data?.catchAllErrors) {
42
+ return;
43
+ }
44
+ if (this.data) {
45
+ this.data.catchAllErrors = value;
46
+ delete this.gib;
47
+ }
48
+ else {
49
+ console.error(`${lc} data is falsy. Can't set value.`);
50
+ }
51
+ }
52
+ get catchAllErrors() {
53
+ const lc = `${this.lc}[catchAllErrors]`;
54
+ const result = this.data?.catchAllErrors || false;
55
+ if (logalot || this.trace) {
56
+ console.log(`${lc} result: ${result}`);
57
+ }
58
+ return result;
59
+ }
60
+ // #endregion IbGib interface fields: ib, gib, data, rel8ns
61
+ constructor(initialData, initialRel8ns) {
62
+ /**
63
+ * Log context for convenience with logging. (Ignore if you don't want to use this.)
64
+ */
65
+ this.lc = `[${WitnessBase_V1.name}]`;
66
+ // #region IbGib interface fields: ib, gib, data, rel8ns
67
+ /**
68
+ * Used per use case in implementing class.
69
+ *
70
+ * This property is a simple property (no getter/setter with backing
71
+ * fields). This is to simplify usage with DTOs (Data Transfer Objects) for
72
+ * storing in spaces.
73
+ */
74
+ this.ib = '';
75
+ if (initialData) {
76
+ this.data = initialData;
77
+ }
78
+ if (initialRel8ns) {
79
+ this.rel8ns = initialRel8ns;
80
+ }
81
+ }
82
+ /**
83
+ * Creates a data transfer object (dto) snapshot out of this
84
+ * witness' `ib`, `gib`, `data` and `rel8ns` properties.
85
+ *
86
+ * I say "snapshot" because this copies each property
87
+ * (`ib`, `gib`, `data`, `rel8ns`).
88
+ *
89
+ * ## thoughts
90
+ *
91
+ * Witness classes need to be able to persist their ibgib
92
+ * just as regular data. But witnesses have the additional
93
+ * layer of behavior (e.g. the `witness` function) that
94
+ * will not persist (until we get more integrated version control
95
+ * types of functionality in ibgib).
96
+ *
97
+ * @returns dto ibgib object with just clones of this.ib/gib/data/rel8ns props.
98
+ *
99
+ * @see {loadIbGibDto}
100
+ */
101
+ toIbGibDto() {
102
+ return toDto({ ibGib: this });
103
+ // const lc = `${this.lc}[${this.toIbGibDto.name}]`;
104
+ // if (!this.ib) { console.warn(`${lc} this.ib is falsy. (W: 60162e3ab42941e9a68cd6adc8d23387)`); }
105
+ // if (!this.gib) { console.warn(`${lc} this.gib is falsy. (W: 61dc535639dc410d874635013fce5b8a)`); }
106
+ // let dtoIbGib: IbGib_V1<TData, TRel8ns> = { ib: (this.ib || '').slice() };
107
+ // if (this.gib) { dtoIbGib.gib = this.gib.slice(); };
108
+ // if (this.data) { dtoIbGib.data = h.clone(this.data); }
109
+ // if (this.rel8ns) { dtoIbGib.rel8ns = h.clone(this.rel8ns); }
110
+ // return dtoIbGib;
111
+ }
112
+ /**
113
+ * (Re)hydrates this witness class with the ibgib information from the dto.
114
+ *
115
+ * ## notes
116
+ *
117
+ * * You can extend this function for witness-specific behavior when loading.
118
+ *
119
+ * @param dto ib, gib, data & rel8ns to load for this witness ibgib instance.
120
+ *
121
+ * @see {toIbGibDto}
122
+ */
123
+ loadIbGibDto(dto) {
124
+ const lc = `${this.lc}[${this.loadIbGibDto.name}]`;
125
+ try {
126
+ if (logalot) {
127
+ console.log(`${lc} starting...`);
128
+ }
129
+ if (!dto.ib) {
130
+ console.warn(`${lc} dto.ib is falsy.`);
131
+ }
132
+ if (!dto.gib) {
133
+ console.warn(`${lc} dto.gib is falsy.`);
134
+ }
135
+ this.ib = h.clone(dto.ib);
136
+ this.gib = h.clone(dto.gib);
137
+ if (dto.data) {
138
+ this.data = h.clone(dto.data);
139
+ }
140
+ else {
141
+ delete this.data;
142
+ }
143
+ if (dto.rel8ns) {
144
+ this.rel8ns = h.clone(dto.rel8ns);
145
+ }
146
+ else {
147
+ delete this.rel8ns;
148
+ }
149
+ return Promise.resolve();
150
+ }
151
+ catch (error) {
152
+ console.error(`${lc} ${error.message}`);
153
+ throw error;
154
+ }
155
+ finally {
156
+ if (logalot) {
157
+ console.log(`${lc} complete.`);
158
+ }
159
+ }
160
+ }
161
+ /**
162
+ * The primary function of a witness is...well... to witness things.
163
+ *
164
+ * So this is the base implementation that includes validation
165
+ * plumbing, tracing, error checking/catching - all depending
166
+ * on witness configuration.
167
+ *
168
+ *
169
+ * ## usage
170
+ *
171
+ * Only override this function if you really want custom handling of
172
+ * the plumbing. Instead override `witnessImpl`.
173
+ *
174
+ * {@see validateThis}
175
+ * {@see validateWitnessArg}
176
+ *
177
+ * @param arg
178
+ * @returns
179
+ */
180
+ async witness(arg) {
181
+ const lc = `${this.lc}[${this.witness.name}]`;
182
+ try {
183
+ if (!this.gib) {
184
+ this.gib = await sha256v1(this.toIbGibDto());
185
+ }
186
+ const validationErrors_this = await this.validateThis();
187
+ if (validationErrors_this?.length > 0) {
188
+ for (const error of validationErrors_this) {
189
+ console.error(`${lc} ${error}`);
190
+ }
191
+ throw new Error(`internal witness validation failed. See \`WitnessBase_V1.validateThis\` (E: 2b5f73cadbfa416ba189346f3c31cd0c)`);
192
+ }
193
+ const validationErrors_arg = await this.validateWitnessArg(arg);
194
+ if (validationErrors_arg?.length > 0) {
195
+ for (const error of validationErrors_arg) {
196
+ console.error(`${lc} ${error}`);
197
+ }
198
+ debugger;
199
+ throw new Error(`arg validation failed. See \`WitnessBase_V1.validateWitnessArg\` (E: 51531a1d928a485e8ffc277145ec44e9)`);
200
+ }
201
+ if (logalot || this.trace) {
202
+ console.log(`${lc} addr: ${getIbGibAddr(arg)}`);
203
+ }
204
+ if (logalot) {
205
+ console.log(`${lc} addr: ${getIbGibAddr(arg)} (I: f4cf13a44c4e4fc3903f14018e616c64)`);
206
+ }
207
+ const result = await this.witnessImpl(arg);
208
+ // persist the arg and result if we're configured to do so it is up
209
+ // to the implementation whether or not to throw on this.
210
+ if (this.data?.persistOptsAndResultIbGibs) {
211
+ await this.persistOptsAndResultIbGibs({ arg, result });
212
+ }
213
+ return result;
214
+ }
215
+ catch (error) {
216
+ console.error(`${lc} ${error.message || 'unknown error (E: 3e22bea4c7fb4668bf13d7146b927869)'}`);
217
+ if (!this.catchAllErrors) {
218
+ throw error;
219
+ }
220
+ else {
221
+ return; // undefined
222
+ }
223
+ }
224
+ }
225
+ /**
226
+ * Validate the incoming arg.
227
+ *
228
+ * Override this in descending classes per use case.
229
+ */
230
+ async validateWitnessArg(arg) {
231
+ const lc = `${this.lc}[${this.validateWitnessArg.name}]`;
232
+ try {
233
+ const errors = [];
234
+ if (!arg) {
235
+ errors.push(`arg required (E: a222db3b668e4bb09cfd82e75c07bfa6)`);
236
+ }
237
+ const ibErrors = validateIb({ ib: arg?.ib });
238
+ if (ibErrors?.length ?? 0 > 0) {
239
+ errors.push(`invalid arg.ib (E: 2ae362ef274d4c3bb9716800f2106d28) errors: ${ibErrors.join('\n')}`);
240
+ }
241
+ const gibErrors = validateGib({ gib: arg?.gib });
242
+ if (gibErrors?.length ?? 0 > 0) {
243
+ errors.push(`invalid arg.gib (E: 73be275058084d768a39299337f2ce34) errors: ${gibErrors.join('\n')}`);
244
+ }
245
+ const intrinsicErrors = await validateIbGibIntrinsically({ ibGib: arg });
246
+ if (intrinsicErrors?.length ?? 0 > 0) {
247
+ errors.push(`arg ibgib invalid intrinsically (E: 73be275058084d768a39299337f2ce34) errors: ${intrinsicErrors.join('\n')}`);
248
+ }
249
+ else if (!this.data?.allowPrimitiveArgs) {
250
+ // further check to see if primitive
251
+ const gibInfo = getGibInfo({ gib: arg.gib });
252
+ if (gibInfo.isPrimitive) {
253
+ errors.push(`arg is primitive (i.e. gib === "gib") and witness.data.allowPrimitiveArgs is falsy. (E: d0aa3d7ad4f54b01bd0023300d15ecd9)`);
254
+ }
255
+ }
256
+ return errors;
257
+ }
258
+ catch (error) {
259
+ console.error(`${lc} ${error.message}`);
260
+ throw error;
261
+ }
262
+ }
263
+ /**
264
+ * Validate this witness object, checking its own `data` and `rel8ns`, and
265
+ * possibly other state.
266
+ *
267
+ * ## notes
268
+ *
269
+ * ATOW base implementation of this just checks for non-falsy
270
+ * `this.ib` and `this.gib`
271
+ */
272
+ async validateThis() {
273
+ const lc = `${this.lc}[${this.validateThis.name}]`;
274
+ const errors = [];
275
+ try {
276
+ if (!this.ib) {
277
+ errors.push(`this.ib is falsy.`);
278
+ }
279
+ if (!this.gib) {
280
+ errors.push(`this.gib is falsy.`);
281
+ }
282
+ }
283
+ catch (error) {
284
+ console.error(`${lc} ${error.message}`);
285
+ throw error;
286
+ }
287
+ return errors;
288
+ }
289
+ /**
290
+ * Empty implementation in this base class.
291
+ *
292
+ * @see {@link WitnessData_V1.persistOptsAndResultIbGibs}
293
+ */
294
+ persistOptsAndResultIbGibs({ arg, result }) {
295
+ const lc = `${this.lc}[${this.persistOptsAndResultIbGibs.name}]`;
296
+ console.warn(`${lc} not implemented in this base class. Override this in descendent class. (W: 087514e851704322a4ec8069a73ce944)`);
297
+ return Promise.resolve();
298
+ }
299
+ }
300
+ //# sourceMappingURL=witness-base-v1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-base-v1.js","sourceRoot":"","sources":["../../src/witness/witness-base-v1.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const WITNESS_ARG_METADATA_STRING = "witness_arg";
2
+ export declare const WITNESS_RESULT_METADATA_STRING = "witness_result";
3
+ //# sourceMappingURL=witness-constants.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-constants.d.mts","sourceRoot":"","sources":["../../src/witness/witness-constants.mts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,gBAAgB,CAAC;AACzD,eAAO,MAAM,8BAA8B,mBAAmB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export const WITNESS_ARG_METADATA_STRING = 'witness_arg';
2
+ export const WITNESS_RESULT_METADATA_STRING = 'witness_result';
3
+ //# sourceMappingURL=witness-constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-constants.mjs","sourceRoot":"","sources":["../../src/witness/witness-constants.mts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,2BAA2B,GAAG,aAAa,CAAC;AACzD,MAAM,CAAC,MAAM,8BAA8B,GAAG,gBAAgB,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { DynamicFormBuilder } from '../common/form/form-helper.mjs';
2
+ import { WitnessData_V1 } from '../witness/witness-types.mjs';
3
+ /**
4
+ * Fluent-style builder helper class.
5
+ *
6
+ * I'm making this to share common fields' settings among witness classes.
7
+ *
8
+ * Descend from this class for sharing other commonalities.
9
+ */
10
+ export declare class WitnessFormBuilder extends DynamicFormBuilder {
11
+ protected lc: string;
12
+ allowPrimitiveArgs({ of, required, }: {
13
+ of: boolean | undefined;
14
+ required?: boolean;
15
+ }): WitnessFormBuilder;
16
+ catchAllErrors({ of, required, }: {
17
+ of: boolean | undefined;
18
+ required?: boolean;
19
+ }): WitnessFormBuilder;
20
+ persistOptsAndResultIbGibs({ of, required, }: {
21
+ of: boolean | undefined;
22
+ required?: boolean;
23
+ }): WitnessFormBuilder;
24
+ trace({ of, required, }: {
25
+ of: boolean | undefined;
26
+ required?: boolean;
27
+ }): WitnessFormBuilder;
28
+ /**
29
+ * Includes common witness fields.
30
+ *
31
+ * All common fields default to `true`, so set any you want to skip to
32
+ * `false`.
33
+ *
34
+ * @returns `this` for fluent builder
35
+ */
36
+ commonWitnessFields({ data, allowPrimitiveArgs, catchAllErrors, persistOptsAndResultIbGibs, trace, version, }: {
37
+ data: WitnessData_V1;
38
+ allowPrimitiveArgs?: boolean;
39
+ catchAllErrors?: boolean;
40
+ persistOptsAndResultIbGibs?: boolean;
41
+ trace?: boolean;
42
+ version?: boolean;
43
+ }): WitnessFormBuilder;
44
+ }
45
+ //# sourceMappingURL=witness-form-builder.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"witness-form-builder.d.mts","sourceRoot":"","sources":["../../src/witness/witness-form-builder.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAI9D;;;;;;GAMG;AACH,qBAAa,kBAAmB,SAAQ,kBAAkB;IACtD,SAAS,CAAC,EAAE,EAAE,MAAM,CAAkC;IAEtD,kBAAkB,CAAC,EACf,EAAE,EACF,QAAe,GAClB,EAAE;QACC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC;QACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,GAAG,kBAAkB;IActB,cAAc,CAAC,EACX,EAAE,EACF,QAAe,GAClB,EAAE;QACC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC;QACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,GAAG,kBAAkB;IActB,0BAA0B,CAAC,EACvB,EAAE,EACF,QAAe,GAClB,EAAE;QACC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC;QACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,GAAG,kBAAkB;IActB,KAAK,CAAC,EACF,EAAE,EACF,QAAQ,GACX,EAAE;QACC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC;QACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,GAAG,kBAAkB;IActB;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAChB,IAAI,EACJ,kBAAyB,EACzB,cAAqB,EACrB,0BAAiC,EACjC,KAAY,EACZ,OAAc,GACjB,EAAE;QACC,IAAI,EAAE,cAAc,CAAC;QACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,0BAA0B,CAAC,EAAE,OAAO,CAAC;QACrC,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,OAAO,CAAC,EAAE,OAAO,CAAC;KACrB,GAAG,kBAAkB;CASzB"}