@signstack/cli 0.1.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 (269) hide show
  1. package/README.md +458 -0
  2. package/bin/run.js +12 -0
  3. package/dist/apps/signstack-cli/schemas/asset.schema.json +220 -0
  4. package/dist/apps/signstack-cli/schemas/blueprint.schema.json +485 -0
  5. package/dist/apps/signstack-cli/schemas/jsonata-function.schema.json +185 -0
  6. package/dist/apps/signstack-cli/schemas/schema.schema.json +97 -0
  7. package/dist/apps/signstack-cli/schemas/template.schema.json +295 -0
  8. package/dist/apps/signstack-cli/src/commands/auth/login.d.ts +25 -0
  9. package/dist/apps/signstack-cli/src/commands/auth/login.js +229 -0
  10. package/dist/apps/signstack-cli/src/commands/auth/login.js.map +1 -0
  11. package/dist/apps/signstack-cli/src/commands/auth/logout.d.ts +10 -0
  12. package/dist/apps/signstack-cli/src/commands/auth/logout.js +59 -0
  13. package/dist/apps/signstack-cli/src/commands/auth/logout.js.map +1 -0
  14. package/dist/apps/signstack-cli/src/commands/auth/whoami.d.ts +9 -0
  15. package/dist/apps/signstack-cli/src/commands/auth/whoami.js +85 -0
  16. package/dist/apps/signstack-cli/src/commands/auth/whoami.js.map +1 -0
  17. package/dist/apps/signstack-cli/src/commands/generate.d.ts +51 -0
  18. package/dist/apps/signstack-cli/src/commands/generate.js +479 -0
  19. package/dist/apps/signstack-cli/src/commands/generate.js.map +1 -0
  20. package/dist/apps/signstack-cli/src/commands/preview.d.ts +24 -0
  21. package/dist/apps/signstack-cli/src/commands/preview.js +162 -0
  22. package/dist/apps/signstack-cli/src/commands/preview.js.map +1 -0
  23. package/dist/apps/signstack-cli/src/commands/pull.d.ts +28 -0
  24. package/dist/apps/signstack-cli/src/commands/pull.js +244 -0
  25. package/dist/apps/signstack-cli/src/commands/pull.js.map +1 -0
  26. package/dist/apps/signstack-cli/src/commands/push.d.ts +46 -0
  27. package/dist/apps/signstack-cli/src/commands/push.js +460 -0
  28. package/dist/apps/signstack-cli/src/commands/push.js.map +1 -0
  29. package/dist/apps/signstack-cli/src/commands/run.d.ts +22 -0
  30. package/dist/apps/signstack-cli/src/commands/run.js +126 -0
  31. package/dist/apps/signstack-cli/src/commands/run.js.map +1 -0
  32. package/dist/apps/signstack-cli/src/commands/test.d.ts +6 -0
  33. package/dist/apps/signstack-cli/src/commands/test.js +25 -0
  34. package/dist/apps/signstack-cli/src/commands/test.js.map +1 -0
  35. package/dist/apps/signstack-cli/src/commands/validate.d.ts +59 -0
  36. package/dist/apps/signstack-cli/src/commands/validate.js +558 -0
  37. package/dist/apps/signstack-cli/src/commands/validate.js.map +1 -0
  38. package/dist/apps/signstack-cli/src/index.d.ts +1 -0
  39. package/dist/apps/signstack-cli/src/index.js +2 -0
  40. package/dist/apps/signstack-cli/src/index.js.map +1 -0
  41. package/dist/apps/signstack-cli/src/lib/api-client.d.ts +77 -0
  42. package/dist/apps/signstack-cli/src/lib/api-client.js +269 -0
  43. package/dist/apps/signstack-cli/src/lib/api-client.js.map +1 -0
  44. package/dist/apps/signstack-cli/src/lib/base-command.d.ts +38 -0
  45. package/dist/apps/signstack-cli/src/lib/base-command.js +135 -0
  46. package/dist/apps/signstack-cli/src/lib/base-command.js.map +1 -0
  47. package/dist/apps/signstack-cli/src/lib/config.d.ts +47 -0
  48. package/dist/apps/signstack-cli/src/lib/config.js +106 -0
  49. package/dist/apps/signstack-cli/src/lib/config.js.map +1 -0
  50. package/dist/apps/signstack-cli/src/lib/entity-data-resolver.d.ts +31 -0
  51. package/dist/apps/signstack-cli/src/lib/entity-data-resolver.js +107 -0
  52. package/dist/apps/signstack-cli/src/lib/entity-data-resolver.js.map +1 -0
  53. package/dist/apps/signstack-cli/src/lib/local-resource-loader.d.ts +72 -0
  54. package/dist/apps/signstack-cli/src/lib/local-resource-loader.js +238 -0
  55. package/dist/apps/signstack-cli/src/lib/local-resource-loader.js.map +1 -0
  56. package/dist/apps/signstack-cli/src/lib/path-utils.d.ts +4 -0
  57. package/dist/apps/signstack-cli/src/lib/path-utils.js +7 -0
  58. package/dist/apps/signstack-cli/src/lib/path-utils.js.map +1 -0
  59. package/dist/apps/signstack-cli/src/lib/payload-builder.d.ts +127 -0
  60. package/dist/apps/signstack-cli/src/lib/payload-builder.js +545 -0
  61. package/dist/apps/signstack-cli/src/lib/payload-builder.js.map +1 -0
  62. package/dist/apps/signstack-cli/src/lib/preview-handler.d.ts +95 -0
  63. package/dist/apps/signstack-cli/src/lib/preview-handler.js +611 -0
  64. package/dist/apps/signstack-cli/src/lib/preview-handler.js.map +1 -0
  65. package/dist/apps/signstack-cli/src/lib/preview-output-formatter.d.ts +63 -0
  66. package/dist/apps/signstack-cli/src/lib/preview-output-formatter.js +198 -0
  67. package/dist/apps/signstack-cli/src/lib/preview-output-formatter.js.map +1 -0
  68. package/dist/apps/signstack-cli/src/lib/public-api-client.d.ts +13 -0
  69. package/dist/apps/signstack-cli/src/lib/public-api-client.js +39 -0
  70. package/dist/apps/signstack-cli/src/lib/public-api-client.js.map +1 -0
  71. package/dist/apps/signstack-cli/src/lib/resource-puller.d.ts +131 -0
  72. package/dist/apps/signstack-cli/src/lib/resource-puller.js +800 -0
  73. package/dist/apps/signstack-cli/src/lib/resource-puller.js.map +1 -0
  74. package/dist/apps/signstack-cli/src/lib/resource-pusher.d.ts +87 -0
  75. package/dist/apps/signstack-cli/src/lib/resource-pusher.js +361 -0
  76. package/dist/apps/signstack-cli/src/lib/resource-pusher.js.map +1 -0
  77. package/dist/apps/signstack-cli/src/lib/resource-scanner.d.ts +29 -0
  78. package/dist/apps/signstack-cli/src/lib/resource-scanner.js +101 -0
  79. package/dist/apps/signstack-cli/src/lib/resource-scanner.js.map +1 -0
  80. package/dist/apps/signstack-cli/src/lib/resource-validator.d.ts +44 -0
  81. package/dist/apps/signstack-cli/src/lib/resource-validator.js +158 -0
  82. package/dist/apps/signstack-cli/src/lib/resource-validator.js.map +1 -0
  83. package/dist/apps/signstack-cli/src/lib/run-handler.d.ts +47 -0
  84. package/dist/apps/signstack-cli/src/lib/run-handler.js +266 -0
  85. package/dist/apps/signstack-cli/src/lib/run-handler.js.map +1 -0
  86. package/dist/apps/signstack-cli/src/lib/safe-path.d.ts +28 -0
  87. package/dist/apps/signstack-cli/src/lib/safe-path.js +44 -0
  88. package/dist/apps/signstack-cli/src/lib/safe-path.js.map +1 -0
  89. package/dist/apps/signstack-cli/src/lib/scenario-file.d.ts +35 -0
  90. package/dist/apps/signstack-cli/src/lib/scenario-file.js +80 -0
  91. package/dist/apps/signstack-cli/src/lib/scenario-file.js.map +1 -0
  92. package/dist/apps/signstack-cli/src/lib/schema-validator.d.ts +8 -0
  93. package/dist/apps/signstack-cli/src/lib/schema-validator.js +39 -0
  94. package/dist/apps/signstack-cli/src/lib/schema-validator.js.map +1 -0
  95. package/dist/apps/signstack-cli/src/lib/url-validator.d.ts +17 -0
  96. package/dist/apps/signstack-cli/src/lib/url-validator.js +61 -0
  97. package/dist/apps/signstack-cli/src/lib/url-validator.js.map +1 -0
  98. package/dist/apps/signstack-cli/src/lib/yaml-document-parser.d.ts +25 -0
  99. package/dist/apps/signstack-cli/src/lib/yaml-document-parser.js +133 -0
  100. package/dist/apps/signstack-cli/src/lib/yaml-document-parser.js.map +1 -0
  101. package/dist/apps/signstack-cli/src/lib/yaml-transforms.d.ts +3 -0
  102. package/dist/apps/signstack-cli/src/lib/yaml-transforms.js +32 -0
  103. package/dist/apps/signstack-cli/src/lib/yaml-transforms.js.map +1 -0
  104. package/dist/apps/signstack-cli/src/lib/yaml-writer.d.ts +47 -0
  105. package/dist/apps/signstack-cli/src/lib/yaml-writer.js +160 -0
  106. package/dist/apps/signstack-cli/src/lib/yaml-writer.js.map +1 -0
  107. package/dist/apps/signstack-cli/src/types/auth.types.d.ts +48 -0
  108. package/dist/apps/signstack-cli/src/types/auth.types.js +31 -0
  109. package/dist/apps/signstack-cli/src/types/auth.types.js.map +1 -0
  110. package/dist/apps/signstack-cli/src/types/schema.types.d.ts +14 -0
  111. package/dist/apps/signstack-cli/src/types/schema.types.js +16 -0
  112. package/dist/apps/signstack-cli/src/types/schema.types.js.map +1 -0
  113. package/dist/apps/signstack-cli/src/types/yaml.types.d.ts +144 -0
  114. package/dist/apps/signstack-cli/src/types/yaml.types.js +2 -0
  115. package/dist/apps/signstack-cli/src/types/yaml.types.js.map +1 -0
  116. package/dist/libs/common/base/src/index.d.ts +14 -0
  117. package/dist/libs/common/base/src/index.js +44 -0
  118. package/dist/libs/common/base/src/index.js.map +1 -0
  119. package/dist/libs/common/base/src/lib/address.util.d.ts +12 -0
  120. package/dist/libs/common/base/src/lib/address.util.js +55 -0
  121. package/dist/libs/common/base/src/lib/address.util.js.map +1 -0
  122. package/dist/libs/common/base/src/lib/country-code-data.d.ts +5 -0
  123. package/dist/libs/common/base/src/lib/country-code-data.js +1256 -0
  124. package/dist/libs/common/base/src/lib/country-code-data.js.map +1 -0
  125. package/dist/libs/common/base/src/lib/date.util.d.ts +13 -0
  126. package/dist/libs/common/base/src/lib/date.util.js +135 -0
  127. package/dist/libs/common/base/src/lib/date.util.js.map +1 -0
  128. package/dist/libs/common/base/src/lib/headers.d.ts +1 -0
  129. package/dist/libs/common/base/src/lib/headers.js +5 -0
  130. package/dist/libs/common/base/src/lib/headers.js.map +1 -0
  131. package/dist/libs/common/base/src/lib/jsonata.service.d.ts +32 -0
  132. package/dist/libs/common/base/src/lib/jsonata.service.js +207 -0
  133. package/dist/libs/common/base/src/lib/jsonata.service.js.map +1 -0
  134. package/dist/libs/common/base/src/lib/key-validation.constants.d.ts +37 -0
  135. package/dist/libs/common/base/src/lib/key-validation.constants.js +144 -0
  136. package/dist/libs/common/base/src/lib/key-validation.constants.js.map +1 -0
  137. package/dist/libs/common/base/src/lib/phone-util.d.ts +16 -0
  138. package/dist/libs/common/base/src/lib/phone-util.js +61 -0
  139. package/dist/libs/common/base/src/lib/phone-util.js.map +1 -0
  140. package/dist/libs/common/base/src/lib/schema-validation.util.d.ts +24 -0
  141. package/dist/libs/common/base/src/lib/schema-validation.util.js +155 -0
  142. package/dist/libs/common/base/src/lib/schema-validation.util.js.map +1 -0
  143. package/dist/libs/common/base/src/lib/string-builder.d.ts +48 -0
  144. package/dist/libs/common/base/src/lib/string-builder.js +90 -0
  145. package/dist/libs/common/base/src/lib/string-builder.js.map +1 -0
  146. package/dist/libs/common/base/src/lib/util.d.ts +20 -0
  147. package/dist/libs/common/base/src/lib/util.js +110 -0
  148. package/dist/libs/common/base/src/lib/util.js.map +1 -0
  149. package/dist/libs/signstack/base/schemas/asset.schema.json +220 -0
  150. package/dist/libs/signstack/base/schemas/blueprint.schema.json +485 -0
  151. package/dist/libs/signstack/base/schemas/jsonata-function.schema.json +185 -0
  152. package/dist/libs/signstack/base/schemas/schema.schema.json +97 -0
  153. package/dist/libs/signstack/base/schemas/template.schema.json +295 -0
  154. package/dist/libs/signstack/base/src/index.d.ts +28 -0
  155. package/dist/libs/signstack/base/src/index.js +32 -0
  156. package/dist/libs/signstack/base/src/index.js.map +1 -0
  157. package/dist/libs/signstack/base/src/lib/constants.d.ts +123 -0
  158. package/dist/libs/signstack/base/src/lib/constants.js +131 -0
  159. package/dist/libs/signstack/base/src/lib/constants.js.map +1 -0
  160. package/dist/libs/signstack/base/src/lib/hash.util.d.ts +58 -0
  161. package/dist/libs/signstack/base/src/lib/hash.util.js +90 -0
  162. package/dist/libs/signstack/base/src/lib/hash.util.js.map +1 -0
  163. package/dist/libs/signstack/base/src/lib/is-schema-renderable.util.d.ts +29 -0
  164. package/dist/libs/signstack/base/src/lib/is-schema-renderable.util.js +93 -0
  165. package/dist/libs/signstack/base/src/lib/is-schema-renderable.util.js.map +1 -0
  166. package/dist/libs/signstack/base/src/lib/models/ai-chat.d.ts +41 -0
  167. package/dist/libs/signstack/base/src/lib/models/ai-chat.js +3 -0
  168. package/dist/libs/signstack/base/src/lib/models/ai-chat.js.map +1 -0
  169. package/dist/libs/signstack/base/src/lib/models/api-key.d.ts +54 -0
  170. package/dist/libs/signstack/base/src/lib/models/api-key.js +18 -0
  171. package/dist/libs/signstack/base/src/lib/models/api-key.js.map +1 -0
  172. package/dist/libs/signstack/base/src/lib/models/asset.d.ts +101 -0
  173. package/dist/libs/signstack/base/src/lib/models/asset.js +11 -0
  174. package/dist/libs/signstack/base/src/lib/models/asset.js.map +1 -0
  175. package/dist/libs/signstack/base/src/lib/models/auth.d.ts +142 -0
  176. package/dist/libs/signstack/base/src/lib/models/auth.js +35 -0
  177. package/dist/libs/signstack/base/src/lib/models/auth.js.map +1 -0
  178. package/dist/libs/signstack/base/src/lib/models/base.d.ts +134 -0
  179. package/dist/libs/signstack/base/src/lib/models/base.js +71 -0
  180. package/dist/libs/signstack/base/src/lib/models/base.js.map +1 -0
  181. package/dist/libs/signstack/base/src/lib/models/blueprint.d.ts +311 -0
  182. package/dist/libs/signstack/base/src/lib/models/blueprint.js +9 -0
  183. package/dist/libs/signstack/base/src/lib/models/blueprint.js.map +1 -0
  184. package/dist/libs/signstack/base/src/lib/models/file.d.ts +75 -0
  185. package/dist/libs/signstack/base/src/lib/models/file.js +9 -0
  186. package/dist/libs/signstack/base/src/lib/models/file.js.map +1 -0
  187. package/dist/libs/signstack/base/src/lib/models/jsonata-function.d.ts +111 -0
  188. package/dist/libs/signstack/base/src/lib/models/jsonata-function.js +19 -0
  189. package/dist/libs/signstack/base/src/lib/models/jsonata-function.js.map +1 -0
  190. package/dist/libs/signstack/base/src/lib/models/marketplace-listing.d.ts +132 -0
  191. package/dist/libs/signstack/base/src/lib/models/marketplace-listing.js +22 -0
  192. package/dist/libs/signstack/base/src/lib/models/marketplace-listing.js.map +1 -0
  193. package/dist/libs/signstack/base/src/lib/models/membership.d.ts +127 -0
  194. package/dist/libs/signstack/base/src/lib/models/membership.js +22 -0
  195. package/dist/libs/signstack/base/src/lib/models/membership.js.map +1 -0
  196. package/dist/libs/signstack/base/src/lib/models/namespace.d.ts +87 -0
  197. package/dist/libs/signstack/base/src/lib/models/namespace.js +57 -0
  198. package/dist/libs/signstack/base/src/lib/models/namespace.js.map +1 -0
  199. package/dist/libs/signstack/base/src/lib/models/organization.d.ts +79 -0
  200. package/dist/libs/signstack/base/src/lib/models/organization.js +41 -0
  201. package/dist/libs/signstack/base/src/lib/models/organization.js.map +1 -0
  202. package/dist/libs/signstack/base/src/lib/models/render-job.d.ts +88 -0
  203. package/dist/libs/signstack/base/src/lib/models/render-job.js +3 -0
  204. package/dist/libs/signstack/base/src/lib/models/render-job.js.map +1 -0
  205. package/dist/libs/signstack/base/src/lib/models/resource-edge.d.ts +60 -0
  206. package/dist/libs/signstack/base/src/lib/models/resource-edge.js +202 -0
  207. package/dist/libs/signstack/base/src/lib/models/resource-edge.js.map +1 -0
  208. package/dist/libs/signstack/base/src/lib/models/scenario.d.ts +138 -0
  209. package/dist/libs/signstack/base/src/lib/models/scenario.js +14 -0
  210. package/dist/libs/signstack/base/src/lib/models/scenario.js.map +1 -0
  211. package/dist/libs/signstack/base/src/lib/models/schema.d.ts +131 -0
  212. package/dist/libs/signstack/base/src/lib/models/schema.js +44 -0
  213. package/dist/libs/signstack/base/src/lib/models/schema.js.map +1 -0
  214. package/dist/libs/signstack/base/src/lib/models/shareable-link.d.ts +215 -0
  215. package/dist/libs/signstack/base/src/lib/models/shareable-link.js +27 -0
  216. package/dist/libs/signstack/base/src/lib/models/shareable-link.js.map +1 -0
  217. package/dist/libs/signstack/base/src/lib/models/subscription.d.ts +279 -0
  218. package/dist/libs/signstack/base/src/lib/models/subscription.js +105 -0
  219. package/dist/libs/signstack/base/src/lib/models/subscription.js.map +1 -0
  220. package/dist/libs/signstack/base/src/lib/models/template.d.ts +248 -0
  221. package/dist/libs/signstack/base/src/lib/models/template.js +32 -0
  222. package/dist/libs/signstack/base/src/lib/models/template.js.map +1 -0
  223. package/dist/libs/signstack/base/src/lib/models/user.d.ts +30 -0
  224. package/dist/libs/signstack/base/src/lib/models/user.js +3 -0
  225. package/dist/libs/signstack/base/src/lib/models/user.js.map +1 -0
  226. package/dist/libs/signstack/base/src/lib/models/webhook.d.ts +223 -0
  227. package/dist/libs/signstack/base/src/lib/models/webhook.js +62 -0
  228. package/dist/libs/signstack/base/src/lib/models/webhook.js.map +1 -0
  229. package/dist/libs/signstack/base/src/lib/models/workflow.d.ts +917 -0
  230. package/dist/libs/signstack/base/src/lib/models/workflow.js +152 -0
  231. package/dist/libs/signstack/base/src/lib/models/workflow.js.map +1 -0
  232. package/dist/libs/signstack/base/src/lib/util.d.ts +92 -0
  233. package/dist/libs/signstack/base/src/lib/util.js +406 -0
  234. package/dist/libs/signstack/base/src/lib/util.js.map +1 -0
  235. package/dist/libs/signstack/base/src/lib/validation/dependency-graph.d.ts +94 -0
  236. package/dist/libs/signstack/base/src/lib/validation/dependency-graph.js +446 -0
  237. package/dist/libs/signstack/base/src/lib/validation/dependency-graph.js.map +1 -0
  238. package/dist/libs/signstack/base/src/lib/validation/graph.types.d.ts +57 -0
  239. package/dist/libs/signstack/base/src/lib/validation/graph.types.js +8 -0
  240. package/dist/libs/signstack/base/src/lib/validation/graph.types.js.map +1 -0
  241. package/dist/libs/signstack/base/src/lib/validation/index.d.ts +9 -0
  242. package/dist/libs/signstack/base/src/lib/validation/index.js +23 -0
  243. package/dist/libs/signstack/base/src/lib/validation/index.js.map +1 -0
  244. package/dist/libs/signstack/base/src/lib/validation/resource-schemas.d.ts +3 -0
  245. package/dist/libs/signstack/base/src/lib/validation/resource-schemas.js +27 -0
  246. package/dist/libs/signstack/base/src/lib/validation/resource-schemas.js.map +1 -0
  247. package/dist/libs/signstack/base/src/lib/validation/schema-validation.types.d.ts +57 -0
  248. package/dist/libs/signstack/base/src/lib/validation/schema-validation.types.js +57 -0
  249. package/dist/libs/signstack/base/src/lib/validation/schema-validation.types.js.map +1 -0
  250. package/dist/libs/signstack/base/src/lib/validation/schema-validator.d.ts +38 -0
  251. package/dist/libs/signstack/base/src/lib/validation/schema-validator.js +146 -0
  252. package/dist/libs/signstack/base/src/lib/validation/schema-validator.js.map +1 -0
  253. package/dist/libs/signstack/base/src/lib/validation/validate-dependencies.d.ts +22 -0
  254. package/dist/libs/signstack/base/src/lib/validation/validate-dependencies.js +69 -0
  255. package/dist/libs/signstack/base/src/lib/validation/validate-dependencies.js.map +1 -0
  256. package/dist/libs/signstack/base/src/lib/validation/validate-resource-tree.d.ts +37 -0
  257. package/dist/libs/signstack/base/src/lib/validation/validate-resource-tree.js +250 -0
  258. package/dist/libs/signstack/base/src/lib/validation/validate-resource-tree.js.map +1 -0
  259. package/dist/libs/signstack/base/src/lib/validation/validate-template-inputs.d.ts +24 -0
  260. package/dist/libs/signstack/base/src/lib/validation/validate-template-inputs.js +98 -0
  261. package/dist/libs/signstack/base/src/lib/validation/validate-template-inputs.js.map +1 -0
  262. package/dist/libs/signstack/base/src/lib/validation/yaml-document-utils.d.ts +12 -0
  263. package/dist/libs/signstack/base/src/lib/validation/yaml-document-utils.js +50 -0
  264. package/dist/libs/signstack/base/src/lib/validation/yaml-document-utils.js.map +1 -0
  265. package/dist/libs/signstack/base/src/lib/yaml-spec-converter.d.ts +101 -0
  266. package/dist/libs/signstack/base/src/lib/yaml-spec-converter.js +998 -0
  267. package/dist/libs/signstack/base/src/lib/yaml-spec-converter.js.map +1 -0
  268. package/oclif.manifest.json +822 -0
  269. package/package.json +101 -0
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResourceKind = void 0;
4
+ exports.toResourceCascadeKey = toResourceCascadeKey;
5
+ exports.parseResourceCascadeKey = parseResourceCascadeKey;
6
+ exports.toResourceId = toResourceId;
7
+ exports.parseResourceId = parseResourceId;
8
+ exports.getTemplateDeps = getTemplateDeps;
9
+ exports.getAssetDeps = getAssetDeps;
10
+ exports.getFunctionDeps = getFunctionDeps;
11
+ exports.getBlueprintDeps = getBlueprintDeps;
12
+ exports.collectTransitiveDeps = collectTransitiveDeps;
13
+ var ResourceKind;
14
+ (function (ResourceKind) {
15
+ ResourceKind["Blueprint"] = "blueprint";
16
+ ResourceKind["Template"] = "template";
17
+ ResourceKind["Schema"] = "schema";
18
+ ResourceKind["Asset"] = "asset";
19
+ ResourceKind["JsonataFunction"] = "jsonata_function";
20
+ })(ResourceKind || (exports.ResourceKind = ResourceKind = {}));
21
+ function toResourceCascadeKey(kind, key) {
22
+ return `${kind}:${key}`;
23
+ }
24
+ function parseResourceCascadeKey(resourceCascadeKey) {
25
+ const colonIdx = resourceCascadeKey.indexOf(':');
26
+ if (colonIdx === -1) {
27
+ return { kind: '', key: resourceCascadeKey };
28
+ }
29
+ return {
30
+ kind: resourceCascadeKey.substring(0, colonIdx),
31
+ key: resourceCascadeKey.substring(colonIdx + 1),
32
+ };
33
+ }
34
+ function toResourceId(kind, key, version) {
35
+ return `${toResourceCascadeKey(kind, key)}@${version}`;
36
+ }
37
+ function parseResourceId(resourceId) {
38
+ const atIdx = resourceId.lastIndexOf('@');
39
+ const cascadeKey = resourceId.substring(0, atIdx);
40
+ const parsedCascade = parseResourceCascadeKey(cascadeKey);
41
+ return {
42
+ kind: parsedCascade.kind,
43
+ key: parsedCascade.key,
44
+ version: resourceId.substring(atIdx + 1),
45
+ };
46
+ }
47
+ /** Template spec → direct deps: content asset, functions, input schemas. */
48
+ function getTemplateDeps(spec) {
49
+ const deps = [];
50
+ if (spec.contentKey && spec.contentVersion) {
51
+ deps.push({
52
+ kind: ResourceKind.Asset,
53
+ key: spec.contentKey,
54
+ version: spec.contentVersion,
55
+ });
56
+ }
57
+ for (const dep of spec.functions ?? []) {
58
+ deps.push({
59
+ kind: ResourceKind.JsonataFunction,
60
+ key: dep.functionKey,
61
+ version: dep.functionVersion,
62
+ });
63
+ }
64
+ for (const input of spec.inputs ?? []) {
65
+ if (input.schemaKey) {
66
+ deps.push({
67
+ kind: ResourceKind.Schema,
68
+ key: input.schemaKey,
69
+ version: input.schemaVersion,
70
+ });
71
+ }
72
+ }
73
+ for (const role of spec.roles ?? []) {
74
+ if (role.output) {
75
+ deps.push({ kind: ResourceKind.Schema, key: role.output.schemaKey, version: role.output.schemaVersion });
76
+ }
77
+ }
78
+ return deps;
79
+ }
80
+ /** Asset spec → direct deps: sub-assets (partials/images/styles), viewModelSchema. */
81
+ function getAssetDeps(spec) {
82
+ const deps = [];
83
+ const config = spec.htmlConfig;
84
+ if (!config)
85
+ return deps;
86
+ for (const ref of [
87
+ ...(config.partials ?? []),
88
+ ...(config.styles ?? []),
89
+ ...(config.images ?? []),
90
+ ]) {
91
+ deps.push({ kind: ResourceKind.Asset, key: ref.key, version: ref.version });
92
+ }
93
+ if (config.data?.schemaKey && config.data?.schemaVersion) {
94
+ deps.push({
95
+ kind: ResourceKind.Schema,
96
+ key: config.data.schemaKey,
97
+ version: config.data.schemaVersion,
98
+ });
99
+ }
100
+ return deps;
101
+ }
102
+ /** Function spec → direct deps: param schemas, returnType schema. */
103
+ function getFunctionDeps(spec) {
104
+ const deps = [];
105
+ for (const param of spec.params ?? []) {
106
+ if (param.schemaKey && param.schemaVersion) {
107
+ deps.push({
108
+ kind: ResourceKind.Schema,
109
+ key: param.schemaKey,
110
+ version: param.schemaVersion,
111
+ });
112
+ }
113
+ }
114
+ if (spec.returnType?.schemaKey && spec.returnType?.schemaVersion) {
115
+ deps.push({
116
+ kind: ResourceKind.Schema,
117
+ key: spec.returnType.schemaKey,
118
+ version: spec.returnType.schemaVersion,
119
+ });
120
+ }
121
+ return deps;
122
+ }
123
+ /** Blueprint spec → direct deps: functions, input schemas, envelope templates. */
124
+ function getBlueprintDeps(spec) {
125
+ const deps = [];
126
+ for (const f of spec.functions ?? []) {
127
+ deps.push({
128
+ kind: ResourceKind.JsonataFunction,
129
+ key: f.functionKey,
130
+ version: f.functionVersion,
131
+ });
132
+ }
133
+ for (const input of spec.inputs ?? []) {
134
+ if (input.schemaKey) {
135
+ deps.push({
136
+ kind: ResourceKind.Schema,
137
+ key: input.schemaKey,
138
+ version: input.schemaVersion,
139
+ });
140
+ }
141
+ }
142
+ for (const envelope of spec.envelopes ?? []) {
143
+ for (const doc of envelope.documents ?? []) {
144
+ if (doc.templateKey && doc.templateVersion) {
145
+ deps.push({
146
+ kind: ResourceKind.Template,
147
+ key: doc.templateKey,
148
+ version: doc.templateVersion,
149
+ });
150
+ }
151
+ }
152
+ }
153
+ return deps;
154
+ }
155
+ /**
156
+ * Collect all transitive deps starting from a template spec.
157
+ * Walks: template → (assets, functions, schemas) → (sub-assets, function schemas) → ...
158
+ * Uses lookup functions to resolve specs for intermediate resources.
159
+ * Returns deduplicated flat array of all deps (direct + transitive).
160
+ */
161
+ function collectTransitiveDeps(templateSpec, lookups) {
162
+ const visited = new Set();
163
+ const result = [];
164
+ const toId = (dep) => toResourceId(dep.kind, dep.key, dep.version);
165
+ const add = (dep) => {
166
+ const id = toId(dep);
167
+ if (visited.has(id))
168
+ return;
169
+ visited.add(id);
170
+ result.push(dep);
171
+ };
172
+ const walkAsset = (key, version) => {
173
+ const spec = lookups.getAssetSpec?.(key, version);
174
+ if (!spec)
175
+ return;
176
+ for (const dep of getAssetDeps(spec)) {
177
+ add(dep);
178
+ if (dep.kind === ResourceKind.Asset) {
179
+ walkAsset(dep.key, dep.version);
180
+ }
181
+ }
182
+ };
183
+ const walkFunction = (key, version) => {
184
+ const spec = lookups.getFunctionSpec?.(key, version);
185
+ if (!spec)
186
+ return;
187
+ for (const dep of getFunctionDeps(spec)) {
188
+ add(dep);
189
+ }
190
+ };
191
+ for (const dep of getTemplateDeps(templateSpec)) {
192
+ add(dep);
193
+ if (dep.kind === ResourceKind.Asset) {
194
+ walkAsset(dep.key, dep.version);
195
+ }
196
+ else if (dep.kind === ResourceKind.JsonataFunction) {
197
+ walkFunction(dep.key, dep.version);
198
+ }
199
+ }
200
+ return result;
201
+ }
202
+ //# sourceMappingURL=resource-edge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-edge.js","sourceRoot":"","sources":["../../../../../../../../../libs/signstack/base/src/lib/models/resource-edge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,138 @@
1
+ import { PaginationDto, ResourceIdentity } from './base';
2
+ export interface ScenarioEntity {
3
+ key: string;
4
+ data: Record<string, any>;
5
+ }
6
+ export interface EntitySchemaIdentifier {
7
+ key: string;
8
+ schemaKey: string;
9
+ /** Optional inline schema definition — used when the schema is not yet saved to the database */
10
+ schemaDefinition?: Record<string, any>;
11
+ }
12
+ export interface ListScenariosReq {
13
+ search?: string;
14
+ limit?: number;
15
+ offset?: number;
16
+ labels?: Record<string, string>;
17
+ }
18
+ /**
19
+ * Identity fields for a scenario. Same shape as `ResourceIdentity` —
20
+ * scenarios share the universal identity surface (key, name, description,
21
+ * labels) but don't carry `version` since they have no draft/published
22
+ * lifecycle (see Resource Lifecycle docs for the carve-out rationale).
23
+ */
24
+ export type ScenarioMetadata = ResourceIdentity;
25
+ export interface ScenarioSpec {
26
+ entities: ScenarioEntity[];
27
+ }
28
+ /**
29
+ * Full scenario — returned by `GET /scenarios/{key}`, `POST /scenarios`,
30
+ * and `PUT /scenarios/{key}`. The optimistic-locking handle is in the
31
+ * `ETag` HTTP response header (RFC 7232) — pass it back as `If-Match` on
32
+ * subsequent `PUT` / `DELETE`.
33
+ */
34
+ export interface ScenarioResp {
35
+ metadata: ScenarioMetadata;
36
+ spec: ScenarioSpec;
37
+ createdAt: Date;
38
+ updatedAt: Date;
39
+ }
40
+ /**
41
+ * Trimmed scenario summary returned by `GET /scenarios`. `spec` carries
42
+ * just the entity keys; the full per-entity `data` is omitted. Fetch
43
+ * `GET /scenarios/{key}` for the full `ScenarioResp` (and its `ETag`
44
+ * header) before any mutation.
45
+ */
46
+ export interface ScenarioListItem {
47
+ metadata: ScenarioMetadata;
48
+ spec: {
49
+ /** Keys of every entity in this scenario. Fetch the scenario by key for the actual `data` payloads. */
50
+ entityKeys: string[];
51
+ };
52
+ createdAt: Date;
53
+ updatedAt: Date;
54
+ }
55
+ export interface ListScenariosResp {
56
+ data: ScenarioListItem[];
57
+ pagination: PaginationDto;
58
+ }
59
+ export interface CreateScenarioReq {
60
+ metadata: ScenarioMetadata;
61
+ spec: ScenarioSpec;
62
+ }
63
+ /**
64
+ * Update body for `PUT /scenarios/{key}`. Send the full `metadata` + `spec`
65
+ * envelope. The path `key` is the source of truth — `metadata.key` in the
66
+ * body is required for shape parity with create / other resources but
67
+ * ignored on the server. Matches the wire pattern used by every other
68
+ * resource update.
69
+ */
70
+ export interface UpdateScenarioReq {
71
+ metadata: ScenarioMetadata;
72
+ spec: ScenarioSpec;
73
+ }
74
+ export interface AddMissingDataToScenarioReq {
75
+ entities?: EntitySchemaIdentifier[];
76
+ }
77
+ export interface AddMissingDataToScenarioResp {
78
+ key: string;
79
+ }
80
+ export declare enum ScenarioUseMode {
81
+ Existing = "existing",
82
+ Auto = "auto"
83
+ }
84
+ export declare enum ResourceAssociationType {
85
+ Template = "template",
86
+ Blueprint = "blueprint"
87
+ }
88
+ export interface AutoGenerateScenarioReq {
89
+ entities: {
90
+ key: string;
91
+ schemaKey: string;
92
+ /** Inline schema definition — used when the schema may not yet exist in the database */
93
+ schemaDefinition?: Record<string, any>;
94
+ }[];
95
+ persist?: boolean;
96
+ }
97
+ export interface AutoGenerateScenarioResp {
98
+ key?: string;
99
+ name?: string;
100
+ description?: string;
101
+ entities?: ScenarioEntity[];
102
+ }
103
+ export interface ResourceScenarioLink {
104
+ resourceKey: string;
105
+ resourceVersion: string;
106
+ resourceType: ResourceAssociationType;
107
+ scenarioKey: string;
108
+ }
109
+ export interface LinkScenarioReq extends ResourceScenarioLink {
110
+ }
111
+ export interface UnlinkScenarioReq extends ResourceScenarioLink {
112
+ }
113
+ export interface ListLinkedScenariosReq {
114
+ resourceKey: string;
115
+ resourceVersion: string;
116
+ resourceType: ResourceAssociationType;
117
+ }
118
+ export interface ListLinkedScenariosResp {
119
+ /**
120
+ * Full scenarios — Studio's preview surface uses the entity data inline.
121
+ * Each item carries `eTag` in the body because list responses can't
122
+ * multiplex `ETag` headers per item; consumers can mutate the scenario
123
+ * directly from this list shape (one-click PATCH from a tree node).
124
+ */
125
+ data: (ScenarioResp & {
126
+ eTag: string;
127
+ })[];
128
+ }
129
+ export interface ListLinkedResourcesReq {
130
+ scenarioKey: string;
131
+ }
132
+ export interface ListLinkedResourcesResp {
133
+ data: {
134
+ resourceKey: string;
135
+ resourceVersion: string;
136
+ resourceType: ResourceAssociationType;
137
+ }[];
138
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResourceAssociationType = exports.ScenarioUseMode = void 0;
4
+ var ScenarioUseMode;
5
+ (function (ScenarioUseMode) {
6
+ ScenarioUseMode["Existing"] = "existing";
7
+ ScenarioUseMode["Auto"] = "auto";
8
+ })(ScenarioUseMode || (exports.ScenarioUseMode = ScenarioUseMode = {}));
9
+ var ResourceAssociationType;
10
+ (function (ResourceAssociationType) {
11
+ ResourceAssociationType["Template"] = "template";
12
+ ResourceAssociationType["Blueprint"] = "blueprint";
13
+ })(ResourceAssociationType || (exports.ResourceAssociationType = ResourceAssociationType = {}));
14
+ //# sourceMappingURL=scenario.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenario.js","sourceRoot":"","sources":["../../../../../../../../../libs/signstack/base/src/lib/models/scenario.ts"],"names":[],"mappings":";;;AA4FA,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,wCAAqB,CAAA;IACrB,gCAAa,CAAA;AACf,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B;AAED,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IACjC,gDAAqB,CAAA;IACrB,kDAAuB,CAAA;AACzB,CAAC,EAHW,uBAAuB,uCAAvB,uBAAuB,QAGlC"}
@@ -0,0 +1,131 @@
1
+ import { JsonSchemaDraft } from '@common/base';
2
+ import { ActorRef, ListResp, ResourceListItemBase, ResourceMetadata, VersionType } from './base';
3
+ export { JsonSchemaDraft };
4
+ export interface SchemaResource {
5
+ metadata: ResourceMetadata;
6
+ spec: SchemaSpec;
7
+ }
8
+ export interface SchemaSpec {
9
+ jsonSchemaDraft: JsonSchemaDraft;
10
+ schemaDefinition: Record<string, any>;
11
+ }
12
+ export declare const JSON_SCHEMA_DRAFTS: {
13
+ value: string;
14
+ url: string;
15
+ label: string;
16
+ description: string;
17
+ }[];
18
+ export declare enum SchemaEventType {
19
+ StatusChanged = "status_changed",
20
+ DescriptionUpdated = "description_updated",
21
+ DefinitionUpdated = "definition_updated"
22
+ }
23
+ export interface ListSchemaReq {
24
+ offset?: number;
25
+ limit?: number;
26
+ skipDraft?: boolean;
27
+ search?: string;
28
+ labels?: Record<string, string>;
29
+ }
30
+ export type ListSchemasResp = ListResp<SchemaListItem>;
31
+ export type ListSchemaVersionsResp = ListResp<SchemaListItem>;
32
+ export interface SchemaListItem extends ResourceListItemBase {
33
+ }
34
+ /**
35
+ * Full schema — returned by `GET /schemas/{key}`, `POST /schemas`,
36
+ * `PUT .../versions/draft`, and `POST .../versions/draft/publish`. The
37
+ * optimistic-locking handle is returned in the HTTP `ETag` response header
38
+ * (RFC 7232) — pass it back as `If-Match` on the next `PUT` / `DELETE`.
39
+ */
40
+ export interface SchemaResp extends SchemaResource {
41
+ createdAt: Date;
42
+ updatedAt: Date;
43
+ createdBy: ActorRef;
44
+ publishedAt?: Date;
45
+ publishedBy?: ActorRef;
46
+ contentHash?: string;
47
+ }
48
+ export interface BatchGetSchemasReq {
49
+ identifiers: {
50
+ key: string;
51
+ version?: string;
52
+ }[];
53
+ }
54
+ export interface BatchGetSchemaItem extends SchemaResp {
55
+ _eTag?: string;
56
+ }
57
+ export interface BatchGetSchemasResp {
58
+ data: BatchGetSchemaItem[];
59
+ }
60
+ export interface CreateSchemaReq {
61
+ apiVersion?: string;
62
+ metadata: ResourceMetadata;
63
+ spec: SchemaSpec;
64
+ }
65
+ export interface UpdateSchemaReq {
66
+ metadata: ResourceMetadata;
67
+ spec: SchemaSpec;
68
+ }
69
+ export interface PublishSchemaReq {
70
+ versionType?: VersionType;
71
+ version?: string;
72
+ }
73
+ export interface Entity {
74
+ key: string;
75
+ schemaKey: string;
76
+ version: string;
77
+ data: any;
78
+ }
79
+ export interface AddEntitiesResp {
80
+ entities: {
81
+ entityId: string;
82
+ entityType: string;
83
+ clientRefId?: string;
84
+ }[];
85
+ }
86
+ export interface GenerateSchemaExamplesReq {
87
+ schemaKeys: string[];
88
+ }
89
+ export interface GenerateSchemaExamplesResp {
90
+ schemaKey: string;
91
+ version: string;
92
+ schemaDefinition: Record<string, any>;
93
+ exampleData: Record<string, any>;
94
+ }
95
+ export interface GenerateSchemaFromSampleReq {
96
+ sampleJson: Record<string, any>;
97
+ jsonSchemaDraft: JsonSchemaDraft;
98
+ }
99
+ export interface GenerateSchemaFromSampleResp {
100
+ schemaDefinition: Record<string, any>;
101
+ }
102
+ export interface GenerateSchemaPlaceholdersReq {
103
+ schemaKeys: string[];
104
+ }
105
+ export interface GenerateSchemaPlaceholdersResp {
106
+ data: {
107
+ schemaKey: string;
108
+ placeholderData: Record<string, any>;
109
+ }[];
110
+ }
111
+ export interface GenerateScenariosInlineReq {
112
+ schemas: Array<{
113
+ key: string;
114
+ schemaDefinition: Record<string, any>;
115
+ }>;
116
+ context?: string;
117
+ }
118
+ export interface GenerateScenariosInlineScenario {
119
+ name: string;
120
+ entities: Array<{
121
+ schemaKey: string;
122
+ exampleData: Record<string, any>;
123
+ }>;
124
+ }
125
+ export interface GenerateScenariosInlineResp {
126
+ scenarios: GenerateScenariosInlineScenario[];
127
+ }
128
+ export interface SchemaFormData {
129
+ jsonSchemaDraft: JsonSchemaDraft;
130
+ schemaDefinition: string;
131
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SchemaEventType = exports.JSON_SCHEMA_DRAFTS = exports.JsonSchemaDraft = void 0;
4
+ const base_1 = require("@common/base");
5
+ Object.defineProperty(exports, "JsonSchemaDraft", { enumerable: true, get: function () { return base_1.JsonSchemaDraft; } });
6
+ exports.JSON_SCHEMA_DRAFTS = [
7
+ {
8
+ value: '2020-12',
9
+ url: 'https://json-schema.org/draft/2020-12/schema',
10
+ label: 'Draft 2020-12 (Latest)',
11
+ description: 'Latest specification with enhanced features',
12
+ },
13
+ {
14
+ value: '2019-09',
15
+ url: 'https://json-schema.org/draft/2019-09/schema',
16
+ label: 'Draft 2019-09',
17
+ description: 'Multi-specification approach with vocabulary system',
18
+ },
19
+ {
20
+ value: 'draft-07',
21
+ url: 'https://json-schema.org/draft-07/schema#',
22
+ label: 'Draft 7',
23
+ description: 'Widely supported with if/then/else validation',
24
+ },
25
+ {
26
+ value: 'draft-06',
27
+ url: 'https://json-schema.org/draft-06/schema#',
28
+ label: 'Draft 6',
29
+ description: 'Added const and contains keywords',
30
+ },
31
+ {
32
+ value: 'draft-04',
33
+ url: 'https://json-schema.org/draft-04/schema#',
34
+ label: 'Draft 4',
35
+ description: 'Legacy support - widely compatible',
36
+ },
37
+ ];
38
+ var SchemaEventType;
39
+ (function (SchemaEventType) {
40
+ SchemaEventType["StatusChanged"] = "status_changed";
41
+ SchemaEventType["DescriptionUpdated"] = "description_updated";
42
+ SchemaEventType["DefinitionUpdated"] = "definition_updated";
43
+ })(SchemaEventType || (exports.SchemaEventType = SchemaEventType = {}));
44
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../../../../../../libs/signstack/base/src/lib/models/schema.ts"],"names":[],"mappings":";;;AAAA,uCAA+C;AAStC,gGATA,sBAAe,OASA;AAYX,QAAA,kBAAkB,GAAG;IAChC;QACE,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,8CAA8C;QACnD,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,6CAA6C;KAC3D;IACD;QACE,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,8CAA8C;QACnD,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,qDAAqD;KACnE;IACD;QACE,KAAK,EAAE,UAAU;QACjB,GAAG,EAAE,0CAA0C;QAC/C,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,+CAA+C;KAC7D;IACD;QACE,KAAK,EAAE,UAAU;QACjB,GAAG,EAAE,0CAA0C;QAC/C,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,mCAAmC;KACjD;IACD;QACE,KAAK,EAAE,UAAU;QACjB,GAAG,EAAE,0CAA0C;QAC/C,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,oCAAoC;KAClD;CACF,CAAC;AAEF,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,mDAAgC,CAAA;IAChC,6DAA0C,CAAA;IAC1C,2DAAwC,CAAA;AAC1C,CAAC,EAJW,eAAe,+BAAf,eAAe,QAI1B"}