@breadstone-infrastructure/nx-tasks 0.0.258 → 0.0.260

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 (655) hide show
  1. package/executors.json +87 -87
  2. package/package.json +47 -76
  3. package/dist/LICENSE +0 -21
  4. package/dist/executors.json +0 -149
  5. package/dist/package.json +0 -48
  6. package/readme.md +0 -156
  7. package/src/_legacy/_Lint.ts +0 -40
  8. package/src/_legacy/_LitAnalyzer.ts +0 -163
  9. package/src/_legacy/_Resources.ts +0 -69
  10. package/src/executors/alias-replace/executor.options.ts +0 -10
  11. package/src/executors/alias-replace/executor.task.ts +0 -305
  12. package/src/executors/alias-replace/executor.ts +0 -35
  13. package/src/executors/alias-replace/schema.json +0 -1
  14. package/src/executors/clean/executor.options.ts +0 -10
  15. package/src/executors/clean/executor.task.ts +0 -49
  16. package/src/executors/clean/executor.ts +0 -28
  17. package/src/executors/clean/schema.json +0 -1
  18. package/src/executors/copy/executor.options.ts +0 -10
  19. package/src/executors/copy/executor.task.ts +0 -96
  20. package/src/executors/copy/executor.ts +0 -30
  21. package/src/executors/copy/schema.json +0 -1
  22. package/src/executors/copy2/executor.options.ts +0 -10
  23. package/src/executors/copy2/executor.task.ts +0 -115
  24. package/src/executors/copy2/executor.ts +0 -28
  25. package/src/executors/copy2/schema.json +0 -1
  26. package/src/executors/docs/ApiDocumenter.ts +0 -50
  27. package/src/executors/docs/DocusaurusMarkdownFeature.ts +0 -129
  28. package/src/executors/docs/executor.options.ts +0 -10
  29. package/src/executors/docs/executor.task.ts +0 -116
  30. package/src/executors/docs/executor.ts +0 -33
  31. package/src/executors/docs/schema.json +0 -1
  32. package/src/executors/generate-package-docs/executor.options.ts +0 -10
  33. package/src/executors/generate-package-docs/executor.task.ts +0 -381
  34. package/src/executors/generate-package-docs/executor.ts +0 -47
  35. package/src/executors/generate-package-docs/schema.json +0 -258
  36. package/src/executors/icon-collection-builder/executor.options.ts +0 -10
  37. package/src/executors/icon-collection-builder/executor.task.ts +0 -284
  38. package/src/executors/icon-collection-builder/executor.ts +0 -67
  39. package/src/executors/icon-collection-builder/schema.json +0 -1
  40. package/src/executors/icon-collection-builder/svg.ts +0 -406
  41. package/src/executors/icon-collection-downloader/executor.options.ts +0 -10
  42. package/src/executors/icon-collection-downloader/executor.task.ts +0 -409
  43. package/src/executors/icon-collection-downloader/executor.ts +0 -47
  44. package/src/executors/icon-collection-downloader/schema.json +0 -33
  45. package/src/executors/lit-docs/ComponentDocFixer.ts +0 -571
  46. package/src/executors/lit-docs/JSDocChecker.ts +0 -353
  47. package/src/executors/lit-docs/executor.options.ts +0 -10
  48. package/src/executors/lit-docs/executor.task.ts +0 -372
  49. package/src/executors/lit-docs/executor.ts +0 -31
  50. package/src/executors/lit-docs/schema.json +0 -1
  51. package/src/executors/lit-style-transform/executor.options.ts +0 -0
  52. package/src/executors/lit-style-transform/executor.task.ts +0 -433
  53. package/src/executors/lit-style-transform/executor.ts +0 -47
  54. package/src/executors/lit-style-transform/schema.json +0 -1
  55. package/src/executors/localizator/executor.options.ts +0 -11
  56. package/src/executors/localizator/executor.task.ts +0 -194
  57. package/src/executors/localizator/executor.ts +0 -45
  58. package/src/executors/localizator/schema.json +0 -10
  59. package/src/executors/markdown-to-typescript-transform/MarkdownRenderer.ts +0 -96
  60. package/src/executors/markdown-to-typescript-transform/executor.options.ts +0 -0
  61. package/src/executors/markdown-to-typescript-transform/executor.task.ts +0 -113
  62. package/src/executors/markdown-to-typescript-transform/executor.ts +0 -44
  63. package/src/executors/markdown-to-typescript-transform/schema.json +0 -1
  64. package/src/executors/ng-api-extractor/executor.options.ts +0 -10
  65. package/src/executors/ng-api-extractor/executor.task.ts +0 -157
  66. package/src/executors/ng-api-extractor/executor.ts +0 -27
  67. package/src/executors/ng-api-extractor/schema.json +0 -1
  68. package/src/executors/ng-packagr-build/executor.options.ts +0 -0
  69. package/src/executors/ng-packagr-build/executor.task.ts +0 -49
  70. package/src/executors/ng-packagr-build/executor.ts +0 -29
  71. package/src/executors/ng-packagr-build/schema.json +0 -1
  72. package/src/executors/ng-proxy-transform/executor.options.ts +0 -0
  73. package/src/executors/ng-proxy-transform/executor.task.ts +0 -675
  74. package/src/executors/ng-proxy-transform/executor.ts +0 -49
  75. package/src/executors/ng-proxy-transform/schema.json +0 -13
  76. package/src/executors/openapi-generator/executor.options.ts +0 -0
  77. package/src/executors/openapi-generator/executor.task.ts +0 -43
  78. package/src/executors/openapi-generator/executor.ts +0 -35
  79. package/src/executors/openapi-generator/schema.json +0 -1
  80. package/src/executors/prisma-seeds/executor.options.ts +0 -15
  81. package/src/executors/prisma-seeds/executor.task.ts +0 -63
  82. package/src/executors/prisma-seeds/executor.ts +0 -39
  83. package/src/executors/prisma-seeds/schema.json +0 -35
  84. package/src/executors/react-proxy-transform/executor.options.ts +0 -0
  85. package/src/executors/react-proxy-transform/executor.task.ts +0 -243
  86. package/src/executors/react-proxy-transform/executor.ts +0 -45
  87. package/src/executors/react-proxy-transform/schema.json +0 -1
  88. package/src/executors/release-package/executor.options.ts +0 -0
  89. package/src/executors/release-package/executor.task.ts +0 -212
  90. package/src/executors/release-package/executor.ts +0 -33
  91. package/src/executors/release-package/schema.json +0 -1
  92. package/src/executors/release-package-json/executor.options.ts +0 -0
  93. package/src/executors/release-package-json/executor.task.ts +0 -206
  94. package/src/executors/release-package-json/executor.ts +0 -37
  95. package/src/executors/release-package-json/schema.json +0 -1
  96. package/src/executors/scss-style-bundle/executor.options.ts +0 -0
  97. package/src/executors/scss-style-bundle/executor.task.ts +0 -123
  98. package/src/executors/scss-style-bundle/executor.ts +0 -37
  99. package/src/executors/scss-style-bundle/schema.json +0 -1
  100. package/src/executors/scss-style-transform/executor.options.ts +0 -0
  101. package/src/executors/scss-style-transform/executor.task.ts +0 -50
  102. package/src/executors/scss-style-transform/executor.ts +0 -38
  103. package/src/executors/scss-style-transform/schema.json +0 -1
  104. package/src/executors/secrets-config-sync/executor.options.ts +0 -10
  105. package/src/executors/secrets-config-sync/executor.task.ts +0 -163
  106. package/src/executors/secrets-config-sync/executor.ts +0 -32
  107. package/src/executors/secrets-config-sync/providers/azure-keyvault.provider.ts +0 -180
  108. package/src/executors/secrets-config-sync/providers/doppler.provider.ts +0 -84
  109. package/src/executors/secrets-config-sync/providers/secrets-provider.factory.ts +0 -33
  110. package/src/executors/secrets-config-sync/providers/secrets-provider.interface.ts +0 -34
  111. package/src/executors/secrets-config-sync/schema.json +0 -44
  112. package/src/executors/secrets-vercel-sync/executor.options.ts +0 -12
  113. package/src/executors/secrets-vercel-sync/executor.task.ts +0 -697
  114. package/src/executors/secrets-vercel-sync/executor.ts +0 -44
  115. package/src/executors/secrets-vercel-sync/providers/azure-keyvault.provider.ts +0 -173
  116. package/src/executors/secrets-vercel-sync/providers/doppler.provider.ts +0 -93
  117. package/src/executors/secrets-vercel-sync/providers/secrets-provider.factory.ts +0 -33
  118. package/src/executors/secrets-vercel-sync/providers/secrets-provider.interface.ts +0 -34
  119. package/src/executors/secrets-vercel-sync/schema.json +0 -112
  120. package/src/executors/svelte-proxy-transform/executor.options.ts +0 -0
  121. package/src/executors/svelte-proxy-transform/executor.task.ts +0 -187
  122. package/src/executors/svelte-proxy-transform/executor.ts +0 -45
  123. package/src/executors/svelte-proxy-transform/schema.json +0 -1
  124. package/src/executors/token-linter/executor.options.ts +0 -23
  125. package/src/executors/token-linter/executor.task.ts +0 -66
  126. package/src/executors/token-linter/executor.ts +0 -37
  127. package/src/executors/token-linter/schema.json +0 -63
  128. package/src/executors/unrelease-package/executor.options.ts +0 -0
  129. package/src/executors/unrelease-package/executor.task.ts +0 -138
  130. package/src/executors/unrelease-package/executor.ts +0 -33
  131. package/src/executors/unrelease-package/schema.json +0 -1
  132. package/src/executors/vercel-edge-config-sync/executor.options.ts +0 -0
  133. package/src/executors/vercel-edge-config-sync/executor.task.ts +0 -30
  134. package/src/executors/vercel-edge-config-sync/executor.ts +0 -25
  135. package/src/executors/vercel-edge-config-sync/schema.json +0 -1
  136. package/src/executors/vue-proxy-transform/executor.options.ts +0 -0
  137. package/src/executors/vue-proxy-transform/executor.task.ts +0 -226
  138. package/src/executors/vue-proxy-transform/executor.ts +0 -45
  139. package/src/executors/vue-proxy-transform/schema.json +0 -1
  140. package/src/index.ts +0 -31
  141. package/src/types/svgpath.d.ts +0 -13
  142. package/src/utils/TaskBase.ts +0 -42
  143. package/src/utils/getProjectPackageJson.ts +0 -22
  144. package/src/utils/getProjectRoot.ts +0 -14
  145. package/src/utils/getProjectTsConfigJson.ts +0 -29
  146. package/src/utils/isVerbose.ts +0 -24
  147. package/src/utils/loadAndExpandDotEnvFile.ts +0 -108
  148. package/src/utils/markdown-processing.ts +0 -174
  149. package/src/utils/valid-html-tags.ts +0 -79
  150. package/src/utils/withCaching.ts +0 -14
  151. /package/{dist/CHANGELOG.md → CHANGELOG.md} +0 -0
  152. /package/{dist/README.md → README.md} +0 -0
  153. /package/{dist/executors → executors}/alias-replace/executor.d.ts +0 -0
  154. /package/{dist/executors → executors}/alias-replace/executor.d.ts.map +0 -0
  155. /package/{dist/executors → executors}/alias-replace/executor.js +0 -0
  156. /package/{dist/executors → executors}/alias-replace/executor.js.map +0 -0
  157. /package/{dist/executors → executors}/alias-replace/executor.options.d.ts +0 -0
  158. /package/{dist/executors → executors}/alias-replace/executor.options.d.ts.map +0 -0
  159. /package/{dist/executors → executors}/alias-replace/executor.options.js +0 -0
  160. /package/{dist/executors → executors}/alias-replace/executor.options.js.map +0 -0
  161. /package/{dist/executors → executors}/alias-replace/executor.task.d.ts +0 -0
  162. /package/{dist/executors → executors}/alias-replace/executor.task.d.ts.map +0 -0
  163. /package/{dist/executors → executors}/alias-replace/executor.task.js +0 -0
  164. /package/{dist/executors → executors}/alias-replace/executor.task.js.map +0 -0
  165. /package/{dist/executors → executors}/alias-replace/schema.json +0 -0
  166. /package/{dist/executors → executors}/clean/executor.d.ts +0 -0
  167. /package/{dist/executors → executors}/clean/executor.d.ts.map +0 -0
  168. /package/{dist/executors → executors}/clean/executor.js +0 -0
  169. /package/{dist/executors → executors}/clean/executor.js.map +0 -0
  170. /package/{dist/executors → executors}/clean/executor.options.d.ts +0 -0
  171. /package/{dist/executors → executors}/clean/executor.options.d.ts.map +0 -0
  172. /package/{dist/executors → executors}/clean/executor.options.js +0 -0
  173. /package/{dist/executors → executors}/clean/executor.options.js.map +0 -0
  174. /package/{dist/executors → executors}/clean/executor.task.d.ts +0 -0
  175. /package/{dist/executors → executors}/clean/executor.task.d.ts.map +0 -0
  176. /package/{dist/executors → executors}/clean/executor.task.js +0 -0
  177. /package/{dist/executors → executors}/clean/executor.task.js.map +0 -0
  178. /package/{dist/executors → executors}/clean/schema.json +0 -0
  179. /package/{dist/executors → executors}/copy/executor.d.ts +0 -0
  180. /package/{dist/executors → executors}/copy/executor.d.ts.map +0 -0
  181. /package/{dist/executors → executors}/copy/executor.js +0 -0
  182. /package/{dist/executors → executors}/copy/executor.js.map +0 -0
  183. /package/{dist/executors → executors}/copy/executor.options.d.ts +0 -0
  184. /package/{dist/executors → executors}/copy/executor.options.d.ts.map +0 -0
  185. /package/{dist/executors → executors}/copy/executor.options.js +0 -0
  186. /package/{dist/executors → executors}/copy/executor.options.js.map +0 -0
  187. /package/{dist/executors → executors}/copy/executor.task.d.ts +0 -0
  188. /package/{dist/executors → executors}/copy/executor.task.d.ts.map +0 -0
  189. /package/{dist/executors → executors}/copy/executor.task.js +0 -0
  190. /package/{dist/executors → executors}/copy/executor.task.js.map +0 -0
  191. /package/{dist/executors → executors}/copy/schema.json +0 -0
  192. /package/{dist/executors → executors}/copy2/executor.d.ts +0 -0
  193. /package/{dist/executors → executors}/copy2/executor.d.ts.map +0 -0
  194. /package/{dist/executors → executors}/copy2/executor.js +0 -0
  195. /package/{dist/executors → executors}/copy2/executor.js.map +0 -0
  196. /package/{dist/executors → executors}/copy2/executor.options.d.ts +0 -0
  197. /package/{dist/executors → executors}/copy2/executor.options.d.ts.map +0 -0
  198. /package/{dist/executors → executors}/copy2/executor.options.js +0 -0
  199. /package/{dist/executors → executors}/copy2/executor.options.js.map +0 -0
  200. /package/{dist/executors → executors}/copy2/executor.task.d.ts +0 -0
  201. /package/{dist/executors → executors}/copy2/executor.task.d.ts.map +0 -0
  202. /package/{dist/executors → executors}/copy2/executor.task.js +0 -0
  203. /package/{dist/executors → executors}/copy2/executor.task.js.map +0 -0
  204. /package/{dist/executors → executors}/copy2/schema.json +0 -0
  205. /package/{dist/executors → executors}/docs/ApiDocumenter.d.ts +0 -0
  206. /package/{dist/executors → executors}/docs/ApiDocumenter.d.ts.map +0 -0
  207. /package/{dist/executors → executors}/docs/ApiDocumenter.js +0 -0
  208. /package/{dist/executors → executors}/docs/ApiDocumenter.js.map +0 -0
  209. /package/{dist/executors → executors}/docs/DocusaurusMarkdownFeature.d.ts +0 -0
  210. /package/{dist/executors → executors}/docs/DocusaurusMarkdownFeature.d.ts.map +0 -0
  211. /package/{dist/executors → executors}/docs/DocusaurusMarkdownFeature.js +0 -0
  212. /package/{dist/executors → executors}/docs/DocusaurusMarkdownFeature.js.map +0 -0
  213. /package/{dist/executors → executors}/docs/executor.d.ts +0 -0
  214. /package/{dist/executors → executors}/docs/executor.d.ts.map +0 -0
  215. /package/{dist/executors → executors}/docs/executor.js +0 -0
  216. /package/{dist/executors → executors}/docs/executor.js.map +0 -0
  217. /package/{dist/executors → executors}/docs/executor.options.d.ts +0 -0
  218. /package/{dist/executors → executors}/docs/executor.options.d.ts.map +0 -0
  219. /package/{dist/executors → executors}/docs/executor.options.js +0 -0
  220. /package/{dist/executors → executors}/docs/executor.options.js.map +0 -0
  221. /package/{dist/executors → executors}/docs/executor.task.d.ts +0 -0
  222. /package/{dist/executors → executors}/docs/executor.task.d.ts.map +0 -0
  223. /package/{dist/executors → executors}/docs/executor.task.js +0 -0
  224. /package/{dist/executors → executors}/docs/executor.task.js.map +0 -0
  225. /package/{dist/executors → executors}/docs/schema.json +0 -0
  226. /package/{dist/executors → executors}/doppler-config-sync/executor.d.ts +0 -0
  227. /package/{dist/executors → executors}/doppler-config-sync/executor.d.ts.map +0 -0
  228. /package/{dist/executors → executors}/doppler-config-sync/executor.js +0 -0
  229. /package/{dist/executors → executors}/doppler-config-sync/executor.js.map +0 -0
  230. /package/{dist/executors → executors}/doppler-config-sync/executor.options.d.ts +0 -0
  231. /package/{dist/executors → executors}/doppler-config-sync/executor.options.d.ts.map +0 -0
  232. /package/{dist/executors → executors}/doppler-config-sync/executor.options.js +0 -0
  233. /package/{dist/executors → executors}/doppler-config-sync/executor.options.js.map +0 -0
  234. /package/{dist/executors → executors}/doppler-config-sync/executor.task.d.ts +0 -0
  235. /package/{dist/executors → executors}/doppler-config-sync/executor.task.d.ts.map +0 -0
  236. /package/{dist/executors → executors}/doppler-config-sync/executor.task.js +0 -0
  237. /package/{dist/executors → executors}/doppler-config-sync/executor.task.js.map +0 -0
  238. /package/{dist/executors → executors}/doppler-config-sync/schema.json +0 -0
  239. /package/{dist/executors → executors}/doppler-vercel-sync/executor.d.ts +0 -0
  240. /package/{dist/executors → executors}/doppler-vercel-sync/executor.d.ts.map +0 -0
  241. /package/{dist/executors → executors}/doppler-vercel-sync/executor.js +0 -0
  242. /package/{dist/executors → executors}/doppler-vercel-sync/executor.js.map +0 -0
  243. /package/{dist/executors → executors}/doppler-vercel-sync/executor.options.d.ts +0 -0
  244. /package/{dist/executors → executors}/doppler-vercel-sync/executor.options.d.ts.map +0 -0
  245. /package/{dist/executors → executors}/doppler-vercel-sync/executor.options.js +0 -0
  246. /package/{dist/executors → executors}/doppler-vercel-sync/executor.options.js.map +0 -0
  247. /package/{dist/executors → executors}/doppler-vercel-sync/executor.task.d.ts +0 -0
  248. /package/{dist/executors → executors}/doppler-vercel-sync/executor.task.d.ts.map +0 -0
  249. /package/{dist/executors → executors}/doppler-vercel-sync/executor.task.js +0 -0
  250. /package/{dist/executors → executors}/doppler-vercel-sync/executor.task.js.map +0 -0
  251. /package/{dist/executors → executors}/doppler-vercel-sync/schema.json +0 -0
  252. /package/{dist/executors → executors}/generate-package-docs/executor.d.ts +0 -0
  253. /package/{dist/executors → executors}/generate-package-docs/executor.d.ts.map +0 -0
  254. /package/{dist/executors → executors}/generate-package-docs/executor.js +0 -0
  255. /package/{dist/executors → executors}/generate-package-docs/executor.js.map +0 -0
  256. /package/{dist/executors → executors}/generate-package-docs/executor.options.d.ts +0 -0
  257. /package/{dist/executors → executors}/generate-package-docs/executor.options.d.ts.map +0 -0
  258. /package/{dist/executors → executors}/generate-package-docs/executor.options.js +0 -0
  259. /package/{dist/executors → executors}/generate-package-docs/executor.options.js.map +0 -0
  260. /package/{dist/executors → executors}/generate-package-docs/executor.task.d.ts +0 -0
  261. /package/{dist/executors → executors}/generate-package-docs/executor.task.d.ts.map +0 -0
  262. /package/{dist/executors → executors}/generate-package-docs/executor.task.js +0 -0
  263. /package/{dist/executors → executors}/generate-package-docs/executor.task.js.map +0 -0
  264. /package/{dist/executors → executors}/generate-package-docs/schema.json +0 -0
  265. /package/{dist/executors → executors}/icon-collection-builder/executor.d.ts +0 -0
  266. /package/{dist/executors → executors}/icon-collection-builder/executor.d.ts.map +0 -0
  267. /package/{dist/executors → executors}/icon-collection-builder/executor.js +0 -0
  268. /package/{dist/executors → executors}/icon-collection-builder/executor.js.map +0 -0
  269. /package/{dist/executors → executors}/icon-collection-builder/executor.options.d.ts +0 -0
  270. /package/{dist/executors → executors}/icon-collection-builder/executor.options.d.ts.map +0 -0
  271. /package/{dist/executors → executors}/icon-collection-builder/executor.options.js +0 -0
  272. /package/{dist/executors → executors}/icon-collection-builder/executor.options.js.map +0 -0
  273. /package/{dist/executors → executors}/icon-collection-builder/executor.task.d.ts +0 -0
  274. /package/{dist/executors → executors}/icon-collection-builder/executor.task.d.ts.map +0 -0
  275. /package/{dist/executors → executors}/icon-collection-builder/executor.task.js +0 -0
  276. /package/{dist/executors → executors}/icon-collection-builder/executor.task.js.map +0 -0
  277. /package/{dist/executors → executors}/icon-collection-builder/schema.json +0 -0
  278. /package/{dist/executors → executors}/icon-collection-builder/svg.d.ts +0 -0
  279. /package/{dist/executors → executors}/icon-collection-builder/svg.d.ts.map +0 -0
  280. /package/{dist/executors → executors}/icon-collection-builder/svg.js +0 -0
  281. /package/{dist/executors → executors}/icon-collection-builder/svg.js.map +0 -0
  282. /package/{dist/executors → executors}/icon-collection-downloader/executor.d.ts +0 -0
  283. /package/{dist/executors → executors}/icon-collection-downloader/executor.d.ts.map +0 -0
  284. /package/{dist/executors → executors}/icon-collection-downloader/executor.js +0 -0
  285. /package/{dist/executors → executors}/icon-collection-downloader/executor.js.map +0 -0
  286. /package/{dist/executors → executors}/icon-collection-downloader/executor.options.d.ts +0 -0
  287. /package/{dist/executors → executors}/icon-collection-downloader/executor.options.d.ts.map +0 -0
  288. /package/{dist/executors → executors}/icon-collection-downloader/executor.options.js +0 -0
  289. /package/{dist/executors → executors}/icon-collection-downloader/executor.options.js.map +0 -0
  290. /package/{dist/executors → executors}/icon-collection-downloader/executor.task.d.ts +0 -0
  291. /package/{dist/executors → executors}/icon-collection-downloader/executor.task.d.ts.map +0 -0
  292. /package/{dist/executors → executors}/icon-collection-downloader/executor.task.js +0 -0
  293. /package/{dist/executors → executors}/icon-collection-downloader/executor.task.js.map +0 -0
  294. /package/{dist/executors → executors}/icon-collection-downloader/schema.json +0 -0
  295. /package/{dist/executors → executors}/lit-docs/ComponentDocFixer.d.ts +0 -0
  296. /package/{dist/executors → executors}/lit-docs/ComponentDocFixer.d.ts.map +0 -0
  297. /package/{dist/executors → executors}/lit-docs/ComponentDocFixer.js +0 -0
  298. /package/{dist/executors → executors}/lit-docs/ComponentDocFixer.js.map +0 -0
  299. /package/{dist/executors → executors}/lit-docs/JSDocChecker.d.ts +0 -0
  300. /package/{dist/executors → executors}/lit-docs/JSDocChecker.d.ts.map +0 -0
  301. /package/{dist/executors → executors}/lit-docs/JSDocChecker.js +0 -0
  302. /package/{dist/executors → executors}/lit-docs/JSDocChecker.js.map +0 -0
  303. /package/{dist/executors → executors}/lit-docs/JSDocFixer.d.ts +0 -0
  304. /package/{dist/executors → executors}/lit-docs/JSDocFixer.d.ts.map +0 -0
  305. /package/{dist/executors → executors}/lit-docs/JSDocFixer.js +0 -0
  306. /package/{dist/executors → executors}/lit-docs/JSDocFixer.js.map +0 -0
  307. /package/{dist/executors → executors}/lit-docs/executor.d.ts +0 -0
  308. /package/{dist/executors → executors}/lit-docs/executor.d.ts.map +0 -0
  309. /package/{dist/executors → executors}/lit-docs/executor.js +0 -0
  310. /package/{dist/executors → executors}/lit-docs/executor.js.map +0 -0
  311. /package/{dist/executors → executors}/lit-docs/executor.options.d.ts +0 -0
  312. /package/{dist/executors → executors}/lit-docs/executor.options.d.ts.map +0 -0
  313. /package/{dist/executors → executors}/lit-docs/executor.options.js +0 -0
  314. /package/{dist/executors → executors}/lit-docs/executor.options.js.map +0 -0
  315. /package/{dist/executors → executors}/lit-docs/executor.task.d.ts +0 -0
  316. /package/{dist/executors → executors}/lit-docs/executor.task.d.ts.map +0 -0
  317. /package/{dist/executors → executors}/lit-docs/executor.task.js +0 -0
  318. /package/{dist/executors → executors}/lit-docs/executor.task.js.map +0 -0
  319. /package/{dist/executors → executors}/lit-docs/schema.json +0 -0
  320. /package/{dist/executors → executors}/lit-style-transform/executor.d.ts +0 -0
  321. /package/{dist/executors → executors}/lit-style-transform/executor.d.ts.map +0 -0
  322. /package/{dist/executors → executors}/lit-style-transform/executor.js +0 -0
  323. /package/{dist/executors → executors}/lit-style-transform/executor.js.map +0 -0
  324. /package/{dist/executors → executors}/lit-style-transform/executor.options.d.ts +0 -0
  325. /package/{dist/executors → executors}/lit-style-transform/executor.options.d.ts.map +0 -0
  326. /package/{dist/executors → executors}/lit-style-transform/executor.options.js +0 -0
  327. /package/{dist/executors → executors}/lit-style-transform/executor.options.js.map +0 -0
  328. /package/{dist/executors → executors}/lit-style-transform/executor.task.d.ts +0 -0
  329. /package/{dist/executors → executors}/lit-style-transform/executor.task.d.ts.map +0 -0
  330. /package/{dist/executors → executors}/lit-style-transform/executor.task.js +0 -0
  331. /package/{dist/executors → executors}/lit-style-transform/executor.task.js.map +0 -0
  332. /package/{dist/executors → executors}/lit-style-transform/schema.json +0 -0
  333. /package/{dist/executors → executors}/localizator/executor.d.ts +0 -0
  334. /package/{dist/executors → executors}/localizator/executor.d.ts.map +0 -0
  335. /package/{dist/executors → executors}/localizator/executor.js +0 -0
  336. /package/{dist/executors → executors}/localizator/executor.js.map +0 -0
  337. /package/{dist/executors → executors}/localizator/executor.options.d.ts +0 -0
  338. /package/{dist/executors → executors}/localizator/executor.options.d.ts.map +0 -0
  339. /package/{dist/executors → executors}/localizator/executor.options.js +0 -0
  340. /package/{dist/executors → executors}/localizator/executor.options.js.map +0 -0
  341. /package/{dist/executors → executors}/localizator/executor.task.d.ts +0 -0
  342. /package/{dist/executors → executors}/localizator/executor.task.d.ts.map +0 -0
  343. /package/{dist/executors → executors}/localizator/executor.task.js +0 -0
  344. /package/{dist/executors → executors}/localizator/executor.task.js.map +0 -0
  345. /package/{dist/executors → executors}/localizator/schema.json +0 -0
  346. /package/{dist/executors → executors}/markdown-to-typescript-transform/MarkdownRenderer.d.ts +0 -0
  347. /package/{dist/executors → executors}/markdown-to-typescript-transform/MarkdownRenderer.d.ts.map +0 -0
  348. /package/{dist/executors → executors}/markdown-to-typescript-transform/MarkdownRenderer.js +0 -0
  349. /package/{dist/executors → executors}/markdown-to-typescript-transform/MarkdownRenderer.js.map +0 -0
  350. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.d.ts +0 -0
  351. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.d.ts.map +0 -0
  352. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.js +0 -0
  353. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.js.map +0 -0
  354. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.options.d.ts +0 -0
  355. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.options.d.ts.map +0 -0
  356. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.options.js +0 -0
  357. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.options.js.map +0 -0
  358. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.task.d.ts +0 -0
  359. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.task.d.ts.map +0 -0
  360. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.task.js +0 -0
  361. /package/{dist/executors → executors}/markdown-to-typescript-transform/executor.task.js.map +0 -0
  362. /package/{dist/executors → executors}/markdown-to-typescript-transform/schema.json +0 -0
  363. /package/{dist/executors → executors}/ng-api-extractor/executor.d.ts +0 -0
  364. /package/{dist/executors → executors}/ng-api-extractor/executor.d.ts.map +0 -0
  365. /package/{dist/executors → executors}/ng-api-extractor/executor.js +0 -0
  366. /package/{dist/executors → executors}/ng-api-extractor/executor.js.map +0 -0
  367. /package/{dist/executors → executors}/ng-api-extractor/executor.options.d.ts +0 -0
  368. /package/{dist/executors → executors}/ng-api-extractor/executor.options.d.ts.map +0 -0
  369. /package/{dist/executors → executors}/ng-api-extractor/executor.options.js +0 -0
  370. /package/{dist/executors → executors}/ng-api-extractor/executor.options.js.map +0 -0
  371. /package/{dist/executors → executors}/ng-api-extractor/executor.task.d.ts +0 -0
  372. /package/{dist/executors → executors}/ng-api-extractor/executor.task.d.ts.map +0 -0
  373. /package/{dist/executors → executors}/ng-api-extractor/executor.task.js +0 -0
  374. /package/{dist/executors → executors}/ng-api-extractor/executor.task.js.map +0 -0
  375. /package/{dist/executors → executors}/ng-api-extractor/schema.json +0 -0
  376. /package/{dist/executors → executors}/ng-packagr-build/executor.d.ts +0 -0
  377. /package/{dist/executors → executors}/ng-packagr-build/executor.d.ts.map +0 -0
  378. /package/{dist/executors → executors}/ng-packagr-build/executor.js +0 -0
  379. /package/{dist/executors → executors}/ng-packagr-build/executor.js.map +0 -0
  380. /package/{dist/executors → executors}/ng-packagr-build/executor.options.d.ts +0 -0
  381. /package/{dist/executors → executors}/ng-packagr-build/executor.options.d.ts.map +0 -0
  382. /package/{dist/executors → executors}/ng-packagr-build/executor.options.js +0 -0
  383. /package/{dist/executors → executors}/ng-packagr-build/executor.options.js.map +0 -0
  384. /package/{dist/executors → executors}/ng-packagr-build/executor.task.d.ts +0 -0
  385. /package/{dist/executors → executors}/ng-packagr-build/executor.task.d.ts.map +0 -0
  386. /package/{dist/executors → executors}/ng-packagr-build/executor.task.js +0 -0
  387. /package/{dist/executors → executors}/ng-packagr-build/executor.task.js.map +0 -0
  388. /package/{dist/executors → executors}/ng-packagr-build/schema.json +0 -0
  389. /package/{dist/executors → executors}/ng-proxy-transform/executor.d.ts +0 -0
  390. /package/{dist/executors → executors}/ng-proxy-transform/executor.d.ts.map +0 -0
  391. /package/{dist/executors → executors}/ng-proxy-transform/executor.js +0 -0
  392. /package/{dist/executors → executors}/ng-proxy-transform/executor.js.map +0 -0
  393. /package/{dist/executors → executors}/ng-proxy-transform/executor.options.d.ts +0 -0
  394. /package/{dist/executors → executors}/ng-proxy-transform/executor.options.d.ts.map +0 -0
  395. /package/{dist/executors → executors}/ng-proxy-transform/executor.options.js +0 -0
  396. /package/{dist/executors → executors}/ng-proxy-transform/executor.options.js.map +0 -0
  397. /package/{dist/executors → executors}/ng-proxy-transform/executor.task.d.ts +0 -0
  398. /package/{dist/executors → executors}/ng-proxy-transform/executor.task.d.ts.map +0 -0
  399. /package/{dist/executors → executors}/ng-proxy-transform/executor.task.js +0 -0
  400. /package/{dist/executors → executors}/ng-proxy-transform/executor.task.js.map +0 -0
  401. /package/{dist/executors → executors}/ng-proxy-transform/schema.json +0 -0
  402. /package/{dist/executors → executors}/openapi-generator/executor.d.ts +0 -0
  403. /package/{dist/executors → executors}/openapi-generator/executor.d.ts.map +0 -0
  404. /package/{dist/executors → executors}/openapi-generator/executor.js +0 -0
  405. /package/{dist/executors → executors}/openapi-generator/executor.js.map +0 -0
  406. /package/{dist/executors → executors}/openapi-generator/executor.options.d.ts +0 -0
  407. /package/{dist/executors → executors}/openapi-generator/executor.options.d.ts.map +0 -0
  408. /package/{dist/executors → executors}/openapi-generator/executor.options.js +0 -0
  409. /package/{dist/executors → executors}/openapi-generator/executor.options.js.map +0 -0
  410. /package/{dist/executors → executors}/openapi-generator/executor.task.d.ts +0 -0
  411. /package/{dist/executors → executors}/openapi-generator/executor.task.d.ts.map +0 -0
  412. /package/{dist/executors → executors}/openapi-generator/executor.task.js +0 -0
  413. /package/{dist/executors → executors}/openapi-generator/executor.task.js.map +0 -0
  414. /package/{dist/executors → executors}/openapi-generator/schema.json +0 -0
  415. /package/{dist/executors → executors}/prisma-seeds/executor.d.ts +0 -0
  416. /package/{dist/executors → executors}/prisma-seeds/executor.d.ts.map +0 -0
  417. /package/{dist/executors → executors}/prisma-seeds/executor.js +0 -0
  418. /package/{dist/executors → executors}/prisma-seeds/executor.js.map +0 -0
  419. /package/{dist/executors → executors}/prisma-seeds/executor.options.d.ts +0 -0
  420. /package/{dist/executors → executors}/prisma-seeds/executor.options.d.ts.map +0 -0
  421. /package/{dist/executors → executors}/prisma-seeds/executor.options.js +0 -0
  422. /package/{dist/executors → executors}/prisma-seeds/executor.options.js.map +0 -0
  423. /package/{dist/executors → executors}/prisma-seeds/executor.task.d.ts +0 -0
  424. /package/{dist/executors → executors}/prisma-seeds/executor.task.d.ts.map +0 -0
  425. /package/{dist/executors → executors}/prisma-seeds/executor.task.js +0 -0
  426. /package/{dist/executors → executors}/prisma-seeds/executor.task.js.map +0 -0
  427. /package/{dist/executors → executors}/prisma-seeds/schema.json +0 -0
  428. /package/{dist/executors → executors}/react-proxy-transform/executor.d.ts +0 -0
  429. /package/{dist/executors → executors}/react-proxy-transform/executor.d.ts.map +0 -0
  430. /package/{dist/executors → executors}/react-proxy-transform/executor.js +0 -0
  431. /package/{dist/executors → executors}/react-proxy-transform/executor.js.map +0 -0
  432. /package/{dist/executors → executors}/react-proxy-transform/executor.options.d.ts +0 -0
  433. /package/{dist/executors → executors}/react-proxy-transform/executor.options.d.ts.map +0 -0
  434. /package/{dist/executors → executors}/react-proxy-transform/executor.options.js +0 -0
  435. /package/{dist/executors → executors}/react-proxy-transform/executor.options.js.map +0 -0
  436. /package/{dist/executors → executors}/react-proxy-transform/executor.task.d.ts +0 -0
  437. /package/{dist/executors → executors}/react-proxy-transform/executor.task.d.ts.map +0 -0
  438. /package/{dist/executors → executors}/react-proxy-transform/executor.task.js +0 -0
  439. /package/{dist/executors → executors}/react-proxy-transform/executor.task.js.map +0 -0
  440. /package/{dist/executors → executors}/react-proxy-transform/schema.json +0 -0
  441. /package/{dist/executors → executors}/release-package/executor.d.ts +0 -0
  442. /package/{dist/executors → executors}/release-package/executor.d.ts.map +0 -0
  443. /package/{dist/executors → executors}/release-package/executor.js +0 -0
  444. /package/{dist/executors → executors}/release-package/executor.js.map +0 -0
  445. /package/{dist/executors → executors}/release-package/executor.options.d.ts +0 -0
  446. /package/{dist/executors → executors}/release-package/executor.options.d.ts.map +0 -0
  447. /package/{dist/executors → executors}/release-package/executor.options.js +0 -0
  448. /package/{dist/executors → executors}/release-package/executor.options.js.map +0 -0
  449. /package/{dist/executors → executors}/release-package/executor.task.d.ts +0 -0
  450. /package/{dist/executors → executors}/release-package/executor.task.d.ts.map +0 -0
  451. /package/{dist/executors → executors}/release-package/executor.task.js +0 -0
  452. /package/{dist/executors → executors}/release-package/executor.task.js.map +0 -0
  453. /package/{dist/executors → executors}/release-package/schema.json +0 -0
  454. /package/{dist/executors → executors}/release-package-json/executor.d.ts +0 -0
  455. /package/{dist/executors → executors}/release-package-json/executor.d.ts.map +0 -0
  456. /package/{dist/executors → executors}/release-package-json/executor.js +0 -0
  457. /package/{dist/executors → executors}/release-package-json/executor.js.map +0 -0
  458. /package/{dist/executors → executors}/release-package-json/executor.options.d.ts +0 -0
  459. /package/{dist/executors → executors}/release-package-json/executor.options.d.ts.map +0 -0
  460. /package/{dist/executors → executors}/release-package-json/executor.options.js +0 -0
  461. /package/{dist/executors → executors}/release-package-json/executor.options.js.map +0 -0
  462. /package/{dist/executors → executors}/release-package-json/executor.task.d.ts +0 -0
  463. /package/{dist/executors → executors}/release-package-json/executor.task.d.ts.map +0 -0
  464. /package/{dist/executors → executors}/release-package-json/executor.task.js +0 -0
  465. /package/{dist/executors → executors}/release-package-json/executor.task.js.map +0 -0
  466. /package/{dist/executors → executors}/release-package-json/schema.json +0 -0
  467. /package/{dist/executors → executors}/scss-style-bundle/executor.d.ts +0 -0
  468. /package/{dist/executors → executors}/scss-style-bundle/executor.d.ts.map +0 -0
  469. /package/{dist/executors → executors}/scss-style-bundle/executor.js +0 -0
  470. /package/{dist/executors → executors}/scss-style-bundle/executor.js.map +0 -0
  471. /package/{dist/executors → executors}/scss-style-bundle/executor.options.d.ts +0 -0
  472. /package/{dist/executors → executors}/scss-style-bundle/executor.options.d.ts.map +0 -0
  473. /package/{dist/executors → executors}/scss-style-bundle/executor.options.js +0 -0
  474. /package/{dist/executors → executors}/scss-style-bundle/executor.options.js.map +0 -0
  475. /package/{dist/executors → executors}/scss-style-bundle/executor.task.d.ts +0 -0
  476. /package/{dist/executors → executors}/scss-style-bundle/executor.task.d.ts.map +0 -0
  477. /package/{dist/executors → executors}/scss-style-bundle/executor.task.js +0 -0
  478. /package/{dist/executors → executors}/scss-style-bundle/executor.task.js.map +0 -0
  479. /package/{dist/executors → executors}/scss-style-bundle/schema.json +0 -0
  480. /package/{dist/executors → executors}/scss-style-transform/executor.d.ts +0 -0
  481. /package/{dist/executors → executors}/scss-style-transform/executor.d.ts.map +0 -0
  482. /package/{dist/executors → executors}/scss-style-transform/executor.js +0 -0
  483. /package/{dist/executors → executors}/scss-style-transform/executor.js.map +0 -0
  484. /package/{dist/executors → executors}/scss-style-transform/executor.options.d.ts +0 -0
  485. /package/{dist/executors → executors}/scss-style-transform/executor.options.d.ts.map +0 -0
  486. /package/{dist/executors → executors}/scss-style-transform/executor.options.js +0 -0
  487. /package/{dist/executors → executors}/scss-style-transform/executor.options.js.map +0 -0
  488. /package/{dist/executors → executors}/scss-style-transform/executor.task.d.ts +0 -0
  489. /package/{dist/executors → executors}/scss-style-transform/executor.task.d.ts.map +0 -0
  490. /package/{dist/executors → executors}/scss-style-transform/executor.task.js +0 -0
  491. /package/{dist/executors → executors}/scss-style-transform/executor.task.js.map +0 -0
  492. /package/{dist/executors → executors}/scss-style-transform/schema.json +0 -0
  493. /package/{dist/executors → executors}/secrets-config-sync/executor.d.ts +0 -0
  494. /package/{dist/executors → executors}/secrets-config-sync/executor.d.ts.map +0 -0
  495. /package/{dist/executors → executors}/secrets-config-sync/executor.js +0 -0
  496. /package/{dist/executors → executors}/secrets-config-sync/executor.js.map +0 -0
  497. /package/{dist/executors → executors}/secrets-config-sync/executor.options.d.ts +0 -0
  498. /package/{dist/executors → executors}/secrets-config-sync/executor.options.d.ts.map +0 -0
  499. /package/{dist/executors → executors}/secrets-config-sync/executor.options.js +0 -0
  500. /package/{dist/executors → executors}/secrets-config-sync/executor.options.js.map +0 -0
  501. /package/{dist/executors → executors}/secrets-config-sync/executor.task.d.ts +0 -0
  502. /package/{dist/executors → executors}/secrets-config-sync/executor.task.d.ts.map +0 -0
  503. /package/{dist/executors → executors}/secrets-config-sync/executor.task.js +0 -0
  504. /package/{dist/executors → executors}/secrets-config-sync/executor.task.js.map +0 -0
  505. /package/{dist/executors → executors}/secrets-config-sync/providers/azure-keyvault.provider.d.ts +0 -0
  506. /package/{dist/executors → executors}/secrets-config-sync/providers/azure-keyvault.provider.d.ts.map +0 -0
  507. /package/{dist/executors → executors}/secrets-config-sync/providers/azure-keyvault.provider.js +0 -0
  508. /package/{dist/executors → executors}/secrets-config-sync/providers/azure-keyvault.provider.js.map +0 -0
  509. /package/{dist/executors → executors}/secrets-config-sync/providers/doppler.provider.d.ts +0 -0
  510. /package/{dist/executors → executors}/secrets-config-sync/providers/doppler.provider.d.ts.map +0 -0
  511. /package/{dist/executors → executors}/secrets-config-sync/providers/doppler.provider.js +0 -0
  512. /package/{dist/executors → executors}/secrets-config-sync/providers/doppler.provider.js.map +0 -0
  513. /package/{dist/executors → executors}/secrets-config-sync/providers/secrets-provider.factory.d.ts +0 -0
  514. /package/{dist/executors → executors}/secrets-config-sync/providers/secrets-provider.factory.d.ts.map +0 -0
  515. /package/{dist/executors → executors}/secrets-config-sync/providers/secrets-provider.factory.js +0 -0
  516. /package/{dist/executors → executors}/secrets-config-sync/providers/secrets-provider.factory.js.map +0 -0
  517. /package/{dist/executors → executors}/secrets-config-sync/providers/secrets-provider.interface.d.ts +0 -0
  518. /package/{dist/executors → executors}/secrets-config-sync/providers/secrets-provider.interface.d.ts.map +0 -0
  519. /package/{dist/executors → executors}/secrets-config-sync/providers/secrets-provider.interface.js +0 -0
  520. /package/{dist/executors → executors}/secrets-config-sync/providers/secrets-provider.interface.js.map +0 -0
  521. /package/{dist/executors → executors}/secrets-config-sync/schema.json +0 -0
  522. /package/{dist/executors → executors}/secrets-vercel-sync/executor.d.ts +0 -0
  523. /package/{dist/executors → executors}/secrets-vercel-sync/executor.d.ts.map +0 -0
  524. /package/{dist/executors → executors}/secrets-vercel-sync/executor.js +0 -0
  525. /package/{dist/executors → executors}/secrets-vercel-sync/executor.js.map +0 -0
  526. /package/{dist/executors → executors}/secrets-vercel-sync/executor.options.d.ts +0 -0
  527. /package/{dist/executors → executors}/secrets-vercel-sync/executor.options.d.ts.map +0 -0
  528. /package/{dist/executors → executors}/secrets-vercel-sync/executor.options.js +0 -0
  529. /package/{dist/executors → executors}/secrets-vercel-sync/executor.options.js.map +0 -0
  530. /package/{dist/executors → executors}/secrets-vercel-sync/executor.task.d.ts +0 -0
  531. /package/{dist/executors → executors}/secrets-vercel-sync/executor.task.d.ts.map +0 -0
  532. /package/{dist/executors → executors}/secrets-vercel-sync/executor.task.js +0 -0
  533. /package/{dist/executors → executors}/secrets-vercel-sync/executor.task.js.map +0 -0
  534. /package/{dist/executors → executors}/secrets-vercel-sync/providers/azure-keyvault.provider.d.ts +0 -0
  535. /package/{dist/executors → executors}/secrets-vercel-sync/providers/azure-keyvault.provider.d.ts.map +0 -0
  536. /package/{dist/executors → executors}/secrets-vercel-sync/providers/azure-keyvault.provider.js +0 -0
  537. /package/{dist/executors → executors}/secrets-vercel-sync/providers/azure-keyvault.provider.js.map +0 -0
  538. /package/{dist/executors → executors}/secrets-vercel-sync/providers/doppler.provider.d.ts +0 -0
  539. /package/{dist/executors → executors}/secrets-vercel-sync/providers/doppler.provider.d.ts.map +0 -0
  540. /package/{dist/executors → executors}/secrets-vercel-sync/providers/doppler.provider.js +0 -0
  541. /package/{dist/executors → executors}/secrets-vercel-sync/providers/doppler.provider.js.map +0 -0
  542. /package/{dist/executors → executors}/secrets-vercel-sync/providers/secrets-provider.factory.d.ts +0 -0
  543. /package/{dist/executors → executors}/secrets-vercel-sync/providers/secrets-provider.factory.d.ts.map +0 -0
  544. /package/{dist/executors → executors}/secrets-vercel-sync/providers/secrets-provider.factory.js +0 -0
  545. /package/{dist/executors → executors}/secrets-vercel-sync/providers/secrets-provider.factory.js.map +0 -0
  546. /package/{dist/executors → executors}/secrets-vercel-sync/providers/secrets-provider.interface.d.ts +0 -0
  547. /package/{dist/executors → executors}/secrets-vercel-sync/providers/secrets-provider.interface.d.ts.map +0 -0
  548. /package/{dist/executors → executors}/secrets-vercel-sync/providers/secrets-provider.interface.js +0 -0
  549. /package/{dist/executors → executors}/secrets-vercel-sync/providers/secrets-provider.interface.js.map +0 -0
  550. /package/{dist/executors → executors}/secrets-vercel-sync/schema.json +0 -0
  551. /package/{dist/executors → executors}/svelte-proxy-transform/executor.d.ts +0 -0
  552. /package/{dist/executors → executors}/svelte-proxy-transform/executor.d.ts.map +0 -0
  553. /package/{dist/executors → executors}/svelte-proxy-transform/executor.js +0 -0
  554. /package/{dist/executors → executors}/svelte-proxy-transform/executor.js.map +0 -0
  555. /package/{dist/executors → executors}/svelte-proxy-transform/executor.options.d.ts +0 -0
  556. /package/{dist/executors → executors}/svelte-proxy-transform/executor.options.d.ts.map +0 -0
  557. /package/{dist/executors → executors}/svelte-proxy-transform/executor.options.js +0 -0
  558. /package/{dist/executors → executors}/svelte-proxy-transform/executor.options.js.map +0 -0
  559. /package/{dist/executors → executors}/svelte-proxy-transform/executor.task.d.ts +0 -0
  560. /package/{dist/executors → executors}/svelte-proxy-transform/executor.task.d.ts.map +0 -0
  561. /package/{dist/executors → executors}/svelte-proxy-transform/executor.task.js +0 -0
  562. /package/{dist/executors → executors}/svelte-proxy-transform/executor.task.js.map +0 -0
  563. /package/{dist/executors → executors}/svelte-proxy-transform/schema.json +0 -0
  564. /package/{dist/executors → executors}/token-linter/executor.d.ts +0 -0
  565. /package/{dist/executors → executors}/token-linter/executor.d.ts.map +0 -0
  566. /package/{dist/executors → executors}/token-linter/executor.js +0 -0
  567. /package/{dist/executors → executors}/token-linter/executor.js.map +0 -0
  568. /package/{dist/executors → executors}/token-linter/executor.options.d.ts +0 -0
  569. /package/{dist/executors → executors}/token-linter/executor.options.d.ts.map +0 -0
  570. /package/{dist/executors → executors}/token-linter/executor.options.js +0 -0
  571. /package/{dist/executors → executors}/token-linter/executor.options.js.map +0 -0
  572. /package/{dist/executors → executors}/token-linter/executor.task.d.ts +0 -0
  573. /package/{dist/executors → executors}/token-linter/executor.task.d.ts.map +0 -0
  574. /package/{dist/executors → executors}/token-linter/executor.task.js +0 -0
  575. /package/{dist/executors → executors}/token-linter/executor.task.js.map +0 -0
  576. /package/{dist/executors → executors}/token-linter/schema.json +0 -0
  577. /package/{dist/executors → executors}/unrelease-package/executor.d.ts +0 -0
  578. /package/{dist/executors → executors}/unrelease-package/executor.d.ts.map +0 -0
  579. /package/{dist/executors → executors}/unrelease-package/executor.js +0 -0
  580. /package/{dist/executors → executors}/unrelease-package/executor.js.map +0 -0
  581. /package/{dist/executors → executors}/unrelease-package/executor.options.d.ts +0 -0
  582. /package/{dist/executors → executors}/unrelease-package/executor.options.d.ts.map +0 -0
  583. /package/{dist/executors → executors}/unrelease-package/executor.options.js +0 -0
  584. /package/{dist/executors → executors}/unrelease-package/executor.options.js.map +0 -0
  585. /package/{dist/executors → executors}/unrelease-package/executor.task.d.ts +0 -0
  586. /package/{dist/executors → executors}/unrelease-package/executor.task.d.ts.map +0 -0
  587. /package/{dist/executors → executors}/unrelease-package/executor.task.js +0 -0
  588. /package/{dist/executors → executors}/unrelease-package/executor.task.js.map +0 -0
  589. /package/{dist/executors → executors}/unrelease-package/schema.json +0 -0
  590. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.d.ts +0 -0
  591. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.d.ts.map +0 -0
  592. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.js +0 -0
  593. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.js.map +0 -0
  594. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.options.d.ts +0 -0
  595. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.options.d.ts.map +0 -0
  596. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.options.js +0 -0
  597. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.options.js.map +0 -0
  598. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.task.d.ts +0 -0
  599. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.task.d.ts.map +0 -0
  600. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.task.js +0 -0
  601. /package/{dist/executors → executors}/vercel-edge-config-sync/executor.task.js.map +0 -0
  602. /package/{dist/executors → executors}/vercel-edge-config-sync/schema.json +0 -0
  603. /package/{dist/executors → executors}/vue-proxy-transform/executor.d.ts +0 -0
  604. /package/{dist/executors → executors}/vue-proxy-transform/executor.d.ts.map +0 -0
  605. /package/{dist/executors → executors}/vue-proxy-transform/executor.js +0 -0
  606. /package/{dist/executors → executors}/vue-proxy-transform/executor.js.map +0 -0
  607. /package/{dist/executors → executors}/vue-proxy-transform/executor.options.d.ts +0 -0
  608. /package/{dist/executors → executors}/vue-proxy-transform/executor.options.d.ts.map +0 -0
  609. /package/{dist/executors → executors}/vue-proxy-transform/executor.options.js +0 -0
  610. /package/{dist/executors → executors}/vue-proxy-transform/executor.options.js.map +0 -0
  611. /package/{dist/executors → executors}/vue-proxy-transform/executor.task.d.ts +0 -0
  612. /package/{dist/executors → executors}/vue-proxy-transform/executor.task.d.ts.map +0 -0
  613. /package/{dist/executors → executors}/vue-proxy-transform/executor.task.js +0 -0
  614. /package/{dist/executors → executors}/vue-proxy-transform/executor.task.js.map +0 -0
  615. /package/{dist/executors → executors}/vue-proxy-transform/schema.json +0 -0
  616. /package/{dist/index.d.ts → index.d.ts} +0 -0
  617. /package/{dist/index.d.ts.map → index.d.ts.map} +0 -0
  618. /package/{dist/index.js → index.js} +0 -0
  619. /package/{dist/index.js.map → index.js.map} +0 -0
  620. /package/{dist/utils → utils}/TaskBase.d.ts +0 -0
  621. /package/{dist/utils → utils}/TaskBase.d.ts.map +0 -0
  622. /package/{dist/utils → utils}/TaskBase.js +0 -0
  623. /package/{dist/utils → utils}/TaskBase.js.map +0 -0
  624. /package/{dist/utils → utils}/getProjectPackageJson.d.ts +0 -0
  625. /package/{dist/utils → utils}/getProjectPackageJson.d.ts.map +0 -0
  626. /package/{dist/utils → utils}/getProjectPackageJson.js +0 -0
  627. /package/{dist/utils → utils}/getProjectPackageJson.js.map +0 -0
  628. /package/{dist/utils → utils}/getProjectRoot.d.ts +0 -0
  629. /package/{dist/utils → utils}/getProjectRoot.d.ts.map +0 -0
  630. /package/{dist/utils → utils}/getProjectRoot.js +0 -0
  631. /package/{dist/utils → utils}/getProjectRoot.js.map +0 -0
  632. /package/{dist/utils → utils}/getProjectTsConfigJson.d.ts +0 -0
  633. /package/{dist/utils → utils}/getProjectTsConfigJson.d.ts.map +0 -0
  634. /package/{dist/utils → utils}/getProjectTsConfigJson.js +0 -0
  635. /package/{dist/utils → utils}/getProjectTsConfigJson.js.map +0 -0
  636. /package/{dist/utils → utils}/isVerbose.d.ts +0 -0
  637. /package/{dist/utils → utils}/isVerbose.d.ts.map +0 -0
  638. /package/{dist/utils → utils}/isVerbose.js +0 -0
  639. /package/{dist/utils → utils}/isVerbose.js.map +0 -0
  640. /package/{dist/utils → utils}/loadAndExpandDotEnvFile.d.ts +0 -0
  641. /package/{dist/utils → utils}/loadAndExpandDotEnvFile.d.ts.map +0 -0
  642. /package/{dist/utils → utils}/loadAndExpandDotEnvFile.js +0 -0
  643. /package/{dist/utils → utils}/loadAndExpandDotEnvFile.js.map +0 -0
  644. /package/{dist/utils → utils}/markdown-processing.d.ts +0 -0
  645. /package/{dist/utils → utils}/markdown-processing.d.ts.map +0 -0
  646. /package/{dist/utils → utils}/markdown-processing.js +0 -0
  647. /package/{dist/utils → utils}/markdown-processing.js.map +0 -0
  648. /package/{dist/utils → utils}/valid-html-tags.d.ts +0 -0
  649. /package/{dist/utils → utils}/valid-html-tags.d.ts.map +0 -0
  650. /package/{dist/utils → utils}/valid-html-tags.js +0 -0
  651. /package/{dist/utils → utils}/valid-html-tags.js.map +0 -0
  652. /package/{dist/utils → utils}/withCaching.d.ts +0 -0
  653. /package/{dist/utils → utils}/withCaching.d.ts.map +0 -0
  654. /package/{dist/utils → utils}/withCaching.js +0 -0
  655. /package/{dist/utils → utils}/withCaching.js.map +0 -0
