@tappify/cli 1.4.0 → 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 (390) hide show
  1. package/README.md +106 -31
  2. package/dist/src/app.module.js +6 -2
  3. package/dist/src/app.module.js.map +1 -1
  4. package/dist/src/core/api/api.service.d.ts +28 -2
  5. package/dist/src/core/api/api.service.js +151 -29
  6. package/dist/src/core/api/api.service.js.map +1 -1
  7. package/dist/src/core/auth/auth.service.d.ts +1 -0
  8. package/dist/src/core/auth/auth.service.js +23 -0
  9. package/dist/src/core/auth/auth.service.js.map +1 -1
  10. package/dist/src/core/config/config.service.d.ts +10 -2
  11. package/dist/src/core/config/config.service.js +13 -3
  12. package/dist/src/core/config/config.service.js.map +1 -1
  13. package/dist/src/core/core.module.js +33 -2
  14. package/dist/src/core/core.module.js.map +1 -1
  15. package/dist/src/core/environment/environment.service.d.ts +24 -0
  16. package/dist/src/core/environment/environment.service.js +93 -0
  17. package/dist/src/core/environment/environment.service.js.map +1 -0
  18. package/dist/src/core/environment/index.d.ts +1 -0
  19. package/dist/src/core/environment/index.js +18 -0
  20. package/dist/src/core/environment/index.js.map +1 -0
  21. package/dist/src/core/image/image-size.d.ts +5 -0
  22. package/dist/src/core/image/image-size.js +37 -0
  23. package/dist/src/core/image/image-size.js.map +1 -0
  24. package/dist/src/core/image/index.d.ts +1 -0
  25. package/dist/src/{domains/init/runners → core/image}/index.js +1 -1
  26. package/dist/src/core/image/index.js.map +1 -0
  27. package/dist/src/core/index.d.ts +10 -0
  28. package/dist/src/core/index.js +10 -0
  29. package/dist/src/core/index.js.map +1 -1
  30. package/dist/src/core/link/project-link.service.d.ts +13 -0
  31. package/dist/src/{domains/init/runners/init.runner.js → core/link/project-link.service.js} +54 -44
  32. package/dist/src/core/link/project-link.service.js.map +1 -0
  33. package/dist/src/core/manifest/index.d.ts +2 -0
  34. package/dist/src/core/manifest/index.js +19 -0
  35. package/dist/src/core/manifest/index.js.map +1 -0
  36. package/dist/src/core/manifest/manifest.service.d.ts +14 -0
  37. package/dist/src/core/manifest/manifest.service.js +141 -0
  38. package/dist/src/core/manifest/manifest.service.js.map +1 -0
  39. package/dist/src/core/manifest/scope-rules.d.ts +8 -0
  40. package/dist/src/core/manifest/scope-rules.js +95 -0
  41. package/dist/src/core/manifest/scope-rules.js.map +1 -0
  42. package/dist/src/core/output/colors.d.ts +6 -0
  43. package/dist/src/core/output/colors.js +27 -0
  44. package/dist/src/core/output/colors.js.map +1 -0
  45. package/dist/src/core/output/index.d.ts +2 -0
  46. package/dist/src/core/output/index.js +19 -0
  47. package/dist/src/core/output/index.js.map +1 -0
  48. package/dist/src/core/output/output.service.d.ts +37 -0
  49. package/dist/src/core/output/output.service.js +119 -0
  50. package/dist/src/core/output/output.service.js.map +1 -0
  51. package/dist/src/core/project/index.d.ts +1 -0
  52. package/dist/src/core/project/index.js +18 -0
  53. package/dist/src/core/project/index.js.map +1 -0
  54. package/dist/src/core/project/package-manager.d.ts +6 -0
  55. package/dist/src/core/project/package-manager.js +47 -0
  56. package/dist/src/core/project/package-manager.js.map +1 -0
  57. package/dist/src/core/prompt/prompt.service.d.ts +17 -0
  58. package/dist/src/core/prompt/prompt.service.js +299 -0
  59. package/dist/src/core/prompt/prompt.service.js.map +1 -0
  60. package/dist/src/core/registry/index.d.ts +1 -0
  61. package/dist/src/core/registry/index.js +18 -0
  62. package/dist/src/core/registry/index.js.map +1 -0
  63. package/dist/src/core/registry/registry.service.d.ts +55 -0
  64. package/dist/src/core/registry/registry.service.js +119 -0
  65. package/dist/src/core/registry/registry.service.js.map +1 -0
  66. package/dist/src/core/shell/shell.service.d.ts +10 -5
  67. package/dist/src/core/shell/shell.service.js +109 -15
  68. package/dist/src/core/shell/shell.service.js.map +1 -1
  69. package/dist/src/core/shutdown/teardown.d.ts +3 -0
  70. package/dist/src/core/shutdown/teardown.js +22 -0
  71. package/dist/src/core/shutdown/teardown.js.map +1 -0
  72. package/dist/src/core/templates/index.d.ts +1 -0
  73. package/dist/src/core/templates/index.js +18 -0
  74. package/dist/src/core/templates/index.js.map +1 -0
  75. package/dist/src/core/templates/template.service.d.ts +10 -0
  76. package/dist/src/core/templates/template.service.js +91 -0
  77. package/dist/src/core/templates/template.service.js.map +1 -0
  78. package/dist/src/core/update/update-notifier.d.ts +6 -0
  79. package/dist/src/core/update/update-notifier.js +90 -28
  80. package/dist/src/core/update/update-notifier.js.map +1 -1
  81. package/dist/src/core/version.d.ts +5 -0
  82. package/dist/src/core/version.js +21 -0
  83. package/dist/src/core/version.js.map +1 -0
  84. package/dist/src/domains/auth/runners/login.runner.js +5 -1
  85. package/dist/src/domains/auth/runners/login.runner.js.map +1 -1
  86. package/dist/src/domains/auth/runners/logout.runner.js +1 -1
  87. package/dist/src/domains/auth/runners/logout.runner.js.map +1 -1
  88. package/dist/src/domains/deployments/runners/configure.runner.d.ts +6 -1
  89. package/dist/src/domains/deployments/runners/configure.runner.js +231 -200
  90. package/dist/src/domains/deployments/runners/configure.runner.js.map +1 -1
  91. package/dist/src/domains/environment/environment.module.d.ts +2 -0
  92. package/dist/src/domains/environment/environment.module.js +25 -0
  93. package/dist/src/domains/environment/environment.module.js.map +1 -0
  94. package/dist/src/domains/environment/index.d.ts +2 -0
  95. package/dist/src/domains/{deploy → environment}/index.js +1 -1
  96. package/dist/src/domains/environment/index.js.map +1 -0
  97. package/dist/src/domains/environment/runners/environment-current.runner.d.ts +7 -0
  98. package/dist/src/domains/environment/runners/environment-current.runner.js +35 -0
  99. package/dist/src/domains/environment/runners/environment-current.runner.js.map +1 -0
  100. package/dist/src/domains/environment/runners/environment-switcher.service.d.ts +11 -0
  101. package/dist/src/domains/environment/runners/environment-switcher.service.js +74 -0
  102. package/dist/src/domains/environment/runners/environment-switcher.service.js.map +1 -0
  103. package/dist/src/domains/environment/runners/environment-use.runner.d.ts +11 -0
  104. package/dist/src/domains/environment/runners/environment-use.runner.js +46 -0
  105. package/dist/src/domains/environment/runners/environment-use.runner.js.map +1 -0
  106. package/dist/src/domains/environment/runners/environment.command.d.ts +12 -0
  107. package/dist/src/domains/environment/runners/environment.command.js +53 -0
  108. package/dist/src/domains/environment/runners/environment.command.js.map +1 -0
  109. package/dist/src/domains/environment/runners/index.d.ts +4 -0
  110. package/dist/src/domains/environment/runners/index.js +21 -0
  111. package/dist/src/domains/environment/runners/index.js.map +1 -0
  112. package/dist/src/domains/extension/containers.d.ts +13 -0
  113. package/dist/src/domains/extension/containers.js +239 -0
  114. package/dist/src/domains/extension/containers.js.map +1 -0
  115. package/dist/src/domains/extension/extension.module.d.ts +2 -0
  116. package/dist/src/domains/extension/extension.module.js +66 -0
  117. package/dist/src/domains/extension/extension.module.js.map +1 -0
  118. package/dist/src/domains/extension/index.d.ts +1 -0
  119. package/dist/src/domains/extension/index.js +18 -0
  120. package/dist/src/domains/extension/index.js.map +1 -0
  121. package/dist/src/domains/extension/kinds.assistant.d.ts +2 -0
  122. package/dist/src/domains/extension/kinds.assistant.js +296 -0
  123. package/dist/src/domains/extension/kinds.assistant.js.map +1 -0
  124. package/dist/src/domains/extension/kinds.d.ts +8 -0
  125. package/dist/src/domains/extension/kinds.js +42 -0
  126. package/dist/src/domains/extension/kinds.js.map +1 -0
  127. package/dist/src/domains/extension/kinds.server.d.ts +3 -0
  128. package/dist/src/domains/extension/kinds.server.js +221 -0
  129. package/dist/src/domains/extension/kinds.server.js.map +1 -0
  130. package/dist/src/domains/extension/kinds.types.d.ts +65 -0
  131. package/dist/src/domains/extension/kinds.types.js +98 -0
  132. package/dist/src/domains/extension/kinds.types.js.map +1 -0
  133. package/dist/src/domains/extension/kinds.ui.d.ts +4 -0
  134. package/dist/src/domains/extension/kinds.ui.js +309 -0
  135. package/dist/src/domains/extension/kinds.ui.js.map +1 -0
  136. package/dist/src/domains/extension/labels.d.ts +27 -0
  137. package/dist/src/domains/extension/labels.js +143 -0
  138. package/dist/src/domains/extension/labels.js.map +1 -0
  139. package/dist/src/domains/extension/runners/add.runner.d.ts +69 -0
  140. package/dist/src/domains/extension/runners/add.runner.js +453 -0
  141. package/dist/src/domains/extension/runners/add.runner.js.map +1 -0
  142. package/dist/src/domains/extension/runners/dev.runner.d.ts +33 -0
  143. package/dist/src/domains/extension/runners/dev.runner.js +257 -0
  144. package/dist/src/domains/extension/runners/dev.runner.js.map +1 -0
  145. package/dist/src/domains/extension/runners/doctor.runner.d.ts +18 -0
  146. package/dist/src/domains/extension/runners/doctor.runner.js +107 -0
  147. package/dist/src/domains/extension/runners/doctor.runner.js.map +1 -0
  148. package/dist/src/domains/extension/runners/events-add.runner.d.ts +12 -0
  149. package/dist/src/domains/extension/runners/events-add.runner.js +97 -0
  150. package/dist/src/domains/extension/runners/events-add.runner.js.map +1 -0
  151. package/dist/src/domains/extension/runners/events-remove.runner.d.ts +10 -0
  152. package/dist/src/domains/extension/runners/events-remove.runner.js +75 -0
  153. package/dist/src/domains/extension/runners/events-remove.runner.js.map +1 -0
  154. package/dist/src/domains/extension/runners/events.runner.d.ts +6 -0
  155. package/dist/src/domains/extension/runners/events.runner.js +40 -0
  156. package/dist/src/domains/extension/runners/events.runner.js.map +1 -0
  157. package/dist/src/domains/extension/runners/extension.command.d.ts +10 -0
  158. package/dist/src/domains/extension/runners/extension.command.js +71 -0
  159. package/dist/src/domains/extension/runners/extension.command.js.map +1 -0
  160. package/dist/src/domains/extension/runners/extension.runner.d.ts +17 -0
  161. package/dist/src/domains/extension/runners/extension.runner.js +53 -0
  162. package/dist/src/domains/extension/runners/extension.runner.js.map +1 -0
  163. package/dist/src/domains/extension/runners/index.d.ts +20 -0
  164. package/dist/src/domains/extension/runners/index.js +37 -0
  165. package/dist/src/domains/extension/runners/index.js.map +1 -0
  166. package/dist/src/domains/extension/runners/init.runner.d.ts +31 -0
  167. package/dist/src/domains/extension/runners/init.runner.js +276 -0
  168. package/dist/src/domains/extension/runners/init.runner.js.map +1 -0
  169. package/dist/src/domains/extension/runners/list.runner.d.ts +10 -0
  170. package/dist/src/domains/extension/runners/list.runner.js +79 -0
  171. package/dist/src/domains/extension/runners/list.runner.js.map +1 -0
  172. package/dist/src/domains/extension/runners/publish.runner.d.ts +38 -0
  173. package/dist/src/domains/extension/runners/publish.runner.js +178 -0
  174. package/dist/src/domains/extension/runners/publish.runner.js.map +1 -0
  175. package/dist/src/domains/extension/runners/remove.runner.d.ts +20 -0
  176. package/dist/src/domains/extension/runners/remove.runner.js +105 -0
  177. package/dist/src/domains/extension/runners/remove.runner.js.map +1 -0
  178. package/dist/src/domains/extension/runners/retire.runner.d.ts +18 -0
  179. package/dist/src/domains/extension/runners/retire.runner.js +80 -0
  180. package/dist/src/domains/extension/runners/retire.runner.js.map +1 -0
  181. package/dist/src/domains/extension/runners/scopes-add.runner.d.ts +16 -0
  182. package/dist/src/domains/extension/runners/scopes-add.runner.js +122 -0
  183. package/dist/src/domains/extension/runners/scopes-add.runner.js.map +1 -0
  184. package/dist/src/domains/extension/runners/scopes-remove.runner.d.ts +12 -0
  185. package/dist/src/domains/extension/runners/scopes-remove.runner.js +73 -0
  186. package/dist/src/domains/extension/runners/scopes-remove.runner.js.map +1 -0
  187. package/dist/src/domains/extension/runners/scopes.runner.d.ts +6 -0
  188. package/dist/src/domains/extension/runners/scopes.runner.js +40 -0
  189. package/dist/src/domains/extension/runners/scopes.runner.js.map +1 -0
  190. package/dist/src/domains/extension/runners/set.runner.d.ts +17 -0
  191. package/dist/src/domains/extension/runners/set.runner.js +157 -0
  192. package/dist/src/domains/extension/runners/set.runner.js.map +1 -0
  193. package/dist/src/domains/extension/runners/status.runner.d.ts +12 -0
  194. package/dist/src/domains/extension/runners/status.runner.js +88 -0
  195. package/dist/src/domains/extension/runners/status.runner.js.map +1 -0
  196. package/dist/src/domains/extension/runners/types.runner.d.ts +10 -0
  197. package/dist/src/domains/extension/runners/types.runner.js +43 -0
  198. package/dist/src/domains/extension/runners/types.runner.js.map +1 -0
  199. package/dist/src/domains/extension/runners/whoami.runner.d.ts +10 -0
  200. package/dist/src/domains/extension/runners/whoami.runner.js +71 -0
  201. package/dist/src/domains/extension/runners/whoami.runner.js.map +1 -0
  202. package/dist/src/domains/extension/services/add.service.d.ts +26 -0
  203. package/dist/src/domains/extension/services/add.service.js +263 -0
  204. package/dist/src/domains/extension/services/add.service.js.map +1 -0
  205. package/dist/src/domains/extension/services/checks/a11y-check.d.ts +3 -0
  206. package/dist/src/domains/extension/services/checks/a11y-check.js +84 -0
  207. package/dist/src/domains/extension/services/checks/a11y-check.js.map +1 -0
  208. package/dist/src/domains/extension/services/checks/bundle-checks.d.ts +3 -0
  209. package/dist/src/domains/extension/services/checks/bundle-checks.js +234 -0
  210. package/dist/src/domains/extension/services/checks/bundle-checks.js.map +1 -0
  211. package/dist/src/domains/extension/services/checks/bundle-files.d.ts +14 -0
  212. package/dist/src/domains/extension/services/checks/bundle-files.js +139 -0
  213. package/dist/src/domains/extension/services/checks/bundle-files.js.map +1 -0
  214. package/dist/src/domains/extension/services/checks/file-checks.d.ts +6 -0
  215. package/dist/src/domains/extension/services/checks/file-checks.js +128 -0
  216. package/dist/src/domains/extension/services/checks/file-checks.js.map +1 -0
  217. package/dist/src/domains/extension/services/checks/index.d.ts +7 -0
  218. package/dist/src/domains/extension/services/checks/index.js +24 -0
  219. package/dist/src/domains/extension/services/checks/index.js.map +1 -0
  220. package/dist/src/domains/extension/services/checks/manifest-checks.d.ts +7 -0
  221. package/dist/src/domains/extension/services/checks/manifest-checks.js +95 -0
  222. package/dist/src/domains/extension/services/checks/manifest-checks.js.map +1 -0
  223. package/dist/src/domains/extension/services/checks/project-checks.d.ts +7 -0
  224. package/dist/src/domains/extension/services/checks/project-checks.js +86 -0
  225. package/dist/src/domains/extension/services/checks/project-checks.js.map +1 -0
  226. package/dist/src/domains/extension/services/checks/types.d.ts +23 -0
  227. package/dist/src/domains/extension/services/checks/types.js +50 -0
  228. package/dist/src/domains/extension/services/checks/types.js.map +1 -0
  229. package/dist/src/domains/extension/services/dev.service.d.ts +26 -0
  230. package/dist/src/domains/extension/services/dev.service.js +58 -0
  231. package/dist/src/domains/extension/services/dev.service.js.map +1 -0
  232. package/dist/src/domains/extension/services/doctor.service.d.ts +36 -0
  233. package/dist/src/domains/extension/services/doctor.service.js +213 -0
  234. package/dist/src/domains/extension/services/doctor.service.js.map +1 -0
  235. package/dist/src/domains/extension/services/failures.d.ts +8 -0
  236. package/dist/src/domains/extension/services/failures.js +112 -0
  237. package/dist/src/domains/extension/services/failures.js.map +1 -0
  238. package/dist/src/domains/extension/services/guided.service.d.ts +36 -0
  239. package/dist/src/domains/extension/services/guided.service.js +133 -0
  240. package/dist/src/domains/extension/services/guided.service.js.map +1 -0
  241. package/dist/src/domains/extension/services/publish.service.d.ts +14 -0
  242. package/dist/src/domains/extension/services/publish.service.js +93 -0
  243. package/dist/src/domains/extension/services/publish.service.js.map +1 -0
  244. package/dist/src/domains/extension/services/registration.service.d.ts +7 -0
  245. package/dist/src/domains/extension/services/registration.service.js +43 -0
  246. package/dist/src/domains/extension/services/registration.service.js.map +1 -0
  247. package/dist/src/domains/extension/services/remove.service.d.ts +22 -0
  248. package/dist/src/domains/extension/services/remove.service.js +137 -0
  249. package/dist/src/domains/extension/services/remove.service.js.map +1 -0
  250. package/dist/src/domains/extension/services/types.service.d.ts +21 -0
  251. package/dist/src/domains/extension/services/types.service.js +81 -0
  252. package/dist/src/domains/extension/services/types.service.js.map +1 -0
  253. package/dist/src/domains/index.d.ts +6 -2
  254. package/dist/src/domains/index.js +6 -2
  255. package/dist/src/domains/index.js.map +1 -1
  256. package/dist/src/domains/{init → link}/index.d.ts +1 -1
  257. package/dist/src/domains/{init → link}/index.js +1 -1
  258. package/dist/src/domains/link/index.js.map +1 -0
  259. package/dist/src/domains/link/link.module.d.ts +2 -0
  260. package/dist/src/domains/{init/init.module.js → link/link.module.js} +8 -8
  261. package/dist/src/domains/link/link.module.js.map +1 -0
  262. package/dist/src/domains/link/runners/index.d.ts +1 -0
  263. package/dist/src/domains/{deploy → link}/runners/index.js +1 -1
  264. package/dist/src/domains/link/runners/index.js.map +1 -0
  265. package/dist/src/domains/link/runners/link.runner.d.ts +20 -0
  266. package/dist/src/domains/link/runners/link.runner.js +129 -0
  267. package/dist/src/domains/link/runners/link.runner.js.map +1 -0
  268. package/dist/src/domains/mcp/index.d.ts +5 -0
  269. package/dist/src/domains/mcp/index.js +22 -0
  270. package/dist/src/domains/mcp/index.js.map +1 -0
  271. package/dist/src/domains/mcp/mcp.module.d.ts +2 -0
  272. package/dist/src/domains/mcp/mcp.module.js +25 -0
  273. package/dist/src/domains/mcp/mcp.module.js.map +1 -0
  274. package/dist/src/domains/mcp/runners/mcp.runner.d.ts +7 -0
  275. package/dist/src/domains/mcp/runners/mcp.runner.js +45 -0
  276. package/dist/src/domains/mcp/runners/mcp.runner.js.map +1 -0
  277. package/dist/src/domains/mcp/services/docs-search.service.d.ts +23 -0
  278. package/dist/src/domains/mcp/services/docs-search.service.js +164 -0
  279. package/dist/src/domains/mcp/services/docs-search.service.js.map +1 -0
  280. package/dist/src/domains/mcp/services/mcp-server.factory.d.ts +42 -0
  281. package/dist/src/domains/mcp/services/mcp-server.factory.js +438 -0
  282. package/dist/src/domains/mcp/services/mcp-server.factory.js.map +1 -0
  283. package/dist/src/domains/mcp/services/validate.service.d.ts +17 -0
  284. package/dist/src/domains/mcp/services/validate.service.js +57 -0
  285. package/dist/src/domains/mcp/services/validate.service.js.map +1 -0
  286. package/dist/src/domains/upgrade/index.d.ts +1 -0
  287. package/dist/src/domains/upgrade/index.js +18 -0
  288. package/dist/src/domains/upgrade/index.js.map +1 -0
  289. package/dist/src/domains/upgrade/runners/index.d.ts +1 -0
  290. package/dist/src/domains/upgrade/runners/index.js +18 -0
  291. package/dist/src/domains/upgrade/runners/index.js.map +1 -0
  292. package/dist/src/domains/upgrade/runners/upgrade.runner.d.ts +12 -0
  293. package/dist/src/domains/upgrade/runners/upgrade.runner.js +191 -0
  294. package/dist/src/domains/upgrade/runners/upgrade.runner.js.map +1 -0
  295. package/dist/src/domains/upgrade/upgrade.module.d.ts +2 -0
  296. package/dist/src/domains/{deploy/deploy.module.js → upgrade/upgrade.module.js} +8 -8
  297. package/dist/src/domains/upgrade/upgrade.module.js.map +1 -0
  298. package/dist/src/domains/vendor/index.d.ts +1 -0
  299. package/dist/src/domains/vendor/index.js +18 -0
  300. package/dist/src/domains/vendor/index.js.map +1 -0
  301. package/dist/src/domains/vendor/runners/index.d.ts +2 -0
  302. package/dist/src/domains/vendor/runners/index.js +19 -0
  303. package/dist/src/domains/vendor/runners/index.js.map +1 -0
  304. package/dist/src/domains/vendor/runners/vendor-create.runner.d.ts +20 -0
  305. package/dist/src/domains/vendor/runners/vendor-create.runner.js +121 -0
  306. package/dist/src/domains/vendor/runners/vendor-create.runner.js.map +1 -0
  307. package/dist/src/domains/vendor/runners/vendor.command.d.ts +10 -0
  308. package/dist/src/domains/vendor/runners/vendor.command.js +42 -0
  309. package/dist/src/domains/vendor/runners/vendor.command.js.map +1 -0
  310. package/dist/src/domains/vendor/vendor.module.d.ts +2 -0
  311. package/dist/src/domains/vendor/vendor.module.js +22 -0
  312. package/dist/src/domains/vendor/vendor.module.js.map +1 -0
  313. package/dist/src/main.js +16 -2
  314. package/dist/src/main.js.map +1 -1
  315. package/dist/tsconfig.build.tsbuildinfo +1 -1
  316. package/package.json +43 -7
  317. package/templates/contributions/action/schemas/__file__.input.json +14 -0
  318. package/templates/contributions/action/server/actions/__file__.ts +8 -0
  319. package/templates/contributions/connector/server/metrics.ts +19 -0
  320. package/templates/contributions/context/server/context/__file__.ts +10 -0
  321. package/templates/contributions/knowledge/knowledge/__file__.md +6 -0
  322. package/templates/contributions/mention/server/mentions/__file__.ts +10 -0
  323. package/templates/contributions/page/src/pages/__file__.tsx +21 -0
  324. package/templates/contributions/page/test/__file__.test.tsx +12 -0
  325. package/templates/contributions/procedure/schemas/__file__.input.json +13 -0
  326. package/templates/contributions/procedure/schemas/__file__.output.json +13 -0
  327. package/templates/contributions/procedure/server/procedures/__file__.ts +13 -0
  328. package/templates/contributions/prompt/schemas/__file__.input.json +14 -0
  329. package/templates/contributions/row-action/src/row-actions/__file__.tsx +20 -0
  330. package/templates/contributions/row-action/test/__file__.test.tsx +17 -0
  331. package/templates/contributions/settings/schemas/settings.json +14 -0
  332. package/templates/contributions/settings/src/settings.tsx +24 -0
  333. package/templates/contributions/settings/test/settings.test.tsx +12 -0
  334. package/templates/contributions/skill/skills/__file__.md +14 -0
  335. package/templates/contributions/storage/schemas/__file__.json +14 -0
  336. package/templates/contributions/tab/src/tabs/__file__.tsx +21 -0
  337. package/templates/contributions/tab/test/__file__.test.tsx +12 -0
  338. package/templates/contributions/tool/schemas/__file__.input.json +14 -0
  339. package/templates/contributions/tool/server/tools/__file__.ts +8 -0
  340. package/templates/contributions/webhook/schemas/__file__.payload.json +13 -0
  341. package/templates/contributions/widget/src/widgets/__file__.tsx +48 -0
  342. package/templates/contributions/widget/test/__file__.test.tsx +16 -0
  343. package/templates/contributions/work/server/work.ts +14 -0
  344. package/templates/starter/README.md +75 -0
  345. package/templates/starter/api/tappify/[...path].ts +6 -0
  346. package/templates/starter/gitignore +6 -0
  347. package/templates/starter/icon.svg +4 -0
  348. package/templates/starter/package.json +37 -0
  349. package/templates/starter/pnpm-workspace.yaml +3 -0
  350. package/templates/starter/schemas/get-summary.input.json +11 -0
  351. package/templates/starter/schemas/get-summary.output.json +12 -0
  352. package/templates/starter/schemas/preferences.json +18 -0
  353. package/templates/starter/schemas/settings.json +19 -0
  354. package/templates/starter/server/actions/index.ts +1 -0
  355. package/templates/starter/server/context/index.ts +1 -0
  356. package/templates/starter/server/handler.ts +25 -0
  357. package/templates/starter/server/mentions/index.ts +1 -0
  358. package/templates/starter/server/procedures/get-summary.ts +32 -0
  359. package/templates/starter/server/procedures/index.ts +5 -0
  360. package/templates/starter/server/tools/index.ts +1 -0
  361. package/templates/starter/server/worker.ts +5 -0
  362. package/templates/starter/src/settings.tsx +24 -0
  363. package/templates/starter/src/styles.css +16 -0
  364. package/templates/starter/src/tappify.d.ts +59 -0
  365. package/templates/starter/src/widgets/summary.tsx +122 -0
  366. package/templates/starter/tappify.extension.json +68 -0
  367. package/templates/starter/test/matchers.d.ts +2 -0
  368. package/templates/starter/test/server.test.ts +69 -0
  369. package/templates/starter/test/settings.test.tsx +46 -0
  370. package/templates/starter/test/summary.test.tsx +109 -0
  371. package/templates/starter/tsconfig.json +20 -0
  372. package/templates/starter/vite.config.ts +8 -0
  373. package/templates/starter/vitest.config.ts +29 -0
  374. package/templates/starter/wrangler.toml +7 -0
  375. package/dist/src/domains/deploy/deploy.module.d.ts +0 -2
  376. package/dist/src/domains/deploy/deploy.module.js.map +0 -1
  377. package/dist/src/domains/deploy/index.d.ts +0 -2
  378. package/dist/src/domains/deploy/index.js.map +0 -1
  379. package/dist/src/domains/deploy/runners/deploy.runner.d.ts +0 -10
  380. package/dist/src/domains/deploy/runners/deploy.runner.js +0 -132
  381. package/dist/src/domains/deploy/runners/deploy.runner.js.map +0 -1
  382. package/dist/src/domains/deploy/runners/index.d.ts +0 -1
  383. package/dist/src/domains/deploy/runners/index.js.map +0 -1
  384. package/dist/src/domains/init/index.js.map +0 -1
  385. package/dist/src/domains/init/init.module.d.ts +0 -2
  386. package/dist/src/domains/init/init.module.js.map +0 -1
  387. package/dist/src/domains/init/runners/index.d.ts +0 -1
  388. package/dist/src/domains/init/runners/index.js.map +0 -1
  389. package/dist/src/domains/init/runners/init.runner.d.ts +0 -4
  390. package/dist/src/domains/init/runners/init.runner.js.map +0 -1
