blacksmith-organization-system 1.3.1 → 1.5.1

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 (335) hide show
  1. package/README.md +23 -0
  2. package/dist/bos.d.ts +82 -0
  3. package/dist/bos.js +194 -0
  4. package/dist/bos.js.map +1 -0
  5. package/dist/bridges/apps-extensions/blender-inject.d.ts +1 -0
  6. package/dist/bridges/apps-extensions/blender-inject.js +2 -0
  7. package/dist/bridges/apps-extensions/blender-inject.js.map +1 -0
  8. package/dist/bridges/apps-extensions/chromeos-inject.d.ts +1 -0
  9. package/dist/bridges/apps-extensions/chromeos-inject.js +2 -0
  10. package/dist/bridges/apps-extensions/chromeos-inject.js.map +1 -0
  11. package/dist/bridges/apps-extensions/chromium-inject.d.ts +1 -0
  12. package/dist/bridges/apps-extensions/chromium-inject.js +2 -0
  13. package/dist/bridges/apps-extensions/chromium-inject.js.map +1 -0
  14. package/dist/bridges/apps-extensions/firefox-inject.d.ts +1 -0
  15. package/dist/bridges/apps-extensions/firefox-inject.js +2 -0
  16. package/dist/bridges/apps-extensions/firefox-inject.js.map +1 -0
  17. package/dist/bridges/apps-extensions/gimp-inject.d.ts +1 -0
  18. package/dist/bridges/apps-extensions/gimp-inject.js +2 -0
  19. package/dist/bridges/apps-extensions/gimp-inject.js.map +1 -0
  20. package/dist/bridges/apps-extensions/obs-inject.d.ts +1 -0
  21. package/dist/bridges/apps-extensions/obs-inject.js +2 -0
  22. package/dist/bridges/apps-extensions/obs-inject.js.map +1 -0
  23. package/dist/bridges/apps-extensions/obsidian-inject.d.ts +1 -0
  24. package/dist/bridges/apps-extensions/obsidian-inject.js +2 -0
  25. package/dist/bridges/apps-extensions/obsidian-inject.js.map +1 -0
  26. package/dist/bridges/apps-extensions/pythonmod-base.d.ts +1 -0
  27. package/dist/bridges/apps-extensions/pythonmod-base.js +2 -0
  28. package/dist/bridges/apps-extensions/pythonmod-base.js.map +1 -0
  29. package/dist/bridges/apps-extensions/thundrebird-inject.d.ts +1 -0
  30. package/dist/bridges/apps-extensions/thundrebird-inject.js +2 -0
  31. package/dist/bridges/apps-extensions/thundrebird-inject.js.map +1 -0
  32. package/dist/bridges/apps-extensions/vscode-inject.d.ts +1 -0
  33. package/dist/bridges/apps-extensions/vscode-inject.js +2 -0
  34. package/dist/bridges/apps-extensions/vscode-inject.js.map +1 -0
  35. package/dist/bridges/apps-extensions/webext-base.d.ts +1 -0
  36. package/dist/bridges/apps-extensions/webext-base.js +2 -0
  37. package/dist/bridges/apps-extensions/webext-base.js.map +1 -0
  38. package/dist/bridges/base.d.ts +7 -0
  39. package/dist/bridges/base.js +18 -0
  40. package/dist/bridges/base.js.map +1 -0
  41. package/dist/bridges/dedicated-implements/base-app-backends.d.ts +1 -0
  42. package/dist/bridges/dedicated-implements/base-app-backends.js +3 -0
  43. package/dist/bridges/dedicated-implements/base-app-backends.js.map +1 -0
  44. package/dist/bridges/dedicated-implements/base-app-frontends.d.ts +1 -0
  45. package/dist/bridges/dedicated-implements/base-app-frontends.js +3 -0
  46. package/dist/bridges/dedicated-implements/base-app-frontends.js.map +1 -0
  47. package/dist/bridges/dedicated-implements/capacitor-mobile-webapp.d.ts +1 -0
  48. package/dist/bridges/dedicated-implements/capacitor-mobile-webapp.js +3 -0
  49. package/dist/bridges/dedicated-implements/capacitor-mobile-webapp.js.map +1 -0
  50. package/dist/bridges/dedicated-implements/electron-desktop-webapp.d.ts +1 -0
  51. package/dist/bridges/dedicated-implements/electron-desktop-webapp.js +3 -0
  52. package/dist/bridges/dedicated-implements/electron-desktop-webapp.js.map +1 -0
  53. package/dist/bridges/dedicated-implements/general-webgui-app.d.ts +1 -0
  54. package/dist/bridges/dedicated-implements/general-webgui-app.js +3 -0
  55. package/dist/bridges/dedicated-implements/general-webgui-app.js.map +1 -0
  56. package/dist/bridges/dedicated-implements/openapi-server.d.ts +1 -0
  57. package/dist/bridges/dedicated-implements/openapi-server.js +3 -0
  58. package/dist/bridges/dedicated-implements/openapi-server.js.map +1 -0
  59. package/dist/bridges/devops-integration/bitbucket-pipeline.d.ts +1 -0
  60. package/dist/bridges/devops-integration/bitbucket-pipeline.js +2 -0
  61. package/dist/bridges/devops-integration/bitbucket-pipeline.js.map +1 -0
  62. package/dist/bridges/devops-integration/core-action.d.ts +1 -0
  63. package/dist/bridges/devops-integration/core-action.js +2 -0
  64. package/dist/bridges/devops-integration/core-action.js.map +1 -0
  65. package/dist/bridges/devops-integration/core-pipeline.d.ts +1 -0
  66. package/dist/bridges/devops-integration/core-pipeline.js +2 -0
  67. package/dist/bridges/devops-integration/core-pipeline.js.map +1 -0
  68. package/dist/bridges/devops-integration/core-runner.d.ts +1 -0
  69. package/dist/bridges/devops-integration/core-runner.js +2 -0
  70. package/dist/bridges/devops-integration/core-runner.js.map +1 -0
  71. package/dist/bridges/devops-integration/core-workflow.d.ts +1 -0
  72. package/dist/bridges/devops-integration/core-workflow.js +2 -0
  73. package/dist/bridges/devops-integration/core-workflow.js.map +1 -0
  74. package/dist/bridges/devops-integration/gitea-action.d.ts +1 -0
  75. package/dist/bridges/devops-integration/gitea-action.js +2 -0
  76. package/dist/bridges/devops-integration/gitea-action.js.map +1 -0
  77. package/dist/bridges/devops-integration/gitea-runner.d.ts +1 -0
  78. package/dist/bridges/devops-integration/gitea-runner.js +2 -0
  79. package/dist/bridges/devops-integration/gitea-runner.js.map +1 -0
  80. package/dist/bridges/devops-integration/gitea-workflow.d.ts +1 -0
  81. package/dist/bridges/devops-integration/gitea-workflow.js +2 -0
  82. package/dist/bridges/devops-integration/gitea-workflow.js.map +1 -0
  83. package/dist/bridges/devops-integration/github-action.d.ts +1 -0
  84. package/dist/bridges/devops-integration/github-action.js +2 -0
  85. package/dist/bridges/devops-integration/github-action.js.map +1 -0
  86. package/dist/bridges/devops-integration/github-runner.d.ts +1 -0
  87. package/dist/bridges/devops-integration/github-runner.js +2 -0
  88. package/dist/bridges/devops-integration/github-runner.js.map +1 -0
  89. package/dist/bridges/devops-integration/github-workflow.d.ts +1 -0
  90. package/dist/bridges/devops-integration/github-workflow.js +2 -0
  91. package/dist/bridges/devops-integration/github-workflow.js.map +1 -0
  92. package/dist/bridges/devops-integration/gitlab-pipeline.d.ts +1 -0
  93. package/dist/bridges/devops-integration/gitlab-pipeline.js +2 -0
  94. package/dist/bridges/devops-integration/gitlab-pipeline.js.map +1 -0
  95. package/dist/bridges/devops-integration/sourcehut-pipeline.d.ts +1 -0
  96. package/dist/bridges/devops-integration/sourcehut-pipeline.js +2 -0
  97. package/dist/bridges/devops-integration/sourcehut-pipeline.js.map +1 -0
  98. package/dist/bridges/devops-integration/standard-job.d.ts +1 -0
  99. package/dist/bridges/devops-integration/standard-job.js +2 -0
  100. package/dist/bridges/devops-integration/standard-job.js.map +1 -0
  101. package/dist/bridges/docs-publishers/base-docs.d.ts +1 -0
  102. package/dist/bridges/docs-publishers/base-docs.js +2 -0
  103. package/dist/bridges/docs-publishers/base-docs.js.map +1 -0
  104. package/dist/bridges/docs-publishers/gitbooks.d.ts +1 -0
  105. package/dist/bridges/docs-publishers/gitbooks.js +2 -0
  106. package/dist/bridges/docs-publishers/gitbooks.js.map +1 -0
  107. package/dist/bridges/docs-publishers/github-pages.d.ts +1 -0
  108. package/dist/bridges/docs-publishers/github-pages.js +2 -0
  109. package/dist/bridges/docs-publishers/github-pages.js.map +1 -0
  110. package/dist/bridges/docs-publishers/github-wiki.d.ts +1 -0
  111. package/dist/bridges/docs-publishers/github-wiki.js +2 -0
  112. package/dist/bridges/docs-publishers/github-wiki.js.map +1 -0
  113. package/dist/bridges/docs-publishers/obsidian-vault.d.ts +1 -0
  114. package/dist/bridges/docs-publishers/obsidian-vault.js +2 -0
  115. package/dist/bridges/docs-publishers/obsidian-vault.js.map +1 -0
  116. package/dist/bridges/docs-publishers/readthedocs.d.ts +1 -0
  117. package/dist/bridges/docs-publishers/readthedocs.js +2 -0
  118. package/dist/bridges/docs-publishers/readthedocs.js.map +1 -0
  119. package/dist/bridges/git-integration/bitbucket.d.ts +4 -0
  120. package/dist/bridges/git-integration/bitbucket.js +8 -0
  121. package/dist/bridges/git-integration/bitbucket.js.map +1 -0
  122. package/dist/bridges/git-integration/git-base.d.ts +4 -0
  123. package/dist/bridges/git-integration/git-base.js +9 -0
  124. package/dist/bridges/git-integration/git-base.js.map +1 -0
  125. package/dist/bridges/git-integration/gitea.d.ts +4 -0
  126. package/dist/bridges/git-integration/gitea.js +8 -0
  127. package/dist/bridges/git-integration/gitea.js.map +1 -0
  128. package/dist/bridges/{github.d.ts → git-integration/github.d.ts} +3 -5
  129. package/dist/bridges/{github.js → git-integration/github.js} +30 -19
  130. package/dist/bridges/git-integration/github.js.map +1 -0
  131. package/dist/bridges/git-integration/gitlab.d.ts +4 -0
  132. package/dist/bridges/git-integration/gitlab.js +8 -0
  133. package/dist/bridges/git-integration/gitlab.js.map +1 -0
  134. package/dist/bridges/git-integration/index.d.ts +8 -0
  135. package/dist/bridges/git-integration/index.js +15 -0
  136. package/dist/bridges/git-integration/index.js.map +1 -0
  137. package/dist/bridges/git-integration/local-git.d.ts +7 -0
  138. package/dist/bridges/{git.js → git-integration/local-git.js} +16 -19
  139. package/dist/bridges/git-integration/local-git.js.map +1 -0
  140. package/dist/bridges/git-integration/remote-git.d.ts +8 -0
  141. package/dist/bridges/git-integration/remote-git.js +11 -0
  142. package/dist/bridges/git-integration/remote-git.js.map +1 -0
  143. package/dist/bridges/git-integration/sourcehut.d.ts +4 -0
  144. package/dist/bridges/git-integration/sourcehut.js +8 -0
  145. package/dist/bridges/git-integration/sourcehut.js.map +1 -0
  146. package/dist/bridges/index.d.ts +2 -0
  147. package/dist/bridges/index.js +5 -0
  148. package/dist/bridges/index.js.map +1 -0
  149. package/dist/bridges/project-profiles/android-phone-app.d.ts +1 -0
  150. package/dist/bridges/project-profiles/android-phone-app.js +5 -0
  151. package/dist/bridges/project-profiles/android-phone-app.js.map +1 -0
  152. package/dist/bridges/project-profiles/desktop-app.d.ts +1 -0
  153. package/dist/bridges/project-profiles/desktop-app.js +3 -0
  154. package/dist/bridges/project-profiles/desktop-app.js.map +1 -0
  155. package/dist/bridges/project-profiles/python-package.d.ts +1 -0
  156. package/dist/bridges/project-profiles/python-package.js +6 -0
  157. package/dist/bridges/project-profiles/python-package.js.map +1 -0
  158. package/dist/bridges/scoping-families/corpocratic-association.d.ts +1 -0
  159. package/dist/bridges/scoping-families/corpocratic-association.js +2 -0
  160. package/dist/bridges/scoping-families/corpocratic-association.js.map +1 -0
  161. package/dist/bridges/scoping-families/dao-association.d.ts +1 -0
  162. package/dist/bridges/scoping-families/dao-association.js +2 -0
  163. package/dist/bridges/scoping-families/dao-association.js.map +1 -0
  164. package/dist/bridges/scoping-families/federation-association.d.ts +1 -0
  165. package/dist/bridges/scoping-families/federation-association.js +2 -0
  166. package/dist/bridges/scoping-families/federation-association.js.map +1 -0
  167. package/dist/bridges/scoping-families/opsor-group.d.ts +1 -0
  168. package/dist/bridges/scoping-families/opsor-group.js +2 -0
  169. package/dist/bridges/scoping-families/opsor-group.js.map +1 -0
  170. package/dist/bridges/scoping-families/organization.d.ts +1 -0
  171. package/dist/bridges/scoping-families/organization.js +2 -0
  172. package/dist/bridges/scoping-families/organization.js.map +1 -0
  173. package/dist/bridges/scoping-families/procom-group.d.ts +1 -0
  174. package/dist/bridges/scoping-families/procom-group.js +2 -0
  175. package/dist/bridges/scoping-families/procom-group.js.map +1 -0
  176. package/dist/bridges/scoping-families/single-user-operation.d.ts +1 -0
  177. package/dist/bridges/scoping-families/single-user-operation.js +2 -0
  178. package/dist/bridges/scoping-families/single-user-operation.js.map +1 -0
  179. package/dist/bridges/scoping-families/socmed-group.d.ts +1 -0
  180. package/dist/bridges/scoping-families/socmed-group.js +2 -0
  181. package/dist/bridges/scoping-families/socmed-group.js.map +1 -0
  182. package/dist/bridges/scoping-families/tristar-sociotronics.d.ts +1 -0
  183. package/dist/bridges/scoping-families/tristar-sociotronics.js +2 -0
  184. package/dist/bridges/scoping-families/tristar-sociotronics.js.map +1 -0
  185. package/dist/cli.js +45 -21
  186. package/dist/cli.js.map +1 -1
  187. package/dist/core/context.js +4 -2
  188. package/dist/core/context.js.map +1 -1
  189. package/dist/core/element.d.ts +2 -2
  190. package/dist/core/element.js +21 -9
  191. package/dist/core/element.js.map +1 -1
  192. package/dist/core/emitter.d.ts +8 -0
  193. package/dist/core/emitter.js +35 -0
  194. package/dist/core/emitter.js.map +1 -0
  195. package/dist/core/json-file.d.ts +12 -0
  196. package/dist/core/json-file.js +40 -0
  197. package/dist/core/json-file.js.map +1 -0
  198. package/dist/core/paths.d.ts +1 -0
  199. package/dist/core/paths.js +15 -4
  200. package/dist/core/paths.js.map +1 -1
  201. package/dist/core/procedure.js +6 -1
  202. package/dist/core/procedure.js.map +1 -1
  203. package/dist/core/serialize.d.ts +1 -0
  204. package/dist/core/serialize.js +5 -0
  205. package/dist/core/serialize.js.map +1 -0
  206. package/dist/core/tool.d.ts +1 -1
  207. package/dist/core/tool.js +17 -8
  208. package/dist/core/tool.js.map +1 -1
  209. package/dist/core/version.js +6 -3
  210. package/dist/core/version.js.map +1 -1
  211. package/dist/hosts/node.js +8 -3
  212. package/dist/hosts/node.js.map +1 -1
  213. package/dist/hosts/watch-tree.js +22 -11
  214. package/dist/hosts/watch-tree.js.map +1 -1
  215. package/dist/index.d.ts +13 -11
  216. package/dist/index.js +19 -12
  217. package/dist/index.js.map +1 -1
  218. package/dist/models/authors/entry.js +33 -14
  219. package/dist/models/authors/entry.js.map +1 -1
  220. package/dist/models/authors/file.js +4 -2
  221. package/dist/models/authors/file.js.map +1 -1
  222. package/dist/models/craftbook/class.js +1 -0
  223. package/dist/models/craftbook/class.js.map +1 -1
  224. package/dist/models/devlog/class.js +11 -3
  225. package/dist/models/devlog/class.js.map +1 -1
  226. package/dist/models/{_index.d.ts → index.d.ts} +2 -2
  227. package/dist/models/{_index.js → index.js} +3 -3
  228. package/dist/models/index.js.map +1 -0
  229. package/dist/models/loop/class.js +25 -12
  230. package/dist/models/loop/class.js.map +1 -1
  231. package/dist/models/loop/data.js +8 -1
  232. package/dist/models/loop/data.js.map +1 -1
  233. package/dist/models/loop/load.js +2 -1
  234. package/dist/models/loop/load.js.map +1 -1
  235. package/dist/models/project/around.js +4 -2
  236. package/dist/models/project/around.js.map +1 -1
  237. package/dist/models/project/class.js.map +1 -1
  238. package/dist/models/project/git.js +6 -3
  239. package/dist/models/project/git.js.map +1 -1
  240. package/dist/models/project/version.js +4 -2
  241. package/dist/models/project/version.js.map +1 -1
  242. package/dist/models/scope/class.js +10 -5
  243. package/dist/models/scope/class.js.map +1 -1
  244. package/dist/models/settings/load.js +4 -2
  245. package/dist/models/settings/load.js.map +1 -1
  246. package/dist/models/workshop/class.js.map +1 -1
  247. package/dist/models/workshop/locate.js +10 -5
  248. package/dist/models/workshop/locate.js.map +1 -1
  249. package/dist/procedures/automerging/context.d.ts +2 -2
  250. package/dist/procedures/automerging/steps.js +16 -7
  251. package/dist/procedures/automerging/steps.js.map +1 -1
  252. package/dist/procedures/bootstrapping/context.d.ts +1 -1
  253. package/dist/procedures/bootstrapping/record.js +6 -3
  254. package/dist/procedures/bootstrapping/record.js.map +1 -1
  255. package/dist/procedures/bumping/context.d.ts +3 -3
  256. package/dist/procedures/bumping/steps.js +29 -10
  257. package/dist/procedures/bumping/steps.js.map +1 -1
  258. package/dist/procedures/crediting/context.d.ts +3 -3
  259. package/dist/procedures/crediting/steps.js +7 -4
  260. package/dist/procedures/crediting/steps.js.map +1 -1
  261. package/dist/procedures/{_index.d.ts → index.d.ts} +3 -3
  262. package/dist/procedures/{_index.js → index.js} +4 -4
  263. package/dist/procedures/index.js.map +1 -0
  264. package/dist/procedures/inspecting/_index.d.ts +1 -1
  265. package/dist/procedures/inspecting/_index.js +1 -1
  266. package/dist/procedures/inspecting/_index.js.map +1 -1
  267. package/dist/procedures/inspecting/judge.js.map +1 -1
  268. package/dist/procedures/inspecting/read-forge.js +2 -1
  269. package/dist/procedures/inspecting/read-forge.js.map +1 -1
  270. package/dist/procedures/inspecting/report.d.ts +1 -1
  271. package/dist/procedures/inspecting/report.js.map +1 -1
  272. package/dist/procedures/proposing/context.d.ts +2 -2
  273. package/dist/procedures/proposing/steps.js +18 -7
  274. package/dist/procedures/proposing/steps.js.map +1 -1
  275. package/dist/procedures/reconciling/context.d.ts +2 -2
  276. package/dist/procedures/reconciling/steps.js +10 -5
  277. package/dist/procedures/reconciling/steps.js.map +1 -1
  278. package/dist/procedures/versioning/_index.d.ts +1 -1
  279. package/dist/procedures/versioning/_index.js +4 -2
  280. package/dist/procedures/versioning/_index.js.map +1 -1
  281. package/dist/procedures/watching/classify.d.ts +1 -1
  282. package/dist/procedures/watching/classify.js +18 -5
  283. package/dist/procedures/watching/classify.js.map +1 -1
  284. package/dist/procedures/watching/context.d.ts +1 -1
  285. package/dist/procedures/watching/start.js +8 -4
  286. package/dist/procedures/watching/start.js.map +1 -1
  287. package/dist/procedures/watching/wait.js +4 -2
  288. package/dist/procedures/watching/wait.js.map +1 -1
  289. package/dist/tools/_index.js +4 -2
  290. package/dist/tools/_index.js.map +1 -1
  291. package/dist/tools/devlog.js +10 -3
  292. package/dist/tools/devlog.js.map +1 -1
  293. package/dist/tools/flow.js +53 -10
  294. package/dist/tools/flow.js.map +1 -1
  295. package/dist/tools/project.js +7 -3
  296. package/dist/tools/project.js.map +1 -1
  297. package/dist/tools/scope.js +7 -3
  298. package/dist/tools/scope.js.map +1 -1
  299. package/dist/tools/version.js +9 -2
  300. package/dist/tools/version.js.map +1 -1
  301. package/dist/tools/workshop.js +5 -1
  302. package/dist/tools/workshop.js.map +1 -1
  303. package/dist/views/crediting.d.ts +2 -0
  304. package/dist/views/crediting.js +11 -0
  305. package/dist/views/crediting.js.map +1 -0
  306. package/dist/views/devlog.js +1 -1
  307. package/dist/views/devlog.js.map +1 -1
  308. package/dist/views/event.d.ts +1 -1
  309. package/dist/views/event.js +15 -3
  310. package/dist/views/event.js.map +1 -1
  311. package/dist/views/flow.d.ts +3 -3
  312. package/dist/views/flow.js +28 -8
  313. package/dist/views/flow.js.map +1 -1
  314. package/dist/views/help.js +22 -11
  315. package/dist/views/help.js.map +1 -1
  316. package/dist/views/status.d.ts +1 -1
  317. package/dist/views/status.js +67 -27
  318. package/dist/views/status.js.map +1 -1
  319. package/package.json +33 -4
  320. package/resources/web/README.md +9 -0
  321. package/resources/web/public/llms.txt +0 -0
  322. package/resources/web/public/manifest.json +0 -0
  323. package/resources/web/public/robots.txt +0 -0
  324. package/resources/web/public/sitemap.xml +0 -0
  325. package/dist/bridges/git.d.ts +0 -11
  326. package/dist/bridges/git.js.map +0 -1
  327. package/dist/bridges/github.js.map +0 -1
  328. package/dist/main.d.ts +0 -62
  329. package/dist/main.js +0 -133
  330. package/dist/main.js.map +0 -1
  331. package/dist/models/_index.js.map +0 -1
  332. package/dist/procedures/_index.js.map +0 -1
  333. package/dist/views/project.d.ts +0 -2
  334. package/dist/views/project.js +0 -11
  335. package/dist/views/project.js.map +0 -1