@@ -1,697 +0,0 @@
1
- // #region Imports
2
-
3
- import { ConsoleLogger, type ILogger, bold, cyan, gray, green, logBanner, logEmptyLine, logSeparator, logTree, magenta, red, yellow } from '@breadstone-infrastructure/utilities';
4
- import { prompt } from 'enquirer';
5
- import type { SecretsProviderType } from './providers/secrets-provider.factory';
6
- import { createSecretsProvider } from './providers/secrets-provider.factory';
7
-
8
- // #endregion
9
-
10
- export namespace SecretsVercelSyncTask {
11
-
12
- // #region Constants
13
-
14
- const VERCEL_API_BASE = 'https://api.vercel.com';
15
-
16
- const VALID_VERCEL_ENVIRONMENTS = ['development', 'preview', 'production'] as const;
17
-
18
- const VALID_VERCEL_VARIABLE_TYPES = ['encrypted', 'sensitive'] as const;
19
-
20
- const VALID_CONFLICT_STRATEGIES = ['none', 'prefer-source', 'prefer-vercel'] as const;
21
-
22
- /**
23
- * Expected semantic mapping: secrets config -> Vercel environment.
24
- */
25
- const STAGE_MAPPING: Record<string, string> = {
26
- dev: 'development',
27
- prev: 'preview',
28
- stage: 'preview',
29
- prod: 'production'
30
- };
31
-
32
- // #endregion
33
-
34
- // #region Types
35
-
36
- type VercelEnvironment = typeof VALID_VERCEL_ENVIRONMENTS[number];
37
-
38
- type VercelVariableType = typeof VALID_VERCEL_VARIABLE_TYPES[number];
39
-
40
- type ConflictStrategy = typeof VALID_CONFLICT_STRATEGIES[number];
41
-
42
- type SyncAction = 'added' | 'updated' | 'unchanged' | 'skipped' | 'deleted' | 'forced';
43
-
44
- // #endregion
45
-
46
- // #region Interfaces
47
-
48
- export interface ISecretsVercelSyncTaskOptions {
49
- cwd: string;
50
- provider: SecretsProviderType;
51
- secretsProject: string;
52
- secretsConfig: string;
53
- vaultUrl?: string;
54
- apiKey?: string;
55
- vercelTeam: string;
56
- vercelProject: string;
57
- vercelEnvironment: VercelEnvironment;
58
- vercelVariableType?: VercelVariableType;
59
- conflictStrategy?: ConflictStrategy;
60
- dryRun?: boolean;
61
- deleteMissing?: boolean;
62
- includeKeys?: Array<string>;
63
- excludeKeys?: Array<string>;
64
- redeploy?: boolean;
65
- interactive?: boolean;
66
- }
67
-
68
- interface IVercelEnvVariable {
69
- id: string;
70
- key: string;
71
- value: string;
72
- target: Array<string>;
73
- type: string;
74
- }
75
-
76
- interface IVercelEnvListResponse {
77
- envs: Array<IVercelEnvVariable>;
78
- }
79
-
80
- interface IVercelEnvFetchResult {
81
- envs: Array<IVercelEnvVariable>;
82
- decrypted: boolean;
83
- }
84
-
85
- interface ISyncResult {
86
- key: string;
87
- action: SyncAction;
88
- }
89
-
90
- // #endregion
91
-
92
- // #region Validation
93
-
94
- /**
95
- * Validates all options before execution.
96
- */
97
- function validate(options: ISecretsVercelSyncTaskOptions): void {
98
- const variableType = options.vercelVariableType ?? 'encrypted';
99
- const conflictStrategy = options.conflictStrategy ?? 'prefer-source';
100
-
101
- if (!VALID_VERCEL_ENVIRONMENTS.includes(options.vercelEnvironment as VercelEnvironment)) {
102
- throw new Error(`Invalid vercelEnvironment "${options.vercelEnvironment}". Allowed: ${VALID_VERCEL_ENVIRONMENTS.join(', ')}`);
103
- }
104
-
105
- if (!VALID_VERCEL_VARIABLE_TYPES.includes(variableType as VercelVariableType)) {
106
- throw new Error(`Invalid vercelVariableType "${variableType}". Allowed: ${VALID_VERCEL_VARIABLE_TYPES.join(', ')}`);
107
- }
108
-
109
- if (!VALID_CONFLICT_STRATEGIES.includes(conflictStrategy as ConflictStrategy)) {
110
- throw new Error(`Invalid conflictStrategy "${conflictStrategy}". Allowed: ${VALID_CONFLICT_STRATEGIES.join(', ')}`);
111
- }
112
-
113
- if (variableType === 'sensitive' && options.vercelEnvironment === 'development') {
114
- throw new Error('vercelVariableType "sensitive" is not allowed for vercelEnvironment "development". Vercel does not support sensitive variables in development.');
115
- }
116
-
117
- validateStageMapping(options.secretsConfig, options.vercelEnvironment);
118
-
119
- if (options.includeKeys && options.excludeKeys) {
120
- const overlap = options.includeKeys.filter(key => options.excludeKeys!.includes(key));
121
-
122
- if (overlap.length > 0) {
123
- throw new Error(`includeKeys and excludeKeys overlap on: ${overlap.join(', ')}. Remove duplicates.`);
124
- }
125
- }
126
-
127
- if (options.provider === 'azure-keyvault' && !options.vaultUrl) {
128
- throw new Error('vaultUrl is required when provider is azure-keyvault.');
129
- }
130
- }
131
-
132
- /**
133
- * Validates that the secrets config and Vercel environment follow the expected semantic mapping.
134
- */
135
- function validateStageMapping(secretsConfig: string, vercelEnvironment: string): void {
136
- const expectedEnvironment = STAGE_MAPPING[secretsConfig];
137
-
138
- if (expectedEnvironment && expectedEnvironment !== vercelEnvironment) {
139
- throw new Error(
140
- `Semantic stage mismatch: secrets config "${secretsConfig}" is expected to map to Vercel environment "${expectedEnvironment}", but "${vercelEnvironment}" was configured. ` +
141
- `If this is intentional, review the configuration carefully.`
142
- );
143
- }
144
- }
145
-
146
- // #endregion
147
-
148
- // #region Vercel API
149
-
150
- /**
151
- * Prompts the user for a token via interactive terminal input.
152
- */
153
- async function promptForToken(label: string, hint: string): Promise<string> {
154
- const credentials = await prompt<{ token: string }>([
155
- {
156
- type: 'input',
157
- name: 'token',
158
- message: `Enter your ${label}:\n${hint}`
159
- }
160
- ]);
161
-
162
- if (!credentials.token) {
163
- throw new Error(`No ${label} provided. Aborting.`);
164
- }
165
-
166
- return credentials.token;
167
- }
168
-
169
- /**
170
- * Resolves the Vercel API token from the VERCEL_TOKEN environment variable.
171
- * Falls back to interactive prompt if interactive mode is enabled.
172
- */
173
- async function resolveVercelToken(interactive: boolean): Promise<string> {
174
- const token = process.env['VERCEL_TOKEN'];
175
-
176
- if (token) {
177
- return token;
178
- }
179
-
180
- if (interactive) {
181
- return promptForToken('Vercel API token', 'You can create one at https://vercel.com/account/tokens.');
182
- }
183
-
184
- throw new Error('VERCEL_TOKEN environment variable is not set. Set it to a Vercel API token, or enable interactive mode.');
185
- }
186
-
187
- /**
188
- * Builds the query string for Vercel team scoping.
189
- */
190
- function buildVercelTeamQuery(team: string): string {
191
- return team.startsWith('team_')
192
- ? `teamId=${encodeURIComponent(team)}`
193
- : `slug=${encodeURIComponent(team)}`;
194
- }
195
-
196
- /**
197
- * Heuristically detects whether the values returned by Vercel are still ciphertext despite a
198
- * successful `?decrypt=true` request. Vercel silently returns ciphertext when the calling token
199
- * lacks decryption permission (no error). Ciphertext is invariably long (>=100 chars) and limited
200
- * to base64url charset. If most encrypted-typed values match this profile, we treat the fetch as
201
- * non-decrypted.
202
- */
203
- function detectCiphertext(envs: Array<IVercelEnvVariable>): boolean {
204
- const candidates = envs.filter(e => e.type === 'encrypted' && typeof e.value === 'string' && e.value.length > 0);
205
-
206
- if (candidates.length === 0) {
207
- return false;
208
- }
209
-
210
- const base64UrlOnly = /^[A-Za-z0-9+/=_-]+$/;
211
- let suspicious = 0;
212
-
213
- for (const env of candidates) {
214
- if (env.value.length >= 100 && base64UrlOnly.test(env.value)) {
215
- suspicious++;
216
- }
217
- }
218
-
219
- // If a clear majority looks like ciphertext, assume decryption did not happen.
220
- return suspicious / candidates.length >= 0.5;
221
- }
222
-
223
- /**
224
- * Fetches existing environment variables from a Vercel project.
225
- *
226
- * Attempts to retrieve decrypted values when `requestDecrypt` is true. If Vercel rejects the
227
- * decrypt request (e.g. token lacks scope, or the variable type does not support decryption),
228
- * the request is retried without `decrypt=true` and `decrypted` is reported as `false`.
229
- *
230
- * Note: Vercel may also silently return ciphertext when `?decrypt=true` is sent with a token
231
- * that lacks decryption scope (no HTTP error). In that case `decrypted` is also reported as
232
- * `false` based on a content heuristic ({@link detectCiphertext}).
233
- */
234
- async function fetchVercelEnvVars(
235
- token: string,
236
- project: string,
237
- team: string,
238
- requestDecrypt: boolean,
239
- logger: ILogger
240
- ): Promise<IVercelEnvFetchResult> {
241
- const teamQuery = buildVercelTeamQuery(team);
242
- const baseUrl = `${VERCEL_API_BASE}/v9/projects/${encodeURIComponent(project)}/env?${teamQuery}`;
243
-
244
- if (requestDecrypt) {
245
- try {
246
- const envs = await fetchAllVercelEnvPages(token, `${baseUrl}&decrypt=true`);
247
- const stillCiphertext = detectCiphertext(envs);
248
-
249
- if (stillCiphertext) {
250
- logger.warn(' Vercel returned ciphertext despite decrypt=true (token likely lacks decryption scope).');
251
-
252
- return { envs, decrypted: false };
253
- }
254
-
255
- logger.log(` Fetched ${envs.length} env vars from Vercel [${project}] (decrypted).`);
256
-
257
- return { envs, decrypted: true };
258
- } catch (error) {
259
- const message = error instanceof Error ? error.message : String(error);
260
- logger.warn(` Decrypted fetch failed (${message}). Falling back to non-decrypted fetch.`);
261
- }
262
- }
263
-
264
- const envs = await fetchAllVercelEnvPages(token, baseUrl);
265
- logger.log(` Fetched ${envs.length} env vars from Vercel [${project}] (values not comparable).`);
266
-
267
- return { envs, decrypted: false };
268
- }
269
-
270
- /**
271
- * Pages through all Vercel env vars for the given list URL.
272
- */
273
- async function fetchAllVercelEnvPages(token: string, listUrl: string): Promise<Array<IVercelEnvVariable>> {
274
- const allEnvVars: Array<IVercelEnvVariable> = [];
275
- let nextUrl: string | undefined = listUrl;
276
-
277
- while (nextUrl) {
278
- const response = await fetch(nextUrl, {
279
- headers: { Authorization: `Bearer ${token}` }
280
- });
281
-
282
- if (!response.ok) {
283
- throw new Error(`Failed to fetch Vercel env vars (HTTP ${response.status}): ${response.statusText}`);
284
- }
285
-
286
- const data = await response.json() as IVercelEnvListResponse & { pagination?: { next?: number } };
287
- allEnvVars.push(...data.envs);
288
-
289
- if (data.pagination?.next) {
290
- nextUrl = `${listUrl}&until=${data.pagination.next}`;
291
- } else {
292
- nextUrl = undefined;
293
- }
294
- }
295
-
296
- return allEnvVars;
297
- }
298
-
299
- /**
300
- * Creates a new environment variable in Vercel.
301
- */
302
- async function createVercelEnvVar(
303
- token: string,
304
- project: string,
305
- team: string,
306
- key: string,
307
- value: string,
308
- target: string,
309
- type: string
310
- ): Promise<void> {
311
- const teamQuery = buildVercelTeamQuery(team);
312
- const url = `${VERCEL_API_BASE}/v10/projects/${encodeURIComponent(project)}/env?${teamQuery}`;
313
-
314
- const response = await fetch(url, {
315
- method: 'POST',
316
- headers: {
317
- Authorization: `Bearer ${token}`,
318
- 'Content-Type': 'application/json'
319
- },
320
- body: JSON.stringify({
321
- key,
322
- value,
323
- target: [target],
324
- type
325
- })
326
- });
327
-
328
- if (!response.ok) {
329
- const body = await response.text();
330
- throw new Error(`Failed to create Vercel env var "${key}" (HTTP ${response.status}): ${body}`);
331
- }
332
- }
333
-
334
- /**
335
- * Updates an existing environment variable in Vercel.
336
- */
337
- async function updateVercelEnvVar(
338
- token: string,
339
- project: string,
340
- team: string,
341
- envVarId: string,
342
- key: string,
343
- value: string,
344
- target: string,
345
- type: string
346
- ): Promise<void> {
347
- const teamQuery = buildVercelTeamQuery(team);
348
- const url = `${VERCEL_API_BASE}/v9/projects/${encodeURIComponent(project)}/env/${encodeURIComponent(envVarId)}?${teamQuery}`;
349
-
350
- const response = await fetch(url, {
351
- method: 'PATCH',
352
- headers: {
353
- Authorization: `Bearer ${token}`,
354
- 'Content-Type': 'application/json'
355
- },
356
- body: JSON.stringify({
357
- value,
358
- target: [target],
359
- type
360
- })
361
- });
362
-
363
- if (!response.ok) {
364
- const body = await response.text();
365
- throw new Error(`Failed to update Vercel env var "${key}" (HTTP ${response.status}): ${body}`);
366
- }
367
- }
368
-
369
- /**
370
- * Deletes an environment variable from Vercel.
371
- */
372
- async function deleteVercelEnvVar(
373
- token: string,
374
- project: string,
375
- team: string,
376
- envVarId: string,
377
- key: string
378
- ): Promise<void> {
379
- const teamQuery = buildVercelTeamQuery(team);
380
- const url = `${VERCEL_API_BASE}/v9/projects/${encodeURIComponent(project)}/env/${encodeURIComponent(envVarId)}?${teamQuery}`;
381
-
382
- const response = await fetch(url, {
383
- method: 'DELETE',
384
- headers: { Authorization: `Bearer ${token}` }
385
- });
386
-
387
- if (!response.ok) {
388
- const body = await response.text();
389
- throw new Error(`Failed to delete Vercel env var "${key}" (HTTP ${response.status}): ${body}`);
390
- }
391
- }
392
-
393
- /**
394
- * Triggers a redeployment of the latest deployment in the given Vercel project and environment.
395
- */
396
- async function triggerRedeploy(token: string, project: string, team: string, target: string, logger: ILogger): Promise<void> {
397
- const teamQuery = buildVercelTeamQuery(team);
398
- const listUrl = `${VERCEL_API_BASE}/v6/deployments?projectId=${encodeURIComponent(project)}&${teamQuery}&target=${encodeURIComponent(target)}&limit=1`;
399
-
400
- const listResponse = await fetch(listUrl, {
401
- headers: { Authorization: `Bearer ${token}` }
402
- });
403
-
404
- if (!listResponse.ok) {
405
- logger.warn(` Could not list deployments for redeploy (HTTP ${listResponse.status}). Skipping redeploy.`);
406
-
407
- return;
408
- }
409
-
410
- const listData = await listResponse.json() as { deployments: Array<{ uid: string }> };
411
-
412
- if (!listData.deployments || listData.deployments.length === 0) {
413
- logger.warn(` No deployment found for target "${target}". Skipping redeploy.`);
414
-
415
- return;
416
- }
417
-
418
- const deploymentId = listData.deployments[0].uid;
419
- const redeployUrl = `${VERCEL_API_BASE}/v13/deployments?${teamQuery}&forceNew=1`;
420
-
421
- const redeployResponse = await fetch(redeployUrl, {
422
- method: 'POST',
423
- headers: {
424
- Authorization: `Bearer ${token}`,
425
- 'Content-Type': 'application/json'
426
- },
427
- body: JSON.stringify({
428
- name: project,
429
- deploymentId,
430
- target
431
- })
432
- });
433
-
434
- if (!redeployResponse.ok) {
435
- const body = await redeployResponse.text();
436
- logger.warn(` Redeploy failed (HTTP ${redeployResponse.status}): ${body}`);
437
-
438
- return;
439
- }
440
-
441
- logger.log(` Triggered redeployment for "${target}".`);
442
- }
443
-
444
- // #endregion
445
-
446
- // #region Filtering
447
-
448
- /**
449
- * Applies includeKeys and excludeKeys filters to the given secrets map.
450
- */
451
- function applyKeyFilters(
452
- secrets: Record<string, string>,
453
- includeKeys?: Array<string>,
454
- excludeKeys?: Array<string>
455
- ): Record<string, string> {
456
- let keys = Object.keys(secrets);
457
-
458
- if (includeKeys && includeKeys.length > 0) {
459
- const includeSet = new Set(includeKeys);
460
- keys = keys.filter(key => includeSet.has(key));
461
- }
462
-
463
- if (excludeKeys && excludeKeys.length > 0) {
464
- const excludeSet = new Set(excludeKeys);
465
- keys = keys.filter(key => !excludeSet.has(key));
466
- }
467
-
468
- return Object.fromEntries(keys.map(key => [key, secrets[key]]));
469
- }
470
-
471
- // #endregion
472
-
473
- // #region Diff & Sync
474
-
475
- /**
476
- * Computes the diff between source secrets and existing Vercel env vars for a given environment.
477
- *
478
- * When `valuesComparable` is `false`, value equality cannot be verified (encrypted/sensitive variables
479
- * whose decrypted form was not retrievable). To guarantee Vercel always reflects the latest source state,
480
- * existing keys are then emitted as `forced` (and will be patched) under `prefer-source`. Under
481
- * `prefer-vercel` or `none` the key is `skipped` to honor user intent.
482
- */
483
- function computeDiff(
484
- sourceSecrets: Record<string, string>,
485
- vercelVars: Array<IVercelEnvVariable>,
486
- environment: string,
487
- conflictStrategy: ConflictStrategy,
488
- deleteMissing: boolean,
489
- valuesComparable: boolean
490
- ): Array<ISyncResult & { vercelId?: string; value?: string }> {
491
- const results: Array<ISyncResult & { vercelId?: string; value?: string }> = [];
492
-
493
- // Index vercel vars for this environment by key
494
- const vercelByKey = new Map<string, IVercelEnvVariable>();
495
-
496
- for (const envVar of vercelVars) {
497
- if (envVar.target.includes(environment)) {
498
- vercelByKey.set(envVar.key, envVar);
499
- }
500
- }
501
-
502
- // Process all source keys
503
- for (const [key, value] of Object.entries(sourceSecrets)) {
504
- const existing = vercelByKey.get(key);
505
-
506
- if (!existing) {
507
- // Key does not exist in Vercel -> add
508
- results.push({ key, action: 'added', value });
509
- continue;
510
- }
511
-
512
- if (!valuesComparable) {
513
- // Cannot compare values (encrypted without decrypt or sensitive).
514
- // To guarantee Vercel = source, force a patch under prefer-source.
515
- switch (conflictStrategy) {
516
- case 'prefer-source':
517
- results.push({ key, action: 'forced', vercelId: existing.id, value });
518
- break;
519
- case 'prefer-vercel':
520
- case 'none':
521
- results.push({ key, action: 'skipped', vercelId: existing.id });
522
- break;
523
- }
524
- continue;
525
- }
526
-
527
- if (existing.value === value) {
528
- // Value is unchanged
529
- results.push({ key, action: 'unchanged', vercelId: existing.id });
530
- } else {
531
- // Conflict: value differs
532
- switch (conflictStrategy) {
533
- case 'prefer-source':
534
- results.push({ key, action: 'updated', vercelId: existing.id, value });
535
- break;
536
- case 'prefer-vercel':
537
- results.push({ key, action: 'skipped', vercelId: existing.id });
538
- break;
539
- case 'none':
540
- results.push({ key, action: 'skipped', vercelId: existing.id });
541
- break;
542
- }
543
- }
544
- }
545
-
546
- // Keys in Vercel but not in source
547
- if (deleteMissing) {
548
- for (const [key, envVar] of vercelByKey) {
549
- if (!(key in sourceSecrets)) {
550
- results.push({ key, action: 'deleted', vercelId: envVar.id });
551
- }
552
- }
553
- }
554
-
555
- return results;
556
- }
557
-
558
- // #endregion
559
-
560
- // #region Logging
561
-
562
- /**
563
- * Returns a colored tag string for the given sync action.
564
- */
565
- function formatActionTag(action: SyncAction, dryRun: boolean): string {
566
- const prefix = dryRun ? 'DRY RUN: ' : '';
567
-
568
- switch (action) {
569
- case 'added':
570
- return green(bold(`[${prefix}added]`));
571
- case 'updated':
572
- return yellow(bold(`[${prefix}updated]`));
573
- case 'forced':
574
- return cyan(bold(`[${prefix}forced]`));
575
- case 'unchanged':
576
- return gray(bold('[unchanged]'));
577
- case 'skipped':
578
- return magenta(bold('[skipped]'));
579
- case 'deleted':
580
- return red(bold(`[${prefix}deleted]`));
581
- }
582
- }
583
-
584
- /**
585
- * Logs the sync results as a single alphabetically sorted tree with colored action tags.
586
- */
587
- function logResults(logger: ILogger, results: Array<ISyncResult>, dryRun: boolean): void {
588
- const sorted = [...results].sort((a, b) => a.key.localeCompare(b.key));
589
-
590
- logTree(logger, `Keys (${sorted.length})`, sorted.map(r => ({
591
- label: `${r.key} ${formatActionTag(r.action, dryRun)}`
592
- })));
593
- }
594
-
595
- // #endregion
596
-
597
- // #region Main Task
598
-
599
- /**
600
- * Executes the Secrets Provider -> Vercel sync.
601
- */
602
- export async function run(options: ISecretsVercelSyncTaskOptions): Promise<void> {
603
- const logger = new ConsoleLogger();
604
- const providerType = options.provider ?? 'doppler';
605
- const variableType = options.vercelVariableType ?? 'encrypted';
606
- const conflictStrategy = options.conflictStrategy ?? 'prefer-source';
607
- const dryRun = options.dryRun ?? false;
608
- const deleteMissing = options.deleteMissing ?? false;
609
- const interactive = options.interactive ?? false;
610
-
611
- logSeparator(logger, `${providerType} → Vercel Sync`);
612
-
613
- // Step 1: Validate
614
- logger.log('Validating options...');
615
- validate(options);
616
-
617
- logBanner(logger, 'info', {
618
- message: `${options.secretsProject}/${options.secretsConfig} → ${options.vercelProject}/${options.vercelEnvironment}`,
619
- details: `Provider: ${providerType} | Type: ${variableType} | Strategy: ${conflictStrategy} | Dry Run: ${dryRun} | Delete Missing: ${deleteMissing}`
620
- });
621
-
622
- // Step 2: Resolve tokens
623
- const secretsProvider = createSecretsProvider(providerType);
624
- const secretsToken = await secretsProvider.authenticate(options.apiKey, interactive);
625
- const vercelToken = await resolveVercelToken(interactive);
626
-
627
- // Step 3: Fetch secrets from the provider
628
- logger.log(`Fetching secrets from ${providerType}...`);
629
- let sourceSecrets = await secretsProvider.fetchSecrets(secretsToken, options.secretsProject, options.secretsConfig, logger, options.vaultUrl);
630
-
631
- // Step 4: Apply key filters
632
- sourceSecrets = applyKeyFilters(sourceSecrets, options.includeKeys, options.excludeKeys);
633
- logger.log(` ${Object.keys(sourceSecrets).length} keys after filtering.`);
634
-
635
- // Step 5: Fetch Vercel env vars (request decryption only for encrypted type;
636
- // sensitive values are never returned by the Vercel API regardless of decrypt=true).
637
- logger.log('Fetching Vercel environment variables...');
638
- const requestDecrypt = variableType === 'encrypted';
639
- const vercelFetch = await fetchVercelEnvVars(vercelToken, options.vercelProject, options.vercelTeam, requestDecrypt, logger);
640
- const valuesComparable = vercelFetch.decrypted;
641
-
642
- if (!valuesComparable) {
643
- const reason = variableType === 'sensitive'
644
- ? 'Vercel never returns values for "sensitive" variables.'
645
- : 'Decrypted fetch was not available (token scope or API restriction).';
646
-
647
- logBanner(logger, 'warning', {
648
- message: 'Value comparison disabled.',
649
- details: `${reason} Existing keys will be force-patched under "prefer-source" to guarantee Vercel mirrors the secrets provider. Use "prefer-vercel" or "none" to skip instead.`
650
- });
651
- }
652
-
653
- // Step 6: Compute diff
654
- logger.log('Computing diff...');
655
- const diff = computeDiff(sourceSecrets, vercelFetch.envs, options.vercelEnvironment, conflictStrategy, deleteMissing, valuesComparable);
656
- logEmptyLine(logger);
657
-
658
- // Step 7: Apply changes (or dry-run report)
659
- if (dryRun) {
660
- logBanner(logger, 'warning', 'DRY RUN - no changes will be written to Vercel.');
661
- logResults(logger, diff, true);
662
- } else {
663
- for (const entry of diff) {
664
- switch (entry.action) {
665
- case 'added':
666
- await createVercelEnvVar(vercelToken, options.vercelProject, options.vercelTeam, entry.key, entry.value!, options.vercelEnvironment, variableType);
667
- break;
668
- case 'updated':
669
- case 'forced':
670
- await updateVercelEnvVar(vercelToken, options.vercelProject, options.vercelTeam, entry.vercelId!, entry.key, entry.value!, options.vercelEnvironment, variableType);
671
- break;
672
- case 'deleted':
673
- await deleteVercelEnvVar(vercelToken, options.vercelProject, options.vercelTeam, entry.vercelId!, entry.key);
674
- break;
675
- case 'unchanged':
676
- case 'skipped':
677
- // No action needed
678
- break;
679
- }
680
- }
681
-
682
- logResults(logger, diff, false);
683
-
684
- // Step 8: Optional redeploy
685
- if (options.redeploy) {
686
- logger.log('Triggering redeployment...');
687
- await triggerRedeploy(vercelToken, options.vercelProject, options.vercelTeam, options.vercelEnvironment, logger);
688
- }
689
- }
690
-
691
- logEmptyLine(logger);
692
- logBanner(logger, 'success', 'Sync complete.');
693
- }
694
-
695
- // #endregion
696
-
697
- }