@@ -0,0 +1 @@
1
+ export * from './extension.module.js';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./extension.module.js"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/domains/extension/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC"}
@@ -0,0 +1,2 @@
1
+ import { type KindDefinition } from './kinds.types.js';
2
+ export declare const ASSISTANT_KINDS: KindDefinition[];
@@ -0,0 +1,296 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ASSISTANT_KINDS = void 0;
4
+ const manifest_1 = require("@tappify/extension-sdk/manifest");
5
+ const kinds_types_js_1 = require("./kinds.types.js");
6
+ const isScopeKey = (value) => manifest_1.SCOPE_KEYS.some(key => key === value);
7
+ exports.ASSISTANT_KINDS = [
8
+ {
9
+ command: 'tool',
10
+ label: 'Assistant tool',
11
+ noun: 'tool',
12
+ singleton: false,
13
+ idCase: 'kebab',
14
+ namePrompt: 'What is the tool called?',
15
+ questions: [
16
+ {
17
+ field: 'returns',
18
+ flag: '--returns',
19
+ help: 'Shape the assistant renders the tool result as',
20
+ question: 'What shape does it answer with?',
21
+ type: 'select',
22
+ choices: () => [
23
+ { value: 'value', label: 'A single number or string' },
24
+ { value: 'list', label: 'A list' },
25
+ { value: 'table', label: 'A table' },
26
+ { value: 'series', label: 'A line over time' },
27
+ { value: 'comparison', label: 'Two things side by side' },
28
+ ],
29
+ },
30
+ {
31
+ field: 'cost',
32
+ flag: '--cost',
33
+ help: 'How expensive the tool is to run',
34
+ question: 'How expensive is it to run?',
35
+ type: 'select',
36
+ choices: () => [
37
+ {
38
+ value: 'low',
39
+ label: 'Cheap',
40
+ hint: 'the assistant calls it freely',
41
+ },
42
+ { value: 'medium', label: 'Moderate' },
43
+ {
44
+ value: 'high',
45
+ label: 'Expensive',
46
+ hint: 'the assistant asks first',
47
+ },
48
+ ],
49
+ },
50
+ ],
51
+ entry: context => ({
52
+ id: context.name,
53
+ description: `Describe what ${context.title} answers, in one sentence.`,
54
+ input: { $ref: `./schemas/${context.file}.input.json` },
55
+ returns: (0, kinds_types_js_1.str)(context.values, 'returns'),
56
+ cost: (0, kinds_types_js_1.str)(context.values, 'cost'),
57
+ }),
58
+ place: (manifest, entry) => {
59
+ manifest.contributes.ai = {
60
+ ...manifest.contributes.ai,
61
+ tools: (0, kinds_types_js_1.push)(manifest.contributes.ai?.tools, entry),
62
+ };
63
+ (0, kinds_types_js_1.withServer)(manifest);
64
+ },
65
+ scopes: () => ['ai:tools'],
66
+ template: 'tool',
67
+ barrel: { directory: 'tools', exportName: 'tools', keyedBy: 'id' },
68
+ next: () => 'Replace the description in tappify.extension.json with the sentence the assistant reads.',
69
+ },
70
+ {
71
+ command: 'mention',
72
+ label: 'Assistant mention',
73
+ noun: 'mention',
74
+ singleton: false,
75
+ idCase: 'kebab',
76
+ namePrompt: 'What is the mention called?',
77
+ questions: [],
78
+ entry: context => ({
79
+ id: context.name,
80
+ label: context.title,
81
+ list: `/tappify/mentions/${context.name}`,
82
+ }),
83
+ place: (manifest, entry) => {
84
+ manifest.contributes.ai = {
85
+ ...manifest.contributes.ai,
86
+ mentions: (0, kinds_types_js_1.push)(manifest.contributes.ai?.mentions, entry),
87
+ };
88
+ (0, kinds_types_js_1.withServer)(manifest);
89
+ },
90
+ scopes: () => ['ai:tools'],
91
+ template: 'mention',
92
+ barrel: { directory: 'mentions', exportName: 'mentions', keyedBy: 'id' },
93
+ next: context => `Return the items owners can pick from server/mentions/${context.file}.ts.`,
94
+ },
95
+ {
96
+ command: 'action',
97
+ label: 'Assistant action',
98
+ noun: 'action',
99
+ singleton: false,
100
+ idCase: 'kebab',
101
+ namePrompt: 'What is the action called?',
102
+ questions: [
103
+ {
104
+ field: 'scope',
105
+ flag: '--scope',
106
+ help: 'Permission the owner grants for this action',
107
+ question: 'What does the owner have to allow for it?',
108
+ type: 'select',
109
+ choices: kinds_types_js_1.scopeChoices,
110
+ },
111
+ {
112
+ field: 'reversible',
113
+ flag: '--reversible',
114
+ help: 'Say the owner can undo what the action does',
115
+ question: 'Can the owner undo it afterwards?',
116
+ type: 'confirm',
117
+ fallback: false,
118
+ },
119
+ ],
120
+ entry: context => ({
121
+ id: context.name,
122
+ description: `Describe what ${context.title} does, in one sentence.`,
123
+ input: { $ref: `./schemas/${context.file}.input.json` },
124
+ approval: true,
125
+ reversible: (0, kinds_types_js_1.bool)(context.values, 'reversible'),
126
+ scope: (0, kinds_types_js_1.str)(context.values, 'scope'),
127
+ }),
128
+ place: (manifest, entry) => {
129
+ manifest.contributes.ai = {
130
+ ...manifest.contributes.ai,
131
+ actions: (0, kinds_types_js_1.push)(manifest.contributes.ai?.actions, entry),
132
+ };
133
+ (0, kinds_types_js_1.withServer)(manifest);
134
+ },
135
+ scopes: context => {
136
+ const scope = (0, kinds_types_js_1.str)(context.values, 'scope');
137
+ return isScopeKey(scope) ? ['ai:actions', scope] : ['ai:actions'];
138
+ },
139
+ template: 'action',
140
+ barrel: { directory: 'actions', exportName: 'actions', keyedBy: 'id' },
141
+ next: () => 'Every run of it goes through the owner approval card; nothing runs unasked.',
142
+ },
143
+ {
144
+ command: 'knowledge',
145
+ label: 'Knowledge file',
146
+ noun: 'knowledge file',
147
+ singleton: false,
148
+ idCase: 'kebab',
149
+ namePrompt: 'What is the knowledge file called?',
150
+ questions: [
151
+ {
152
+ field: 'category',
153
+ flag: '--category',
154
+ help: 'Group this knowledge file belongs to',
155
+ question: 'What kind of knowledge is it?',
156
+ type: 'select',
157
+ choices: () => [
158
+ { value: 'metric_definitions', label: 'What the numbers mean' },
159
+ { value: 'gotchas', label: 'Mistakes people make reading them' },
160
+ { value: 'setup', label: 'How to set the extension up' },
161
+ ],
162
+ },
163
+ ],
164
+ entry: context => ({
165
+ id: context.name,
166
+ category: (0, kinds_types_js_1.str)(context.values, 'category'),
167
+ file: `knowledge/${context.file}.md`,
168
+ }),
169
+ place: (manifest, entry) => {
170
+ manifest.contributes.ai = {
171
+ ...manifest.contributes.ai,
172
+ knowledge: (0, kinds_types_js_1.push)(manifest.contributes.ai?.knowledge, entry),
173
+ };
174
+ },
175
+ scopes: () => ['ai:skills'],
176
+ template: 'knowledge',
177
+ barrel: null,
178
+ next: context => `Write what the assistant should know in knowledge/${context.file}.md.`,
179
+ },
180
+ {
181
+ command: 'skill',
182
+ label: 'Assistant skill',
183
+ noun: 'skill',
184
+ singleton: false,
185
+ idCase: 'kebab',
186
+ namePrompt: 'What is the skill called?',
187
+ questions: [],
188
+ entry: context => ({
189
+ id: context.name,
190
+ name: context.title,
191
+ description: `Describe when the assistant should load ${context.title}.`,
192
+ file: `skills/${context.file}.md`,
193
+ }),
194
+ place: (manifest, entry) => {
195
+ manifest.contributes.ai = {
196
+ ...manifest.contributes.ai,
197
+ skills: (0, kinds_types_js_1.push)(manifest.contributes.ai?.skills, entry),
198
+ };
199
+ },
200
+ scopes: () => ['ai:skills'],
201
+ template: 'skill',
202
+ barrel: null,
203
+ next: context => `Write the steps in skills/${context.file}.md, under 4,000 words.`,
204
+ },
205
+ {
206
+ command: 'prompt',
207
+ label: 'Prompt template',
208
+ noun: 'prompt',
209
+ singleton: false,
210
+ idCase: 'kebab',
211
+ namePrompt: 'What is the prompt called?',
212
+ questions: [
213
+ {
214
+ field: 'surfaces',
215
+ flag: '--surfaces',
216
+ help: 'Where the prompt is offered, comma separated',
217
+ question: 'Where should owners see it?',
218
+ type: 'multi',
219
+ choices: () => [
220
+ { value: 'chat_suggestion', label: 'As a chat suggestion chip' },
221
+ { value: 'widget', label: 'Inside a widget' },
222
+ { value: 'page', label: 'Inside a page' },
223
+ { value: 'result_card', label: 'Under a result card' },
224
+ ],
225
+ },
226
+ {
227
+ field: 'input',
228
+ flag: '--input',
229
+ help: 'Collect input with a form before sending the prompt',
230
+ question: 'Should owners fill in a form before it is sent?',
231
+ type: 'confirm',
232
+ fallback: false,
233
+ },
234
+ ],
235
+ entry: context => ({
236
+ id: context.name,
237
+ title: context.title,
238
+ template: 'Ask about {{project.name}} — replace this with the prompt you want sent.',
239
+ surfaces: (0, kinds_types_js_1.str)(context.values, 'surfaces')
240
+ .split(',')
241
+ .map(surface => surface.trim())
242
+ .filter(surface => surface.length > 0),
243
+ ...((0, kinds_types_js_1.bool)(context.values, 'input')
244
+ ? { input: { $ref: `./schemas/${context.file}.input.json` } }
245
+ : {}),
246
+ }),
247
+ place: (manifest, entry) => {
248
+ manifest.contributes.ai = {
249
+ ...manifest.contributes.ai,
250
+ prompts: (0, kinds_types_js_1.push)(manifest.contributes.ai?.prompts, entry),
251
+ };
252
+ },
253
+ scopes: () => ['ai:skills'],
254
+ template: context => ((0, kinds_types_js_1.bool)(context.values, 'input') ? 'prompt' : null),
255
+ barrel: null,
256
+ next: () => 'Replace the template in tappify.extension.json with the sentence you want sent.',
257
+ },
258
+ {
259
+ command: 'context',
260
+ label: 'Context provider',
261
+ noun: 'context provider',
262
+ singleton: false,
263
+ idCase: 'kebab',
264
+ namePrompt: 'What is the context provider called?',
265
+ questions: [
266
+ {
267
+ field: 'when',
268
+ flag: '--when',
269
+ help: 'Moment the assistant asks for this context',
270
+ question: 'When should the assistant ask for it?',
271
+ type: 'select',
272
+ choices: () => [
273
+ { value: 'turn_start', label: 'At the start of every turn' },
274
+ { value: 'mention', label: 'Only when the owner mentions you' },
275
+ ],
276
+ },
277
+ ],
278
+ entry: context => ({
279
+ id: context.name,
280
+ description: `Describe what ${context.title} adds to the conversation.`,
281
+ when: [(0, kinds_types_js_1.str)(context.values, 'when')],
282
+ }),
283
+ place: (manifest, entry) => {
284
+ manifest.contributes.ai = {
285
+ ...manifest.contributes.ai,
286
+ context: (0, kinds_types_js_1.push)(manifest.contributes.ai?.context, entry),
287
+ };
288
+ (0, kinds_types_js_1.withServer)(manifest);
289
+ },
290
+ scopes: () => ['ai:skills'],
291
+ template: 'context',
292
+ barrel: { directory: 'context', exportName: 'context', keyedBy: 'id' },
293
+ next: () => 'Keep the block you return under 2 KB; the assistant cites it with your tile.',
294
+ },
295
+ ];
296
+ //# sourceMappingURL=kinds.assistant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kinds.assistant.js","sourceRoot":"","sources":["../../../../src/domains/extension/kinds.assistant.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { KindDefinition } from './kinds.types.js';
2
+ export * from './containers.js';
3
+ export * from './kinds.types.js';
4
+ export declare const KIND_DEFINITIONS: KindDefinition[];
5
+ export declare const findKind: (command: string) => KindDefinition | undefined;
6
+ export declare const requireKind: (command: string) => KindDefinition;
7
+ export declare const KIND_COMMANDS: string[];
8
+ export declare const serverBackedKinds: () => KindDefinition[];
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.serverBackedKinds = exports.KIND_COMMANDS = exports.requireKind = exports.findKind = exports.KIND_DEFINITIONS = void 0;
18
+ const kinds_assistant_js_1 = require("./kinds.assistant.js");
19
+ const kinds_server_js_1 = require("./kinds.server.js");
20
+ const kinds_ui_js_1 = require("./kinds.ui.js");
21
+ __exportStar(require("./containers.js"), exports);
22
+ __exportStar(require("./kinds.types.js"), exports);
23
+ exports.KIND_DEFINITIONS = [
24
+ ...kinds_ui_js_1.UI_KINDS,
25
+ ...kinds_server_js_1.SERVER_KINDS,
26
+ ...kinds_assistant_js_1.ASSISTANT_KINDS,
27
+ ...kinds_server_js_1.WORK_KINDS,
28
+ ];
29
+ const findKind = (command) => exports.KIND_DEFINITIONS.find(kind => kind.command === command);
30
+ exports.findKind = findKind;
31
+ const requireKind = (command) => {
32
+ const kind = (0, exports.findKind)(command);
33
+ if (kind === undefined) {
34
+ throw new Error(`No contribution kind is called "${command}".`);
35
+ }
36
+ return kind;
37
+ };
38
+ exports.requireKind = requireKind;
39
+ exports.KIND_COMMANDS = exports.KIND_DEFINITIONS.map(kind => kind.command);
40
+ const serverBackedKinds = () => exports.KIND_DEFINITIONS.filter(kind => kind.barrel !== null);
41
+ exports.serverBackedKinds = serverBackedKinds;
42
+ //# sourceMappingURL=kinds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kinds.js","sourceRoot":"","sources":["../../../../src/domains/extension/kinds.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6DAAuD;AACvD,uDAA6D;AAE7D,+CAAyC;AAEzC,kDAAgC;AAChC,mDAAiC;AAGpB,QAAA,gBAAgB,GAAqB;IAChD,GAAG,sBAAQ;IACX,GAAG,8BAAY;IACf,GAAG,oCAAe;IAClB,GAAG,4BAAU;CACd,CAAC;AAEK,MAAM,QAAQ,GAAG,CAAC,OAAe,EAA8B,EAAE,CACtE,wBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;AAD7C,QAAA,QAAQ,YACqC;AAOnD,MAAM,WAAW,GAAG,CAAC,OAAe,EAAkB,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAA,gBAAQ,EAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AANW,QAAA,WAAW,eAMtB;AAEW,QAAA,aAAa,GAAa,wBAAgB,CAAC,GAAG,CACzD,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CACrB,CAAC;AAGK,MAAM,iBAAiB,GAAG,GAAqB,EAAE,CACtD,wBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC;AAD3C,QAAA,iBAAiB,qBAC0B"}
@@ -0,0 +1,3 @@
1
+ import { type KindDefinition } from './kinds.types.js';
2
+ export declare const SERVER_KINDS: KindDefinition[];
3
+ export declare const WORK_KINDS: KindDefinition[];
@@ -0,0 +1,221 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WORK_KINDS = exports.SERVER_KINDS = void 0;
4
+ const kinds_types_js_1 = require("./kinds.types.js");
5
+ exports.SERVER_KINDS = [
6
+ {
7
+ command: 'storage',
8
+ label: 'Storage collection',
9
+ noun: 'storage collection',
10
+ singleton: false,
11
+ idCase: 'snake',
12
+ namePrompt: 'What is the collection called?',
13
+ questions: [
14
+ {
15
+ field: 'scope',
16
+ flag: '--scope',
17
+ help: 'Who a stored document belongs to',
18
+ question: 'Who does a document belong to?',
19
+ type: 'select',
20
+ choices: () => [
21
+ { value: 'user', label: 'Each teammate keeps their own' },
22
+ { value: 'install', label: 'Shared across the install' },
23
+ { value: 'organization', label: 'Shared across the workspace' },
24
+ ],
25
+ },
26
+ {
27
+ field: 'singleton',
28
+ flag: '--singleton',
29
+ help: 'Keep one document per scope instead of many',
30
+ question: 'Is there one document per owner, rather than a list?',
31
+ type: 'confirm',
32
+ fallback: false,
33
+ },
34
+ ],
35
+ entry: context => ({
36
+ scope: (0, kinds_types_js_1.str)(context.values, 'scope'),
37
+ ...((0, kinds_types_js_1.bool)(context.values, 'singleton') ? { singleton: true } : {}),
38
+ schema: { $ref: `./schemas/${context.file}.json` },
39
+ }),
40
+ place: (manifest, entry, context) => {
41
+ manifest.contributes.storage = {
42
+ ...manifest.contributes.storage,
43
+ [context.name]: entry,
44
+ };
45
+ },
46
+ scopes: () => ['storage:write'],
47
+ template: 'storage',
48
+ barrel: null,
49
+ next: context => `Edit schemas/${context.file}.json to describe a document, then run \`tappify extension types\`.`,
50
+ },
51
+ {
52
+ command: 'procedure',
53
+ label: 'Server procedure',
54
+ noun: 'procedure',
55
+ singleton: false,
56
+ idCase: 'camel',
57
+ namePrompt: 'What is the procedure called?',
58
+ questions: [
59
+ {
60
+ field: 'kind',
61
+ flag: '--kind',
62
+ help: 'Whether the procedure reads or writes',
63
+ question: 'Does it read data or change it?',
64
+ type: 'select',
65
+ choices: () => [
66
+ {
67
+ value: 'read',
68
+ label: 'Reads',
69
+ hint: 'retried twice on a network failure',
70
+ },
71
+ { value: 'write', label: 'Changes data', hint: 'never retried' },
72
+ ],
73
+ },
74
+ ],
75
+ entry: context => ({
76
+ input: { $ref: `./schemas/${context.file}.input.json` },
77
+ output: { $ref: `./schemas/${context.file}.output.json` },
78
+ kind: (0, kinds_types_js_1.str)(context.values, 'kind'),
79
+ }),
80
+ place: (manifest, entry, context) => {
81
+ const server = (0, kinds_types_js_1.withServer)(manifest);
82
+ server.procedures = {
83
+ ...server.procedures,
84
+ [context.name]: entry,
85
+ };
86
+ },
87
+ scopes: () => [],
88
+ template: 'procedure',
89
+ barrel: {
90
+ directory: 'procedures',
91
+ exportName: 'procedures',
92
+ keyedBy: 'identifier',
93
+ },
94
+ next: context => `Call it from a component with \`useTapServer('${context.name}', input)\`.`,
95
+ },
96
+ {
97
+ command: 'connector',
98
+ label: 'Connector',
99
+ noun: 'connector',
100
+ singleton: true,
101
+ idCase: 'kebab',
102
+ namePrompt: null,
103
+ questions: [
104
+ {
105
+ field: 'sync',
106
+ flag: '--sync',
107
+ help: 'How often Tappify pulls your metrics',
108
+ question: 'How often should Tappify pull your metrics?',
109
+ type: 'select',
110
+ choices: () => [
111
+ { value: '15m', label: 'Every fifteen minutes' },
112
+ { value: '1h', label: 'Every hour' },
113
+ { value: '6h', label: 'Every six hours' },
114
+ { value: '24h', label: 'Once a day' },
115
+ ],
116
+ },
117
+ ],
118
+ entry: context => ({
119
+ sync: (0, kinds_types_js_1.str)(context.values, 'sync'),
120
+ metrics: [
121
+ { key: 'sessions', label: 'Sessions', unit: 'count', kind: 'counter' },
122
+ ],
123
+ }),
124
+ place: (manifest, entry) => {
125
+ manifest.contributes.connector = entry;
126
+ (0, kinds_types_js_1.withServer)(manifest);
127
+ },
128
+ scopes: () => ['metrics:write'],
129
+ template: 'connector',
130
+ barrel: null,
131
+ next: () => 'Fill in server/metrics.ts, pass it to createTappifyHandler as metrics, and list what you send under connector.metrics.',
132
+ },
133
+ {
134
+ command: 'webhook',
135
+ label: 'Webhook',
136
+ noun: 'webhook',
137
+ singleton: false,
138
+ idCase: 'raw',
139
+ namePrompt: 'What event name does your server send?',
140
+ questions: [
141
+ {
142
+ field: 'as',
143
+ flag: '--as',
144
+ help: 'How the webhook reaches the owner',
145
+ question: 'How should owners see it?',
146
+ type: 'select',
147
+ choices: () => [
148
+ { value: 'alert', label: 'As an alert', hint: 'at most three a day' },
149
+ { value: 'banner', label: 'As a banner on the page' },
150
+ {
151
+ value: 'event',
152
+ label: 'Only as an event other contributions read',
153
+ },
154
+ ],
155
+ },
156
+ ],
157
+ entry: context => ({
158
+ event: context.name,
159
+ as: (0, kinds_types_js_1.str)(context.values, 'as'),
160
+ payload: { $ref: `./schemas/${context.file}.payload.json` },
161
+ }),
162
+ place: (manifest, entry) => {
163
+ manifest.contributes.webhooks = (0, kinds_types_js_1.push)(manifest.contributes.webhooks, entry);
164
+ (0, kinds_types_js_1.withServer)(manifest);
165
+ },
166
+ scopes: context => (0, kinds_types_js_1.str)(context.values, 'as') === 'event' ? [] : ['alerts:write'],
167
+ template: 'webhook',
168
+ barrel: null,
169
+ next: context => `Send it from your server with \`sendEvent('${context.name}', payload)\`.`,
170
+ },
171
+ ];
172
+ exports.WORK_KINDS = [
173
+ {
174
+ command: 'work',
175
+ label: 'Work destination',
176
+ noun: 'work destination',
177
+ singleton: true,
178
+ idCase: 'kebab',
179
+ namePrompt: null,
180
+ questions: [
181
+ {
182
+ field: 'workKind',
183
+ flag: '--work-kind',
184
+ help: 'What owners create in your system',
185
+ question: 'What do owners create in your system?',
186
+ type: 'select',
187
+ choices: () => [
188
+ { value: 'tracker', label: 'Issues in a tracker' },
189
+ { value: 'docs', label: 'Pages in a docs tool' },
190
+ { value: 'chat', label: 'Messages in a chat tool' },
191
+ ],
192
+ },
193
+ ],
194
+ entry: context => {
195
+ const workKind = (0, kinds_types_js_1.str)(context.values, 'workKind');
196
+ const creates = workKind === 'docs'
197
+ ? 'page'
198
+ : workKind === 'chat'
199
+ ? 'message'
200
+ : 'issue';
201
+ return {
202
+ kind: workKind,
203
+ container: { label: 'Project', list: '/tappify/work/containers' },
204
+ creates: [creates],
205
+ fields: { required: [] },
206
+ attachments: ['link'],
207
+ comments: 'none',
208
+ identity: 'install',
209
+ };
210
+ },
211
+ place: (manifest, entry) => {
212
+ manifest.contributes.work = entry;
213
+ (0, kinds_types_js_1.withServer)(manifest);
214
+ },
215
+ scopes: () => ['work:create', 'work:sync'],
216
+ template: 'work',
217
+ barrel: null,
218
+ next: () => 'Fill in server/work.ts and pass it to createTappifyHandler as work, so a created issue answers with its id and URL.',
219
+ },
220
+ ];
221
+ //# sourceMappingURL=kinds.server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kinds.server.js","sourceRoot":"","sources":["../../../../src/domains/extension/kinds.server.ts"],"names":[],"mappings":"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"}