package/README.md CHANGED
@@ -25,6 +25,11 @@
25
25
  [![npmgraph](https://img.shields.io/badge/npmgraph-dependencies-informational)](https://npmgraph.js.org/?q=blacksmith-organization-system)
26
26
  [![VirusTotal](https://img.shields.io/badge/VirusTotal-release%20files-informational)](https://github.com/Sarverott/blacksmith-organization-system/releases/tag/latest)
27
27
  [![nightly](https://img.shields.io/badge/nightly-revision-orange)](https://github.com/Sarverott/blacksmith-organization-system/releases/tag/nightly)
28
+ [![github.com source](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fsource-github.com.json)](https://github.com/Sarverott/blacksmith-organization-system)
29
+ [![gitea.com mirror](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fmirror-gitea.com.json)](https://gitea.com/Sarverott/blacksmith-organization-system)
30
+ [![gitlab.com mirror](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fmirror-gitlab.com.json)](https://gitlab.com/Sarverott/blacksmith-organization-system)
31
+ [![bitbucket.org mirror](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fmirror-bitbucket.org.json)](https://bitbucket.org/apokryf/blacksmith-organization-system/)
32
+ [![sr.ht mirror](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fmirror-sr.ht.json)](https://git.sr.ht/~sarverott/blacksmith-organization-system)
28
33
 
29
34
  ---
30
35
 
@@ -96,6 +101,24 @@ The agents' skills and the Claude Code plugin are
96
101
  [bos-skillset](https://github.com/Sarverott/bos-skillset), which builds on
97
102
  this core.
98
103
 
104
+ ## public repositories of source code with cloned mirrors
105
+
106
+ Every branch and tag of the source goes to each mirror on every change, deletions
107
+ too (`mirrors-propagate-and-status-badges.yml`, the list in `.github/bos.json`).
108
+ The first badge of a place is the HTTP status of its page - `403 FORBIDDEN` when
109
+ its update failed - the second its own pipeline, running the checks.
110
+
111
+ - main source on github [![github.com source](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fsource-github.com.json)](https://github.com/Sarverott/blacksmith-organization-system) [![checks](https://img.shields.io/github/actions/workflow/status/Sarverott/blacksmith-organization-system/checks-on-push-changed-parts.yml?branch=development&label=checks)](https://github.com/Sarverott/blacksmith-organization-system/actions)
112
+ - https://github.com/Sarverott/blacksmith-organization-system
113
+ - mirror on gitea [![gitea.com mirror](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fmirror-gitea.com.json)](https://gitea.com/Sarverott/blacksmith-organization-system) [![gitea checks](https://gitea.com/Sarverott/blacksmith-organization-system/actions/workflows/checks.yml/badge.svg?branch=master)](https://gitea.com/Sarverott/blacksmith-organization-system/actions)
114
+ - https://gitea.com/Sarverott/blacksmith-organization-system
115
+ - mirror on gitlab [![gitlab.com mirror](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fmirror-gitlab.com.json)](https://gitlab.com/Sarverott/blacksmith-organization-system) [![gitlab pipeline](https://gitlab.com/Sarverott/blacksmith-organization-system/badges/master/pipeline.svg)](https://gitlab.com/Sarverott/blacksmith-organization-system/-/pipelines)
116
+ - https://gitlab.com/Sarverott/blacksmith-organization-system
117
+ - mirror on bitbucket [![bitbucket.org mirror](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fmirror-bitbucket.org.json)](https://bitbucket.org/apokryf/blacksmith-organization-system/) [![bitbucket pipelines](https://img.shields.io/bitbucket/pipelines/apokryf/blacksmith-organization-system/master)](https://bitbucket.org/apokryf/blacksmith-organization-system/pipelines)
118
+ - https://bitbucket.org/apokryf/blacksmith-organization-system/
119
+ - mirror on sourcehut [![sr.ht mirror](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FSarverott%2Fblacksmith-organization-system%2Fbadges%2Fmirror-sr.ht.json)](https://git.sr.ht/~sarverott/blacksmith-organization-system) [![sr.ht builds](https://builds.sr.ht/~sarverott/blacksmith-organization-system/commits/master/checks.yml.svg)](https://builds.sr.ht/~sarverott/blacksmith-organization-system/commits/master/checks.yml)
120
+ - https://git.sr.ht/~sarverott/blacksmith-organization-system
121
+
99
122
  ## Where the idea came from
100
123
 
101
124
  The basic idea was to automate repository control and make order in project
package/dist/bos.d.ts ADDED
@@ -0,0 +1,82 @@
1
+ import { Element } from "./core/element.ts";
2
+ import type { Host } from "./core/host.ts";
3
+ import type { LoopEvent } from "./core/version.ts";
4
+ import * as Models from "./models/index.ts";
5
+ import * as Procedures from "./procedures/index.ts";
6
+ export type BOSOptions = {
7
+ workshop?: string;
8
+ };
9
+ export type WatchOptions = {
10
+ signal: AbortSignal;
11
+ onEvent: (event: Procedures.WorkshopEvent) => void;
12
+ record?: boolean;
13
+ quietMs?: number;
14
+ };
15
+ export declare class BOS {
16
+ #private;
17
+ static readonly Element: typeof Element;
18
+ static readonly Workshop: typeof Models.Workshop;
19
+ static readonly System: typeof Models.System;
20
+ static readonly Setup: typeof Models.Setup;
21
+ static readonly Data: typeof Models.Data;
22
+ static readonly Nests: typeof Models.Nests;
23
+ static readonly Storylines: typeof Models.Storylines;
24
+ static readonly Logs: typeof Models.Logs;
25
+ static readonly Manifests: typeof Models.Manifests;
26
+ static readonly Ttystories: typeof Models.Ttystories;
27
+ static readonly Devarmory: typeof Models.Devarmory;
28
+ static readonly Forge: typeof Models.Forge;
29
+ static readonly Scope: typeof Models.Scope;
30
+ static readonly Project: typeof Models.Project;
31
+ static readonly Devlog: typeof Models.Devlog;
32
+ static readonly Craftbook: typeof Models.Craftbook;
33
+ static readonly Scrapnotes: typeof Models.Scrapnotes;
34
+ static readonly Archive: typeof Models.Archive;
35
+ static readonly Loop: typeof Models.Loop;
36
+ readonly host: Host;
37
+ readonly options: BOSOptions;
38
+ constructor(host: Host, options?: BOSOptions);
39
+ get workshop(): Models.Workshop;
40
+ bootstrap({ dryRun }?: {
41
+ dryRun?: boolean | undefined;
42
+ }): Promise<Procedures.BootstrapContext>;
43
+ inspect(): Promise<Procedures.WorkshopReport>;
44
+ watch({ signal, onEvent, record, quietMs }: WatchOptions): Promise<void>;
45
+ bumpScope(name: string, event: LoopEvent, { dryRun }?: {
46
+ dryRun?: boolean | undefined;
47
+ }): Promise<Procedures.VersionContext>;
48
+ settings(dir?: string): {
49
+ project: Models.Project;
50
+ settings: Models.Settings;
51
+ loop: Models.Loop;
52
+ versioning: Models.VersioningData;
53
+ };
54
+ loop(dir?: string): {
55
+ project: Models.Project;
56
+ loop: Models.Loop;
57
+ };
58
+ bump(station: string, { dir, dryRun }?: {
59
+ dir?: string;
60
+ dryRun?: boolean;
61
+ }): Promise<Procedures.BumpOutcome>;
62
+ bumpCommit({ dir, dryRun, }?: {
63
+ dir?: string;
64
+ dryRun?: boolean;
65
+ }): Promise<Procedures.BumpOutcome>;
66
+ mergeVersion(base: string, ours: string, theirs: string, { dir }?: {
67
+ dir?: string;
68
+ }): Promise<Procedures.ReconcileOutcome>;
69
+ authors({ dir, dryRun, }?: {
70
+ dir?: string;
71
+ dryRun?: boolean;
72
+ }): Promise<Procedures.CreditOutcome>;
73
+ propose(branch: string, { dir, dryRun }?: {
74
+ dir?: string;
75
+ dryRun?: boolean;
76
+ }): Promise<Procedures.FlowOutcome>;
77
+ automerge(number: number, { dir, dryRun }?: {
78
+ dir?: string;
79
+ dryRun?: boolean;
80
+ }): Promise<Procedures.FlowOutcome>;
81
+ toString(): string;
82
+ }
package/dist/bos.js ADDED
@@ -0,0 +1,194 @@
1
+ // The spine of BOS: one object that holds the host, finds the workshop and runs
2
+ // the procedures on it. Every face of BOS (CLI, library, later MCP and HTTP) goes
3
+ // through these methods.
4
+ // const bos = new BOS(new NodeHost()); const report = await bos.inspect();
5
+ import { GitHub, LocalGit } from "./bridges/index.js";
6
+ import { createContext } from "./core/context.js";
7
+ import { Element } from "./core/element.js";
8
+ import * as Models from "./models/index.js";
9
+ import * as Procedures from "./procedures/index.js";
10
+ export class BOS {
11
+ // Every model, reachable and built as BOS.<Model>: new BOS.Craftbook(host, path).
12
+ // (The models themselves extend Element from src/core: BOS imports them, so they cannot
13
+ // extend BOS.Element while this file is still loading.)
14
+ static Element = Element;
15
+ static Workshop = Models.Workshop;
16
+ static System = Models.System;
17
+ static Setup = Models.Setup;
18
+ static Data = Models.Data;
19
+ static Nests = Models.Nests;
20
+ static Storylines = Models.Storylines;
21
+ static Logs = Models.Logs;
22
+ static Manifests = Models.Manifests;
23
+ static Ttystories = Models.Ttystories;
24
+ static Devarmory = Models.Devarmory;
25
+ static Forge = Models.Forge;
26
+ static Scope = Models.Scope;
27
+ static Project = Models.Project;
28
+ static Devlog = Models.Devlog;
29
+ static Craftbook = Models.Craftbook;
30
+ static Scrapnotes = Models.Scrapnotes;
31
+ static Archive = Models.Archive;
32
+ static Loop = Models.Loop;
33
+ host;
34
+ options;
35
+ #workshop = null;
36
+ constructor(host, options = {}) {
37
+ this.host = host;
38
+ this.options = options;
39
+ }
40
+ // the active workshop: --workshop, $BOS_WORKSHOP, $WORKSHOP_ROOT/__WORKSHOP, an ancestor __WORKSHOP,
41
+ // or ~/__WORKSHOP ($WORKSHOP_RENAME changes the name)
42
+ get workshop() {
43
+ this.#workshop ??= Models.Workshop.locate(this.host, this.options.workshop);
44
+ return this.#workshop;
45
+ }
46
+ // build the base of the environment: create what is missing, never overwrite
47
+ async bootstrap({ dryRun = false } = {}) {
48
+ return Procedures.bootstrapping.run({
49
+ ...createContext(this.host, { dryRun }),
50
+ workshop: this.workshop,
51
+ });
52
+ }
53
+ // the whole workshop as one coherent environment, with findings; reads only
54
+ async inspect() {
55
+ const context = {
56
+ ...createContext(this.host),
57
+ workshop: this.workshop,
58
+ report: Procedures.emptyReport(this.workshop),
59
+ };
60
+ return (await Procedures.inspecting.run(context)).report;
61
+ }
62
+ // listen to every change in the workshop until options.signal aborts
63
+ async watch({ signal, onEvent, record = false, quietMs = 250 }) {
64
+ await Procedures.watching.run({
65
+ ...createContext(this.host),
66
+ workshop: this.workshop,
67
+ signal,
68
+ onEvent,
69
+ record,
70
+ quietMs,
71
+ });
72
+ }
73
+ // raise a scope's GRIH version for one loop event
74
+ async bumpScope(name, event, { dryRun = false } = {}) {
75
+ const scope = this.workshop.forge.scope(name);
76
+ return Procedures.versioning.run({
77
+ ...createContext(this.host, { dryRun }),
78
+ workshop: this.workshop,
79
+ scope,
80
+ event,
81
+ });
82
+ }
83
+ // the settings of the project around dir (default: the current directory): .github/bos.json
84
+ settings(dir) {
85
+ const project = Models.projectAround(this.host, dir);
86
+ const settings = Models.settingsOf(this.host, project.path);
87
+ return {
88
+ project,
89
+ settings,
90
+ loop: Models.loopOfSettings(settings),
91
+ versioning: Models.versioningOf(settings),
92
+ };
93
+ }
94
+ // the craft loop of the project around dir
95
+ loop(dir) {
96
+ const { project, loop } = this.settings(dir);
97
+ return { project, loop };
98
+ }
99
+ // bump the project's version for work landing on a station (once the line it leaves is released)
100
+ async bump(station, { dir, dryRun = false } = {}) {
101
+ const { project, versioning } = this.settings(dir);
102
+ const git = new LocalGit(this.host, project.path);
103
+ const context = {
104
+ ...createContext(this.host, { dryRun }),
105
+ projectPath: project.path,
106
+ station,
107
+ everyCommit: false,
108
+ versioning,
109
+ git,
110
+ outcome: Procedures.unbumped(),
111
+ };
112
+ return (await Procedures.bumping.run(context)).outcome;
113
+ }
114
+ // the bump of one commit on a contributor's branch (versioning.commits): every
115
+ // commit has its own version; other branches bump nothing here
116
+ async bumpCommit({ dir, dryRun = false, } = {}) {
117
+ const { project, versioning } = this.settings(dir);
118
+ const branch = project.report().git?.branch ?? null;
119
+ if (!branch || !Models.branchMatches(branch, versioning.commits.branches)) {
120
+ const where = branch ?? "a detached HEAD";
121
+ return {
122
+ ...Procedures.unbumped(),
123
+ reason: `${where} is not one of ${versioning.commits.branches.join(", ")}: no bump`,
124
+ };
125
+ }
126
+ const context = {
127
+ ...createContext(this.host, { dryRun }),
128
+ projectPath: project.path,
129
+ station: branch,
130
+ everyCommit: true,
131
+ versioning,
132
+ git: new LocalGit(this.host, project.path),
133
+ outcome: Procedures.unbumped(),
134
+ };
135
+ return (await Procedures.bumping.run(context)).outcome;
136
+ }
137
+ // git's merge driver for package.json / package-lock.json: the higher version on
138
+ // every side, then a usual three-way merge into ours
139
+ async mergeVersion(base, ours, theirs, { dir } = {}) {
140
+ const { project } = this.loop(dir);
141
+ const context = {
142
+ ...createContext(this.host),
143
+ git: new LocalGit(this.host, project.path),
144
+ files: { base, ours, theirs },
145
+ texts: { base: "", ours: "", theirs: "" },
146
+ outcome: Procedures.unreconciled(),
147
+ };
148
+ return (await Procedures.reconciling.run(context)).outcome;
149
+ }
150
+ // name everyone of the project's commits in its .github/AUTHORS
151
+ async authors({ dir, dryRun = false, } = {}) {
152
+ const { project } = this.loop(dir);
153
+ const file = Models.authorsFile(project.path);
154
+ const context = {
155
+ ...createContext(this.host, { dryRun }),
156
+ file,
157
+ git: new LocalGit(this.host, project.path),
158
+ lines: [],
159
+ identities: [],
160
+ outcome: Procedures.uncredited(file),
161
+ };
162
+ return (await Procedures.crediting.run(context)).outcome;
163
+ }
164
+ // open the pull request of a branch's forward step on GitHub
165
+ async propose(branch, { dir, dryRun = false } = {}) {
166
+ const { project, loop } = this.loop(dir);
167
+ const github = new GitHub(this.host, project.path);
168
+ const context = {
169
+ ...createContext(this.host, { dryRun }),
170
+ loop,
171
+ github,
172
+ branch,
173
+ outcome: Procedures.undecided(),
174
+ };
175
+ return (await Procedures.proposing.run(context)).outcome;
176
+ }
177
+ // merge a loop pull request when the loop allows it
178
+ async automerge(number, { dir, dryRun = false } = {}) {
179
+ const { project, loop } = this.loop(dir);
180
+ const github = new GitHub(this.host, project.path);
181
+ const context = {
182
+ ...createContext(this.host, { dryRun }),
183
+ loop,
184
+ github,
185
+ number,
186
+ outcome: Procedures.undecided(),
187
+ };
188
+ return (await Procedures.automerging.run(context)).outcome;
189
+ }
190
+ toString() {
191
+ return `[<Blacksmith_Organization_System::${this.workshop.path}>]`;
192
+ }
193
+ }
194
+ //# sourceMappingURL=bos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bos.js","sourceRoot":"","sources":["../src/bos.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=blender-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blender-inject.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/blender-inject.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=chromeos-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chromeos-inject.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/chromeos-inject.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=chromium-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chromium-inject.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/chromium-inject.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=firefox-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firefox-inject.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/firefox-inject.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=gimp-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gimp-inject.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/gimp-inject.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=obs-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"obs-inject.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/obs-inject.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=obsidian-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"obsidian-inject.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/obsidian-inject.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=pythonmod-base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pythonmod-base.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/pythonmod-base.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=thundrebird-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thundrebird-inject.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/thundrebird-inject.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=vscode-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vscode-inject.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/vscode-inject.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=webext-base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webext-base.js","sourceRoot":"","sources":["../../../src/bridges/apps-extensions/webext-base.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type { Host } from "../core/host.ts";
2
+ export declare class Bridge {
3
+ readonly host: Host;
4
+ readonly cwd: string;
5
+ constructor(host: Host, cwd: string);
6
+ protected command(bin: string, args: string[]): string;
7
+ }
@@ -0,0 +1,18 @@
1
+ export class Bridge {
2
+ host;
3
+ // where the system's commands run, e.g. the directory of a repository
4
+ cwd;
5
+ constructor(host, cwd) {
6
+ this.host = host;
7
+ this.cwd = cwd;
8
+ }
9
+ // the command's output, or an error naming it ("git tag --list: …")
10
+ command(bin, args) {
11
+ const { status, stdout, stderr } = this.host.run(bin, args, { cwd: this.cwd });
12
+ if (status !== 0) {
13
+ throw new Error(`${bin} ${args.slice(0, 2).join(" ")}: ${(stderr || stdout).trim()}`);
14
+ }
15
+ return stdout.trim();
16
+ }
17
+ }
18
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/bridges/base.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,MAAM;IACR,IAAI,CAAO;IACpB,sEAAsE;IAC7D,GAAG,CAAS;IAErB,YAAY,IAAU,EAAE,GAAW;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,oEAAoE;IAC1D,OAAO,CAAC,GAAW,EAAE,IAAc;QAC3C,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC/E,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ export {};
2
+ // core of backend
3
+ //# sourceMappingURL=base-app-backends.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-app-backends.js","sourceRoot":"","sources":["../../../src/bridges/dedicated-implements/base-app-backends.ts"],"names":[],"mappings":";AAAA,kBAAkB"}
@@ -0,0 +1,3 @@
1
+ export {};
2
+ // core of frontend
3
+ //# sourceMappingURL=base-app-frontends.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-app-frontends.js","sourceRoot":"","sources":["../../../src/bridges/dedicated-implements/base-app-frontends.ts"],"names":[],"mappings":";AAAA,mBAAmB"}
@@ -0,0 +1,3 @@
1
+ export {};
2
+ // https://capacitorjs.com/
3
+ //# sourceMappingURL=capacitor-mobile-webapp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capacitor-mobile-webapp.js","sourceRoot":"","sources":["../../../src/bridges/dedicated-implements/capacitor-mobile-webapp.ts"],"names":[],"mappings":";AAAA,2BAA2B"}
@@ -0,0 +1,3 @@
1
+ export {};
2
+ // https://www.electronjs.org/
3
+ //# sourceMappingURL=electron-desktop-webapp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"electron-desktop-webapp.js","sourceRoot":"","sources":["../../../src/bridges/dedicated-implements/electron-desktop-webapp.ts"],"names":[],"mappings":";AAAA,8BAA8B"}
@@ -0,0 +1,3 @@
1
+ export {};
2
+ // can be made with some magic stuff like xterm, vue, vite, react, astro, bulma and other
3
+ //# sourceMappingURL=general-webgui-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"general-webgui-app.js","sourceRoot":"","sources":["../../../src/bridges/dedicated-implements/general-webgui-app.ts"],"names":[],"mappings":";AAAA,yFAAyF"}
@@ -0,0 +1,3 @@
1
+ export {};
2
+ // standard minimal approach prepared with based on taskfiles and other existing stuff
3
+ //# sourceMappingURL=openapi-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi-server.js","sourceRoot":"","sources":["../../../src/bridges/dedicated-implements/openapi-server.ts"],"names":[],"mappings":";AAAA,sFAAsF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=bitbucket-pipeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bitbucket-pipeline.js","sourceRoot":"","sources":["../../../src/bridges/devops-integration/bitbucket-pipeline.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-action.js","sourceRoot":"","sources":["../../../src/bridges/devops-integration/core-action.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core-pipeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-pipeline.js","sourceRoot":"","sources":["../../../src/bridges/devops-integration/core-pipeline.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core-runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-runner.js","sourceRoot":"","sources":["../../../src/bridges/devops-integration/core-runner.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core-workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-workflow.js","sourceRoot":"","sources":["../../../src/bridges/devops-integration/core-workflow.ts"],"names":[],"mappings":""}